  :root{
    --forest:#1C2B26;
    --forest-deep:#152019;
    --forest-soft:#243730;
    --sand:#E8E0D4;
    --sand-deep:#DAD0C0;
    --brass:#A98B5D;
    --brass-light:#C7A974;
    --brass-glow:#D8BD8A;
    --offwhite:#FBFAF7;
    --ink:#26302B;
    --muted:#736A5C;
    --line:rgba(28,43,38,.13);
    --line-light:rgba(251,250,247,.15);
    --mono:'JetBrains Mono',ui-monospace,monospace;
  }
  *{margin:0;padding:0;box-sizing:border-box}
  html{scroll-behavior:smooth}
  body{
    font-family:'Inter',sans-serif;
    background:var(--offwhite);
    color:var(--ink);
    line-height:1.62;
    -webkit-font-smoothing:antialiased;
    text-rendering:optimizeLegibility;
    overflow-x:hidden;
  }
  h1,h2,h3,h4{font-family:'Fraunces',serif;font-weight:400;line-height:1.04;letter-spacing:-.018em}
  em{font-style:italic;font-weight:400}
  a{color:inherit;text-decoration:none}
  img{max-width:100%}
  ::selection{background:var(--brass);color:var(--offwhite)}
  .wrap{max-width:1280px;margin:0 auto;padding:0 48px}
  .eyebrow{
    font-family:var(--mono);font-size:11px;font-weight:500;
    letter-spacing:.28em;text-transform:uppercase;color:var(--brass);
    display:inline-flex;align-items:center;gap:12px;
  }
  .eyebrow::before{content:"";width:26px;height:1px;background:var(--brass);display:inline-block;opacity:.7}
  .snum{font-family:var(--mono);font-size:11px;letter-spacing:.2em;color:var(--brass);opacity:.85}

  /* GRAIN OVERLAY */
  .grain{
    position:fixed;inset:0;z-index:99998;pointer-events:none;opacity:.05;mix-blend-mode:multiply;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  }

  /* FOCUS */
  a:focus-visible,button:focus-visible,.acc-head:focus-visible{outline:2px solid var(--brass);outline-offset:4px;border-radius:3px}

  /* ===== CUSTOM CURSOR ===== */
  .cur,.cur-ring{position:fixed;top:0;left:0;z-index:99997;pointer-events:none;border-radius:50%;will-change:transform;opacity:0;transition:opacity .4s ease}
  .cur{width:7px;height:7px;background:var(--brass);transform:translate(-50%,-50%);transition:opacity .4s ease,width .35s cubic-bezier(.2,.7,.2,1),height .35s cubic-bezier(.2,.7,.2,1)}
  .cur-ring{width:40px;height:40px;border:1px solid rgba(169,139,93,.5);transform:translate(-50%,-50%);transition:opacity .4s ease,width .4s cubic-bezier(.2,.7,.2,1),height .4s cubic-bezier(.2,.7,.2,1),border-color .4s ease,background .4s ease}
  body.cur-on .cur,body.cur-on .cur-ring{opacity:1}
  body.cur-hover .cur-ring{width:64px;height:64px;border-color:rgba(169,139,93,.85);background:rgba(169,139,93,.06)}
  body.cur-hover .cur{width:4px;height:4px}
  body.cur-dark .cur{background:var(--brass-glow)}
  body.cur-dark .cur-ring{border-color:rgba(216,189,138,.5)}

  /* ===== PRELOADER ===== */
  .pl{position:fixed;inset:0;z-index:100000;background:var(--forest);display:grid;place-items:center;overflow:hidden}
  .pl-arch{width:min(340px,62vw)}
  .pl-arch path,.pl-arch line{stroke:var(--brass-light);fill:none;stroke-width:1.4}
  .pl .draw{stroke-dasharray:var(--len);stroke-dashoffset:var(--len);animation:draw 1.05s cubic-bezier(.5,0,.2,1) forwards}
  @keyframes draw{to{stroke-dashoffset:0}}
  .pl-word{font-family:'Fraunces',serif;font-size:13px;letter-spacing:.5em;text-transform:uppercase;color:var(--brass-light);
    text-align:center;margin-top:26px;opacity:0;animation:plFade .6s ease .55s forwards}
  @keyframes plFade{to{opacity:1}}
  .pl-curtain{position:fixed;inset:0;z-index:99999;background:var(--forest);transform-origin:top;will-change:transform}
  .pl-skip{position:fixed;bottom:26px;right:30px;z-index:100001;font-family:var(--mono);font-size:11px;letter-spacing:.2em;
    color:rgba(216,189,138,.55);background:none;border:none;cursor:pointer;text-transform:uppercase}
  .pl-skip:hover{color:var(--brass-light)}
  body.loaded .pl,body.loaded .pl-skip{display:none}

  /* ===== NAV ===== */
  .nav{position:sticky;top:0;z-index:9000;background:rgba(251,250,247,.92);
    border-bottom:1px solid transparent;transition:border-color .5s ease,background .5s ease,box-shadow .5s ease}
  .nav.scrolled{border-color:var(--line);background:rgba(251,250,247,.97);box-shadow:0 14px 34px -26px rgba(28,43,38,.3)}
  .nav-inner{display:flex;align-items:center;justify-content:space-between;height:78px}
  .brand{display:flex;align-items:center;gap:13px;font-family:'Fraunces',serif;font-size:24px;letter-spacing:.01em;color:var(--forest)}
  .brand .mk{width:30px;height:37px;flex:none}
  .brand b{font-weight:500}
  .brand i{font-style:italic;color:var(--brass);font-weight:400}
  .nav-links{display:flex;align-items:center;gap:38px}
  .nav-links a{font-size:13px;letter-spacing:.02em;color:var(--ink);position:relative;padding:4px 0}
  .nav-links a::after{content:"";position:absolute;left:0;bottom:0;width:0;height:1px;background:var(--brass);transition:width .45s cubic-bezier(.2,.7,.2,1)}
  .nav-links a:hover::after{width:100%}
  .nav-links a.nav-cta{font-size:12.5px;letter-spacing:.04em;color:var(--offwhite);background:var(--forest);
    padding:12px 24px;border-radius:100px;position:relative;overflow:hidden;isolation:isolate}
  .nav-links a.nav-cta::after{display:none}
  .nav-cta span{position:relative;z-index:2}
  .nav-cta::before{content:"";position:absolute;inset:0;background:var(--brass);transform:translateY(101%);transition:transform .5s cubic-bezier(.2,.7,.2,1);z-index:1}
  .nav-cta:hover::before{transform:translateY(0)}
  /* ≤880px nav handled by the burger panel (see LEVEL-UP block) */

  /* ===== HERO ===== */
  .hero{position:relative;min-height:100vh;display:flex;align-items:center;overflow:hidden;
    background:
      radial-gradient(120% 90% at 78% 22%, rgba(199,169,116,.16), transparent 55%),
      radial-gradient(90% 80% at 10% 90%, rgba(28,43,38,.05), transparent 60%),
      var(--sand);
    padding:60px 0 80px;}
  .hero-grid{display:grid;grid-template-columns:1.04fr .96fr;gap:40px;align-items:center;width:100%}
  .hero-copy{position:relative;z-index:5}
  .hero h1{font-size:clamp(50px,7vw,104px);color:var(--forest);font-weight:300;margin:26px 0 0}
  .hero h1 em{color:var(--brass)}
  .hero h1 .ln{display:block;overflow:hidden}
  .hero h1 .ln>span{display:block;transform:translateY(110%);transition:transform 1s cubic-bezier(.16,1,.3,1)}
  body.ready .hero h1 .ln>span{transform:translateY(0)}
  body.ready .hero h1 .ln:nth-child(2)>span{transition-delay:.09s}
  body.ready .hero h1 .ln:nth-child(3)>span{transition-delay:.18s}
  .hero-lead{max-width:430px;margin:34px 0 38px;color:var(--muted);font-size:17px;font-weight:300;
    opacity:0;transform:translateY(16px);transition:.9s cubic-bezier(.16,1,.3,1) .5s}
  body.ready .hero-lead{opacity:1;transform:none}
  .hero-actions{display:flex;align-items:center;gap:26px;flex-wrap:wrap;opacity:0;transform:translateY(16px);
    transition:.9s cubic-bezier(.16,1,.3,1) .62s}
  body.ready .hero-actions{opacity:1;transform:none}
  .btn{position:relative;display:inline-flex;align-items:center;gap:12px;font-size:13.5px;letter-spacing:.03em;
    padding:16px 30px;border-radius:100px;overflow:hidden;isolation:isolate;cursor:pointer;border:none;font-family:inherit}
  .btn-solid{background:var(--forest);color:var(--offwhite)}
  .btn-solid::before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,var(--brass),var(--brass-light));
    transform:translateX(-101%);transition:transform .55s cubic-bezier(.2,.7,.2,1);z-index:-1}
  .btn-solid:hover::before{transform:translateX(0)}
  .btn-solid .arr{transition:transform .4s ease}
  .btn-solid:hover .arr{transform:translateX(5px)}
  .btn-ghost{color:var(--forest);font-weight:500;display:inline-flex;align-items:center;gap:10px}
  .btn-ghost .dot{width:8px;height:8px;border-radius:50%;background:var(--brass);transition:transform .4s ease}
  .btn-ghost:hover .dot{transform:scale(1.5)}
  .btn-ghost u{text-decoration:none;background:linear-gradient(var(--brass),var(--brass)) left bottom / 0 1px no-repeat;
    transition:background-size .45s cubic-bezier(.2,.7,.2,1);padding-bottom:2px}
  .btn-ghost:hover u{background-size:100% 1px}

  /* HERO ARCH STAGE */
  .arch-stage{position:relative;height:clamp(440px,62vw,640px);display:grid;place-items:center}
  .arch{position:relative;width:clamp(280px,40vw,400px);height:clamp(420px,58vw,600px);
    border-radius:50% 50% 6px 6px / 62% 62% 4px 4px;
    background:
      radial-gradient(80% 60% at 50% 30%, rgba(216,189,138,.55), transparent 62%),
      linear-gradient(180deg,#22332C 0%, #1C2B26 56%, #16221E 100%);
    box-shadow:0 50px 90px -40px rgba(28,43,38,.55), inset 0 2px 0 rgba(216,189,138,.18);
    overflow:hidden;will-change:transform}
  .arch::after{content:"";position:absolute;inset:0;border-radius:inherit;
    border:1px solid rgba(216,189,138,.35);
    -webkit-mask:linear-gradient(180deg,#000,transparent 70%);mask:linear-gradient(180deg,#000,transparent 70%)}
  .orb{position:absolute;left:50%;top:34%;transform:translate(-50%,-50%);width:54%;aspect-ratio:1;border-radius:50%;
    background:radial-gradient(circle at 38% 34%, #F4E6C4, var(--brass-glow) 38%, #9A7B4E 78%, #6E5734);
    box-shadow:0 0 80px 8px rgba(216,189,138,.5),0 0 160px 30px rgba(199,169,116,.28),inset -10px -14px 40px rgba(110,87,52,.6);
    will-change:transform}
  .orb::before{content:"";position:absolute;left:24%;top:18%;width:30%;height:24%;border-radius:50%;
    background:radial-gradient(circle,rgba(255,255,255,.7),transparent 70%);filter:blur(2px)}
  .arch-floor{position:absolute;left:50%;bottom:8%;transform:translateX(-50%);width:120%;height:40%;
    background:radial-gradient(60% 100% at 50% 0%, rgba(216,189,138,.18), transparent 70%)}
  .arch-rings{position:absolute;inset:0;opacity:.5}
  .arch-rings span{position:absolute;left:50%;top:34%;transform:translate(-50%,-50%);border:1px solid rgba(216,189,138,.22);border-radius:50%}
  .arch-rings span:nth-child(1){width:74%;aspect-ratio:1}
  .arch-rings span:nth-child(2){width:96%;aspect-ratio:1}
  .arch-rings span:nth-child(3){width:120%;aspect-ratio:1}
  .arch-badge{position:absolute;right:-26px;bottom:14%;width:118px;height:118px;border-radius:50%;
    background:rgba(251,250,247,.94);box-shadow:0 24px 50px -20px rgba(28,43,38,.4);display:grid;place-items:center;
    will-change:transform}
  .arch-badge svg{width:100%;height:100%;animation:spin 28s linear infinite}
  @keyframes spin{to{transform:rotate(360deg)}}
  .arch-badge .ico{position:absolute;width:34px;height:34px;color:var(--brass)}
  .blob{position:absolute;z-index:0;filter:blur(2px);opacity:.55;will-change:transform}
  .blob1{top:6%;left:-4%;width:200px;color:rgba(199,169,116,.4)}
  .blob2{bottom:2%;right:8%;width:150px;color:rgba(36,55,48,.16)}
  .hero-scroll{position:absolute;left:48px;bottom:34px;display:flex;align-items:center;gap:12px;
    font-family:var(--mono);font-size:11px;letter-spacing:.22em;color:var(--muted);text-transform:uppercase;z-index:6}
  .hero-scroll .ln{width:48px;height:1px;background:var(--brass);transform-origin:left;animation:scin 2.4s ease-in-out infinite}
  @keyframes scin{0%,100%{transform:scaleX(.4);opacity:.5}50%{transform:scaleX(1);opacity:1}}

  /* ===== TRUST STRIP ===== */
  .trust{background:var(--forest);color:var(--offwhite);padding:36px 0;border-top:1px solid var(--line-light)}
  .trust-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;align-items:center}
  .trust-item{display:flex;align-items:center;gap:16px;justify-content:center}
  .trust-item svg{width:34px;height:34px;color:var(--brass-light);flex:none}
  .trust-item b{font-family:'Fraunces',serif;font-size:18px;font-weight:500;display:block;letter-spacing:-.01em}
  .trust-item span{font-family:var(--mono);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:rgba(251,250,247,.5)}
  .trust-item:not(:last-child){border-right:1px solid var(--line-light)}
  @media(max-width:760px){.trust-grid{grid-template-columns:1fr;gap:22px}.trust-item:not(:last-child){border-right:none}}

  /* ===== SECTION SHELL ===== */
  section{position:relative}
  .sect-head{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:64px}
  .sect-head h2{font-size:clamp(34px,4.6vw,62px);color:var(--forest);font-weight:300;max-width:14ch}
  .sect-head h2 em{color:var(--brass)}
  .sect-head .side{max-width:300px;color:var(--muted);font-size:15px;font-weight:300;padding-bottom:8px}

  /* reveal util */
  .rv{opacity:0;transform:translateY(30px);transition:opacity 1s cubic-bezier(.16,1,.3,1),transform 1s cubic-bezier(.16,1,.3,1)}
  .rv.in{opacity:1;transform:none}
  /* rv-clip: transform/opacity reveal (self clip-path breaks IntersectionObserver geometry in Chromium) */
  .rv-clip{opacity:0;transform:translateY(30px);transition:opacity 1.05s cubic-bezier(.16,1,.3,1),transform 1.05s cubic-bezier(.16,1,.3,1)}
  .rv-clip.in{opacity:1;transform:none}

  /* ===== ETHOS / VALUES ===== */
  .ethos{padding:140px 0;background:var(--offwhite)}
  .val-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}
  .val-grid .val{position:relative;padding:42px 34px 38px;border:1px solid var(--line);border-radius:16px;background:var(--offwhite);
    overflow:hidden;transition:transform .6s cubic-bezier(.2,.7,.2,1),box-shadow .6s ease,border-color .6s ease}
  .val-grid .val::before{content:"";position:absolute;inset:0;background:
    radial-gradient(120% 80% at 50% -10%, rgba(199,169,116,.12), transparent 60%);opacity:0;transition:opacity .6s ease}
  .val-grid .val:hover{transform:translateY(-8px);box-shadow:0 40px 70px -40px rgba(28,43,38,.32);border-color:rgba(169,139,93,.4)}
  .val-grid .val:hover::before{opacity:1}
  .val-grid .val .ico{width:54px;height:54px;color:var(--brass);margin-bottom:26px;position:relative}
  .val-grid .val h3{font-size:24px;color:var(--forest);margin-bottom:12px;position:relative}
  .val-grid .val p{color:var(--muted);font-size:15px;font-weight:300;position:relative}
  .val-grid .val .vn{position:absolute;top:30px;right:32px;font-family:var(--mono);font-size:11px;color:var(--brass);opacity:.6}
  @media(max-width:880px){.val-grid{grid-template-columns:1fr}}

  /* ===== TREATMENT MENU ===== */
  .menu{padding:140px 0;background:linear-gradient(180deg,var(--sand),var(--sand-deep));position:relative;overflow:hidden}
  .menu .archmotif{position:absolute;top:-60px;right:-80px;width:380px;color:rgba(169,139,93,.13);pointer-events:none}
  .acc{border-top:1px solid rgba(28,43,38,.16)}
  .acc-row{border-bottom:1px solid rgba(28,43,38,.16);position:relative}
  .acc-head{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:28px;width:100%;
    background:none;border:none;cursor:pointer;text-align:left;padding:34px 4px;font-family:inherit;color:var(--forest);position:relative}
  .acc-head .anum{font-family:var(--mono);font-size:12px;color:var(--brass);letter-spacing:.1em}
  .acc-head .atitle{font-family:'Fraunces',serif;font-size:clamp(26px,3.2vw,40px);font-weight:300;
    transition:transform .5s cubic-bezier(.2,.7,.2,1)}
  .acc-head .aprice{font-family:'Fraunces',serif;font-style:italic;font-size:19px;color:var(--brass);white-space:nowrap}
  .acc-head .aplus{width:22px;height:22px;position:relative;flex:none}
  .acc-head .aplus::before,.acc-head .aplus::after{content:"";position:absolute;background:var(--forest);border-radius:2px;
    left:50%;top:50%;transition:transform .5s cubic-bezier(.2,.7,.2,1)}
  .acc-head .aplus::before{width:22px;height:1.6px;transform:translate(-50%,-50%)}
  .acc-head .aplus::after{width:1.6px;height:22px;transform:translate(-50%,-50%)}
  .acc-row[aria-expanded="true"] .aplus::after{transform:translate(-50%,-50%) rotate(90deg);opacity:0}
  .acc-row[aria-expanded="true"] .aplus::before{background:var(--brass)}
  .acc-row:hover .atitle{transform:translateX(14px)}
  .acc-row:hover .atitle{color:var(--brass)}
  .acc-glow{position:absolute;left:0;top:0;height:100%;width:0;background:
    linear-gradient(90deg, rgba(199,169,116,.1), transparent);transition:width .6s ease;pointer-events:none}
  .acc-row[aria-expanded="true"] .acc-glow{width:60%}
  .acc-panel{overflow:hidden;height:0;transition:height .6s cubic-bezier(.5,0,.1,1)}
  .acc-inner{display:grid;grid-template-columns:1fr 1fr;gap:40px;padding:6px 4px 44px 56px}
  .acc-inner p{color:var(--muted);font-size:15.5px;font-weight:300;max-width:46ch}
  .acc-inner .det{opacity:0;transform:translateY(18px);transition:.7s cubic-bezier(.16,1,.3,1) .08s}
  .acc-row[aria-expanded="true"] .acc-inner .det{opacity:1;transform:none}
  .acc-meta{display:flex;flex-direction:column;gap:14px;align-items:flex-start}
  .acc-tag{font-family:var(--mono);font-size:11px;letter-spacing:.12em;color:var(--forest);
    border:1px solid rgba(28,43,38,.2);border-radius:100px;padding:7px 16px;display:inline-block}
  .acc-cta{display:inline-flex;align-items:center;gap:10px;font-size:13.5px;color:var(--forest);font-weight:500;margin-top:6px}
  .acc-cta u{text-decoration:none;background:linear-gradient(var(--brass),var(--brass)) left bottom/0 1px no-repeat;transition:background-size .4s ease;padding-bottom:2px}
  .acc-cta:hover u{background-size:100% 1px}
  .acc-vis{align-self:start;width:100%;color:var(--brass)}
  @media(max-width:760px){
    .acc-head{grid-template-columns:auto 1fr auto;gap:14px}
    .acc-head .aprice{grid-column:2;text-align:right}
    .acc-inner{grid-template-columns:1fr;padding-left:4px}
  }

  /* ===== PRACTITIONER ===== */
  .pract{padding:150px 0;background:var(--forest);color:var(--offwhite);position:relative;overflow:hidden}
  .pract .glow{position:absolute;top:-10%;left:-6%;width:520px;height:520px;border-radius:50%;
    background:radial-gradient(circle,rgba(199,169,116,.16),transparent 65%);pointer-events:none}
  .pract-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:center;position:relative}
  .portrait{position:relative;aspect-ratio:3/4;border-radius:50% 50% 14px 14px / 40% 40% 6px 6px;overflow:hidden;
    background:linear-gradient(180deg,#2C4138,#1C2B26);box-shadow:0 50px 100px -50px rgba(0,0,0,.6),inset 0 1px 0 rgba(216,189,138,.2)}
  .portrait .pglow{position:absolute;inset:0;background:radial-gradient(70% 50% at 50% 28%, rgba(216,189,138,.28), transparent 60%)}
  .portrait svg{position:absolute;inset:0;width:100%;height:100%}
  .portrait .ring{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:78%;aspect-ratio:1;
    border:1px solid rgba(216,189,138,.25);border-radius:50%}
  .pract h2{font-size:clamp(34px,4.4vw,58px);font-weight:300;margin:22px 0 0}
  .pract h2 em{color:var(--brass-light)}
  .pract-lead{color:rgba(251,250,247,.66);font-size:17px;font-weight:300;max-width:48ch;margin:26px 0 30px}
  .pract-quote{font-family:'Fraunces',serif;font-style:italic;font-size:24px;font-weight:300;line-height:1.4;
    color:var(--offwhite);border-left:2px solid var(--brass);padding-left:24px;margin:30px 0;max-width:42ch}
  .pract-creds{display:flex;flex-wrap:wrap;gap:14px;margin-top:30px}
  .cred{font-family:var(--mono);font-size:11px;letter-spacing:.1em;color:rgba(251,250,247,.8);
    border:1px solid var(--line-light);border-radius:100px;padding:9px 18px}
  .sig{font-family:'Fraunces',serif;font-style:italic;font-size:30px;color:var(--brass-light);margin-top:28px}
  @media(max-width:880px){.pract-grid{grid-template-columns:1fr;gap:44px}}

  /* ===== STATS / KINETIC ===== */
  .stats{padding:130px 0 70px;background:var(--offwhite);overflow:hidden}
  .stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-bottom:90px}
  .stat{padding:34px 28px;border:1px solid var(--line);border-radius:16px;background:var(--offwhite);position:relative;overflow:hidden}
  .stat::after{content:"";position:absolute;left:0;bottom:0;width:0;height:2px;background:linear-gradient(90deg,var(--brass),var(--brass-light));transition:width 1.2s ease .2s}
  .stat.in::after{width:100%}
  .stat .num{font-family:'Fraunces',serif;font-size:clamp(38px,4.4vw,58px);font-weight:300;color:var(--forest);line-height:1;display:flex;align-items:baseline}
  .stat .num .suf{font-size:.5em;color:var(--brass);margin-left:4px}
  .stat .lbl{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-top:14px}
  @media(max-width:880px){.stat-grid{grid-template-columns:1fr 1fr}}

  .marquee{position:relative;padding:30px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);
    overflow:hidden;-webkit-mask:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
  .mq-track{display:flex;gap:0;width:max-content;animation:mq 38s linear infinite}
  .mq-track span{font-family:'Fraunces',serif;font-size:clamp(30px,4vw,52px);font-weight:300;color:var(--forest);
    padding:0 38px;display:inline-flex;align-items:center;gap:38px;white-space:nowrap}
  .mq-track span::after{content:"";width:10px;height:10px;border-radius:50%;background:var(--brass);display:inline-block}
  .mq-track em{color:var(--brass);font-style:italic}
  @keyframes mq{to{transform:translateX(-50%)}}
  .marquee:hover .mq-track{animation-play-state:paused}

  /* ===== TESTIMONIAL ===== */
  .testi{padding:120px 0 130px;background:var(--offwhite)}
  .testi-card{max-width:880px;margin:0 auto;text-align:center}
  .testi-stars{display:flex;justify-content:center;gap:6px;color:var(--brass);margin-bottom:30px}
  .testi-stars svg{width:20px;height:20px}
  .testi blockquote{font-family:'Fraunces',serif;font-size:clamp(26px,3.6vw,42px);font-weight:300;line-height:1.28;
    color:var(--forest);letter-spacing:-.01em}
  .testi blockquote em{color:var(--brass)}
  .testi-by{font-family:var(--mono);font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin-top:34px}

  /* ===== CTA ===== */
  .cta{position:relative;background:var(--forest-deep);color:var(--offwhite);padding:130px 0 140px;overflow:hidden}
  .cta .arch-bg{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(620px,90vw);height:120%;
    border-radius:50% 50% 0 0 / 60% 60% 0 0;
    background:radial-gradient(70% 50% at 50% 30%, rgba(199,169,116,.16), transparent 62%);
    border:1px solid rgba(216,189,138,.16);border-bottom:none;pointer-events:none}
  .cta-mq{position:absolute;top:40px;left:0;width:100%;overflow:hidden;opacity:.1;-webkit-mask:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent);mask:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent)}
  .cta-mq .mq-track{animation-duration:30s}
  .cta-mq .mq-track span{color:var(--brass-light);font-size:clamp(40px,6vw,82px)}
  .cta-mq .mq-track span::after{background:var(--brass-light)}
  .cta-in{position:relative;z-index:3;text-align:center;max-width:760px;margin:0 auto}
  .cta h2{font-size:clamp(44px,6.4vw,92px);font-weight:300;line-height:1.02}
  .cta h2 em{color:var(--brass-light)}
  .cta p{color:rgba(251,250,247,.6);font-size:17px;font-weight:300;max-width:42ch;margin:30px auto 42px}
  .cta .btn-solid{background:var(--brass);color:var(--forest-deep);font-weight:500;padding:18px 38px;font-size:14px}
  .cta .btn-solid::before{background:var(--offwhite)}
  .cta-note{font-family:var(--mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:rgba(216,189,138,.6);margin-top:30px}

  /* ===== FOOTER ===== */
  footer{background:var(--forest);color:var(--offwhite);padding:90px 0 40px;border-top:1px solid var(--line-light)}
  .foot-top{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:40px;padding-bottom:60px;border-bottom:1px solid var(--line-light)}
  .foot-brand .brand{color:var(--offwhite);margin-bottom:20px}
  .foot-brand .brand i{color:var(--brass-light)}
  .foot-brand p{color:rgba(251,250,247,.55);font-size:14px;font-weight:300;max-width:32ch}
  .foot-col h4{font-family:var(--mono);font-weight:500;font-size:11px;letter-spacing:.2em;text-transform:uppercase;
    color:var(--brass-light);margin-bottom:22px}
  .foot-col a,.foot-col p{display:block;color:rgba(251,250,247,.7);font-size:14px;font-weight:300;margin-bottom:12px;position:relative;width:fit-content}
  .foot-col a::after{content:"";position:absolute;left:0;bottom:-1px;width:0;height:1px;background:var(--brass-light);transition:width .4s ease}
  .foot-col a:hover::after{width:100%}
  .foot-col a:hover{color:var(--offwhite)}
  .foot-socials{display:flex;gap:12px;margin-top:6px}
  .foot-socials a{width:40px;height:40px;border-radius:50%;border:1px solid var(--line-light);display:grid;place-items:center;
    transition:.4s ease;margin:0}
  .foot-socials a svg{width:17px;height:17px;color:rgba(251,250,247,.7);transition:color .4s ease}
  .foot-socials a:hover{background:var(--brass);border-color:var(--brass);transform:translateY(-3px)}
  .foot-socials a:hover svg{color:var(--forest)}
  .foot-bottom{display:flex;justify-content:space-between;align-items:center;padding-top:34px;flex-wrap:wrap;gap:16px}
  .foot-bottom p{font-family:var(--mono);font-size:11px;letter-spacing:.1em;color:rgba(251,250,247,.45)}
  .foot-bottom .fl{display:flex;gap:24px}
  .foot-bottom .fl a{font-size:11px;color:rgba(251,250,247,.55);letter-spacing:.05em}
  .foot-bottom .fl a:hover{color:var(--brass-light)}
  @media(max-width:880px){.foot-top{grid-template-columns:1fr 1fr}.foot-brand{grid-column:1/-1}}

  @media(max-width:880px){
    .wrap{padding:0 26px}
    .hero-grid{grid-template-columns:1fr;gap:10px}
    .arch-stage{height:auto;margin-top:30px}
    .arch{width:min(280px,72vw);height:min(420px,108vw)}
    .arch-badge{display:none}
    .sect-head{flex-direction:column;align-items:flex-start;gap:18px}
    .ethos,.menu,.pract,.stats,.testi,.cta{padding-top:96px;padding-bottom:96px}
    .hero-scroll{display:none}
  }

  /* ===== REDUCED MOTION ===== */
  @media(prefers-reduced-motion:reduce){
    *,*::before,*::after{animation:none!important;transition:none!important}
    .rv,.rv-clip{opacity:1!important;transform:none!important;clip-path:none!important}
    .hero h1 .ln>span{transform:none!important}
    .hero-lead,.hero-actions{opacity:1!important;transform:none!important}
    .pl,.pl-curtain,.pl-skip{display:none!important}
    .cur,.cur-ring{display:none!important}
    .mq-track{animation:none!important}
    .hero .eyebrow,.arch-stage,.hero-scroll{opacity:1!important;transform:none!important}
    .arch-draw path,.fd-frame path{stroke-dasharray:none!important;stroke-dashoffset:0!important}
    .sect-head h2::after,.pagehero h1::after{transform:none!important}
    html{scroll-behavior:auto}
  }
/* ============================================================
   SUBPAGE SYSTEM (multi-page demo)
   ============================================================ */
html:not(.intro-play) .pl,html:not(.intro-play) .pl-curtain,html:not(.intro-play) .pl-skip{display:none!important}
.nav-links a.active,.nav-links a[aria-current="page"]{color:var(--brass)}
.nav-links a.active::after{width:100%}

.pagehero{position:relative;padding:clamp(116px,15vw,184px) 0 clamp(48px,7vw,82px);background:var(--sand);overflow:hidden;border-bottom:1px solid var(--line)}
.pagehero .wrap{position:relative;z-index:2}
.pagehero .eyebrow{margin-bottom:22px}
.pagehero h1{font-family:'Fraunces',serif;font-weight:400;font-size:clamp(44px,7vw,98px);line-height:1.02;letter-spacing:-.02em;color:var(--ink)}
.pagehero h1 em{font-style:italic;color:var(--brass)}
.pagehero .lead{max-width:560px;margin-top:24px;color:var(--muted);font-size:clamp(15px,1.3vw,18px);line-height:1.75}

.msec{padding:clamp(60px,9vw,116px) 0;position:relative}
.msec.sand{background:var(--sand)}
.msec.forest{background:var(--forest);color:var(--offwhite)}
.msec.forest h2,.msec.forest h3,.msec.forest h4{color:var(--offwhite)}
.msec.forest p{color:rgba(251,250,247,.74)}
.msec.forest .eyebrow{color:var(--brass-light)}
.msec.forest .line,.msec.forest hr{border-color:var(--line-light)}

/* feature rows */
.mrow{display:grid;grid-template-columns:1fr 1fr;gap:clamp(36px,6vw,82px);align-items:center}
.mrow+.mrow{margin-top:clamp(52px,8vw,100px)}
.mrow.rev .mrow-media{order:2}
.mrow-media{position:relative;aspect-ratio:4/5;overflow:hidden;background:var(--forest-soft);border:1px solid var(--line)}
.mrow-media img,.mrow-media video{width:100%;height:100%;object-fit:cover;display:block}
.mrow-body .eyebrow{margin-bottom:18px}
.mrow-body h3{font-family:'Fraunces',serif;font-weight:400;font-size:clamp(28px,4vw,50px);line-height:1.06;margin-bottom:18px}
.mrow-body h3 em{font-style:italic;color:var(--brass)}
.mrow-body p{color:var(--muted);line-height:1.8;max-width:48ch;margin-bottom:16px}
@media(max-width:860px){.mrow{grid-template-columns:1fr}.mrow.rev .mrow-media{order:0}}

/* CSS-art arch panel (for image-free feature media) */
.archpanel{position:relative;background:linear-gradient(165deg,var(--forest-soft),var(--forest-deep))}
.archpanel::before{content:"";position:absolute;left:50%;bottom:11%;transform:translateX(-50%);width:60%;height:74%;border:1.4px solid var(--brass);border-bottom:none;border-radius:50% 50% 0 0/58% 58% 0 0;opacity:.55}
.archpanel::after{content:"";position:absolute;left:50%;top:34%;transform:translate(-50%,-50%);width:34%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 38% 32%,var(--brass-glow),var(--brass) 58%,rgba(168,139,93,0) 72%);opacity:.55}

/* full-bleed clinic video band */
.mvideo{position:relative;min-height:72vh;display:flex;align-items:flex-end;overflow:hidden;background:var(--forest)}
.mvideo video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
.mvideo .mv-scrim{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(21,32,25,.32),rgba(21,32,25,.12) 38%,rgba(21,32,25,.78))}
.mvideo .wrap{position:relative;z-index:2;padding:clamp(40px,6vw,80px) 0;color:var(--offwhite)}
.mvideo .eyebrow{color:var(--brass-light)}
.mvideo h2{font-family:'Fraunces',serif;font-weight:400;color:var(--offwhite);font-size:clamp(34px,5vw,68px);line-height:1.05;margin:16px 0 14px;max-width:14ch}
.mvideo h2 em{font-style:italic;color:var(--brass-light)}
.mvideo p{color:rgba(251,250,247,.8);max-width:44ch;line-height:1.8}

/* form */
.mform{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.mfield{display:flex;flex-direction:column;gap:9px}
.mfield.full{grid-column:1/-1}
.mfield label{font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.mfield input,.mfield select,.mfield textarea{background:var(--offwhite);border:1px solid var(--line);color:var(--ink);padding:14px 16px;font-family:'Inter',sans-serif;font-size:15px;border-radius:12px;transition:border-color .35s ease,background .35s ease}
.mfield input:focus,.mfield select:focus,.mfield textarea:focus{outline:none;border-color:var(--brass)}
.mfield textarea{min-height:128px;resize:vertical}
@media(max-width:680px){.mform{grid-template-columns:1fr}}

/* faq */
.mfaq{border-top:1px solid var(--line)}
.mfaq-item{border-bottom:1px solid var(--line);padding:26px 0}
.mfaq-item h4{font-family:'Fraunces',serif;font-weight:500;font-size:clamp(19px,2vw,25px);margin-bottom:10px}
.mfaq-item p{color:var(--muted);line-height:1.75;max-width:72ch}

/* value / step grid — unified card language (16px radius, 1px line, lift + brass) */
.mgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.mgrid-item{background:var(--offwhite);border:1px solid var(--line);border-radius:16px;padding:clamp(26px,3.2vw,40px);position:relative;overflow:hidden;
  transition:opacity .9s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.2,.7,.2,1),border-color .5s ease,box-shadow .5s ease}
.msec.forest .mgrid-item{background:var(--forest-soft);border-color:var(--line-light)}
.mgrid-item .snum,.mgrid-item .eyebrow{display:block;margin-bottom:14px}
.mgrid-item h4{font-family:'Fraunces',serif;font-weight:400;font-size:clamp(20px,2.2vw,27px);margin-bottom:12px}
.mgrid-item p{color:var(--muted);font-size:14.5px;line-height:1.7}
@media(max-width:860px){.mgrid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.mgrid{grid-template-columns:1fr}}

/* two-col info */
.minfo{display:grid;grid-template-columns:1fr 1fr;gap:clamp(36px,6vw,76px);align-items:start}
@media(max-width:760px){.minfo{grid-template-columns:1fr}}

/* page CTA */
.mcta{padding:clamp(78px,11vw,146px) 0;text-align:center;background:var(--forest);color:var(--offwhite)}
.mcta h2{font-family:'Fraunces',serif;font-weight:400;color:var(--offwhite);font-size:clamp(34px,5.4vw,72px);line-height:1.06;margin-bottom:20px}
.mcta h2 em{font-style:italic;color:var(--brass-light)}
.mcta p{color:rgba(251,250,247,.76);max-width:520px;margin:0 auto 32px;line-height:1.8}

/* ===== New logo + glowing intro + arch hero video ===== */
.brand .mk path,.brand .mk rect{vector-effect:non-scaling-stroke}

/* Preloader = the generated glowing intro title-card */
.pl{background:#1C2B26 url("../media/intro.jpg") center/cover no-repeat!important;transition:opacity .9s ease}
.pl > *{display:none!important}
@media (max-aspect-ratio:3/4){ .pl{background-image:url("../media/intro-portrait.jpg")!important} }
body.ready .pl{opacity:0}

/* Hero: glowing-skin video inside the brass arch */
.arch.has-vid .orb,.arch.has-vid .arch-rings,.arch.has-vid .arch-floor{display:none}
.arch .arch-vid{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 38%;z-index:0;border-radius:inherit}
.arch.has-vid::before{content:"";position:absolute;inset:0;z-index:1;border-radius:inherit;pointer-events:none;
  background:radial-gradient(75% 50% at 50% 18%, rgba(244,230,196,.30), transparent 60%), linear-gradient(180deg, transparent 56%, rgba(22,34,30,.55))}
.arch.has-vid::after{z-index:2}

/* image variant of the full-bleed band */
.mvideo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 36%;z-index:0;display:block}

/* ============================================================
   LEVEL-UP — clinical luxury pass (calm, precise, trustworthy)
   ============================================================ */
section[id]{scroll-margin-top:96px}

/* --- HERO: one-shot entrance + brass keyline draw inside the arch --- */
.hero .eyebrow{opacity:0;transform:translateY(14px);transition:opacity .8s cubic-bezier(.16,1,.3,1) .06s,transform .8s cubic-bezier(.16,1,.3,1) .06s}
body.ready .hero .eyebrow{opacity:1;transform:none}
.arch-stage{opacity:0;transform:translateY(30px);transition:opacity 1.15s cubic-bezier(.16,1,.3,1) .32s,transform 1.15s cubic-bezier(.16,1,.3,1) .32s}
body.ready .arch-stage{opacity:1;transform:none}
.hero-scroll{opacity:0;transition:opacity 1s ease 1.25s}
body.ready .hero-scroll{opacity:1}
.arch-draw{position:absolute;inset:0;width:100%;height:100%;z-index:2;pointer-events:none}
.arch-draw path{fill:none;stroke:var(--brass-glow);stroke-width:1.5;opacity:.55;stroke-dasharray:1760;stroke-dashoffset:1760}
body.ready .arch-draw path{animation:archdraw 2.1s cubic-bezier(.55,0,.25,1) .7s forwards}
@keyframes archdraw{to{stroke-dashoffset:0}}

/* --- SECTION TITLES: brass rules that draw in on reveal --- */
.sect-head:has(> .eyebrow){flex-direction:column;align-items:flex-start;gap:14px}
.sect-head h2{position:relative;padding-bottom:18px}
.sect-head h2::after{content:"";position:absolute;left:2px;bottom:0;width:58px;height:2px;border-radius:2px;
  background:linear-gradient(90deg,var(--brass),var(--brass-light));
  transform:scaleX(0);transform-origin:left;transition:transform .9s cubic-bezier(.2,.7,.2,1) .4s}
.sect-head h2.in::after{transform:scaleX(1)}
.pagehero h1{position:relative;padding-bottom:24px}
.pagehero h1::after{content:"";position:absolute;left:3px;bottom:2px;width:72px;height:2px;border-radius:2px;
  background:linear-gradient(90deg,var(--brass),var(--brass-light));
  transform:scaleX(0);transform-origin:left;transition:transform 1s cubic-bezier(.2,.7,.2,1) .5s}
.pagehero h1.in::after{transform:scaleX(1)}
.pagehero::after{content:"";position:absolute;right:clamp(-150px,-7vw,-60px);bottom:-26%;width:clamp(240px,30vw,440px);aspect-ratio:3/4.4;
  border:1.4px solid var(--brass);border-bottom:none;border-radius:50% 50% 0 0/42% 42% 0 0;opacity:.13;pointer-events:none}

/* --- CARDS: unified lift + brass edge on hover --- */
.minfo .mgrid{grid-template-columns:1fr}
.mgrid-item::before{content:"";position:absolute;top:0;left:0;right:0;height:2px;
  background:linear-gradient(90deg,var(--brass),var(--brass-light));transform:scaleX(0);transform-origin:left;
  transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.mgrid-item:hover{transform:translateY(-6px);border-color:rgba(169,139,93,.5);box-shadow:0 30px 60px -36px rgba(28,43,38,.35)}
.mgrid-item:hover::before{transform:scaleX(1)}
.msec.forest .mgrid-item:hover{border-color:rgba(216,189,138,.5);box-shadow:0 30px 60px -30px rgba(0,0,0,.5)}

/* --- MEDIA PANELS: the arch is the signature --- */
.mrow-media{border-radius:50% 50% 16px 16px/26% 26% 16px 16px;border-color:rgba(169,139,93,.28)}
.mrow-media:not(.archpanel)::after{content:"";position:absolute;inset:10px;border:1px solid rgba(216,189,138,.38);border-radius:inherit;pointer-events:none;z-index:2}
.mrow-media.fd::after{display:none}
.mrow-media img{transition:transform 1.5s cubic-bezier(.2,.7,.2,1)}
.mrow-media:hover img{transform:scale(1.045)}
.archpanel{border-radius:50% 50% 16px 16px/26% 26% 16px 16px;overflow:hidden;position:relative;border:1px solid rgba(169,139,93,.28)}
.archpanel::before{content:"";position:absolute;inset:10px;border:1px solid rgba(216,189,138,.4);border-radius:inherit;opacity:.8;
  width:auto;height:auto;left:10px;bottom:10px;transform:none}
/* portrait frame-draw (practitioner) */
.fd-frame{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:2}
.fd-frame path{fill:none;stroke:var(--brass-glow);stroke-width:1.6;opacity:.9;stroke-dasharray:1200;stroke-dashoffset:1200;
  transition:stroke-dashoffset 2.2s cubic-bezier(.5,0,.25,1) .35s}
.fd.in .fd-frame path{stroke-dashoffset:0}

/* --- RESULTS: testimonial cards --- */
.testi-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.tcard{position:relative;text-align:left;max-width:none;margin:0;background:var(--offwhite);border:1px solid var(--line);
  border-radius:16px;padding:34px 32px 30px;overflow:hidden;
  transition:opacity .9s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.2,.7,.2,1),border-color .5s ease,box-shadow .5s ease}
.tcard::before{content:"\201C";font-family:'Fraunces',serif;font-size:92px;line-height:1;color:var(--brass);opacity:.16;
  position:absolute;top:12px;right:24px;pointer-events:none}
.tcard:hover{transform:translateY(-5px);border-color:rgba(169,139,93,.5);box-shadow:0 30px 60px -38px rgba(28,43,38,.35)}
.tcard .testi-stars{justify-content:flex-start;margin-bottom:20px}
.tcard .testi-stars svg{width:16px;height:16px}
.tcard blockquote{font-size:clamp(19px,1.9vw,24px);line-height:1.42}
.tcard .testi-by{text-align:left;margin-top:22px}
@media(max-width:760px){.testi-grid{grid-template-columns:1fr}}

/* --- TRUST / CREDENTIAL POLISH --- */
.cred{transition:border-color .4s ease,color .4s ease,transform .4s ease}
.cred:hover{border-color:rgba(216,189,138,.7);color:var(--offwhite);transform:translateY(-2px)}
.trust-item svg{transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.trust-item:hover svg{transform:translateY(-3px)}

/* --- BOOK: availability / clinic details strip --- */
.avail{border-top:1px solid var(--line)}
.avail-row{display:flex;justify-content:space-between;gap:24px;padding:19px 2px;border-bottom:1px solid var(--line);position:relative}
.avail-row::after{content:"";position:absolute;left:0;bottom:-1px;height:1px;width:0;
  background:linear-gradient(90deg,var(--brass),var(--brass-light));transition:width .7s cubic-bezier(.2,.7,.2,1)}
.avail-row:hover::after{width:100%}
.avail-row .k{font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);padding-top:4px;flex:none;transition:color .4s ease}
.avail-row:hover .k{color:var(--brass)}
.avail-row .v{text-align:right;color:var(--ink);font-weight:300}
.form-note{color:var(--muted);font-size:13px;font-weight:300;line-height:1.7;margin-top:22px;max-width:46ch}
.form-note a{color:var(--brass)}

/* --- FORM: brass focus, press feedback --- */
.mfield label{transition:color .35s ease}
.mfield:focus-within label{color:var(--brass)}
.mfield input:focus,.mfield select:focus,.mfield textarea:focus{outline:none;border-color:var(--brass);box-shadow:inset 0 0 0 1px var(--brass);background:#FFFEFB}
.mfield select{appearance:none;-webkit-appearance:none;padding-right:44px;cursor:pointer;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23A98B5D' stroke-width='1.6'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 17px center}
.btn:not(.rv){transition:transform .18s ease}
.btn:active{transform:translateY(1px) scale(.98)}
.nav-cta{transition:transform .18s ease}
.nav-cta:active{transform:translateY(1px) scale(.97)}
.foot-socials a:active{transform:translateY(-1px) scale(.94)}
.btn-solid.sent{background:var(--brass);color:var(--forest-deep);pointer-events:none}
.btn-solid.sent::before{display:none}

/* --- LINK AFFORDANCES: consistent brass-grow underlines --- */
main a[href^="tel:"],main a[href^="mailto:"],footer a[href^="tel:"],footer a[href^="mailto:"]{
  background:linear-gradient(currentColor,currentColor) left bottom/0 1px no-repeat;
  transition:background-size .45s cubic-bezier(.2,.7,.2,1);padding-bottom:1px}
main a[href^="tel:"]:hover,main a[href^="mailto:"]:hover,footer a[href^="tel:"]:hover,footer a[href^="mailto:"]:hover{background-size:100% 1px}

/* --- AMBIENT LOOPS: sleep off-screen --- */
.anim-paused,.anim-paused *{animation-play-state:paused!important}

/* --- MOBILE NAV (burger + panel) --- */
.nav-burger{display:none;width:44px;height:44px;flex:none;border:none;background:none;cursor:pointer;position:relative;border-radius:10px}
.nav-burger span{position:absolute;left:50%;top:50%;width:22px;height:1.8px;border-radius:2px;background:var(--forest);
  transform:translate(-50%,-50%) translateY(-4px);transition:transform .45s cubic-bezier(.2,.7,.2,1)}
.nav-burger span:last-child{transform:translate(-50%,-50%) translateY(4px)}
.nav.open .nav-burger span:first-child{transform:translate(-50%,-50%) rotate(45deg)}
.nav.open .nav-burger span:last-child{transform:translate(-50%,-50%) rotate(-45deg)}
@media(max-width:880px){
  .nav-burger{display:block}
  .nav-links{position:absolute;top:100%;left:0;right:0;background:var(--offwhite);border-bottom:1px solid var(--line);
    display:flex;flex-direction:column;align-items:stretch;gap:0;padding:8px 26px 24px;
    opacity:0;transform:translateY(-12px);visibility:hidden;pointer-events:none;
    transition:opacity .45s cubic-bezier(.2,.7,.2,1),transform .45s cubic-bezier(.2,.7,.2,1),visibility .45s;
    box-shadow:0 34px 54px -34px rgba(28,43,38,.3)}
  .nav.open .nav-links{opacity:1;transform:none;visibility:visible;pointer-events:auto}
  .nav-links a{font-size:16px;padding:13px 0;border-bottom:1px solid var(--line)}
  .nav-links a::after{display:none}
  .nav-links a.active{color:var(--brass)}
  .nav-links a.nav-cta{margin-top:18px;text-align:center;border-bottom:none;color:var(--offwhite);font-size:13.5px;padding:15px 24px}
}

/* --- MOBILE REFINEMENTS (375-ready, tap targets ≥44px) --- */
@media(max-width:880px){
  .foot-col a{padding:9px 0;margin-bottom:2px}
  .foot-col p a{display:inline-block;padding:7px 0}
  .foot-socials a{width:44px;height:44px}
  .foot-bottom .fl a{display:inline-block;padding:11px 2px}
  .pl-skip{bottom:16px;right:14px;padding:14px 12px}
  .acc-cta{padding:8px 0}
}
@media(max-width:620px){
  .stat-grid{gap:12px}
  .stat{padding:22px 16px;min-width:0}
  .stat .num{font-size:34px}
  .foot-top{grid-template-columns:1fr;gap:36px}
  .pagehero::after{right:-34vw;bottom:-14%;width:72vw}
}
