/* Thrive Hyperbaric - shared design system
   Tokens, type, nav, buttons, bands, components, footer.
   Edit once; every page inherits. */

:root{
    --navy:#0F172A; --ink:#2B3445; --ink-soft:#5B6678; --line-light:#E7E2D8;
    --gold:#BFA181; --gold-deep:linear-gradient(135deg,#DAC089 0%,#C2A368 100%); --gold-ink:#8A6B42;
    --cyan:#22D3EE; --cyan-deep:#0E7490; --smoke:#F4F4F4; --sand:#F6F1E9;
    --serif:'Fraunces',Georgia,serif; --sans:'Inter',system-ui,sans-serif; --data:'Rajdhani',sans-serif;
  }
  *{box-sizing:border-box;margin:0;padding:0}
  body{font-family:var(--sans);background:#fff;color:var(--ink);-webkit-font-smoothing:antialiased}
  .maxw{max-width:1500px;margin:0 auto;width:100%}

  /* ===== HERO ===== */
  .hero{position:relative;min-height:100vh;overflow:hidden;display:flex;flex-direction:column;color:#fff;background:#06080e}
  .hero .bg{position:absolute;inset:0;background-size:cover;z-index:0}
  .hero .scrim{position:absolute;inset:0;z-index:1;background:
      linear-gradient(90deg, rgba(6,8,14,.92) 0%, rgba(6,8,14,.78) 26%, rgba(6,8,14,.30) 52%, rgba(6,8,14,0) 72%),
      linear-gradient(0deg, rgba(6,8,14,.85) 0%, rgba(6,8,14,0) 30%)}
  .nav{position:fixed;top:0;left:0;right:0;z-index:50;padding:22px 0;transition:background .25s ease,padding .25s ease,box-shadow .25s ease}
  .nav.scrolled{background:var(--navy);padding:12px 0;box-shadow:0 1px 0 #1E2A44}
  .nav-inner{display:flex;align-items:center;justify-content:space-between;padding:0 46px}
  .logo{font-family:var(--serif);font-weight:600;font-size:21px;line-height:1}
  .logo span{display:block;font-family:var(--data);font-weight:500;font-size:10.5px;letter-spacing:.34em;color:#AEBED4;margin-top:3px;text-transform:uppercase}
  .logo-img{height:32px;width:auto;display:block}
  .hpo-img{height:30px;width:auto;display:block;margin-top:22px}
  .links{display:flex;align-items:center;gap:30px}
  .links a{color:#E7EEF7;text-decoration:none;font-size:14px;font-weight:500;opacity:.9}
  .links a.active{color:var(--gold);opacity:1}
  .links a:hover{opacity:1}
  .quote{font-weight:600;font-size:14px;padding:11px 22px;border-radius:999px;background:var(--gold-deep);color:#1c1407!important}
  .burger{display:none;flex-direction:column;justify-content:center;gap:5px;width:40px;height:40px;padding:9px;margin-right:-9px;background:transparent;border:0;cursor:pointer}
  .burger span{display:block;height:2px;width:100%;background:#E7EEF7;border-radius:2px;transition:transform .25s ease,opacity .2s ease}
  .nav.open .burger span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  .nav.open .burger span:nth-child(2){opacity:0}
  .nav.open .burger span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
  @media(max-width:900px){
    .burger{display:flex}
    .nav.open{background:var(--navy);box-shadow:0 1px 0 #1E2A44}
    .links{position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;background:var(--navy);padding:4px 0 16px;box-shadow:0 16px 30px rgba(0,0,0,.42);max-height:0;overflow:hidden;opacity:0;visibility:hidden;transition:max-height .3s ease,opacity .22s ease,visibility .3s}
    .nav.open .links{max-height:86vh;opacity:1;visibility:visible}
    .links a:not(.quote){display:block;padding:15px 46px;font-size:16px;opacity:1;border-bottom:1px solid #17223b}
    .links a.quote{margin:18px 46px 6px;text-align:center;padding:14px 22px;font-size:15px}
  }
  .wrap{position:relative;z-index:3;flex:1;display:flex;align-items:center;padding:78px 46px 0}
  .block{max-width:620px;position:relative;padding-left:26px}
  .block::before{content:"";position:absolute;left:0;top:6px;bottom:6px;width:2px;background:linear-gradient(180deg,var(--gold) 0%, rgba(191,161,129,.15) 100%)}
  .hero .eyebrow{font-family:var(--data);text-transform:uppercase;letter-spacing:.26em;font-weight:600;font-size:12.5px;color:#CBD6E6;margin-bottom:22px}
  .hero h1{font-family:var(--serif);font-weight:500;font-size:clamp(42px,6vw,82px);line-height:1.0;letter-spacing:-.015em;color:#fff}
  .hero h1 em{font-style:italic;color:#EAD9BE;font-weight:500}

  /* ---- Hero variants (pick per page job: seduce vs inform) ---- */
  /* Split interior hero: desire pages (Home Use, Longevity) - clean text panel beside the image, distinct from the homepage front door and lighter on words */
  .hero.hero-split{display:grid;grid-template-columns:45% 55%;grid-template-rows:1fr;min-height:72vh;flex-direction:unset;overflow:hidden}
  .hero.hero-split .panel{position:relative;z-index:2;display:flex;align-items:center;padding:124px 58px 60px;background:var(--navy);height:auto;border-radius:0;overflow:visible}
  .hero.hero-split h1{font-size:clamp(34px,3.4vw,54px)}
  .hero.hero-split .sub{margin:22px 0 34px}
  .hero.hero-split .img{position:relative;background-size:cover;background-position:center}
  .hero.hero-split .img::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(6,8,14,.5) 0%, rgba(6,8,14,0) 22%)}
  @media(max-width:900px){.hero.hero-split{grid-template-columns:1fr}.hero.hero-split .img{min-height:300px;order:-1}.hero.hero-split .panel{padding:96px 28px 48px}}

  /* Typographic header band: info pages (Science, Buying Guide, Commercial) - no photo, faster to content */
  .header-band{position:relative;padding:140px 0 68px;background:var(--navy);color:#fff}
  .header-band.on-sand{background:var(--sand);color:var(--ink)}
  .header-band .inner{max-width:1500px;margin:0 auto;padding:0 46px}
  .header-band .block{max-width:760px;padding-left:26px;position:relative}
  .header-band .block::before{content:"";position:absolute;left:0;top:6px;bottom:6px;width:2px;background:linear-gradient(180deg,var(--gold) 0%, rgba(191,161,129,.15) 100%)}
  .header-band .eyebrow{font-family:var(--data);text-transform:uppercase;letter-spacing:.26em;font-weight:600;font-size:12.5px;margin-bottom:20px;color:#CBD6E6}
  .header-band.on-sand .eyebrow{color:var(--gold-ink)}
  .header-band h1{font-family:var(--serif);font-weight:500;font-size:clamp(34px,5vw,58px);line-height:1.03;letter-spacing:-.02em;color:#fff}
  .header-band.on-sand h1{color:var(--navy)}
  .header-band h1 em{font-style:italic;color:#EAD9BE;font-weight:500}
  .header-band.on-sand h1 em{color:var(--gold-ink)}
  .header-band .sub{font-size:19px;line-height:1.55;color:#C7D2E2;max-width:56ch;margin-top:18px}
  .header-band.on-sand .sub{color:var(--ink-soft)}
  /* Solid nav for pages with no dark hero behind it (e.g. sand header band) */
  .nav.solid{background:var(--navy);padding:12px 0}
  .hero .sub{font-size:clamp(16px,1.5vw,19px);line-height:1.55;color:#C7D2E2;max-width:46ch;margin:26px 0 36px}
  .hero .cta{display:flex;align-items:center;gap:22px;flex-wrap:wrap}
  .btn{font-family:var(--sans);font-weight:600;font-size:15px;padding:15px 30px;border-radius:999px;text-decoration:none;display:inline-block}
  .btn.gold{background:var(--gold-deep);color:#1c1407}
  .txtlink{color:#fff;text-decoration:none;font-size:15px;font-weight:500;display:inline-flex;align-items:center;gap:8px;opacity:.92}
  .txtlink::after{content:"\2192";color:var(--gold)}
  .vlabel{position:absolute;right:20px;top:50%;transform:translateY(-50%) rotate(180deg);writing-mode:vertical-rl;font-family:var(--data);text-transform:uppercase;letter-spacing:.34em;font-size:12px;font-weight:600;color:rgba(255,255,255,.5);z-index:3}
  .vlabel .dotc{color:var(--cyan)}
  @media(max-width:1100px){.vlabel{display:none}}
  .strip{position:relative;z-index:3;border-top:1px solid rgba(255,255,255,.12)}
  .strip .row{display:flex;padding:0 46px}
  .cell{padding:20px 0;display:flex;flex-direction:column;gap:5px;flex:1;position:relative}
  .cell + .cell{padding-left:34px;margin-left:34px}
  .cell + .cell::before{content:"";position:absolute;left:0;top:18px;bottom:18px;width:1px;background:rgba(255,255,255,.14)}
  .cell .k{font-family:var(--data);text-transform:uppercase;letter-spacing:.16em;font-size:11px;color:#8595ad;font-weight:600}
  .cell .v{font-family:var(--data);font-weight:600;font-size:17px;letter-spacing:.04em;color:#fff}
  .cell.lead .v{color:#EAD9BE}
  .cell .v .dotc{color:var(--cyan)}
  @media(max-width:820px){.strip .row{flex-wrap:wrap}.cell{flex:1 1 100%;border-top:1px solid rgba(255,255,255,.08)}.cell + .cell{padding-left:0;margin-left:0}.cell + .cell::before{display:none}}

  /* ===== ROUTER ===== */
  .router{padding:104px 0}
  .router .pad{padding:0 46px}
  .router .eyebrow{font-family:var(--data);text-transform:uppercase;letter-spacing:.2em;font-weight:600;font-size:12.5px;color:var(--cyan-deep);display:flex;align-items:center;gap:10px;margin-bottom:16px}
  .router .eyebrow::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}
  .router h2{font-family:var(--serif);font-weight:500;font-size:clamp(30px,4vw,46px);line-height:1.05;letter-spacing:-.015em;color:var(--navy);max-width:20ch}
  .router .intro{font-size:18px;color:var(--ink-soft);max-width:50ch;margin-top:16px}
  .panels{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:52px}
  @media(max-width:900px){.panels{grid-template-columns:1fr}}
  .panel{position:relative;height:580px;border-radius:18px;overflow:hidden;display:block;text-decoration:none;isolation:isolate}
  .panel .pbg{position:absolute;inset:0;background-size:cover;z-index:0;transition:transform .6s cubic-bezier(.2,.7,.2,1)}
  .panel:hover .pbg{transform:scale(1.06)}
  .panel .pscrim{position:absolute;inset:0;z-index:1;background:linear-gradient(0deg, rgba(6,8,14,.92) 0%, rgba(6,8,14,.45) 34%, rgba(6,8,14,.05) 62%, rgba(6,8,14,.18) 100%)}
  .panel .pc{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:32px 30px 34px}
  .panel .pix{font-family:var(--data);font-weight:600;letter-spacing:.2em;font-size:12px;text-transform:uppercase;color:var(--gold);margin-bottom:14px;display:flex;align-items:center;gap:10px}
  .panel .pix .ln{width:26px;height:1px;background:var(--gold);opacity:.6}
  .panel h3{font-family:var(--serif);font-weight:500;font-size:28px;color:#fff;line-height:1.05;margin-bottom:10px}
  .panel p{font-size:15px;line-height:1.5;color:#D7E0EC;max-width:32ch;margin-bottom:18px}
  .panel .go{font-family:var(--data);text-transform:uppercase;letter-spacing:.12em;font-size:13px;font-weight:600;color:#fff;display:inline-flex;align-items:center;gap:9px}
  .panel .go::after{content:"\2192";color:var(--gold);transition:transform .3s ease}
  .panel:hover .go::after{transform:translateX(5px)}
  .panel::after{content:"";position:absolute;inset:0;z-index:3;border-radius:18px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.06);pointer-events:none}

  /* ===== SCIENCE / REAL-THING BAND ===== */
  .sci{background:var(--navy);color:#C7D2E2;padding:104px 0}
  .sci .grid{display:grid;grid-template-columns:1.05fr .95fr;gap:64px;align-items:center;padding:0 46px}
  @media(max-width:900px){.sci .grid{grid-template-columns:1fr;gap:40px}}
  .sci .eyebrow{font-family:var(--data);text-transform:uppercase;letter-spacing:.2em;font-weight:600;font-size:12.5px;color:var(--cyan);display:flex;align-items:center;gap:10px;margin-bottom:18px}
  .sci .eyebrow::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}
  .sci h2{font-family:var(--serif);font-weight:500;font-size:clamp(28px,3.6vw,42px);line-height:1.06;letter-spacing:-.015em;color:var(--smoke);max-width:16ch}
  .sci p{font-size:17px;line-height:1.6;color:#9FB0C7;max-width:46ch;margin:20px 0 28px}
  .sci .ln{font-family:var(--data);text-transform:uppercase;letter-spacing:.12em;font-size:13px;font-weight:600;color:var(--cyan);text-decoration:none;display:inline-flex;align-items:center;gap:9px}
  .sci .ln::after{content:"\2192"}
  .sheet{border:1px solid #1E2A44;border-radius:16px;overflow:hidden;background:#0c1322}
  .sheet .sh{display:flex;align-items:center;justify-content:space-between;padding:16px 22px;border-bottom:1px solid #1E2A44}
  .sheet .sh .t{font-family:var(--data);text-transform:uppercase;letter-spacing:.18em;font-size:12px;font-weight:600;color:#8595ad}
  .sheet .sh .node{display:flex;gap:5px}
  .sheet .sh .node i{width:6px;height:6px;border-radius:50%;background:var(--cyan);opacity:.5;display:block}
  .sheet .r{display:flex;align-items:baseline;justify-content:space-between;gap:20px;padding:18px 22px;border-bottom:1px solid #161f33}
  .sheet .r:last-child{border-bottom:0}
  .sheet .r .k{font-family:var(--data);text-transform:uppercase;letter-spacing:.1em;font-size:12px;color:#7E8DA6;font-weight:600}
  .sheet .r .v{font-family:var(--data);font-weight:600;font-size:18px;color:#fff;letter-spacing:.03em;text-align:right}
  .sheet .r .v.gold{color:#EAD9BE}
  .sheet .r .v .dotc{color:var(--cyan)}
  .sheet .herofig{padding:24px 22px;border-bottom:1px solid #1E2A44;background:linear-gradient(180deg,rgba(34,211,238,.06),rgba(34,211,238,0))}
  .sheet .herofig .k{font-family:var(--data);text-transform:uppercase;letter-spacing:.14em;font-size:12px;color:#7E8DA6;font-weight:600;display:block;margin-bottom:8px}
  .sheet .herofig .big{font-family:var(--data);font-weight:700;font-size:52px;line-height:.9;color:var(--cyan);letter-spacing:.01em}
  .sheet .herofig .big em{font-style:normal;font-size:24px;color:#EAD9BE;font-weight:600}
  .sheet .herofig .unit{font-family:var(--data);font-weight:600;letter-spacing:.06em;font-size:13px;color:#8595ad;margin-top:8px;display:block;text-transform:uppercase}

  /* shared marked image slot (placeholder for real photo) */
  .slot{position:relative;border-radius:14px;overflow:hidden;display:flex;align-items:flex-end;min-height:160px;
    background:radial-gradient(120% 120% at 70% 20%,#21304d 0%,#0F172A 60%,#070b14 100%);box-shadow:inset 0 0 0 1px rgba(255,255,255,.06)}
  .slot .lbl{font-family:var(--data);text-transform:uppercase;letter-spacing:.14em;font-size:11px;color:#8595ad;padding:14px 16px;font-weight:600}
  .slot .tag{position:absolute;top:12px;left:12px;font-family:var(--data);text-transform:uppercase;letter-spacing:.08em;font-size:10px;color:#06121a;background:var(--cyan);padding:3px 8px;border-radius:5px;font-weight:700}
  .tile{position:relative;border-radius:14px;overflow:hidden;background-size:cover;background-position:center;display:block;box-shadow:inset 0 0 0 1px rgba(255,255,255,.06)}
  .tile::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(6,8,14,.72) 0%,rgba(6,8,14,0) 48%)}
  .tile .cap{position:absolute;left:0;bottom:0;z-index:1;font-family:var(--data);text-transform:uppercase;letter-spacing:.12em;font-size:11px;font-weight:600;color:#EAF0F8;padding:13px 15px}
  .bento .tile.feature{grid-column:span 2;grid-row:span 2}
  .photo{position:relative;border-radius:16px;overflow:hidden;background-size:cover;background-position:center;box-shadow:inset 0 0 0 1px rgba(255,255,255,.06)}
  .why .photo{min-height:430px}

  /* hover affordances */
  .btn{transition:transform .15s ease,box-shadow .15s ease,filter .15s ease}
  .btn:hover{transform:translateY(-2px)}
  .btn.gold:hover{filter:brightness(1.05);box-shadow:0 10px 26px rgba(154,120,66,.30)}
  .btn.ghost:hover,.btn.ghost-dark:hover{border-color:var(--navy);background:rgba(15,23,42,.05)}
  .btn.ghost-light:hover{border-color:rgba(255,255,255,.6);background:rgba(255,255,255,.08)}
  .quote{transition:filter .15s ease,transform .15s ease}
  .quote:hover{filter:brightness(1.06);transform:translateY(-1px)}
  .txtlink::after,.arrowlink::after,.sci .ln::after{transition:transform .2s ease;display:inline-block}
  .txtlink:hover::after,.arrowlink:hover::after,.sci .ln:hover::after{transform:translateX(4px)}
  .txtlink:hover,.arrowlink:hover,.sci .ln:hover{opacity:1}

  /* odometer roll + typing caret */
  .odo{display:inline-block;height:1em;line-height:1;overflow:hidden;vertical-align:bottom}
  .odo-reel{display:block;transform:translateY(-4em);transition:transform 1.25s cubic-bezier(.16,1,.3,1)}
  .odo-reel b{display:block;height:1em;line-height:1;font-weight:700}
  .typing::after{content:"";display:inline-block;width:.05em;height:.9em;background:currentColor;margin-left:.05em;vertical-align:-.05em;animation:cblink 1s step-end infinite}
  @keyframes cblink{50%{opacity:0}}

  .sec-eyebrow{font-family:var(--data);text-transform:uppercase;letter-spacing:.2em;font-weight:600;font-size:12.5px;display:flex;align-items:center;gap:10px;margin-bottom:16px}
  .sec-eyebrow::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}
  .sec-h2{font-family:var(--serif);font-weight:500;font-size:clamp(28px,3.8vw,44px);line-height:1.05;letter-spacing:-.015em;max-width:18ch}
  .arrowlink{font-family:var(--data);text-transform:uppercase;letter-spacing:.12em;font-size:13px;font-weight:600;text-decoration:none;display:inline-flex;align-items:center;gap:9px;color:var(--gold-ink)}
  .arrowlink::after{content:"\2192"}

  /* IRL grid */
  .irl{padding:104px 0;background:#fff}
  .irl .pad{padding:0 46px}
  .irl .sec-eyebrow{color:var(--cyan-deep)}
  .irl .sec-h2{color:var(--navy)}
  .irl .intro{font-size:18px;color:var(--ink-soft);max-width:52ch;margin-top:14px}
  .bento{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:198px;gap:14px;margin-top:48px}
  .bento .slot{min-height:0}
  .bento .feature{grid-column:span 2;grid-row:span 2}
  @media(max-width:760px){.bento{grid-template-columns:repeat(2,1fr)}.bento .feature{grid-column:span 2}}
  .igbar{display:flex;align-items:center;justify-content:space-between;margin-top:30px;flex-wrap:wrap;gap:16px}
  .igbar .h{font-family:var(--data);font-weight:600;letter-spacing:.04em;color:var(--navy);font-size:17px}
  .btn.ghost-dark{background:transparent;color:var(--navy);border:1px solid var(--line-light)}

  /* BJ */
  .bj{padding:104px 0;background:var(--sand)}
  .bj .grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:60px;align-items:center;padding:0 46px}
  @media(max-width:900px){.bj .grid{grid-template-columns:1fr;gap:34px}}
  .bj .slot{min-height:400px;background:radial-gradient(120% 120% at 60% 25%,#1d3a2e 0%,#0f211a 60%,#091310 100%)}
  .bj .sec-eyebrow{color:var(--gold-ink)}
  .bj .sec-h2{color:var(--navy)}
  .bj p{font-size:17px;line-height:1.6;color:#5c5043;max-width:46ch;margin:18px 0 26px}
  .bj .arrowlink{color:var(--gold-ink)}

  /* WHY THRIVE / DAVID */
  .why{padding:104px 0;background:var(--navy);color:#C7D2E2}
  .why .grid{display:grid;grid-template-columns:1.05fr .95fr;gap:60px;align-items:center;padding:0 46px}
  @media(max-width:900px){.why .grid{grid-template-columns:1fr;gap:34px}}
  .why .slot{min-height:430px}
  .why .sec-eyebrow{color:var(--cyan)}
  .why .sec-h2{color:var(--smoke)}
  .why p{font-size:17px;line-height:1.6;color:#9FB0C7;max-width:48ch;margin:18px 0 0}
  .why .btns{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}
  .btn.ghost-light{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.28)}

  /* CTA */
  .cta-band{padding:124px 0;text-align:center;background:linear-gradient(180deg,#0c1322 0%,#06080e 100%);color:#fff}
  .cta-band h2{font-family:var(--serif);font-weight:500;font-size:clamp(32px,4.6vw,52px);line-height:1.04;letter-spacing:-.015em;color:#fff;max-width:18ch;margin:0 auto}
  .cta-band p{font-size:18px;color:#C7D2E2;max-width:44ch;margin:18px auto 34px}
  .cta-band .meta{margin-top:26px;font-family:var(--data);letter-spacing:.06em;color:#8595ad;font-size:15px}

  /* FOOTER */
  footer{background:#070b14;color:#8092ab;padding:74px 0 38px}
  .fgrid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:40px;padding:0 46px}
  @media(max-width:860px){.fgrid{grid-template-columns:1fr 1fr}}
  @media(max-width:560px){.fgrid{grid-template-columns:1fr}}
  footer .logo{font-size:20px;margin-bottom:14px}
  footer h4{font-family:var(--data);text-transform:uppercase;letter-spacing:.14em;font-size:12px;color:#fff;margin-bottom:16px;font-weight:600}
  footer a{display:block;color:#8092ab;text-decoration:none;font-size:14px;margin-bottom:10px}
  footer a:hover{color:#fff}
  footer .spec{font-size:13.5px;color:#7384a0;max-width:46ch;margin-bottom:18px}
  footer .addr{font-size:13.5px;line-height:1.7;color:#7384a0}
  .fbar{border-top:1px solid #18223a;margin:46px 46px 0;padding-top:22px;display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}
  .hpo{display:flex;align-items:center;gap:9px;color:#fff;font-family:var(--data);font-weight:700;letter-spacing:.03em;font-size:18px;margin-top:22px}
  .hpo .mark{width:30px;height:30px;border:2px solid #fff;border-radius:7px;display:flex;align-items:center;justify-content:center;font-size:13px}
  .copy{font-size:12.5px;color:#5d6e89}
  .social{display:inline-flex!important;align-items:center;gap:10px;margin-top:20px;color:#8092ab;font-size:14px;font-weight:500;text-decoration:none;transition:color .15s ease}
  .social svg{width:25px;height:25px;color:var(--gold);transition:transform .18s ease}
  .social:hover{color:#fff}
  .social:hover svg{transform:scale(1.1)}
  .addr a{display:inline;color:inherit;text-decoration:none;margin:0}
  .addr a:hover{color:#fff}
  .cta-band .meta a{color:inherit;text-decoration:none}
  .cta-band .meta a:hover{color:#fff}

  /* Process steps: reusable "from spec to running" band (Home, Sport, Commercial) */
  .process{padding:104px 0;background:#fff;color:var(--ink)}
  .process .head{padding:0 46px;max-width:1500px;margin:0 auto}
  .process .sec-eyebrow{color:var(--gold-ink)}
  .process .sec-h2{color:var(--navy)}
  .process .steps{display:grid;grid-template-columns:repeat(3,1fr);margin:46px auto 0;padding:0 46px;max-width:1500px;border-top:1px solid var(--line-light)}
  .process .step{padding:30px 40px 0;border-right:1px solid var(--line-light)}
  .process .step:first-child{padding-left:0}
  .process .step:last-child{border-right:none;padding-right:0}
  .process .step .n{font-family:var(--data);font-weight:700;font-size:13px;letter-spacing:.14em;color:var(--gold-ink)}
  .process .step h3{font-family:var(--serif);font-weight:500;font-size:22px;color:var(--navy);margin:10px 0 9px}
  .process .step p{font-size:15.5px;line-height:1.55;color:var(--ink-soft)}
  .process .foot{padding:0 46px;max-width:1500px;margin:34px auto 0;font-size:15.5px;color:var(--ink-soft)}
  @media(max-width:900px){.process .steps{grid-template-columns:1fr;border-top:none}.process .step{border-right:none;border-top:1px solid var(--line-light);padding:24px 0 0}}

  /* Shared lightbox: click an image to view it larger, at a sensible cap (not full-screen huge) */
  .lb{position:fixed;inset:0;z-index:200;background:rgba(6,8,14,.92);display:none;align-items:center;justify-content:center;padding:28px;cursor:zoom-out}
  .lb.open{display:flex}
  .lb img{max-width:min(94vw,1180px);max-height:min(88vh,820px);width:auto;height:auto;border-radius:10px;box-shadow:0 50px 110px -20px rgba(0,0,0,.8)}
  .lb .x{position:absolute;top:16px;right:24px;color:#fff;font-size:34px;line-height:1;cursor:pointer}
  .lbzoom{cursor:zoom-in}

  /* CTA proof bar: market/logistics reassurance under the CTA (visible, not a footnote) */
  .cta-band .cta-proof{margin:28px auto 0;max-width:740px;display:flex;flex-wrap:wrap;justify-content:center;padding-top:24px;border-top:1px solid rgba(255,255,255,.12)}
  .cta-band .cta-proof span{display:inline-flex;align-items:center;font-size:14.5px;font-weight:500;color:#D7E0EC;letter-spacing:.005em;margin:6px 15px}
  .cta-band .cta-proof span::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--cyan);flex:0 0 auto;margin-right:9px}
  .cta-band .cta-proof span.hot{color:#EAD9BE;font-weight:600}
  .cta-band .cta-proof span.hot::before{background:var(--gold)}
  /* US visitors (timezone-detected): lead with the US logistics line */
  html.us .cta-band .cta-proof span.hot{order:-1}
