/* Review round 4. Loaded on Works, Experiences and project pages only.
   About deliberately keeps the original HTML and stylesheet. */
.site-header{height:74px;min-height:0;padding:0;flex-wrap:nowrap}
.site-nav{font-size:16px;gap:32px;flex-basis:auto}
.site-nav a{min-height:44px;display:inline-flex;align-items:center;padding:10px 0}
.section-heading h2{font-size:20px;font-weight:500;letter-spacing:-.025em}
.eyebrow{font-size:12px}
.detail-facts{font-family:var(--sans);font-size:13px;max-width:270px;line-height:1.6}
.role-phrases{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:3px 14px;max-width:100%}
.role-phrase{white-space:nowrap}.role-dot{display:none}
.detail-heading{align-items:end}
.toc{font-size:14px}.toc summary{font-size:14px}.toc nav{gap:13px}
.documentation-download{display:flex;align-items:center;flex-wrap:wrap;gap:8px 14px;min-height:44px;font-size:14px;line-height:1.5;text-decoration:underline;text-underline-offset:5px}
.documentation-download span{font-size:11px;letter-spacing:.05em;text-decoration:none;color:var(--muted)}
.audio-art{height:clamp(220px,25vw,350px);--played-edge:4%}
.waveform-played{position:absolute;inset:0;clip-path:inset(0 calc(100% - var(--played-edge)) 0 0);background:rgba(255,255,255,.13);pointer-events:none}
.waveform-played img{filter:brightness(1.35)}
.waveform-cursor{position:absolute;top:6%;bottom:6%;left:var(--played-edge);width:2px;background:#fbf7eb;box-shadow:0 0 0 1px rgba(22,32,25,.16);pointer-events:none;transform:translateX(-1px)}
.waveform-seek{appearance:none;-webkit-appearance:none;position:absolute;left:4%;top:0;width:92%;height:100%;margin:0;opacity:0;cursor:crosshair;z-index:2}
.audio-art:focus-within{outline:3px solid #92462f;outline-offset:5px}
.audio-art .cover-wave.raw-wave{top:5%;height:90%}
.player-shell{grid-template-columns:100px minmax(0,1fr);gap:22px;padding:15px 20px;margin-top:14px}
.playback-time{font-family:var(--mono);font-size:12px;white-space:nowrap;color:#566050}
.main-video{margin-top:0}
.main-video>h2{font-size:17px;font-weight:500;line-height:1.5;margin:0 0 14px}
.video-pending{min-width:0;max-width:100%;position:relative;aspect-ratio:16/9;min-height:200px;background:#101b14;overflow:hidden;display:flex;align-items:center;justify-content:center}
.video-pending img{height:100%;width:100%;position:absolute;inset:0;object-fit:contain;padding:clamp(15px,3vw,40px);opacity:.63}
.video-pending p{position:relative;z-index:1;padding:11px 18px;background:#f5f3ec;color:#34432f;font-size:15px;margin:0;line-height:1.5}
.related-works{padding:0 0 66px}
.related-works .section-heading{padding-top:22px;margin-bottom:25px}
.related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}
.related-work{min-width:0}.related-work h3{font-family:var(--serif);font-size:clamp(22px,2.35vw,32px);font-weight:400;line-height:1.2;letter-spacing:-.025em;margin:15px 0 0}
.related-work .work-cover{aspect-ratio:1.6}
.related-work .cover-bird{padding:16px}
.experience-section>.section-heading{padding-top:24px;margin-bottom:30px}
.experience-section>.section-heading h2{font-family:var(--serif);font-size:clamp(29px,3.3vw,42px);font-weight:400;line-height:1.15;letter-spacing:-.035em}
.experience-nav{font-size:15px;gap:12px 30px;padding-bottom:34px}
.experience-nav a{display:inline-flex;align-items:center;min-height:44px}
.experience-entries{display:grid;grid-template-columns:1fr 1fr;gap:25px 48px;margin:0 0 35px;max-width:1100px}
.experience-entry h3{font-family:var(--sans);font-weight:600;font-size:19px;line-height:1.35;color:#27362a;margin:0 0 8px;letter-spacing:-.015em}
.experience-entry p{font-size:16px;line-height:1.7;color:#4f594e;margin:0}
.piano-recordings{padding-top:36px}.piano-recordings>h3{font-family:var(--sans);font-size:20px;font-weight:600;line-height:1.4;letter-spacing:-.02em;margin-bottom:20px}
.piano-item h4{font-size:16px;line-height:1.45;font-weight:500}.piano-item p{font-size:12px}
.experience-figure figcaption{color:#4f594e}
@media(max-width:1000px){.detail-facts{max-width:100%;gap:6px;flex-direction:column;align-items:flex-start}.role-phrases{justify-content:flex-start}.documentation-layout{grid-template-columns:185px minmax(0,1fr);gap:42px}.site-nav{gap:26px}}
@media(max-width:760px){.site-header{height:68px}.site-nav{font-size:15px;gap:22px}.documentation-layout{grid-template-columns:1fr;gap:28px}.toc nav{grid-template-columns:1fr 1fr}.experience-entries{gap:25px 28px}.experience-entry p{font-size:15px}.experience-nav{font-size:14px;gap:4px 24px}.related-grid{gap:20px}.related-work h3{font-size:25px}.player-shell{padding:13px 16px;gap:16px}}
@media(max-width:560px){.site-header{height:66px;min-height:0;gap:12px}.site-nav{font-size:14px;gap:14px}.brand{font-size:17px}.site-nav a{padding:10px 0;min-height:44px}.section-heading h2{font-size:19px}.detail-facts{font-size:13px}.role-phrases{gap:4px 14px}.detail-heading{padding-bottom:28px}.audio-art{height:220px}.player-shell{grid-template-columns:1fr;gap:10px;margin-top:10px}.playback-time{font-size:12px}.documentation-layout{padding-top:32px}.toc nav{grid-template-columns:1fr}.documentation-tools{margin-top:15px;padding-top:11px}.main-video>h2{font-size:17px;margin-bottom:12px}.experience-section>.section-heading h2{font-size:31px}.experience-section>.section-heading{margin-bottom:25px}.experience-entries{grid-template-columns:1fr;gap:24px;margin-bottom:30px}.experience-entry h3{font-size:18px;margin-bottom:7px}.experience-entry p{font-size:15px;line-height:1.75}.experience-nav{font-size:14px;gap:0 18px;padding-bottom:25px}.related-grid{grid-template-columns:1fr;gap:30px}.related-work h3{font-size:29px;margin-top:13px}.related-works{padding-bottom:48px}.related-works .section-heading{margin-bottom:25px}.piano-recordings>h3{font-size:20px}}
@media(max-width:360px){.site-nav{font-size:13px;gap:12px}.brand{font-size:16px}.experience-nav{font-size:14px}.role-phrases{gap:4px 12px}.related-work h3{font-size:27px}.detail-heading h1{font-size:42px}}
@media print{.related-works,.documentation-tools,.main-video{display:none!important}}

/* Maintain usable touch targets for the retained model and expanded mobile contents. */
.model-toolbar button{min-height:44px}
@media(max-width:760px){.toc nav a{display:flex;align-items:center;min-height:44px}}

/* Independent Astra review: targeted post-review refinements; About stays locked. */
.work-keyword{display:inline-block;white-space:nowrap}
.keyword-separator{padding:0 .14em;font-weight:400}
.player-shell{grid-template-columns:minmax(0,1fr)}
.toc summary{min-height:44px;padding:10px 0}
.back-link{display:inline-flex;align-items:center;min-height:44px;margin-top:16px}
@media(max-width:760px){.project-prose p.project-intro.long-intro{font-size:21px;line-height:1.55}}

/* Round5: match the locked About navigation layout without editing About. */
.site-header{min-height:0}.site-nav a{min-height:0;display:revert;align-items:normal}
.site-header{height:108px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--rule);gap:28px}
.brand{display:flex;align-items:center;gap:12px;font-size:19px;font-weight:600;letter-spacing:-.6px;white-space:nowrap}
.site-nav{display:flex;gap:clamp(22px,3vw,44px);align-items:center;font-size:14px}
.site-nav a{padding:12px 0;position:relative}
.site-nav a[aria-current]{text-decoration:underline;text-underline-offset:10px;text-decoration-thickness:1px}
@media(max-width:760px){.site-header{height:92px}
.brand{font-size:17px}
.site-nav{font-size:12px;gap:23px}
}
@media(max-width:560px){.site-header{height:88px;gap:13px}
.brand{font-size:15px;gap:7px}
.site-nav{gap:16px;font-size:11px}
}
@media(max-width:360px){.brand{font-size:14px;gap:3px}
.site-nav{gap:12px;font-size:10px}
}
@media print{.site-header{display:none!important}
}
@media(max-width:600px){.site-header{height:auto;min-height:88px;flex-wrap:wrap;padding-top:18px;padding-bottom:16px;gap:8px 20px}
.brand{font-size:17px;max-width:100%}
.site-nav{flex-basis:100%;gap:24px}
}
@media(max-width:560px){.site-header{height:auto;min-height:82px;flex-wrap:nowrap;padding:0;gap:16px}
.brand{font-size:17px}
.site-nav{flex-basis:auto;gap:16px;font-size:12px}
}
@media(max-width:360px){.brand{font-size:16px}
.site-nav{font-size:11px;gap:12px}
}

.back-link,.documentation-download,.video-link{font-family:var(--sans);font-size:15px;line-height:1.5;min-height:44px;display:inline-flex;align-items:center;text-underline-offset:6px;text-decoration-thickness:1px}
.back-link{gap:8px}.back-link span{font-size:20px;line-height:1}.documentation-download,.video-link{text-decoration-line:underline}
.back-link:hover,.documentation-download:hover,.video-link:hover{text-underline-offset:6px}
.project-video-link{margin:0 0 14px}.video-status{font-size:15px;line-height:1.6;color:var(--muted);margin:0 0 22px}
.project-credits{font-family:var(--sans);font-size:13px;line-height:1.55;margin:0;width:100%;text-align:left}
.project-credits>div{display:grid;grid-template-columns:minmax(0,1fr) minmax(86px,auto);gap:5px 15px;margin-bottom:12px;align-items:start}
.project-credits dt{font-weight:400;color:#5a6257;min-width:0}.project-credits dt::after{content:":"}.project-credits dd{font-weight:500;color:var(--ink);margin:0;min-width:0;overflow-wrap:break-word}
.detail-heading{grid-template-columns:minmax(0,1fr) minmax(270px,335px);align-items:start}.detail-facts{max-width:335px;width:100%}
.documentation-figure{margin:26px 0 32px;max-width:100%}.documentation-figure a{display:block;border:0!important;background:#252b2c}.documentation-figure img{display:block;width:100%;height:auto;max-width:100%}.documentation-figure figcaption{font-size:12px;line-height:1.6;color:#596351;margin-top:10px}
.cover-audio{display:block;width:100%;height:100%;object-fit:contain;object-position:center;transform:none!important}
.work-cover.bloom,.work-cover.tyrannicides,.related-work .work-cover.bloom,.related-work .work-cover.tyrannicides{aspect-ratio:8/5}
.piano-item .video-link{font-size:15px}.piano-item h4{margin-top:0}
@media(max-width:1000px){.detail-heading{grid-template-columns:1fr}.detail-facts{max-width:600px;justify-self:start}.project-credits>div{grid-template-columns:minmax(0,1fr) minmax(100px,auto)}}
@media(max-width:560px){.detail-facts{max-width:none}.project-credits>div{grid-template-columns:minmax(0,1fr) minmax(86px,auto);gap:4px 12px}.documentation-figure{margin:22px 0 28px}.documentation-figure figcaption{font-size:12px}}

/* Round6: one body contributions section, one cover component, direct video embed. */
.detail-heading{grid-template-columns:minmax(0,1fr)}
.work-cover.audio-cover,.related-work .work-cover.audio-cover{aspect-ratio:8/5;border:0;isolation:isolate}
.work-cover.audio-cover .cover-audio{position:absolute;inset:0;display:block;width:100%;height:100%;max-width:none;object-fit:contain;object-position:50% 50%;transform:none!important;transition:none;filter:none;opacity:1;mix-blend-mode:normal}
.back-link,.back-link:hover,.back-link:focus,.back-link:active{text-decoration:none}
.back-link .back-arrow{font-size:20px;line-height:1;text-decoration:none}
.back-link .back-label{font-size:inherit;line-height:inherit;text-decoration-line:none;text-decoration-thickness:1px;text-underline-offset:10px}
.back-link:hover .back-label,.back-link:focus .back-label,.back-link:active .back-label{text-decoration-line:underline;text-decoration-thickness:1px;text-underline-offset:10px;text-decoration-color:#5f625e}
.back-link:active .back-label{text-decoration-color:var(--ink)}
.project-video{position:relative;width:100%;aspect-ratio:16/9;background:#101b14;margin:0 0 12px}
.project-video iframe{position:absolute;inset:0;width:100%;height:100%;border:0;display:block}
.project-video-fallback{margin:0 0 22px}
@media print{.project-video,.project-video-fallback{display:none!important}}
