/* Studio v3: quiet surfaces, small controls, image-first editorial layout. */
:root,html[data-theme="night"] {
 --bg:#141416; --bg-deep:#101012; --surface:#1c1c1f; --surface-raised:#29292d;
 --text-primary:#f1f0ed; --text-secondary:#b1b0b5; --text-muted:#94939b;
 --accent:#b8b1df; --accent-soft:#d2ccef; --border:#ffffff16;
 --bg-rgb:20,20,22; --surface-rgb:28,28,31; --tint-rgb:184,177,223;
 --glass-bg:rgba(28,28,31,.78); --glass-edge:#ffffff20; --glass-highlight:#ffffff12;
 --on-accent:#141416; --radius:20px; --ease:cubic-bezier(.22,1,.36,1);
}
html[data-theme="day"] {
 --bg:#f9f9f7; --bg-deep:#f1f1ef; --surface:#fff; --surface-raised:#efefee;
 --text-primary:#242426; --text-secondary:#66666d; --text-muted:#77777e;
 --accent:#726396; --accent-soft:#665583; --border:#24242616;
 --bg-rgb:249,249,247; --surface-rgb:255,255,255; --tint-rgb:114,99,150;
 --glass-bg:rgba(255,255,255,.82); --glass-edge:#ffffff; --glass-highlight:#fff; --on-accent:#fff;
}
.glass { box-shadow:inset 0 1px 0 var(--glass-highlight),0 5px 22px #00000008; backdrop-filter:blur(28px) saturate(1.1); -webkit-backdrop-filter:blur(28px) saturate(1.1); }
.site-header { top:22px; }
.site-header__inner { position:relative; width:510px; max-width:calc(100% - 32px); min-height:54px; padding:6px 10px 6px 22px; gap:22px; border-radius:19px; align-items:center; transition:width .5s var(--ease),background .35s,box-shadow .35s; box-shadow:inset 0 1px 0 var(--glass-highlight),0 8px 32px #00000014; }
.brand__mark { font-size:23px; letter-spacing:-.08em; font-weight:650; line-height:1; }
.brand-dot { color:var(--accent); }
.site-nav { gap:1px; margin:auto; }
.site-nav a { font-size:12px; border-radius:10px; padding:9px 12px; }
.site-nav a[aria-current] { box-shadow:none; background:var(--surface-raised); }
.header-actions { gap:2px; }
.icon-button { appearance:none; width:36px; height:36px; border:0; border-radius:11px; display:inline-flex; align-items:center; justify-content:center; cursor:pointer; background:transparent; color:inherit; padding:8px; transition:background .2s,transform .25s; }
.icon-button:hover { background:var(--surface-raised); transform:translateY(-1px); }
.icon-button svg { width:17px; height:17px; fill:none; stroke:currentColor; stroke-width:1.5; stroke-linecap:round; stroke-linejoin:round; }
.appearance-menu { position:relative; }
.appearance-menu summary { list-style:none; }
.appearance-menu summary::-webkit-details-marker { display:none; }
.appearance-panel { position:absolute; right:0; top:50px; width:240px; padding:20px; background:var(--surface); border:1px solid var(--border); border-radius:18px; color:var(--text-primary); box-shadow:0 20px 60px #0002; animation:panel-in .25s var(--ease); }
.appearance-panel>p { margin:0 0 20px; font-size:12px; color:var(--text-muted); }
.appearance-panel .theme-control { justify-content:space-between; align-items:center; font-size:12px; }
.appearance-panel .theme-control select { color:var(--text-primary)!important; width:100px; }
.appearance-panel .motion-toggle { display:block; width:100%; border:0; border-top:1px solid var(--border); margin-top:12px; padding-top:12px; text-align:left; color:var(--text-primary)!important; }
.page-home:not(.has-scrolled) .site-header__inner { --glass-bg:rgba(26,28,35,.55); --glass-edge:#ffffff26; }
.page-home:not(.has-scrolled) .site-nav a[aria-current],.page-home:not(.has-scrolled) .icon-button:hover { background:#ffffff18; }
.site-header__inner.search-open { width:600px; }
.search-open>.site-nav,.search-open>.header-actions { display:none; }
.toolbar-search { display:flex; align-items:center; flex:1; gap:8px; min-width:0; color:var(--text-primary); }
.search-open { background:var(--glass-bg)!important; color:var(--text-primary)!important; }
.toolbar-search input { border:0; background:none; outline:none; min-width:0; flex:1; color:inherit; padding:10px 0; font-size:13px; }
.toolbar-search input:focus-visible { box-shadow:0 1px 0 var(--accent); }
.toolbar-search kbd { font-size:9px; color:var(--text-muted); border:1px solid var(--border); border-radius:5px; padding:3px 5px; }
.toolbar-results { position:absolute; top:calc(100% + 8px); left:0; width:100%; padding:14px; border:1px solid var(--border); border-radius:20px; background:var(--surface); color:var(--text-primary); box-shadow:0 24px 70px #0003; max-height:65svh; overflow:auto; animation:panel-in .25s var(--ease); }
.toolbar-results [role="status"] { padding:8px 10px; margin:0 0 5px; font-size:11px; color:var(--text-muted); }
.toolbar-results [data-search-links] a { display:block; padding:14px 12px; border-radius:10px; text-decoration:none; font-size:13px; line-height:1.6; }
.toolbar-results a:hover,.toolbar-results a:focus-visible { background:var(--surface-raised); }
.toolbar-results small { display:block; color:var(--text-muted); font-size:10px; margin-bottom:4px; }
.search-all { display:flex; justify-content:space-between; padding:14px 12px 4px; margin-top:6px; border-top:1px solid var(--border); font-size:11px; color:var(--text-muted); text-decoration:none; }
.site-main,.section-wrap { width:min(1120px,calc(100% - 112px)); }
.site-main { padding-top:164px; }
.eyebrow { font-size:10px; letter-spacing:.12em; }
.chapter-heading h2 { font-size:clamp(32px,3.5vw,48px); font-weight:450; }
.scene-heading { min-height:240px; padding:28px 0 55px; margin-bottom:48px; border-radius:0; background:none; color:var(--text-primary); border-bottom:1px solid var(--border); overflow:visible; isolation:auto; }
.scene-heading::after { display:none; }
.scene-heading__image { inset:auto 0 45px auto; width:200px; height:140px; border-radius:14px; overflow:hidden; z-index:0; transform:rotate(4deg); box-shadow:0 12px 32px #0002; opacity:.85; }
.scene-heading__copy { position:relative; max-width:calc(100% - 250px); }
.scene-heading .eyebrow { color:var(--text-muted); }
.scene-heading h1 { font-size:clamp(36px,4.5vw,62px); line-height:1.25; font-weight:450; margin-bottom:20px; }
.scene-heading__copy>p:last-child { color:var(--text-secondary); font-size:14px; line-height:1.8; }
.post-list { gap:0; }
.post-item { padding:32px 0; }
.post-item:hover { transform:none; background:none; }
.post-item h2 { font-size:23px; font-weight:450; }
.post-item h2 a { transition:color .2s; }
.post-item h2 a:hover { color:var(--accent); }
.archive-tools input { border-radius:11px; background:var(--bg-deep); }
.photos-layout { grid-template-columns:140px minmax(0,1fr); gap:48px; }
.photos-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.photos-thumb { border-radius:12px; box-shadow:none; }
.photos-thumb img { aspect-ratio:4/3; }
.photos-thumb:hover { transform:translateY(-3px); box-shadow:0 12px 24px #00000012; }
.photos-thumb__meta { opacity:0; background:linear-gradient(transparent,#0008); backdrop-filter:none; color:#fff; padding:30px 16px 12px; transition:opacity .25s; }
.photos-thumb:hover .photos-thumb__meta,.photos-thumb:focus-visible .photos-thumb__meta { opacity:1; }
.photos-month__label { margin-bottom:24px; font-size:13px; color:var(--text-secondary); }
.photos-rail__link[aria-current] { color:var(--text-primary); }
.photo-lightbox::backdrop { background:#080809e8; }
.about-intro { top:130px; }
.about-intro h2 { font-size:38px; }
.about-content h2 { font-size:21px; }
.site-footer { background:var(--bg); padding:44px 0 70px; }
.site-footer__inner { width:min(1120px,calc(100% - 112px)); }
/* The landscape is a single opening canvas; content gets quieter below it. */
.studio-hero { margin:12px; border-radius:24px; height:calc(100svh - 24px); min-height:700px; }
.studio-hero__copy { width:78%; padding-top:clamp(170px,22vh,230px); }
.studio-hero h1 { font-size:clamp(62px,6.4vw,100px); font-weight:400; letter-spacing:-.055em; }
.studio-hero__intro { max-width:640px; justify-content:start; gap:40px; }
.studio-hero__intro p { font-size:13px; color:#e8e9ed; }
.studio-hero .studio-button { background:#f6f5f1; color:#29292c; border-color:#fff; box-shadow:0 2px 8px #0001; font-weight:500; }
.studio-hero .studio-button::after { content:'↗'; margin-left:22px; }
.studio-hero__copy>.eyebrow { letter-spacing:.16em; }
.workshop { width:min(1120px,calc(100% - 112px)); margin:120px auto 0; border-radius:0; background:none; color:var(--text-primary); padding:0; min-height:620px; overflow:visible; display:block; scroll-margin-top:120px; }
.workshop__image { inset:155px 0 0 auto; width:44%; height:420px; border-radius:22px; overflow:hidden; z-index:0; transform:none; }
.workshop__image img { object-position:75% center; }
.workshop::after,.workshop>.scene-footer { display:none; }
.workshop__content { position:relative; }
.workshop .chapter-heading { max-width:100%; margin:0 0 42px; }
.workshop .chapter-heading h2 { font-size:42px; margin-bottom:15px; }
.workshop .eyebrow { color:var(--text-muted); }
.workshop .chapter-heading>p:not(.eyebrow) { color:var(--text-secondary); }
.project-deck { width:52%; }
.project-controls { position:relative; gap:4px; padding:4px; border:1px solid var(--border); background:var(--bg-deep); border-radius:12px; margin-bottom:20px; }
.project-controls::before { content:''; position:absolute; top:4px; bottom:4px; left:var(--tab-x,4px); width:var(--tab-width,calc((100% - 8px)/3)); border:1px solid var(--border); border-radius:9px; background:var(--surface); box-shadow:0 2px 5px #0000000a; transition:left .45s var(--ease),width .45s var(--ease); }
.project-controls button { position:relative; padding:11px 8px; font-size:10px; justify-content:center; border:0; color:var(--text-muted); min-width:0; }
.project-controls button>span { display:none; }
.project-controls button[aria-selected="true"] { color:var(--text-primary); border:0; }
.workshop .project-panel { --glass-bg:var(--surface); --glass-edge:var(--border); color:var(--text-primary); border-radius:18px; padding:30px; min-height:320px; box-shadow:none; backdrop-filter:none; }
.project-panel h3 { font-size:24px; font-weight:450; }
.project-panel>p:not(.eyebrow) { color:var(--text-secondary); font-size:13px; }
.project-panel a { color:var(--text-primary); }
.beam-surface { position:relative; overflow:hidden; }
.beam-surface::after { content:''; pointer-events:none; position:absolute; inset:0; border-radius:inherit; padding:1px; background:conic-gradient(from var(--beam-angle),transparent 70%,#a6a2d050 84%,#d7d1ff 94%,transparent 100%); mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0); mask-composite:exclude; animation:beam-orbit 8s linear infinite; opacity:.5; }
@property --beam-angle { syntax:'<angle>'; initial-value:0deg; inherits:false; }
@keyframes beam-orbit { to { --beam-angle:360deg; } }
.journal-section { padding-block:110px; gap:100px; grid-template-columns:1fr 1.75fr; }
.studio-journal-entry { padding-bottom:28px; margin-bottom:28px; }
.studio-journal-entry h3 { font-size:21px; font-weight:450; }
.studio-journal-entry>p { display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; overflow:hidden; }
.studio-journal-entry__meta>span:first-child { font-size:11px; }
.field-section { background:var(--bg); border-top:1px solid var(--border); padding:80px 0; }
.field-heading h2 { font-size:42px; }
.filmstrip { padding-inline:max(calc((100vw - 1120px)/2),56px); gap:28px; scroll-padding-inline:max(calc((100vw - 1120px)/2),56px); }
.film-frame { height:auto; flex-basis:45vw; max-width:650px; border-radius:0; overflow:visible; color:var(--text-secondary); }
.film-frame img { display:block; height:410px; border-radius:14px; }
.film-frame:hover img { transform:scale(.99); }
.film-frame>div { position:static; display:flex; gap:15px; align-items:center; padding:17px 2px; background:none; backdrop-filter:none; border:0; border-radius:0; }
.film-frame>div>time { font-size:10px; color:var(--text-muted); margin-left:auto; }
.film-frame>div>span { font-size:10px; letter-spacing:.1em; }
.film-controls { padding-top:8px; }
.film-controls button { min-height:38px; padding:8px 16px; font-size:10px; }
.closing-section { min-height:320px; margin-block:40px 100px; padding:56px; background:var(--bg-deep); color:var(--text-primary); border:1px solid var(--border); border-radius:22px; }
.closing-image,.closing-section::after { display:none; }
.closing-section h2 { font-size:42px; font-weight:450; }
.closing-section p:not(.eyebrow) { color:var(--text-secondary); }
.closing-section .eyebrow { color:var(--text-muted); display:flex; align-items:center; gap:10px; }
.closing-section .glass { background:var(--surface); color:var(--text-primary); border-color:var(--border); }
.studio-orb { width:16px; height:16px; border-radius:50%; border:1px solid var(--accent); box-shadow:inset 3px -3px 6px var(--accent),0 0 8px #b8b1df20; animation:orb-breathe 5s ease-in-out infinite; }
@keyframes orb-breathe { 50% { opacity:.5; transform:scale(.8); } }
.chapter-nav { bottom:20px; padding:4px; border-radius:15px; }
.chapter-nav a { font-size:10px; border-radius:11px; padding:8px 15px; }
@keyframes panel-in { from { opacity:0; transform:translateY(-5px) scale(.98); } to { opacity:1; transform:none; } }
@media(max-width:900px) {
 .site-main,.section-wrap,.workshop,.site-footer__inner { width:calc(100% - 64px); }
 .project-deck { width:54%; } .workshop__image { width:40%; }
 .project-panel h3 { font-size:21px; } .journal-section { gap:40px; }
 .photos-layout { grid-template-columns:100px minmax(0,1fr); gap:25px; }
 .scene-heading__image { width:150px; height:120px; } .scene-heading__copy { max-width:calc(100% - 190px); }
}
@media(max-width:700px) {
 .site-header { top:16px; } .site-header__inner { width:370px; min-height:52px; padding:6px 8px 6px 16px; gap:12px; flex-wrap:nowrap; border-radius:17px; }
 .brand__mark { font-size:22px; } .site-nav { order:0; width:auto; margin:auto; gap:0; } .site-nav a { padding:8px 9px; min-width:0; font-size:11px; }
 .header-actions { margin:0; gap:0; } .icon-button { width:30px; height:34px; padding:7px; }
 .toolbar-search { gap:4px; } .toolbar-search kbd { display:none; } .toolbar-search input { font-size:12px; }
 .site-main { padding-top:115px; } .site-main,.section-wrap,.workshop,.site-footer__inner { width:calc(100% - 40px); }
 .scene-heading { padding:20px 0 35px; min-height:200px; margin-bottom:32px; }
 .scene-heading__image { display:none; } .scene-heading__copy { max-width:100%; } .scene-heading h1 { font-size:38px; }
 .scene-heading__copy>p:last-child { font-size:13px; }
 .studio-hero { margin:8px; border-radius:20px; min-height:740px; height:calc(100svh - 16px); }
 .studio-hero__copy { width:auto; margin:0 26px; padding-top:150px; } .studio-hero h1 { font-size:clamp(48px,12vw,72px); }
 .studio-hero__intro { gap:14px; } .studio-hero .studio-button { padding:10px 18px; min-height:40px; }
 .studio-cabin { bottom:12%; } .scene-footer { left:24px; right:24px; }
 .workshop { margin-top:65px; min-height:0; padding-bottom:0; scroll-margin-top:100px; }
 .workshop__image { position:relative; inset:auto; width:100%; height:240px; margin:0 0 32px; border-radius:16px; }
 .workshop__content { display:flex; flex-direction:column; } .workshop .chapter-heading { margin:0 0 25px; }
 .workshop .chapter-heading h2,.field-heading h2 { font-size:32px; } .workshop .chapter-heading>p:not(.eyebrow) { font-size:12px; }
 .project-deck { width:100%; } .project-controls button { min-height:45px; font-size:10px; line-height:1.5; flex-direction:row; }
 .workshop .project-panel { min-height:290px; padding:25px; } .project-panel h3 { font-size:23px; }
 .journal-section { padding-block:75px 45px; gap:30px; grid-template-columns:1fr; }
 .studio-journal-entry h3 { font-size:21px; } .journal-section>.chapter-heading h2 { font-size:32px; }
 .field-section { padding:55px 0; } .field-heading { margin-bottom:28px; gap:15px; }
 .filmstrip { padding-inline:20px; scroll-padding-inline:20px; gap:16px; } .film-frame { flex-basis:85vw; height:auto; } .film-frame img { height:330px; }
 .film-frame>div { padding:14px 2px; }
 .closing-section { padding:32px 25px; min-height:320px; margin:20px auto 65px; } .closing-section h2 { font-size:32px; }
 .photos-layout { display:block; } .photos-grid { gap:12px; } .photos-rail { margin-bottom:28px; }
 .about-intro h2 { font-size:32px; } .about-content { font-size:14px; }
 .chapter-nav { bottom:12px; } .page-home .site-footer { padding-bottom:85px; }
}
@media(max-width:360px) { .site-header__inner { gap:7px; padding-left:12px; } .site-nav a { padding-inline:7px; } }
html.motion-paused *,html.motion-paused *::before,html.motion-paused *::after { animation:none!important; transition:none!important; }
@media(prefers-reduced-motion:reduce) { *,*::before,*::after { animation:none!important; transition:none!important; } }
@media(prefers-reduced-transparency:reduce),(prefers-contrast:more) { .site-header__inner,.page-home:not(.has-scrolled) .site-header__inner { background:var(--surface)!important; color:var(--text-primary)!important; backdrop-filter:none; } .page-home:not(.has-scrolled) .site-nav a { color:var(--text-primary); } }
.page-home:not(.has-scrolled) .site-header__inner:not(.search-open) .brand { color:#fff; }
.page-home:not(.has-scrolled) .site-header__inner.search-open { background:rgba(var(--surface-rgb),.96)!important; }

/* Reading section: isolate from legacy journal flex rows. */
.journal-section { grid-template-columns:240px minmax(0,1fr); gap:80px; }
.journal-section>.chapter-heading h2 { font-size:36px; line-height:1.35; }
.journal-list { min-width:0; }
.studio-journal-entry { display:block; min-width:0; padding:0 0 30px; margin:0 0 30px; border-top:0; }
.studio-journal-entry__meta { gap:16px; flex-wrap:wrap; }
.studio-journal-entry__meta time,.studio-journal-entry__time { white-space:nowrap; }
.studio-journal-entry h3 { margin:16px 0 12px; font-size:24px; line-height:1.6; }
.studio-journal-entry:hover h3 { translate:none; }
.studio-journal-entry>p { max-width:100%; font-size:14px; line-height:1.9; }
.studio-journal-entry__time { display:block; font-size:11px; }
@media(max-width:900px) { .journal-section { grid-template-columns:190px minmax(0,1fr); gap:40px; } .studio-journal-entry h3 { font-size:22px; } }
@media(max-width:700px) { .journal-section { grid-template-columns:minmax(0,1fr); gap:30px; } .journal-section>.chapter-heading h2 { font-size:32px; } .studio-journal-entry h3 { font-size:21px; } .page-home .site-footer { padding-bottom:40px; } }
