:root{color-scheme:dark;--ink:#efeee9;--muted:#aaa9a3;--line:rgba(239,238,233,.16);--accent:#ed744c}
*{box-sizing:border-box}body{margin:0;background:#0b0c0c;color:var(--ink);font-family:'Space Grotesk',Arial,sans-serif}a{color:inherit}button{font:inherit;cursor:pointer}[hidden]{display:none!important}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:5px}.skip-link{position:absolute;top:-100px;left:1rem}.skip-link:focus{top:1rem;z-index:9;background:#111;padding:1rem}.detail-nav{display:flex;align-items:center;justify-content:space-between;max-width:1480px;margin:auto;padding:24px clamp(24px,5vw,80px)}.detail-nav a:last-child{text-decoration:none;font-size:.85rem}.detail-nav img{display:block}main{max-width:1480px;margin:auto;padding:0 clamp(24px,5vw,80px)}.detail-heading{padding:72px 0 48px;max-width:1050px}.detail-kicker{text-transform:uppercase;letter-spacing:.15em;color:var(--accent);font-size:.72rem}.detail-heading h1{font-size:clamp(3rem,7vw,7.8rem);font-weight:500;line-height:1.04;letter-spacing:-.055em;margin:24px 0}.detail-subtitle{max-width:820px;font-size:clamp(1.15rem,2.3vw,1.85rem);line-height:1.45;color:var(--muted)}.detail-hero{margin:0;background:#151718;border:1px solid var(--line);border-radius:12px;overflow:hidden}.detail-hero button{display:block;border:0;padding:0;background:transparent;width:100%}.detail-hero img,.detail-hero video{display:block;width:100%;max-height:800px;object-fit:contain}.detail-hero figcaption{padding:18px 24px;color:var(--muted);font-size:.85rem}.detail-overview{display:grid;grid-template-columns:2fr 1fr;gap:clamp(32px,7vw,120px);padding:90px 0}.detail-overview h2,.gallery-heading h2{font-size:1rem;font-weight:500;margin:0 0 32px}.detail-overview p{color:var(--muted);font-size:clamp(1.1rem,1.8vw,1.5rem);line-height:1.7;max-width:750px;margin:0 0 24px;white-space:pre-wrap}.detail-facts{margin:0;padding-left:40px;border-left:1px solid var(--line)}.detail-facts>div{margin-bottom:32px}.detail-facts dt{font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin-bottom:14px}.detail-facts dd{margin:0;line-height:1.8}.gallery-heading{display:flex;align-items:baseline;justify-content:space-between}.gallery-heading p{font-size:.8rem;color:var(--muted)}#project-gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.detail-gallery figure{margin:0;background:#151718;border:1px solid var(--line);border-radius:10px;overflow:hidden}.detail-gallery figure:only-child{grid-column:1/-1}.detail-gallery button{border:0;padding:0;display:block;width:100%;background:transparent}.detail-gallery img,.detail-gallery video{display:block;width:100%;height:auto;max-height:700px;object-fit:contain}.detail-gallery figcaption{font-size:.85rem;line-height:1.6;padding:16px 24px;color:var(--muted)}.detail-next{margin:100px 0 60px;border-top:1px solid var(--line);padding:56px 0}.detail-next a{text-decoration:none;display:grid;gap:18px}.detail-next span{color:var(--accent);font-size:.8rem}.detail-next strong{font-size:clamp(2rem,4vw,4rem);font-weight:500;letter-spacing:-.04em}.detail-footer{max-width:1480px;padding:24px clamp(24px,5vw,80px);margin:auto;border-top:1px solid var(--line);display:flex;justify-content:space-between}.detail-footer a{font-size:.85rem;text-decoration:none}#project-error{padding:90px 0 160px}dialog{background:#101111;color:var(--ink);border:1px solid var(--line);border-radius:12px;padding:60px 16px 16px;max-width:94vw;max-height:94vh;width:fit-content}dialog::backdrop{background:rgba(0,0,0,.88)}.dialog-close{position:absolute;right:16px;top:14px;background:transparent;color:var(--ink);border:1px solid var(--line);border-radius:20px;padding:8px 14px}#dialog-content img{display:block;max-width:86vw;max-height:76vh;object-fit:contain}.case-gallery{padding:48px max(24px,5vw);max-width:1480px;margin:auto}.case-gallery h2{font-size:1.3rem}.case-gallery>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.case-gallery figure{margin:0}.case-gallery img,.case-gallery video{max-width:100%;max-height:700px;object-fit:contain}.case-gallery figcaption{font-size:.85rem;color:var(--muted);padding:12px 0}.case-description p{margin-bottom:1em!important}
@media(max-width:700px){.detail-heading{padding-top:40px}.detail-overview{grid-template-columns:1fr;padding:48px 0}.detail-facts{padding:24px 0 0;border-left:0;border-top:1px solid var(--line)}#project-gallery-grid,.case-gallery>div{grid-template-columns:1fr}.gallery-heading{display:block}.detail-next{margin-top:56px}.detail-hero{border-radius:6px}}

.detail-gallery{padding-top:48px}.detail-hero figcaption{line-height:1.6}.gallery-heading h2{margin-bottom:24px}

#project-gallery-grid.motion-gallery{grid-template-columns:repeat(var(--square-columns,3),minmax(0,1fr));align-items:start}
.motion-gallery .is-wide{grid-column:1/-1;order:-1}
.motion-gallery img,.motion-gallery video{max-height:none}
@media(max-width:900px){#project-gallery-grid.motion-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){#project-gallery-grid.motion-gallery{grid-template-columns:1fr}}

.detail-nav img{filter:invert(1)}

.detail-roles{color:var(--muted);font-size:.95rem;line-height:1.5;margin:1rem 0 0}

.detail-project-description{max-width:760px;margin-top:1.75rem;color:var(--muted);font-size:clamp(1rem,1.3vw,1.15rem);line-height:1.7}.detail-project-description p{margin:0 0 1rem;white-space:pre-wrap}

.project-meta{margin:1.25rem 0 0;font-size:.95rem;line-height:1.6}.project-meta div{display:flex;gap:.5rem}.project-meta div[hidden]{display:none}.project-meta dt{font-weight:600}.project-meta dd{margin:0}
