/* Space: the approved Atelier-inspired refinement, with courses at its heart.
   User-pinned direction supersedes seed fa21e569. Other themes are untouched. */
@font-face{font-family:'Bricolage Grotesque';src:url('/fonts/bricolage-grotesque.ttf') format('truetype');font-weight:200 800;font-display:swap}
:root[data-theme=observatory]{
 --bg:#07090c;--surface:#0c1015;--ink:#eef2f5;--muted:#a7b0ba;
 --line:#303943;--field:#76828e;--violet:#e9cf94;
 --action:#191d23;--action-ink:#eef2f5;--hover:#252c34;--selection:#3b3527;
 --display:'Bricolage Grotesque',Figtree,system-ui,sans-serif;
 --reading:Figtree,system-ui,sans-serif;--card-radius:12px;
}
[data-theme=observatory] body:not([data-page=watch])::before{background-image:linear-gradient(90deg,color-mix(in srgb,var(--bg) 70%,transparent),color-mix(in srgb,var(--bg) 36%,transparent)),var(--scene)}
[data-theme=observatory] .site-header{background:var(--bg);border-bottom:1px solid var(--line)}
[data-theme=observatory] h1{font-weight:700;letter-spacing:-.035em;line-height:1.05}
[data-theme=observatory] h2,[data-theme=observatory] h3{font-weight:600;letter-spacing:-.02em}
[data-theme=observatory] .home-stage{grid-template-columns:minmax(0,1fr)}
[data-theme=observatory] .home-intro{padding:48px 0 28px;min-height:0;align-self:center;container-type:inline-size}
[data-theme=observatory] .home-intro h1{font-size:clamp(32px,4.8vw,66px);font-weight:700;letter-spacing:-.035em;white-space:nowrap;text-wrap:nowrap;line-height:1.08;margin-bottom:24px}
[data-theme=observatory] .home-intro .lead{font-family:Figtree,system-ui,sans-serif;font-size:clamp(20px,2vw,26px);line-height:1.45;max-width:31ch;color:var(--muted)}
[data-theme=observatory] .brand-word{display:none}
[data-theme=observatory] .site-header .brand-space{display:block;width:64px;height:48px}
[data-theme=observatory] .home-stage .section-heading h2{font-size:34px;font-weight:650}
[data-theme=observatory] .home-stage{--course-gap:24px}
[data-theme=observatory] .home-stage .course-grid{gap:var(--course-gap)}
[data-theme=observatory] .home-stage .course-card{padding:12px 12px 20px;border-color:var(--line)}
[data-theme=observatory] .home-stage .course-card img{border-radius:4px}
[data-theme=observatory] .home-stage .course-card h3{font-size:clamp(22px,1.85vw,28px);line-height:1.15;font-weight:650;margin-top:18px}
[data-theme=observatory] :is(.course-card,.session-row,.trail-list>a,.result):hover{border-color:var(--field)}
[data-theme=observatory] :is(.course-card,.session-row,.trail-list>a,.result):focus-visible{outline:3px solid var(--violet);outline-offset:4px}
[data-theme=observatory] .home-stage .section-heading p{font-size:14px}
[data-theme=observatory] .home-stage .more-courses{padding-top:24px}
[data-theme=observatory] .home-stage .trails{padding-top:48px}
[data-theme=observatory] .trails>h2{font-size:34px}
[data-theme=observatory] .trail-list>a{position:relative;padding:28px;gap:12px}
[data-theme=observatory] .trail-list h3{font-family:var(--display);font-size:26px;line-height:1.18;color:var(--ink);margin:0}
[data-theme=observatory] .trail-list>a>span{color:var(--violet);font-size:14px;border-top:1px solid var(--line);padding-top:18px}
[data-theme=observatory] .course-intro h1{font-size:clamp(36px,4.2vw,58px)}
[data-theme=observatory] .session-row h3{font-weight:600}
[data-theme=observatory] body[data-page=watch]{--bg:#000;--surface:#000;--muted:#bdbdbd;--line:#333;--field:#777}
[data-theme=observatory] .transcript-opening::first-letter{font-family:var(--display);font-weight:600;font-size:3.4em}
[data-theme=observatory] .transcript .passage h3{font-weight:600}
[data-theme=observatory] .primary{border:1px solid var(--field)}
[data-theme=observatory] .dot-observatory{background:var(--violet)}
@media(max-width:1000px){
 [data-theme=observatory] .home-stage{grid-template-columns:minmax(0,1fr)}
 [data-theme=observatory] .home-intro{padding:32px 0 24px;min-height:0}
 [data-theme=observatory] .home-intro h1{font-size:clamp(27px,8.1cqw,48px)}
 [data-theme=observatory] .home-intro .lead{font-size:21px}
}
@media(max-width:680px){
 [data-theme=observatory] .home-stage{display:flex;gap:0}
 [data-theme=observatory] .home-intro{width:100%;padding:32px 0 20px}
 [data-theme=observatory] .home-intro h1{font-size:clamp(25px,8.2cqw,48px);margin-bottom:18px}
 [data-theme=observatory] .home-intro .lead{font-size:20px;max-width:30ch}
 [data-theme=observatory] .home-stage .section-heading h2,[data-theme=observatory] .trails>h2{font-size:30px}
 [data-theme=observatory] .home-stage .course-card{padding:16px}
 [data-theme=observatory] .home-stage .course-card h3{font-size:23px;margin:0 0 8px}
 [data-theme=observatory] .home-stage .course-grid{gap:16px}
 [data-theme=observatory] .trail-list>a{padding:22px}
 [data-theme=observatory] .trail-stops blockquote p{font-size:20px}
}
