/* Best Personal Trainer Dubai — Editorial Design System v3 */
/* Modular scale 1.333 (Perfect Fourth) · Spacing 0.25rem × Fibonacci · Layout Golden Ratio φ=1.618 */

:root{
  /* ── Modular scale: 1.333 ── */
  --ratio: 1.333;
  --base: 1.0625rem;                                                          /* 17px (≥iOS no-zoom) */
  --s-2: calc(var(--base) / var(--ratio) / var(--ratio));                     /* ~9.6px */
  --s-1: calc(var(--base) / var(--ratio));                                    /* ~12.8px */
  --s0:  var(--base);                                                         /* 17px body */
  --s1:  calc(var(--base) * var(--ratio));                                    /* ~22.7px */
  --s2:  calc(var(--base) * var(--ratio) * var(--ratio));                     /* ~30.2px */
  --s3:  calc(var(--base) * var(--ratio) * var(--ratio) * var(--ratio));      /* ~40.3px */
  --s4:  calc(var(--base) * var(--ratio) * var(--ratio) * var(--ratio) * var(--ratio));    /* ~53.7px */
  --s5:  calc(var(--base) * var(--ratio) * var(--ratio) * var(--ratio) * var(--ratio) * var(--ratio));    /* ~71.6px */

  /* ── Spacing: 0.25rem × Fibonacci ── */
  --u: 0.25rem;
  --gap-2xs: calc(var(--u) * 1);                                              /* 4 */
  --gap-xs:  calc(var(--u) * 2);                                              /* 8 */
  --gap-s:   calc(var(--u) * 3);                                              /* 12 */
  --gap-m:   calc(var(--u) * 5);                                              /* 20 */
  --gap-l:   calc(var(--u) * 8);                                              /* 32 */
  --gap-xl:  calc(var(--u) * 13);                                             /* 52 */
  --gap-2xl: calc(var(--u) * 21);                                             /* 84 */

  /* ── Layout (Golden Ratio φ=1.618) ── */
  --phi: 1.618;
  --measure: 38rem;                                                           /* ~70ch */
  --container: 44rem;                                                         /* article body, golden-trimmed */
  --container-wide: calc(var(--container) * var(--phi));                      /* ~71rem hero/full-bleed */

  /* ── Color (every text/bg pair WCAG AA verified) ── */
  --paper:    #FBFAF6;                                                        /* base */
  --paper-2:  #F2EEE3;                                                        /* tinted */
  --paper-3:  #E8E2D0;                                                        /* deeper */
  --ink:      #14181F;                                                        /* on paper: 16.8:1 */
  --ink-2:    #2A2E36;                                                        /* on paper: 13.2:1 */
  --ink-mute: #4A5260;                                                        /* on paper: 7.4:1 */
  --rule:     #1F232B;
  --rule-soft: rgba(20,24,31,0.12);                                           /* hairline soft rule */
  --accent:        #B58B2D;                                                   /* gold borders/markers */
  --accent-text:   #8A6820;                                                   /* on paper: 4.9:1 */
  --accent-strong: #E0B43C;                                                   /* on --ink: 9.4:1 (CTA) */
  --good: #1B7A3E;
  --bad:  #B23A2A;

  /* ── Geometry ── */
  --radius-s: 0.25rem;
  --radius-m: 0.5rem;
  --shadow-cta:       0 0.375rem 1rem -0.25rem rgba(20,24,31,0.16), 0 0.0625rem 0.25rem -0.0625rem rgba(20,24,31,0.10);
  --shadow-cta-hover: 0 0.625rem 1.5rem -0.25rem rgba(20,24,31,0.24), 0 0.1875rem 0.5rem -0.125rem rgba(20,24,31,0.14);

  /* ── Motion ── */
  --ease: cubic-bezier(0.2, 0.7, 0.2, 1);
  --dur: 180ms;
}

/* ── Reset ── */
*,*::before,*::after{box-sizing:border-box}
html{font-size:100%;scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{
  margin:0;
  font-family:"Inter",system-ui,-apple-system,sans-serif;
  font-size:var(--s0);line-height:1.55;
  color:var(--ink);background:var(--paper);
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
  font-feature-settings:"kern" 1,"liga" 1,"calt" 1,"ss01" 1,"cv11" 1;
}

/* ── Skip link (sr-only until focused) ── */
.skip-link{
  position:absolute;left:-10000px;top:auto;width:0.0625rem;height:0.0625rem;overflow:hidden;
  background:var(--ink);color:var(--paper);padding:var(--gap-s) var(--gap-m);font-weight:700;
  border-radius:var(--radius-s);text-decoration:none;z-index:100;
}
.skip-link:focus{position:fixed;left:var(--gap-m);top:var(--gap-m);width:auto;height:auto;outline:0.1875rem solid var(--accent-strong);outline-offset:0.1875rem}

/* ── Links ── */
a{color:var(--ink);text-decoration:underline;text-decoration-thickness:0.0625rem;text-underline-offset:0.1875rem;text-decoration-color:var(--ink-mute);transition:color var(--dur) var(--ease),text-decoration-color var(--dur) var(--ease)}
a:hover{color:var(--accent-text);text-decoration-color:var(--accent-text)}
:focus-visible{outline:0.1875rem solid var(--accent-strong);outline-offset:0.1875rem;border-radius:var(--radius-s)}

/* ── Typography (line-height inversely proportional · text-wrap balance · old-style figures) ── */
h1,h2,h3,h4{
  font-family:"Newsreader",Georgia,serif;
  color:var(--ink);
  margin:0 0 var(--gap-s);
  text-wrap:balance;
  font-feature-settings:"kern" 1,"liga" 1,"calt" 1,"onum" 1;
  letter-spacing:-0.015em;
}
h1{
  font-size:clamp(var(--s2), 1.4rem + 2.2vw, var(--s4));                      /* 30 → 53.7 (was 40 → 71.6) */
  font-weight:800;
  line-height:1.06;
  letter-spacing:-0.022em;
  max-width:36ch;
}
h1 .h1-tail{display:block;font-size:0.72em;font-weight:700;color:var(--ink-2);margin-top:var(--gap-2xs);font-style:italic;letter-spacing:-0.018em}
h2{
  font-size:clamp(var(--s1), 1.2rem + 1.1vw, var(--s2));                      /* 22.7 → 30 (was 30 → 40) */
  font-weight:700;
  line-height:1.16;
  margin-top:var(--gap-l);
  padding-top:var(--gap-s);
  border-top:0.0625rem solid var(--rule-soft);
  max-width:30ch;
}
h3{
  font-size:var(--s1);
  font-weight:700;
  line-height:1.22;
  margin-top:var(--gap-m);
  max-width:34ch;
}
h4{
  font-size:var(--s0);
  font-weight:700;
  line-height:1.32;
  margin-top:var(--gap-m);
  font-family:"Inter",sans-serif;
  letter-spacing:0.01em;
}
p,ul,ol{max-width:var(--measure);margin:0 0 var(--gap-s);text-wrap:pretty}
ul,ol{padding-left:1.4em}
li{margin-bottom:var(--gap-xs);line-height:1.55}
strong{font-weight:700;color:var(--ink)}
em{font-style:italic}

/* ── Layout primitives ── */
.container{max-width:var(--container);margin-inline:auto;padding-inline:var(--gap-m)}
.container-wide{max-width:var(--container-wide);margin-inline:auto;padding-inline:var(--gap-m)}

/* ── MASTHEAD ── */
.mast{
  border-bottom:0.0625rem solid var(--rule-soft);
  padding:var(--gap-s) var(--gap-m);
  position:sticky;top:0;
  background:rgba(251,250,246,0.92);
  backdrop-filter:saturate(1.4) blur(0.5rem);-webkit-backdrop-filter:saturate(1.4) blur(0.5rem);
  z-index:50;
}
.mast-inner{max-width:var(--container-wide);margin-inline:auto;display:flex;justify-content:space-between;align-items:center;gap:var(--gap-m);flex-wrap:wrap}
.mast a{text-decoration:none}
.mast-mark{font-family:"Newsreader",serif;font-weight:900;font-size:var(--s0);color:var(--ink);letter-spacing:-0.01em}
.mast-nav{display:flex;gap:var(--gap-m);font-size:var(--s-1);color:var(--ink-mute);flex-wrap:wrap}
.mast-nav a{color:var(--ink-mute);min-height:2.75rem;display:inline-flex;align-items:center}
.mast-nav a:hover{color:var(--accent-text)}

/* ── HERO ── */
/* Default (sub-pages, single-col): tight padding, body container width */
.hero{padding:var(--gap-l) 0 var(--gap-m);max-width:var(--container);margin-inline:auto;padding-inline:var(--gap-m)}
.hero .lede{margin-bottom:0}

/* Hero with golden-ratio 2-col (homepage only — opt-in via .hero-grid container-wide) */
.hero.container-wide{max-width:var(--container-wide)}
.hero-grid{display:grid;gap:var(--gap-l);align-items:start}
@media(min-width:56rem){
  .hero-grid{grid-template-columns:var(--phi)fr 1fr;gap:var(--gap-l)}
}
.hero-text{min-width:0}
.hero-side{display:flex;flex-direction:column;gap:var(--gap-s);min-width:0}

.kicker{
  font-size:var(--s-1);letter-spacing:0.16em;text-transform:uppercase;font-weight:700;
  color:var(--accent-text);display:block;margin-bottom:var(--gap-s);
  font-family:"Inter",sans-serif;
  font-feature-settings:"kern" 1,"liga" 0,"tnum" 1;
}
.byline{
  font-size:var(--s-1);color:var(--ink-mute);margin-bottom:var(--gap-s);
  font-style:italic;max-width:var(--measure);
  font-feature-settings:"kern" 1,"liga" 1,"onum" 1;
}
.lede{
  font-family:"Newsreader",serif;font-style:italic;font-weight:400;
  font-size:clamp(var(--s0), 1rem + 0.4vw, var(--s1));
  line-height:1.45;color:var(--ink-2);
  margin-bottom:var(--gap-m);max-width:var(--measure);
  font-feature-settings:"kern" 1,"liga" 1,"onum" 1,"calt" 1;
  text-wrap:pretty;
}

/* ── AEO direct-answer ── */
.aeo{
  background:var(--paper-2);padding:var(--gap-m);
  border-left:0.25rem solid var(--accent);border-radius:0 var(--radius-s) var(--radius-s) 0;
}
.aeo .label{
  font-size:var(--s-1);letter-spacing:0.12em;text-transform:uppercase;font-weight:700;
  color:var(--accent-text);margin-bottom:var(--gap-2xs);display:block;
  font-family:"Inter",sans-serif;
}
.aeo p{margin:0;font-weight:500;max-width:none;line-height:1.55}

/* ── BRAND CITE (full container width — was stranded at 38rem) ── */
.brand-cite{
  margin-block:var(--gap-m);
  padding:var(--gap-s) var(--gap-m);
  background:var(--paper-2);
  border-left:0.1875rem solid var(--ink);
  border-radius:var(--radius-s);
  font-size:var(--s-1);line-height:1.55;
  max-width:none;
}
.brand-cite p{margin:0;max-width:none}

/* ── BODY ── */
main{padding-bottom:var(--gap-l)}
main > *:not(.hero){max-width:var(--container);margin-inline:auto;padding-inline:var(--gap-m)}

/* ── TOC ── */
.toc{
  background:var(--paper-2);padding:var(--gap-s) var(--gap-m);
  border-radius:var(--radius-s);margin-block:var(--gap-m);
  border:0.0625rem solid var(--rule-soft);
}
.toc h2{margin:0 0 var(--gap-xs);border:none;padding:0;font-size:var(--s-1);letter-spacing:0.15em;text-transform:uppercase;color:var(--ink-mute);font-family:"Inter",sans-serif;font-weight:700;max-width:none}
.toc ol{margin:0;padding-left:1.2em;font-size:var(--s-1);max-width:none}
.toc li{margin-bottom:var(--gap-2xs)}
.toc a{text-decoration:none;color:var(--ink);min-height:1.75rem;display:inline-flex;align-items:center}
.toc a:hover{text-decoration:underline}

/* ── TABLES ── */
.tbl-wrap{overflow-x:auto;margin-block:var(--gap-m);-webkit-overflow-scrolling:touch}
table{border-collapse:collapse;width:100%;font-size:var(--s-1);background:var(--paper)}
th,td{padding:var(--gap-s) var(--gap-m);border-bottom:0.0625rem solid var(--rule-soft);text-align:left;vertical-align:top}
th{background:var(--ink);color:var(--paper);font-weight:700;letter-spacing:0.04em;font-size:var(--s-1);text-transform:uppercase;font-feature-settings:"kern" 1,"tnum" 1}
td{font-feature-settings:"kern" 1,"liga" 1,"tnum" 1}
tr:hover td{background:var(--paper-2)}

/* ── RANKED LIST ── */
.ranked{counter-reset:rank;list-style:none;padding:0;margin-block:var(--gap-m);max-width:none}
.ranked > li{
  counter-increment:rank;
  padding:var(--gap-m);background:var(--paper-2);
  border-radius:var(--radius-m);margin-bottom:var(--gap-s);
  position:relative;border-left:0.1875rem solid var(--accent);
  transition:transform var(--dur) var(--ease),box-shadow var(--dur) var(--ease);
}
.ranked > li:hover{box-shadow:var(--shadow-cta)}
.ranked > li::before{
  content:"#" counter(rank);
  position:absolute;top:var(--gap-m);right:var(--gap-m);
  font-family:"Newsreader",serif;font-weight:900;font-size:var(--s2);
  color:var(--accent-text);line-height:1;font-feature-settings:"tnum" 1
}
.ranked h3{margin:0 0 var(--gap-2xs);padding-right:3rem;border:none;font-size:var(--s1);max-width:none}
.ranked .score{font-size:var(--s-1);color:var(--ink-mute);margin-bottom:var(--gap-xs);font-style:italic;font-feature-settings:"kern" 1,"onum" 1}
.ranked p{font-size:var(--s0);margin-bottom:var(--gap-xs);max-width:none;line-height:1.55}
.ranked .verdict{font-weight:700;color:var(--ink);font-size:var(--s-1)}

/* ── CTA SYSTEM (Halo Effect: negative space around button) ── */
.cta-box{
  background:var(--ink);color:var(--paper);
  padding:var(--gap-m);
  border-radius:var(--radius-m);
  margin-block:var(--gap-m);
  text-align:center;
}
.cta-box h3{
  color:var(--paper);
  font-size:clamp(var(--s1), 1.2rem + 0.5vw, var(--s2));
  margin:0 0 var(--gap-xs);border:none;padding:0;
  max-width:38rem;margin-inline:auto;
}
.cta-box p{
  color:var(--paper-2);max-width:38rem;margin-inline:auto;
  margin-bottom:var(--gap-s);line-height:1.5;font-size:var(--s-1);
}
.cta-box--hero{margin-block:0;padding:var(--gap-s) var(--gap-m)}
.cta-box--hero h3{font-size:var(--s1)}

.cta-actions{display:flex;flex-wrap:wrap;gap:var(--gap-s);justify-content:center;align-items:center}

/* Button — Fitts's Law ≥ 2.75rem · max-contrast on dark surface */
.btn{
  display:inline-flex;align-items:center;justify-content:center;
  background:var(--accent-strong);color:var(--ink);
  padding:0.75rem 1.375rem;
  font-family:"Inter",sans-serif;font-size:var(--s0);font-weight:700;letter-spacing:0.015em;
  border-radius:var(--radius-s);text-decoration:none;
  min-height:2.875rem;line-height:1.2;
  border:0.125rem solid var(--accent-strong);
  box-shadow:var(--shadow-cta);
  transition:transform var(--dur) var(--ease),box-shadow var(--dur) var(--ease),background var(--dur) var(--ease),border-color var(--dur) var(--ease);
  cursor:pointer;font-feature-settings:"kern" 1,"liga" 1;
}
.btn:hover{transform:translateY(-0.125rem);box-shadow:var(--shadow-cta-hover);background:#F0C44A;border-color:#F0C44A;color:var(--ink)}
.btn:active{transform:translateY(0);box-shadow:var(--shadow-cta)}

.btn-primary{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.btn-primary:hover{background:#000;color:var(--paper);border-color:#000}

.btn-outline{background:transparent;color:var(--paper);border-color:var(--paper);box-shadow:none}
.btn-outline:hover{background:var(--paper);color:var(--ink);border-color:var(--paper)}

/* ── FAQ ── */
.faq{margin-block:var(--gap-l)}
.faq details{border-bottom:0.0625rem solid var(--rule-soft);padding-block:var(--gap-s)}
.faq summary{
  font-family:"Newsreader",serif;font-weight:600;font-size:var(--s1);
  cursor:pointer;list-style:none;position:relative;padding-right:2rem;
  min-height:2.75rem;display:flex;align-items:center;line-height:1.3;
  text-wrap:balance;
}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{
  content:"+";position:absolute;right:0;
  font-size:var(--s2);color:var(--accent-text);font-weight:400;line-height:1;
  transition:transform var(--dur) var(--ease);
}
.faq details[open] summary::after{content:"−"}
.faq details > div{padding-block:var(--gap-s);color:var(--ink-2);font-size:var(--s0);max-width:var(--measure);line-height:1.6}

/* ── DISCLOSURE ── */
.disclosure{
  margin-block:var(--gap-m);padding:var(--gap-m);
  border:0.0625rem solid var(--rule-soft);border-radius:var(--radius-s);
  background:var(--paper);font-size:var(--s-1);line-height:1.55;
  max-width:none;
}
.disclosure strong{display:block;margin-bottom:var(--gap-2xs);color:var(--ink);font-size:var(--s0)}

/* ── CALLOUT (sub-pages) ── */
.callout{
  background:var(--paper-2);padding:var(--gap-m);
  border-left:0.25rem solid var(--accent);border-radius:0 var(--radius-s) var(--radius-s) 0;
  margin-block:var(--gap-m);
}
.callout h4{margin-top:0;color:var(--accent-text);font-family:"Inter",sans-serif;font-size:var(--s-1);letter-spacing:0.12em;text-transform:uppercase;font-weight:700}

/* ── BLOCKQUOTE ── */
blockquote{
  margin-block:var(--gap-m);padding:var(--gap-s) var(--gap-m);
  border-left:0.1875rem solid var(--accent);
  font-family:"Newsreader",serif;font-style:italic;
  font-size:var(--s1);line-height:1.4;
  background:var(--paper-2);
  font-feature-settings:"kern" 1,"liga" 1,"onum" 1;
}

/* ── PTD FUNNEL ── */
.ptd-funnel{
  margin:var(--gap-l) auto;padding:var(--gap-m);
  background:var(--paper-2);border-radius:var(--radius-m);
  max-width:none;
}
.ptd-funnel h2{margin:0 0 var(--gap-xs);font-size:var(--s1);font-family:"Newsreader",serif;border:none;padding:0;max-width:none}
.ptd-funnel p{margin:0 0 var(--gap-s);color:var(--ink-2);font-size:var(--s0);line-height:1.55;max-width:none}
.ptd-funnel ul{list-style:none;padding:0;margin:0 0 var(--gap-s);display:grid;grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));gap:var(--gap-2xs) var(--gap-m);font-size:var(--s-1);max-width:none}
.ptd-funnel li{margin:0}
.ptd-funnel li a{display:inline-flex;align-items:center;min-height:1.75rem}
.ptd-funnel .contact{margin:0;font-size:var(--s-1);color:var(--ink-2)}
.ptd-funnel .contact a{min-height:2.75rem;display:inline-flex;align-items:center;padding-inline:var(--gap-2xs)}

/* ── MOBILE STICKY CTA (<48rem only) ── */
.sticky-cta{
  position:fixed;bottom:0;left:0;right:0;
  background:var(--ink);color:var(--paper);
  padding:var(--gap-s);padding-bottom:max(var(--gap-s),env(safe-area-inset-bottom));
  z-index:40;display:flex;gap:var(--gap-s);justify-content:center;align-items:center;
  border-top:0.125rem solid var(--accent-strong);
  box-shadow:0 -0.5rem 1.25rem -0.25rem rgba(0,0,0,0.18);
}
.sticky-cta .btn{padding:0.5rem 1rem;font-size:var(--s-1);min-height:2.75rem;width:100%;max-width:24rem}
@media(min-width:48rem){.sticky-cta{display:none}}

/* ── WHATSAPP FLOAT (hidden on mobile to avoid sticky-cta collision) ── */
.wa-float{
  position:fixed;bottom:1.5rem;right:1.5rem;
  background:#25D366;color:#fff;border-radius:50%;
  width:3.5rem;height:3.5rem;
  display:flex;align-items:center;justify-content:center;
  text-decoration:none;box-shadow:var(--shadow-cta);z-index:39;font-size:1.5rem;
  transition:transform var(--dur) var(--ease);
}
.wa-float:hover{transform:scale(1.06);color:#fff}
@media(max-width:47.99rem){.wa-float{display:none}}

/* ── FOOTER ── */
footer{
  border-top:0.0625rem solid var(--rule-soft);
  padding:var(--gap-l) var(--gap-m);
  font-size:var(--s-1);color:var(--ink-mute);text-align:center;
  margin-top:var(--gap-l);padding-bottom:5rem;line-height:1.55;
}
@media(min-width:48rem){footer{padding-bottom:var(--gap-l)}}
footer a{color:var(--ink-mute);min-height:1.75rem;display:inline-flex;align-items:center;padding-inline:var(--gap-2xs)}
footer p{margin:0 0 var(--gap-xs);max-width:none}
footer .links{margin-top:var(--gap-s);display:flex;flex-wrap:wrap;gap:var(--gap-2xs) var(--gap-s);justify-content:center;align-items:center}

/* ── Voice-mined client quote (under byline) ── */
.client-voice{
  margin:var(--gap-s) 0 var(--gap-m);
  padding:var(--gap-s) var(--gap-m);
  border-left:0.1875rem solid var(--accent);
  background:var(--paper-2);
  border-radius:0 var(--radius-s) var(--radius-s) 0;
  max-width:var(--measure);
}
.client-voice p{
  margin:0 0 var(--gap-2xs);
  font-family:"Newsreader",serif;
  font-style:italic;
  font-size:var(--s1);
  line-height:1.4;
  color:var(--ink);
  font-feature-settings:"kern" 1,"liga" 1,"onum" 1;
  max-width:none;
}
.client-voice cite{
  font-style:normal;
  font-size:var(--s-1);
  color:var(--ink-mute);
  font-family:"Inter",sans-serif;
  letter-spacing:0.01em;
}

/* ── Mechanism name callout (between hero grid and disclosure) ── */
.mech-name{
  margin:var(--gap-m) auto;
  padding:var(--gap-s) var(--gap-m);
  font-size:var(--s-1);
  color:var(--ink-2);
  text-align:center;
  border-top:0.0625rem solid var(--rule-soft);
  border-bottom:0.0625rem solid var(--rule-soft);
  max-width:var(--container);
  letter-spacing:0.01em;
}
.mech-name strong{color:var(--accent-text)}

/* ── Factual citation note inside medical callout ── */
.callout-note{
  margin-top:var(--gap-s);
  padding-top:var(--gap-s);
  border-top:0.0625rem dashed var(--rule-soft);
  font-size:var(--s-1);
  color:var(--ink-mute);
}

/* ── 2-col fit grid (Choose PTD if / Not ideal if) ── */
.fit-grid{display:grid;gap:var(--gap-m);margin-block:var(--gap-l);max-width:none}
@media(min-width:48rem){.fit-grid{grid-template-columns:1fr 1fr}}
.fit-card{padding:var(--gap-m);border-radius:var(--radius-m);background:var(--paper-2)}
.fit-card--good{border-left:0.25rem solid var(--good)}
.fit-card--bad{border-left:0.25rem solid var(--bad)}
.fit-card h3{margin:0 0 var(--gap-s);font-size:var(--s1);font-family:"Inter",sans-serif;font-weight:700;letter-spacing:0;line-height:1.2;max-width:none}
.fit-card--good h3{color:var(--good)}
.fit-card--bad h3{color:var(--bad)}
.fit-card ul{list-style:none;padding:0;margin:0;font-size:var(--s0)}
.fit-card li{padding-left:1.5em;position:relative;margin-bottom:var(--gap-xs);line-height:1.5}
.fit-card--good li::before{content:"✓";position:absolute;left:0;color:var(--good);font-weight:700}
.fit-card--bad li::before{content:"✕";position:absolute;left:0;color:var(--bad);font-weight:700}

/* ── Editorial body sections ── */
.body-section{margin-block:var(--gap-l)}
.body-section h2{max-width:32ch}
.body-section p{font-size:var(--s0);line-height:1.6;color:var(--ink-2);max-width:var(--measure)}
.body-section p strong{color:var(--ink)}

/* ── Reduced motion ── */
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:0.01ms!important;animation-iteration-count:1!important;transition-duration:0.01ms!important;scroll-behavior:auto!important}
}

/* ── Print ── */
@media print{
  .mast,.sticky-cta,.wa-float,.skip-link{display:none}
  body{background:#fff;color:#000;font-size:11pt}
  .cta-box{background:#fff;color:#000;border:0.0625rem solid #000}
  a{color:#000;text-decoration:underline}
}


/* Trust stat — operational client count */
.trust-stat{display:inline-block;font-weight:700;color:var(--accent-text);margin-right:var(--gap-2xs)}
