/* Shared screen density. Keep section colours, functionality and print layouts. */
@media screen{
 :root{--atlas-content-width:1680px;--atlas-content-gutter:clamp(14px,2.2vw,36px)}
 body:has(>header[data-atlas-header]){font-size:14px}
 body:has(>header[data-atlas-header]) :is(.hub-main,.jargon-main,.member-main,.school-main,.stats-panel,.enterprise-main){box-sizing:border-box;width:100%;max-width:var(--atlas-content-width);margin-inline:auto;padding-left:var(--atlas-content-gutter);padding-right:var(--atlas-content-gutter);padding-top:20px}
 body:has(>header[data-atlas-header]) :is(.layout,.agent-page-layout){max-width:1840px;margin-inline:auto}
 body:has(>header[data-atlas-header]) .agent-page-layout>.hub-main{max-width:none;padding:18px 20px 0}
 body:has(>header[data-atlas-header]) .layout>main{padding:18px 20px 0;min-width:0}
 body:has(>header[data-atlas-header]) main>h1,
 body:has(>header[data-atlas-header]) main :is(.hero,.hub-hero,.interview-hero-copy,.jargon-intro,.school-hero) h1,
 body:has(>header[data-atlas-header]) .member-main h1,
 body:has(>header[data-atlas-header]) .stats-panel h1{font-size:clamp(26px,2.7vw,34px);line-height:1.2;letter-spacing:-.8px;margin:8px 0 14px}
 body:has(>header[data-atlas-header]) :is(.hub-main,.hub-main:has(#agents-grid)) .hub-hero h1{font-size:clamp(24px,2.4vw,30px);line-height:1.25}
 body:has(>header[data-atlas-header]) :is(.hub-heading,.section-heading,.reading-heading,.school-section-head,.interview-section-heading,.foundations,.lab-section,.blog-card)>h2,
 body:has(>header[data-atlas-header]) :is(.section-heading,.interview-section-heading)>div>h2{font-size:clamp(20px,2vw,25px);line-height:1.3;letter-spacing:-.4px;margin:6px 0 12px}
 body:has(>header[data-atlas-header]) :is(.hero,.hub-hero,.interview-hero,.jargon-intro,.school-hero){margin-bottom:18px;gap:20px}
 body:has(>header[data-atlas-header]) :is(.hub-main,.hub-main:has(#agents-grid)) .hub-hero{padding:18px 20px;gap:20px}
 body:has(>header[data-atlas-header]) .hero-copy{padding:18px 22px}
 body:has(>header[data-atlas-header]) :is(.hub-hero,.interview-hero-copy,.jargon-intro,.school-hero) p:not(.eyebrow):not(.school-eyebrow){font-size:14px;line-height:1.65;margin:8px 0;max-width:85ch}
 body:has(>header[data-atlas-header]) :is(.hub-heading,.section-title){margin-top:22px;margin-bottom:14px}
 body:has(>header[data-atlas-header]) :is(.hub-card,.lab-card,.member-panel,.blog-panel,.school-panel){padding:18px;border-radius:12px}
 body:has(>header[data-atlas-header]) :is(.lab-card,.member-panel,.blog-panel) h3{font-size:17px;line-height:1.4;margin:10px 0}
 body:has(>header[data-atlas-header]) :is(.lab-card,.member-panel) p{font-size:13px;line-height:1.65}
 body:has(>header[data-atlas-header]) :is(.lab-section,.foundations){margin-block:24px}
 body:has(>header[data-atlas-header]) :is(.hub-links,.lab-grid,.member-grid){gap:14px}
 body:has(>header[data-atlas-header]) .about-main .lab-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
 body:has(>header[data-atlas-header]) .learning-path{margin:18px 0 24px}
 body:has(>header[data-atlas-header]) :is(.filter-row,.hub-controls){margin:16px 0;gap:10px}
 body:has(>header[data-atlas-header]) .shop-price strong{font-size:20px}
 body:has(>header[data-atlas-header]) .stats-panel{margin-block:22px 0}
 body:has(>header[data-atlas-header]) .stats-grid strong{font-size:clamp(22px,2.4vw,29px)}
 body:has(>header[data-atlas-header]) .stats-grid{margin:18px 0;gap:12px}
 /* Dictionary retains the book spread, with a shorter introduction. */
 body:has(>header[data-atlas-header]) .jargon-intro{gap:20px;margin-bottom:16px}
 body:has(>header[data-atlas-header]) .jargon-edition strong{font-size:20px}
 body:has(>header[data-atlas-header]) .jargon-tools{margin:12px 0}
 body:has(>header[data-atlas-header]) .index-book{padding:24px 32px 28px}
 body:has(>header[data-atlas-header]) .index-group a{font-size:14px;line-height:1.5;padding-block:4px}
 body:has(>header[data-atlas-header]) .jargon-entry summary{padding:12px 14px}
 body:has(>header[data-atlas-header]) .jargon-entry summary strong{font-size:17px}
 body:has(>header[data-atlas-header]) .entry-body{font-size:14px;line-height:1.7}
 /* Interview forms use the available width without enlarging controls. */
 body:has(>header[data-atlas-header]) .interview-hero{padding:20px}
 body:has(>header[data-atlas-header]) :is(.interview-form,.interview-side-card,.interview-session,.interview-results,.interview-library,.interview-history){padding:20px}
 body:has(>header[data-atlas-header]) :is(.interview-section-heading h2,.interview-card-heading h3,.interview-side-card h3,.interview-library-heading h3,.interview-history-head h3){font-size:21px;line-height:1.4;margin:6px 0 12px}
 body:has(>header[data-atlas-header]) .interview-prep-layout{gap:16px}
 body:has(>header[data-atlas-header]) .interview-form-grid{gap:12px}
 body:has(>header[data-atlas-header]) .interview-card-heading{gap:12px;margin-bottom:18px}
 body:has(>header[data-atlas-header]) .interview-guide-stack{gap:14px}
 body:has(>header[data-atlas-header]) .interview-question h4{font-size:20px;line-height:1.55;margin:10px 0 18px}
 body:has(>header[data-atlas-header]) .interview-tabs{gap:6px;margin-block:16px}
 body:has(>header[data-atlas-header]) .interview-tabs button{font-size:12px;padding:10px 12px}
 /* School questions remain comfortable to read; decoration takes less space. */
 body:has(>header[data-atlas-header]) .school-hero{padding:16px 0 22px;gap:24px}
 body:has(>header[data-atlas-header]) .school-hero aside{min-height:170px;border-radius:16px}
 body:has(>header[data-atlas-header]) .school-orbit{width:70px;height:70px;font-size:29px;border-radius:18px;box-shadow:8px 8px 0 #bddfd9}
 body:has(>header[data-atlas-header]) .school-pathways{gap:14px}
 body:has(>header[data-atlas-header]) .school-pathways button{padding:17px;border-radius:12px}
 body:has(>header[data-atlas-header]) .school-pathways strong{font-size:20px;margin:8px 0}
 body:has(>header[data-atlas-header]) .school-pathways small{font-size:14px}
 body:has(>header[data-atlas-header]) .school-panel{margin:18px 0}
 body:has(>header[data-atlas-header]) .school-controls{margin:14px 0;gap:12px}
 body:has(>header[data-atlas-header]) .school-question{padding:16px;margin:14px 0;font-size:16px}
 body:has(>header[data-atlas-header]) .school-question h3{font-size:17px}
 /* Compact the common fixed menu; its observer updates search offsets. */
 body>header[data-atlas-header]{min-height:68px;padding:10px clamp(14px,2vw,30px);gap:12px}
 body>header[data-atlas-header]>.brand{font-size:22px;gap:9px}
 body>header[data-atlas-header] .brandmark{width:34px;height:34px}
 .atlas-nav .atlas-nav-links>a,.atlas-nav .atlas-nav-group>summary{font-size:12px;padding:9px 8px;gap:5px}
 .atlas-nav .atlas-nav-links>a.atlas-nav-toolkit{padding:10px 14px;font-size:12px;margin-left:6px}
 .atlas-nav .atlas-nav-dropdown>a{font-size:13px;padding:10px}
 @media(min-width:1500px){body:has(>header[data-atlas-header]) .learning-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
 @media(max-width:1050px){body:has(>header[data-atlas-header]) .about-main .lab-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
 @media(max-width:760px){
  body:has(>header[data-atlas-header]) :is(.hub-main,.jargon-main,.member-main,.school-main,.stats-panel,.enterprise-main){padding:16px 14px 36px}
  body:has(>header[data-atlas-header]) :is(.layout>main,.agent-page-layout>.hub-main){padding:16px 14px 0}
  body:has(>header[data-atlas-header]) main :is(.hero,.hub-hero,.interview-hero-copy,.jargon-intro,.school-hero) h1{font-size:28px}
  body:has(>header[data-atlas-header]) :is(.hub-main,.hub-main:has(#agents-grid)) .hub-hero{padding:16px}
  body:has(>header[data-atlas-header]) :is(.lab-card,.member-panel,.blog-panel,.school-panel,.interview-form,.interview-side-card,.interview-session,.interview-results,.interview-library,.interview-history){padding:16px}
  body:has(>header[data-atlas-header]) .about-main .lab-grid{grid-template-columns:1fr}
  body:has(>header[data-atlas-header]) .index-book{padding:20px}
  body:has(>header[data-atlas-header]) .index-group a{font-size:16px;min-height:36px}
  body:has(>header[data-atlas-header]) .school-hero aside{min-height:140px}
  body:has(>header[data-atlas-header]) :is(input,textarea,select){font-size:16px}
  body>header[data-atlas-header]{min-height:64px;padding:8px 14px;gap:10px}
 }
 @media(max-width:1120px){.atlas-nav .atlas-nav-links>a,.atlas-nav .atlas-nav-group>summary{min-height:44px;font-size:14px;padding:10px 12px}}
}
