/* Papa's single desktop frame; 4 Nov 2026. Typography and page content stay independent. */
:root{--atlas-page-width:70vw}
@media(max-width:1100px){:root{--atlas-page-width:calc(100% - 48px)}}
/* lauren 4 Nov 2026 (Papa's call, frame-floor proposal): from 1101px the frame never goes below the 1052px a 1100px window gets,
   so a 1280 or 1366 laptop is no longer given a narrower page than a 1100px window. 70vw wins again from 1503px. */
@media(min-width:1101px){:root{--atlas-page-width:max(70vw,1052px)}}
/* lauren 4 Nov 2026 (Codex R2 card rule, Papa's call): build-record cards keep at least 400px per card from 1001px, so /builds/ and the three
   platform builds pages stay two per row (463px of text) until 1766px, then go to three. */
@media(min-width:1001px){:root:not(#_):not(#ts) body main .build-grid{grid-template-columns:repeat(auto-fit,minmax(400px,1fr))!important}}
@media(max-width:600px){:root{--atlas-page-width:calc(100% - 32px)}}
body[data-atlas-layout="20261104"] .wrap,
body[data-atlas-layout="20261104"] main.article-page .rail,
body[data-atlas-layout="20261104"] main.article-page>.breadcrumb,
body[data-atlas-layout="20261104"] main.article-page>.closing,
body[data-atlas-layout="20261104"] main.article-page>.world-explorer,
body[data-atlas-layout="20261104"] main.wa-redesign>section,
body[data-atlas-layout="20261104"] main.cmpx>section,
body[data-atlas-layout="20261104"] main.spacecraft-offer,
body[data-atlas-layout="20261104"] #acme-order>.rail{
 width:var(--atlas-page-width)!important;max-width:none!important;margin-inline:auto!important;box-sizing:border-box
}
/* A nested rail fills its parent instead of taking another viewport-sized inset. */
body[data-atlas-layout="20261104"] main.article-page .rail .rail,
body[data-atlas-layout="20261104"] main.article-page .rail .wrap,
body[data-atlas-layout="20261104"] main.article-page .wrap .rail,
body[data-atlas-layout="20261104"] main.article-page .wrap .wrap,
body[data-atlas-layout="20261104"] main.article-page>.closing>.rail{
 width:100%!important;max-width:none!important;margin-inline:0!important
}
/* The pricing hero's actual content is inside its rail, not a sibling grid cell. */
body[data-atlas-layout="20261104"] .launch-hero{display:block}
body[data-atlas-layout="20261104"] .launch-hero>.rail{min-width:0}
body[data-atlas-layout="20261104"] main.spacecraft-offer>section{max-width:100%}

/* The builder uses its own shell; its studio keeps the complete frame. */
body[data-atlas-layout="20261104"] .atlas-global-header,
body[data-atlas-layout="20261104"] .atlas-studio-nav,
body[data-atlas-layout="20261104"]:has(.atlas-global-header)>main,
body[data-atlas-layout="20261104"] .site-footer{width:var(--atlas-page-width)!important;max-width:none!important;margin-inline:auto!important}

/* The release chronicle owns a separate shell, using the same outer frame. */
body[data-atlas-shell="chronicle"] header.top,
body[data-atlas-shell="chronicle"]>main,
body[data-atlas-shell="chronicle"] .footer .wrap{width:var(--atlas-page-width)!important;max-width:none!important;margin-inline:auto!important}
body[data-atlas-shell="chronicle"] header.top{padding-inline:0;flex-wrap:wrap}
body[data-atlas-shell="chronicle"] .footer{width:100%;max-width:none}
body[data-atlas-shell="chronicle"] .hero-copy{min-width:0;margin-left:0;max-width:100%}
body[data-atlas-shell="chronicle"] .section{padding-inline:0;width:100%;box-sizing:border-box}
body[data-atlas-shell="chronicle"] .footer-grid>*{min-width:0}
body[data-atlas-shell="chronicle"] .footer a{overflow-wrap:anywhere}
@media(max-width:700px){
 body[data-atlas-shell="chronicle"] .hero h1{overflow-wrap:anywhere}
 body[data-atlas-shell="chronicle"] .hero-actions{flex-wrap:wrap}
 body[data-atlas-shell="chronicle"] .footer-grid{grid-template-columns:1fr}
 body[data-atlas-shell="chronicle"] .synoct-built-by{max-width:100%}
}

body[data-atlas-shell="chronicle"]{--tf-width:var(--atlas-page-width);--tf-gutter:0px}
body[data-atlas-shell="chronicle"] .footer img{max-width:100%;height:auto}

body[data-atlas-layout="20261104"] main.article-page .launch-note{display:block!important}
body[data-atlas-shell="chronicle"] #titan-standard-footer,
body[data-atlas-shell="chronicle"] #titan-standard-footer footer.footer{--tf-width:var(--atlas-page-width);--tf-gutter:0px}
body[data-atlas-shell="chronicle"] #titan-standard-footer .family-strip,
body[data-atlas-shell="chronicle"] #titan-standard-footer .family-strip__titans{min-width:0;max-width:100%;flex-wrap:wrap}
body[data-atlas-shell="chronicle"] #titan-standard-footer .family-strip__tag,
body[data-atlas-shell="chronicle"] #titan-standard-footer .family-strip__ping{max-width:100%;white-space:normal!important;overflow-wrap:anywhere}
@media(max-width:700px){
 body[data-atlas-shell="chronicle"] .hero-side{width:220px;height:220px;right:0;overflow:hidden}
 body[data-atlas-shell="chronicle"] .hero-side .core{width:100%;height:100%}
}

body[data-atlas-layout="20261104"] main.article-page .launch-note{width:100%;max-width:none}

/* Odie, 4 Nov 2026: preserve the original viewport-based reading columns
   within the already-live 1052px laptop frame. Artwork, copy and type stay intact.
   Original transitions: resource 814/0.7; feature 816/0.7. The live 400px Build-card minimum is retained. */
@media(min-width:1101px) and (max-width:1162.857142px){
 :root:not(#_):not(#ts) body[data-atlas-layout="20261104"] main.article-page .light-section > .rail > #resource-list.resource-grid{grid-template-columns:minmax(0,1fr)!important}
}
@media(min-width:1101px) and (max-width:1165.714285px){
 :root:not(#_):not(#ts) body[data-atlas-layout="20261104"] main.article-page .light-section > .rail > .feature-columns{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
