/* Approved split canvas */
.hero { display:grid; grid-template-columns:1fr 1fr; height:760px; background:linear-gradient(180deg,var(--bg-top) 0%,var(--bg) 55%,var(--bg-bottom) 100%); overflow-x:clip; max-width:100%; }
.hero-copy { position:relative; z-index:2; display:flex; align-items:center; padding:0 56px 0 var(--gutter); min-width:0; }
.hero-copy-inner { width:100%; max-width:600px; min-width:0; }
.kicker { display:inline-flex; align-items:center; gap:10px; min-height:30px; padding:3px 14px 3px 12px; border:1px solid var(--border); border-radius:var(--r-pill); background:var(--panel); box-shadow:var(--hl-edge); font-size:var(--fs-sm); color:var(--muted); max-width:100%; }
.kicker-dot { width:8px; height:8px; border-radius:var(--r-round); background:var(--accent); flex:none; }
.hero h1 { margin:32px 0 0; font-family:var(--font-display); font-weight:var(--weight-regular); font-size:var(--fs-hero); line-height:1.08; letter-spacing:-.03em; color:var(--text); }
.hero .btn { height:52px; padding-block:0; }
.lede { margin:40px 0 0; max-width:560px; font-size:var(--fs-lede); line-height:1.6; color:var(--muted); }
.lede strong { color:var(--text); font-weight:var(--weight-medium); }
.trust { margin:32px 0 0; padding:0; list-style:none; display:grid; grid-template-columns:repeat(3,max-content); gap:8px 28px; font-family:var(--font-mono); font-size:var(--fs-code); line-height:20px; color:var(--muted); }
.trust li { display:inline-flex; align-items:center; gap:8px; white-space:nowrap; }
.trust svg { width:12px; height:12px; color:var(--text); flex:none; }
.platforms { margin-top:48px; padding-top:20px; border-top:1px solid var(--border); }
.platforms-label { display:block; margin-bottom:16px; font-family:var(--font-mono); font-size:var(--fs-label); letter-spacing:.14em; text-transform:uppercase; color:var(--muted); }
.platform-row { margin:0; padding:0; list-style:none; display:grid; grid-template-columns:repeat(5,1fr); align-items:center; gap:8px; }
.platform-row li { display:inline-flex; align-items:center; gap:8px; font-size:var(--fs-nav-small); color:var(--text); white-space:nowrap; min-width:0; }
.platform-row svg { width:20px; height:20px; flex:none; }
.canvas { position:relative; background:var(--panel-2); border-left:1px solid var(--border); overflow:hidden; min-width:0; }
.stage { position:absolute; inset:0; }
.grid-lines { position:absolute; left:0; top:0; width:720px; height:760px; z-index:0; }
.grid-lines rect,.grid-lines path { fill:none; stroke:var(--border); stroke-width:1; }
.blk { position:absolute; z-index:1; width:96px; height:96px; background:linear-gradient(135deg,var(--accent) 0%,var(--accent-dark) 100%); }
.blk-tr { top:40px; right:0; }
.blk-tr::before { content:""; position:absolute; left:0; top:38px; width:60px; height:10px; background:var(--white-60); }
.blk-tr::after { content:""; position:absolute; left:0; top:100%; width:100%; height:14px; background:var(--accent-22); }
.blk-bl { left:48px; top:616px; }
.blk-bl::before { content:""; position:absolute; left:0; bottom:100%; width:100%; height:16px; background:var(--accent-22); }
.blk-bl::after { content:""; position:absolute; left:0; top:36px; width:52px; height:30px; background:repeating-linear-gradient(180deg,var(--white-60) 0 6px,var(--clear) 6px 12px); }
.cmd { position:absolute; z-index:4; left:40px; top:72px; height:52px; display:flex; align-items:center; gap:12px; padding:0 22px; background:var(--text); color:var(--white); font-family:var(--font-mono); font-size:var(--fs-lede-mobile); font-weight:var(--weight-medium); letter-spacing:.01em; border-radius:var(--r-sm); box-shadow:inset 0 1px 0 var(--white-12),0 18px 40px -14px var(--accent-22); white-space:nowrap; }
.cmd-prompt { color:var(--white-60); }
.cmd-cursor { width:9px; height:19px; background:var(--white-60); }
.wire { position:absolute; z-index:2; left:71px; top:124px; width:33px; height:176px; border-left:2px solid var(--accent); border-bottom:2px solid var(--accent); }
.wire-node { position:absolute; z-index:5; left:100px; top:297px; width:8px; height:8px; background:var(--accent); box-shadow:0 0 0 2px var(--panel); }
.rig { position:absolute; z-index:3; left:104px; top:160px; width:min(576px,calc(100% - 144px)); }
.win { height:480px; display:flex; flex-direction:column; background:var(--panel); border:1px solid var(--border); border-radius:var(--r-md); box-shadow:var(--hl-edge),var(--lift); overflow:hidden; }
.win-chrome { flex:none; height:40px; display:flex; align-items:center; gap:12px; padding:0 14px; background:linear-gradient(180deg,var(--white) 0%,var(--panel) 100%); border-bottom:1px solid var(--border); }
.win-dots { display:flex; gap:5px; }
.win-dots i { width:8px; height:8px; border:1px solid var(--border); border-radius:var(--r-xs); background:var(--panel-2); }
.win-title { font-family:var(--font-mono); font-size:var(--fs-label); font-weight:var(--weight-medium); letter-spacing:.12em; text-transform:uppercase; color:var(--text); }
.win-meta { margin-left:auto; font-family:var(--font-mono); font-size:var(--fs-micro); letter-spacing:.12em; text-transform:uppercase; color:var(--muted); }
.route-strip { flex:none; height:52px; display:flex; align-items:center; gap:6px; padding:0 14px; border-bottom:1px solid var(--border); overflow-x:auto; scrollbar-width:none; }
.route-strip::-webkit-scrollbar { display:none; }
.strip-label { flex:none; margin-right:6px; font-family:var(--font-mono); font-size:var(--fs-micro); letter-spacing:.12em; text-transform:uppercase; color:var(--muted); }
.route { flex:none; display:inline-flex; align-items:center; gap:7px; height:28px; padding:0 10px 0 6px; background:var(--white); border:1px solid var(--border); border-radius:var(--r-sm); font-size:var(--fs-sm); white-space:nowrap; }
.flag { flex:none; display:block; width:24px; height:16px; }
.f-red { fill:var(--flag-red); }
.f-white { fill:var(--flag-white); }
.f-blue { fill:var(--flag-blue); }
.f-edge { fill:none; stroke:var(--ink-14); stroke-width:1; }
.trips { flex:1; min-height:0; margin:0; padding:0; list-style:none; display:grid; grid-template-columns:1fr 1fr; grid-template-rows:1fr 1fr; gap:1px; background:var(--border); }
.trip { position:relative; display:flex; flex-direction:column; gap:12px; padding:14px 16px; background:var(--panel); min-width:0; }
.trip.is-on { background:linear-gradient(90deg,var(--accent-10) 0%,var(--accent-0) 72%),var(--panel); }
.trip.is-on::before { content:""; position:absolute; left:0; top:0; bottom:0; width:2px; background:var(--accent); }
.trip-head { display:flex; align-items:center; gap:8px; min-width:0; }
.trip-ico { flex:none; width:24px; height:24px; display:grid; place-items:center; border-radius:var(--r-sm); background:var(--panel-2); color:var(--text); }
.trip-ico svg { width:14px; height:14px; }
.trip-idx { font-family:var(--font-mono); font-size:var(--fs-micro); color:var(--muted); }
.trip-cat { font-size:var(--fs-sm); color:var(--text); white-space:nowrap; }
.ok { margin-left:auto; flex:none; display:inline-flex; align-items:center; gap:4px; height:22px; padding:0 8px; border-radius:var(--r-sm); background:var(--success-10); color:var(--success); font-size:var(--fs-xs); white-space:nowrap; }
.cells { flex:1; display:grid; grid-template-columns:1fr 1fr; gap:1px; background:var(--border); border:1px solid var(--border); border-radius:var(--r-sm); overflow:hidden; }
.cell { display:flex; flex-direction:column; justify-content:center; gap:3px; padding:6px 10px; background:var(--white); min-width:0; }
.trip.is-on .cell { background:var(--white-72); }
.k { font-family:var(--font-mono); font-size:var(--fs-xxs); letter-spacing:.12em; text-transform:uppercase; color:var(--muted); }
.v { display:flex; align-items:center; gap:6px; font-size:var(--fs-detail); color:var(--text); white-space:nowrap; }
.v-mono { font-family:var(--font-mono); font-size:var(--fs-code); }
.win-foot { flex:none; height:40px; display:flex; align-items:center; gap:12px; padding:0 14px; border-top:1px solid var(--border); background:var(--panel); font-family:var(--font-mono); font-size:var(--fs-label); color:var(--muted); white-space:nowrap; }
.win-foot b { font-weight:var(--weight-medium); color:var(--text); }
.foot-label { letter-spacing:.12em; text-transform:uppercase; }
.lock-chip { position:absolute; z-index:4; right:-24px; bottom:-30px; display:flex; align-items:center; gap:10px; padding:10px 14px 10px 10px; background:var(--white); border:1px solid var(--border); border-radius:var(--r-md); box-shadow:var(--hl-edge),var(--lift-sm); font-size:var(--fs-detail); white-space:nowrap; }
.lock-ico { width:28px; height:28px; display:grid; place-items:center; border-radius:var(--r-sm); background:var(--text); color:var(--white); flex:none; }
.lock-ico svg { width:15px; height:15px; }
.facts-band { background:var(--panel); border-top:1px solid var(--border); border-bottom:1px solid var(--border); }
.facts-inner { height:72px; display:flex; align-items:center; justify-content:space-between; gap:24px; padding:0 var(--gutter); font-family:var(--font-mono); font-size:var(--fs-code); color:var(--text); white-space:nowrap; overflow-x:auto; }
.facts-inner span { display:inline-flex; gap:10px; }
.facts-inner em { font-style:normal; letter-spacing:.12em; text-transform:uppercase; color:var(--muted); }

/* Capability browser and generic tabs */
.tab-shell { min-width:0; }
.tab-list { display:flex; flex-wrap:wrap; gap:8px; padding:8px; background:var(--panel-2); border:1px solid var(--border); border-radius:var(--r-md); width:fit-content; max-width:100%; }
.tab-list [role="tab"] { display:inline-flex; align-items:center; justify-content:center; gap:12px; min-height:44px; padding:10px 18px; background:var(--panel); color:var(--text); border:1px solid var(--border); border-radius:var(--r-sm); white-space:nowrap; font-size:var(--fs-note); }
.tab-list [role="tab"]:hover { background:var(--bg-top); }
.tab-list [role="tab"][aria-selected="true"] { background:linear-gradient(90deg,var(--accent-10),var(--accent-0)),var(--panel); border-color:var(--accent); box-shadow:var(--hl-edge); }
.tab-panel { min-width:0; margin-top:24px; }
.capability-browser { display:grid; grid-template-columns:minmax(240px,.8fr) minmax(0,1.6fr); gap:24px; align-items:start; }
.capability-menu { min-width:0; background:var(--panel); border:1px solid var(--border); border-radius:var(--r-md); box-shadow:var(--hl-edge),var(--lift-sm); }
.capability-label { display:block; padding:20px; font-family:var(--font-mono); font-size:var(--fs-label); color:var(--muted); letter-spacing:.12em; text-transform:uppercase; border-bottom:1px solid var(--border); }
.capability-menu [role="tablist"] { display:flex; flex-direction:column; }
.capability-menu [role="tab"] { position:relative; display:flex; align-items:center; gap:14px; width:100%; min-height:60px; padding:16px 20px; border:0; border-bottom:1px solid var(--border); border-radius:var(--r-xs); background:var(--panel); text-align:left; font-size:var(--fs-nav); }
.capability-menu [role="tab"]:last-child { border-bottom:0; }
.capability-menu [role="tab"][aria-selected="true"] { background:linear-gradient(90deg,var(--accent-10),var(--accent-0)),var(--panel); box-shadow:inset 2px 0 var(--accent); }
.capability-menu [role="tab"] svg { width:20px; height:20px; }
.tab-check { margin-left:auto; color:var(--muted); flex:none; }
.capability-detail { min-width:0; border:1px solid var(--border); border-radius:var(--r-md); background:var(--panel); box-shadow:var(--hl-edge),var(--lift); overflow:hidden; }
.capability-detail .tab-panel { margin:0; }
.detail-heading { padding:24px; border-bottom:1px solid var(--border); }
.detail-heading h3 { margin:0; }
.detail-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); }
.detail-cell { min-width:0; padding:24px; }
.detail-cell + .detail-cell { border-left:1px solid var(--border); }
.detail-cell h4 { font-weight:var(--weight-medium); font-size:var(--fs-note); margin-bottom:12px; }
.detail-cell p { color:var(--muted); font-size:var(--fs-note); margin:0; line-height:1.8; }

/* Long document navigation */
.toc-tabs { position:sticky; top:0; z-index:15; display:flex; gap:8px; align-items:center; overflow-x:auto; max-width:100%; padding:12px; margin-bottom:32px; background:var(--panel); border:1px solid var(--border); border-radius:var(--r-sm); box-shadow:var(--hl-edge),var(--lift-sm); overscroll-behavior-x:contain; }
.toc-tabs a { display:inline-flex; flex:none; align-items:center; justify-content:center; min-height:44px; padding:10px 16px; font-size:var(--fs-note); text-decoration:none; white-space:nowrap; border-radius:var(--r-xs); }
.toc-tabs a:hover { background:var(--panel-2); }
.toc-tabs a.is-current { background:var(--text); color:var(--white); }
.toc-tabs.toc-static { position:static; }
body:has(.toc-tabs) section[id] { scroll-margin-top:var(--toc-offset); }

/* FAQ */
.faq-list { border-top:1px solid var(--border); }
.faq-item { border-bottom:1px solid var(--border); background:var(--panel); }
.faq-item summary { position:relative; display:block; min-height:64px; padding:20px 56px 20px 24px; list-style:none; font-weight:var(--weight-medium); }
.faq-item summary::-webkit-details-marker { display:none; }
.faq-item summary::after { content:"+"; position:absolute; right:24px; top:20px; font-family:var(--font-mono); font-size:var(--fs-lede); }
.faq-item[open] summary::after { content:"−"; }
.faq-item[open] summary { background:linear-gradient(90deg,var(--accent-10),var(--accent-0)); }
.faq-answer { padding:0 24px 24px; color:var(--muted); }
.faq-answer p:last-child { margin-bottom:0; }

/* Plans and fact tables */
.plan-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; align-items:stretch; }
.plan-card { position:relative; display:flex; flex-direction:column; min-width:0; padding:28px; border:1px solid var(--border); border-radius:var(--r-md); background:var(--panel); box-shadow:var(--hl-edge),var(--lift-sm); }
.plan-card.is-current { border-color:var(--accent); background:linear-gradient(180deg,var(--accent-10),var(--accent-0) 45%),var(--panel); box-shadow:var(--hl-edge),var(--lift); }
.plan-card h3 { margin-bottom:16px; }
.plan-period { font-family:var(--font-mono); font-size:var(--fs-xs); color:var(--muted); margin-bottom:12px; }
.plan-price { font-family:var(--font-display); font-size:var(--fs-price); font-weight:var(--weight-regular); letter-spacing:-.03em; margin-bottom:8px; line-height:1.2; }
.plan-price small { font-size:var(--fs-note); letter-spacing:0; color:var(--muted); }
.plan-list { list-style:none; padding:0; margin:24px 0; display:grid; gap:12px; color:var(--muted); font-size:var(--fs-note); }
.plan-list li::before { content:"✓"; display:inline-block; margin-right:10px; color:var(--text); }
.plan-card .btn { margin-top:auto; width:100%; padding-inline:12px; }
.plan-badge { align-self:flex-start; display:inline-flex; align-items:center; min-height:28px; padding:4px 10px; margin-bottom:16px; background:var(--text); color:var(--white); border-radius:var(--r-xs); font-size:var(--fs-xs); }
.plan-note { margin-top:24px; color:var(--muted); font-size:var(--fs-note); }
.table-scroll { width:100%; max-width:100%; min-width:0; overflow-x:auto; -webkit-overflow-scrolling:touch; overscroll-behavior-x:contain; border:1px solid var(--border); border-radius:var(--r-sm); background:var(--panel); }
.data-table { width:100%; border-collapse:collapse; text-align:left; font-size:var(--fs-note); }
.table-scroll .data-table { min-width:640px; }
.data-table caption { text-align:left; padding:16px 20px; font-family:var(--font-mono); color:var(--text); font-size:var(--fs-code); }
.data-table th,.data-table td { padding:16px 20px; border-bottom:1px solid var(--border); vertical-align:top; word-break:keep-all; }
.data-table th { font-weight:var(--weight-medium); background:var(--panel-2); color:var(--text); white-space:nowrap; }
.data-table td:first-child { color:var(--text); font-weight:var(--weight-medium); }
.data-table tr:last-child td { border-bottom:0; }
.data-table .region-row th { background:var(--panel); font-family:var(--font-mono); font-size:var(--fs-code); border-left:2px solid var(--accent); }
.prose > .data-table { display:block; overflow-x:auto; -webkit-overflow-scrolling:touch; max-width:100%; min-width:0; }
.prose > .data-table th,.prose > .data-table td { min-width:140px; }
.table-country { display:inline-flex; align-items:center; gap:10px; white-space:nowrap; }

/* Downloads, editorial cards and supporting furniture */
.platform-card { min-width:0; display:flex; flex-direction:column; align-items:flex-start; padding:24px 20px; gap:20px; background:var(--panel); border:1px solid var(--border); border-radius:var(--r-md); box-shadow:var(--hl-edge),var(--lift-sm); }
.platform-card svg { width:32px; height:32px; }
.platform-card h3 { font-size:var(--fs-brand-small); margin:0; }
.platform-card .btn { width:100%; padding-inline:8px; margin-top:auto; font-size:var(--fs-sm); }
.platform-card p { color:var(--muted); font-size:var(--fs-sm); margin:0; }
.article-card { display:flex; flex-direction:column; min-width:0; padding:28px; background:var(--panel); border:1px solid var(--border); border-top:3px solid var(--text); border-radius:var(--r-sm); box-shadow:var(--hl-edge),var(--lift-sm); }
.article-card h3 { margin-top:24px; font-size:var(--fs-h3); line-height:1.4; }
.article-card h3 a { text-decoration:none; }
.article-card h3 a:hover { text-decoration:underline; }
.article-card p { color:var(--muted); font-size:var(--fs-note); }
.article-meta { display:flex; flex-wrap:wrap; align-items:center; gap:12px; font-family:var(--font-mono); font-size:var(--fs-xs); color:var(--muted); }
.article-link { margin-top:auto; display:inline-flex; align-items:center; min-height:32px; font-size:var(--fs-note); text-decoration:none; }
.article-masthead { border-top:4px solid var(--accent); border-bottom:1px solid var(--border); padding-top:24px; padding-bottom:32px; }
.article-masthead .article-meta { margin-bottom:24px; }
.article-masthead h1 { font-size:clamp(36px,4vw,56px); }
.badge,.tag { display:inline-flex; align-items:center; gap:6px; max-width:100%; min-height:28px; padding:4px 9px; border:1px solid var(--border); border-radius:var(--r-sm); font-family:var(--font-mono); font-size:var(--fs-xs); line-height:1.5; background:var(--panel); color:var(--text); overflow-wrap:anywhere; }
.badge-success { color:var(--success); background:var(--success-10); border-color:var(--success); }
.badge-warn { color:var(--warn); border-color:var(--warn); }
.badge-error { color:var(--error); border-color:var(--error); }
.callout { margin:24px 0; padding:24px; background:var(--panel-2); border:1px solid var(--border); border-left:2px solid var(--accent); border-radius:var(--r-sm); box-shadow:var(--hl-edge); }
.callout p:last-child { margin-bottom:0; }
.promo-block { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:24px; margin-top:48px; padding:32px; background:var(--panel-2); border:1px solid var(--border); border-radius:var(--r-md); box-shadow:var(--hl-edge),var(--lift-sm); }
.promo-copy { flex:1 1 260px; min-width:0; }
.promo-copy h3 { font-size:var(--fs-h3); }
.promo-copy p { margin:0; color:var(--muted); }
.promo-block .btn { flex-shrink:0; white-space:nowrap; }
.cta-band { background:var(--text); color:var(--white); padding-top:48px; padding-bottom:48px; }
.cta-band-inner { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:24px; }
.cta-band h2 { margin-bottom:12px; }
.cta-band p { color:var(--white-72); margin:0; }
.cta-band .btn { background:var(--white); color:var(--text); border-color:var(--white); }
.step-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:40px; }
.step-item { min-width:0; }
.step-number { display:inline-grid; place-items:center; width:32px; height:32px; margin-bottom:24px; background:var(--accent); color:var(--white); border-radius:var(--r-xs); font-family:var(--font-mono); font-size:var(--fs-note); }
.step-item p { color:var(--muted); }

/* Preview-only layout, deliberately shared for a self-contained review */
.preview-section { padding-top:64px; padding-bottom:64px; border-bottom:1px solid var(--border); }
.preview-section > h2 { margin-bottom:32px; }
.preview-stack { display:grid; gap:24px; }
.preview-row { display:flex; flex-wrap:wrap; align-items:center; gap:16px; }
.swatch-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
.swatch { min-width:0; padding:12px; background:var(--panel); border:1px solid var(--border); border-radius:var(--r-sm); }
.swatch-color { display:block; height:64px; margin-bottom:12px; border:1px solid var(--border); border-radius:var(--r-xs); }
.swatch code { color:var(--text); font-size:var(--fs-xs); }
.sw-bg { background:var(--bg); }
.sw-top { background:var(--bg-top); }
.sw-bottom { background:var(--bg-bottom); }
.sw-panel { background:var(--panel); }
.sw-inset { background:var(--panel-2); }
.sw-border { background:var(--border); }
.sw-accent { background:var(--accent); }
.sw-accent-dark { background:var(--accent-dark); }
.sw-text { background:var(--text); }
.sw-muted { background:var(--muted); }
.sw-success { background:var(--success); }
.sw-warn { background:var(--warn); }
.sw-error { background:var(--error); }
.sw-white { background:var(--white); }
.sw-ink-blue { background:var(--ink-blue); }
.sample-display { font-family:var(--font-display); font-size:var(--fs-h2); font-weight:var(--weight-regular); letter-spacing:-.02em; }
.sample-mono { font-family:var(--font-mono); font-size:var(--fs-note); color:var(--muted); }
.btn-sample-hover { background:var(--ink-blue); border-color:var(--ink-blue); color:var(--white); }
.btn-sample-focus { outline:2px solid var(--text); outline-offset:2px; }
.btn-sample-active { transform:translateY(1px); }

@media (max-width:1180px) {
  .hero h1 { font-size:var(--fs-hero-mid); }
}
@media (max-width:1100px) {
  .hero { grid-template-columns:1fr; height:auto; }
  .hero-copy { padding:72px var(--gutter) 56px; }
  .canvas { height:760px; border-left:0; border-top:1px solid var(--border); }
}
@media (max-width:900px) {
  .facts-inner { justify-content:flex-start; }
  .capability-browser { grid-template-columns:1fr; }
  .capability-menu [role="tablist"] { flex-direction:row; overflow-x:auto; }
  .capability-menu [role="tab"] { flex:0 0 auto; width:auto; min-height:48px; padding:12px 16px; white-space:nowrap; border-bottom:0; border-right:1px solid var(--border); }
  .tab-check { display:none; }
  .plan-grid { grid-template-columns:1fr; }
}
@media (max-width:768px) {
  .hero-copy { padding:48px 20px 40px; }
  .hero h1 { font-size:var(--fs-hero-small); margin-top:24px; }
  .hero .cta-row { margin-top:32px; }
  .lede { margin-top:32px; font-size:var(--fs-lede-mobile); }
  .trust { grid-template-columns:repeat(2,max-content); gap:8px 20px; }
  .platform-row { grid-template-columns:repeat(3,1fr); row-gap:14px; }
  .canvas { height:auto; padding:32px 16px 48px; }
  .stage { position:static; }
  .grid-lines,.blk,.cmd,.wire,.wire-node { display:none; }
  .rig { position:static; width:auto; }
  .win { height:auto; }
  .trips { grid-template-columns:1fr; grid-template-rows:none; }
  .cells { grid-auto-rows:minmax(48px,auto); }
  .lock-chip { position:static; margin-top:16px; display:inline-flex; }
  .detail-grid { grid-template-columns:1fr; }
  .detail-cell + .detail-cell { border-left:0; border-top:1px solid var(--border); }
  .step-grid { grid-template-columns:1fr; gap:24px; }
  .swatch-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media (max-width:640px) {
  .trust { grid-template-columns:1fr; }
  .preview-section { padding-top:40px; padding-bottom:40px; }
  .swatch-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .promo-block { padding:24px; }
  .plan-card { padding:24px; }
  .canvas > * { max-width:100%; }
  .win-foot { gap:8px; flex-wrap:wrap; height:auto; min-height:40px; padding-block:10px; white-space:normal; }
  .lock-chip { white-space:normal; }
  .hero .cta-row { gap:12px; }
  .hero .btn { padding-inline:22px; }
  .tab-list { flex-wrap:nowrap; overflow-x:auto; width:100%; }
  .tab-list [role="tab"] { flex-shrink:0; }
}
@media (prefers-reduced-motion:reduce) {
  .btn-sample-active { transform:none; }
}