/* V9: quiet typography, earlier product evidence, and resilient small layouts. */
:root { --font-display: 'Instrument Sans', 'Segoe UI', sans-serif; --text-faint:#a29b8b; --nav-height:max(68px,4.25rem); }
html { scroll-padding-top:calc(var(--nav-height) + 20px); }
.nav-inner { height:var(--nav-height); }
.site-nav { container-type:inline-size; }
.doc-page { padding-top:var(--nav-height); }
h1,h2,h3,.doc-section { overflow-wrap:anywhere; }
.container { padding-inline:clamp(20px,4vw,40px); }
p,li,summary,.section-label,.store-choice { overflow-wrap:anywhere; }
body { overflow-x:clip; }
:lang(ar) { --font-display:'Segoe UI',Tahoma,sans-serif; --font-body:'Segoe UI',Tahoma,sans-serif; }
:lang(ja) { --font-display:'Yu Gothic','Hiragino Kaku Gothic ProN',sans-serif; --font-body:'Yu Gothic','Hiragino Kaku Gothic ProN',sans-serif; }
:lang(ko) { --font-display:'Malgun Gothic','Apple SD Gothic Neo',sans-serif; --font-body:'Malgun Gothic','Apple SD Gothic Neo',sans-serif; }
:lang(zh-Hans) { --font-display:'Microsoft YaHei','PingFang SC',sans-serif; --font-body:'Microsoft YaHei','PingFang SC',sans-serif; }
:lang(zh-Hant) { --font-display:'Microsoft JhengHei','PingFang TC',sans-serif; --font-body:'Microsoft JhengHei','PingFang TC',sans-serif; }
.hero { padding-top:clamp(6.5rem,11vh,8rem); }
.hero-inner { max-width:850px; }
.hero h1 { font-size:clamp(2.25rem,5.2vw,4.35rem); font-weight:600; line-height:1.12; letter-spacing:-0.025em; margin-bottom:1.1rem; }
.hero-kicker { margin-bottom:1rem; font-size:.87rem; letter-spacing:.02em; text-transform:none; }
.hero-kicker::before { display:none; }
.hero-desc { max-width:42rem; font-size:clamp(1rem,1.35vw,1.16rem); line-height:1.6; margin-bottom:1.45rem; }
.hero-ctas { margin-bottom:1rem; }
.hero-note { max-width:42rem; margin-inline:auto; font-size:.88rem; }
.hero-store-lead { margin:.9rem 0 .5rem; text-align:center; font-size:.85rem; color:var(--text-faint); text-transform:uppercase; letter-spacing:.05em; }
.hero-inner .store-choices { justify-content:center; }
.hero-inner .store-terms { max-width:42rem; margin-inline:auto; text-align:center; }
.hero-shot { margin-top:2rem; padding-bottom:3rem; }
.hero-shot figcaption { font-size:.86rem; letter-spacing:0; margin-top:.7rem; }
.window-frame { box-shadow:0 12px 40px rgba(0,0,0,.25); background:var(--surface); }
.window-frame video { aspect-ratio:16/9; }
.btn-primary,.nav-cta { box-shadow:none; }
.btn-primary:hover,.nav-cta:hover { box-shadow:none; }
.btn-primary,.btn-ghost { min-height:48px; padding:.8rem 1.5rem; font-size:1rem; }
.nav-logo { flex-shrink:0; font-weight:600; }
.nav-cta { min-height:44px; white-space:nowrap; padding:.55rem 1rem; }
.nav-price { unicode-bidi:isolate; }
.nav-links { gap:1.2rem; }
.nav-links a { display:inline-flex; align-items:center; min-height:44px; }
.nav-toggle { width:44px; height:44px; }
.lang-switcher-btn { min-height:44px; }
.lang-switcher-menu a { display:flex; min-height:44px; }
.section { padding-block:clamp(2.75rem,6vw,5rem); }
.section-heading { font-weight:600; letter-spacing:-.02em; }
.section-sub { line-height:1.6; }
.feature-row { padding-block:1.4rem; }
.feature-extra { margin-top:1.5rem; border-block:1px solid var(--border-light); }
.feature-extra summary { cursor:pointer; min-height:52px; padding:1rem .25rem; font-weight:600; color:var(--text); }
.feature-extra p { color:var(--text-dim); padding:.25rem .25rem 1.5rem; }
.secondary-details .fact-cols { padding-block:1rem 2rem; }
#customize .section-heading,#customize .section-sub,#customize .section-label,
#privacy-strip .section-heading,#privacy-strip .section-sub,#privacy-strip .section-label { text-align:start; margin-inline:0; }
.privacy-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.25rem 2.5rem; margin-top:2rem; }
.privacy-card { border:0; border-top:1px solid var(--border-light); border-radius:0; background:none; padding:1.25rem 0; }
.privacy-card svg { width:21px; height:21px; margin-bottom:.65rem; }
.privacy-card h3 { font-size:1.05rem; }
.privacy-card p { color:var(--text-dim); }
#privacy-strip .privacy-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
.price-card { padding:clamp(20px,4vw,38px); min-width:0; }
.price-card::before { display:none; }
.price-line { flex-wrap:wrap; }
.price-amount { font-size:clamp(2rem,12vw,3rem); }
.price-perks { margin-block:1.5rem; }
.price-or { margin-block:1.2rem .5rem; }
.store-choices { display:flex; flex-wrap:wrap; align-items:center; gap:0; }
.store-choice { display:flex; flex-direction:column; justify-content:center; gap:.35rem; border:1px solid var(--border-light); border-radius:10px; padding:.9rem; text-decoration:none; }
.store-choice strong { font-size:.87rem; font-weight:500; color:var(--text-dim); }
.store-choice span { color:var(--text-faint); font-size:.78rem; }
.store-choice.store-badge { display:inline-flex; align-items:center; justify-content:center; flex:none; padding:12px; border:0; border-radius:0; }
.store-badge img { display:block; width:auto; height:44px; max-width:none; }
.store-terms { color:var(--text-dim); font-size:.82rem; line-height:1.6; margin-top:.85rem; }
.price-team-note { text-align:start; }
.secondary-details { padding-block:1.5rem; }
.fact-col h3 { font-weight:600; }
.footer-links a { min-height:44px; display:inline-flex; align-items:center; }
/* Content remains readable even when a script or observer fails. */
html.js .reveal { opacity:1; transform:none; transition:none; }
@container(max-width:69rem) {
 .nav-inner { gap:.6rem; justify-content:flex-start; }
 .nav-logo { order:1; }
 .nav-right { order:2; margin-inline-start:auto; }
 .nav-toggle { display:inline-flex; order:3; }
 .nav-links { display:none; position:absolute; inset:100% 0 auto; max-height:calc(100dvh - var(--nav-height)); overflow-y:auto; flex-direction:column; align-items:stretch; gap:0; background:var(--surface); padding:.5rem 1.25rem 1rem; border-bottom:1px solid var(--border); }
 .nav-links a { display:flex; padding:.65rem 0; }
 .site-nav.nav-open .nav-links { display:flex; }
 .nav-lang-item .lang-switcher-menu { position:static; max-height:15rem; margin-top:.5rem; }
}
@media(max-width:600px) {
 .hero { padding-top:6.25rem; }
 .hero-kicker { max-width:28em; font-size:.8rem; }
 .hero h1 { font-size:clamp(2.05rem,8.6vw,2.8rem); }
 .hero-ctas { gap:.55rem; }
 .hero-ctas .btn-ghost { border:0; padding:.4rem 1rem; }
 .hero-shot { margin-top:1.4rem; padding-bottom:2rem; }
 .privacy-grid,#privacy-strip .privacy-grid { grid-template-columns:1fr; gap:0; }
 .store-choices { grid-template-columns:1fr; }
 .store-choice { flex-direction:row; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:.5rem; }
 .nav-cta { padding:.5rem 10px; gap:.4rem; font-size:.86rem; }
 .nav-inner { padding-inline:12px; gap:6px; }
 .nav-logo { font-size:1.05rem; gap:.4rem; }
 .nav-logo img { width:25px; height:25px; }
 .price-card .btn-primary { white-space:normal; text-align:center; }
}
@media(max-width:360px) { .nav-buy-label { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; } }
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }
