/* =====================================================
   HOW WE EXCEL / ADAPTIVE TEAM CONSULTING
   Design System — v2.0 HWE Integration
   Lora (headings) + Source Sans 3 (body)
   Navy #1F3A5F | Teal #2F6F73 | Ivory #F7F3EA
   Gold #C99A4A | Charcoal #2B2B2B
   ===================================================== */

@import url('https://fonts.googleapis.com/css2?family=Lora:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500&family=Source+Sans+3:wght@300;400;500;600;700&display=swap');

/* ── TOKENS ─────────────────────────────────────────── */
:root {
  --navy:        #1F3A5F;
  --navy-dark:   #162B47;
  --navy-light:  #2A4D7A;
  --teal:        #2F6F73;
  --teal-dark:   #205457;
  --teal-light:  #3D8D92;
  --ivory:       #F7F3EA;
  --ivory-dark:  #EDE8DC;
  --ivory-light: #FDFAF4;
  --gold:        #C99A4A;
  --gold-dark:   #A87C33;
  --gold-light:  #DDB76A;
  --charcoal:    #2B2B2B;

  --color-bg:           var(--ivory);
  --color-surface:      var(--ivory-light);
  --color-surface-2:    #FFFFFF;
  --color-surface-off:  var(--ivory-dark);
  --color-border:       #D8D0BE;
  --color-divider:      #E2DBCC;
  --color-text:         var(--charcoal);
  --color-text-muted:   #5A5A5A;
  --color-text-faint:   #8A8A8A;
  --color-text-inv:     var(--ivory);
  --color-primary:      var(--navy);
  --color-primary-h:    var(--navy-dark);
  --color-secondary:    var(--teal);
  --color-secondary-h:  var(--teal-dark);
  --color-accent:       var(--gold);
  --color-accent-h:     var(--gold-dark);

  --font-display: 'Lora', Georgia, serif;
  --font-body:    'Source Sans 3', 'Helvetica Neue', sans-serif;

  --text-xs:   clamp(0.75rem,  0.7rem  + 0.25vw, 0.875rem);
  --text-sm:   clamp(0.875rem, 0.8rem  + 0.35vw, 1rem);
  --text-base: clamp(1rem,     0.95rem + 0.25vw, 1.125rem);
  --text-lg:   clamp(1.125rem, 1rem    + 0.75vw, 1.5rem);
  --text-xl:   clamp(1.5rem,   1.2rem  + 1.25vw, 2.25rem);
  --text-2xl:  clamp(2rem,     1.2rem  + 2.5vw,  3.5rem);
  --text-3xl:  clamp(2.5rem,   1rem    + 4vw,    5rem);

  --sp-1: 0.25rem; --sp-2: 0.5rem; --sp-3: 0.75rem;
  --sp-4: 1rem;    --sp-5: 1.25rem;--sp-6: 1.5rem;
  --sp-8: 2rem;    --sp-10: 2.5rem;--sp-12: 3rem;
  --sp-16: 4rem;   --sp-20: 5rem;  --sp-24: 6rem;

  --radius-sm: 0.375rem; --radius-md: 0.5rem;
  --radius-lg: 0.75rem;  --radius-xl: 1rem;
  --radius-full: 9999px;

  --shadow-sm: 0 1px 3px rgba(31,58,95,.08);
  --shadow-md: 0 4px 16px rgba(31,58,95,.10);
  --shadow-lg: 0 12px 40px rgba(31,58,95,.14);

  --ease: 200ms cubic-bezier(.16,1,.3,1);
  --ease-slow: 350ms cubic-bezier(.16,1,.3,1);

  --w-narrow:  640px;
  --w-default: 960px;
  --w-wide:    1200px;
}

[data-theme="dark"] {
  --color-bg:          #181614;
  --color-surface:     #1E1C1A;
  --color-surface-2:   #252320;
  --color-surface-off: #1A1815;
  --color-border:      #38352E;
  --color-divider:     #2E2C27;
  --color-text:        #D6D0C4;
  --color-text-muted:  #948E82;
  --color-text-faint:  #5C5751;
  --color-text-inv:    #1A1814;
  --color-primary:     #5B8FC4;
  --color-primary-h:   #7AAAD8;
  --color-secondary:   #4DA5AB;
  --color-secondary-h: #64C2C9;
  --color-accent:      #D9AE68;
  --color-accent-h:    #E8C480;
}

/* ── RESET ──────────────────────────────────────────── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:none;text-size-adjust:none;-webkit-font-smoothing:antialiased;scroll-behavior:smooth;scroll-padding-top:5rem}
body{min-height:100dvh;line-height:1.65;font-family:var(--font-body);font-size:var(--text-base);color:var(--color-text);background:var(--color-bg);transition:background var(--ease-slow),color var(--ease-slow)}
img,picture,svg{display:block;max-width:100%;height:auto}
h1,h2,h3,h4,h5,h6{font-family:var(--font-display);line-height:1.2;color:var(--color-text);text-wrap:balance}
p,li{text-wrap:pretty;max-width:72ch}
a{color:var(--color-secondary);text-decoration:none;transition:color var(--ease)}
a:hover{color:var(--color-secondary-h)}
button{cursor:pointer;background:none;border:none;font:inherit;color:inherit}
input,textarea,select{font:inherit;color:inherit}
ul[role="list"],ol[role="list"]{list-style:none}
::selection{background:rgba(201,154,74,.22);color:var(--color-text)}
:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px;border-radius:var(--radius-sm)}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}

/* ── UTILITIES ──────────────────────────────────────── */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.container{width:100%;max-width:var(--w-wide);margin-inline:auto;padding-inline:var(--sp-6)}
.container--default{max-width:var(--w-default)}
.container--narrow{max-width:var(--w-narrow)}
.section{padding-block:clamp(var(--sp-12),8vw,var(--sp-24))}
.section--alt{background:var(--color-surface)}
.section--navy{background:var(--navy);color:var(--ivory)}
.section--navy h1,.section--navy h2,.section--navy h3,.section--navy h4{color:var(--ivory)}
.section--teal{background:var(--teal);color:var(--ivory)}
.section--teal h1,.section--teal h2,.section--teal h3,.section--teal h4{color:var(--ivory)}
.skip-link{position:absolute;top:-100%;left:var(--sp-4);background:var(--gold);color:var(--navy);padding:var(--sp-2) var(--sp-4);border-radius:var(--radius-sm);font-weight:700;z-index:999;transition:top var(--ease)}
.skip-link:focus{top:var(--sp-4)}

/* ── LABELS / EYEBROWS ──────────────────────────────── */
.label{display:inline-block;font-family:var(--font-body);font-size:var(--text-xs);font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--color-accent);margin-bottom:var(--sp-3)}
.gold-bar{display:block;width:48px;height:3px;background:var(--gold);border-radius:var(--radius-full);margin-bottom:var(--sp-4)}

/* ── BUTTONS ────────────────────────────────────────── */
.btn{display:inline-flex;align-items:center;gap:var(--sp-2);padding:.75rem 1.75rem;font-family:var(--font-body);font-size:var(--text-sm);font-weight:600;letter-spacing:.03em;border-radius:var(--radius-md);border:2px solid transparent;text-decoration:none;transition:all var(--ease);cursor:pointer;white-space:nowrap}
.btn--primary{background:var(--color-primary);color:var(--ivory);border-color:var(--color-primary)}
.btn--primary:hover{background:var(--color-primary-h);border-color:var(--color-primary-h);color:var(--ivory);box-shadow:var(--shadow-md);transform:translateY(-1px)}
.btn--secondary{background:var(--color-secondary);color:var(--ivory);border-color:var(--color-secondary)}
.btn--secondary:hover{background:var(--color-secondary-h);border-color:var(--color-secondary-h);color:var(--ivory);box-shadow:var(--shadow-md);transform:translateY(-1px)}
.btn--gold{background:var(--color-accent);color:var(--navy);border-color:var(--color-accent)}
.btn--gold:hover{background:var(--color-accent-h);color:var(--navy);transform:translateY(-1px);box-shadow:var(--shadow-md)}
.btn--outline{background:transparent;color:var(--color-primary);border-color:var(--color-primary)}
.btn--outline:hover{background:var(--color-primary);color:var(--ivory);transform:translateY(-1px)}
.btn--outline-light{background:transparent;color:var(--ivory);border-color:rgba(247,243,234,.6)}
.btn--outline-light:hover{background:var(--ivory);color:var(--navy);transform:translateY(-1px)}
.btn--ghost{background:transparent;color:var(--color-text-muted);border-color:var(--color-border)}
.btn--ghost:hover{border-color:var(--color-secondary);color:var(--color-secondary)}

/* ── NAV ────────────────────────────────────────────── */
.nav{position:sticky;top:0;z-index:100;background:rgba(31,58,95,.97);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid rgba(201,154,74,.18);transition:box-shadow var(--ease)}
.nav--scrolled{box-shadow:var(--shadow-lg)}
.nav__inner{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-6);height:68px}
.nav__logo{display:flex;align-items:center;gap:var(--sp-3);text-decoration:none;flex-shrink:0}
.nav__logo-img{height:44px;width:auto;object-fit:contain;filter:brightness(0) invert(1)}
.nav__links{display:flex;align-items:center;gap:var(--sp-1);list-style:none}
.nav__links a{display:block;padding:var(--sp-2) var(--sp-3);font-size:var(--text-sm);font-weight:500;color:rgba(247,243,234,.82);text-decoration:none;border-radius:var(--radius-sm);transition:all var(--ease);white-space:nowrap}
.nav__links a:hover,.nav__links a.active{color:var(--gold);background:rgba(201,154,74,.12)}
.nav__actions{display:flex;align-items:center;gap:var(--sp-3)}
.theme-toggle{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--radius-full);color:rgba(247,243,234,.7);background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);transition:all var(--ease);cursor:pointer}
.theme-toggle:hover{color:var(--gold);background:rgba(201,154,74,.15);border-color:rgba(201,154,74,.3)}
.hamburger{display:none;flex-direction:column;gap:5px;padding:var(--sp-2);color:var(--ivory);cursor:pointer}
.hamburger span{display:block;width:22px;height:2px;background:currentColor;border-radius:2px;transition:all var(--ease)}
.mobile-nav{display:none;position:fixed;inset:0;background:var(--navy);z-index:99;flex-direction:column;align-items:center;justify-content:center;gap:var(--sp-4);opacity:0;transition:opacity var(--ease-slow)}
.mobile-nav.open{display:flex;opacity:1}
.mobile-nav a{font-family:var(--font-display);font-size:var(--text-xl);color:var(--ivory);text-decoration:none;transition:color var(--ease)}
.mobile-nav a:hover{color:var(--gold)}
.mobile-nav__close{position:absolute;top:var(--sp-6);right:var(--sp-6);font-size:2rem;color:var(--ivory);cursor:pointer;line-height:1}
@media(max-width:960px){.nav__links{display:none}.nav__actions .btn{display:none}.hamburger{display:flex}}

/* ── HERO ───────────────────────────────────────────── */
.hero{min-height:90vh;display:flex;align-items:center;position:relative;overflow:hidden;background:linear-gradient(135deg,var(--navy) 0%,#2a4d7a 55%,var(--teal) 100%)}
.hero__dot-grid{position:absolute;inset:0;opacity:.06;background-image:radial-gradient(circle at 2px 2px,rgba(247,243,234,.8) 1px,transparent 0);background-size:40px 40px}
.hero__content{position:relative;z-index:2;padding-block:var(--sp-20)}
.hero__eyebrow{display:inline-flex;align-items:center;gap:var(--sp-2);font-size:var(--text-xs);font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin-bottom:var(--sp-5)}
.hero__eyebrow::before{content:'';display:block;width:24px;height:2px;background:var(--gold)}
.hero h1{font-size:var(--text-3xl);color:var(--ivory);line-height:1.08;margin-bottom:var(--sp-6);max-width:16ch}
.hero h1 em{color:var(--gold);font-style:italic}
.hero__sub{font-size:var(--text-lg);color:rgba(247,243,234,.82);max-width:54ch;line-height:1.65;margin-bottom:var(--sp-10)}
.hero__actions{display:flex;flex-wrap:wrap;gap:var(--sp-4)}
@media(max-width:640px){.hero{min-height:85vh}.hero h1{max-width:100%}}

/* ── PAGE HERO ──────────────────────────────────────── */
.page-hero{background:linear-gradient(135deg,var(--navy) 0%,#2a4d7a 60%,var(--teal) 100%);padding-block:clamp(var(--sp-16),10vw,var(--sp-24));position:relative;overflow:hidden}
.page-hero__bg{position:absolute;inset:0;opacity:.05;background-image:radial-gradient(circle at 2px 2px,rgba(247,243,234,.8) 1px,transparent 0);background-size:40px 40px}
.page-hero__content{position:relative;z-index:2}
.page-hero .label{color:var(--gold)}
.page-hero h1{font-size:var(--text-2xl);color:var(--ivory);margin-bottom:var(--sp-5);max-width:22ch}
.page-hero p{font-size:var(--text-lg);color:rgba(247,243,234,.82);max-width:58ch}

/* ── SECTION HEADING ────────────────────────────────── */
.sh{margin-bottom:var(--sp-12)}
.sh--center{text-align:center}
.sh--center p{margin-inline:auto}
.sh h2{font-size:var(--text-2xl);font-weight:700;margin-bottom:var(--sp-4);color:var(--color-primary)}
[data-theme="dark"] .sh h2{color:var(--color-primary)}
.sh p{font-size:var(--text-lg);color:var(--color-text-muted);max-width:62ch;line-height:1.65}

/* ── GRIDS ──────────────────────────────────────────── */
.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--sp-8)}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sp-6)}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--sp-5)}
@media(max-width:1024px){.grid-4{grid-template-columns:repeat(2,1fr)}}
@media(max-width:768px){.grid-3{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.grid-3,.grid-2,.grid-4{grid-template-columns:1fr}}

/* ── CARDS ──────────────────────────────────────────── */
.card{background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--sp-8);transition:transform var(--ease),box-shadow var(--ease)}
.card:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg)}
.card__icon{width:52px;height:52px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;margin-bottom:var(--sp-5);background:linear-gradient(135deg,rgba(31,58,95,.12),rgba(47,111,115,.12));color:var(--color-primary);flex-shrink:0}
.card h3{font-size:var(--text-lg);font-weight:600;margin-bottom:var(--sp-3);color:var(--color-primary)}
.card p{color:var(--color-text-muted);line-height:1.7;max-width:100%}

/* ── ACCORDION ──────────────────────────────────────── */
.accordion{border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--color-border)}
.accordion+.accordion{margin-top:var(--sp-4);border-radius:var(--radius-lg)}
.accordion__item{border-bottom:1px solid var(--color-border)}
.accordion__item:last-child{border-bottom:none}
.accordion__trigger{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-4);width:100%;padding:var(--sp-5) var(--sp-6);background:var(--color-surface-2);color:var(--color-text);font-family:var(--font-body);font-size:var(--text-base);font-weight:600;text-align:left;border:none;cursor:pointer;transition:background var(--ease),color var(--ease)}
.accordion__trigger:hover{background:var(--color-surface-off);color:var(--color-primary)}
.accordion__trigger[aria-expanded="true"]{background:var(--color-primary);color:var(--ivory)}
.accordion__icon{flex-shrink:0;width:20px;height:20px;transition:transform var(--ease)}
.accordion__trigger[aria-expanded="true"] .accordion__icon{transform:rotate(180deg)}
.accordion__panel{display:none;padding:var(--sp-5) var(--sp-6) var(--sp-6);background:var(--color-surface);color:var(--color-text-muted);line-height:1.75}
.accordion__panel.open{display:block}
.accordion__panel p+p{margin-top:var(--sp-3)}
.accordion__panel ul{margin-top:var(--sp-3);padding-left:var(--sp-5);list-style:disc}
.accordion__panel ul li{margin-bottom:var(--sp-2);max-width:100%}

/* ── TAGS / BADGES ──────────────────────────────────── */
.tag{display:inline-block;padding:var(--sp-1) var(--sp-3);background:rgba(47,111,115,.12);color:var(--teal);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:600;letter-spacing:.04em}
[data-theme="dark"] .tag{background:rgba(77,165,171,.2);color:var(--color-secondary)}
.badge{display:inline-flex;align-items:center;gap:var(--sp-2);padding:var(--sp-1) var(--sp-3);border:1px solid;border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:600;letter-spacing:.06em;text-transform:uppercase}
.badge--gold{border-color:rgba(201,154,74,.4);color:var(--gold-dark)}
.badge--future{border-color:rgba(140,140,140,.4);color:var(--color-text-faint);background:rgba(140,140,140,.06)}
.badge--pilot{border-color:rgba(47,111,115,.4);color:var(--teal)}
.badge--ready{border-color:rgba(31,58,95,.3);color:var(--navy)}
[data-theme="dark"] .badge--gold{color:var(--gold-light)}
[data-theme="dark"] .badge--ready{color:var(--color-primary)}

/* ── ALERT / NOTICE BOX ─────────────────────────────── */
.notice{border-radius:var(--radius-lg);padding:var(--sp-5) var(--sp-6);font-size:var(--text-sm);line-height:1.7}
.notice--info{background:rgba(47,111,115,.08);border:1px solid rgba(47,111,115,.25);color:var(--color-text-muted)}
.notice--caution{background:rgba(201,154,74,.08);border:1px solid rgba(201,154,74,.3);color:var(--color-text-muted)}
.notice--safety{background:rgba(192,57,43,.06);border:1px solid rgba(192,57,43,.25);color:var(--color-text-muted)}
.notice strong{color:var(--color-text)}

/* ── V-MODEL VISUAL ─────────────────────────────────── */
.v-stage{background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--sp-4) var(--sp-5)}
.v-stage__num{display:inline-flex;width:28px;height:28px;border-radius:50%;background:var(--navy);color:var(--ivory);font-size:var(--text-xs);font-weight:700;align-items:center;justify-content:center;margin-bottom:var(--sp-2);flex-shrink:0}
[data-theme="dark"] .v-stage__num{background:var(--color-primary)}
.v-stage strong{display:block;font-size:var(--text-sm);color:var(--color-primary);margin-bottom:var(--sp-1);font-family:var(--font-body)}
.v-stage p{font-size:var(--text-xs);color:var(--color-text-muted);line-height:1.6;max-width:100%}

/* ── PATHWAY CARD ───────────────────────────────────── */
.path-card{background:var(--color-surface-2);border:1px solid var(--color-border);border-top:4px solid var(--color-accent);border-radius:var(--radius-lg);padding:var(--sp-8);transition:transform var(--ease),box-shadow var(--ease)}
.path-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}
.path-card__num{display:inline-flex;width:36px;height:36px;border-radius:50%;background:var(--color-accent);color:var(--navy);font-weight:700;font-size:var(--text-sm);align-items:center;justify-content:center;margin-bottom:var(--sp-4)}
.path-card h3{font-size:var(--text-base);font-weight:700;margin-bottom:var(--sp-3);color:var(--color-primary);font-family:var(--font-body)}
.path-card p{font-size:var(--text-sm);color:var(--color-text-muted);line-height:1.65;max-width:100%}

/* ── TOOL CARD ──────────────────────────────────────── */
.tool-card{background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--sp-8);display:flex;flex-direction:column;gap:var(--sp-4);transition:transform var(--ease),box-shadow var(--ease),border-color var(--ease)}
.tool-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg);border-color:var(--color-secondary)}
.tool-card h3{font-size:var(--text-base);font-weight:700;color:var(--color-primary);font-family:var(--font-body)}
.tool-card p{font-size:var(--text-sm);color:var(--color-text-muted);flex:1;line-height:1.7;max-width:100%}
.tool-card__meta{display:flex;flex-wrap:wrap;gap:var(--sp-2);margin-top:auto}

/* ── FORMS ──────────────────────────────────────────── */
.form-group{display:flex;flex-direction:column;gap:var(--sp-2)}
.form-group label{font-size:var(--text-sm);font-weight:600;color:var(--color-text)}
.form-group input,.form-group textarea,.form-group select{padding:.75rem 1rem;background:var(--color-surface-2);border:1.5px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--text-base);color:var(--color-text);transition:border-color var(--ease),box-shadow var(--ease);width:100%}
.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:var(--color-secondary);box-shadow:0 0 0 3px rgba(47,111,115,.15)}
.form-group input.error,.form-group textarea.error{border-color:#C0392B}
.form-group .field-error{font-size:var(--text-xs);color:#C0392B;display:none}
.form-group .field-error.show{display:block}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-5)}
@media(max-width:600px){.form-grid{grid-template-columns:1fr}}

/* ── BLOCKQUOTE ─────────────────────────────────────── */
.blockquote{border-left:4px solid var(--gold);padding:var(--sp-5) var(--sp-6);background:var(--color-surface);border-radius:0 var(--radius-md) var(--radius-md) 0;font-family:var(--font-display);font-size:var(--text-lg);font-style:italic;color:var(--color-text-muted);margin-block:var(--sp-8)}
.blockquote cite{display:block;margin-top:var(--sp-3);font-style:normal;font-family:var(--font-body);font-size:var(--text-sm);font-weight:600;color:var(--color-text-faint)}

/* ── FOOTER ─────────────────────────────────────────── */
.footer{background:var(--navy-dark);color:rgba(247,243,234,.75);padding-block:var(--sp-16) var(--sp-8)}
.footer__top{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:var(--sp-10);padding-bottom:var(--sp-10);border-bottom:1px solid rgba(247,243,234,.1);margin-bottom:var(--sp-8)}
.footer__logo-img{height:40px;width:auto;object-fit:contain;filter:brightness(0) invert(1);margin-bottom:var(--sp-4)}
.footer__tagline{font-size:var(--text-sm);line-height:1.65;max-width:28ch;color:rgba(247,243,234,.6)}
.footer__col h4{font-family:var(--font-body);font-size:var(--text-xs);font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--gold);margin-bottom:var(--sp-5)}
.footer__links{list-style:none;display:flex;flex-direction:column;gap:var(--sp-2)}
.footer__links a{font-size:var(--text-sm);color:rgba(247,243,234,.6);text-decoration:none;transition:color var(--ease)}
.footer__links a:hover{color:var(--gold)}
.footer__bottom{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-4);font-size:var(--text-xs);color:rgba(247,243,234,.4);flex-wrap:wrap}
.footer__bottom a{color:rgba(247,243,234,.4);text-decoration:none;transition:color var(--ease)}
.footer__bottom a:hover{color:var(--gold)}
.footer__wvosb{display:inline-flex;align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-4);border:1px solid rgba(201,154,74,.35);border-radius:var(--radius-full);font-size:var(--text-xs);color:var(--gold);font-weight:600;letter-spacing:.06em;text-transform:uppercase;margin-top:var(--sp-4)}
@media(max-width:900px){.footer__top{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.footer__top{grid-template-columns:1fr}.footer__bottom{flex-direction:column;align-items:flex-start}}

/* ── ANIMATIONS ─────────────────────────────────────── */
@keyframes fadeInUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
.animate-in{animation:fadeInUp .55s cubic-bezier(.16,1,.3,1) both}
.delay-1{animation-delay:.1s}.delay-2{animation-delay:.2s}.delay-3{animation-delay:.3s}.delay-4{animation-delay:.4s}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .55s cubic-bezier(.16,1,.3,1),transform .55s cubic-bezier(.16,1,.3,1)}
.reveal.visible{opacity:1;transform:none}

/* ── STORY STRIP ─────────────────────────────────────── */
.story-step{display:flex;gap:var(--sp-6);align-items:flex-start;padding:var(--sp-6) 0;border-bottom:1px solid var(--color-divider)}
.story-step:last-child{border-bottom:none}
.story-step__num{flex-shrink:0;width:40px;height:40px;border-radius:50%;background:var(--navy);color:var(--ivory);display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:700;font-size:var(--text-sm)}
.story-step__body strong{display:block;font-size:var(--text-base);color:var(--color-primary);margin-bottom:var(--sp-1);font-family:var(--font-body);font-weight:700}
.story-step__body p{font-size:var(--text-sm);color:var(--color-text-muted);line-height:1.7;max-width:100%}
[data-theme="dark"] .story-step__num{background:var(--color-primary)}

/* ── STAT STRIP ──────────────────────────────────────── */
.stat{text-align:center}
.stat__number{display:block;font-family:var(--font-display);font-size:var(--text-2xl);font-weight:700;color:var(--color-accent);line-height:1;margin-bottom:var(--sp-2)}
.stat__label{font-size:var(--text-sm);color:rgba(247,243,234,.75);line-height:1.4;max-width:18ch;margin-inline:auto}

/* ── RESPONSIVE HELPERS ──────────────────────────────── */
@media(max-width:768px){.hide-mobile{display:none!important}}
