/* Shared page rhythm, proportional images, and compact demo spacing. */
:root{
 --page-content:1360px;
 --page-gutter:clamp(20px,5vw,80px);
 --section-space:clamp(64px,6vw,96px);
 --type-title:clamp(32px,3.2vw,48px);
 --type-card:22px;
 --type-lead:18px;
 --type-body:16px;
 --type-label:13px;
 --type-caption:12px;
}
:is(#hardware-details,#stevo,#research,#product,#pricing,#trust,#social){scroll-margin-top:86px}
:is(#hardware-details,#stevo,#research,#pricing,#trust,#social){padding-block:var(--section-space)}
:is(#hardware-details,#research,#social){padding-inline:max(var(--page-gutter),calc((100% - var(--page-content))/2))}
:is(#stevo,#pricing,#trust) .wrap{width:calc(100% - 2 * var(--page-gutter));max-width:var(--page-content);padding:0;margin-inline:auto}
:is(#hardware-details,#stevo,#try,#research,#product,#pricing,#trust,#social) h2{
 font-size:var(--type-title);font-weight:600;line-height:1.1;letter-spacing:-.035em;
}
:is(#hardware-details,#stevo,#research,#pricing,#trust) .section-kicker{
 font-size:var(--type-label);font-weight:500;line-height:1.4;letter-spacing:.14em;margin-bottom:18px;
}
:is(#hardware-details,#stevo) h3,#research .research-card-title{font-size:var(--type-card);font-weight:600;line-height:1.25;letter-spacing:-.02em}
:is(#stevo,#pricing,#trust) .sec-lead,#social .sub,#research .lead2{font-size:var(--type-lead);line-height:1.5}
:is(#stevo,#pricing,#trust) .sec-head{gap:clamp(28px,4vw,64px);margin-bottom:32px}
#hardware-details header{margin:0 0 40px}
#hardware-details .hardware-shot-grid{width:100%;max-width:var(--page-content);margin-inline:auto;gap:40px 28px}
#hardware-details .hardware-shot-grid img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
#try .try-mode-switch{text-align:center;margin-bottom:24px}
#hardware-details .hardware-shot-grid article>div{padding:13px 3px 0}
#hardware-details .hardware-shot-grid h3{margin:7px 0}
#hardware-details .hardware-shot-grid p{font-size:var(--type-body);line-height:1.55;max-width:42ch}
#hardware-details .hardware-shot-grid small{font-size:var(--type-caption);letter-spacing:.1em}
#stevo .stevo-panel{gap:clamp(28px,4vw,56px);padding:20px 4px 20px}
#stevo .stevo-panel .sc-l p{font-size:var(--type-body);line-height:1.5}
#stevo .stevo-panel .bub{font-size:var(--type-lead);line-height:1.45}
#stevo .stevo-tabs button{font-size:var(--type-body)}
#stevo .sc-r .mac2{aspect-ratio:16/9;max-height:none}
#research .people{max-width:none}
#research .lead2{margin-bottom:28px}
#research .person .pcard{font-size:var(--type-body);line-height:1.5}
#research .person .lbl{font-size:var(--type-label)}
#product{padding-block:var(--section-space)}
#product .pgrid{width:calc(100% - 2 * var(--page-gutter));max-width:var(--page-content);padding:0;margin-inline:auto;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(32px,4vw,64px)}
#product .product-display{width:100%;max-width:560px;margin-inline:auto}
#product .spec-viewport{aspect-ratio:1;max-height:560px}
#product .product-finish{width:260px;max-width:100%;margin-bottom:14px}
#product .product-finish button{font-size:var(--type-body);padding:9px 10px}
#product .product-specs h2{font-size:var(--type-title);margin-bottom:10px}
#product .product-specs .spec-model-name{font-size:var(--type-body);margin-bottom:18px}
#product .spec-list>div{font-size:var(--type-body);line-height:1.4;padding:16px 0;gap:20px}
#product .spec-price strong{font-size:28px}
#product .spec-toolbar{margin-top:6px}
#pricing .tier{padding:26px;gap:15px;min-height:0}
#pricing .tier p,#pricing .tier ul,#pricing .byok{font-size:var(--type-body);line-height:1.5}
#pricing .tier .name{font-size:var(--type-label)}
#pricing .tier .price b{font-size:48px}
#pricing .tier .cta{min-height:48px;margin-top:auto;font-size:var(--type-body)}
#pricing .tier .tag{font-size:var(--type-caption)}
#pricing .byok{grid-template-columns:160px 1fr auto;padding:18px 24px}
#trust .sec-head{grid-template-columns:minmax(0,1fr);margin-bottom:30px}
#trust .ledger .r{grid-template-columns:160px minmax(0,1fr) 200px;gap:24px;padding:16px 24px}
#trust .ledger .r .k{font-size:var(--type-label)}
#trust .ledger .r .v{font-size:var(--type-body);line-height:1.5}
#trust .ledger .r .a{font-size:var(--type-card);line-height:1.3}
#trust .ledger .r .a small{font-size:var(--type-caption)}
#social .post.x{font-size:var(--type-body);line-height:1.5;padding:22px}
#social .creator .who{font-size:var(--type-card);line-height:1.25}
#social .social-more-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin-top:24px}
#social .social-more-grid[hidden]{display:none}
#social .social-load-more{display:flex;align-items:center;flex-direction:column;gap:12px;margin-top:32px}
#social .social-load-more button{min-width:160px;min-height:48px;padding:12px 28px;border:1px solid #d6d6d2;border-radius:999px;background:#fff;color:#171717;font:inherit;font-size:var(--type-body);font-weight:500;cursor:pointer}
#social .social-load-more button:hover{background:#f3f3f0}
#social .social-load-more button:focus-visible{outline:2px solid #3983ff;outline-offset:4px}
#social .social-load-more button:disabled{cursor:default;color:#777;background:#f7f7f5}
#social #social-load-status{font-size:var(--type-caption);color:#777}
@media(max-width:1100px){#social .social-more-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){
 :is(#stevo,#pricing,#trust) .sec-head{grid-template-columns:1fr;gap:20px}
 #product .pgrid{grid-template-columns:1fr;max-width:680px;gap:32px}
 #product .spec-list>div{padding:14px 0}
 #trust .ledger .r{grid-template-columns:1fr;gap:8px;padding:20px}
 #trust .ledger .r .a{text-align:left}
 #pricing .byok{grid-template-columns:1fr;gap:8px}
 #hardware-details .hardware-shot-grid img{height:auto;aspect-ratio:3/2}
}
@media(max-width:620px){
 :root{--type-card:20px;--type-lead:17px}
 #stevo .stevo-tabs button{font-size:13px}
 #social .social-more-grid{grid-template-columns:1fr}
 #product .spec-list>div{gap:12px}
 #hardware-details .hardware-shot-grid{gap:30px}
}

#featwords li{font-size:var(--type-title);line-height:1.16;letter-spacing:-.035em}
#feat .desc p{font-size:var(--type-lead);line-height:1.5}
#feat .scene-bubble{font-size:var(--type-lead);line-height:1.4}
#feat .scene-bubble small{font-size:var(--type-label)}
#hardware-details .hardware-shot-media,#hardware-details .hardware-shot-grid img{background:#fff}

/* Content-led rhythm, independent of screen height. */
#stevo{padding-block:clamp(72px,7vw,112px)}
:is(#pricing,#social){padding-block:clamp(64px,6vw,88px)}
#trust .ledger .r{padding-block:22px}
#pricing .tier{padding:30px;gap:18px}
#research .lead2{max-width:60ch;line-height:1.55}
#feat .grid{min-height:0;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
#feat .media{min-height:640px;aspect-ratio:1/1.08}
#feat .words{padding:64px var(--page-gutter);min-width:0;justify-content:flex-start}
#feat .desc{margin-top:auto;padding-top:48px;min-height:0;width:min(100%,38ch)}
#feat #featwords li{font-size:clamp(30px,3.2vw,48px);letter-spacing:-.035em}
@media(max-width:900px){
 #feat .grid{grid-template-columns:minmax(0,1fr)}
 #feat .words{padding:48px var(--page-gutter) 32px}
 #feat .desc{margin-top:28px;padding-top:0}
 #feat .media{aspect-ratio:4/3;min-height:480px}
 #pricing .tier{padding:24px}
}
@media(max-width:620px){
 :root{--section-space:56px}
 #stevo{padding-block:64px}
 #hardware-details header{margin-bottom:28px}
 #hardware-details .hardware-shot-grid{gap:36px}
 #feat .media{aspect-ratio:4/5;min-height:460px}
 #feat #featwords li{font-size:clamp(27px,7.5vw,38px)}
 #trust .ledger .r{padding:22px 20px}
}
@media(max-width:380px){#product .spec-dimensions dd{white-space:normal}}
