/* Fonts: Barlow family, self-hosted (SIL Open Font License, see fonts/OFL-LICENSE.txt) */
@font-face{font-family:'Barlow';font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/barlow-latin-400-normal.woff2) format('woff2')}
@font-face{font-family:'Barlow';font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/barlow-latin-500-normal.woff2) format('woff2')}
@font-face{font-family:'Barlow';font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/barlow-latin-600-normal.woff2) format('woff2')}
@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/barlow-condensed-latin-600-normal.woff2) format('woff2')}
@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/barlow-condensed-latin-700-normal.woff2) format('woff2')}
@font-face{font-family:'Barlow Semi Condensed';font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/barlow-semi-condensed-latin-400-normal.woff2) format('woff2')}
@font-face{font-family:'Barlow Semi Condensed';font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/barlow-semi-condensed-latin-600-normal.woff2) format('woff2')}
@font-face{font-family:'Barlow Semi Condensed';font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/barlow-semi-condensed-latin-700-normal.woff2) format('woff2')}
/* Layout: navy product stage with a tilted UI collage, then one guest's visit told in order on a cool light ground, closing on a navy sign-up band. */
:root{
  --bg:#F4F7FB; --surface:#FFFFFF; --ink:#0B1F3A; --muted:#4D5C71; --line:#DCE4EE;
  --accent:#009DE0; --accent-ink:#0072A8; --ok:#1FB27A;
  --stage:#0B1F3A; --stage-2:#143D6B; --on-stage:#FFFFFF; --on-stage-muted:#B7CAE0; --stage-line:rgba(255,255,255,.16);
  --shadow:0 24px 50px rgba(11,31,58,.14);
  --f-display:'Barlow Condensed','Arial Narrow',Arial,sans-serif;
  --f-ui:'Barlow Semi Condensed','Arial Narrow',Arial,sans-serif;
  --f-body:'Barlow',system-ui,-apple-system,'Segoe UI',Arial,sans-serif;
  --wrap:1180px;
  --grad:url("../images/bg-gradient.svg");
}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){
  --bg:#071426; --surface:#0E2340; --ink:#E9F0F8; --muted:#A3B6CD; --line:#1E3657;
  --accent:#2CB4EF; --accent-ink:#5CC6F4; --ok:#2BC48A;
  --stage:#050F1E; --stage-2:#10325A; --shadow:0 24px 50px rgba(0,0,0,.45); color-scheme:dark}}
:root[data-theme="dark"]{
  --bg:#071426; --surface:#0E2340; --ink:#E9F0F8; --muted:#A3B6CD; --line:#1E3657;
  --accent:#2CB4EF; --accent-ink:#5CC6F4; --ok:#2BC48A;
  --stage:#050F1E; --stage-2:#10325A; --shadow:0 24px 50px rgba(0,0,0,.45); color-scheme:dark}

*{box-sizing:border-box}
body{background:var(--bg);color:var(--ink);font-family:var(--f-body);font-size:17px;line-height:1.55;-webkit-font-smoothing:antialiased}
a{color:inherit}
:focus-visible{outline:3px solid var(--accent);outline-offset:3px;border-radius:6px}
.wrap{max-width:var(--wrap);margin-inline:auto;padding-inline:clamp(16px,4vw,40px)}
h1,h2,h3{font-family:var(--f-display);font-weight:700;text-transform:uppercase;letter-spacing:.005em;line-height:.95;margin:0;text-wrap:balance}
p{margin:0}
.eyebrow{font-family:var(--f-ui);font-weight:700;font-size:13px;letter-spacing:.2em;text-transform:uppercase;color:var(--accent-ink)}
svg{display:block;width:100%;height:auto}


/* header */
.top{position:sticky;top:env(safe-area-inset-top,0px);z-index:20;background:color-mix(in srgb,var(--stage) 92%,transparent);backdrop-filter:blur(10px);border-bottom:1px solid var(--stage-line)}
.top .wrap{display:flex;align-items:center;gap:28px;height:68px}
.brand{width:168px;flex:none}
.nav{display:flex;gap:26px;margin-left:auto;font-family:var(--f-ui);font-weight:600;font-size:16px}
.nav a{color:var(--on-stage-muted);text-decoration:none}
.nav a:hover{color:var(--on-stage)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:var(--f-ui);font-weight:700;font-size:17px;letter-spacing:.02em;text-decoration:none;border-radius:999px;padding:12px 22px;border:0;cursor:pointer;transition:transform .15s ease,background .15s ease}
.btn:hover{transform:translateY(-1px)}
.btn-primary{background:var(--accent);color:#fff}
.btn-primary:hover{background:#0AA9EE}
.btn-ghost{color:var(--on-stage);box-shadow:inset 0 0 0 1.5px var(--stage-line)}
.btn-ghost:hover{box-shadow:inset 0 0 0 1.5px var(--on-stage-muted)}
.top .btn{padding:9px 18px;font-size:15px}

/* hero */
.hero{background:#0A1D36 var(--grad) center/cover no-repeat;color:var(--on-stage);overflow:hidden}
.hero .wrap{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:40px;align-items:center;padding-block:72px 88px}
.pill{display:inline-flex;gap:8px;align-items:center;border:1.5px solid var(--stage-line);border-radius:999px;padding:6px 14px;font-family:var(--f-ui);font-weight:700;font-size:13px;letter-spacing:.18em;text-transform:uppercase}
.pill b{color:var(--accent)}
.hero h1{font-size:clamp(40px,5.4vw,78px);margin-top:22px;hyphens:manual}
.hero h1 em{font-style:normal;color:var(--accent);display:block}
.lede{margin-top:24px;max-width:34ch;font-size:clamp(18px,1.6vw,21px);color:var(--on-stage-muted);font-weight:400}
.lede strong{color:var(--on-stage);font-weight:600}
.cta-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}
.fine{margin-top:16px;font-family:var(--f-ui);font-size:15px;color:var(--on-stage-muted);display:flex;flex-wrap:wrap;gap:6px 18px}
.fine span::before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--ok);margin-right:8px;vertical-align:2px}

.player{width:100%;max-width:600px;margin-inline:auto}
.stage{position:relative;width:100%;aspect-ratio:1/.96}
.scene{position:absolute;inset:0;pointer-events:none}
.el{position:absolute;opacity:0;transform:translate(var(--x0,0px),var(--y0,26px)) rotate(var(--r,0deg)) scale(var(--s0,1));transition:opacity .35s ease,transform .35s ease}
.scene.on .el{opacity:1;transform:translate(0,0) rotate(var(--r,0deg)) scale(1);transition:opacity .6s ease var(--d,0s),transform .8s cubic-bezier(.2,.7,.2,1) var(--d,0s)}
.drop{filter:drop-shadow(0 26px 34px rgba(0,0,0,.45))}
/* 1 invitation */
.e-mail{left:0;top:34%;width:58%;--y0:-34px;--r:-2deg;z-index:2}
.e-invite{left:50%;top:4%;width:32%;--r:5deg;--d:.7s}
.mail{background:#fff;color:#0B1F3A;border-radius:18px;padding:18px 20px;font-family:var(--f-ui);box-shadow:0 0 0 1px #E3E7EF inset}
.mail-top{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:700;color:#3B3F4A}
.mail-top .mi{width:24px;height:24px;border-radius:7px;background:#0081BE;display:grid;place-items:center}
.mail-top .mi svg{width:14px}
.mail-top .t{margin-left:auto;font-weight:400;color:#6B7380}
.mail .from{margin-top:12px;font-size:14px;color:#6B7380}
.mail .subj{margin-top:2px;font-size:clamp(16px,2.2vw,20px);font-weight:700;line-height:1.2}
.mail .meta{margin-top:4px;font-size:15px;color:#4D5C71}
.mail .acts{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.mail .acts span{font-size:14px;font-weight:700;border-radius:999px;padding:7px 14px;background:#009DE0;color:#fff}
.mail .acts span+span{background:#0B1F3A}
/* 2 safety */
.e-video{left:13%;top:12%;width:74%;--r:-2deg}
.vprog{transform:scaleX(0);transform-box:fill-box;transform-origin:left center}
.vrow1,.vrow2,.vpill{opacity:0}
.scene.on .vprog{transform:scaleX(1);transition:transform 2s linear .5s}
.scene.on .vrow1{opacity:1;transition:opacity .4s ease 2.5s}
.scene.on .vrow2{opacity:1;transition:opacity .4s ease 2.9s}
.scene.on .vpill{opacity:1;transition:opacity .4s ease 3.3s}
/* 3 check-in */
.e-kiosk{left:54%;top:0;width:38%;--r:-3deg}
.e-wallet{left:20%;top:36%;width:28%;--r:-8deg;--d:.2s}
.scene.on .e-wallet .tap{animation:tap 1.6s cubic-bezier(.4,0,.2,1) .9s both}
@keyframes tap{to{transform:translate(72%,-2%) rotate(-4deg)}}
.e-chip{left:4%;top:84%;width:46%;--r:-3deg;--d:2.5s;z-index:3}
.ping{position:absolute;left:78%;top:42%;width:9%;aspect-ratio:1;border-radius:50%;border:3px solid var(--ok);opacity:0;z-index:3}
.scene.on .ping{animation:ping 1.2s ease-out 2.3s 2}
@keyframes ping{0%{opacity:.9;transform:scale(.4)}100%{opacity:0;transform:scale(2.2)}}
/* 4 host notified */
.e-n1,.e-n2,.e-n3{left:7%;width:86%;--y0:-36px;--s0:.96}
.e-n1{top:12%;--d:.3s}
.e-n2{top:38%;--d:1.2s}
.e-n3{top:64%;--d:2.1s}
/* stepper */
.steps-ui{list-style:none;margin:18px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.steps-ui button{all:unset;cursor:pointer;display:grid;gap:8px;width:100%;font-family:var(--f-ui);font-size:14px;font-weight:600;color:var(--on-stage-muted);letter-spacing:.02em}
.steps-ui button:focus-visible{outline:3px solid var(--accent);outline-offset:4px;border-radius:6px}
.steps-ui b{color:var(--on-stage);font-weight:700;margin-right:6px}
.steps-ui [aria-current="step"]{color:var(--on-stage)}
.bar{height:4px;border-radius:4px;background:var(--stage-line);overflow:hidden}
.bar i{display:block;height:100%;width:0;background:var(--accent)}
.steps-ui .done .bar i{width:100%}
.steps-ui [aria-current="step"] .bar i{width:100%}
.playing .steps-ui [aria-current="step"] .bar i{animation:fill var(--dur,4.6s) linear both}
@keyframes fill{from{width:0}to{width:100%}}
@media (prefers-reduced-motion:reduce){.el,.scene.on .el,.vprog,.scene.on .vprog{transition:none!important}.vprog{transform:none}.vrow1,.vrow2,.vpill{opacity:1}.scene.on .e-wallet .tap,.scene.on .ping{animation:none}}

/* facts strip */
.facts{border-bottom:1px solid var(--line);background:var(--surface)}
.facts ul{list-style:none;margin:0;padding:22px 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.facts li{font-family:var(--f-ui);font-size:15px;color:var(--muted);line-height:1.35}
.facts li b{display:block;font-family:var(--f-display);font-size:24px;color:var(--ink);text-transform:uppercase;letter-spacing:.01em}

/* sections */
section.block{padding-block:clamp(64px,9vw,112px)}
.head{max-width:720px}
.head h2{font-size:clamp(38px,5vw,60px);margin-top:12px}
.head p{margin-top:18px;color:var(--muted);font-size:19px;max-width:56ch}

/* journey */
.journey{display:grid;gap:clamp(56px,8vw,96px);margin-top:64px}
.step{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,6vw,80px);align-items:center}
.step:nth-child(even) .copy{order:2}
.num{font-family:var(--f-display);font-weight:700;font-size:15px;letter-spacing:.16em;color:var(--accent-ink);display:flex;align-items:center;gap:12px;text-transform:uppercase}
.num i{font-style:normal;display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--accent);color:#fff;font-size:17px;letter-spacing:0}
.copy h3{font-size:clamp(32px,3.6vw,44px);margin-top:14px}
.copy p{margin-top:16px;color:var(--muted);max-width:46ch}
.ticks{list-style:none;padding:0;margin:22px 0 0;display:grid;gap:10px}
.ticks li{display:flex;gap:12px;align-items:flex-start;font-weight:500}
.ticks li::before{content:"";flex:none;width:20px;height:20px;margin-top:3px;border-radius:50%;background:var(--ok) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M6 10.2l2.6 2.6 5.4-5.6' fill='none' stroke='white' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/100% no-repeat}
.visual{position:relative;min-height:0;border-radius:28px;background:linear-gradient(160deg,color-mix(in srgb,var(--accent) 14%,var(--surface)),var(--surface));border:1px solid var(--line);aspect-ratio:5/4;overflow:hidden}
.visual>div{position:absolute}
.soft{filter:drop-shadow(0 20px 28px rgba(11,31,58,.22))}
/* step visuals */
.v1-phone{left:12%;top:8%;width:30%;transform:rotate(-5deg)}
.v1-park{left:46%;top:22%;width:44%;transform:rotate(3deg)}
.v2-kiosk{left:10%;top:6%;width:30%;transform:rotate(-3deg)}
.v2-notif{left:36%;top:30%;width:58%;transform:rotate(2deg)}
.v2-chip{left:40%;top:64%;width:44%;transform:rotate(-2deg)}
.v3-video{left:20%;top:12%;width:58%;transform:rotate(-2deg)}
.v4-evac{left:24%;top:9%;width:52%;transform:rotate(3deg)}

/* overview */
.overview{background:var(--surface);border-block:1px solid var(--line)}
.dash{margin-top:48px;border-radius:18px;overflow:hidden;box-shadow:var(--shadow);border:1px solid var(--line);transform:perspective(1600px) rotateX(4deg);transform-origin:50% 0}
.grid4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:40px}
.card{background:var(--bg);border:1px solid var(--line);border-radius:18px;padding:24px;min-width:0}
.ic{width:44px;height:44px;border-radius:12px;background:var(--accent);display:grid;place-items:center}
.ic svg{width:24px;height:24px;fill:none;stroke:#fff;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.card h3{font-size:22px;margin-top:18px;line-height:1.05}
.card p{margin-top:10px;color:var(--muted);font-size:16px}

/* more features */
.tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin-top:40px;background:var(--line);border:1px solid var(--line);border-radius:18px;overflow:hidden}
.tile{background:var(--bg);padding:24px;min-width:0}
.tile h3{font-size:22px;line-height:1.05}
.tile p{margin-top:8px;color:var(--muted);font-size:16px}

/* compliance */
.comp{background:#0A1D36 var(--grad) 30% 40%/cover no-repeat;color:var(--on-stage)}
.comp .eyebrow{color:var(--accent)}
.comp-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(32px,6vw,80px);align-items:center}
.comp h2{font-size:clamp(38px,5vw,60px);margin-top:12px}
.comp-lede{margin-top:18px;color:var(--on-stage-muted);font-size:19px;max-width:54ch}
.std{list-style:none;padding:0;margin:24px 0 0;display:flex;flex-wrap:wrap;gap:10px}
.std li small{font-family:var(--f-ui);font-weight:600;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);margin-left:6px}
.std li{font-family:var(--f-display);font-weight:700;font-size:18px;letter-spacing:.04em;padding:6px 16px;border-radius:999px;border:1.5px solid var(--stage-line);color:var(--on-stage)}
.comp-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 32px;margin-top:36px}
.comp-list h3{font-size:21px;line-height:1.05;padding-top:14px;border-top:2px solid var(--accent)}
.comp-list p{margin-top:8px;color:var(--on-stage-muted);font-size:16px}
.log{margin:0;background:#fff;color:#0B1F3A;border-radius:22px;padding:22px 24px;box-shadow:0 30px 60px rgba(0,0,0,.35);transform:rotate(1.5deg);font-family:var(--f-ui)}
.log figcaption{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding-bottom:14px;border-bottom:1px solid #E3E7EF}
.log figcaption b{display:block;color:#0B1F3A;font-family:var(--f-display);font-size:22px;text-transform:uppercase;letter-spacing:.02em}
.log figcaption span{font-size:14px;color:#6B7380}
.log figcaption em{font-style:normal;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#0072A8;background:#E5F4FB;border-radius:999px;padding:4px 10px}
.log ol{list-style:none;margin:6px 0 0;padding:0}
.log li{display:grid;grid-template-columns:56px 1fr;gap:12px;padding:11px 0 11px;position:relative}
.log li+li{border-top:1px dashed #E3E7EF}
.log time{font-variant-numeric:tabular-nums;font-weight:700;color:#0081BE;font-size:16px}
.log li span{font-weight:700;font-size:16px}
.log small{display:block;font-weight:400;font-size:14px;color:#6B7380}
.log-foot{margin-top:10px;display:flex;align-items:center;gap:10px;background:#E6F6EF;color:#12865A;font-weight:700;font-size:15px;border-radius:12px;padding:10px 14px}
.log-foot svg{width:20px;height:20px;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}

/* start */
.start{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:40px;counter-reset:s}
.start li{list-style:none;background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:24px;display:flex;gap:16px;align-items:flex-start}
.start ol{margin:0;padding:0;display:contents}
.start .n{flex:none;width:36px;height:36px;border-radius:50%;background:var(--accent);color:#fff;font-family:var(--f-display);font-weight:700;font-size:19px;display:grid;place-items:center}
.start h3{font-size:24px;line-height:1.05}
.start p{margin-top:6px;color:var(--muted);font-size:16px}

/* pricing */
.pricing{background:var(--surface);border-block:1px solid var(--line)}
.ph-note{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:14px!important;font-size:15px!important}
.ph-note span{font-family:var(--f-ui);font-weight:700;font-size:12px;letter-spacing:.12em;text-transform:uppercase;background:#F5B700;color:#0B1F3A;border-radius:999px;padding:3px 10px}
.plans{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:44px;align-items:stretch}
.plan{background:var(--bg);border:1px solid var(--line);border-radius:22px;padding:28px;display:flex;flex-direction:column;gap:16px;min-width:0}
.plan.hot{background:var(--stage);color:var(--on-stage);border-color:var(--stage);box-shadow:var(--shadow)}
.plan-top{display:flex;justify-content:space-between;align-items:center;gap:12px}
.plan h3{font-size:30px}
.badge{font-family:var(--f-ui);font-weight:700;font-size:12px;letter-spacing:.12em;text-transform:uppercase;background:var(--accent);color:#fff;border-radius:999px;padding:4px 11px}
.plan-desc{color:var(--muted);font-size:16px;min-height:3.1em}
.plan.hot .plan-desc{color:var(--on-stage-muted)}
.price{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;padding-block:6px;border-block:1px solid var(--line)}
.plan.hot .price{border-color:var(--stage-line)}
.amt{font-family:var(--f-display);font-weight:700;font-size:44px;line-height:1.1;font-variant-numeric:tabular-nums}
.per{font-family:var(--f-ui);font-size:15px;color:var(--muted)}
.plan.hot .per{color:var(--on-stage-muted)}
.plan .btn{width:100%}
.btn-line{color:var(--ink);box-shadow:inset 0 0 0 1.5px var(--line)}
.btn-line:hover{box-shadow:inset 0 0 0 1.5px var(--accent)}
.plan .ticks{margin-top:4px}
.plan .ticks li{font-size:16px}

/* faq */
.faq{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:clamp(32px,6vw,80px)}
details{border-bottom:1px solid var(--line);padding:18px 0}
details:first-child{border-top:1px solid var(--line)}
summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:16px;font-family:var(--f-ui);font-weight:700;font-size:20px}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";color:var(--accent-ink);font-size:24px;line-height:1}
details[open] summary::after{content:"–"}
details p{margin-top:10px;color:var(--muted);max-width:60ch}

/* closing band */
.close{background:#0A1D36 var(--grad) 70% 60%/cover no-repeat;color:var(--on-stage)}
.close .wrap{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:40px;align-items:center;padding-block:clamp(64px,8vw,96px)}
.close h2{font-size:clamp(40px,5.4vw,68px)}
.close p.sub{margin-top:16px;color:var(--on-stage-muted);font-size:19px}
form{background:rgba(255,255,255,.06);border:1px solid var(--stage-line);border-radius:22px;padding:24px;display:grid;gap:12px}
label{font-family:var(--f-ui);font-weight:600;font-size:15px;color:var(--on-stage-muted)}
input{width:100%;font:inherit;font-size:17px;padding:13px 16px;border-radius:12px;border:1.5px solid var(--stage-line);background:rgba(255,255,255,.08);color:var(--on-stage)}
input::placeholder{color:var(--on-stage-muted)}
input:focus{outline:none;border-color:var(--accent)}
.form-note{font-family:var(--f-ui);font-size:14px;color:var(--on-stage-muted)}
.form-ok{font-family:var(--f-ui);font-weight:600;color:#7BE0B4}

footer{background:var(--stage);color:var(--on-stage-muted);border-top:1px solid var(--stage-line);font-family:var(--f-ui);font-size:15px}
footer .foot{display:flex;flex-wrap:wrap;gap:32px 48px;align-items:flex-end;justify-content:space-between;padding-block:44px}
footer .brand{width:160px;display:block}
.foot-prod p{margin-top:14px;max-width:34ch}
.foot-co{display:grid;justify-items:end;gap:6px;text-align:right}
.foot-label{font-weight:700;font-size:12px;letter-spacing:.16em;text-transform:uppercase}
.idc{width:150px;display:block;margin-bottom:6px}
.foot-contact{color:var(--on-stage)}
@media (max-width:640px){.foot-co{justify-items:start;text-align:left}}

@media (max-width:900px){
  .nav{display:none}
  .top .btn{margin-left:auto}
  .hero .wrap,.step,.faq,.close .wrap,.comp-grid{grid-template-columns:minmax(0,1fr)}
  .log{transform:none}
  .step:nth-child(even) .copy{order:0}
  .facts ul{grid-template-columns:repeat(2,minmax(0,1fr))}
  .grid4,.tiles{grid-template-columns:repeat(2,minmax(0,1fr))}
  .start{grid-template-columns:minmax(0,1fr)}
  .plans{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:520px){
  .grid4,.tiles{grid-template-columns:minmax(0,1fr)}
  .comp-list{grid-template-columns:minmax(0,1fr)}
  .brand{width:140px}
  .top .wrap{gap:12px}
}

/* header actions + language switch */
.nav{margin-left:auto;gap:22px}h1,h2,h3,summary{overflow-wrap:break-word;hyphens:auto}.steps-ui button{overflow-wrap:anywhere}.nav a,.top .btn{white-space:nowrap}.plan-top{flex-wrap:wrap}.badge{white-space:nowrap}
.top-actions{display:flex;align-items:center;gap:10px;margin-left:12px}
.langs{display:flex;padding:2px;border-radius:999px;box-shadow:inset 0 0 0 1.5px var(--stage-line)}
.langs button{all:unset;cursor:pointer;font-family:var(--f-ui);font-weight:700;font-size:13px;letter-spacing:.06em;color:var(--on-stage-muted);padding:5px 9px;border-radius:999px}
.langs button:hover{color:var(--on-stage)}
.langs button[aria-pressed="true"]{background:rgba(255,255,255,.16);color:var(--on-stage)}
.langs button:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
.soon{display:inline-block;vertical-align:4px;margin-left:6px;font-family:var(--f-ui);font-weight:700;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--accent-ink);background:color-mix(in srgb,var(--accent) 14%,transparent);border-radius:999px;padding:3px 8px}
/* pricing details */
.inc{font-family:var(--f-ui);font-weight:700;font-size:15px;color:var(--muted);margin-bottom:-6px!important}
.plan.hot .inc{color:var(--on-stage-muted)}
.extras{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:24px}
.extras>div{background:var(--bg);border:1px solid var(--line);border-radius:18px;padding:22px 24px}
.extras h3{font-size:22px;line-height:1.05}
.extras ul{margin:12px 0 0;padding-left:18px;color:var(--muted);font-size:16px;display:grid;gap:4px}
.terms{margin-top:18px;font-size:14px;color:var(--muted);max-width:90ch}
/* closing CTA */
.cta-box{background:rgba(255,255,255,.06);border:1px solid var(--stage-line);border-radius:22px;padding:28px;display:grid;gap:22px}
.ticks.on-dark{margin:0}
.ticks.on-dark li{color:var(--on-stage)}
.btn-big{padding:16px 28px;font-size:19px;width:100%}
.cta-login{font-family:var(--f-ui);font-size:15px;color:var(--on-stage-muted);text-align:center}
.cta-login a{color:var(--on-stage);font-weight:700}
@media (max-width:1180px){.nav{display:none}.top-actions{margin-left:auto}}
@media (max-width:900px){.extras{grid-template-columns:minmax(0,1fr)}}
@media (max-width:560px){
  .top .wrap{height:auto;min-height:60px;flex-wrap:wrap;row-gap:8px;padding-block:8px}
  .brand{width:118px}
  .top-actions{gap:6px}
  .langs button{padding:4px 7px;font-size:12px}
  .top .btn{padding:7px 11px;font-size:13px}
}

html,body{margin:0}
.brand img,.idc img{display:block;width:100%;height:auto}
