/* Shared spacing rhythm. Content, controls and screenshot proportions are unchanged. */
:root{--site-gutter:24px;--section-space:32px;--card-space:24px}
.site-home .wrap,.site-policy .wrap,.site-library .wrap{padding-inline:var(--site-gutter)}
.site-home>header.wrap,.site-policy>header.wrap{background:var(--paper)}
.site-home main>.wrap{padding-block:var(--section-space)}
.site-home main>.hero{padding-top:36px;padding-bottom:36px}
.site-home .eyebrow{margin:0 0 10px}
.site-home .hero .lead{margin:20px 0;line-height:1.55}
.site-home .hero-points{margin:0 0 20px;gap:10px 18px}
.site-home .tour-entry{gap:12px}
.site-home .secondary-actions{gap:20px}
.site-home .hero .secondary-actions{margin-top:2px}
.site-home .try-app h2,.site-home .benefits h2,.site-home #pricing>h2,.site-home .questions h2{margin:0 0 12px;line-height:1.2}
.site-home .section-intro{margin:0 0 24px;line-height:1.6}
.site-home .demo-path{margin:20px 0;gap:12px 24px}
.site-home .demo-phones{margin:24px auto 16px;gap:32px}
.site-home .device-caption{margin:8px 0 16px;line-height:1.5}
.site-home .interactive-phone{margin-bottom:16px}
.site-home .try-disclosure{margin:16px auto 0}
.site-home #features{gap:16px}
.site-home .feature{padding:20px}
.site-home .feature-art{display:block;margin:0 0 12px}
.site-home .feature h3{margin:0 0 8px;line-height:1.3}
.site-home .feature p{margin:0;line-height:1.6}
.site-home .feature-note{margin:16px 0}
.site-home .feature-details{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-items:start}
.site-home .feature-details>details{min-width:0;margin:0}
.site-home .feature-details>details>summary{display:flex;align-items:center;gap:10px;list-style:none}
.site-home .feature-details>details>summary::-webkit-details-marker{display:none}
.site-home .feature-details>details>summary::before{content:"";width:7px;height:7px;border:solid currentColor;border-width:0 2px 2px 0;transform:rotate(-45deg);flex:none}
.site-home .feature-details>details[open]>summary::before{transform:rotate(45deg)}
.site-home .feature-details>details>summary{min-height:76px;padding:16px;font-size:14px;line-height:1.5}
.site-home .feature-details details>p,.site-home .feature-details details>ul{margin:0 16px 16px;line-height:1.65}
.site-home .feature-details>details[open]>summary{margin-bottom:8px}
.site-home .seo-guide-links{margin-top:20px;padding-top:16px}
.site-home .seo-guide-links h3{margin:0 0 10px}
.site-home .seo-guide-links ul{margin:0;padding-left:20px;line-height:1.8;gap:8px 20px}
.site-home .education-section{margin-top:16px}
.site-home #screenshots.screen-showcase{padding-block:var(--section-space)}
/* Compact screenshot viewer: controls beside the image, without an oversized panel. */
.site-home #screenshots.screen-showcase{display:grid;grid-template-columns:minmax(0,280px) 230px;grid-template-rows:auto auto auto 1fr;gap:16px 40px;justify-content:center;align-items:start}
.site-home .showcase-header{grid-column:1;grid-row:1;margin:0;text-align:left}
.site-home .showcase-header h2{margin:0;line-height:1.15}
.site-home .screen-choices{grid-column:1;grid-row:2;flex-direction:column;width:100%;margin:0;gap:4px}
.site-home .screen-choices button{text-align:left;padding:12px 16px}
.site-home .screen-stage{grid-column:2;grid-row:1/span 4;width:100%;max-width:none;padding:0;border:0;background:none;box-shadow:none}
.site-home .screen-panel{display:flex;flex-direction:column;align-items:center;gap:12px}
.site-home .screen-panel figcaption{display:flex;align-items:center;justify-content:center;max-width:none;min-height:55px;text-align:center}
.site-home .screen-panel h3{font-size:22px;line-height:1.25;letter-spacing:-.02em}
.site-home .screen-panel .shot-link{width:230px}
.site-home #screenshots .sample-label{grid-column:1;grid-row:3;margin:0;text-align:left}
.site-home #screenshots .capture-details{grid-column:1;grid-row:4;margin:0;text-align:left;min-width:0}
.site-home #screenshots .capture-details summary{margin:0;padding:8px 0}
@media(max-width:760px){
 .site-home #screenshots.screen-showcase{display:block}
 .site-home .showcase-header{text-align:center;max-width:440px;margin:0 auto 16px}
 .site-home .screen-choices{flex-direction:row;max-width:440px;margin:0 auto 16px}
 .site-home .screen-choices button{text-align:center;padding:9px 3px}
 .site-home .screen-panel figcaption{min-height:28px}
 .site-home #screenshots .sample-label{margin:12px auto 0;text-align:center}
 .site-home #screenshots .capture-details{margin:2px auto 0;text-align:center}
 .site-home #screenshots .capture-details summary{margin:auto}
}
.site-home .sample-label{margin-top:12px;line-height:1.6}
.site-home .capture-details{margin-top:2px}
.site-home .price-card{max-width:none;padding:var(--card-space)}
.site-home .price-card>h3{margin:16px 0 0;line-height:1.4}
.site-home .price-card>.eyebrow{margin:0}
.site-home .price-options{gap:16px;margin:20px 0}
.site-home .price-options .price{padding:20px}
.site-home .price-card>p{margin:0 0 16px;max-width:82ch}
.site-home .price-card>.button{margin:4px 8px 0 0}
.site-home .questions{grid-template-columns:minmax(260px,320px) minmax(0,1fr);gap:40px;align-items:center}
.site-home .questions>*{min-width:0}
.site-home .download-card h2{font-size:32px}
.site-home .download-card>p{font-size:15px;line-height:1.6}
.site-home .download-card .button{font-size:14px;padding-inline:14px}
.site-home .download-card{padding:var(--card-space)}
.site-home .download-card>p{margin:0 0 16px}
.site-home .download-card .actions{margin:20px 0 16px;gap:12px}
.site-home .download-card .download-terms{margin:0}
.site-home .faq-list summary{padding-block:16px}
.site-home .faq-list details p{margin-bottom:14px}
.site-home .wellness-note{margin:16px 0 0}
.site-home #product-updates{padding-block:var(--section-space)}
.site-home #updates-form{max-width:680px;padding:var(--card-space);margin:0 auto}
.site-home #updates-form h2{margin:0 0 12px;line-height:1.25}
.site-home #updates-form .signup-intro{margin:0 0 20px;line-height:1.6}
.site-home #updates-form>label:not(.consent){margin:0 0 8px}
.site-home #updates-disclosure{margin:12px 0;line-height:1.6}
.site-home #updates-form .consent{margin:16px 0;gap:12px;line-height:1.6}
.site-home #updates-form .signup-small{margin:12px 0 0;line-height:1.6}
.site-home #signup-status:empty{margin:0;padding:0}
.site-home .legal #support{margin:0}
.site-home #support h2{margin:0 0 12px}
.site-home #support>p{margin:0 0 16px;line-height:1.65}
.site-home #support details{max-width:790px;margin:16px 0}
.site-home #support>p:last-child{margin-bottom:0}
.site-home>footer,.site-policy>footer{padding-block:24px}
.site-home footer .wrap,.site-policy footer .wrap{gap:12px 24px;line-height:1.8}
/* Policies use a comfortable reading width, without the old double top margin. */
.site-policy main.legal{max-width:840px;padding-block:36px 48px}
.site-policy main.legal>section{margin:0}
.site-policy .legal h2{margin:0 0 16px;line-height:1.25}
.site-policy .legal h3{margin:28px 0 10px;line-height:1.4}
.site-policy .legal p,.site-policy .legal ul,.site-policy .legal ol{margin:0 0 16px;line-height:1.7}
.site-policy .legal li{margin:8px 0}
/* Guides and library keep the same rhythm as the homepage. */
.site-guide,.site-guide *{box-sizing:border-box}
.site-guide>header,.site-guide>main,.site-guide>footer{max-width:1008px;padding-inline:var(--site-gutter)}
.site-guide>header{padding-block:20px}
.site-guide>main{padding-block:28px 40px}
.site-guide>footer{padding-block:24px}
.site-guide nav{gap:12px 24px;align-items:center}
.site-guide h1{margin:0 0 16px}
.site-guide h2{margin:0 0 12px}
.site-guide h3{margin:20px 0 8px}
.site-guide p{margin:0 0 16px}
.site-guide main>section,.site-guide .layout>div>section{margin-top:28px}
.site-guide .layout{gap:32px}
.site-guide .layout figure{margin:0}
.site-guide .layout figcaption{margin-top:12px}
.site-guide .breadcrumbs{margin:0 0 24px;gap:8px}
.site-guide .guide-grid{gap:16px}
.site-guide .guide-grid .card{margin:0;padding:24px}
.site-guide .card>p:last-child{margin-bottom:0}
.site-guide .buttons{gap:12px;margin:16px 0}
.site-guide footer>p{margin:16px 0 0}
.site-library .intro{padding:32px 0 24px}
.site-library h1{margin-bottom:16px}
.site-library .lead{margin:0 0 16px;line-height:1.6}
.site-library .notice{margin-top:20px;padding:16px 20px}
.site-library .library-tools{padding:20px;gap:16px}
.site-library .entries{gap:16px}
.site-library .entry summary{min-height:128px;padding:18px}
.site-library .entry[open] summary{min-height:0}
.site-library .entry-body{padding:0 18px 20px}
.site-library .entry-body p{margin:16px 0 0}
.site-library .download{margin:28px 0 36px;padding:24px}
/* Modal gutters stay clear of the close and navigation controls. */
.site-home .tour-scroll{padding:24px}
.site-home .tour-step{gap:24px}
.site-home .tour-copy p{margin-bottom:16px;line-height:1.6}
.site-home .tour-media figcaption{margin-top:10px;line-height:1.5}
@media(max-width:760px){
 .site-home .feature-details{grid-template-columns:1fr}
 .site-home .feature-details>details>summary{min-height:52px}
}
@media(max-width:760px){
 :root{--site-gutter:20px;--section-space:24px;--card-space:20px}
 .site-home .nav{padding:12px 0;gap:8px 16px;justify-content:space-between}
 .site-home .navlinks{gap:4px 12px;line-height:1.5}
 .site-home .navlinks a{padding-block:8px}
 .site-home main>.hero{padding-block:24px 28px}
 .site-home .hero .lead{margin:16px 0 20px}
 .site-home .hero-points{gap:8px 14px;margin-bottom:20px}
 .site-home .hero .secondary-actions{gap:4px 16px}
 .site-home .demo-path{margin:16px 0;gap:10px 16px}
 .site-home .device-picker{margin-top:16px;gap:10px}
 .site-home .demo-phones{margin:20px auto 16px}
 .site-home .feature{padding:16px}
 .site-home #features{gap:12px}
 .site-home .feature-art{margin-bottom:10px}
 .site-home .feature-details>details>summary{padding:14px 16px}
 .site-home .seo-guide-links{margin-top:16px}
 .site-home .screen-stage{padding:0}
 .site-home .screen-panel{gap:12px}
 .site-home .price-options{gap:12px;margin:16px 0}
 .site-home .price-options .price{padding:14px 12px}
 .site-home .questions{grid-template-columns:1fr;align-items:start;gap:28px}
 .site-home .download-card .actions{margin:16px 0;gap:12px}
 .site-home .download-card .button{min-height:48px}
 .site-home .price-card>.button{margin:4px 0 0;width:100%}
 .site-home .price-card>.button+.button{margin-top:12px}
 .site-home #updates-form .signup-intro{margin-bottom:16px}
 .site-home footer .wrap,.site-policy footer .wrap{gap:12px}
 .site-policy main.legal{padding-block:28px 36px}
 .site-guide>main{padding-block:24px 32px}
 .site-guide .layout{gap:24px}
 .site-guide .layout figure{margin:0 auto}
 .site-guide .guide-grid .card{padding:20px}
 .site-library .intro{padding:28px 0 20px}
 .site-library .library-tools{padding:16px;gap:12px}
 .site-library .download{padding:20px}
}
@media(max-width:640px){
 .site-home .tour-scroll{padding:20px 16px}
 .site-home .tour-step{gap:16px}
 .site-home .tour-head,.site-home .tour-nav{padding:12px 16px}
}
@media(max-width:380px){
 :root{--site-gutter:16px;--card-space:18px}
 .site-home .navlinks{gap:4px 10px}
 .site-home .demo-path li:last-child{flex-basis:auto}
}

/* Site-wide alignment pass: readable navigation and consistent touch spacing. */
.site-home .nav a,.site-policy .nav a,.site-library .nav a{min-height:44px;display:inline-flex;align-items:center}
.site-home .navlinks a{display:inline-flex!important}
.site-policy{padding-bottom:0}
.site-library .brand img{width:32px;height:32px;border-radius:10px}
.site-guide>header nav{gap:8px 24px}
.site-guide>header nav>a,.site-guide>footer nav>a{min-height:44px;display:inline-flex;align-items:center}
.site-guide>header nav>a{font-size:14px;text-decoration:none}
.site-guide>header .brand{gap:9px;margin-right:auto;font-size:18px;font-weight:700;color:var(--ink)}
.site-guide .brand img{width:32px;height:32px;border-radius:10px;flex:none}
.site-home .faq-list summary::after{top:50%;transform:translateY(-50%)}
.site-home .feature-details .med-grid{margin-top:0;padding:0 16px 16px;gap:12px}
.site-home .feature-details .med-grid article{padding:16px;border-radius:12px;min-width:0}
.site-home .feature-details .med-grid summary{min-height:44px;padding:8px 0;font-size:14px}
.site-home .feature-details .med-grid article>p:last-child{margin-bottom:0}
@media(min-width:381px) and (max-width:900px){
 .site-home .feature h3{min-height:2.6em}
}
@media(max-width:760px){
 .site-home .nav{gap:4px 16px}
 .site-home .navlinks{gap:0 10px;font-size:12px}
 .site-home .navlinks a{padding-block:8px}
 .site-home main>.wrap{scroll-margin-top:128px}
 .site-guide>header{padding-block:12px}
 .site-guide>header nav{gap:0 20px}
 .site-guide>header .brand{flex-basis:100%;margin:0 0 4px}
 .site-guide .buttons{display:grid;grid-template-columns:1fr}
 .site-guide .buttons a{display:flex;align-items:center;justify-content:center;min-height:48px;text-align:center}
 .site-guide>footer nav{gap:4px 20px}
 .site-library .nav{gap:4px 16px;padding-block:12px}
 .site-library .brand{flex-basis:100%}
 .site-library .navlinks{gap:20px;font-size:14px}
 .site-library .actions{display:grid;grid-template-columns:1fr}
}
@media(max-width:380px){
 .site-home .navlinks{gap:0 8px;font-size:12px}
}
