/* The cabin and its conversations retain the approved desktop geometry. */
.hero{padding:8px 24px 0;overflow-x:clip;max-width:100%}
.shell{position:relative;border-radius:var(--r-shell);background:linear-gradient(180deg,var(--hero-top) 0%,var(--hero-bottom) 100%);box-shadow:inset 0 1px 0 var(--hi-line),inset 0 0 0 1px var(--border-soft),var(--shadow-shell);padding:40px 56px}
.shell::before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:radial-gradient(52% 68% at 76% 52%,var(--glow-apricot) 0%,var(--clear) 70%)}
.shell-inner{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) 614px;gap:56px;align-items:center}
.shell-inner>*{min-width:0}
.copy{position:relative;z-index:2}
.kicker{display:inline-flex;align-items:center;gap:10px;min-height:32px;padding:0 14px 0 12px;border-radius:var(--r-pill);background:var(--bg-panel);border:1px solid var(--border);box-shadow:inset 0 1px 0 var(--hi-line);font-size:14px;font-weight:var(--weight-semibold);color:var(--text);max-width:100%}
.kicker-dot{width:8px;height:8px;flex-shrink:0;border-radius:var(--r-circle);background:var(--success);box-shadow:0 0 0 3px var(--success-soft)}
.hero-title{margin:22px 0 28px;font-family:var(--font-display);font-weight:var(--weight-display);font-size:var(--size-h1);line-height:1.1;letter-spacing:var(--tracking-display);color:var(--text)}
.h1-key,.h2-key{color:var(--accent-dark)}
.signup{display:flex;align-items:center;gap:12px;margin:0}
.field{flex:1 1 340px;min-width:0;max-width:400px;display:flex;align-items:center;height:60px;padding:6px;background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--r-ctl);box-shadow:inset 0 1px 0 var(--hi-line),var(--shadow-field);transition:border-color var(--duration-fast)}
.field:focus-within{border-color:var(--accent-dark);outline:2px solid var(--accent-dark);outline-offset:3px}
.field input{flex:1;min-width:0;height:100%;border:0;border-radius:var(--r-btn);background:var(--clear);padding:0 12px;font:inherit;font-size:16px;color:var(--text)}
.field input::placeholder{color:var(--text-muted);opacity:1}
.note{display:flex;align-items:center;gap:8px;margin:14px 0 0;font-size:14px;color:var(--text-muted)}
.note-check{fill:var(--success)}
.note-tick{fill:none;stroke:var(--bg-panel);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.lede{margin:24px 0 0;max-width:560px;font-size:17px;line-height:1.65;color:var(--text-muted)}
.lede strong{color:var(--text);font-weight:var(--weight-bold)}
.facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:24px 0 0;padding:0;list-style:none;max-width:610px}
.fact{display:flex;align-items:center;gap:10px;min-height:40px;padding:4px 14px 4px 6px;border-radius:var(--r-pill);background:var(--bg-panel);border:1px solid var(--border-soft);box-shadow:inset 0 1px 0 var(--hi-line),0 6px 16px -10px var(--ink-12);font-size:14.5px;font-weight:var(--weight-semibold);color:var(--text);min-width:0}
.fact-ico{width:28px;height:28px;flex-shrink:0;border-radius:var(--r-circle);display:grid;place-items:center;background:var(--bg-panel-2);color:var(--text)}
.marks{margin-top:24px;padding-top:18px;border-top:1px solid var(--border);display:grid;gap:12px;max-width:610px}
.mark-row{display:flex;align-items:center;gap:16px;min-width:0}
.mark-label{flex-shrink:0;width:58px;font-size:12.5px;font-weight:var(--weight-semibold);letter-spacing:.04em;color:var(--text-muted)}
.mark-list{display:flex;flex-wrap:wrap;align-items:center;gap:6px 18px;margin:0;padding:0;list-style:none;min-width:0}
.mark-list li{display:inline-flex;align-items:center;gap:6px;font-size:13.5px;font-weight:var(--weight-medium);color:var(--text);white-space:nowrap}
.plat-ico{width:16px;height:16px;color:var(--text);fill:currentColor}
.flag{width:18px;height:18px;border-radius:var(--r-circle);overflow:hidden;flex-shrink:0}
.ico{fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.st-accent{stop-color:var(--accent)}
.st-accent-dark{stop-color:var(--accent-dark)}
.st-soft-hi{stop-color:var(--accent-soft-hi)}
.st-soft{stop-color:var(--accent-soft)}
.st-soft-lo{stop-color:var(--accent-soft-lo)}
.fl-red{fill:var(--flag-red)}
.fl-white{fill:var(--flag-white)}
.fl-navy{fill:var(--flag-navy)}
.fl-blue{fill:var(--flag-blue)}
.fl-ring{fill:none;stroke:var(--ink-12);stroke-width:1}
.device{position:relative;width:614px;height:660px}
.cabin{position:absolute;left:20px;top:0;width:500px;height:620px;border-radius:var(--r-panel);background:linear-gradient(180deg,var(--dusk-top) 0%,var(--dusk-mid) 54%,var(--dusk-sea) 100%);box-shadow:inset 0 1px 0 var(--hi-line),var(--shadow-panel)}
.cabin-bg{position:absolute;inset:0;border-radius:inherit;overflow:hidden;pointer-events:none}
.cabin-bg::before{content:"";position:absolute;inset:0;background:radial-gradient(70% 46% at 18% 4%,var(--sheen) 0%,var(--clear) 70%)}
.cabin-bg::after{content:"";position:absolute;left:0;right:0;bottom:0;height:34%;background:radial-gradient(ellipse 34% 44% at 16% 86%,var(--cloud-sea) 0%,var(--clear) 70%),radial-gradient(ellipse 30% 40% at 46% 96%,var(--cloud-sea) 0%,var(--clear) 70%),radial-gradient(ellipse 36% 46% at 84% 90%,var(--cloud-sea) 0%,var(--clear) 70%)}
.arcs{position:absolute;left:190px;top:20px;width:120px;height:66px;filter:drop-shadow(0 4px 6px var(--teal-14))}
.arc{fill:none;stroke-width:9;stroke-linecap:round;animation:breathe 4s ease-in-out infinite}
.arc--2{animation-delay:.5s}
.arc--3{animation-delay:1s}
.arc-dot{animation:breathe 4s ease-in-out infinite}
@keyframes breathe{0%,100%{opacity:.55}50%{opacity:1}}
.porthole{position:absolute;left:122px;top:96px;width:256px;height:324px;border-radius:var(--r-circle);background:linear-gradient(155deg,var(--frame-hi) 0%,var(--frame-hi) 28%,var(--frame-lo) 100%);box-shadow:inset 0 2px 0 var(--hi-line),inset 0 -6px 12px var(--ink-08),0 24px 44px -18px var(--ink-20),0 34px 60px -30px var(--teal-14)}
.pw-bezel{position:absolute;inset:16px;border-radius:var(--r-circle);background:linear-gradient(335deg,var(--frame-hi) 0%,var(--frame-lo) 70%,var(--frame-groove) 100%);box-shadow:inset 0 3px 8px var(--ink-12),0 1px 0 var(--hi-line)}
.pw-glass{position:absolute;inset:28px;border-radius:var(--r-circle);overflow:hidden;background:linear-gradient(180deg,var(--sky-high) 0%,var(--dusk-top) 30%,var(--dusk-mid) 54%,var(--sky-low) 62%)}
.pw-sun{position:absolute;left:calc(54% - 64px);top:calc(52% - 64px);width:128px;height:128px;border-radius:var(--r-circle);background:radial-gradient(circle,var(--sun-core) 0%,var(--sun-glow) 32%,var(--clear) 70%)}
.pw-sea{position:absolute;left:-40%;right:-40%;top:61%;bottom:-20%;border-radius:50% 50% 0 0/14% 14% 0 0;background:linear-gradient(180deg,var(--dusk-sea) 0%,var(--sea-deep) 100%);box-shadow:0 -1.5px 0 var(--horizon)}
.pw-cloud{position:absolute;left:0;width:200%;background-repeat:repeat-x;background-size:50% 100%;animation:drift 40s linear infinite;will-change:transform}
.pw-cloud--far{top:36%;height:22%;opacity:.85;background-image:radial-gradient(ellipse 14% 40% at 22% 62%,var(--cloud-soft) 0%,var(--clear) 72%),radial-gradient(ellipse 12% 32% at 34% 54%,var(--cloud-soft) 0%,var(--clear) 72%),radial-gradient(ellipse 13% 38% at 70% 64%,var(--cloud-soft) 0%,var(--clear) 72%)}
.pw-cloud--mid{top:50%;height:22%;animation-delay:-14s;background-image:radial-gradient(ellipse 13% 42% at 16% 66%,var(--cloud) 0%,var(--clear) 72%),radial-gradient(ellipse 16% 48% at 30% 60%,var(--cloud) 0%,var(--clear) 72%),radial-gradient(ellipse 12% 36% at 62% 70%,var(--cloud) 0%,var(--clear) 72%),radial-gradient(ellipse 13% 40% at 78% 62%,var(--cloud) 0%,var(--clear) 72%)}
.pw-cloud--near{top:64%;height:32%;animation-delay:-27s;background-image:radial-gradient(ellipse 15% 36% at 24% 54%,var(--cloud) 0%,var(--clear) 72%),radial-gradient(ellipse 12% 30% at 42% 44%,var(--cloud) 0%,var(--clear) 72%),radial-gradient(ellipse 14% 34% at 72% 58%,var(--cloud) 0%,var(--clear) 72%)}
@keyframes drift{to{transform:translateX(-50%)}}
.pw-shade{position:absolute;left:0;right:0;top:0;height:20%;background:linear-gradient(180deg,var(--frame-lo) 0%,var(--frame-hi) 100%);box-shadow:0 3px 7px var(--ink-12)}
.pw-shade span{position:absolute;left:50%;bottom:7px;width:34px;height:4px;margin-left:-17px;border-radius:var(--r-pill);background:var(--frame-groove)}
.pw-glare{position:absolute;inset:0;border-radius:var(--r-circle);box-shadow:inset 0 6px 14px var(--ink-20),inset 0 -2px 8px var(--hi-line)}
.pw-glare::before{content:"";position:absolute;left:9%;top:10%;width:76%;height:76%;border-radius:var(--r-circle);border:5px solid var(--clear);border-left-color:var(--glare);transform:rotate(38deg);filter:blur(.6px)}
.pw-glare::after{content:"";position:absolute;inset:0;border-radius:var(--r-circle);background:linear-gradient(128deg,var(--sheen) 0%,var(--sheen) 18%,var(--clear) 42%)}
.bubble{position:absolute;margin:0;padding:14px 16px;background:var(--bg-panel);border:1px solid var(--border-soft);border-radius:var(--r-card);box-shadow:inset 0 1px 0 var(--hi-line),var(--shadow-card);animation:rise .7s cubic-bezier(.2,.7,.2,1) both}
.bubble--a{left:280px;top:340px;width:280px;animation-delay:.2s}
.bubble--b{left:296px;top:436px;width:290px;animation-delay:.35s}
.bubble--c{left:120px;top:532px;width:336px;animation-delay:.5s}
@keyframes rise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
.bubble-head{display:flex;align-items:center;gap:8px;font-size:12.5px;font-weight:var(--weight-semibold);color:var(--text);line-height:1.2}
.bubble-meta{margin-left:auto;font-size:12px;font-weight:var(--weight-medium);color:var(--text-muted)}
.avatar{width:24px;height:24px;border-radius:var(--r-circle);display:grid;place-items:center;flex-shrink:0}
.avatar--client{background:linear-gradient(145deg,var(--accent-soft-hi),var(--accent-soft-lo));color:var(--accent-dark);box-shadow:inset 0 1px 0 var(--hi-line)}
.avatar--user{background:linear-gradient(145deg,var(--dusk-top),var(--apricot));color:var(--bg-panel);box-shadow:inset 0 1px 0 var(--hi-line)}
.avatar-fill{fill:currentColor}
.bubble-text{display:flex;align-items:center;flex-wrap:wrap;gap:4px 6px;margin:9px 0 0;font-size:14px;line-height:1.5;color:var(--text)}
.ok-dot{width:7px;height:7px;flex-shrink:0;border-radius:var(--r-circle);background:var(--success);box-shadow:0 0 0 3px var(--success-soft)}
.ok-word{font-weight:var(--weight-bold);color:var(--success)}
.routes{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 0;padding:0;list-style:none}
.route{display:inline-flex;align-items:center;gap:5px;min-height:26px;padding:2px 9px 2px 4px;border-radius:var(--r-pill);background:var(--bg-panel-2);font-size:12.5px;font-weight:var(--weight-medium);color:var(--text);white-space:nowrap}
.route--direct{padding-left:8px;background:var(--accent-soft)}
.route .flag{width:18px;height:18px}
.float-tag{position:absolute;display:inline-flex;align-items:center;gap:8px;padding:6px 14px 6px 6px;border-radius:var(--r-pill);background:var(--bg-panel);border:1px solid var(--border-soft);box-shadow:inset 0 1px 0 var(--hi-line),var(--shadow-card);font-size:13px;font-weight:var(--weight-medium);color:var(--text);white-space:nowrap}
.float-tag b{font-weight:var(--weight-bold)}
.float-tag--pack{left:-20px;top:28px;transform:rotate(-5deg)}
.float-tag--pack::before{content:"";position:absolute;left:-6px;top:50%;width:26px;height:12px;margin-top:-6px;background:var(--apricot-tape);transform:rotate(-38deg);border-radius:var(--r-small)}
.float-tag--devices{left:-20px;top:474px}
.tag-kicker{display:inline-flex;align-items:center;gap:5px;min-height:24px;padding:0 9px 0 6px;border-radius:var(--r-pill);background:var(--bg-panel-2);font-size:12px;font-weight:var(--weight-bold);color:var(--text)}
.tag-ico{width:24px;height:24px;border-radius:var(--r-circle);display:grid;place-items:center;background:var(--accent-soft);color:var(--text);flex-shrink:0}
.cabin-foot{display:contents}
.switch-btn{position:absolute;left:472px;top:574px;width:56px;height:56px;border-radius:var(--r-circle);background:var(--bg-panel);border:1px solid var(--border-soft);box-shadow:inset 0 1px 0 var(--hi-line),var(--shadow-card);display:grid;place-items:center;align-content:center;gap:1px;color:var(--text);text-decoration:none}
.switch-btn span{font-size:9.5px;font-weight:var(--weight-bold);line-height:1.1;letter-spacing:.02em}
.route-intro{position:relative;padding-top:88px;padding-bottom:96px;text-align:center}
.route-intro::before{content:"";position:absolute;left:50%;top:0;width:1px;height:64px;background:var(--ink-20)}
.route-intro h2{margin:0;font-size:40px;line-height:1.2}
.route-intro p{max-width:620px;margin:16px auto 28px;font-size:17px;color:var(--text-muted)}
.route-intro .btn-ghost{height:52px}
.tl-start{position:relative;width:56px;height:56px;margin:48px auto 0;border-radius:var(--r-circle);background:var(--accent);color:var(--bg-panel);display:grid;place-items:center;box-shadow:0 0 0 6px var(--accent-soft)}
.tl-start::after{content:"";position:absolute;left:50%;top:62px;width:1px;height:72px;background:var(--ink-20)}
/* Shared content components. */
.tabs{min-width:0}
.tab-list,[role="tablist"]{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:8px;background:var(--bg-panel-2);border:1px solid var(--border);border-radius:var(--r-card);margin-bottom:24px}
.tab-list [role="tab"]{min-height:44px;padding:10px 22px;border:1px solid var(--clear);border-radius:var(--r-btn);background:var(--clear);color:var(--text-muted);font-weight:var(--weight-semibold)}
.tab-list [role="tab"][aria-selected="true"]{background:var(--bg-panel);border-color:var(--border);color:var(--accent-dark);box-shadow:var(--shadow-field)}
.tab-panel{min-width:0}
.toc-tabs{position:sticky;top:var(--toc-offset);z-index:10;display:flex;align-items:center;gap:8px;overflow-x:auto;max-width:100%;padding:10px;background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--r-card);box-shadow:var(--shadow-field);margin-block:24px 32px;scrollbar-width:thin;overscroll-behavior-x:contain}
.toc-tabs a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;flex-shrink:0;white-space:nowrap;padding:8px 18px;border-radius:var(--r-btn);text-decoration:none;font-size:14px;color:var(--text)}
.toc-tabs a.is-current,.toc-tabs a[aria-current="location"]{background:var(--accent-dark);color:var(--bg-panel)}
.toc-tabs.toc-static{position:static}
body:has(.toc-tabs) section[id],body:has(.toc-tabs) h2[id],body:has(.toc-tabs) h3[id]{scroll-margin-top:var(--toc-clearance)}
.faq-list{display:grid;gap:12px}
.faq-item{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--r-card);box-shadow:inset 0 1px 0 var(--hi-line)}
.faq-item summary{position:relative;list-style:none;padding:22px 56px 22px 24px;cursor:pointer;min-height:48px;font-weight:var(--weight-semibold)}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{content:"+";position:absolute;right:24px;top:20px;color:var(--accent-dark);font-size:22px;line-height:1.3}
.faq-item[open] summary::after{content:"−"}
.faq-answer{padding:0 24px 24px;color:var(--text-muted)}
.plan-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:stretch}
.plan-card{position:relative;min-width:0;display:flex;flex-direction:column;padding:30px;background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--r-panel);box-shadow:inset 0 1px 0 var(--hi-line),var(--shadow-card)}
.plan-card.is-current{border:2px solid var(--accent-dark);padding:29px}
.plan-card h3{margin-block:16px}
.plan-badge{align-self:flex-start;display:inline-flex;align-items:center;min-height:28px;padding:4px 12px;border-radius:var(--r-pill);background:var(--bg-panel-2);color:var(--text);font-size:12px;font-weight:var(--weight-bold)}
.plan-card.is-current .plan-badge{background:var(--accent-dark);color:var(--bg-panel)}
.plan-price{font-family:var(--font-display);font-size:44px;line-height:1.2;font-weight:var(--weight-display);letter-spacing:var(--tracking-display);margin-block:12px}
.plan-price small{font-family:var(--font-body);font-size:14px;font-weight:var(--weight-medium);letter-spacing:normal;color:var(--text-muted)}
.plan-features{list-style:none;padding:0;margin:20px 0 28px;display:grid;gap:12px;color:var(--text-muted)}
.plan-features li::before{content:"✓";color:var(--success);margin-right:10px}
.plan-card .btn,.plan-card .btn-primary{margin-top:auto;width:100%}
.badge,.tag{display:inline-flex;align-items:center;gap:6px;min-height:28px;padding:4px 12px;background:var(--bg-panel-2);border:1px solid var(--border);border-radius:var(--r-pill);color:var(--text);font-size:12px;font-weight:var(--weight-semibold);max-width:100%;white-space:normal;overflow-wrap:anywhere}
.badge-success{background:var(--success-soft);color:var(--text)}
.badge-warn{border-color:var(--warn);color:var(--text)}
.table-scroll{overflow-x:auto;max-width:100%;width:100%;min-width:0;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;border:1px solid var(--border);border-radius:var(--r-card);background:var(--bg-panel);box-shadow:var(--shadow-field)}
.data-table,.route-table{border-collapse:collapse;width:100%;min-width:640px;font-size:14px;text-align:left}
.data-table caption,.route-table caption{text-align:left;padding:18px 20px;font-weight:var(--weight-bold);color:var(--text)}
.data-table th,.data-table td,.route-table th,.route-table td{padding:16px 20px;border-bottom:1px solid var(--border);word-break:keep-all;color:var(--text)}
.table-scroll th{white-space:nowrap;background:var(--bg-panel-2);color:var(--text);font-weight:var(--weight-bold)}
.table-scroll td:first-child{font-weight:var(--weight-semibold);color:var(--text)}
.data-table tr:last-child td,.route-table tr:last-child td{border-bottom:0}
.route-region th{background:var(--bg-panel-2);color:var(--accent-dark)}
.country-cell{display:flex;align-items:center;gap:10px;min-width:max-content}
.prose>.data-table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%;min-width:0}
.platform-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}
.platform-card{padding:24px 16px;display:flex;align-items:center;flex-direction:column;text-align:center;gap:16px;min-width:0;background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--r-card);box-shadow:var(--shadow-card)}
.platform-card .plat-ico{width:32px;height:32px}
.platform-card h3{font-size:18px;margin:0}
.platform-card .btn{padding-inline:14px;font-size:14px;width:100%}
.platform-word{display:grid;place-items:center;min-height:32px;font-size:18px;font-weight:var(--weight-bold)}
.article-card{min-width:0;display:flex;flex-direction:column;gap:16px;padding:28px;background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--r-card);box-shadow:var(--shadow-card)}
.article-card h3{margin:0;font-size:22px}
.article-card h3 a{text-decoration:none}
.article-card h3 a:hover{color:var(--accent-dark)}
.article-card p{color:var(--text-muted)}
.article-meta{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:13px;color:var(--text-muted)}
.article-card>.article-meta:last-child{margin-top:auto}
.callout{padding:24px 28px;border-left:4px solid var(--accent-dark);border-radius:0 var(--r-card) var(--r-card) 0;background:var(--bg-panel-2);color:var(--text);box-shadow:inset 0 1px 0 var(--hi-line);margin-block:24px}
.callout strong{display:block;margin-bottom:8px}
.promo-block{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-top:48px;padding:32px;background:var(--bg-panel-2);border:1px solid var(--border);border-radius:var(--r-panel);box-shadow:inset 0 1px 0 var(--hi-line),var(--shadow-card)}
.promo-block>div{min-width:0}
.promo-brand{font-family:var(--font-display);font-size:24px;font-weight:var(--weight-display);margin-bottom:8px}
.promo-block .btn,.promo-block .btn-primary,.promo-block .btn-secondary{flex-shrink:0;white-space:nowrap}
.journey{position:relative;isolation:isolate;padding-bottom:32px}
.journey::before{content:"";position:absolute;z-index:-1;left:50%;top:0;bottom:0;width:1px;background:var(--ink-20)}
.journey-stop{padding-top:8px;padding-bottom:56px}
.journey-node{width:56px;height:56px;margin:0 auto 40px;display:grid;place-items:center;border-radius:var(--r-circle);background:var(--accent);color:var(--bg-panel);box-shadow:0 0 0 6px var(--accent-soft)}
.journey-node svg{width:24px;height:24px}
.journey-panel{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;gap:48px;padding:48px;background:var(--bg-panel-2);border:1px solid var(--border);border-radius:var(--r-shell)}
.journey-panel>*{min-width:0}
.journey-panel h3{margin-top:0}
.journey-panel p{color:var(--text-muted)}
.journey-stop:nth-child(even) .journey-copy{order:2}
.journey-conversations{display:grid;gap:16px;align-items:start}
.journey-conversations .card:nth-child(even){margin-left:32px}
.journey-conversations .card{padding:24px}
.journey-conversations .bubble-head{margin-bottom:12px}
.preview-section{padding-top:64px;padding-bottom:64px;border-top:1px solid var(--border)}
.preview-section h2{margin-top:0}
.preview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.preview-grid>*{min-width:0}
.palette-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.swatch{padding:12px;background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--r-card);min-width:0}
.swatch-color{height:64px;border:1px solid var(--ink-12);border-radius:var(--r-btn);margin-bottom:10px}
.swatch code{font-size:12px}
.sw-bg{background:var(--bg)}
.sw-panel{background:var(--bg-panel)}
.sw-panel2{background:var(--bg-panel-2)}
.sw-border{background:var(--border)}
.sw-border-soft{background:var(--border-soft)}
.sw-accent{background:var(--accent)}
.sw-accent-dark{background:var(--accent-dark)}
.sw-soft{background:var(--accent-soft)}
.sw-soft-hi{background:var(--accent-soft-hi)}
.sw-soft-lo{background:var(--accent-soft-lo)}
.sw-text{background:var(--text)}
.sw-muted{background:var(--text-muted)}
.sw-success{background:var(--success)}
.sw-success-soft{background:var(--success-soft)}
.sw-warn{background:var(--warn)}
.sw-error{background:var(--error)}
.sw-apricot{background:var(--apricot)}
.sw-tape{background:var(--apricot-tape)}
.sw-hero-top{background:var(--hero-top)}
.sw-hero-bottom{background:var(--hero-bottom)}
.sw-glow{background:var(--glow-apricot)}
.sw-dusk-top{background:var(--dusk-top)}
.sw-dusk-mid{background:var(--dusk-mid)}
.sw-dusk-sea{background:var(--dusk-sea)}
.sw-sky-high{background:var(--sky-high)}
.sw-sky-low{background:var(--sky-low)}
.sw-sea{background:var(--sea-deep)}
.sw-sun-core{background:var(--sun-core)}
.sw-sun-glow{background:var(--sun-glow)}
.sw-horizon{background:var(--horizon)}
.sw-cloud{background:var(--cloud)}
.sw-cloud-soft{background:var(--cloud-soft)}
.sw-cloud-sea{background:var(--cloud-sea)}
.sw-frame-hi{background:var(--frame-hi)}
.sw-frame-lo{background:var(--frame-lo)}
.sw-frame-groove{background:var(--frame-groove)}
.sw-hi{background:var(--hi-line)}
.sw-glare{background:var(--glare)}
.sw-sheen{background:var(--sheen)}
.sw-ink04{background:var(--ink-04)}
.sw-ink06{background:var(--ink-06)}
.sw-ink08{background:var(--ink-08)}
.sw-ink12{background:var(--ink-12)}
.sw-ink20{background:var(--ink-20)}
.sw-veil{background:var(--veil)}
.sw-teal10{background:var(--teal-10)}
.sw-teal14{background:var(--teal-14)}
.sw-red{background:var(--flag-red)}
.sw-white{background:var(--flag-white)}
.sw-navy{background:var(--flag-navy)}
.sw-blue{background:var(--flag-blue)}
.sw-clear{background:var(--clear)}
.type-display{font-family:var(--font-display);font-weight:var(--weight-display);font-size:32px;letter-spacing:var(--tracking-display);line-height:1.2}
.type-body{font-family:var(--font-body);font-size:16px}
.type-small{font-size:14px;color:var(--text-muted)}
.preview-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-block:24px}
.svg-bank{position:absolute;width:0;height:0;overflow:hidden;pointer-events:none}
.preview-menu{display:none}
@media(max-width:1300px){
  .shell-inner{grid-template-columns:minmax(0,1fr);gap:40px}
  .copy{max-width:640px}
  .device{justify-self:center}
}
@media(max-width:1080px){
  .preview-menu{display:block;position:relative}
  .preview-menu summary{min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:var(--r-btn);background:var(--bg-panel);cursor:pointer;list-style:none}
  .preview-menu nav{position:absolute;right:0;top:100%;width:240px;max-width:calc(100vw - 32px);padding:12px;background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--r-card);box-shadow:var(--shadow-card);z-index:5;max-height:70dvh;overflow:auto}
  .preview-menu a{display:flex;width:100%;align-items:center;min-height:44px;padding:10px 14px;text-decoration:none}
}
@media(max-width:900px){
  .shell{padding:36px 32px}
  .platform-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .plan-grid{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:768px){
  .hero{padding:8px 12px 0}
  .shell{padding:28px 18px 22px;border-radius:var(--r-mobile)}
  .hero-title{font-size:36px;margin:18px 0 22px}
  .signup{flex-wrap:wrap}
  .field{flex:1 1 100%;max-width:none}
  .signup .btn-ghost{flex:1 1 100%;height:52px}
  .lede{font-size:16px}
  .facts{grid-template-columns:minmax(0,1fr)}
  .mark-row{align-items:flex-start}
  .device{width:100%;height:auto;margin-top:8px;max-width:100%}
  .cabin{position:relative;left:auto;top:auto;width:100%;height:auto;display:flex;flex-direction:column;align-items:center;gap:12px;padding:20px 14px 18px;max-width:100%}
  .arcs,.porthole,.bubble,.float-tag,.switch-btn{position:relative;left:auto;top:auto}
  .arcs{width:120px;height:66px;flex-shrink:0}
  .porthole{width:236px;max-width:100%;height:300px;flex-shrink:0;margin-bottom:4px}
  .float-tag--pack{transform:none;align-self:flex-start;margin-left:6px;white-space:normal;font-size:12px;padding-right:10px;flex-wrap:wrap}
  .float-tag--pack::before{display:none}
  .float-tag--devices{align-self:flex-start;white-space:normal}
  .bubble{width:100%;max-width:100%}
  .bubble--a,.bubble--b,.bubble--c{animation-delay:0s}
  .cabin-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%}
  .switch-btn{flex-shrink:0}
  .route-intro{padding-top:72px;padding-bottom:64px}
  .route-intro h2{font-size:30px}
  .journey::before{left:24px}
  .journey-stop{position:relative;padding-left:64px;padding-bottom:40px}
  .journey-node{position:absolute;left:4px;top:8px;width:40px;height:40px;margin:0}
  .journey-node svg{width:20px;height:20px}
  .journey-panel{grid-template-columns:minmax(0,1fr);padding:24px;gap:24px;border-radius:var(--r-mobile)}
  .journey-stop:nth-child(even) .journey-copy{order:0}
  .journey-conversations .card:nth-child(even){margin-left:0}
  .preview-grid{grid-template-columns:minmax(0,1fr)}
  .palette-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .promo-block{align-items:flex-start;flex-direction:column;padding:24px}
}
@media(max-width:640px){
  .float-tag--pack{transform:none}
  .platform-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .preview-section{padding-top:48px;padding-bottom:48px}
  .journey-panel{padding:20px}
  .journey-conversations .card{padding:18px}
  .journey-panel h3{font-size:22px}
}
@media(max-width:360px){
  .field{padding:5px}
  .field input{padding-inline:8px;font-size:14px}
  .field .btn-primary{font-size:15px;padding-inline:12px}
  .mark-row{gap:10px}
  .mark-label{width:48px}
  .mark-list{gap:8px 12px}
  .platform-grid{grid-template-columns:minmax(0,1fr)}
}
@media(prefers-reduced-motion:reduce){
  .pw-cloud{will-change:auto}
  .bubble{opacity:1;transform:none}
}