@import url('themes/product.css');

/* Main stylesheet. Product layout with a readable, consistent type scale. */
:root {
 --sans: 'Segoe UI Variable Text', 'Segoe UI', system-ui, -apple-system, BlinkMacSystemFont, Arial, sans-serif;
 --serif: var(--sans);
 --mono: 'Cascadia Code', 'SFMono-Regular', Consolas, monospace;
}
body { font-size:18px;line-height:1.7; }
h1,h2,h3,h4 { font-weight:700;letter-spacing:-.035em;text-wrap:balance; }
p { text-wrap:pretty; }
.brand-text { font-size:23px;font-weight:700;letter-spacing:-.035em; }
.main-nav { gap:4px; }
.main-nav a:not(.btn) { font-size:15px;font-weight:500;padding:10px; }
.btn,.main-nav .btn { font-size:15px;font-weight:650; }
.hero-message h1 { font-size:clamp(46px,4.8vw,68px);line-height:1.06;letter-spacing:-.045em; }
.hero-description { font-size:19px;line-height:1.7; }
.hero-secondary { font-size:16px;font-weight:500; }
.hero-footnote { font-size:13px;line-height:1.6;color:#bbb3c9; }
.hero-footnote span { margin:0 7px; }
.eyebrow,.hero-message .eyebrow { font:650 13px/1.6 var(--sans);letter-spacing:.09em; }
.tiny-label,.evidence-number,.control-columns article>span { font:600 13px/1.6 var(--sans);letter-spacing:.06em; }
.hero-index a { font-size:15px;line-height:1.5; }
.hero-index b { font-size:13px; }
.section-heading h2,.orchestration-head h2,.extraction-grid h2,.purchase-grid h2 { font-size:clamp(36px,3.5vw,50px);line-height:1.15; }
.section-heading>p:not(.eyebrow),.section-intro { font-size:19px;line-height:1.7;max-width:760px; }
.model-direct p,.model-custom p,.evidence-row p,.media-providers p,.seo-box p,.language-strip p,.control-columns article>p,.purchase-grid>div>p:not(.eyebrow) { font-size:17px;line-height:1.7; }
.model-names span { font-size:30px;font-weight:700;letter-spacing:-.035em; }
.model-custom h3 { font-size:28px;line-height:1.2; }
.evidence-row h3,.seo-box h3,.language-strip h3 { font-size:31px;line-height:1.2; }
.text-link { font-size:15px;line-height:1.6;font-weight:650; }
.shot-bar { font-size:12px;line-height:1.5; }
.shot-ph-label { font-size:12px;letter-spacing:.06em; }
.shot-ph strong { font:500 15px/1.7 var(--sans); }
.shot-ph code { font-size:13px; }
.shot figcaption { font-size:14px; }
.orchestration-head>p,.lab-copy p { font-size:17px;line-height:1.7; }
.lab-toolbar>span,.lab-code>span,.lab-copy .tiny-label { font-size:13px;line-height:1.6;letter-spacing:.05em; }
.lab-toolbar button { font-size:15px;padding:11px 15px; }
.lab-copy h3 { font-size:34px;line-height:1.18; }
.lab-code pre,.html-blueprint pre { font-size:14px;line-height:1.85; }
.illustration-row { grid-template-columns:32px 1fr 20px 135px; }
.illustration-row strong { font-size:15px;line-height:1.5; }
.section-marker { font-size:13px; }
.image-token { height:112px; }
.image-token span { font-size:12px;line-height:1.5; }
.section-illustration>p { font-size:14px;line-height:1.6; }
.provider-tags span,.output-tags span { font-size:13px;line-height:1.5; }
.retrieval-list h3 { font-size:22px; }
.retrieval-list b { font-size:14px; }
.retrieval-list p { font-size:17px;line-height:1.7; }
.retrieval-note p { font-size:14px;line-height:1.7; }
.seo-box ul { font-size:15px; }
.language-map strong,.language-map a { font-size:15px; }
.control-columns h3 { font-size:29px;line-height:1.2; }
.rewrite-note h3 { font-size:25px;line-height:1.25; }
.rewrite-note p { font-size:16px;line-height:1.7; }
.purchase-row h3 { font-size:23px; }
.purchase-row span { font-size:14px;line-height:1.5; }
.purchase-row>strong { font-size:38px; }
.purchase-row .btn { font-size:15px; }
.bitcoin,.refund-note,.purchase-grid>div>p.price-small { font-size:14px;line-height:1.6; }
.purchase-grid>div>a { font-size:15px; }
.manual-door h2 { font-size:34px; }
.manual-door nav a { font-size:17px; }
.atlas-footer strong { font-size:23px; }
.atlas-footer span,.atlas-footer p { font-size:13px;line-height:1.65; }
.atlas-footer a { font-size:15px; }
/* The manual uses the same scale, with quieter headings and readable navigation. */
.docs-content,.prose { font-size:18px;line-height:1.8; }
.docs-content { font-size:17px; }
.docs-content .intro { font-size:inherit;line-height:inherit; }
.docs-content>h1 { font-size:44px; }
.docs-content h2 { font-size:30px; }
.docs-content h3 { font-size:24px; }
.docs-nav a { font-size:15px;line-height:1.5; }
.docs-nav-group { font-size:13px;letter-spacing:.06em; }
.docs-toc { font-size:15px;line-height:1.6; }
.docs-toc p { font-size:calc(.7rem + 1px); }
.callout { font-size:17px; }
th { font-size:14px;letter-spacing:.02em; }
td { font-size:16px;line-height:1.65; }
.doc-card p { font-size:16px; }
.doc-card .doc-card-group { font-size:13px; }
pre { font-size:14px; }

@media(max-width:1180px) {
 .main-nav a:not(.btn) { font-size:14px;padding:9px 7px; }
 .hero-message h1 { font-size:51px; }
 .hero-actions { gap:18px; }
 .hero-actions .btn { font-size:15px; }
 .lab-toolbar { align-items:flex-start;flex-direction:column;gap:14px; }
 .purchase-grid { gap:38px; }
 .purchase-row { gap:12px; }
}
@media(max-width:960px) {
 .hero-message h1 { font-size:60px; }
 .main-nav a:not(.btn) { font-size:16px;padding:13px; }
 .main-nav .btn { font-size:16px; }
 .evidence-row { grid-template-columns:minmax(0,1fr); }
 .media-evidence>figure { order:2; }
 .lab-panel,.wordpress-grid { grid-template-columns:minmax(0,1fr); }
}
@media(max-width:640px) {
 body { font-size:17px; }
 .brand-text { font-size:21px; }
 .hero-message h1 { font-size:clamp(36px,9.8vw,49px); }
 .hero-description { font-size:17px;line-height:1.7; }
 .eyebrow,.hero-message .eyebrow,.tiny-label,.evidence-number,.control-columns article>span { font-size:12px;letter-spacing:.065em; }
 .hero-actions .btn { font-size:15px;padding:14px 17px; }
 .hero-secondary { font-size:15px; }
 .hero-footnote { font-size:12px; }
 .hero-index a { font-size:14px; }
 .hero-index b { font-size:12px; }
 .section-heading h2,.orchestration-head h2,.extraction-grid h2,.purchase-grid h2 { font-size:34px; }
 .section-heading>p:not(.eyebrow),.section-intro { font-size:18px; }
 .model-names span { font-size:27px; }
 .model-custom h3,.evidence-row h3,.seo-box h3,.language-strip h3,.control-columns h3 { font-size:27px; }
 .lab-copy h3 { font-size:30px; }
 .lab-toolbar button { font-size:14px;padding:10px 12px; }
 .lab-toolbar>span,.lab-code>span,.lab-copy .tiny-label { font-size:12px; }
 .lab-code pre,.html-blueprint pre { font-size:13px; }
 .illustration-row { grid-template-columns:24px minmax(0,1fr) 12px 92px; }
 .illustration-row strong { font-size:14px; }
 .image-token { height:100px; }
 .image-token span { font-size:12px; }
 .section-illustration .tiny-label { font-size:12px; }
 .purchase-row { grid-template-columns:1fr auto;gap:12px 16px;padding:25px 0; }
 .purchase-row>strong { font-size:34px; }
 .purchase-row>div:last-child { grid-column:1/-1;justify-self:start; }
 .purchase-row .btn { font-size:15px;padding:12px 18px; }
 .purchase-row h3 { font-size:23px; }
 .manual-door h2 { font-size:30px; }
 .docs-content,.prose { font-size:17px; }
 .docs-content { font-size:16px; }
 .docs-content>h1 { font-size:35px; }
 .docs-content .intro { font-size:inherit; }
}
/* Let long captions and enlarged text wrap inside narrow grid columns. */
.extraction-grid>div,.media-composition>div,.orchestration-head>* { min-width:0; }
.shot-bar { flex-wrap:wrap;gap:8px; }
.shot-bar span { min-width:0;overflow-wrap:anywhere; }
.retrieval-list section { min-width:0; }
@media(max-width:640px) {
 .extraction-grid,.media-composition { grid-template-columns:minmax(0,1fr); }
}
