/* BOOKING-WORDING-20261105 */
/* People Performance design system — 2026-11-05
   Original B2B system. Stripe-level restraint (light display type, white canvas,
   navy text, one indigo accent, pale panels). Not a copy of Stripe layouts or brand.
   Loaded last so inlined homepage copies of ppp2 pick up the same tokens.
   Does not change copy, routes, forms, tool logic, video loops, or motion scripts.

   Type
   - Inter Tight: headlines, section titles, navigation, buttons (self-hosted, OFL)
   - Inter: body, forms, supporting text (existing /assets/fonts/inter-latin-v20.woff2)
   - Hero, desktop: 56–68px, weight 340, tracking -0.032em, line-height 1.05
   - Section titles: 32–44px, weight 450
   - Long article titles stay under 52px so they do not collide
   - Body: 17px (18px on home/hub desktop), weight 400, line-height 1.65
   - Nav: 15px / 450. Buttons: 15–16px / 500

   Colour
   - #FFFFFF canvas, #0A2540 text, #635BFF primary buttons and accents, #E5EDF5 panels
   - White on #635BFF is 4.70:1 (AA for 16px button labels)
   - #635BFF on #E5EDF5 is 3.97:1, so small text and links use #3C2FE0
     (7.85:1 on white, 6.64:1 on pale)
   - Button hover #5146E0 is 6.36:1 with white
   - Body #3E5166 is 8.16:1 on white and 6.90:1 on pale
   - Muted #4A5D72 is 6.77:1 on white and 5.73:1 on pale
*/

@font-face{
  font-family:"Inter Tight";
  font-style:normal;
  font-weight:300 700;
  font-display:swap;
  src:url(/assets/fonts/inter-tight-latin-ext-wght-normal.woff2) format("woff2");
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face{
  font-family:"Inter Tight";
  font-style:normal;
  font-weight:300 700;
  font-display:swap;
  src:url(/assets/fonts/inter-tight-latin-wght-normal.woff2) format("woff2");
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face{
  font-family:"Inter";
  font-style:normal;
  font-weight:100 900;
  font-display:swap;
  src:url(/assets/fonts/inter-latin-v20.woff2) format("woff2");
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}

:root{
  color-scheme:light;
  --ds-white:#FFFFFF;
  --ds-navy:#0A2540;
  --ds-indigo:#635BFF;
  --ds-indigo-hover:#5146E0;
  --ds-indigo-text:#3C2FE0;
  --ds-pale:#E5EDF5;
  --ds-body:#3E5166;
  --ds-muted:#4A5D72;
  --ds-line:#E3E8EE;
  --ds-line-2:#CDD6E1;
  --ds-display:"Inter Tight","Inter",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
  --ds-sans:"Inter",ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --font:var(--ds-sans);
  --ink:#0A2540;
  --ink-2:#16324F;
  --body:#3E5166;
  --muted:#4A5D72;
  --muted-2:#5C6D80;
  --line:#E3E8EE;
  --line-2:#CDD6E1;
  --bg:#FFFFFF;
  --surface:#FFFFFF;
  --band:#E5EDF5;
  --accent:#635BFF;
  --accent-hover:#5146E0;
  --accent-50:#F3F2FF;
  --accent-100:#E5EDF5;
  --grad:linear-gradient(180deg,#746DFF 0%,#635BFF 100%);
  --radius:12px;
  --radius-lg:14px;
  --shadow:0 1px 1px rgba(10,37,64,.04),0 8px 24px -16px rgba(10,37,64,.18);
  --shadow-md:0 1px 2px rgba(10,37,64,.05),0 18px 40px -24px rgba(10,37,64,.28);
  --ok:#067550;
  --serif:var(--ds-display);
  --sans:var(--ds-sans);
  --navy:#0A2540;
  --navy-2:#12324C;
  --ivory:#FFFFFF;
  --ivory-2:#E5EDF5;
  --teal:#635BFF;
  --teal-ink:#3C2FE0;
  --teal-hi:#E5EDF5;
  --on-navy:#FFFFFF;
  --on-navy-2:#D5DEE8;
  --champ:#E5EDF5;
}

html{font-synthesis:none}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

body,
body.inner-v2,
body.home-v2,
body.net-v2,
body.com-v3,
body.ab{
  --ink:#0A2540;
  --ink-2:#16324F;
  --body:#3E5166;
  --muted:#4A5D72;
  --muted-2:#5C6D80;
  --line:#E3E8EE;
  --line-2:#CDD6E1;
  --bg:#FFFFFF;
  --surface:#FFFFFF;
  --band:#E5EDF5;
  --accent:#635BFF;
  --accent-hover:#5146E0;
  --accent-50:#F3F2FF;
  --accent-100:#E5EDF5;
  --grad:linear-gradient(180deg,#746DFF 0%,#635BFF 100%);
  background:#FFFFFF;
  color:#0A2540;
  font-family:var(--ds-sans);
  font-weight:400;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
body.inner-v2,
body.home-v2,
body.net-v2{font-size:17px;line-height:1.65}
@media (min-width:1100px){
  body.home-v2,body.net-v2{font-size:18px;line-height:1.65}
}

:focus-visible{outline:2px solid #635BFF;outline-offset:3px;border-radius:4px}
:is(.btn,.ab-btn,button):focus-visible{outline-color:#0A2540}

/* Display type. Print booklet keeps its own point sizes; only the family lightens. */
h1,h2,h3,h4,
.section-title,.hero h1,.article-header h1,.nav-brand__name,.nav-links a,.btn,.ab-brand b,.ab-h2,.ab-h3{
  font-family:var(--ds-display);
}
h1{font-weight:340;letter-spacing:-.03em;line-height:1.08}
h2,.section-title{font-weight:450;letter-spacing:-.025em}
h3,h4{font-weight:500;letter-spacing:-.02em}

.section-title{
  font-size:clamp(2rem,2.5vw,2.75rem);
  line-height:1.12;
  color:#0A2540;
}
.section-lead,.hero__sub,.pp-hero__sub,.net-sub,.hub-intro{
  color:#3E5166;
  font-size:1.0625rem;
  line-height:1.65;
}
.section-label,.article-header .eyebrow,.hero__eyebrow,.pp-eyebrow{
  color:#3C2FE0;
  font-weight:500;
  letter-spacing:.04em;
}
.article-body p,.article-body li,body.inner-v2 main p,body.inner-v2 main li{
  font-size:1.0625rem;
  line-height:1.7;
  color:#3E5166;
}
body.inner-v2 main :is(h2,h3,strong),body.home-v2 main :is(h2,h3,strong),body.net-v2 main :is(h2,h3,strong){color:#0A2540}
.card--cta :is(p,li,h2,h3,strong),
body.inner-v2 .card--cta :is(p,li,h2,h3,strong),
body.home-v2 .card--cta :is(p,li,h2,h3,strong),
body.net-v2 .card--cta :is(p,li,h2,h3,strong){color:#fff}
a{color:#3C2FE0}
a:hover{color:#0A2540}

/* Heroes */
body.home-v2 .pp-hero h1,
body.net-v2 .net-hero h1,
body.ab .ab-hero h1{
  font-weight:340;
  letter-spacing:-.032em;
  line-height:1.08;
  font-size:clamp(2.125rem,8.4vw,2.625rem);
}
@media (min-width:768px){
  body.home-v2 .pp-hero h1,
  body.net-v2 .net-hero h1,
  body.ab .ab-hero h1{font-size:clamp(2.75rem,4.6vw,3.25rem);line-height:1.06}
}
@media (min-width:1100px){
  body.home-v2 .pp-hero h1,
  body.net-v2 .net-hero h1,
  body.ab .ab-hero h1{
    font-size:clamp(3.5rem,4.6vw,4.25rem);
    line-height:1.05;
    letter-spacing:-.032em;
  }
  body:is(.home-v2,.net-v2,.inner-v2) .section-title,
  body.ab .ab-h2{font-size:clamp(2rem,2.6vw,2.75rem)}
}
body.home-v2 .pp-hero h1 .pp-grad{
  background:none;
  -webkit-background-clip:border-box;
  background-clip:border-box;
  -webkit-text-fill-color:#635BFF;
  color:#635BFF;
}
body.inner-v2 .article-header h1,
body.inner-v2 main>.section:first-of-type h1,
body.inner-v2 main>.hero h1{
  font-weight:360;
  letter-spacing:-.03em;
  line-height:1.1;
  font-size:clamp(2.125rem,4vw,2.75rem);
}
@media (min-width:1100px){
  body.inner-v2 .article-header h1,
  body.inner-v2 main>.section:first-of-type h1,
  body.inner-v2 main>.hero h1{font-size:clamp(2.5rem,3.4vw,3.5rem)}
  body.inner-v2.inner-post .article-header h1{font-size:clamp(2.125rem,2.6vw,3rem);font-weight:360}
}
body.inner-v2 .article-body h2,
body.inner-v2 main .site-wrap>h2{font-weight:450;letter-spacing:-.025em}
body:is(.home-v2,.net-v2) .section-title,
body.inner-v2 .section-title{font-weight:450;letter-spacing:-.026em}

/* Nav */
.site-header{background:rgba(255,255,255,.92);border-bottom:1px solid #E3E8EE}
.nav-brand__name{font-weight:500;letter-spacing:-.02em;font-size:15px}
.nav-brand__tag{color:#4A5D72}
.nav-links a{font-size:15px;font-weight:450;color:#16324F}
.nav-links a:hover,.nav-links a[aria-current="page"]{color:#0A2540;background:#E5EDF5}

/* Buttons */
.btn,.tl-cta__btn,.ab-btn{
  font-family:var(--ds-display);
  font-weight:500;
  font-size:16px;
  letter-spacing:-.011em;
  border-radius:8px;
}
.btn--sm{font-size:15px}
.btn--primary,.tl-cta__btn,body.inner-v2 .btn--primary,body.home-v2 .btn--primary,body.net-v2 .btn--primary,body.ab .ab-btn--primary{
  background:#635BFF;
  background-image:none;
  border-color:#635BFF;
  color:#fff!important;
  box-shadow:0 1px 2px rgba(10,37,64,.12),0 10px 18px -12px rgba(99,91,255,.85);
}
.btn--primary:hover,.tl-cta__btn:hover,body.inner-v2 .btn--primary:hover,body.home-v2 .btn--primary:hover,body.net-v2 .btn--primary:hover,body.ab .ab-btn--primary:hover{
  background:#5146E0;
  background-image:none;
  border-color:#5146E0;
  color:#fff!important;
  box-shadow:0 1px 2px rgba(10,37,64,.16),0 12px 20px -12px rgba(81,70,224,.9);
}
.btn--secondary,body.inner-v2 .btn--secondary,body.home-v2 .btn--secondary,body.net-v2 .btn--secondary{
  background:#fff;
  color:#0A2540!important;
  border:1px solid #CDD6E1;
  box-shadow:none;
}
.btn--secondary:hover,body.inner-v2 .btn--secondary:hover,body.home-v2 .btn--secondary:hover,body.net-v2 .btn--secondary:hover{
  background:#fff;
  border-color:#635BFF;
  color:#3C2FE0!important;
}
.btn--pill,.btn-pill{border-radius:8px}
.card--cta .btn--primary,body.inner-v2 .card--cta .btn--primary,body.home-v2 .card--cta .btn--primary,body.net-v2 .card--cta .btn--primary{
  background:#fff;
  background-image:none;
  color:#0A2540!important;
  border-color:#fff;
  box-shadow:none;
}
.card--cta .btn--primary:hover,body.inner-v2 .card--cta .btn--primary:hover,body.home-v2 .card--cta .btn--primary:hover,body.net-v2 .card--cta .btn--primary:hover{
  background:#E5EDF5;
  color:#0A2540!important;
}
.card.card--cta,body.inner-v2 .card.card--cta,body.home-v2 .card.card--cta,body.net-v2 .card.card--cta{
  background:radial-gradient(70% 120% at 100% 0,rgba(99,91,255,.22),transparent 58%),linear-gradient(165deg,#0A2540 0%,#12324C 100%);
  border-color:#0A2540;
  border-radius:14px;
}

/* Cards, panels, footer */
.band,body.inner-v2 .band,body:is(.home-v2,.net-v2) .band{background:#E5EDF5;border-color:#E3E8EE}
:is(.card:not(.card--cta),.story-card,.feature-card,.blog-card,.cite-card,.hub-card,.pp-tool,.pp-preview,.tl,.cn-cap){
  border-radius:12px;
  border-color:#E3E8EE;
  box-shadow:0 1px 1px rgba(10,37,64,.04),0 12px 28px -20px rgba(10,37,64,.22);
}
.site-footer,body.inner-v2 .site-footer{background:#0A2540}
.pp-eyebrow::before,body.inner-v2 .article-header .eyebrow::before,body.inner-v2 .hero__eyebrow::before,body.inner-v2 main>.section:first-of-type .section-label::before{
  background:#635BFF;
  box-shadow:0 0 0 3px #E5EDF5;
}

/* Figures that were gradient-clipped. Navy, light, no rainbow. */
:is(.pp-stat__n,.nx-stat__n){
  font-family:var(--ds-display);
  font-weight:360;
  letter-spacing:-.035em;
  font-size:clamp(2.5rem,4vw,3.5rem);
  background:none;
  -webkit-background-clip:border-box;
  background-clip:border-box;
  -webkit-text-fill-color:#0A2540;
  color:#0A2540;
}
.tl-big,.tx-big,.dx-sec .dx-num,.sb-title{
  font-family:var(--ds-display);
  font-weight:400;
  letter-spacing:-.03em;
  color:#0A2540;
}

/* Forms */
:is(input,select,textarea){font-family:var(--ds-sans)}
:is(.cn-f input,.cn-f select,.tl input,.pbf-f input,main form input[type=email],main form input[type=text],main form input[type=number],main form select,main form textarea){
  font-size:16px;
  border-radius:8px;
  border-color:#CDD6E1;
  color:#0A2540;
}
:is(.cn-f input,.cn-f select,.tl input,.pbf-f input,main form input,main form select,main form textarea):focus{
  border-color:#635BFF;
  box-shadow:0 0 0 4px rgba(99,91,255,.18);
}
.tl-opt:has(input:checked),body.inner-v2 .tl-opt:has(input:checked){background:#F3F2FF;border-color:#635BFF}
.tl-res,body.inner-v2 .tl-res{background:#F7F9FC;border-color:#E5EDF5}
.tl-progress span,.tl-bar i b,body.inner-v2 .tl-progress span,body.inner-v2 .tl-bar i b{background:#635BFF}
.pbf-req{color:#9F1239}

/* Existing mesh and spotlight stay animated. Colour only, and only the orbs.
   Paired classes beat the inlined single-class orb rules. */
.hx-o.hx-o1,.hx-inner .hx-o1{background:radial-gradient(closest-side,rgba(99,91,255,.42),rgba(99,91,255,.12) 55%,rgba(99,91,255,0))}
.hx-o.hx-o2,.hx-inner .hx-o2{background:radial-gradient(closest-side,rgba(99,91,255,.18),rgba(10,37,64,.05) 58%,rgba(99,91,255,0))}
.hx-o.hx-o3,.hx-inner .hx-o3{background:radial-gradient(closest-side,rgba(70,120,200,.22),rgba(70,120,200,.06) 58%,rgba(70,120,200,0))}
.hx-o.hx-o4,.hx-inner .hx-o4{background:radial-gradient(closest-side,rgba(229,237,245,.9),rgba(99,91,255,.1) 60%,rgba(229,237,245,0))}
.hx-o.hx-o5,.hx-inner .hx-o5{background:radial-gradient(closest-side,rgba(99,91,255,.14),rgba(99,91,255,0) 62%)}
body:is(.home-v2,.net-v2) .pp-hero__glow{
  background:
    radial-gradient(36% 40% at 62% 38%,rgba(99,91,255,.16),transparent 70%),
    radial-gradient(30% 36% at 36% 62%,rgba(10,37,64,.05),transparent 70%),
    radial-gradient(28% 32% at 84% 70%,rgba(229,237,245,.9),transparent 70%);
}
@media (prefers-reduced-motion:no-preference) and (hover:hover){
  body.home-v2 :is(.pp-preview,.pp-stat,.pp-ref,.pp-tool,.card:not(.card--cta)):hover,
  body.net-v2 :is(.pp-tool,.story-card,.card:not(.card--cta),.net-quote,.hub-vid):hover{
    box-shadow:0 2px 4px rgba(10,37,64,.05),0 18px 36px -18px rgba(99,91,255,.35);
    border-color:rgba(99,91,255,.35);
  }
  body.home-v2 :is(.pp-preview,.pp-stat,.pp-ref,.pp-tool,.card:not(.card--cta)).sp-on,
  body.net-v2 :is(.pp-tool,.story-card,.card:not(.card--cta),.net-quote).sp-on{
    background-image:radial-gradient(260px circle at var(--mx,50%) var(--my,50%),rgba(99,91,255,.07),transparent 70%);
  }
}

/* ashtaherian.com keeps its own sections. Type and palette join the system.
   Balloon scene, timeline and copy are untouched. DM Serif stays declared, unused for headings. */
body.ab{
  --serif:var(--ds-display);
  --sans:var(--ds-sans);
  --navy:#0A2540;
  --ivory:#FFFFFF;
  --ivory-2:#E5EDF5;
  --teal:#635BFF;
  --teal-ink:#3C2FE0;
  background:#FFFFFF;
  color:#3E5166;
  font-size:17px;
  line-height:1.65;
}
body.ab :is(h1,h2,h3,h4,.ab-brand b,.ab-proof__n,.ab-quote blockquote){
  font-family:var(--ds-display);
  font-weight:360;
  letter-spacing:-.03em;
}
body.ab .ab-hero h1{color:#fff;font-weight:340}
body.ab .ab-contact h2{color:#fff}
body.ab .ab-header,body.ab .ab-footer{background:#0A2540}
body.ab .ab-contact--scene::before{background:linear-gradient(90deg,rgba(10,37,64,.95) 0%,rgba(10,37,64,.93) 44%,rgba(10,37,64,.5) 66%,rgba(10,37,64,.12) 100%),linear-gradient(0deg,#0A2540 0%,rgba(10,37,64,0) 26%)}
@media (max-width:820px){
  body.ab .ab-contact--scene::before{background:linear-gradient(180deg,rgba(10,37,64,.08) 0px,rgba(10,37,64,.22) 150px,rgba(10,37,64,.92) 270px,rgba(10,37,64,.96) 100%)}
}
body.ab .ab-eyebrow{color:#E5EDF5;letter-spacing:.08em}
body.ab .ab-tl h4{font-family:var(--ds-display);font-weight:500}
body.ab .ab-links a{font-family:var(--ds-display);font-size:15px;font-weight:450}
body.ab .ab-btn{font-weight:500;font-size:16px;border-radius:8px}
body.ab .ab-label,body.ab .ab-kicker{color:#3C2FE0;letter-spacing:.08em}
body.ab .ab-proof .ab-card .ab-proof__n{font-size:clamp(2.5rem,4vw,3.25rem);color:#0A2540}
body.ab :is(.ab-section--ivory,.ab-band){background:#E5EDF5}

/* Goal simulation and mutual action plan.
   Tailwind utilities read these variables. Scoped to the app shell so marketing
   --muted (a text colour) and --accent (indigo) do not paint app surfaces.
   Bundled scripts are not changed. */
body:has(> #root){
  --background:#FFFFFF;
  --canvas:#FFFFFF;
  --foreground:#0A2540;
  --ink-2:#16324F;
  --card:#FFFFFF;
  --card-foreground:#0A2540;
  --popover:#FFFFFF;
  --popover-foreground:#0A2540;
  --primary:#635BFF;
  --primary-hover:#5146E0;
  --primary-foreground:#FFFFFF;
  --primary-soft:#E5EDF5;
  --secondary:#E5EDF5;
  --secondary-foreground:#0A2540;
  --muted:#E5EDF5;
  --muted-foreground:#4A5D72;
  --muted-2:#5C6D80;
  --accent:#E5EDF5;
  --accent-foreground:#3C2FE0;
  --destructive:#9F1239;
  --destructive-foreground:#FFFFFF;
  --success:#067550;
  --success-soft:#E7F6EF;
  --warning:#8A4200;
  --warning-soft:#FFF6EC;
  --danger:#9F1239;
  --danger-soft:#FEF2F2;
  --border:#E3E8EE;
  --line-2:#CDD6E1;
  --input:#CDD6E1;
  --ring:#635BFF;
  --chart-1:#635BFF;
  --chart-2:#067550;
  --chart-3:#8A4200;
  --chart-4:#9F1239;
  --chart-5:#4A5D72;
  --sidebar:#FFFFFF;
  --sidebar-foreground:#0A2540;
  --sidebar-primary:#635BFF;
  --sidebar-primary-foreground:#FFFFFF;
  --sidebar-accent:#E5EDF5;
  --sidebar-accent-foreground:#0A2540;
  --sidebar-border:#E3E8EE;
  --sidebar-ring:#635BFF;
  --info-soft:#E5EDF5;
  --violet:#3C2FE0;
  --violet-soft:#E5EDF5;
  --shadow-soft:0 1px 2px rgba(10,37,64,.05),0 8px 20px -16px rgba(10,37,64,.18);
  font-family:var(--ds-sans);
  color:#0A2540;
  background:#FFFFFF;
}
body:has(> #root) :is(h1,h2,.text-3xl,.text-4xl,.text-5xl,.text-6xl){
  font-family:var(--ds-display);
  font-weight:380;
  letter-spacing:-.03em;
  color:#0A2540;
}
body:has(> #root) button{font-family:var(--ds-display);font-weight:500}
/* Small indigo text uses the darker indigo. Fills stay #635BFF via --primary. */
body:has(> #root) :is(.text-primary,.text-accent-foreground,.text-violet){color:#3C2FE0}
body:has(> #root) :is(.hover\:text-primary:hover,.hover\:text-primary-hover:hover){color:#5146E0}
body:has(> #root) .btn--primary{background:#635BFF;border-color:#635BFF;color:#fff}
body:has(> #root) .btn--primary:hover{background:#5146E0;color:#fff}
body:has(> #root) :focus-visible{outline:2px solid #0A2540;outline-offset:2px}

/* 15-minute review page keeps its layout and jet. Tokens and type join the system. */
.lc{--lc-fg:#0A2540;--lc-mu:#4A5D72;--lc-pr:#635BFF;--lc-prh:#5146E0;--lc-ac:#F3F2FF;--lc-band:#E5EDF5;--lc-bd:#E3E8EE}
.lc h1,.lc h2,.lc h3{font-family:var(--ds-display);letter-spacing:-.03em}
.lc h1{font-weight:360;font-size:clamp(2.125rem,8vw,2.75rem);line-height:1.08}
@media (min-width:768px){.lc h1{font-size:clamp(2.75rem,4.5vw,3.25rem)}}
@media (min-width:1100px){.lc h1{font-size:clamp(3.5rem,4.6vw,4.25rem);line-height:1.05}}
.lc h2{font-weight:450}
.lc-btn{font-family:var(--ds-display);font-weight:500;font-size:16px;border-radius:8px}
.lc-eyebrow{color:#3C2FE0}

/* Nav CTA stays at button size. The old 0.74rem squeeze is only a fit hack. */
@media (max-width:720px){
  .nav-ctas .cn-nav{font-size:15px!important;line-height:1.2;padding:8px 12px!important}
}

/* Private tools */
body.sow-app{font-family:var(--ds-sans)}
body.ds-admin{background:#fff;color:#0A2540;font-family:var(--ds-sans);font-size:16px;line-height:1.55}
body.ds-admin h1,body.ds-admin h2{font-family:var(--ds-display);font-weight:450;letter-spacing:-.02em;color:#0A2540}
body.ds-admin button{background:#635BFF;border-color:#635BFF;color:#fff;font-family:var(--ds-display);font-weight:500}
body.ds-admin .card,body.ds-admin form,body.ds-admin table{border-color:#E3E8EE}
body.ds-admin th{background:#E5EDF5}
body.ds-admin .bar{background:#635BFF}

/* Booklet: keep A4 geometry. Lighten the display face and shift ink/accent only. */
body.booklet{
  --ink:#0A2540;
  --ink2:#3E5166;
  --acc:#635BFF;
  background:#fff;
}
body.booklet h1{font-family:var(--ds-display);font-weight:400;letter-spacing:-.03em;color:#0A2540}
body.booklet .dark h1,body.booklet .dark{color:#fff}
body.booklet .eyebrow::before{background:#635BFF}

@media (max-width:390px){
  body.home-v2 .pp-hero h1,body.net-v2 .net-hero h1,body.ab .ab-hero h1{font-size:2.125rem;letter-spacing:-.028em}
  .nav-links a,.btn--sm{font-size:15px}
}
