:root{
  --navy:#001f3d; --navy-deep:#02132a; --navy-800:#06223f;
  --ink:#0c2038; --slate:#566a83; --line:#e7eef7;
  --paper:#ffffff; --mist:#f4f8fe;
  --blue:#2f7bff; --blue-bright:#4f95ff; --sky:#8fc0ff; --good:#12775a; --accent:#e07a3c; --accent-dark:#b45309;
  --r:18px; --rl:26px;
  --shadow-card:0 14px 40px -18px rgba(4,22,48,.20);
  --shadow-float:0 40px 90px -34px rgba(2,14,34,.62);
  --maxw:1180px;
  --bricolage:"Bricolage Grotesque",ui-sans-serif,system-ui,sans-serif;
  --hanken:"Hanken Grotesk",ui-sans-serif,system-ui,sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:var(--hanken);color:var(--ink);background:var(--paper);line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
h1,h2,h3,h4{font-family:var(--bricolage);font-weight:700;line-height:1.07;letter-spacing:-.02em;color:var(--navy);text-wrap:balance}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px}
.center{text-align:center}
.eyebrow{display:inline-flex;align-items:center;gap:8px;font-family:var(--hanken);font-weight:600;font-size:13px;letter-spacing:.04em;text-transform:uppercase;color:var(--blue);background:rgba(47,123,255,.09);border:1px solid rgba(47,123,255,.18);padding:7px 14px;border-radius:100px}
.eyebrow.light{color:var(--sky);background:rgba(143,192,255,.12);border-color:rgba(143,192,255,.25)}
.eyebrow .dot{width:7px;height:7px;border-radius:50%;background:currentColor;box-shadow:0 0 0 4px rgba(47,123,255,.18)}
.btn{display:inline-flex;align-items:center;gap:9px;font-family:var(--hanken);font-weight:600;font-size:16px;padding:14px 24px;border-radius:8px;border:1px solid transparent;cursor:pointer;transition:transform .25s,box-shadow .25s,background .25s,border-color .25s;white-space:nowrap}
.btn-primary{background:linear-gradient(135deg,#2568d9,#1a56c4);color:#fff;box-shadow:0 12px 30px -10px rgba(47,123,255,.6)}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 18px 40px -10px rgba(47,123,255,.7)}
.btn-ghost{background:transparent;border-color:rgba(255,255,255,.22);color:#fff}
.btn-ghost:hover{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.4)}
.btn-light{background:#fff;color:var(--navy);box-shadow:var(--shadow-card)}
.btn-light:hover{transform:translateY(-2px)}
.btn-dark{background:var(--navy);color:#fff}
.btn-dark:hover{transform:translateY(-2px);box-shadow:0 16px 36px -14px rgba(2,14,34,.5)}
.btn-full{width:100%;justify-content:center}
.btn-lg{padding:16px 30px;font-size:17px}

/* ---------- NAV ---------- */
header{position:fixed;top:0;left:0;right:0;z-index:100;transition:background .3s,box-shadow .3s,backdrop-filter .3s}
header.scrolled,header.solid{background:rgba(255,255,255,.85);backdrop-filter:blur(16px);box-shadow:0 1px 0 var(--line)}
.nav{display:flex;align-items:center;justify-content:space-between;height:74px;gap:20px}
.brand{display:flex;align-items:center;gap:11px;cursor:pointer}
.brand img{height:34px}
.brand .b-light{display:block} .brand .b-dark{display:none}
header.scrolled .brand .b-light,header.solid .brand .b-light{display:none}
header.scrolled .brand .b-dark,header.solid .brand .b-dark{display:block}
.nav-links{display:flex;align-items:center;gap:4px}
.nav-item{position:relative}
.nav-links a.nav-item{font-family:var(--hanken);font-weight:500;font-size:15.5px;color:rgba(255,255,255,.82);text-decoration:none;padding:8px 16px;transition:color .2s}
.nav-links a.nav-item:hover{color:#fff}
/* nav links + logo on solid/scrolled header (inner pages & on scroll) */
header.solid .nav-links a.nav-item,header.scrolled .nav-links a.nav-item{color:var(--navy,#001f3d);opacity:.85}
header.solid .nav-links a.nav-item:hover,header.scrolled .nav-links a.nav-item:hover{color:var(--navy,#001f3d);opacity:1}
header.solid .nav-login,header.scrolled .nav-login{color:var(--navy,#001f3d)}
header.solid .brand-cluster img,header.scrolled .brand-cluster img{filter:brightness(0) saturate(100%) invert(9%) sepia(40%) saturate(2000%) hue-rotate(193deg) brightness(95%) contrast(103%)}
header.solid .burger span,header.solid .burger span::before,header.solid .burger span::after,header.scrolled .burger span,header.scrolled .burger span::before,header.scrolled .burger span::after{background:var(--navy,#001f3d)}
.nav-top{display:inline-flex;align-items:center;gap:6px;font-family:var(--hanken);font-weight:500;font-size:15.5px;color:rgba(255,255,255,.82);background:none;border:0;cursor:pointer;padding:9px 16px;border-radius:10px;transition:color .2s,background .2s}
.nav-top .caret{width:8px;height:8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-2px);transition:transform .25s;opacity:.7}
.nav-item.open .nav-top .caret{transform:rotate(225deg) translateY(-1px)}
.nav-top:hover,.nav-item.open .nav-top{color:#fff;background:rgba(255,255,255,.08)}
.nav-top.active{color:#fff}
header.scrolled .nav-top,header.solid .nav-top{color:var(--slate)}
header.scrolled .nav-top:hover,header.solid .nav-top:hover,header.scrolled .nav-item.open .nav-top,header.scrolled .nav-top.active,header.solid .nav-top.active{color:var(--navy);background:rgba(4,22,48,.05)}
.dropdown{position:absolute;top:calc(100% + 8px);left:0;min-width:250px;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 24px 60px -24px rgba(4,22,48,.32);padding:8px;opacity:0;visibility:hidden;transform:translateY(8px);transition:.22s;z-index:50}
.nav-item.open .dropdown{opacity:1;visibility:visible;transform:none}
.dropdown a{display:block;padding:11px 13px;border-radius:11px;transition:background .18s}
.dropdown a:hover{background:var(--mist)}
.dropdown a b{display:block;font-family:var(--bricolage);font-weight:600;font-size:15px;color:var(--navy)}
.dropdown a span{display:block;font-size:13px;color:var(--slate);margin-top:1px}
.nav-cta{display:flex;align-items:center;gap:14px}
.nav-login{font-weight:600;font-size:15.5px;color:#fff;cursor:pointer}
header.scrolled .nav-login,header.solid .nav-login{color:var(--navy)}
.burger{display:none;background:none;border:0;cursor:pointer;width:30px;height:22px;position:relative}
.burger span,.burger span::before,.burger span::after{content:"";position:absolute;left:0;width:100%;height:2.5px;border-radius:3px;background:#fff;transition:.3s}
header.scrolled .burger span,header.scrolled .burger span::before,header.scrolled .burger span::after,header.solid .burger span,header.solid .burger span::before,header.solid .burger span::after{background:var(--navy)}
.burger span{top:10px;display:block;position:absolute}.burger span::before{top:-8px}.burger span::after{top:8px}

/* ---------- PAGE SYSTEM (removed) ---------- */
/* Prototype SPA .page panels collided with WordPress body_class 'page', which hid the whole <body>. Rules removed; no .page panels exist in the WP templates. */

/* inner page hero */
.phero{position:relative;background:var(--navy-deep);color:#fff;padding:150px 0 80px;overflow:hidden;text-align:center}
.phero::before{content:"";position:absolute;inset:0;background:radial-gradient(55% 50% at 20% 0%,rgba(47,123,255,.28),transparent 60%),radial-gradient(50% 50% at 88% 30%,rgba(79,149,255,.2),transparent 60%);pointer-events:none}
.phero::after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:54px 54px;mask-image:radial-gradient(70% 70% at 50% 20%,#000,transparent 80%);opacity:.45;pointer-events:none}
.phero .wrap{position:relative;z-index:2}
.phero h1{color:#fff;font-size:clamp(28px,2.8vw,40px);font-weight:800;max-width:18ch;margin:18px auto 0}
.phero p{color:rgba(255,255,255,.78);font-size:clamp(16px,2vw,19px);max-width:58ch;margin:18px auto 0}
.phero .hero-cta{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:30px}

/* ---------- HOME HERO ---------- */
/* ============ HERO REDESIGN ============ */
.hero{
  position:relative;
  background:linear-gradient(135deg,#000d1a 0%,#001f3d 45%,#0a2a50 100%);
  overflow:hidden;
  padding:100px 0 80px
}
/* radial glow behind headline */
.hero-glow{
  position:absolute;top:-120px;left:50%;transform:translateX(-50%);
  width:900px;height:600px;
  background:radial-gradient(ellipse at center,rgba(47,123,255,.18) 0%,rgba(47,123,255,.06) 45%,transparent 70%);
  pointer-events:none
}
/* subtle dot grid texture */
.hero-grid-overlay{
  position:absolute;inset:0;
  background-image:radial-gradient(rgba(255,255,255,.055) 1px,transparent 1px);
  background-size:32px 32px;
  pointer-events:none
}
/* two-column layout */
.hero-wrap{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:64px;
  align-items:center;
  max-width:1200px
}
.hero-left{
  display:flex;flex-direction:column;
  align-items:flex-start;
  gap:0
}
.hero-left .eyebrow{margin-bottom:20px}
.hero-left h1{
  font-size:clamp(30px,3vw,44px);
  font-weight:800;line-height:1.08;
  color:#fff;
  text-align:left;
  margin:0 0 20px
}
.hero-left .sub{
  font-size:14.5px;line-height:1.6;
  color:rgba(255,255,255,.72);
  text-align:left;
  max-width:520px;
  margin:0 0 28px
}
/* offer strip — left aligned on hero */
.hero-left .hero-offer-strip{
  align-self:flex-start;
  margin-bottom:20px;
  background:rgba(224,122,60,.15);
  border:1.5px solid rgba(224,122,60,.4);
  border-radius:8px;
  padding:9px 14px;
  backdrop-filter:none;
  gap:8px
}
/* CTA row */
.hero-ctas{
  display:flex;flex-wrap:wrap;gap:8px;
  margin-bottom:20px
}
.hero-ctas .btn{font-size:13px;padding:9px 14px;white-space:nowrap}
/* trust bar */
.hero-trust{
  display:flex;align-items:center;gap:10px;flex-wrap:wrap;
  font-size:13px;color:rgba(255,255,255,.5)
}
.hero-trust-item{display:flex;align-items:center;gap:5px;color:rgba(255,255,255,.55)}
.hero-trust-item svg{color:var(--good,#1fb583);flex-shrink:0}
.hero-trust-sep{opacity:.3}

/* ---- product mockup card ---- */
.hero-right{
  display:flex;justify-content:center;align-items:center;overflow:hidden;max-height:638px
}
.hero-mockup{
  background:#fff;
  border-radius:16px;
  overflow:hidden;
  box-shadow:0 32px 80px rgba(0,0,0,.45),0 0 0 1px rgba(255,255,255,.08);
  width:100%;max-width:380px
}
/* browser chrome bar */
.hm-bar{
  background:#f0f2f5;
  padding:10px 14px;
  display:flex;gap:6px;align-items:center;
  border-bottom:1px solid #e4e8ef
}
.hm-bar span{
  width:10px;height:10px;border-radius:50%;
  background:#dde1e8
}
.hm-bar span:nth-child(1){background:#ff5f57}
.hm-bar span:nth-child(2){background:#febc2e}
.hm-bar span:nth-child(3){background:#28c840}
/* header row */
.hm-header{
  background:var(--navy,#001f3d);
  padding:12px 16px;
  display:flex;justify-content:space-between;align-items:center
}
.hm-site-name{color:#fff;font-size:13px;font-weight:700}
.hm-badge{font-size:11px;font-weight:700;padding:3px 10px;border-radius:100px}
.hm-badge.live{background:rgba(31,181,131,.2);color:#1fb583}
/* unit cards */
.hm-units{padding:14px;display:flex;flex-direction:column;gap:10px;background:#f8faff}
.hm-unit{
  background:#fff;border-radius:10px;padding:14px;
  border:1.5px solid #e8eef8;
  transition:.15s
}
.hm-unit--low{border-color:rgba(251,191,36,.4)}
.hm-unit-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}
.hm-size{font-size:12px;font-weight:700;color:var(--navy,#001f3d)}
.hm-avail{font-size:11px;font-weight:700;color:#1fb583;background:rgba(31,181,131,.1);padding:2px 8px;border-radius:100px}
.hm-avail.low{color:#d97706;background:rgba(217,119,6,.1)}
.hm-price{font-size:22px;font-weight:800;color:var(--navy,#001f3d);margin-bottom:10px}
.hm-price span{font-size:13px;font-weight:500;opacity:.6}
.hm-cta{
  background:var(--blue,#2f7bff);color:#fff;
  font-size:12px;font-weight:700;
  text-align:center;padding:8px;border-radius:7px;
  cursor:pointer
}
/* footer */
.hm-footer{
  padding:10px 16px;
  background:#fff;
  border-top:1px solid #e8eef8;
  text-align:center
}
.hm-sync{font-size:11px;color:#8898aa;font-weight:600}

/* mobile — stack vertically */
@media(max-width:900px){
  .hero-wrap{grid-template-columns:1fr;gap:40px}
  .hero-left h1{font-size:clamp(32px,7vw,48px);text-align:center}
  .hero-left .sub{text-align:center;max-width:100%}
  .hero-left{align-items:center;max-width:100%;min-width:0}
  .hero-ctas{justify-content:center;flex-wrap:wrap}
  .hero-trust{justify-content:center}
  .hero-right{display:none}
}
/* ============ END HERO REDESIGN ============ */
.hero::before{content:"";position:absolute;inset:0;background:
  radial-gradient(60% 50% at 18% 8%,rgba(47,123,255,.30),transparent 60%),
  radial-gradient(50% 45% at 92% 22%,rgba(79,149,255,.22),transparent 60%),
  radial-gradient(70% 60% at 50% 110%,rgba(20,70,150,.35),transparent 60%);pointer-events:none}
.hero::after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:54px 54px;mask-image:radial-gradient(70% 60% at 50% 30%,#000,transparent 80%);opacity:.5;pointer-events:none}
.hero .wrap{position:relative;z-index:2;text-align:center}
.hero h1{color:#fff;font-size:clamp(28px,2.6vw,40px);font-weight:800;max-width:none;margin:0 0 18px}
.hero h1 .hl{background:linear-gradient(120deg,var(--sky),#fff 60%);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero p.sub{font-size:clamp(17px,2vw,20px);color:rgba(255,255,255,.78);max-width:62ch;margin:24px auto 0}
.hero-cta{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:36px}
.hero-trust{margin-top:26px;font-size:14px;color:rgba(255,255,255,.6);display:inline-flex;align-items:center;gap:9px;flex-wrap:wrap;justify-content:center}
.hero-trust img{height:18px;opacity:.92;vertical-align:middle}
.anim{opacity:0;transform:translateY(20px);animation:rise .9s cubic-bezier(.2,.7,.2,1) forwards}
.a1{animation-delay:.05s}.a2{animation-delay:.16s}.a3{animation-delay:.28s}.a4{animation-delay:.4s}.a5{animation-delay:.5s}
@keyframes rise{to{opacity:1;transform:none}}

/* ---------- BROWSER MOCKUP ---------- */
.mock{position:relative;max-width:920px;margin:56px auto 0;z-index:2}
.bwin{position:relative;background:#fff;border-radius:16px;box-shadow:var(--shadow-float);overflow:hidden;text-align:left}
.bbar{display:flex;align-items:center;gap:8px;padding:13px 16px;background:#f3f6fb;border-bottom:1px solid #e9eef6}
.bbar .dots{display:flex;gap:6px}.bbar .dots i{width:11px;height:11px;border-radius:50%;background:#d6dde8}
.bbar .url{flex:1;margin-left:10px;background:#fff;border:1px solid #e6ecf5;border-radius:8px;font-size:12.5px;color:#7587a0;padding:6px 12px}
.bbar .url b{color:var(--navy);font-weight:600}
.bsync{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:600;color:var(--good);background:rgba(31,181,131,.1);padding:5px 11px;border-radius:100px}
.bsync .pulse{width:7px;height:7px;border-radius:50%;background:var(--good);animation:pulse 1.8s infinite}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(31,181,131,.5)}70%{box-shadow:0 0 0 7px rgba(31,181,131,0)}100%{box-shadow:0 0 0 0 rgba(31,181,131,0)}}
.bbody{padding:26px;background:linear-gradient(180deg,#fbfdff,#fff)}
.bbody .bh{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}
.bbody .bh h4{font-size:19px}.bbody .bh span{font-size:13px;color:var(--slate)}
.units{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.unit{border:1px solid #eef2f8;border-radius:14px;padding:16px;background:#fff;box-shadow:0 6px 18px -12px rgba(4,22,48,.18);position:relative;overflow:hidden}
.unit .sz{font-family:var(--bricolage);font-weight:700;font-size:17px;color:var(--navy)}
.unit .ft{font-size:12.5px;color:var(--slate);margin-bottom:12px}
.unit .pr{font-family:var(--bricolage);font-weight:700;font-size:22px;color:var(--navy)}
.unit .pr small{font-size:12px;color:var(--slate);font-weight:500}
.chip{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;font-weight:600;padding:4px 10px;border-radius:100px;margin-bottom:12px}
.chip.ok{color:var(--good);background:rgba(31,181,131,.1)}
.chip.low{color:#e08a1e;background:rgba(224,138,30,.12)}
.chip .d{width:6px;height:6px;border-radius:50%;background:currentColor}
.unit .bk{margin-top:12px;display:block;text-align:center;font-size:13px;font-weight:600;color:#fff;background:linear-gradient(135deg,var(--blue-bright),var(--blue));padding:9px;border-radius:9px;cursor:pointer}
.chip-stack{position:relative;height:24px;margin-bottom:12px}
.chip-stack .chip{position:absolute;top:0;left:0;margin:0}
.unit.flip .chip.ok{animation:chipA 5.4s ease-in-out infinite}
.unit.flip .chip.low{animation:chipB 5.4s ease-in-out infinite}
@keyframes chipA{0%,40%{opacity:1;transform:translateY(0)}48%,90%{opacity:0;transform:translateY(-5px)}100%{opacity:1;transform:translateY(0)}}
@keyframes chipB{0%,40%{opacity:0;transform:translateY(5px)}50%,90%{opacity:1;transform:translateY(0)}100%{opacity:0;transform:translateY(5px)}}
.scan{position:absolute;left:0;right:0;top:0;height:120px;background:linear-gradient(180deg,rgba(47,123,255,.12),transparent);animation:scan 4.5s ease-in-out infinite;pointer-events:none}
@keyframes scan{0%{transform:translateY(-130px)}50%{transform:translateY(360px)}100%{transform:translateY(-130px)}}
.float-card{position:absolute;right:-18px;bottom:34px;background:#fff;border-radius:14px;box-shadow:var(--shadow-float);padding:14px 16px;display:flex;align-items:center;gap:12px;z-index:3;animation:bob 4s ease-in-out infinite}
@keyframes bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-9px)}}
.float-card .ic{width:38px;height:38px;border-radius:10px;background:rgba(31,181,131,.12);display:grid;place-items:center;color:var(--good)}
.float-card .t b{display:block;font-family:var(--bricolage);font-size:14px;color:var(--navy)}
.float-card .t span{font-size:12px;color:var(--slate)}

/* ---------- WORKS STRIP ---------- */
.works{background:var(--navy-deep);padding:0 0 70px}
.works .wrap{position:relative;z-index:2}
.works p.lbl{text-align:center;color:rgba(255,255,255,.5);font-size:13px;letter-spacing:.06em;text-transform:uppercase;font-weight:600;margin-bottom:22px}
.works-row{display:flex;align-items:center;justify-content:center;gap:50px;flex-wrap:wrap}
.works-row .w{display:flex;align-items:center;gap:10px;color:rgba(255,255,255,.78);font-family:var(--bricolage);font-weight:600;font-size:18px}

/* ---------- SECTIONS ---------- */
section.band{padding:clamp(64px,8vw,110px) 0}
.mist{background:var(--mist)}
.navy-band{background:var(--navy-deep);color:#fff}
.sec-head{text-align:center;max-width:660px;margin:0 auto 54px}
.sec-head h2{font-size:clamp(30px,4.4vw,46px);font-weight:800}
.navy-band .sec-head h2{color:#fff}
.sec-head p{color:var(--slate);font-size:18px;margin-top:16px}
.navy-band .sec-head p{color:rgba(255,255,255,.72)}
.lede{color:var(--slate);font-size:19px;max-width:60ch}

/* value cards */
.vgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.vcard{background:#fff;border:1px solid var(--line);border-radius:var(--rl);padding:32px;box-shadow:var(--shadow-card);transition:transform .3s,box-shadow .3s}
.vcard:hover{transform:translateY(-5px);box-shadow:0 26px 56px -26px rgba(4,22,48,.28)}
.vcard .vic{width:54px;height:54px;border-radius:15px;display:grid;place-items:center;background:linear-gradient(135deg,rgba(47,123,255,.14),rgba(47,123,255,.05));color:var(--blue);margin-bottom:20px}
.vcard h3{font-size:21px;margin-bottom:9px}
.vcard p{color:var(--slate);font-size:15.5px}

/* steps */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;position:relative}
.step{position:relative;text-align:center;padding:0 8px}
.step .num{width:64px;height:64px;margin:0 auto 22px;border-radius:50%;display:grid;place-items:center;font-family:var(--bricolage);font-weight:700;font-size:26px;color:#fff;background:linear-gradient(135deg,var(--blue-bright),var(--blue));box-shadow:0 14px 30px -12px rgba(47,123,255,.6);position:relative;z-index:2}
.step h3{font-size:21px;margin-bottom:8px}.step p{color:var(--slate);font-size:15.5px;max-width:32ch;margin:0 auto}
.steps .line{position:absolute;top:32px;left:16%;right:16%;height:2px;background:linear-gradient(90deg,transparent,rgba(47,123,255,.4),transparent);z-index:1}

/* bento */
.bento{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:200px;gap:18px}
.bcard{background:#fff;border:1px solid var(--line);border-radius:var(--rl);padding:26px;box-shadow:var(--shadow-card);position:relative;overflow:hidden;transition:transform .3s,box-shadow .3s}
.bcard:hover{transform:translateY(-4px);box-shadow:0 26px 56px -26px rgba(4,22,48,.26)}
.bcard h3{font-size:20px;margin-bottom:7px}.bcard p{color:var(--slate);font-size:14.5px}
.bcard .tag{font-size:12px;font-weight:600;color:var(--blue);text-transform:uppercase;letter-spacing:.05em;margin-bottom:12px;display:block}
.b-wide{grid-column:span 2}.b-tall{grid-row:span 2}
.b-navy{background:var(--navy);border:0}
.b-navy h3{color:#fff}.b-navy p{color:rgba(255,255,255,.72)}.b-navy .tag{color:var(--sky)}
.mini-chip{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;padding:5px 11px;border-radius:100px;color:var(--good);background:rgba(31,181,131,.12);margin-top:14px}
.mini-chip .d{width:6px;height:6px;border-radius:50%;background:currentColor}
.loc-pills{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}
.loc-pills span{font-size:12.5px;font-weight:600;padding:6px 12px;border-radius:100px;background:rgba(47,123,255,.1);color:var(--blue);cursor:pointer}
.loc-pills span.on{background:var(--blue);color:#fff}
.sync-ring{position:absolute;right:-30px;bottom:-30px;width:150px;height:150px;border-radius:50%;border:2px dashed rgba(255,255,255,.25);animation:spin 14s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}

/* stats */
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;text-align:center}
.stat .n{font-family:var(--bricolage);font-weight:800;font-size:clamp(38px,5vw,56px);background:linear-gradient(135deg,var(--blue-bright),var(--navy));-webkit-background-clip:text;background-clip:text;color:transparent;line-height:1}
.navy-band .stat .n{background:linear-gradient(135deg,#fff,var(--sky));-webkit-background-clip:text;background-clip:text;color:transparent}
.stat p{color:var(--slate);font-size:15px;margin-top:10px;font-weight:500}
.navy-band .stat p{color:rgba(255,255,255,.72)}

/* split feature row */
.split{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.split.rev .vis{order:2}
.split h2{font-size:clamp(26px,3.6vw,38px);margin-bottom:16px}
.split ul{list-style:none;display:flex;flex-direction:column;gap:12px;margin-top:20px}
.split li{display:flex;gap:11px;font-size:16px;color:var(--ink)}
.split li svg{flex-shrink:0;margin-top:4px}
.vis-card{background:#fff;border:1px solid var(--line);border-radius:var(--rl);box-shadow:var(--shadow-card);padding:24px}

/* quote */
.quote{max-width:820px;margin:0 auto;text-align:center}
.quote .qm{font-family:var(--bricolage);font-size:64px;color:rgba(47,123,255,.25);line-height:.5;margin-bottom:10px}
.quote p{font-family:var(--bricolage);font-weight:600;font-size:clamp(22px,3vw,30px);color:var(--navy);line-height:1.3}
.quote .who{margin-top:24px;color:var(--slate);font-size:15px}.quote .who b{color:var(--navy);font-family:var(--hanken)}

/* pricing */
.price-toggle{display:inline-flex;align-items:center;gap:14px;background:var(--mist);border:1px solid var(--line);border-radius:100px;padding:6px;margin:0 auto 14px;font-weight:600;font-size:14px}
.price-toggle button{border:0;background:none;cursor:pointer;padding:8px 18px;border-radius:100px;font-weight:600;color:var(--slate);font-family:var(--hanken)}
.price-toggle button.on{background:#fff;color:var(--navy);box-shadow:var(--shadow-card)}
.save-pill{font-size:12px;color:var(--good);font-weight:700}
.pgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;align-items:start}
.ptier{border:1px solid var(--line);border-radius:var(--rl);padding:32px;background:#fff;box-shadow:var(--shadow-card);position:relative}
.ptier.pop{background:var(--navy);border:0;color:#fff;box-shadow:0 30px 70px -30px rgba(2,14,34,.6);transform:translateY(-8px)}
.ptier.pop::before{content:"";position:absolute;inset:0;border-radius:var(--rl);background:radial-gradient(60% 60% at 80% 0%,rgba(47,123,255,.4),transparent 60%);pointer-events:none}
.ptier .pop-badge{position:absolute;top:-12px;left:50%;transform:translateX(-50%);background:linear-gradient(135deg,var(--blue-bright),var(--blue));color:#fff;font-size:12px;font-weight:700;padding:6px 14px;border-radius:100px;letter-spacing:.03em}
.ptier .pk{font-size:13px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--blue)}
.ptier.pop .pk{color:var(--sky)}
.ptier h3{font-size:24px;margin:8px 0 4px}.ptier.pop h3{color:#fff}
.ptier .pwho{font-size:14px;color:var(--slate);margin-bottom:18px}.ptier.pop .pwho{color:rgba(255,255,255,.7)}
.ptier .price{font-family:var(--bricolage);font-weight:800;font-size:46px;color:var(--navy);line-height:1}.ptier.pop .price{color:#fff}
.ptier .price small{font-size:15px;font-weight:600;color:var(--slate)}.ptier.pop .price small{color:rgba(255,255,255,.7)}
.ptier .setup{font-size:13.5px;color:var(--slate);margin-top:6px}.ptier.pop .setup{color:rgba(255,255,255,.7)}
.ptier ul{list-style:none;display:flex;flex-direction:column;gap:11px;margin:22px 0;position:relative;z-index:2}
.ptier li{display:flex;gap:10px;font-size:15px;align-items:flex-start}.ptier li svg{flex-shrink:0;margin-top:3px}
.ptier.pop li{color:rgba(255,255,255,.9)}

/* comparison table */
.ctable{max-width:920px;margin:0 auto;border:1px solid var(--line);border-radius:var(--rl);overflow:hidden;background:#fff;box-shadow:var(--shadow-card)}
.ctable .crow{display:grid;grid-template-columns:1.6fr 1fr 1fr;align-items:center}
.ctable .crow:not(:last-child){border-bottom:1px solid var(--line)}
.ctable .crow>div{padding:16px 20px;font-size:15px}
.ctable .chead{background:var(--mist);font-family:var(--bricolage);font-weight:700;color:var(--navy)}
.ctable .chead .rec{background:var(--navy);color:#fff;border-radius:12px 12px 0 0}
.ctable .crow .lab{font-weight:600;color:var(--ink)}
.ctable .crow .c{text-align:center;color:var(--slate)}
.ctable .crow .c.win{background:rgba(47,123,255,.05);color:var(--navy);font-weight:600}
.tick{display:inline-block;color:var(--good)}.cross{display:inline-block;color:#6b7c94}

/* forms */
.form-card{max-width:460px;margin:0 auto;background:#fff;border:1px solid var(--line);border-radius:var(--rl);box-shadow:var(--shadow-card);padding:34px}
.form-card.wide{max-width:560px}
.field{margin-bottom:16px}
.field label{display:block;font-size:13.5px;font-weight:600;color:var(--navy);margin-bottom:6px}
.field input,.field select,.field textarea{width:100%;border:1px solid var(--line);border-radius:11px;padding:12px 14px;font-family:var(--hanken);font-size:15px;color:var(--ink);background:#fff;transition:border-color .2s,box-shadow .2s}
.field input:focus,.field select:focus,.field textarea:focus{outline:0;border-color:var(--blue);box-shadow:0 0 0 4px rgba(47,123,255,.12)}
.frow{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.form-alt{text-align:center;font-size:14px;color:var(--slate);margin-top:16px}
.form-alt a{color:var(--blue);font-weight:600;cursor:pointer}
.okmsg{display:none;margin-top:14px;padding:12px 14px;border-radius:12px;background:rgba(31,181,131,.1);color:#13855f;font-weight:600;font-size:14px}
.okmsg.show{display:block}

/* legal */
.legal-body{max-width:760px;margin:0 auto}
.legal-body h2{font-size:24px;margin:34px 0 12px}
.legal-body h3{font-size:18px;margin:22px 0 8px}
.legal-body p,.legal-body li{color:var(--slate);font-size:15.5px;margin-bottom:12px}
.legal-body ul{padding-left:20px}
.draft-note{background:rgba(224,138,30,.1);border:1px solid rgba(224,138,30,.25);color:#9a6310;border-radius:14px;padding:14px 18px;font-size:14px;margin-bottom:30px}

/* account */
.acct-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:22px;max-width:920px;margin:0 auto}
.acct-card{background:#fff;border:1px solid var(--line);border-radius:var(--rl);box-shadow:var(--shadow-card);padding:28px}
.acct-card h3{font-size:18px;margin-bottom:16px}
.keybox{display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--navy);color:#fff;border-radius:13px;padding:14px 16px;font-family:ui-monospace,monospace;font-size:15px;letter-spacing:.04em}
.keybox button{background:rgba(255,255,255,.14);border:0;color:#fff;border-radius:8px;padding:7px 12px;cursor:pointer;font-size:12.5px;font-weight:600;font-family:var(--hanken)}
.meta-row{display:flex;justify-content:space-between;padding:11px 0;border-bottom:1px solid var(--line);font-size:14.5px}
.meta-row span{color:var(--slate)}.meta-row b{color:var(--navy);font-family:var(--hanken)}
.inv-row{display:flex;justify-content:space-between;align-items:center;padding:11px 0;border-bottom:1px solid var(--line);font-size:14px}
.inv-row a{color:var(--blue);font-weight:600;cursor:pointer}

/* success */
.success{display:none;text-align:center;background:#fff;border:1px solid var(--line);border-radius:var(--rl);box-shadow:var(--shadow-card);padding:40px;max-width:480px;margin:0 auto}
.success .tick-c{width:64px;height:64px;border-radius:50%;background:rgba(31,181,131,.12);display:grid;place-items:center;color:var(--good);margin:0 auto 18px}
.success h3{font-size:24px;margin-bottom:8px}.success p{color:var(--slate);margin-bottom:18px}
.success .keybox{margin-bottom:20px}

/* size guide */
.sg-wrap{display:grid;grid-template-columns:300px 1fr;gap:24px;max-width:980px;margin:0 auto}
.sg-list{display:flex;flex-direction:column;gap:10px}
.sg-item{display:flex;justify-content:space-between;align-items:center;border:1px solid var(--line);border-radius:13px;padding:14px 16px;cursor:pointer;background:#fff;transition:.2s}
.sg-item:hover{border-color:var(--blue)}
.sg-item.on{background:var(--navy);color:#fff;border-color:var(--navy)}
.sg-item b{font-family:var(--bricolage)}.sg-item span{font-size:13px;color:var(--slate)}.sg-item.on span{color:rgba(255,255,255,.7)}
.sg-detail{background:#fff;border:1px solid var(--line);border-radius:var(--rl);box-shadow:var(--shadow-card);padding:30px}
.sg-detail h3{font-size:24px;margin-bottom:6px}
.sg-detail .eg{color:var(--slate);margin-bottom:18px}
.sg-detail .eg-list{display:flex;flex-wrap:wrap;gap:10px}
.sg-detail .eg-list span{background:var(--mist);border-radius:100px;padding:7px 14px;font-size:13.5px;color:var(--ink);font-weight:500}

/* faq */
.faq{max-width:760px;margin:0 auto}
.qa{border-bottom:1px solid var(--line)}
.qa button{width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:22px 4px;background:none;border:0;cursor:pointer;font-family:var(--bricolage);font-weight:600;font-size:18px;color:var(--navy);text-align:left}
.qa .ans{max-height:0;overflow:hidden;transition:max-height .35s ease;color:var(--slate);font-size:15.5px}
.qa .ans p{padding:0 4px 22px}
.qa.open .ans{max-height:260px}
.qa .pl{flex-shrink:0;width:26px;height:26px;border-radius:50%;background:rgba(47,123,255,.1);display:grid;place-items:center;color:var(--blue);transition:transform .3s}
.qa.open .pl{transform:rotate(45deg)}

/* CTA */
.cta{position:relative;background:linear-gradient(180deg,var(--navy) 0%,var(--navy-deep) 100%);color:#fff;border:1px solid rgba(255,255,255,.08);border-radius:24px;padding:clamp(30px,4vw,46px) clamp(26px,4vw,54px);text-align:center;overflow:hidden;max-width:900px;margin:0 auto;box-shadow:0 24px 60px -30px rgba(0,16,40,.55)}
.cta::before{content:"";position:absolute;inset:0;background:radial-gradient(70% 90% at 50% 0%,rgba(47,123,255,.35),transparent 62%),radial-gradient(55% 70% at 92% 110%,rgba(79,149,255,.2),transparent 60%);pointer-events:none}
.cta .wrapin{position:relative;z-index:2}
.cta h2{color:#fff;font-size:clamp(24px,3.2vw,34px);font-weight:800;line-height:1.12;max-width:20ch;margin:0 auto}
.cta p{color:rgba(255,255,255,.78);font-size:16px;line-height:1.5;margin:12px auto 0;max-width:48ch}
.cta .hero-cta{margin-top:22px}
.band:has(.cta){padding-bottom:40px}

/* footer */
footer{background:var(--navy);color:rgba(255,255,255,.7);padding:72px 0 34px}
.fgrid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:40px;margin-bottom:48px}
.fbrand img{height:30px;margin-bottom:16px}
.fbrand p{font-size:14.5px;max-width:34ch;margin-bottom:18px}
.fmaker{font-size:13px;color:rgba(255,255,255,.55);display:flex;align-items:center;gap:8px}.fmaker img{height:20px}
footer h4{color:#fff;font-family:var(--hanken);font-size:13px;letter-spacing:.05em;text-transform:uppercase;margin-bottom:16px}
footer ul{list-style:none;display:flex;flex-direction:column;gap:10px}
footer ul a{font-size:14.5px;color:rgba(255,255,255,.7);cursor:pointer;transition:color .2s}footer ul a:hover{color:#fff}
.fbottom{border-top:1px solid rgba(255,255,255,.12);padding-top:24px;display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;font-size:13px;color:rgba(255,255,255,.5)}
.flegal{max-width:680px;line-height:1.6}

/* sign-up wizard */
.wiz-steps{display:flex;align-items:flex-start;position:relative;max-width:640px;margin:0 auto 40px}
.wstep{display:flex;flex-direction:column;align-items:center;gap:8px;flex:1;position:relative;z-index:2}
.wnum{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;font-family:var(--bricolage);font-weight:700;font-size:16px;background:#fff;border:2px solid var(--line);color:var(--slate);transition:.3s}
.wstep .wlbl{font-size:13px;font-weight:600;color:var(--slate);transition:.3s}
.wstep.on .wnum{background:linear-gradient(135deg,var(--blue-bright),var(--blue));border-color:transparent;color:#fff;box-shadow:0 10px 24px -10px rgba(47,123,255,.6)}
.wstep.on .wlbl{color:var(--navy)}
.wstep.done .wnum{background:var(--good);border-color:transparent;color:#fff}
.wstep.done .wlbl{color:var(--navy)}
.wbar{position:absolute;top:21px;left:12%;right:12%;height:3px;background:var(--line);border-radius:3px;z-index:1}
.wbar i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--blue-bright),var(--blue));border-radius:3px;transition:width .4s}
.wiz-grid{display:grid;grid-template-columns:1fr 320px;gap:24px;align-items:start}
.wiz-main{background:#fff;border:1px solid var(--line);border-radius:var(--rl);box-shadow:var(--shadow-card);padding:30px}
.wiz-main h3{font-size:21px;margin-bottom:18px}
.wpane{display:none}.wpane.on{display:block;animation:pageIn .4s ease}
.plan-opts{display:flex;flex-direction:column;gap:12px}
.plan-opt{display:flex;align-items:center;gap:14px;border:1.5px solid var(--line);border-radius:14px;padding:16px 18px;cursor:pointer;transition:.2s}
.plan-opt:hover{border-color:var(--blue)}
.plan-opt.sel{border-color:var(--blue);background:rgba(47,123,255,.05)}
.plan-opt .radio{width:20px;height:20px;border-radius:50%;border:2px solid var(--line);flex-shrink:0;display:grid;place-items:center;transition:.2s}
.plan-opt.sel .radio{border-color:var(--blue)}
.plan-opt.sel .radio::after{content:"";width:10px;height:10px;border-radius:50%;background:var(--blue)}
.plan-opt .po-main{flex:1}
.plan-opt .po-name{font-family:var(--bricolage);font-weight:700;color:var(--navy);font-size:16px}
.plan-opt .po-desc{font-size:13px;color:var(--slate)}
.plan-opt .po-price{font-family:var(--bricolage);font-weight:700;color:var(--navy);font-size:18px;text-align:right;white-space:nowrap}
.plan-opt .po-price small{display:block;font-size:11px;color:var(--slate);font-weight:500}
.wiz-nav{display:flex;justify-content:space-between;gap:12px;margin-top:24px}
.btn-ghost-dark{background:transparent;border-color:var(--line);color:var(--slate)}
.btn-ghost-dark:hover{border-color:var(--navy);color:var(--navy)}
.wiz-err{color:#d23b3b;font-size:13px;margin-top:14px;display:none}
.wiz-err.show{display:block}
.wiz-side{background:var(--navy);color:#fff;border-radius:var(--rl);padding:26px;position:sticky;top:96px;overflow:hidden}
.wiz-side::before{content:"";position:absolute;inset:0;background:radial-gradient(70% 60% at 90% 0%,rgba(47,123,255,.4),transparent 60%);pointer-events:none}
.wiz-side h4{color:#fff;font-size:13px;text-transform:uppercase;letter-spacing:.05em;margin-bottom:16px;position:relative;z-index:2}
.wiz-side .ws-row{display:flex;justify-content:space-between;align-items:baseline;gap:10px;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.12);position:relative;z-index:2}
.wiz-side .ws-row span{color:rgba(255,255,255,.7);font-size:14px}
.wiz-side .ws-row b{color:#fff;font-family:var(--bricolage)}
.wiz-side .ws-total{display:flex;justify-content:space-between;align-items:baseline;padding-top:14px;position:relative;z-index:2}
.wiz-side .ws-total span{color:rgba(255,255,255,.8)}
.wiz-side .ws-total b{font-family:var(--bricolage);font-size:24px;color:#fff}
.wiz-trust{margin-top:18px;display:flex;flex-direction:column;gap:9px;position:relative;z-index:2}
.wiz-trust div{display:flex;gap:8px;align-items:center;font-size:12.5px;color:rgba(255,255,255,.72)}
.wiz-done{text-align:center;padding:14px 0}
.wiz-done .tick-c{width:64px;height:64px;border-radius:50%;background:rgba(31,181,131,.14);display:grid;place-items:center;color:var(--good);margin:0 auto 16px}
.wiz-done h3{font-size:24px;margin-bottom:8px}
.wiz-done p{color:var(--slate);margin-bottom:18px;max-width:42ch;margin-left:auto;margin-right:auto}

/* reveal */
.reveal{opacity:0;transform:translateY(26px);transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1)}
.reveal.in{opacity:1;transform:none}
.reveal.d1{transition-delay:.08s}.reveal.d2{transition-delay:.16s}.reveal.d3{transition-delay:.24s}

@media(max-width:900px){
  .nav-links,.nav-login{display:none}
  .burger{display:inline-flex}
  /* mobile menu open state */
  .nav-open{
    position:fixed;inset:74px 0 0 0;
    background:var(--navy,#001f3d);
    display:flex!important;
    flex-direction:column;
    padding:8px 0 40px;
    overflow-y:auto;
    z-index:99
  }
  /* flat nav links on mobile */
  .nav-open .nav-item{
    display:block;
    color:#fff;
    font-size:17px;
    font-weight:600;
    padding:16px 24px;
    border-bottom:1px solid rgba(255,255,255,.08);
    text-decoration:none;
    width:100%;
    box-sizing:border-box
  }
  .nav-open .nav-item:hover{background:rgba(255,255,255,.06)}
  /* hide desktop-only elements in mobile menu */
  .nav-open .nav-top,.nav-open .dropdown{display:none!important}
  /* mobile CTA button size */
  .nav-cta .btn{font-size:14px;padding:10px 18px;line-height:1.1}
}
@media(prefers-reduced-motion:reduce){*{animation:none !important}.reveal,.anim{opacity:1 !important;transform:none !important}.chip-stack .chip.low{opacity:0}}

/* ---------- accessibility & theme extras ---------- */
.skip-link{position:absolute;left:-9999px;top:0;background:#fff;color:var(--navy);padding:10px 16px;border-radius:0 0 10px 0;font-weight:700;z-index:300}
.skip-link:focus{left:0}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,.plan-opt:focus-visible,.sg-item:focus-visible{outline:3px solid var(--blue);outline-offset:2px;border-radius:6px}
.nav-item.active>.nav-top{color:#fff}
header.scrolled .nav-item.active>.nav-top,header.solid .nav-item.active>.nav-top{color:var(--navy)}

/* Amax Marketing byline next to header logo */
.brand-cluster{display:flex;align-items:center;gap:11px}
.brand-cluster img{height:32px;width:auto;}
@media(max-width:900px){.brand-cluster img{height:26px}}


/* ---- a11y: focus + touch targets ---- */
:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:2px solid #8fc0ff;outline-offset:2px;border-radius:6px}
.burger{min-width:44px;min-height:0;height:37px;align-items:center;justify-content:center}
.burger svg{pointer-events:none}
@media (max-width:760px){
  footer a{display:inline-block;padding-block:6px}
}


/* ---- shortcode examples page ---- */
.acx-sc-intro{max-width:74ch;color:var(--slate);font-size:17px;margin:0 0 10px}
.acx-sc-note{max-width:74ch;color:var(--slate);font-size:14px;background:var(--mist);border:1px solid var(--line);border-radius:10px;padding:12px 16px;margin:0 0 44px}
.acx-sc{margin:0 0 44px;padding:0 0 40px;border-bottom:1px solid var(--line)}
.acx-sc:last-child{border-bottom:0}
.acx-sc__title{margin:0 0 6px;font-family:var(--bricolage);font-size:22px}
.acx-sc__desc{color:var(--slate);margin:0 0 16px;max-width:70ch}
.acx-sc__bar{display:flex;align-items:stretch;max-width:680px;border-radius:10px;overflow:hidden;background:var(--navy-deep);margin:0 0 24px}
.acx-sc__code{flex:1;min-width:0;padding:13px 16px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13.5px;line-height:1.5;color:#cfe0ff;white-space:pre-wrap;word-break:break-word}
.acx-sc__copy{flex:0 0 auto;border:0;border-left:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.07);color:#fff;font-family:var(--hanken);font-weight:600;font-size:13px;letter-spacing:.01em;padding:0 18px;cursor:pointer;transition:background .15s,color .15s}
.acx-sc__copy:hover{background:rgba(255,255,255,.16)}
.acx-sc__copy.is-copied{color:#7CFFB0}
.acx-sc__demo{margin-top:2px}


/* ---- demo request form ---- */
.acx-form-intro{max-width:60ch;color:var(--slate);font-size:17px;margin:0 0 22px}
.acx-form{max-width:520px;margin:0}
.acx-field{margin:0 0 18px}
.acx-field label{display:block;font-family:var(--hanken);font-weight:600;font-size:14px;color:var(--ink);margin:0 0 6px}
.acx-form input,.acx-form select{width:100%;box-sizing:border-box;padding:12px 14px;font-family:var(--hanken);font-size:16px;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:10px;transition:border-color .15s,box-shadow .15s}
.acx-form input:focus,.acx-form select:focus{outline:none;border-color:#8fc0ff;box-shadow:0 0 0 3px rgba(143,192,255,.35)}
.acx-form .btn-full{width:100%;margin-top:6px}
.acx-hp{position:absolute !important;left:-9999px !important;width:1px;height:1px;opacity:0;overflow:hidden}
.acx-form-status{margin:14px 0 0;font-size:14px;min-height:1em;color:var(--slate)}
.acx-form-status:not(:empty){color:#b00020}


/* ---- demo request layout ---- */
.acx-demo{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:48px;align-items:start;max-width:980px;margin:0 auto}
.acx-demo .acx-form{max-width:none}
.acx-demo__aside{padding-top:6px}
.acx-demo__h{font-family:var(--bricolage);font-size:22px;margin:0 0 16px}
.acx-demo__list{list-style:none;margin:0 0 22px;padding:0}
.acx-demo__list li{position:relative;padding:0 0 12px 30px;color:var(--ink);font-size:16px;line-height:1.5}
.acx-demo__list li::before{content:"\2713";position:absolute;left:0;top:1px;width:20px;height:20px;border-radius:50%;background:#e7f6ee;color:#16a34a;font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center}
.acx-demo__note{color:var(--slate);font-size:14px;margin:0 0 16px}
.acx-demo__trust{color:var(--slate);font-size:14px;margin:0}
.acx-demo__card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:28px;box-shadow:0 10px 30px rgba(2,19,42,.06)}
.acx-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.acx-form textarea{width:100%;box-sizing:border-box;padding:12px 14px;font-family:var(--hanken);font-size:16px;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:10px;resize:vertical;min-height:84px;transition:border-color .15s,box-shadow .15s}
.acx-form textarea:focus{outline:none;border-color:#8fc0ff;box-shadow:0 0 0 3px rgba(143,192,255,.35)}
.acx-field .req{color:#b00020}
.acx-check{display:flex;gap:10px;align-items:flex-start;margin:2px 0 18px;font-size:14px;color:var(--slate);line-height:1.45;cursor:pointer}
.acx-check input{width:18px;height:18px;margin:1px 0 0;flex:0 0 auto}
@media (max-width:820px){
  .acx-demo{grid-template-columns:1fr;gap:28px;max-width:560px}
  .acx-row{grid-template-columns:1fr}
}


/* ---- bento polish ---- */
.bento{grid-auto-rows:210px}
.bcard .bicon{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:11px;background:rgba(47,123,255,.1);color:var(--blue);margin-bottom:12px}
.bcard .bicon svg{width:21px;height:21px;display:block}
.b-navy .bicon{background:rgba(255,255,255,.12);color:var(--sky)}
.b-navy .chips{margin-top:16px;display:flex;gap:10px;flex-wrap:wrap}
.mini-chip--warn{color:#ffce6b;background:rgba(255,206,107,.14)}
.unit-mock{position:absolute;right:26px;bottom:26px;width:290px;max-width:calc(100% - 52px);background:#fff;border-radius:14px;padding:15px 16px 14px;box-shadow:0 20px 44px rgba(2,12,30,.42)}
.unit-mock__top{display:flex;justify-content:space-between;align-items:center;margin-bottom:9px}
.unit-mock__size{font-family:var(--bricolage);font-weight:700;color:var(--ink);font-size:15px}
.unit-mock__pill{font-size:11px;font-weight:700;color:var(--good);background:rgba(31,181,131,.12);padding:4px 9px;border-radius:100px}
.unit-mock__price{color:var(--slate);font-size:13px;margin-bottom:10px}
.unit-mock__price strong{font-family:var(--bricolage);font-size:20px;color:var(--ink)}
.unit-mock__bar{height:6px;border-radius:100px;background:var(--mist);overflow:hidden;margin-bottom:12px}
.unit-mock__bar span{display:block;height:100%;width:62%;background:var(--blue);border-radius:100px}
.unit-mock__cta{text-align:center;font-size:13px;font-weight:700;color:#fff;background:var(--blue);border-radius:10px;padding:9px}
@media (max-width:900px){
  .bento{grid-auto-rows:auto}
  .unit-mock{position:static;width:auto;max-width:340px;margin-top:18px}
}


/* ---- integration: Amax Connect x Stora card ---- */
.acx-x{background:linear-gradient(135deg,#ffffff 0%,#f1f6ff 100%)}
.acx-x__lockup{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:6px 0 16px}
.acx-x__brand{display:inline-flex;align-items:center;gap:10px;font-family:var(--bricolage);font-weight:700;font-size:18px;color:var(--ink)}
.acx-x__badge{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:10px;font-weight:800;font-size:15px;flex:0 0 auto}
.acx-x__badge--a{background:var(--navy);color:#fff}
.acx-x__badge--a svg{width:20px;height:20px}
.acx-x__badge--s{background:#fff;border:1.5px solid var(--navy);color:var(--navy)}
.acx-x__times{font-size:20px;color:var(--slate);opacity:.55}
.acx-x__live{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:700;color:var(--good);background:rgba(31,181,131,.12);padding:5px 11px;border-radius:100px}
.acx-x__pulse{position:relative;width:8px;height:8px;border-radius:50%;background:var(--good);flex:0 0 auto}
.acx-x__pulse::after{content:"";position:absolute;inset:-4px;border-radius:50%;border:2px solid var(--good);opacity:.5;animation:acxpulse 1.8s ease-out infinite}
@keyframes acxpulse{0%{transform:scale(.55);opacity:.6}100%{transform:scale(1.7);opacity:0}}
 /* ---- mobile: size Book a demo CTA inline with header ---- */@media(max-width:900px){.nav-cta .btn{font-size:14px;padding:10px 18px;line-height:1.1}}
/* ---- mobile header fixes v2019b ---- */
.burger{color:#fff}
.burger svg{stroke:currentColor;fill:none}
@media(min-width:901px){.nav-cta .btn{height:auto;min-height:0;padding:14px 24px}}
@media(max-width:900px){.nav-cta .btn{height:37px;font-size:14px;padding:10px 18px}.burger{height:37px;color:#fff}}
/* ---- end mobile header fixes ---- */

.nav-open>.nav-item>a{color:#fff;font-size:17px;font-weight:600;padding:14px 0;display:block}
/* ---- pricing page ---- */
/* offer banner on pricing page */
.offer-banner-pricing{
  background:linear-gradient(135deg,#001f3d 0%,#0a3060 100%);
  color:rgba(255,255,255,.9);
  border:1px solid rgba(47,123,255,.3);
  border-radius:10px;
  padding:14px 20px;
  margin-bottom:32px;
  font-size:14px;
  line-height:1.6;
  text-align:center
}
.offer-banner-pricing strong{color:#fff;font-weight:700}
.offer-banner-pricing a{color:var(--sky,#8fc0ff);font-weight:600;text-decoration:none;white-space:nowrap}
.offer-banner-pricing a:hover{text-decoration:underline}
.offer-flame{font-size:16px;margin-right:4px}
/* was price strikethrough */
.was-price{font-size:13px;color:#8898aa;margin-bottom:12px;line-height:1.4}
.was-price s{color:#b0bac8}
.was-price--light{color:rgba(255,255,255,.45)}
.was-price--light s{color:rgba(255,255,255,.35)}
/* site-wide top banner */
#acx-limited-banner{position:relative;z-index:201}
.billing-toggle{display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:48px}
.btog{background:none;border:1.5px solid #dde4ef;color:var(--slate,#4a5568);font-family:var(--hanken);font-size:14px;font-weight:600;padding:9px 22px;border-radius:8px;cursor:pointer;transition:.2s;line-height:1}
.btog.active{background:var(--navy,#001f3d);border-color:var(--navy,#001f3d);color:#fff}
.btog:hover:not(.active){background:#f4f7fc;border-color:#c5d0e0}
.save-badge{background:var(--good,#1fb583);color:#fff;font-size:11px;font-weight:700;letter-spacing:.02em;padding:3px 9px;border-radius:100px;margin-left:8px;vertical-align:middle}

.price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;align-items:stretch}
@media(max-width:860px){.price-grid{grid-template-columns:1fr;max-width:420px;margin:0 auto}}

/* base card */
.pcard{
  background:#fff;
  border:1.5px solid #e4ebf5;
  border-radius:16px;
  padding:0;
  display:flex;
  flex-direction:column;
  height:100%;
  box-sizing:border-box;
  box-shadow:0 2px 12px rgba(0,31,61,.06);
  overflow:hidden;
  transition:box-shadow .2s,transform .2s
}
.pcard:hover{box-shadow:0 8px 32px rgba(0,31,61,.13);transform:translateY(-3px)}

/* accent bar top */
.pcard::before{
  content:'';
  display:block;
  height:4px;
  background:var(--blue,#2f7bff);
  width:100%
}

/* card inner padding wrapper */
.pcard-inner{
  padding:28px 28px 32px;
  display:flex;
  flex-direction:column;
  flex:1;
  gap:0
}

/* featured card overrides */
.pcard--featured{
  background:var(--navy,#001f3d);
  border-color:var(--navy,#001f3d);
  box-shadow:0 8px 40px rgba(0,31,61,.3);
  transform:translateY(-6px);
  z-index:2;
  position:relative
}
.pcard--featured:hover{transform:translateY(-9px);box-shadow:0 16px 48px rgba(0,31,61,.35)}
.pcard--featured::before{background:var(--sky,#8fc0ff)}

/* most popular badge */
.pcard--featured .pcard-inner::before{
  content:'Most popular';
  display:inline-block;
  background:rgba(143,192,255,.18);
  color:var(--sky,#8fc0ff);
  font-size:11px;
  font-weight:700;
  letter-spacing:.06em;
  text-transform:uppercase;
  padding:4px 12px;
  border-radius:100px;
  margin-bottom:16px;
  align-self:flex-start
}

/* eyebrow */
.pcard .pk{
  font-family:var(--hanken);
  font-size:11px;
  font-weight:700;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:var(--blue,#2f7bff);
  margin-bottom:6px;
  display:block
}
.pcard--featured .pk{color:var(--sky,#8fc0ff)}

/* plan name */
.pcard h3{
  font-size:26px;
  font-weight:800;
  color:var(--navy,#001f3d);
  margin:0 0 8px;
  line-height:1
}
.pcard--featured h3{color:#fff}

/* tagline */
.pcard .pwho{
  font-size:14px;
  color:var(--slate,#4a5568);
  margin:0 0 20px;
  line-height:1.5
}
.pcard--featured .pwho{color:rgba(255,255,255,.6)}

/* divider before price */
.pcard-divider{
  height:1px;
  background:#edf1f8;
  margin-bottom:20px
}
.pcard--featured .pcard-divider{background:rgba(255,255,255,.12)}

/* price */
.pcard .price{
  font-size:52px;
  font-weight:800;
  color:var(--navy,#001f3d);
  line-height:1;
  margin-bottom:4px;
  display:flex;
  align-items:baseline;
  gap:2px
}
.pcard--featured .price{color:#fff}
.pcard .price small{font-size:16px;font-weight:500;opacity:.6;margin-left:2px}

/* setup fee */
.pcard .setup{
  font-size:13px;
  color:#8898aa;
  margin-bottom:20px
}
.pcard--featured .setup{color:rgba(255,255,255,.4)}

/* divider after price */
.pcard-divider2{
  height:1px;
  background:#edf1f8;
  margin-bottom:20px
}
.pcard--featured .pcard-divider2{background:rgba(255,255,255,.12)}

/* feature list */
.pcard ul{
  list-style:none;
  padding:0;
  margin:0 0 auto;
  display:flex;
  flex-direction:column;
  gap:10px
}
.pcard ul li{
  display:flex;
  align-items:flex-start;
  gap:10px;
  font-size:14px;
  color:var(--ink,#1a2b3c);
  line-height:1.45
}
.pcard--featured ul li{color:rgba(255,255,255,.88)!important}
.pcard ul li svg{flex-shrink:0;margin-top:1px}

/* CTA */
.pcard .btn-full{
  width:100%;
  justify-content:center;
  margin-top:24px;
  font-size:15px;
  font-weight:700
}

/* section bg */
.price-note{
  text-align:center;
  font-size:13px;
  color:var(--slate,#4a5568);
  margin-top:40px;
  opacity:.8
}
/* ---- end pricing page ---- */
/* ---- hero offer strip ---- */
.hero-offer-strip{
  display:inline-flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:center;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.18);
  border-radius:100px;
  padding:10px 20px;
  margin-bottom:28px;
  font-size:14px;
  color:rgba(255,255,255,.9);
  backdrop-filter:blur(8px)
}
.hero-offer-badge{
  background:var(--accent-dark);
  color:#fff;
  font-size:10px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  padding:3px 10px;
  border-radius:5px;
  white-space:nowrap
}
.hero-offer-text{color:rgba(255,255,255,.9);white-space:normal}.hero-offer-text strong{color:#eba980;font-weight:700}
.hero-offer-link{
  color:var(--sky,#8fc0ff);
  font-weight:600;
  text-decoration:none;
  white-space:nowrap
}
.hero-offer-link:hover{text-decoration:underline}
/* ---- end hero offer strip ---- */

/* ---- book-a-demo page aside redesign ---- */
.acx-aside-inner{
  display:flex;flex-direction:column;gap:20px
}
.acx-aside-badge{
  display:inline-block;
  background:rgba(31,181,131,.12);
  color:var(--good,#1fb583);
  font-size:12px;font-weight:700;
  letter-spacing:.04em;
  padding:5px 14px;
  border-radius:100px;
  width:fit-content
}
.acx-aside-title{
  font-size:22px;font-weight:800;
  color:var(--navy,#001f3d);
  line-height:1.25;
  margin:0
}
.acx-reasons{
  list-style:none;padding:0;margin:0;
  display:flex;flex-direction:column;gap:16px
}
.acx-reasons li{
  display:flex;align-items:flex-start;gap:14px
}
.acx-reason-icon{
  font-size:20px;flex-shrink:0;margin-top:2px;
  width:36px;height:36px;
  background:#f0f6ff;
  border-radius:8px;
  display:flex;align-items:center;justify-content:center;
  line-height:1;
  color:#1a56c4
}
.acx-reason-icon svg{
  width:19px;height:19px;fill:none;stroke:#1a56c4;
  stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round
}
.acx-reply-tick{
  width:14px;height:14px;fill:none;stroke:rgba(255,255,255,.8);
  stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;
  vertical-align:-2px;margin-right:2px
}
.acx-reasons li strong{
  display:block;
  font-size:14px;font-weight:700;
  color:var(--navy,#001f3d);
  margin-bottom:3px
}
.acx-reasons li p{
  font-size:13px;
  color:var(--slate,#4a5568);
  margin:0;line-height:1.5
}
.acx-aside-trust{
  border-top:1px solid var(--line,#e7eef7);
  padding-top:16px
}
.acx-aside-reply{font-size:13px;color:var(--good,#1fb583);font-weight:600;margin:0 0 6px}
.acx-aside-built{font-size:12px;color:var(--slate,#4a5568);margin:0}
.acx-aside-built a{color:var(--blue,#2f7bff);text-decoration:none;font-weight:600}
/* "How did you hear" select */
.acx-select{
  width:100%;padding:10px 14px;
  border:1.5px solid #dde4ef;
  border-radius:8px;
  font-family:var(--hanken);font-size:14px;
  color:var(--ink,#1a2b3c);
  background:#fff;
  cursor:pointer;
  appearance:auto;
  margin-top:6px
}
.acx-select:focus{outline:none;border-color:var(--blue,#2f7bff);box-shadow:0 0 0 3px rgba(47,123,255,.12)}
.acx-field--full{grid-column:1 / -1}
/* ---- end book-a-demo aside ---- */
/* mockup fade-in animation */
@keyframes mockSlideUp{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@keyframes mockPulse{0%,100%{box-shadow:0 0 0 0 rgba(31,181,131,.4)}50%{box-shadow:0 0 0 6px rgba(31,181,131,0)}}
.hero-mockup{animation:mockSlideUp .7s ease .4s both}
.hm-unit:nth-child(1){animation:mockSlideUp .5s ease .8s both}
.hm-unit:nth-child(2){animation:mockSlideUp .5s ease 1.0s both}
.hm-unit:nth-child(3){animation:mockSlideUp .5s ease 1.2s both}
.hm-badge.live{animation:mockPulse 2s ease 1.5s infinite}

/
/* ============ HERO MOCKUP (clean) ============ */
@keyframes hmSlideIn{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
@keyframes hmToastIn{0%{opacity:0;transform:translateX(20px)}15%{opacity:1;transform:translateX(0)}85%{opacity:1;transform:translateX(0)}100%{opacity:0;transform:translateX(20px)}}
@keyframes hmPulse{0%,100%{opacity:1}50%{opacity:.4}}

.hm-wrap{
  position:relative;
  background:#fff;
  border-radius:14px;
  overflow:hidden;
  box-shadow:0 24px 60px rgba(0,0,0,.4),0 0 0 1px rgba(255,255,255,.07);
  width:100%;max-width:380px;
  animation:hmSlideIn .6s ease .5s both
}
/* browser chrome */
.hm-chrome{
  background:#f0f2f5;
  padding:10px 12px;
  display:flex;align-items:center;gap:6px;
  border-bottom:1px solid #e2e6ee
}
.hm-chrome span{width:9px;height:9px;border-radius:50%}
.hm-chrome span:nth-child(1){background:#ff5f57}
.hm-chrome span:nth-child(2){background:#febc2e}
.hm-chrome span:nth-child(3){background:#28c840}
.hm-url{
  flex:1;margin-left:8px;
  background:#fff;border:1px solid #dde3ef;
  border-radius:5px;padding:4px 10px;
  font-size:11px;color:#6b7a99;font-family:monospace
}
/* page content */
.hm-page{padding:14px;display:flex;flex-direction:column;gap:10px;background:#f8faff}
.hm-page-header{
  display:flex;justify-content:space-between;align-items:center;
  padding-bottom:10px;border-bottom:1px solid #e4ebf5
}
.hm-page-title{font-size:13px;font-weight:700;color:#001f3d}
.hm-live-dot{
  font-size:11px;font-weight:600;color:#1fb583;
  display:flex;align-items:center;gap:4px
}
.hm-live-dot span{
  width:7px;height:7px;border-radius:50%;
  background:#1fb583;
  animation:hmPulse 2s ease infinite
}
/* unit cards */
.hm-unit-card{
  background:#fff;border-radius:10px;padding:12px;
  border:1.5px solid #e8eef8
}
.hm-unit-card--low{border-color:rgba(251,191,36,.5)}
.hm-uc-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:10px}
.hm-uc-size{font-size:13px;font-weight:700;color:#001f3d;margin-bottom:2px}
.hm-uc-desc{font-size:11px;color:#8898aa}
.hm-uc-pill{font-size:10px;font-weight:700;padding:3px 9px;border-radius:100px;white-space:nowrap}
.hm-uc-pill.avail{background:rgba(31,181,131,.1);color:#1fb583}
.hm-uc-pill.low{background:rgba(217,119,6,.1);color:#d97706}
.hm-uc-mid{display:flex;justify-content:space-between;align-items:center}
.hm-uc-price{font-size:20px;font-weight:800;color:#001f3d}
.hm-uc-price small{font-size:12px;font-weight:500;opacity:.55}
.hm-uc-btn{
  background:#2f7bff;color:#fff;
  border:none;border-radius:7px;
  font-size:12px;font-weight:700;
  padding:7px 14px;cursor:pointer
}
/* sync bar */
.hm-sync-bar{
  display:flex;align-items:center;gap:6px;
  font-size:11px;color:#8898aa;font-weight:600;
  padding:8px 2px 2px
}
.hm-sync-bar svg{color:#1fb583;flex-shrink:0}
/* booking toast */
.hm-toast{
  position:absolute;bottom:16px;right:12px;
  background:#001f3d;color:#fff;
  border-radius:10px;padding:10px 14px;
  display:flex;align-items:center;gap:10px;
  box-shadow:0 8px 24px rgba(0,0,0,.3);
  animation:hmToastIn 4s ease 2s both;
  pointer-events:none;max-width:220px
}
.hm-toast-icon{
  width:26px;height:26px;border-radius:50%;
  background:rgba(31,181,131,.2);color:#1fb583;
  font-size:14px;font-weight:700;
  display:flex;align-items:center;justify-content:center;
  flex-shrink:0
}
.hm-toast-title{font-size:12px;font-weight:700;margin-bottom:2px}
.hm-toast-sub{font-size:11px;opacity:.65;line-height:1.3}
/* ============ END HERO MOCKUP ============ */

/* === Responsive launch fixes (Amax) === */
@media (max-width:760px){
  .fgrid{grid-template-columns:1fr 1fr;gap:28px 24px}
  .fgrid .fbrand{grid-column:1 / -1}
  .hero-ctas{display:flex;flex-wrap:wrap;gap:10px}
  .sg-wrap{grid-template-columns:1fr}
  .hero-offer-link{display:inline-flex;align-items:center;min-height:40px}
}
@media (max-width:640px){
  .vgrid{grid-template-columns:1fr;gap:16px}
}
@media (max-width:460px){
  .fgrid{grid-template-columns:1fr;gap:22px}
}
.brand-cluster{min-height:44px}
/* === end responsive launch fixes === */

/* === Responsive launch fixes (steps + stats) === */
@media (max-width:640px){
  .steps{grid-template-columns:1fr;gap:22px}
  .steps .line{display:none}
  .stats{grid-template-columns:repeat(2,1fr);gap:18px}
}

/* === Responsive launch fixes (vis-card shrink) === */
@media (max-width:640px){
  .split .vis{min-width:0}
  .vis-card{max-width:100%}
}

/* === Responsive launch fixes (split stack) === */
@media (max-width:760px){
  .split{grid-template-columns:1fr;gap:28px}
}

/* === Responsive launch fixes (Bento section) === */
@media (max-width:860px){
  .bento{grid-template-columns:1fr 1fr;grid-auto-rows:auto;gap:16px}
  .bento .b-tall{grid-row:auto}
  .bento .b-wide{grid-column:1 / -1}
}
@media (max-width:560px){
  .bento{grid-template-columns:1fr}
  .bento .b-wide{grid-column:auto}
}


/* === Amax Connect A11y Fixes (WCAG 2.1 AA) === */

/* Fix 1: Skip-to-content link — unhides on focus */
.skip-to-content {
  position: absolute;
  left: -9999px;
  top: 4px;
  z-index: 9999;
  background: #2f7bff;
  color: #fff;
  padding: 10px 18px;
  border-radius: 6px;
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
  white-space: nowrap;
}
.skip-to-content:focus {
  left: 4px;
  outline: 3px solid #fff;
  outline-offset: 2px;
}

/* Fix 2: Eyebrow contrast — #2f7bff on rgba(47,123,255,.09) bg = 3.64:1, fails 4.5:1.
   Darken to #1a5fd4 = 5.2:1 ratio */
.eyebrow {
  color: #1a5fd4;
  border-color: rgba(26, 95, 212, 0.22);
}
/* Dark-background eyebrows stay sky-blue — they're on navy so contrast is fine */
.phero .eyebrow,
.band.navy .eyebrow,
.band.makeyours .eyebrow,
.band[style*="background"] .eyebrow {
  color: var(--sky);
  border-color: rgba(143, 192, 255, 0.3);
}

/* Fix 3: Body text contrast — #566a83 on white = 3.79:1, fails 4.5:1.
   Replace with #4a5c72 = 4.55:1 */
.band:not(.navy):not(.makeyours) p:not([class*=ac-]):not(.acx-aside-trust),
.band:not(.navy):not(.makeyours) li,
.price-note,
.feat-card-light p,
.acx-req-note,
.cw p {
  color: #4a5c72;
}

/* Fix 4: Global focus-visible ring — high-contrast, all interactive elements */
:focus-visible {
  outline: 3px solid #2f7bff !important;
  outline-offset: 2px !important;
}
a:focus-visible,
button:focus-visible,
[tabindex]:focus-visible {
  box-shadow: 0 0 0 4px rgba(47, 123, 255, 0.25) !important;
}
/* Override any outline:none that hides focus */
.acx-form input:focus,
.acx-form select:focus,
.acx-form textarea:focus {
  outline: 2px solid #2f7bff !important;
}

/* Fix 5: Nav touch target — min 44px height (WCAG 2.5.5) */
.nav-links a {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
}
header .btn,
.wrap.nav .btn {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
}

/* Fix 6: Mobile — ac-site-tab overflow causes horizontal scroll */
@media (max-width: 640px) {
  .ac-site-tabs {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 4px;
    scrollbar-width: none;
  }
  .ac-site-tabs::-webkit-scrollbar { display: none; }
  .ac-site-tab {
    flex-shrink: 0;
    white-space: nowrap;
  }
  .ac-wrap {
    overflow-x: hidden;
  }
}

/* Fix 7: Mobile — Reserve Now font too small at 11.5px */
@media (max-width: 640px) {
  .ac-unit__btn,
  .ac-btn,
  .ac-reserve-btn {
    font-size: 14px !important;
    min-height: 44px !important;
    padding: 10px 14px !important;
  }
}

/* Fix 8: Error message prefix icon for visibility */
.acx-error-msg::before {
  content: "! ";
  font-weight: 700;
  font-style: normal;
}

/* Fix 9: Consent label flex layout for larger touch target */
label[for="acx-consent"] {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  cursor: pointer;
  min-height: 44px;
  padding: 8px 0;
}
label[for="acx-consent"] input[type="checkbox"] {
  margin-top: 2px;
  flex-shrink: 0;
  width: 18px;
  height: 18px;
  cursor: pointer;
}

/* Fix 10: Skip-to-content contrast — #2f7bff on white bg = 3.89:1, fails 4.5:1.
   Reuse the same #1a5fd4 already established for eyebrow contrast (Fix 2) = 5.2:1 */
.skip-to-content {
  background: #1a5fd4;
}

/* Fix 11: Launch-offer badge contrast — white on #f59e0b = 2.15:1, fails 4.5:1.
   Darken to #b45309 = 5.0:1 */
.hero-offer-badge {
  background: #b45309;
}

/* Fix 12: Pricing "months free" badge contrast — white on #1fb583 = 2.63:1, fails 4.5:1.
   Scoped override, not the shared --good token (used elsewhere for icons where the 3:1 graphic threshold applies, not 4.5:1 text) */
.save-badge {
  background: #047857;
}
/* === End Amax Connect A11y Fixes === */

/* AMAX-FEATURES-ICONS v1 feature-card icons + bento rebalance (added by assistant) */
.why-grid .wc::before,.bento .bcard:not(.b-navy)::before{content:"";display:block;width:46px;height:46px;border-radius:13px;background-color:rgba(47,123,255,.10);background-repeat:no-repeat;background-position:center;background-size:24px 24px;margin:0 0 16px}
.why-grid .wc:nth-child(1)::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'%232f7bff'%20stroke-width%3D'1.9'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Ccircle%20cx%3D'12'%20cy%3D'12'%20r%3D'9'%2F%3E%3Cpath%20d%3D'M12%207v5l3%202'%2F%3E%3C%2Fsvg%3E")}
.why-grid .wc:nth-child(2)::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'%232f7bff'%20stroke-width%3D'1.9'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D'M3%2012a9%209%200%200%201%2015-6.7L21%208'%2F%3E%3Cpath%20d%3D'M21%203v5h-5'%2F%3E%3Cpath%20d%3D'M21%2012a9%209%200%200%201-15%206.7L3%2016'%2F%3E%3Cpath%20d%3D'M3%2021v-5h5'%2F%3E%3C%2Fsvg%3E")}
.why-grid .wc:nth-child(3)::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'%232f7bff'%20stroke-width%3D'1.9'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Ccircle%20cx%3D'12'%20cy%3D'12'%20r%3D'9'%2F%3E%3Cpath%20d%3D'M3%2012h18'%2F%3E%3Cpath%20d%3D'M12%203a14%2014%200%200%201%200%2018'%2F%3E%3Cpath%20d%3D'M12%203a14%2014%200%200%200%200%2018'%2F%3E%3C%2Fsvg%3E")}
.why-grid .wc:nth-child(4)::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'%232f7bff'%20stroke-width%3D'1.9'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D'M3%2017l6-6%204%204%207-7'%2F%3E%3Cpath%20d%3D'M17%207h4v4'%2F%3E%3C%2Fsvg%3E")}
.bento .bcard:nth-child(2)::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'%232f7bff'%20stroke-width%3D'1.9'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Crect%20x%3D'3'%20y%3D'5'%20width%3D'18'%20height%3D'14'%20rx%3D'2.5'%2F%3E%3Cpath%20d%3D'M3%2010h18'%2F%3E%3C%2Fsvg%3E")}
.bento .bcard:nth-child(3)::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'%232f7bff'%20stroke-width%3D'1.9'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D'M12%2021s-6.5-5.5-6.5-10a6.5%206.5%200%200%201%2013%200c0%204.5-6.5%2010-6.5%2010z'%2F%3E%3Ccircle%20cx%3D'12'%20cy%3D'11'%20r%3D'2.3'%2F%3E%3C%2Fsvg%3E")}
.bento .bcard:nth-child(4)::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'%232f7bff'%20stroke-width%3D'1.9'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D'M3%2012a9%209%200%200%201%2015-6.7L21%208'%2F%3E%3Cpath%20d%3D'M21%203v5h-5'%2F%3E%3Cpath%20d%3D'M21%2012a9%209%200%200%201-15%206.7L3%2016'%2F%3E%3Cpath%20d%3D'M3%2021v-5h5'%2F%3E%3C%2Fsvg%3E")}
.bento .bcard:nth-child(5)::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'%232f7bff'%20stroke-width%3D'1.9'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D'M12%203c3%204%206%207%206%2010a6%206%200%200%201-12%200c0-3%203-6%206-10z'%2F%3E%3C%2Fsvg%3E")}
.bento .bcard:nth-child(6)::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'%232f7bff'%20stroke-width%3D'1.9'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Ccircle%20cx%3D'11'%20cy%3D'11'%20r%3D'7'%2F%3E%3Cpath%20d%3D'M21%2021l-4.3-4.3'%2F%3E%3C%2Fsvg%3E")}
@media (min-width:561px){.bento .bcard:nth-child(5),.bento .bcard:nth-child(6){grid-column:span 2 !important}}
/* AMAX-FEATURES-ICONS v1 end */


/* AMAX-ABOUT v2 about credibility + why bands (added by assistant) */
.ab-who .lede,.ab-why .lede{max-width:660px;margin:14px auto 0;color:var(--slate);font-size:16px;line-height:1.6}
.ab-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;max-width:1040px;margin:34px auto 0}
.ab-stat{position:relative;background:linear-gradient(180deg,#fff,#f6faff);border:1px solid var(--line);border-radius:18px;padding:28px 18px 24px;text-align:center;box-shadow:0 4px 18px rgba(12,32,56,.05);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.ab-stat:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(47,123,255,.13);border-color:#c9defc}
.ab-stat::before{content:'';display:block;width:48px;height:48px;margin:0 auto 14px;border-radius:14px;background-color:rgba(47,123,255,.10);background-repeat:no-repeat;background-position:center;background-size:24px 24px}
.ab-stat:nth-child(1)::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'%232f7bff'%20stroke-width%3D'1.9'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Crect%20x%3D'3'%20y%3D'4.5'%20width%3D'18'%20height%3D'16'%20rx%3D'2.5'%2F%3E%3Cpath%20d%3D'M3%209h18'%2F%3E%3Cpath%20d%3D'M8%202.5v4'%2F%3E%3Cpath%20d%3D'M16%202.5v4'%2F%3E%3C%2Fsvg%3E")}
.ab-stat:nth-child(2)::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'%232f7bff'%20stroke-width%3D'1.9'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D'M12%203l9%204.5v9l-9%204.5-9-4.5v-9z'%2F%3E%3Cpath%20d%3D'M3%207.5l9%204.5%209-4.5'%2F%3E%3Cpath%20d%3D'M12%2012v9'%2F%3E%3C%2Fsvg%3E")}
.ab-stat:nth-child(3)::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'%232f7bff'%20stroke-width%3D'1.9'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Ccircle%20cx%3D'9'%20cy%3D'8'%20r%3D'3.2'%2F%3E%3Cpath%20d%3D'M3.5%2020a5.5%205.5%200%200%201%2011%200'%2F%3E%3Cpath%20d%3D'M16%205.2a3.2%203.2%200%200%201%200%206'%2F%3E%3Cpath%20d%3D'M17.5%2020a5.5%205.5%200%200%200-3-4.9'%2F%3E%3C%2Fsvg%3E")}
.ab-stat:nth-child(4)::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'%232f7bff'%20stroke-width%3D'1.9'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D'M12%203l9%204.5-9%204.5-9-4.5z'%2F%3E%3Cpath%20d%3D'M3%2012l9%204.5%209-4.5'%2F%3E%3Cpath%20d%3D'M3%2016.5l9%204.5%209-4.5'%2F%3E%3C%2Fsvg%3E")}
.ab-stat strong{display:block;font-family:var(--bricolage);color:var(--navy);font-size:20px;line-height:1.15;margin-bottom:6px;letter-spacing:-.01em}
.ab-stat span{color:var(--slate);font-size:13px;line-height:1.4}
.ab-points{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;max-width:1040px;margin:34px auto 0}
.ab-point{position:relative;background:#fff;border:1px solid var(--line);border-radius:18px;padding:26px 24px;text-align:left;box-shadow:0 4px 18px rgba(12,32,56,.05);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.ab-point:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(47,123,255,.13);border-color:#c9defc}
.ab-point::before{content:'';display:block;width:48px;height:48px;margin:0 0 16px;border-radius:14px;background-color:rgba(47,123,255,.10);background-repeat:no-repeat;background-position:center;background-size:24px 24px}
.ab-point:nth-child(1)::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'%232f7bff'%20stroke-width%3D'1.9'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Ccircle%20cx%3D'9'%20cy%3D'8'%20r%3D'3.2'%2F%3E%3Cpath%20d%3D'M3.5%2020a5.5%205.5%200%200%201%2011%200'%2F%3E%3Cpath%20d%3D'M16%205.2a3.2%203.2%200%200%201%200%206'%2F%3E%3Cpath%20d%3D'M17.5%2020a5.5%205.5%200%200%200-3-4.9'%2F%3E%3C%2Fsvg%3E")}
.ab-point:nth-child(2)::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'%232f7bff'%20stroke-width%3D'1.9'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Ccircle%20cx%3D'11'%20cy%3D'11'%20r%3D'7'%2F%3E%3Cpath%20d%3D'M21%2021l-4.3-4.3'%2F%3E%3C%2Fsvg%3E")}
.ab-point:nth-child(3)::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'%232f7bff'%20stroke-width%3D'1.9'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Cpath%20d%3D'M12%203l9%204.5v9l-9%204.5-9-4.5v-9z'%2F%3E%3Cpath%20d%3D'M3%207.5l9%204.5%209-4.5'%2F%3E%3Cpath%20d%3D'M12%2012v9'%2F%3E%3C%2Fsvg%3E")}
.ab-point strong{display:block;font-family:var(--bricolage);color:var(--navy);font-size:17.5px;margin-bottom:8px}
.ab-point span{color:var(--slate);font-size:14.5px;line-height:1.55}
@media(max-width:900px){.ab-stats{grid-template-columns:repeat(2,1fr)}.ab-points{grid-template-columns:1fr}}
@media(max-width:560px){.ab-stats{grid-template-columns:1fr}}
/* AMAX-ABOUT v2 end */


/* AMAX-PRICING-H1 keep promoted pricing heading identical to section heading */
.sec-head h1{font-family:var(--bricolage);font-size:clamp(32px,6vw,46px);font-weight:800;line-height:1.08;letter-spacing:-.02em;color:var(--navy);margin:0;text-align:center}
/* AMAX-PRICING-H1 end */


/* AMAX-SINGLE-POST v1 */
.single .phero + .wrap{max-width:920px;margin-left:auto;margin-right:auto;}
.single .phero + .wrap img{width:100%;aspect-ratio:16/9;object-fit:cover;object-position:center 58%;border-radius:18px;display:block;box-shadow:0 18px 50px rgba(0,31,61,.16);}
.single .post-article{max-width:860px;margin-left:auto;margin-right:auto;}
.single .post-article p{font-size:17px;line-height:1.75;color:var(--slate);margin:0 0 1.15em;}
.single .post-article h2{font-family:var(--bricolage),'Bricolage Grotesque',sans-serif;font-size:30px;line-height:1.2;letter-spacing:-.01em;color:var(--ink);margin:2.1em 0 .55em;}
.single .post-article h2:first-child{margin-top:0;}
.single .post-article h3{font-size:21px;color:var(--ink);margin:1.6em 0 .4em;}
.single .post-article ul{margin:0 0 1.2em;padding-left:1.2em;}
.single .post-article li{font-size:17px;line-height:1.7;color:var(--slate);margin:.4em 0;}
.single .post-article li::marker{color:var(--blue);}
.single .post-article a{color:var(--blue);text-decoration:underline;text-underline-offset:2px;}
.single .post-article strong{color:var(--ink);}
.single .post-article figure.wp-block-table{margin:1.7em 0;overflow-x:auto;}
.single .post-article table{width:100%;border-collapse:separate;border-spacing:0;border:1px solid var(--line);border-radius:14px;overflow:hidden;font-size:15.5px;}
.single .post-article thead th{background:var(--mist);color:var(--ink);font-weight:700;text-align:left;padding:14px 16px;border-bottom:1px solid var(--line);}
.single .post-article tbody td{padding:13px 16px;border-bottom:1px solid var(--line);color:var(--slate);vertical-align:top;}
.single .post-article tbody tr:last-child td{border-bottom:0;}
.single .post-article tbody td:first-child{font-weight:600;color:var(--ink);}
.single .post-article tbody td:last-child{background:rgba(47,123,255,.045);}
.single .post-article .wp-block-buttons{margin:2.2em 0 .5em;}
.single .post-article .wp-block-button__link{background:var(--blue);color:#fff;text-decoration:none;border-radius:12px;padding:15px 30px;font-weight:600;font-size:16px;box-shadow:0 10px 24px rgba(47,123,255,.28);}
.single .post-article .wp-block-button__link:hover{filter:brightness(1.06);}
/* end AMAX-SINGLE-POST v1 */


/* AMAX-HERO-LEFT v1 */
.hero .hero-left h1{font-size:clamp(30px,4.3vw,44px)!important;line-height:1.1!important;letter-spacing:-1.2px!important;margin-bottom:22px;}
.hero .hero-left h1 .hl{background:linear-gradient(110deg,#8fc4ff,#3f86ff)!important;-webkit-background-clip:text!important;background-clip:text!important;color:transparent!important;}
.hero .hero-left p{font-size:19px;line-height:1.62;color:rgba(255,255,255,.84);}
.hero .hero-left p.sub{margin-bottom:32px!important;}
.hero .hero-left .hero-offer-strip{padding:14px 18px!important;border-radius:12px!important;box-shadow:0 12px 32px rgba(245,158,11,.16)!important;}
.hero .hero-left .hero-ctas{margin-top:4px!important;}
/* end AMAX-HERO-LEFT v1 */


/* Mobile hero overflow fix (2026-07-04): force-wrap the offer strip so it never overflows narrow viewports, regardless of other .hero-offer-strip rules elsewhere in this file. */
@media(max-width:900px){
  .hero .hero-left .hero-offer-strip{flex-wrap:wrap!important;justify-content:center!important;row-gap:6px!important}
}


/* Mobile fix (2026-07-04): collapse the sign-up wizard and account grids to one column, and let grid items shrink instead of overflowing. */
@media(max-width:900px){
  .wiz-grid{grid-template-columns:1fr!important}
  .wiz-main,.wiz-side{min-width:0!important}
  .acct-grid{grid-template-columns:1fr!important}
  .acct-card{min-width:0!important}
}

/* ===== Footer redesign (2026-07-04) ===== */
.ftr-top{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;padding-bottom:40px;margin-bottom:40px;border-bottom:1px solid rgba(255,255,255,.12)}
.ftr-top-copy{max-width:520px}
.ftr-eyebrow{display:block;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--blue-bright);font-weight:700;margin-bottom:8px}
.ftr-top-copy h3{font-family:var(--bricolage);color:#fff;font-size:clamp(20px,2.4vw,26px);font-weight:700;line-height:1.25;margin:0}
.fgrid2{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.1fr;gap:40px;margin-bottom:48px}
.ftr-links h4,.ftr-contact h4{color:#fff;font-family:var(--hanken);font-size:13px;letter-spacing:.05em;text-transform:uppercase;margin-bottom:16px;font-weight:600}
.ftr-links ul{list-style:none;display:flex;flex-direction:column;gap:10px;margin:0;padding:0}
.ftr-links ul a{font-size:14.5px;color:rgba(255,255,255,.7);text-decoration:none;transition:color .2s,padding-left .2s;display:inline-block}
.ftr-links ul a:hover{color:#fff;padding-left:4px}
.ftr-contact{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:22px;align-self:start}
.ftr-contact-row{display:flex;align-items:center;gap:10px;font-size:14px;color:rgba(255,255,255,.85);text-decoration:none;padding:10px 0;transition:color .2s}
.ftr-contact-row:hover{color:#fff}
.ftr-contact-row svg{flex:0 0 auto;opacity:.75}
.ftr-contact-row+.ftr-contact-row{border-top:1px solid rgba(255,255,255,.08)}
@media(max-width:900px){
  .ftr-top{flex-direction:column;align-items:flex-start;text-align:left}
  .ftr-top .btn{width:100%;justify-content:center}
  .fgrid2{grid-template-columns:1fr 1fr;gap:32px 24px}
  .fgrid2 .fbrand{grid-column:1/-1}
}
@media(max-width:560px){
  .fgrid2{grid-template-columns:1fr}
}
/* ===== end footer redesign ===== */

/* ===== Header active-nav indicator (2026-07-04) ===== */
.nav-item.active{position:relative}
.nav-item.active::after{content:"";position:absolute;left:14px;right:14px;bottom:0;height:2px;border-radius:2px;background:var(--blue-bright);}
.nav-links a.nav-item.active{color:#fff;font-weight:600}
.nav-item.has-menu.active .nav-top{color:#fff;font-weight:600}
header.solid .nav-links a.nav-item.active,header.scrolled .nav-links a.nav-item.active{color:var(--navy);opacity:1;font-weight:600}
header.solid .nav-item.has-menu.active .nav-top,header.scrolled .nav-item.has-menu.active .nav-top{color:var(--navy);opacity:1;font-weight:600;background:rgba(4,22,48,.05)}
/* ===== end header active-nav indicator ===== */

/* ===== Pulse header badge (2026-07-05) ===== */
.nav-pulse-badge{display:inline-flex;align-items:center;font-family:var(--hanken);font-size:11px;font-weight:700;letter-spacing:.04em;color:#7c5cff;background:rgba(124,92,255,.12);border:1px solid rgba(124,92,255,.3);border-radius:100px;padding:3px 9px;line-height:1.3;margin-right:2px}
header.solid .nav-pulse-badge,header.scrolled .nav-pulse-badge{color:#6a3ff0;background:rgba(124,92,255,.1);border-color:rgba(124,92,255,.28)}
@media(max-width:900px){.nav-pulse-badge{display:none}}

/* ===== Homepage 'recently shipped' Stora-update chip (2026-07-08) ===== */
.stora-update-chip{display:inline-flex;align-items:center;gap:9px;background:rgba(143,192,255,.10);border:1px solid rgba(143,192,255,.28);color:#fff;font-size:13.5px;font-weight:600;line-height:1.4;padding:9px 18px;border-radius:100px;max-width:640px;text-align:center}
.stora-update-text{transition:opacity .35s ease;text-align:center}
.stora-update-chip{text-decoration:none;cursor:pointer;transition:background .2s,border-color .2s}
.stora-update-chip:hover{background:rgba(143,192,255,.18);border-color:rgba(143,192,255,.45)}
.stora-update-arrow{transition:transform .2s ease;flex:0 0 auto}
.stora-update-chip:hover .stora-update-arrow{transform:translateX(3px)}
.stora-update-dot{width:7px;height:7px;border-radius:50%;background:#10b981;flex:0 0 auto;box-shadow:0 0 0 3px rgba(16,185,129,.25)}
@media(max-width:640px){.stora-update-chip{font-size:12.5px;padding:8px 14px}}

/* ── Language demo switcher (Amax Connect multilingual demo) ── */
.acx-langbar{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:0 0 22px}
.acx-langbar__label{font-size:12.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--slate);margin-right:4px}
a.acx-lang{display:inline-block;padding:7px 15px;border:1px solid var(--line);border-radius:999px;background:#fff;font-size:14.5px;font-weight:600;color:var(--navy);text-decoration:none;transition:border-color .16s,background-color .16s,color .16s}
a.acx-lang:hover{border-color:#1a56c4;color:#1a56c4}
a.acx-lang.acx-lang--on{background:var(--navy);border-color:var(--navy);color:#fff}
a.acx-lang.acx-lang--on:hover{color:#fff}
@media(prefers-reduced-motion:reduce){a.acx-lang{transition:none}}

/* The switcher sits inside a navy panel on /demo/, where the default active
   pill (navy on navy) would be invisible. Invert inside that panel: inactive
   reads as an outline, active as a solid white pill. */
.acx-lang-intro .acx-langbar__label{color:rgba(255,255,255,.62)}
.acx-lang-intro a.acx-lang{background:transparent;border-color:rgba(255,255,255,.30);color:#fff}
.acx-lang-intro a.acx-lang:hover{background:rgba(255,255,255,.10);border-color:rgba(255,255,255,.55);color:#fff}
.acx-lang-intro a.acx-lang.acx-lang--on{background:#fff;border-color:#fff;color:var(--navy)}
.acx-lang-intro a.acx-lang.acx-lang--on:hover{background:#fff;color:var(--navy)}


/* text-link CTA: secondary/navigational actions that must not compete with
   the two real buttons (Book a free demo / See it live). Added 2026-07-29. */
.tlink{
  display:inline-block;
  font-family:inherit;font-size:14.5px;font-weight:700;
  color:#1a56c4;text-decoration:none;
  border:0;background:none;padding:0;
}
.tlink:hover,.tlink:focus-visible{text-decoration:underline}


/* Mirrors the plugin's inline SVG icon sizing, for the hardcoded card mock. */
.ac-ico{width:1em;height:1em;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;vertical-align:-.13em;flex:none}


/* Header secondary CTA (playground). The header is transparent over the dark
   hero and gains .solid/.scrolled on inner pages and on scroll, so this needs
   both states explicitly. Do NOT use .btn-ghost here: it is white-on-transparent
   only and vanishes once the header goes solid. */
.nav-cta-alt{background:transparent;border:1px solid rgba(255,255,255,.28);color:#fff;box-shadow:none}
.nav-cta-alt:hover{border-color:rgba(255,255,255,.55);background:rgba(255,255,255,.08);color:#fff;transform:none;box-shadow:none}
header.solid .nav-cta-alt,header.scrolled .nav-cta-alt{border-color:var(--line,#e7eef7);color:var(--navy,#001f3d)}
header.solid .nav-cta-alt:hover,header.scrolled .nav-cta-alt:hover{border-color:#1a56c4;color:#1a56c4;background:transparent}
@media (max-width:900px){.nav-cta a.nav-cta-alt,header .nav-cta-alt{display:none !important}}


/* Footer touch targets (2026-07-29).
   The column links were 35px tall and the legal row 33px. WCAG 2.2 AA (2.5.8)
   only asks for 24x24, so this was already conformant, but 44px is the Apple
   HIG / WCAG 2.1 AAA figure and these sit close together on a phone.
   The list gap drops from 10px to 2px at the same time, so the pitch stays
   46px against the previous 45px: the target grows, the layout does not. */
@media (max-width:900px){
  .ftr-links ul{gap:2px}
  .ftr-links ul a{display:flex;align-items:center;min-height:44px}
  .fbottom span a{display:inline-flex;align-items:center;min-height:44px;padding:0 5px}
  a.ftr-contact-row{min-height:44px}
  .fmaker a{min-height:44px}
}

/* Homepage length (2026-07-29). Section padding resolves to its 64px floor on a
   phone; 48px across ~12 bands is still comfortable. The live-units proof grid
   stacked all six cards on mobile, 17.4% of the page; three prove the point and
   the section already ends with See it live. Scoped to .acx-livegrid so the demo
   and playground grids are untouched, and the per-tab counts are hidden so no
   number contradicts the three visible cards.
   Written as one line with no inner comments and no spaces around the child
   combinator: the Autoptimize minifier mangled the multi-line version, dropping
   the @media wrapper and leaving an unbalanced brace.
   The count rule needs !important because the plugin sets
   .ac-wrap .ac-site-tab__count{display:inline-block !important}. */
@media (max-width:640px){section.band{padding:48px 0}.acx-livegrid .ac-grid>.ac-card:nth-child(n+4){display:none}.acx-livegrid .ac-site-tab__count{display:none !important}.lg-grid .lg-card:nth-child(n+3){display:none}}


/* Statutory trading disclosure in the footer. Companies (Names and Trading
   Disclosures) Regulations 2015 reg 25 requires registered name, place of
   registration, company number and registered office on the website. */
.ftr-entity{display:block;margin-top:6px}


/* Effective date on the legal pages. Replaces the pre-publication draft notice. */
.legal-updated{font-size:13.5px;color:var(--slate);margin:0 0 26px}


/* Nav grouping (2026-07-31).
   The Connect dropdown had reached seven items in a single 290x480px column,
   which is the height the bar could not carry. Split into two labelled columns
   so it reads as two decisions (what it does / see it working) at roughly half
   the height. The bar itself was never crowded: 286px of horizontal slack at
   1280 and above, so widening the panel costs nothing.
   Media blocks are single-line with no inner comments because Autoptimize
   mangles multi-line ones. */
.dropdown.dd-2col{min-width:556px;padding:10px;display:grid;grid-template-columns:1fr 1fr;gap:0 4px;align-items:stretch}
.dd-col{min-width:0}
.dropdown.dd-2col .dd-col+.dd-col{border-left:1px solid var(--line);padding-left:8px}
.dd-head{font-family:var(--hanken);font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--slate);margin:0;padding:7px 13px 5px}

/* The phone drawer is styled in header.php's inline block, where the rest of the
   drawer already lives. Only the desktop panel is defined here. */
.dropdown.dd-2col a span{text-wrap:pretty}

/* ===== Auto-hiding header (2026-08-12) =====
   .nav-hidden is set only by main.js, which holds it off while a menu or the
   phone drawer is open, while focus is inside the bar, near the top of the
   page, and entirely under prefers-reduced-motion. See the comment there.

   Declared at the very end of this file on purpose. header{} is defined TWICE
   in this stylesheet (the block near the top is repeated verbatim further
   down), and both copies set `transition` without a transform entry. Writing
   the transform transition next to the first copy would have it silently
   dropped by the second, and the bar would jump rather than slide. Last
   declaration wins, so it has to live here.

   The transform is the reason the bar needs its own stacking promotion: the
   desktop pill uses backdrop-filter, which re-rasterises against whatever is
   behind it on every frame of the slide. */
header{transition:background .3s,box-shadow .3s,backdrop-filter .3s,transform .32s cubic-bezier(.4,0,.2,1);will-change:transform}
header.nav-hidden{transform:translateY(-100%)}

/* Desktop nav between the 900px burger breakpoint and ~1140px: the full bar
   needs about 1130px, so below that the flex row squeezed the logo to nothing
   and wrapped "Who it's for" onto three lines. Keep every label on one line,
   stop the logo shrinking and drop the "by Amax Marketing" tag. Below 1010px
   also tighten the link padding and drop the header "See it live" button
   (the Connect dropdown and page content still link to it). Single-line blocks: Autoptimize mangles
   multi-line media blocks. */
@media (min-width:901px) and (max-width:1140px){#hdr .nav-top,#hdr .nav-links>a,#hdr .nav-cta .btn{white-space:nowrap}#hdr .brand-group{flex-shrink:0}}
@media (min-width:901px) and (max-width:1010px){#hdr .nav-links .nav-top,#hdr .nav-links>a{padding-left:10px;padding-right:10px}#hdr .nav-cta .nav-cta-alt{display:none !important}}
