@font-face{font-family:'Archivo Black';font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/archivo-black.woff2) format('woff2');}
@font-face{font-family:'Caveat';font-style:normal;font-weight:700;font-display:swap;src:url(/assets/fonts/caveat.woff2) format('woff2');}

:root{
  --navy:#a3390f; --navy-deep:#6b2308; --cream:#f2ede1; --paper:#ffffff; --ink:#1a1a1a; --ink-dim:#5a5a54;
  --red:#c73428; --line:rgba(163,57,15,.28); --line-soft:rgba(163,57,15,.16);
}
*{box-sizing:border-box;}
html,body{margin:0;padding:0;}
body{font-family:ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;background:var(--cream);color:var(--ink);-webkit-font-smoothing:antialiased;}
img{display:block;max-width:100%;}
a{color:inherit;}
button{font:inherit;}
.disp{font-family:'Archivo Black',ui-sans-serif,sans-serif;text-transform:uppercase;letter-spacing:-.01em;}
.hand{font-family:'Caveat',cursive;font-weight:700;}
.mono{font-family:ui-monospace,"SF Mono",Menlo,monospace;}
.container{max-width:1240px;margin:0 auto;padding:0 5vw;}
@media (prefers-reduced-motion:reduce){*{animation-duration:.001ms !important;transition-duration:.001ms !important;}}

/* ---------- top meta bar ---------- */
.metabar{background:var(--cream);border-bottom:1px solid var(--line);padding:8px 5vw;display:flex;justify-content:space-between;font-family:ui-monospace,monospace;font-size:10.5px;letter-spacing:.03em;color:var(--navy);gap:16px;flex-wrap:wrap;}
.metabar b{color:var(--red);}

/* ---------- header / nav ---------- */
.site-header{display:flex;align-items:center;justify-content:space-between;padding:16px 5vw;border-bottom:2px solid var(--ink);background:#fff;position:relative;z-index:40;}
.brand-lockup{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);}
.brand-name{font-family:'Archivo Black',sans-serif;font-size:19px;color:var(--navy);line-height:1;}
.brand-name small{display:block;font-family:ui-sans-serif,sans-serif;font-size:10px;letter-spacing:.1em;color:var(--ink);font-weight:700;margin-top:3px;text-transform:uppercase;}
.menu{display:flex;gap:26px;font-size:12.5px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;list-style:none;margin:0;padding:0;}
.menu a{text-decoration:none;color:var(--ink);}
.menu a.active,.menu a:hover{color:var(--navy);}
.nav-toggle{display:none;appearance:none;border:1px solid var(--ink);background:#fff;padding:8px 10px;font-size:18px;cursor:pointer;}
.btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;cursor:pointer;padding:13px 22px;font-size:13px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;border:none;min-height:44px;}
.btn.red{background:var(--red);color:#fff;}
.btn.red:hover{filter:brightness(1.08);}
.btn.outline{background:transparent;color:var(--ink);border:1.5px solid var(--ink);}
.btn.outline:hover{background:var(--ink);color:#fff;}
.btn.light{background:#fff;color:var(--red);}
.btn.light:hover{background:var(--cream);}
.btn.outline-light{background:transparent;color:#fff;border:1.5px solid #fff;}
.btn.outline-light:hover{background:rgba(255,255,255,.15);}
@media (max-width:900px){
  .menu{position:fixed;inset:0 0 0 auto;width:78vw;max-width:320px;background:#fff;flex-direction:column;gap:0;padding:80px 24px 24px;transform:translateX(100%);transition:transform .25s ease;box-shadow:-8px 0 24px rgba(0,0,0,.12);}
  .menu.open{transform:translateX(0);}
  .menu a{display:block;padding:16px 0;border-bottom:1px solid var(--line-soft);}
  .nav-toggle{display:block;}
  body.no-scroll{overflow:hidden;}
}

/* ---------- hero (inner pages: simple headline + photo) ---------- */
.hero-simple{display:grid;grid-template-columns:1.1fr .9fr;border-bottom:2px solid var(--ink);}
.hero-simple .hero-copy{padding:6vw 5vw;display:flex;flex-direction:column;justify-content:center;gap:16px;}
.hero-simple .eyebrow{font-family:ui-monospace,monospace;font-size:10.5px;letter-spacing:.1em;color:var(--navy);}
.hero-simple h1{font-family:'Archivo Black',sans-serif;text-transform:uppercase;font-size:clamp(1.7rem,3vw,2.5rem);line-height:1.06;margin:0;}
.hero-simple p{font-size:15px;line-height:1.6;color:var(--ink-dim);max-width:44ch;margin:0;}
.hero-simple .photo{position:relative;min-height:280px;}
.hero-simple .photo img{width:100%;height:100%;object-fit:cover;}
.breadcrumbs{font-family:ui-monospace,monospace;font-size:10.5px;color:var(--navy);letter-spacing:.02em;}
.breadcrumbs a{text-decoration:none;color:var(--navy);}
.breadcrumbs a:hover{text-decoration:underline;}
@media (max-width:820px){.hero-simple{grid-template-columns:1fr;}.hero-simple .photo{min-height:220px;order:-1;}}

.hero-plain{padding:5vw;border-bottom:2px solid var(--ink);display:flex;flex-direction:column;gap:14px;}
.hero-plain .eyebrow{font-family:ui-monospace,monospace;font-size:10.5px;letter-spacing:.1em;color:var(--navy);}
.hero-plain h1{font-family:'Archivo Black',sans-serif;text-transform:uppercase;font-size:clamp(1.6rem,3vw,2.3rem);line-height:1.06;margin:0;}
.hero-plain p{font-size:15px;line-height:1.6;color:var(--ink-dim);max-width:60ch;margin:0;}

/* ---------- checklist / usp ---------- */
.usp-check{display:flex;gap:14px;flex-wrap:wrap;}
.usp-check div{font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.02em;}
.usp-check div::before{content:"✓ ";color:var(--navy);}
.usp-row{display:grid;grid-template-columns:repeat(4,1fr);border-top:2px solid var(--ink);border-bottom:2px solid var(--ink);}
.usp-row .usp{padding:20px 22px;border-right:1px solid var(--line-soft);font-size:12.5px;color:var(--ink-dim);}
.usp-row .usp:last-child{border-right:none;}
.usp-row .usp b{display:block;font-family:'Archivo Black',sans-serif;font-size:14px;color:var(--ink);margin-bottom:4px;text-transform:uppercase;}
@media (max-width:820px){.usp-row{grid-template-columns:repeat(2,1fr);}.usp-row .usp:nth-child(2n){border-right:none;}}

/* ---------- standards badges ---------- */
.standards{display:flex;align-items:center;gap:16px;padding:26px 5vw;border-bottom:2px solid var(--ink);flex-wrap:wrap;}
.standards .eyebrow{width:100%;font-family:ui-monospace,monospace;font-size:11px;letter-spacing:.08em;color:var(--navy);margin-bottom:4px;}
.stamp{border:1.5px solid var(--red);color:var(--red);padding:10px 16px;font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.02em;text-align:center;line-height:1.3;}
.seal{margin-left:auto;width:70px;height:70px;border-radius:50%;border:1.5px solid var(--red);color:var(--red);display:grid;place-items:center;text-align:center;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.02em;line-height:1.25;flex:none;}

/* ---------- section / content ---------- */
.section{padding:6vw 5vw;}
.section.alt{background:#fff;}
.section-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:28px;gap:16px;flex-wrap:wrap;}
.section-head h2{font-family:'Archivo Black',sans-serif;text-transform:uppercase;font-size:clamp(1.3rem,2vw,1.7rem);margin:0;letter-spacing:.01em;}
.section-head span{font-family:ui-monospace,monospace;font-size:10.5px;color:var(--red);}
.content{padding:6vw 5vw;max-width:820px;}
.content h2{font-family:'Archivo Black',sans-serif;text-transform:uppercase;font-size:1.3rem;letter-spacing:.01em;margin:2em 0 .6em;}
.content h2:first-child{margin-top:0;}
.content p{font-size:15px;line-height:1.65;color:#333;}
.content ul{padding-left:1.2em;font-size:15px;line-height:1.7;color:#333;}
.notice{border:1px dashed var(--line);padding:14px 18px;font-size:13px;color:var(--navy);background:#fff;margin:1.5em 0;}

/* ---------- cards ---------- */
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;}
.card{border:1px solid var(--line-soft);background:#fff;padding:24px;display:flex;flex-direction:column;gap:10px;}
.card .icon-box{width:36px;height:36px;border:1.5px solid var(--navy);color:var(--navy);font-family:ui-monospace,monospace;font-weight:700;font-size:12px;display:grid;place-items:center;}
.card h3{font-family:'Archivo Black',sans-serif;text-transform:uppercase;font-size:14px;margin:0;letter-spacing:.01em;}
.card p{font-size:13px;line-height:1.55;color:var(--ink-dim);margin:0;}
.text-link{font-size:12.5px;font-weight:700;text-decoration:none;color:var(--red);text-transform:uppercase;letter-spacing:.02em;}
.text-link:hover{text-decoration:underline;}

.service-photo-index{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line-soft);border:1px solid var(--line-soft);}
@media (max-width:820px){.service-photo-index{grid-template-columns:repeat(2,1fr);}}
.service-photo-index a{background:#fff;text-decoration:none;color:var(--ink);display:flex;flex-direction:column;}
.service-photo-index .thumb{aspect-ratio:4/3;overflow:hidden;background:#e4ddc9;}
.service-photo-index .thumb img{width:100%;height:100%;object-fit:cover;}
.service-photo-index .label{padding:14px 16px;display:flex;justify-content:space-between;align-items:center;}
.service-photo-index .label h3{font-family:'Archivo Black',sans-serif;text-transform:uppercase;font-size:13px;margin:0;letter-spacing:.01em;}
.service-photo-index .go{font-family:ui-monospace,monospace;font-size:11px;color:var(--red);}

/* ---------- content-grid (detail pages: article + sidebar) ---------- */
.content-grid{display:grid;grid-template-columns:1fr 300px;gap:5vw;padding:6vw 5vw;align-items:start;}
.content-grid .article h2{font-family:'Archivo Black',sans-serif;text-transform:uppercase;font-size:1.15rem;letter-spacing:.01em;margin:1.8em 0 .6em;}
.content-grid .article h2:first-child{margin-top:0;}
.content-grid .article p{font-size:15px;line-height:1.65;color:#333;}
.service-photo-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:1.5em 0;}
.service-photo{margin:0;border:1px solid var(--line-soft);}
.service-photo .frame{aspect-ratio:4/3;overflow:hidden;}
.service-photo img{width:100%;height:100%;object-fit:cover;object-position:center;}
.service-photo figcaption{font-size:11.5px;color:var(--ink-dim);padding:8px 10px;font-family:ui-monospace,monospace;}
.issue-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2px;background:var(--line-soft);border:1px solid var(--line-soft);margin:1em 0;}
@media (max-width:640px){.issue-grid{grid-template-columns:1fr;}}
.issue{background:#fff;padding:12px 14px;font-size:13px;line-height:1.5;}
.side-card{border:1.5px solid var(--ink);padding:22px;background:#fff;margin-bottom:16px;}
.side-card-title{font-family:'Archivo Black',sans-serif;text-transform:uppercase;font-size:14px;margin-bottom:12px;letter-spacing:.01em;}
.side-card .btn{width:100%;margin-bottom:8px;}
.side-card ul{list-style:none;padding:0;margin:0;font-size:13px;}
.side-card ul li{padding:8px 0;border-top:1px solid var(--line-soft);}
.side-card ul li:first-child{border-top:none;}
.side-card ul a{text-decoration:none;color:var(--navy);}
.side-card ul a:hover{text-decoration:underline;}
@media (max-width:900px){.content-grid{grid-template-columns:1fr;}}

/* ---------- FAQ accordion ---------- */
.faq{border-top:1px solid var(--line-soft);}
.faq-item{border-bottom:1px solid var(--line-soft);}
.faq-q{width:100%;text-align:left;background:none;border:none;padding:16px 0;display:flex;justify-content:space-between;align-items:center;font-size:14.5px;font-weight:700;cursor:pointer;color:var(--ink);}
.faq-q span{color:var(--red);font-family:ui-monospace,monospace;}
.faq-a{padding:0 0 16px;font-size:14px;line-height:1.6;color:var(--ink-dim);}

/* ---------- guide checklist (reuses .steps pattern) ---------- */
.guide-checklist{list-style:none;padding:0;counter-reset:step;}
.guide-checklist li{display:grid;grid-template-columns:34px 1fr;gap:14px;padding:14px 0;border-top:1px dashed var(--line-soft);font-size:14.5px;line-height:1.55;color:#333;}
.guide-checklist li:first-child{border-top:none;}
.guide-checklist li::before{counter-increment:step;content:counter(step,decimal-leading-zero);width:30px;height:30px;border:2px solid var(--navy);border-radius:50%;color:var(--navy);font-family:ui-monospace,monospace;font-weight:700;font-size:11px;display:grid;place-items:center;flex:none;}

/* ---------- CTA band ---------- */
.cta-band{background:var(--red);color:#fff;padding:30px 5vw;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:18px;}
.cta-band h2{font-family:'Archivo Black',sans-serif;text-transform:uppercase;font-size:clamp(1.2rem,2vw,1.6rem);line-height:1.1;margin:0;}
.cta-band .phone{font-family:'Archivo Black',sans-serif;font-size:clamp(1.3rem,2.2vw,1.8rem);color:#fff;text-decoration:none;}
.cta-band-actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap;}
.phone-group{display:flex;flex-direction:column;gap:2px;}
.phone-group .text-link{color:#ffd9d3;font-weight:400;text-transform:none;letter-spacing:0;text-decoration:underline;}

/* ---------- footer ---------- */
.footer{background:var(--navy);color:#f4ddc9;padding:36px 5vw 24px;}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:5vw;padding-bottom:24px;}
.footer-heading{font-family:'Archivo Black',sans-serif;text-transform:uppercase;font-size:12px;letter-spacing:.04em;color:#fff;margin-bottom:14px;}
.footer ul{list-style:none;padding:0;margin:0;font-size:13px;}
.footer ul li{padding:5px 0;}
.footer a{text-decoration:none;color:#f4ddc9;}
.footer a:hover{color:#fff;}
.footer-brand b{font-family:'Archivo Black',sans-serif;font-size:16px;color:#fff;display:block;}
.footer-brand p{overflow-wrap:anywhere;}
.footer-bottom{border-top:1px solid rgba(255,255,255,.18);padding-top:18px;display:flex;justify-content:space-between;font-size:12px;flex-wrap:wrap;gap:10px;}
@media (max-width:820px){.footer-grid{grid-template-columns:1fr 1fr;}}

/* ---------- mobile CTA bar ---------- */
.mobile-bar{display:none;}
@media (max-width:820px){
  .mobile-bar{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:50;background:var(--ink);}
  .mobile-bar a{flex:1;text-align:center;padding:14px 0;color:#fff;text-decoration:none;font-size:12.5px;font-weight:700;text-transform:uppercase;border-right:1px solid rgba(255,255,255,.15);}
  .mobile-bar a:last-child{border-right:none;}
  .mobile-bar a.book{background:var(--red);}
  body{padding-bottom:52px;}
}

.route-line{animation:route-flow 3s linear infinite;}
@keyframes route-flow{to{stroke-dashoffset:-32;}}
.route-dot{transform-box:fill-box;transform-origin:center;animation:route-pulse 2.4s ease-in-out infinite;}
@keyframes route-pulse{0%,100%{opacity:1;transform:scale(1);}50%{opacity:.5;transform:scale(1.5);}}
@media (prefers-reduced-motion:reduce){.route-line,.route-dot{animation:none;}}

/* ==========================================================================
   v3 — conversion layer: hero CTAs, sticky bar, trust strip, steps,
   reviews, open/closed status, focus states.
   ========================================================================== */

/* ---------- accessibility: visible focus everywhere ---------- */
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{
  outline:3px solid var(--red);outline-offset:2px;border-radius:2px;
}
.skip-link{position:absolute;left:-9999px;top:0;z-index:100;background:var(--ink);color:#fff;padding:12px 18px;font-weight:700;}
.skip-link:focus{left:0;}

/* ---------- utility bar ---------- */
.metabar-phone{margin-left:auto;font-weight:700;color:var(--red);text-decoration:none;letter-spacing:.04em;
  display:inline-flex;align-items:center;min-height:24px;}
.metabar-phone:hover{text-decoration:underline;}
.open-status{display:inline-flex;align-items:center;gap:6px;font-weight:700;letter-spacing:.04em;}
.open-status::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor;}
.open-status.is-open{color:#1c7a4a;}
.open-status.is-closed{color:var(--ink-dim);}

/* ---------- header actions ---------- */
.header-actions{display:flex;align-items:center;gap:10px;}
.header-call{white-space:nowrap;}
@media (max-width:900px){.header-call{display:none;}}

/* ---------- hero (mobile: offer first, photo after) ---------- */
.hero-offer{display:grid;grid-template-columns:1.05fr .95fr;border-bottom:2px solid var(--ink);}
.hero-offer .hero-copy{
  background:linear-gradient(160deg,var(--navy),var(--navy-deep));
  background-image:repeating-linear-gradient(0deg,rgba(255,255,255,.06) 0 1px,transparent 1px 28px),
                   repeating-linear-gradient(90deg,rgba(255,255,255,.06) 0 1px,transparent 1px 28px),
                   linear-gradient(160deg,var(--navy),var(--navy-deep));
  color:#fff;padding:40px 5vw;display:flex;flex-direction:column;gap:16px;justify-content:center;
}
.hero-offer .eyebrow{font-family:ui-monospace,monospace;font-size:10.5px;letter-spacing:.1em;color:#f4ddc9;margin:0;}
.hero-offer h1{font-family:'Archivo Black',sans-serif;text-transform:uppercase;
  font-size:clamp(1.6rem,4.4vw,2.5rem);line-height:1.08;margin:0;letter-spacing:-.01em;}
.hero-offer .hero-sub{font-size:14.5px;line-height:1.6;color:#f4ddc9;max-width:46ch;margin:0;}
.hero-offer .hero-sub b{color:#fff;}
.hero-actions{display:flex;flex-direction:column;gap:10px;margin-top:2px;}
.hero-actions .btn{width:100%;padding:16px 20px;font-size:14px;min-height:52px;}
.hero-actions .btn.hero-call{background:var(--red);color:#fff;box-shadow:0 2px 0 rgba(0,0,0,.25);}
.hero-actions .btn.hero-book{background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,.85);}
.hero-actions .btn.hero-book:hover{background:rgba(255,255,255,.14);}
.hero-text-link{color:#f4ddc9;font-size:13px;text-decoration:underline;text-underline-offset:3px;
  display:inline-flex;align-items:center;min-height:44px;}
.hero-text-link:hover{color:#fff;}
.hero-micro{font-size:11.5px;line-height:1.5;color:rgba(244,221,201,.75);margin:0;}
.hero-offer .photo{position:relative;min-height:320px;}
.hero-offer .photo img{width:100%;height:100%;object-fit:cover;}
@media (max-width:900px){
  .hero-offer{grid-template-columns:1fr;}
  .hero-offer .hero-copy{order:1;padding:26px 5vw 30px;}
  .hero-offer .photo{order:2;min-height:210px;max-height:34vh;}
  .hero-offer h1{font-size:clamp(1.45rem,6.4vw,2rem);}
}

/* ---------- trust strip ---------- */
.trust-strip{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));
  border-bottom:2px solid var(--ink);background:var(--paper);}
.trust-strip li{padding:16px 20px;border-right:1px solid var(--line-soft);}
.trust-strip li:last-child{border-right:none;}
.trust-strip b{display:block;font-family:'Archivo Black',sans-serif;font-size:12.5px;text-transform:uppercase;
  color:var(--ink);margin-bottom:3px;letter-spacing:.01em;}
.trust-strip span{font-size:12px;color:var(--ink-dim);line-height:1.4;}
@media (max-width:820px){
  .trust-strip{grid-template-columns:repeat(2,1fr);}
  .trust-strip li:nth-child(2n){border-right:none;}
  .trust-strip li{border-bottom:1px solid var(--line-soft);}
  .trust-strip li:last-child{border-bottom:none;grid-column:1/-1;}
}

/* ---------- what happens next ---------- */
.steps-row{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.steps-row li{background:var(--paper);border:1px solid var(--line-soft);padding:22px;position:relative;}
.step-n{display:grid;place-items:center;width:32px;height:32px;border:2px solid var(--navy);border-radius:50%;
  color:var(--navy);font-family:ui-monospace,monospace;font-weight:700;font-size:12px;margin-bottom:12px;}
.steps-row b{display:block;font-size:15px;margin-bottom:6px;}
.steps-row p{margin:0;font-size:13px;line-height:1.6;color:var(--ink-dim);}
@media (max-width:820px){.steps-row{grid-template-columns:1fr;}}

/* ---------- repeated inline CTA ---------- */
.inline-cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px;}
.inline-cta .btn{min-height:48px;}
@media (max-width:520px){.inline-cta{flex-direction:column;}.inline-cta .btn{width:100%;}}

/* ---------- reviews ---------- */
.reviews-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px;}
.review-card{margin:0;background:var(--paper);border:1px solid var(--line-soft);padding:22px;}
.review-stars{color:#e0a13a;font-size:15px;letter-spacing:2px;margin-bottom:10px;}
.review-card blockquote{margin:0 0 14px;font-size:14px;line-height:1.6;color:var(--ink);}
.review-card figcaption{font-size:12px;color:var(--ink-dim);font-family:ui-monospace,monospace;}
.review-card figcaption span{display:block;margin-top:2px;opacity:.75;}
.reviews-source{margin:16px 0 0;font-size:13px;}

/* ---------- booking availability note ---------- */
.booking-note{display:block;margin-top:10px;font-size:12.5px;line-height:1.5;color:var(--ink-dim);}
.footer-call{display:inline-flex;align-items:center;min-height:44px;margin-top:8px;font-size:13px;
  color:inherit;text-decoration:underline;text-underline-offset:3px;}
.phone-note{display:block;margin-top:4px;font-size:11.5px;}
.cta-band .open-status.is-open,.cta-band .open-status.is-closed{color:rgba(255,255,255,.9);}

/* ---------- team photo slots ---------- */
.tech-photo{width:100%;aspect-ratio:4/3;object-fit:cover;border:1px solid var(--line-soft);margin-bottom:16px;}
.tech-photo-slot{width:100%;aspect-ratio:4/3;margin-bottom:16px;display:grid;place-items:center;
  background:var(--cream);border:1.5px dashed var(--line);}
.tech-photo-slot span{font-family:'Archivo Black',sans-serif;font-size:34px;color:var(--line);letter-spacing:.04em;}

/* ---------- mobile sticky bar (v3: 44px+ targets, safe-area) ---------- */
@media (max-width:820px){
  .mobile-bar a{min-height:52px;display:flex;align-items:center;justify-content:center;gap:6px;
    padding:14px 8px;font-size:13.5px;letter-spacing:.03em;}
  body{padding-bottom:calc(52px + env(safe-area-inset-bottom,0px));}
  .mobile-bar{padding-bottom:env(safe-area-inset-bottom,0px);}
}

/* ---------- touch targets: everything tappable clears 44x44 ---------- */
.metabar-phone{min-height:44px;min-width:44px;padding:4px 2px;}
.brand-lockup{display:inline-flex;align-items:center;min-height:44px;}
.nav-toggle{min-width:44px;min-height:44px;align-items:center;justify-content:center;}
@media (max-width:900px){.nav-toggle{display:inline-flex;}}
.cta-band .phone{display:inline-flex;align-items:center;min-height:44px;}
.skip-link{min-height:44px;display:inline-flex;align-items:center;}
.footer-brand a{display:inline-flex;align-items:center;min-height:44px;}
.footer ul a{min-height:44px;display:inline-flex;align-items:center;}
.footer ul li{padding:0;}
.footer-bottom a{display:inline-flex;align-items:center;min-height:44px;padding:0 4px;}


/* ---------- CRO copy blocks: page CTA, trust bullets, safety callout ---------- */
.hero-plain .lede{font-size:16px;line-height:1.6;color:var(--ink-dim);max-width:62ch;margin:10px 0 0;}
.page-intro{padding-top:26px;padding-bottom:26px;}
.page-cta{margin-bottom:26px;}
.page-cta-row{display:flex;gap:12px;flex-wrap:wrap;}
.page-cta-row .btn{min-height:52px;padding:16px 26px;}
.cta-microcopy{margin:12px 0 0;font-size:13px;line-height:1.55;color:var(--ink-dim);max-width:60ch;}
@media (max-width:520px){.page-cta-row{flex-direction:column;}.page-cta-row .btn{width:100%;}}

.trust-bullets{list-style:none;margin:0;padding:0;display:grid;
  grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:0;
  border-top:1px solid var(--line-soft);}
.trust-bullets li{padding:16px 20px 16px 0;border-bottom:1px solid var(--line-soft);}
.trust-bullets b{display:block;font-family:ui-monospace,monospace;font-size:10.5px;letter-spacing:.08em;
  text-transform:uppercase;color:var(--navy);margin-bottom:5px;}
.trust-bullets span{font-size:13.5px;line-height:1.55;color:var(--ink);}

.safety-callout{margin:0;padding:22px 5vw;background:#fdf3ea;border-top:3px solid var(--red);border-bottom:1px solid var(--line);}
.safety-callout b{display:block;font-family:'Archivo Black',sans-serif;font-size:15px;color:var(--red);
  text-transform:uppercase;letter-spacing:.01em;margin-bottom:8px;}
.safety-callout p{margin:0 0 8px;font-size:14px;line-height:1.6;color:var(--ink);max-width:70ch;}
.safety-callout p:last-child{margin-bottom:0;}
