/* =========================================================
   Cannock Caravan & Motorhome Buyers
   Design tokens + styles  (mobile-first, no framework)
   ========================================================= */

:root {
  /* Brand navy (sampled from the logo) + shades */
  --navy-900:#0E1A30;
  --navy-800:#11203B;
  --navy-700:#16243F;   /* primary brand navy */
  --navy-600:#1B2E50;
  --navy-500:#213A63;
  --blue-400:#3360A8;
  --blue-100:#E8EEF7;

  /* Gold accent (from the logo crown/underlines) — used sparingly */
  --gold:#C9A24B;
  --gold-600:#B0863A;
  --gold-100:#F7F0DD;

  /* Neutrals */
  --ink:#0F1722;
  --body:#3C4658;
  --muted:#6B7688;
  --line:#E3E8F0;
  --paper:#F4F7FB;
  --soft:#EDF2F9;
  --white:#FFFFFF;
  --danger:#C5384B;

  --font-head:'Montserrat', system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  --font-body:'Inter', system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;

  --r-sm:10px; --r:14px; --r-lg:20px; --r-pill:999px;
  --shadow-sm:0 1px 3px rgba(15,23,34,.08);
  --shadow-md:0 10px 30px -12px rgba(15,23,34,.25);
  --shadow-lg:0 30px 60px -20px rgba(14,26,48,.45);
  --container:1180px;
  --header-h:74px;
}

/* ----------------------------- Reset ----------------------------- */
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth; scroll-padding-top:calc(var(--header-h) + 12px); -webkit-text-size-adjust:100%}
body{
  margin:0; font-family:var(--font-body); color:var(--body);
  font-size:1.0625rem; line-height:1.65; background:var(--white);
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%; height:auto; display:block}
h1,h2,h3,h4{font-family:var(--font-head); color:var(--ink); line-height:1.15; margin:0 0 .5em}
p{margin:0 0 1rem}
a{color:var(--blue-400); text-decoration:none}
ul,ol{margin:0; padding:0; list-style:none}
button{font-family:inherit}
:focus-visible{outline:3px solid var(--gold); outline-offset:2px; border-radius:4px}

.container{width:100%; max-width:var(--container); margin-inline:auto; padding-inline:clamp(1rem,4vw,2rem)}
.container--narrow{max-width:820px}
.text-gold{color:var(--gold)}
.muted{color:var(--muted); font-weight:400}
.req{color:var(--gold-600)}

.skip-link{position:absolute; left:-9999px; top:0; background:var(--navy-700); color:#fff; padding:.7rem 1rem; z-index:200; border-radius:0 0 var(--r-sm) 0}
.skip-link:focus{left:0}

/* ----------------------------- Buttons ----------------------------- */
.btn{
  --pad-y:.85rem; --pad-x:1.5rem; --fs:1rem;
  display:inline-flex; align-items:center; justify-content:center; gap:.5rem;
  font-family:var(--font-head); font-weight:700; font-size:var(--fs);
  padding:var(--pad-y) var(--pad-x); border-radius:var(--r-pill);
  border:1.5px solid transparent; cursor:pointer; text-align:center;
  transition:transform .15s ease, background .2s ease, box-shadow .2s ease, border-color .2s ease;
  white-space:nowrap;
}
.btn svg{flex:none}
.btn-sm{--pad-y:.6rem; --pad-x:1.1rem; --fs:.9rem}
.btn-lg{--pad-y:1rem; --pad-x:2rem; --fs:1.08rem}

.btn-primary{background:var(--navy-700); color:#fff}
.btn-primary:hover{background:var(--navy-900); transform:translateY(-2px); box-shadow:var(--shadow-md)}
.btn-gold{background:var(--gold); color:var(--navy-900); box-shadow:0 8px 20px -8px rgba(201,162,75,.7)}
.btn-gold:hover{background:var(--gold-600); transform:translateY(-2px)}
.btn-outline-light{background:transparent; color:#fff; border-color:rgba(255,255,255,.45)}
.btn-outline-light:hover{background:rgba(255,255,255,.12); border-color:#fff}
.btn-ghost{background:transparent; color:var(--navy-700); border-color:var(--line)}
.btn-ghost:hover{background:var(--paper)}
/* author rule must restore [hidden] since .btn sets display */
.btn[hidden]{display:none}

/* ----------------------------- Eyebrow / headings ----------------------------- */
.eyebrow{
  display:inline-flex; align-items:center; gap:.5rem;
  font-family:var(--font-head); font-weight:700; font-size:.78rem;
  letter-spacing:.09em; text-transform:uppercase; color:var(--blue-400);
  margin:0 0 1rem;
}
.eyebrow .dot{width:8px; height:8px; border-radius:50%; background:var(--gold)}
.eyebrow--gold{color:var(--gold)}
.eyebrow--center{justify-content:center}

/* ----------------------------- Header ----------------------------- */
.site-header{
  position:sticky; top:0; z-index:100; background:rgba(255,255,255,.96);
  backdrop-filter:saturate(140%) blur(8px); border-bottom:1px solid var(--line);
  transition:box-shadow .25s ease;
}
.site-header.is-scrolled{box-shadow:0 6px 24px -16px rgba(15,23,34,.5)}
.site-header__inner{display:flex; align-items:center; gap:1.5rem; height:var(--header-h)}
.brand{display:flex; align-items:center}
.brand__logo{height:60px; width:auto}
.main-nav{display:none; gap:1.6rem; margin-left:auto}
.main-nav a{font-family:var(--font-head); font-weight:600; font-size:.95rem; color:var(--navy-700)}
.main-nav a:hover{color:var(--blue-400)}
.site-header__cta{display:flex; align-items:center; gap:.85rem; margin-left:auto}
.header-phone{display:none; align-items:center; gap:.45rem; font-family:var(--font-head); font-weight:700; color:var(--navy-700)}
.header-phone:hover{color:var(--blue-400)}

@media (min-width:920px){
  .main-nav{display:flex}
  .site-header__cta{margin-left:0}
  .header-phone{display:inline-flex}
}

/* ----------------------------- Hero ----------------------------- */
.hero{
  position:relative; color:#fff;
  background:
    radial-gradient(1200px 600px at 12% -10%, #244073 0%, transparent 55%),
    radial-gradient(900px 500px at 100% 0%, #1d335a 0%, transparent 50%),
    linear-gradient(160deg, var(--navy-800) 0%, var(--navy-900) 100%);
  padding:clamp(2.5rem,6vw,4.5rem) 0 clamp(3rem,7vw,5rem);
  overflow:hidden;
}
.hero::after{ /* subtle gold hairline at the bottom */
  content:""; position:absolute; left:0; right:0; bottom:0; height:4px;
  background:linear-gradient(90deg, transparent, var(--gold), transparent); opacity:.6;
}
.hero__grid{display:grid; gap:clamp(2rem,5vw,3.5rem); align-items:start}
.hero__title{
  color:#fff; font-weight:800; font-size:clamp(2.1rem,5.2vw,3.4rem);
  letter-spacing:-.01em; margin-bottom:1rem;
}
.hero__lead{color:rgba(255,255,255,.86); font-size:clamp(1.05rem,1.6vw,1.2rem); max-width:34ch; margin-bottom:1.6rem}
.trust-chips{display:flex; flex-wrap:wrap; gap:.6rem .9rem; margin:0 0 1.8rem}
.trust-chips li{
  font-family:var(--font-head); font-weight:600; font-size:.92rem; color:#fff;
  background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.16);
  padding:.45rem .85rem; border-radius:var(--r-pill);
}
.hero__actions{display:flex; flex-wrap:wrap; gap:.85rem; margin-bottom:1.1rem}
.hero__microcopy{font-size:.9rem; color:rgba(255,255,255,.6); margin:0}

@media (min-width:980px){
  .hero__grid{grid-template-columns:1.05fr .95fr; gap:3.5rem}
}

/* ----------------------------- Quote card / form ----------------------------- */
.quote-card{
  background:#fff; color:var(--body); border-radius:var(--r-lg);
  box-shadow:var(--shadow-lg); overflow:hidden; align-self:start;
  border:1px solid rgba(255,255,255,.5);
}
.quote-card__head{padding:1.4rem 1.5rem 1.25rem; background:linear-gradient(180deg,#fff, #fbfcfe); border-bottom:1px solid var(--line)}
.quote-card__title{font-size:1.4rem; margin:0 0 .15rem}
.quote-card__sub{font-size:.92rem; color:var(--muted); margin:0 0 1rem}
.progress{height:8px; background:var(--soft); border-radius:var(--r-pill); overflow:hidden}
.progress__bar{height:100%; width:20%; border-radius:var(--r-pill); background:linear-gradient(90deg,var(--gold),var(--gold-600)); transition:width .45s cubic-bezier(.4,0,.2,1)}
.progress__meta{display:flex; justify-content:space-between; font-size:.8rem; color:var(--muted); margin-top:.5rem; font-weight:600}

.quote-form{padding:1.4rem 1.5rem 1.6rem}
.hp{position:absolute; left:-9999px; height:0; overflow:hidden}
.form-status{display:none; padding:.8rem 1rem; border-radius:var(--r-sm); font-size:.92rem; margin-bottom:1rem}
.form-status.is-error{display:block; background:#fdecee; color:var(--danger); border:1px solid #f3c4cb}

/* steps */
.step{border:0; padding:0; margin:0; min-inline-size:0; animation:fadeStep .35s ease}
.js .step{display:none}
.js .step.is-active{display:block}
.no-js .step{display:block; margin-bottom:1.5rem; border-top:1px solid var(--line); padding-top:1rem}
@keyframes fadeStep{from{opacity:0; transform:translateY(8px)} to{opacity:1; transform:none}}
.step__title{font-family:var(--font-head); font-weight:700; font-size:1.18rem; color:var(--ink); margin:0 0 .25rem; padding:0}
.step__hint{font-size:.9rem; color:var(--muted); margin:0 0 1.1rem}

/* fields */
.field{margin-bottom:1rem}
.field__label{display:block; font-family:var(--font-head); font-weight:600; font-size:.92rem; color:var(--navy-700); margin-bottom:.4rem}
.input{
  width:100%; font:inherit; color:var(--ink); background:#fff;
  padding:.8rem .95rem; border:1.5px solid var(--line); border-radius:var(--r-sm);
  transition:border-color .15s ease, box-shadow .15s ease;
}
.input::placeholder{color:#9aa4b2}
.input:focus{outline:none; border-color:var(--blue-400); box-shadow:0 0 0 4px rgba(51,96,168,.14)}
.input:hover{border-color:#cdd6e2}
select.input{appearance:none; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%2316243F' stroke-width='3'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E"); background-repeat:no-repeat; background-position:right .9rem center; padding-right:2.4rem}
.input.invalid{border-color:var(--danger); box-shadow:0 0 0 4px rgba(197,56,75,.12)}
.field__error{color:var(--danger); font-size:.82rem; font-weight:600; margin:.35rem 0 0; min-height:0}

.input-prefix{position:relative; display:flex; align-items:center}
.input-prefix__symbol{position:absolute; left:.95rem; font-weight:700; color:var(--navy-700)}
.input-prefix .input{padding-left:1.9rem}

/* choice grid (condition) */
.choice-grid{display:grid; grid-template-columns:1fr 1fr; gap:.7rem}
.choice{position:relative; cursor:pointer}
.choice input{position:absolute; opacity:0; inset:0; cursor:pointer}
.choice__body{
  display:block; padding:.9rem 1rem; border:1.5px solid var(--line); border-radius:var(--r);
  background:#fff; transition:all .15s ease; height:100%;
}
.choice__title{display:block; font-family:var(--font-head); font-weight:700; color:var(--ink); margin-bottom:.15rem}
.choice__desc{display:block; font-size:.82rem; color:var(--muted); line-height:1.4}
.choice:hover .choice__body{border-color:#cdd6e2}
.choice input:checked + .choice__body{border-color:var(--navy-700); background:var(--blue-100); box-shadow:0 0 0 1px var(--navy-700) inset}
.choice input:focus-visible + .choice__body{outline:3px solid var(--gold); outline-offset:2px}

/* checkboxes */
.check{display:flex; align-items:flex-start; gap:.6rem; font-size:.92rem; line-height:1.45; cursor:pointer; margin-top:.4rem}
.check--inline{margin-top:.2rem}
.check input{margin-top:.2rem; width:1.15rem; height:1.15rem; accent-color:var(--navy-700); flex:none}

/* form nav */
.form-nav{display:flex; align-items:center; gap:.8rem; margin-top:1.4rem}
.form-nav__next, .form-nav__submit{margin-left:auto}
.quote-form__reassure{font-size:.8rem; color:var(--muted); text-align:center; margin:1rem 0 0}
/* No-JS fallback: all steps already show; hide stepper buttons, show submit */
.no-js #prevBtn, .no-js .form-nav__next{display:none}
.no-js .form-nav__submit{display:inline-flex}

/* ----------------------------- Sections ----------------------------- */
.section{padding:clamp(3rem,7vw,5.5rem) 0}
.section--soft{background:var(--paper)}
.section--navy{background:linear-gradient(160deg,var(--navy-700),var(--navy-900)); color:#fff}
.section__head{max-width:680px; margin:0 auto clamp(2rem,4vw,3rem); text-align:center}
.section__title{font-size:clamp(1.7rem,3.4vw,2.5rem); font-weight:800; letter-spacing:-.01em}
.section--navy .section__title{color:#fff}
.section__title--left{text-align:left}
.section__intro{font-size:1.1rem; color:var(--muted); margin:0}
.section__intro--light{color:rgba(255,255,255,.8)}
.section__cta{text-align:center; margin-top:clamp(2rem,4vw,2.8rem)}

/* trust bar */
.trustbar{background:var(--navy-900); color:#fff; padding:1.5rem 0}
.trustbar__grid{display:grid; grid-template-columns:1fr 1fr; gap:1.4rem}
.trustbar__item{display:flex; flex-direction:column; align-items:center; text-align:center; gap:.2rem; padding:.4rem}
.trustbar__item svg{width:30px; height:30px; color:var(--gold)}
.trustbar__item h3{color:#fff; font-size:1rem; margin:.3rem 0 .1rem}
.trustbar__item p{font-size:.85rem; color:rgba(255,255,255,.7); margin:0}
@media (min-width:760px){.trustbar__grid{grid-template-columns:repeat(4,1fr)}}

/* cards (why us) */
.cards{display:grid; grid-template-columns:1fr; gap:1.2rem}
.card{
  background:#fff; border:1px solid var(--line); border-radius:var(--r-lg); padding:1.6rem;
  box-shadow:var(--shadow-sm); transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.card:hover{transform:translateY(-4px); box-shadow:var(--shadow-md); border-color:#d6dfeb}
.card__icon{display:inline-flex; align-items:center; justify-content:center; width:54px; height:54px; border-radius:14px; background:var(--blue-100); color:var(--navy-700); margin-bottom:1rem}
.card__icon svg{width:28px; height:28px}
.card h3{font-size:1.2rem; margin-bottom:.4rem}
.card p{margin:0; color:var(--muted)}
@media (min-width:640px){.cards{grid-template-columns:1fr 1fr}}
@media (min-width:980px){.cards{grid-template-columns:repeat(3,1fr)}}

/* steps (how it works) */
.steps{display:grid; grid-template-columns:1fr; gap:1.4rem; counter-reset:step}
.step-card{position:relative; background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.12); border-radius:var(--r-lg); padding:1.8rem 1.6rem}
.step-card__num{font-family:var(--font-head); font-weight:800; font-size:2.4rem; color:var(--gold); line-height:1; display:block; margin-bottom:.6rem}
.step-card h3{color:#fff; font-size:1.25rem}
.step-card p{color:rgba(255,255,255,.78); margin:0}
@media (min-width:820px){.steps{grid-template-columns:repeat(3,1fr)}}

/* what we buy */
.buy-grid{display:grid; grid-template-columns:1fr; gap:1.2rem}
.buy-card{text-align:center; padding:2rem 1.5rem; border:1px solid var(--line); border-radius:var(--r-lg); background:#fff; transition:transform .2s ease, box-shadow .2s ease}
.buy-card:hover{transform:translateY(-4px); box-shadow:var(--shadow-md)}
.buy-card__icon{display:inline-flex; align-items:center; justify-content:center; width:72px; height:72px; border-radius:50%; background:var(--navy-700); color:#fff; margin-bottom:1rem}
.buy-card__icon svg{width:38px; height:38px}
.buy-card h3{font-size:1.3rem; margin-bottom:.3rem}
.buy-card p{margin:0; color:var(--muted)}
.buy-note{text-align:center; margin:2rem auto 0; max-width:620px; font-size:.95rem; color:var(--muted); background:var(--paper); border:1px dashed var(--line); padding:.9rem 1.2rem; border-radius:var(--r)}
@media (min-width:760px){.buy-grid{grid-template-columns:repeat(3,1fr)}}

/* reviews */
.reviews{display:grid; grid-template-columns:1fr; gap:1.3rem}
.review{margin:0; background:#fff; border:1px solid var(--line); border-radius:var(--r-lg); padding:1.6rem; box-shadow:var(--shadow-sm)}
.stars{color:var(--gold); font-size:1.1rem; letter-spacing:.1em; margin-bottom:.7rem}
.review blockquote{margin:0 0 1rem; font-size:1.02rem; color:var(--ink); line-height:1.6}
.review figcaption{display:flex; flex-direction:column}
.review__name{font-family:var(--font-head); font-weight:700; color:var(--navy-700)}
.review__loc{font-size:.85rem; color:var(--muted)}
@media (min-width:820px){.reviews{grid-template-columns:repeat(3,1fr)}}

/* areas */
.areas__grid{display:grid; grid-template-columns:1fr; gap:2rem; align-items:center}
.areas__copy p{color:var(--muted); margin-bottom:1.5rem}
.areas__list{display:grid; grid-template-columns:1fr 1fr; gap:.7rem}
.areas__list li{display:flex; align-items:center; gap:.55rem; font-family:var(--font-head); font-weight:600; color:var(--navy-700); background:var(--paper); border:1px solid var(--line); border-radius:var(--r-sm); padding:.7rem .9rem; font-size:.95rem}
.areas__list li::before{content:"📍"; font-size:.9rem}
@media (min-width:860px){.areas__grid{grid-template-columns:1fr 1fr; gap:3.5rem}}

/* faq */
.faq{display:flex; flex-direction:column; gap:.7rem}
.faq__item{background:#fff; border:1px solid var(--line); border-radius:var(--r); overflow:hidden}
.faq__q{
  width:100%; display:flex; justify-content:space-between; align-items:center; gap:1rem;
  background:none; border:0; cursor:pointer; text-align:left; padding:1.1rem 1.3rem;
  font-family:var(--font-head); font-weight:700; font-size:1.02rem; color:var(--navy-700);
}
.faq__icon{position:relative; flex:none; width:18px; height:18px}
.faq__icon::before,.faq__icon::after{content:""; position:absolute; background:var(--gold-600); border-radius:2px; transition:transform .25s ease}
.faq__icon::before{top:8px; left:0; width:18px; height:2.5px}
.faq__icon::after{left:8px; top:0; width:2.5px; height:18px}
.faq__q[aria-expanded="true"] .faq__icon::after{transform:scaleY(0)}
.faq__a{max-height:0; overflow:hidden; transition:max-height .3s ease}
.faq__a p{margin:0; padding:0 1.3rem 1.2rem; color:var(--muted)}

/* cta band */
.cta-band{background:linear-gradient(135deg,var(--navy-700),var(--navy-900)); color:#fff; padding:clamp(2.5rem,5vw,3.5rem) 0; position:relative}
.cta-band::before{content:""; position:absolute; inset:0; background:radial-gradient(600px 200px at 80% 0,rgba(201,162,75,.18),transparent 60%); pointer-events:none}
.cta-band__inner{position:relative; display:grid; gap:1.5rem; align-items:center; text-align:center}
.cta-band h2{color:#fff; font-size:clamp(1.6rem,3vw,2.2rem); margin-bottom:.4rem}
.cta-band p{color:rgba(255,255,255,.82); margin:0}
.cta-band__actions{display:flex; flex-wrap:wrap; gap:.85rem; justify-content:center}
@media (min-width:880px){
  .cta-band__inner{grid-template-columns:1fr auto; text-align:left}
  .cta-band__actions{justify-content:flex-end}
}

/* ----------------------------- Footer ----------------------------- */
.site-footer{background:var(--navy-900); color:rgba(255,255,255,.72); padding:clamp(2.5rem,5vw,3.5rem) 0 0; font-size:.95rem}
.site-footer__grid{display:grid; grid-template-columns:1fr; gap:2rem; padding-bottom:2.5rem}
.site-footer__logo{height:60px; width:auto; margin-bottom:1rem}
.site-footer__brand p{margin:0; max-width:34ch}
.site-footer h4{color:#fff; font-size:1rem; margin-bottom:.9rem}
.site-footer__list li{margin-bottom:.55rem}
.site-footer a{color:rgba(255,255,255,.78)}
.site-footer a:hover{color:var(--gold)}
.site-footer__areas{margin:0; line-height:1.7}
.site-footer__bar{border-top:1px solid rgba(255,255,255,.1); padding:1.2rem 0}
.site-footer__bar-inner{display:flex; flex-direction:column; gap:.4rem; font-size:.82rem; color:rgba(255,255,255,.5)}
.site-footer__bar-inner p{margin:0}
@media (min-width:760px){
  .site-footer__grid{grid-template-columns:2fr 1.2fr 1fr 1.4fr}
  .site-footer__bar-inner{flex-direction:row; justify-content:space-between}
}

/* ----------------------------- Mobile sticky bar ----------------------------- */
.mobile-bar{
  position:fixed; left:0; right:0; bottom:0; z-index:90; display:flex; gap:.6rem;
  padding:.6rem .7rem calc(.6rem + env(safe-area-inset-bottom)); background:rgba(255,255,255,.97);
  backdrop-filter:blur(8px); border-top:1px solid var(--line); box-shadow:0 -8px 24px -16px rgba(15,23,34,.5);
}
.mobile-bar a{flex:1; display:flex; align-items:center; justify-content:center; gap:.4rem; padding:.85rem; border-radius:var(--r-pill); font-family:var(--font-head); font-weight:700; font-size:.98rem}
.mobile-bar__call{background:var(--paper); color:var(--navy-700); border:1.5px solid var(--line)}
.mobile-bar__cta{background:var(--gold); color:var(--navy-900)}
body{padding-bottom:76px}
@media (min-width:760px){.mobile-bar{display:none} body{padding-bottom:0}}

/* ----------------------------- Thank-you page ----------------------------- */
.thanks-body{background:var(--paper)}
.thanks{padding:clamp(2.5rem,7vw,5rem) 0}
.thanks__inner{text-align:center}
.thanks__badge{display:inline-flex; align-items:center; justify-content:center; width:88px; height:88px; border-radius:50%; background:var(--navy-700); color:var(--gold); margin-bottom:1.4rem; box-shadow:var(--shadow-md); animation:pop .45s ease}
@keyframes pop{0%{transform:scale(.6); opacity:0} 60%{transform:scale(1.06)} 100%{transform:scale(1); opacity:1}}
.thanks h1{font-size:clamp(1.8rem,4vw,2.6rem)}
.thanks__lead{font-size:1.15rem; color:var(--muted); max-width:48ch; margin:0 auto 2.2rem}
.thanks__next{background:#fff; border:1px solid var(--line); border-radius:var(--r-lg); padding:1.8rem; text-align:left; box-shadow:var(--shadow-sm); max-width:620px; margin:0 auto 2.2rem}
.thanks__next h2{font-size:1.25rem; margin-bottom:1rem; text-align:center}
.thanks__steps{counter-reset:t; display:flex; flex-direction:column; gap:1rem}
.thanks__steps li{position:relative; padding-left:2.6rem; color:var(--muted)}
.thanks__steps li::before{counter-increment:t; content:counter(t); position:absolute; left:0; top:-2px; width:1.8rem; height:1.8rem; display:flex; align-items:center; justify-content:center; background:var(--blue-100); color:var(--navy-700); font-family:var(--font-head); font-weight:800; border-radius:50%; font-size:.9rem}
.thanks__steps strong{color:var(--ink)}
.thanks__cta-text{font-weight:600; color:var(--navy-700); margin-bottom:.8rem}
.thanks__actions{display:flex; flex-wrap:wrap; gap:.85rem; justify-content:center}

/* ----------------------------- Motion preferences ----------------------------- */
@media (prefers-reduced-motion:reduce){
  *{animation-duration:.001ms !important; transition-duration:.001ms !important; scroll-behavior:auto !important}
}
