:root{
    --bg:#0a0908;
    --bg-2:#111010;
    --panel:#161412;
    --panel-2:#1d1a16;
    --line:#2a2620;
    --gold:#e7b84b;
    --gold-2:#c8952e;
    --gold-soft:#f4d78a;
    --ink:#f5f0e6;
    --muted:#a99f8e;
    --muted-2:#736c5f;
    --white:#ffffff;
    --shadow:0 30px 80px -30px rgba(0,0,0,.9);
  }
  *{margin:0;padding:0;box-sizing:border-box}
  html{scroll-behavior:smooth}
  body{
    background:var(--bg);
    color:var(--ink);
    font-family:'Archivo',system-ui,sans-serif;
    font-size:17px;
    line-height:1.6;
    -webkit-font-smoothing:antialiased;
    overflow-x:clip;
  }
  ::selection{background:var(--gold);color:#000}
  a{color:inherit;text-decoration:none}
  .wrap{max-width:1180px;margin:0 auto;padding:0 24px}
  .display{font-family:'Archivo Black',sans-serif;font-weight:900;letter-spacing:-.02em;line-height:.92}
  .mono{font-family:'JetBrains Mono',monospace}
  /* ---------- ambient background ---------- */
  .bg-grid{
    position:fixed;inset:0;z-index:0;pointer-events:none;
    background:
      radial-gradient(900px 500px at 78% -8%, rgba(231,184,75,.14), transparent 60%),
      radial-gradient(700px 600px at -5% 30%, rgba(231,184,75,.06), transparent 55%),
      var(--bg);
  }
  .bg-grid::after{
    content:"";position:absolute;inset:0;
    background-image:linear-gradient(rgba(231,184,75,.035) 1px,transparent 1px),
      linear-gradient(90deg,rgba(231,184,75,.035) 1px,transparent 1px);
    background-size:64px 64px;
    mask-image:radial-gradient(circle at 70% 20%,#000 0%,transparent 70%);
  }
  /* ---------- header ---------- */
  header{
    position:sticky;top:0;z-index:50;
    backdrop-filter:blur(14px);
    background:rgba(10,9,8,.72);
    border-bottom:1px solid var(--line);
  }
  .nav{display:flex;align-items:center;justify-content:space-between;height:72px}
  .brand{display:flex;align-items:center;gap:12px;font-weight:700;letter-spacing:.01em}
  .brand .mark{
    width:48px;height:48px;display:grid;place-items:center;flex-shrink:0;
    filter:drop-shadow(0 4px 12px rgba(231,184,75,.3));
  }
  .brand .mark img{width:100%;height:100%;object-fit:contain}
  .brand small{display:block;font-size:11px;font-weight:500;color:var(--muted);letter-spacing:.14em;text-transform:uppercase;margin-top:-2px}
  .nav-links{display:flex;gap:30px;align-items:center;font-size:14.5px;color:var(--muted)}
  .nav-links a{transition:color .2s}
  .nav-links a:hover{color:var(--ink)}
  .nav-links a.active{color:var(--gold-soft)}
  .nav-right{display:flex;align-items:center;gap:14px}
  .nav-call{
    display:inline-flex;align-items:center;gap:9px;
    padding:11px 18px;border-radius:999px;
    background:linear-gradient(145deg,var(--gold-soft),var(--gold-2));
    color:#000;font-weight:700;font-size:14.5px;letter-spacing:.01em;
    box-shadow:0 8px 24px -8px rgba(231,184,75,.55);
    transition:transform .2s, box-shadow .2s;white-space:nowrap;
  }
  .nav-call:hover{transform:translateY(-1px);box-shadow:0 12px 30px -8px rgba(231,184,75,.7)}
  /* hamburger button */
  .hamburger{
    display:none;width:44px;height:44px;border:1px solid var(--line);border-radius:11px;
    background:var(--panel);cursor:pointer;position:relative;flex-shrink:0;
    transition:border-color .2s,background .2s;
  }
  .hamburger:hover{border-color:var(--gold-2)}
  /* close (X) button inside mobile panel */
  .mnav-close{
    position:absolute;top:22px;right:24px;width:42px;height:42px;
    border:1px solid var(--line);border-radius:11px;background:var(--panel);
    cursor:pointer;display:grid;place-items:center;transition:border-color .2s,background .2s;
  }
  .mnav-close:hover{border-color:var(--gold-2);background:rgba(231,184,75,.06)}
  .mnav-close::before,.mnav-close::after{
    content:"";position:absolute;width:20px;height:2px;border-radius:2px;background:var(--gold-soft);
  }
  .mnav-close::before{transform:rotate(45deg)}
  .mnav-close::after{transform:rotate(-45deg)}
  .hamburger span{
    position:absolute;left:12px;right:12px;height:2px;border-radius:2px;
    background:var(--gold-soft);transition:transform .3s,opacity .2s,top .3s;
  }
  .hamburger span:nth-child(1){top:15px}
  .hamburger span:nth-child(2){top:21px}
  .hamburger span:nth-child(3){top:27px}
  body.menu-open .hamburger span:nth-child(1){top:21px;transform:rotate(45deg)}
  body.menu-open .hamburger span:nth-child(2){opacity:0}
  body.menu-open .hamburger span:nth-child(3){top:21px;transform:rotate(-45deg)}
  /* mobile slide-in panel */
  .mobile-nav{
    position:fixed;top:0;right:0;bottom:0;width:min(84vw,340px);z-index:70;
    background:linear-gradient(165deg,var(--panel-2),var(--bg-2));
    border-left:1px solid var(--line);
    transform:translateX(100%);transition:transform .34s cubic-bezier(.4,0,.2,1);
    padding:88px 28px 32px;display:flex;flex-direction:column;gap:6px;
    box-shadow:-30px 0 80px -30px rgba(0,0,0,.9);
  }
  body.menu-open .mobile-nav{transform:translateX(0)}
  .mobile-nav a{
    font-size:19px;font-weight:600;color:var(--ink);padding:15px 4px;
    border-bottom:1px solid var(--line);transition:color .2s,padding-left .2s;
  }
  .mobile-nav a:hover,.mobile-nav a.active{color:var(--gold-soft);padding-left:10px}
  .mobile-nav .m-call{
    margin-top:24px;justify-content:center;border-bottom:none;
    display:inline-flex;align-items:center;gap:10px;
    padding:16px;border-radius:13px;color:#000;font-weight:700;font-size:17px;
    background:linear-gradient(145deg,var(--gold-soft),var(--gold-2));
  }
  .mobile-nav .m-call:hover{padding-left:16px}
  .mobile-nav .m-meta{margin-top:auto;font-size:13px;color:var(--muted-2);letter-spacing:.05em}
  .nav-overlay{
    position:fixed;inset:0;z-index:65;background:rgba(0,0,0,.6);
    backdrop-filter:blur(2px);opacity:0;pointer-events:none;transition:opacity .34s;
  }
  body.menu-open .nav-overlay{opacity:1;pointer-events:auto}
  @media(max-width:860px){.nav-links{display:none} .hamburger{display:block}}
  @media(max-width:480px){
    .nav{height:64px}
    .brand span{font-size:14.5px}
    .brand small{font-size:8.8px;white-space:nowrap}
    .brand .mark{width:40px;height:40px}
    .nav-call{display:none}
    .hamburger{width:42px;height:42px}
  }
  /* ---------- hero ---------- */
  .hero{position:relative;z-index:1;padding:72px 0 90px}
  .hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center}
  @media(max-width:960px){.hero-grid{grid-template-columns:1fr;gap:40px}}
  /* centered single-column hero (home) */
  .hero.hero-center{padding:110px 0 120px}
  .hero.hero-center .hero-inner{
    max-width:900px;margin:0 auto;text-align:center;
    display:flex;flex-direction:column;align-items:center;
  }
  .hero.hero-center .hero-lead{max-width:640px !important}
  .hero.hero-center .hero-cta{justify-content:center}
  .hero.hero-center .trust-row{justify-content:center}
  .hero.hero-center h1.hero-title{font-size:clamp(46px,7vw,88px)}
  .hero.hero-center .hero-lead{font-size:clamp(18px,2.2vw,22px)}
  @media(max-width:560px){
    .hero.hero-center{padding:70px 0 80px}
    .hero.hero-center .trust-row{gap:16px 22px}
  }
  .eyebrow{
    display:inline-flex;align-items:center;gap:10px;
    font-size:12.5px;letter-spacing:.18em;text-transform:uppercase;
    color:var(--gold-soft);margin-bottom:26px;
    padding:7px 14px;border:1px solid var(--line);border-radius:999px;
    background:rgba(231,184,75,.05);
  }
  .eyebrow .dot{width:7px;height:7px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 4px rgba(231,184,75,.18);animation:pulse 2.4s infinite}
  @keyframes pulse{0%,100%{opacity:1}50%{opacity:.4}}
  h1.hero-title{
    font-size:clamp(38px,5.6vw,72px);
    line-height:.98;
    text-transform:uppercase;
    margin-bottom:22px;
  }
  h1.hero-title .g{
    background:linear-gradient(180deg,var(--gold-soft) 0%,var(--gold) 45%,var(--gold-2) 100%);
    -webkit-background-clip:text;background-clip:text;color:transparent;
    filter:drop-shadow(0 4px 18px rgba(231,184,75,.25));
  }
  /* three-treatment title */
  h1.hero-title .t-solid{display:block;color:var(--ink)}
  h1.hero-title .t-outline{display:block;color:transparent;-webkit-text-stroke:1.5px var(--gold);}
  h1.hero-title .t-grad{display:block;
    background:linear-gradient(180deg,var(--gold-soft),var(--gold-2));
    -webkit-background-clip:text;background-clip:text;color:transparent;
    filter:drop-shadow(0 4px 18px rgba(231,184,75,.25));}
  @media(max-width:560px){h1.hero-title .t-outline{-webkit-text-stroke-width:1px}}
  .hero-lead{font-size:18.5px;color:var(--muted);max-width:520px;margin-bottom:34px}
  .hero-lead b{color:var(--ink);font-weight:600}
  .hero-cta{display:flex;gap:14px;flex-wrap:wrap;align-items:center}
  .btn-primary{
    display:inline-flex;align-items:center;gap:11px;
    padding:16px 26px;border-radius:14px;
    background:linear-gradient(145deg,var(--gold-soft),var(--gold-2));
    color:#000;font-weight:700;font-size:16.5px;
    box-shadow:0 14px 34px -12px rgba(231,184,75,.6);
    transition:transform .2s,box-shadow .2s;
  }
  .btn-primary:hover{transform:translateY(-2px);box-shadow:0 20px 44px -12px rgba(231,184,75,.75)}
  .btn-ghost{
    display:inline-flex;align-items:center;gap:9px;
    padding:16px 24px;border-radius:14px;
    border:1px solid var(--line);color:var(--ink);font-weight:600;font-size:15.5px;
    transition:border-color .2s,background .2s;
  }
  .btn-ghost:hover{border-color:var(--gold-2);background:rgba(231,184,75,.05)}
  .trust-row{display:flex;gap:26px;margin-top:38px;flex-wrap:wrap}
  .trust-row div{display:flex;align-items:center;gap:9px;font-size:14px;color:var(--muted)}
  .trust-row svg{flex-shrink:0}
  .field-label{font-size:12.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:11px;display:block}
  .veh-types{display:grid;grid-template-columns:repeat(2,1fr);gap:9px;margin-bottom:24px}
  .veh{
    display:flex;align-items:center;gap:10px;
    padding:13px 14px;border-radius:12px;
    border:1px solid var(--line);background:var(--bg-2);
    cursor:pointer;font-size:14.5px;font-weight:500;color:var(--muted);
    transition:all .18s;user-select:none;
  }
  .veh svg{opacity:.7;transition:opacity .18s}
  .veh:hover{border-color:var(--muted-2);color:var(--ink)}
  .veh.active{
    border-color:var(--gold-2);color:var(--ink);
    background:linear-gradient(145deg,rgba(231,184,75,.14),rgba(231,184,75,.04));
    box-shadow:inset 0 0 0 1px rgba(231,184,75,.3);
  }
  .veh.active svg{opacity:1}
  .slider-val{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:12px}
  .slider-val .amount{font-family:'JetBrains Mono';font-size:24px;font-weight:700;color:var(--gold-soft)}
  .slider-val .amount small{font-size:14px;color:var(--muted);font-weight:500;margin-left:4px}
  input[type=range]{
    -webkit-appearance:none;width:100%;height:6px;border-radius:99px;
    background:linear-gradient(90deg,var(--gold-2),var(--gold-soft));
    background-size:50% 100%;background-repeat:no-repeat;
    outline:none;cursor:pointer;
  }
  input[type=range]::-webkit-slider-thumb{
    -webkit-appearance:none;width:24px;height:24px;border-radius:50%;
    background:radial-gradient(circle at 35% 30%,#fff,var(--gold-soft) 55%,var(--gold-2));
    border:2px solid #1a1712;box-shadow:0 4px 14px -2px rgba(231,184,75,.7);
  }
  input[type=range]::-moz-range-thumb{
    width:22px;height:22px;border-radius:50%;border:2px solid #1a1712;
    background:var(--gold-soft);box-shadow:0 4px 14px -2px rgba(231,184,75,.7);
  }
  .range-ends{display:flex;justify-content:space-between;font-size:11.5px;color:var(--muted-2);margin-top:8px;font-family:'JetBrains Mono'}
  /* ---------- ticker ---------- */
  .ticker{border-top:1px solid var(--line);border-bottom:1px solid var(--line);
    overflow:hidden;background:var(--bg-2);position:relative;z-index:1}
  .ticker-track{display:flex;white-space:nowrap;width:max-content;animation:ticker-scroll 34s linear infinite}
  .ticker:hover .ticker-track{animation-play-state:paused}
  .ticker-track span{font-family:'Archivo Black',sans-serif;text-transform:uppercase;
    font-size:15px;letter-spacing:.03em;color:var(--muted-2);
    padding:16px 30px;display:inline-flex;align-items:center;gap:30px}
  .ticker-track span::after{content:"◆";color:var(--gold);font-size:9px}
  @keyframes ticker-scroll{to{transform:translateX(-50%)}}
  @media(prefers-reduced-motion:reduce){.ticker-track{animation:none}}
  /* ---------- section shell ---------- */
  section.block{position:relative;z-index:1;padding:88px 0}
  .sec-head{max-width:660px;margin-bottom:52px}
  .sec-eyebrow{font-size:12.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin-bottom:16px;display:flex;align-items:center;gap:12px}
  .sec-eyebrow::before{content:"";width:28px;height:1px;background:var(--gold-2)}
  .sec-head h2{font-family:'Archivo Black';font-size:clamp(30px,4.6vw,50px);text-transform:uppercase;line-height:1;letter-spacing:-.01em;margin-bottom:18px}
  .sec-head p{font-size:17.5px;color:var(--muted)}
  /* ---------- steps ---------- */
  .steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
  @media(max-width:820px){.steps{grid-template-columns:1fr}}
  .step{
    position:relative;padding:32px 28px;border-radius:20px;
    background:var(--panel);border:1px solid var(--line);
    transition:transform .3s,border-color .3s;
  }
  .step:hover{transform:translateY(-4px);border-color:var(--gold-2)}
  .step .num{font-family:'JetBrains Mono';font-size:13px;font-weight:700;color:var(--gold);letter-spacing:.1em}
  .step .num::after{content:"";display:block;width:34px;height:2px;background:linear-gradient(90deg,var(--gold),transparent);margin-top:14px;margin-bottom:22px}
  .step h4{font-size:20px;font-weight:700;margin-bottom:10px}
  .step p{font-size:15px;color:var(--muted)}
  /* ---------- offer cards ---------- */
  .offers{display:grid;grid-template-columns:1fr 1fr;gap:22px}
  @media(max-width:820px){.offers{grid-template-columns:1fr}}
  .offer{
    position:relative;padding:38px 34px;border-radius:22px;
    background:linear-gradient(165deg,var(--panel-2),var(--panel));
    border:1px solid var(--line);overflow:hidden;
  }
  .offer.feature{border-color:rgba(231,184,75,.35)}
  .offer.feature::before{
    content:"";position:absolute;inset:0;
    background:radial-gradient(400px 200px at 100% 0,rgba(231,184,75,.12),transparent 60%);
    pointer-events:none;
  }
  .offer .tag{
    display:inline-block;font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;
    color:var(--gold);border:1px solid var(--line);border-radius:999px;
    padding:6px 13px;margin-bottom:20px;
  }
  .offer.feature .tag{color:#000;background:linear-gradient(145deg,var(--gold-soft),var(--gold-2));border-color:transparent;font-weight:700}
  .offer h3{font-family:'Archivo Black';font-size:27px;text-transform:uppercase;margin-bottom:14px}
  .offer > p{font-size:15.5px;color:var(--muted);margin-bottom:24px}
  .offer ul{list-style:none;display:flex;flex-direction:column;gap:13px}
  .offer li{display:flex;gap:12px;align-items:flex-start;font-size:15px}
  .offer li svg{flex-shrink:0;margin-top:3px}
  .offer-link{
    display:inline-flex;align-items:center;gap:9px;margin-top:26px;
    padding:13px 22px;border-radius:12px;font-weight:700;font-size:15px;
    transition:transform .2s,box-shadow .2s,background .2s,border-color .2s;
  }
  .offer.feature .offer-link{
    background:linear-gradient(145deg,var(--gold-soft),var(--gold-2));color:#000;
    box-shadow:0 10px 26px -10px rgba(231,184,75,.55);
  }
  .offer.feature .offer-link:hover{transform:translateY(-2px);box-shadow:0 16px 34px -10px rgba(231,184,75,.7)}
  .offer:not(.feature) .offer-link{border:1px solid var(--line);color:var(--ink)}
  .offer:not(.feature) .offer-link:hover{border-color:var(--gold-2);background:rgba(231,184,75,.05)}
  /* ---------- why grid ---------- */
  .why{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:20px;overflow:hidden}
  @media(max-width:820px){.why{grid-template-columns:1fr 1fr}}
  @media(max-width:480px){.why{grid-template-columns:1fr}}
  .why-cell{background:var(--bg-2);padding:32px 26px}
  .why-cell .ic{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(145deg,rgba(231,184,75,.16),rgba(231,184,75,.04));border:1px solid rgba(231,184,75,.2);margin-bottom:18px}
  .why-cell h4{font-size:17px;font-weight:700;margin-bottom:8px}
  .why-cell p{font-size:14px;color:var(--muted)}
  /* ---------- vehicle strip ---------- */
  .veh-strip{display:flex;flex-wrap:wrap;gap:12px;margin-top:8px}
  .veh-pill{
    display:inline-flex;align-items:center;gap:10px;
    padding:12px 20px;border-radius:999px;border:1px solid var(--line);
    background:var(--panel);font-size:15px;font-weight:500;color:var(--muted);
  }
  .veh-pill svg{opacity:.75}
  /* ---------- FAQ ---------- */
  .faq-list{display:flex;flex-direction:column;gap:12px;max-width:820px}
  .faq-item{border:1px solid var(--line);border-radius:14px;background:var(--panel);overflow:hidden;transition:border-color .2s}
  .faq-item[open]{border-color:var(--gold-2)}
  .faq-item summary{
    list-style:none;cursor:pointer;padding:22px 24px;
    display:flex;justify-content:space-between;align-items:center;gap:16px;
    font-size:17px;font-weight:600;color:var(--ink);
  }
  .faq-item summary::-webkit-details-marker{display:none}
  .faq-item summary .q-ico{
    flex-shrink:0;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;
    border:1px solid var(--gold-2);color:var(--gold-soft);font-size:18px;transition:transform .25s;
  }
  .faq-item[open] summary .q-ico{transform:rotate(45deg)}
  .faq-item .faq-body{padding:0 24px 22px;color:var(--muted);font-size:15.5px;line-height:1.65}
  /* ---------- final CTA ---------- */
  .final{
    position:relative;z-index:1;margin:40px auto 0;
    max-width:1180px;
  }
  .final-inner{
    position:relative;overflow:hidden;
    border-radius:28px;padding:64px 48px;
    background:linear-gradient(150deg,#1a1611,#0d0b09);
    border:1px solid rgba(231,184,75,.3);
    text-align:center;
  }
  @media(max-width:560px){.final-inner{padding:44px 20px;border-radius:20px}}
  .final-inner::before{
    content:"";position:absolute;inset:0;
    background:radial-gradient(600px 300px at 50% -20%,rgba(231,184,75,.2),transparent 60%);
    pointer-events:none;
  }
  .final-inner h2{font-family:'Archivo Black';font-size:clamp(30px,5.5vw,58px);text-transform:uppercase;line-height:.95;margin-bottom:18px;position:relative}
  .final-inner h2 .g{background:linear-gradient(180deg,var(--gold-soft),var(--gold-2));-webkit-background-clip:text;background-clip:text;color:transparent}
  .final-inner p{font-size:18px;color:var(--muted);max-width:540px;margin:0 auto 34px;position:relative}
  .phone-big{
    display:inline-flex;align-items:center;gap:13px;position:relative;
    font-family:'Archivo Black';font-size:clamp(24px,4.4vw,40px);
    color:var(--white);letter-spacing:.01em;white-space:nowrap;max-width:100%;
    padding:12px 28px 12px 20px;border-radius:999px;
    background:linear-gradient(145deg,rgba(231,184,75,.14),rgba(231,184,75,.03));
    border:1px solid rgba(231,184,75,.35);
    transition:transform .2s,box-shadow .2s;
  }
  .phone-big:hover{transform:scale(1.02);box-shadow:0 20px 50px -18px rgba(231,184,75,.6)}
  .phone-big .ring{
    width:clamp(42px,6vw,52px);height:clamp(42px,6vw,52px);border-radius:50%;
    display:grid;place-items:center;flex-shrink:0;
    background:linear-gradient(145deg,var(--gold-soft),var(--gold-2));
  }
  @media(max-width:480px){
    .phone-big{gap:11px;padding:11px 22px 11px 14px;font-size:clamp(24px,8.4vw,34px)}
    .phone-big .ring{width:40px;height:40px}
    .phone-big .ring svg{width:20px;height:20px}
  }
  @media(max-width:340px){
    .phone-big{gap:9px;padding:10px 16px 10px 12px;font-size:23px}
  }
  .final-sub{margin-top:22px;font-size:13.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-soft);position:relative}
  /* ---------- footer ---------- */
  footer{position:relative;z-index:1;border-top:1px solid var(--line);margin-top:80px;padding:40px 0}
  .foot{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:32px;align-items:start}
  .foot .brand small{color:var(--muted-2)}
  .foot-col h4{font-size:12.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--gold-soft);margin-bottom:14px;font-weight:700}
  .foot-col{display:flex;flex-direction:column;gap:10px;font-size:14.5px}
  .foot-col a,.foot-col span{color:var(--muted);}
  .foot-col a:hover{color:var(--gold-soft)}
  .foot-bottom{grid-column:1/-1;margin-top:28px;padding-top:20px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:13px;color:var(--muted-2)}
  .foot-bottom a:hover{color:var(--gold-soft)}
  @media(max-width:760px){.foot{grid-template-columns:1fr 1fr}}
  @media(max-width:480px){.foot{grid-template-columns:1fr}}
  .foot-col a,.foot-col span{overflow-wrap:anywhere;word-break:break-word}
  /* ---------- floating actions (mobile) ---------- */
  .float-actions{
    position:fixed;bottom:20px;left:50%;transform:translateX(-50%);z-index:60;
    display:none;align-items:center;gap:14px;
    opacity:0;pointer-events:none;transition:opacity .3s,transform .3s;
  }
  .float-actions.show{opacity:1;pointer-events:auto}
  @media(max-width:860px){.float-actions{display:inline-flex}}
  .float-btn{width:56px;height:56px;border-radius:50%;display:grid;place-items:center;flex-shrink:0}
  .float-call{background:linear-gradient(145deg,var(--gold-soft),var(--gold-2));box-shadow:0 14px 40px -8px rgba(0,0,0,.7),0 0 0 1px rgba(231,184,75,.4)}
  /* ---------- reveal ---------- */
  .reveal{opacity:0;transform:translateY(24px);transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1)}
  .reveal.in{opacity:1;transform:none}
  @media(prefers-reduced-motion:reduce){
    .reveal{opacity:1;transform:none;transition:none}
    *{animation:none!important}
    html{scroll-behavior:auto}
  }

  /* ---------- floating call pill (legal pages) ---------- */
  .float-pill{
    position:fixed;bottom:20px;left:50%;transform:translateX(-50%);z-index:60;
    display:none;align-items:center;gap:10px;
    padding:14px 26px;border-radius:999px;
    background:linear-gradient(145deg,var(--gold-soft),var(--gold-2));
    color:#000;font-weight:700;font-size:16px;
    box-shadow:0 14px 40px -8px rgba(0,0,0,.7),0 0 0 1px rgba(231,184,75,.4);
    opacity:0;pointer-events:none;transition:opacity .3s,transform .3s;
  }
  .float-pill.show{opacity:1;pointer-events:auto}
  @media(max-width:860px){.float-pill{display:inline-flex}}

  /* ---------- skip link ---------- */
  .skip-link{
    position:absolute;left:-9999px;top:0;z-index:200;
    padding:12px 20px;border-radius:0 0 12px 0;
    background:var(--gold-soft);color:#000;font-weight:700;font-size:15px;
  }
  .skip-link:focus{left:0}
  :focus-visible{outline:2px solid var(--gold-soft);outline-offset:3px}
