.hero{position:relative;overflow-x:clip;max-width:100%;padding:28px 40px 44px;background:radial-gradient(ellipse 55% 42% at 50% 0%,var(--glow-paper),transparent 72%),linear-gradient(180deg,var(--paper-top),var(--paper) 52%,var(--paper-bottom))}
.grain{position:absolute;inset:0;width:100%;height:100%;opacity:.03;pointer-events:none;z-index:0;color:var(--text)}
.hero-in{position:relative;z-index:1;max-width:1120px;margin:0 auto;display:flex;flex-direction:column;align-items:center;text-align:center}
.kicker{display:inline-flex;align-items:center;gap:10px;min-height:28px;padding:0 14px 0 4px;margin-bottom:14px;border-radius:var(--radius-pill);background:var(--panel);border:1px solid var(--line-soft);box-shadow:var(--shadow-soft),var(--hl-inset);font-size:13px;color:var(--text-muted)}
.kicker-tag{display:inline-flex;align-items:center;height:20px;padding:0 8px;border-radius:var(--radius-pill);background:var(--accent-tint);color:var(--accent);font-family:var(--font-mono);font-size:11.5px;font-weight:var(--weight-medium);letter-spacing:.02em}
.display{isolation:isolate;font-family:var(--font-display);font-weight:var(--weight-normal);font-size:var(--display-size);line-height:1.12;letter-spacing:-.02em;color:var(--text);margin-bottom:20px}
.kw-mark{position:relative;z-index:0}
.kw-mark::before{content:"";position:absolute;left:-.06em;right:-.06em;bottom:.07em;height:.36em;border-radius:var(--radius-mark);background:var(--accent-mark);z-index:-1}
.cta-pair{display:flex;gap:12px;margin-bottom:16px;flex-wrap:wrap;justify-content:center}
.lede{max-width:900px;font-size:20px;line-height:1.5;color:var(--text-muted);margin-bottom:8px}
.lede strong{color:var(--text);font-weight:var(--weight-medium)}
.trust{display:flex;flex-wrap:wrap;justify-content:center;font-size:var(--small-size);line-height:1.6;color:var(--text-muted);margin-bottom:20px}
.trust li+li::before{content:"·";margin:0 10px;color:var(--text-faint)}
.platforms{display:flex;justify-content:center;align-items:center;gap:32px;margin-bottom:6px}
.platforms li{display:inline-flex;align-items:center;gap:8px;height:24px}
.platforms svg{display:block;width:24px;height:24px;color:var(--text-faint)}
.platforms span{font-size:var(--small-size);color:var(--text-muted)}
.platform-word{font-family:var(--font-mono);font-size:var(--small-size);color:var(--text-faint)}
.all-clients{display:inline-flex;align-items:center;gap:6px;min-height:24px;font-size:13px;color:var(--text-faint);margin-bottom:12px;transition:color var(--motion-fast) ease}
.all-clients:hover{color:var(--accent)}
.flags{display:flex;justify-content:center;gap:10px;margin-bottom:30px}
.flags li{display:inline-flex;align-items:center;gap:7px;height:28px;padding:0 12px 0 6px;border-radius:var(--radius-pill);background:var(--panel-glass);border:1px solid var(--line-soft);box-shadow:var(--hl-inset);font-size:13px;color:var(--text-muted);white-space:nowrap}
.flags svg{display:block;width:24px;height:16px;overflow:hidden;border-radius:var(--radius-mark)}
.fl-r{fill:var(--flag-red)}
.fl-w{fill:var(--flag-white)}
.fl-b{fill:var(--flag-blue)}
.fl-edge{fill:none;stroke:var(--flag-edge);stroke-width:1}
.doors{display:grid;grid-template-columns:1fr 1fr;gap:32px;width:100%}
.doors>*{min-width:0}
.door{position:relative;display:flex;flex-direction:column;align-items:center;padding:20px 24px 22px;border-radius:var(--radius);border:1px solid var(--line-soft);background:linear-gradient(180deg,var(--panel),var(--panel) 52%,var(--card-foot));box-shadow:var(--shadow-card),var(--hl-inset);transition:transform .25s ease,box-shadow .25s ease}
.door:hover{transform:translateY(-2px);box-shadow:var(--shadow-card-hover),var(--hl-inset)}
.aud{display:inline-flex;align-items:center;min-height:26px;padding:2px 14px;border-radius:var(--radius-pill);font-size:12.5px;font-weight:var(--weight-bold);letter-spacing:.08em}
.aud--plum{background:var(--accent-tint);color:var(--accent)}
.aud--ink{background:var(--ink-tint);color:var(--ink)}
.topo{display:block;width:100%;max-width:480px;height:auto;margin:8px 0 6px}
.door-title{font-family:var(--font-display);font-weight:var(--weight-medium);font-size:22px;line-height:1.3;letter-spacing:-.01em;margin-bottom:6px}
.door--solo .door-title{color:var(--accent-dark)}
.door--family .door-title{color:var(--ink)}
.door-desc{font-size:15px;line-height:1.5;color:var(--text-muted);margin-bottom:10px}
.door-link{display:inline-flex;align-items:center;gap:6px;min-height:24px;font-size:var(--small-size);font-weight:var(--weight-medium)}
.door-link span{transition:transform var(--motion-fast) ease}
.door-link:hover span{transform:translateX(3px)}
.door--solo .door-link{color:var(--accent)}
.door--family .door-link{color:var(--ink)}
.float-chip{position:absolute;z-index:2;display:inline-flex;align-items:center;gap:7px;min-height:30px;padding:2px 12px;border-radius:var(--radius-pill);box-shadow:var(--shadow-chip),var(--hl-inset);white-space:nowrap}
.float-chip svg{display:block;width:14px;height:14px}
.float-chip--cover{top:-16px;left:-22px;background:var(--panel);border:1px solid var(--line);font-family:var(--font-mono);font-size:12.5px;color:var(--text)}
.float-chip--cover svg{color:var(--accent)}
.float-chip--refund{bottom:-14px;right:-18px;background:var(--accent-tint);border:1px solid var(--accent-line);font-size:13px;font-weight:var(--weight-bold);color:var(--accent-dark)}
.float-chip--refund svg{color:var(--accent)}
.sprite{position:absolute;width:0;height:0;overflow:hidden}
.st-hi{stop-color:var(--accent-hi)}
.st-accent{stop-color:var(--accent)}
.st-dark{stop-color:var(--accent-dark)}
.st-white{stop-color:var(--white)}
.st-panel{stop-color:var(--panel)}
.st-panel2{stop-color:var(--panel-2)}
.st-ink{stop-color:var(--ink)}
.gl{fill:none;stroke:var(--white);stroke-opacity:.34;stroke-width:1.5}
.rim{fill:none;stroke:var(--white);stroke-opacity:.3;stroke-width:1.2}
.sh-shadow{fill:var(--accent-dark);opacity:.42}
.lk{fill:var(--accent)}
.lk-arc{fill:none;stroke:var(--accent-dark);stroke-width:3.2;stroke-linecap:round}
.kh{fill:var(--panel)}
.hl{fill:none;stroke:var(--white);stroke-opacity:.82;stroke-width:4;stroke-linecap:round}
.hl-dot{fill:var(--white);opacity:.7}
.dv-bg{fill:var(--ink-tint)}
.dash{fill:none;stroke-width:1.6;stroke-dasharray:4 5;stroke-linecap:round}
.dash--plum{stroke:var(--accent);opacity:.72}
.dash--ink{stroke:var(--ink);opacity:.55}
.ring{fill:var(--panel);stroke:var(--line);stroke-width:1}
.disc--plum{fill:var(--accent-tint)}
.disc--ink{fill:var(--ink-tint)}
.disc--ink-solid{fill:var(--ink)}
.node-lift{filter:drop-shadow(0 4px 10px var(--shadow-tint))}
.ic--plum{color:var(--accent)}
.ic--ink{color:var(--ink)}
.ic--paper{color:var(--panel)}
.t-label{font-family:var(--font-body);font-size:13px;font-weight:var(--weight-medium);fill:var(--text-muted)}
.t-label--brand{fill:var(--accent);font-weight:var(--weight-bold);letter-spacing:.06em}
.spark{animation:spark-run 6s cubic-bezier(.45,.05,.55,.95) infinite}
.spark-halo{fill:var(--accent);opacity:.2}
.spark-core{fill:var(--accent);stroke:var(--panel);stroke-width:1.2}
.sp-s1{--dx:89px;--dy:0px;animation-delay:0s}
.sp-s2{--dx:89px;--dy:0px;animation-delay:-3s}
.sp-f1{--dx:68.4px;--dy:-22.8px;animation-delay:0s}
.sp-f2{--dx:68.4px;--dy:22.8px;animation-delay:-3s}
.sp-f3{--dx:65.5px;--dy:13.9px;animation-delay:-1.5s}
.sp-f4{--dx:65.5px;--dy:-13.9px;animation-delay:-4.5s}
@keyframes spark-run{
  0%{transform:translate(0,0);opacity:0}
  12%{opacity:1}
  88%{opacity:1}
  100%{transform:translate(var(--dx),var(--dy));opacity:0}
}
.tab-set{min-width:0}
.tab-list,[role="tablist"]{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:var(--space-3);padding:8px;background:var(--panel-2);border:1px solid var(--line);border-radius:var(--radius);width:fit-content;max-width:100%;box-shadow:var(--hl-inset)}
[role="tab"]{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 20px;border-radius:var(--radius);background:transparent;color:var(--text-muted);white-space:nowrap}
[role="tab"][aria-selected="true"]{background:var(--panel);color:var(--accent-dark);box-shadow:var(--shadow-soft),var(--hl-inset)}
[role="tabpanel"]{min-width:0}
.toc-tabs{position:sticky;top:0;z-index:10;display:flex;align-items:center;gap:8px;max-width:100%;overflow-x:auto;padding:12px;background:var(--paper-top);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-soft);margin-bottom:var(--space-4);scrollbar-width:thin}
.toc-tabs a{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:8px 16px;white-space:nowrap;flex-shrink:0;border-radius:var(--radius);font-size:var(--small-size);color:var(--text-muted)}
.toc-tabs a.is-current{background:var(--accent-tint);color:var(--accent-dark);box-shadow:var(--hl-inset)}
.toc-tabs.toc-static{position:static}
.faq-list{display:grid;gap:var(--space-2)}
.faq-item{min-width:0;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);box-shadow:var(--shadow-soft),var(--hl-inset)}
.faq-item summary{position:relative;cursor:pointer;list-style:none;min-height:56px;padding:16px 48px 16px 20px;font-weight:var(--weight-medium)}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{content:"+";position:absolute;right:20px;top:16px;font-family:var(--font-mono);color:var(--accent);font-size:20px;line-height:24px}
.faq-item[open] summary::after{content:"−"}
.faq-answer{padding:0 20px 20px;color:var(--text-muted)}
.faq-answer p+p{margin-top:var(--space-2)}
.plan-card{position:relative;display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-4);border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(180deg,var(--panel),var(--card-foot));box-shadow:var(--shadow-card),var(--hl-inset)}
.plan-card.is-current{border-color:var(--accent);box-shadow:var(--shadow-card),inset 0 0 0 1px var(--accent)}
.plan-card .btn{margin-top:auto;align-self:flex-start;max-width:100%}
.plan-price{font-family:var(--font-display);font-size:36px;font-weight:var(--weight-normal);color:var(--accent-dark);font-variant-numeric:tabular-nums}
.plan-price small{font-size:var(--small-size);color:var(--text-muted)}
.plan-facts{color:var(--text-muted);font-size:var(--small-size)}
.plan-facts li{padding-block:4px}
.best-value{align-self:flex-start;padding:4px 12px;background:var(--accent-tint);color:var(--accent-dark);border:1px solid var(--accent-line);border-radius:var(--radius-pill);font-size:13px}
.badge,.chip,.tag{display:inline-flex;align-items:center;gap:6px;min-height:26px;max-width:100%;padding:3px 10px;border-radius:var(--radius-pill);background:var(--accent-tint);color:var(--accent-dark);font-size:13px;overflow-wrap:anywhere}
.badge-data,.tag-data{max-width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.badge-ink{background:var(--ink-tint);color:var(--ink)}
.badge-success{background:var(--panel-2);color:var(--success)}
.status-dot{display:inline-block;width:8px;height:8px;border-radius:var(--radius-pill);background:var(--success);flex-shrink:0}
.fact-row{display:flex;flex-wrap:wrap;gap:8px}
.table-scroll{width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);box-shadow:var(--shadow-soft)}
.data-table,.route-table{width:100%;min-width:640px;border-collapse:collapse;text-align:left;font-size:var(--small-size)}
.data-table th,.route-table th{color:var(--text);background:var(--panel-2);font-weight:var(--weight-bold);white-space:nowrap}
.data-table th,.data-table td,.route-table th,.route-table td{padding:14px 18px;border-bottom:1px solid var(--line);word-break:keep-all}
.data-table tbody tr:last-child td,.route-table tbody tr:last-child td{border-bottom:0}
.table-scroll th,.table-scroll td:first-child{color:var(--text);word-break:keep-all}
.route-group th{background:var(--accent-tint);color:var(--accent-dark)}
.prose>.data-table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%;min-width:0}
.platform-card{display:flex;flex-direction:column;align-items:flex-start;gap:16px;padding:24px;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);box-shadow:var(--shadow-card),var(--hl-inset)}
.platform-card svg{width:32px;height:32px;color:var(--ink)}
.platform-card h3{font-size:18px}
.platform-card p{font-size:var(--small-size);color:var(--text-muted)}
.platform-card .btn{margin-top:auto}
.article-card{display:flex;flex-direction:column;gap:16px;padding:24px;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);box-shadow:var(--shadow-soft),var(--hl-inset)}
.article-card h3{font-size:20px}
.article-card h3 a:hover{color:var(--accent-dark)}
.article-meta{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:13px;color:var(--text-muted)}
.article-card p{color:var(--text-muted)}
.article-card .text-link{margin-top:auto;align-self:flex-start}
.blog-masthead{border-top:4px solid var(--accent);padding-top:24px}
.callout{padding:20px 24px;border-left:4px solid var(--accent);border-radius:var(--radius);background:var(--accent-tint);color:var(--text);box-shadow:var(--hl-inset)}
.promo-block{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--accent-line);border-radius:var(--radius);background:var(--accent-tint);box-shadow:var(--shadow-card),var(--hl-inset)}
.promo-copy{min-width:0}
.promo-copy h2{font-size:24px;margin-bottom:8px}
.promo-block .btn{flex-shrink:0;white-space:nowrap}
.feature-layout{display:grid;grid-template-columns:minmax(0,58fr) minmax(0,42fr);gap:var(--space-5);align-items:start}
.feature-list{display:grid;gap:32px;min-width:0}
.feature-item{display:grid;grid-template-columns:44px minmax(0,1fr);gap:20px;border:0;background:transparent;text-align:left;color:var(--text)}
.feature-icon{width:44px;height:44px;display:flex;align-items:center;justify-content:center;flex-shrink:0;border-radius:var(--radius-pill);background:var(--ink);color:var(--white)}
.feature-icon svg{width:22px;height:22px}
.feature-item h3{font-size:18px;font-weight:var(--weight-medium);margin-bottom:8px}
.feature-item p{font-size:15px;color:var(--text-muted);line-height:1.8}
.feature-illustration{position:sticky;top:var(--space-3);min-width:0}
.client-window{overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);box-shadow:var(--shadow-card),var(--hl-inset)}
.window-chrome{display:flex;align-items:center;gap:8px;min-height:44px;padding:12px 16px;background:var(--panel-2);border-bottom:1px solid var(--line)}
.window-chrome span{font-size:12px;color:var(--text-muted);margin-left:8px}
.chrome-dot{width:10px;height:10px;border-radius:var(--radius-pill);flex-shrink:0}
.chrome-red{background:var(--error)}
.chrome-yellow{background:var(--warn)}
.chrome-green{background:var(--success)}
.window-content{display:grid;grid-template-columns:minmax(96px,1fr) minmax(0,2fr);min-height:264px}
.window-regions{padding:12px;background:var(--paper);border-right:1px solid var(--line)}
.window-regions li{padding:8px 4px;font-size:13px;white-space:nowrap}
.window-regions .is-selected{color:var(--accent-dark);font-weight:var(--weight-bold)}
.window-details{padding:20px;display:flex;flex-direction:column;gap:16px;min-width:0}
.window-details h3{font-size:18px}
.window-region,.window-details [data-window-zone]{border:1px solid transparent;border-radius:var(--radius);padding:8px}
.window-highlight{border-color:var(--accent)!important;background:var(--accent-tint-soft);box-shadow:var(--hl-inset)}
.window-platforms{display:flex;flex-wrap:wrap;gap:8px;color:var(--text-muted);font-size:12px}
.window-platforms svg{width:18px;height:18px}
.badge-stage{display:flex;justify-content:center;padding-top:16px}
.badge-stage svg{width:112px;height:112px}
.ticker{overflow:hidden;max-width:100%;width:100%;padding-block:16px;background:var(--panel-2);border-block:1px solid var(--line)}
.ticker-track{display:flex;width:max-content;max-width:none;will-change:transform}
.ticker-group{display:flex;align-items:center;gap:32px;flex-shrink:0;padding-right:32px}
.ticker-group span{font-family:var(--font-mono);font-size:var(--small-size);color:var(--text-muted);white-space:nowrap}
.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(auto-fit,minmax(168px,1fr));gap:16px}
.swatch{min-width:0;padding:12px;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel)}
.swatch code{display:block;font-size:12px;margin-top:8px}
.swatch-color{height:56px;border-radius:var(--radius);border:1px solid var(--line)}
.sw-paper{background:var(--paper)}
.sw-top{background:var(--paper-top)}
.sw-bottom{background:var(--paper-bottom)}
.sw-panel{background:var(--panel)}
.sw-panel2{background:var(--panel-2)}
.sw-foot{background:var(--card-foot)}
.sw-line{background:var(--line)}
.sw-accent{background:var(--accent)}
.sw-hi{background:var(--accent-hi)}
.sw-dark{background:var(--accent-dark)}
.sw-press{background:var(--accent-press)}
.sw-tint{background:var(--accent-tint)}
.sw-ink{background:var(--ink)}
.sw-inkdark{background:var(--ink-dark)}
.sw-inktint{background:var(--ink-tint)}
.sw-text{background:var(--text)}
.sw-muted{background:var(--text-muted)}
.sw-faint{background:var(--text-faint)}
.sw-white{background:var(--white)}
.sw-success{background:var(--success)}
.sw-warn{background:var(--warn)}
.sw-error{background:var(--error)}
.sw-red{background:var(--flag-red)}
.sw-blue{background:var(--flag-blue)}
.sw-glass{background:var(--panel-glass)}
.sw-softline{background:var(--line-soft)}
.sw-softtint{background:var(--accent-tint-soft)}
.sw-accentline{background:var(--accent-line)}
.sw-mark{background:var(--accent-mark)}
.sw-edge{background:var(--flag-edge)}
.sw-grain{background:var(--grain-ink)}
.sw-glow{background:var(--glow-paper)}
.sw-shadow{background:var(--shadow-tint)}
.sw-btnhl{background:var(--btn-hl)}
.sw-veil{background:var(--veil)}
.type-display{font-family:var(--font-display);font-size:48px;font-weight:var(--weight-normal);line-height:1.2}
@media(max-width:768px){
  .hero{padding:28px 20px 40px}
  .display{font-size:38px}
  .lede{font-size:17px}
  .platforms{flex-wrap:wrap;gap:12px 20px}
  .flags{flex-wrap:wrap}
  .doors{grid-template-columns:1fr;gap:20px}
  .door{padding-top:16px}
  .float-chip{position:static;margin-bottom:10px;max-width:100%;white-space:normal}
  .feature-layout{grid-template-columns:1fr}
  .feature-illustration{position:static}
  .promo-block{flex-direction:column;align-items:flex-start}
  .plan-card{padding:24px}
  .type-display{font-size:32px}
}
@media(max-width:640px){
  .hero{padding-inline:16px}
  .door{padding-inline:16px}
  .feature-item{gap:12px}
  .window-details{padding:12px}
  .promo-block{padding:24px}
}
@media(prefers-reduced-motion:reduce){
  .spark{animation:none;opacity:1;transform:translate(calc(var(--dx) * .5),calc(var(--dy) * .5))}
  .door,.door-link span,.all-clients{transition:none}
  .door:hover{transform:none}
  .ticker-track{width:100%;transform:none!important;will-change:auto}
  .ticker-group{flex-wrap:wrap;width:100%;gap:16px;padding-inline:var(--gutter)}
  .ticker-group[data-ticker-copy]{display:none}
}