:root{color-scheme:dark;--bg:#121722;--panel:#202735;--ink:#F2EEE5;--muted:#BDC6D3;--line:#394254;--accent:#8578F2;--sans:'Geist',sans-serif;--display:'Nova Round',sans-serif;--mono:'DM Mono',monospace}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink)}.project-topline{padding-top:24px;display:flex;justify-content:space-between;align-items:center}.back-link{font:10px var(--mono);color:var(--muted);text-decoration:none}.back-link:hover{color:var(--accent)}.project-topline .eyebrow{font-size:9px}.project-hero{padding-top:70px;padding-bottom:70px}.project-hero h1,.somwyr-intro h1{font:500 clamp(66px,11vw,126px)/.88 var(--display);letter-spacing:-.09em;margin:25px 0 24px}.project-hero h1 span{color:var(--accent)}.hero-deck{font:400 clamp(19px,2.8vw,28px)/1.4 var(--display);letter-spacing:-.025em;color:#F2EEE5;max-width:650px;margin:0 0 25px}.role-line{font:11px var(--mono);color:var(--accent);margin:0}.role-line span{color:var(--muted);margin-right:17px}.feature-image{margin:0;background:#202735}.feature-image img{display:block;width:100%;height:min(57vw,650px);object-fit:cover;object-position:center 35%}.feature-image figcaption,.editor-shots figcaption{font:10px var(--mono);color:var(--muted);padding:11px max(20px,calc((100vw - 1160px)/2))}.prose-section{display:grid;grid-template-columns:1fr 2fr;gap:55px;padding-top:90px;padding-bottom:80px}.prose-section>.eyebrow{padding-top:8px}.prose{max-width:700px}.prose h2{font:500 clamp(34px,5vw,54px)/1.05 var(--display);letter-spacing:-.065em;margin:0 0 22px}.prose p{font-size:15px;line-height:1.8;color:#BDC6D3;max-width:650px}.prose p:last-child{margin-bottom:0}.role-section{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:30px 0 36px;display:grid;grid-template-columns:1fr 1fr;gap:50px}.role-block+.role-block{border-left:1px solid var(--line);padding-left:50px}.role-block h2{font:500 27px/1.1 var(--display);letter-spacing:-.04em;margin:17px 0 10px}.role-block p:last-child{color:#BDC6D3;font-size:13px;line-height:1.65;margin:0}.trailer-section{background:#202735;margin-top:76px;padding:50px 0 55px}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:18px}.section-heading h2{font:500 31px var(--display);letter-spacing:-.05em;margin:8px 0 0}.official-trailer{display:block;width:100%;max-height:690px;aspect-ratio:16/9;background:#121722}.gallery-section{padding-top:75px;padding-bottom:90px}.section-note{font-size:12px;color:var(--muted);margin:0}.build-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px 16px}.build-grid figure{margin:0}.build-grid img{display:block;width:100%;aspect-ratio:1.55;object-fit:cover;background:#202735}.build-grid figcaption{font:10px var(--mono);color:var(--muted);padding-top:9px}.recognition{border-top:1px solid var(--line);padding-top:35px;padding-bottom:80px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:42px}.recognition-item h2{font:500 34px var(--display);letter-spacing:-.05em;margin:20px 0 12px}.recognition-item>p:not(.eyebrow){font-size:13px;line-height:1.7;color:#BDC6D3;max-width:500px}.recognition-item>a,.reading-links a,.external-link{font:11px var(--mono);color:var(--accent);text-decoration:none}.recognition-item>a:hover,.reading-links a:hover,.external-link:hover{text-decoration:underline;text-underline-offset:4px}.reading-section{background:#202735;padding:38px 0 48px}.reading-inner{display:grid;grid-template-columns:1fr 2fr;gap:50px}.reading-links{display:grid;grid-template-columns:1fr 1fr;column-gap:24px}.reading-links a{color:var(--ink);padding:12px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:12px}.reading-links span{color:var(--muted)}.next-project{padding-top:55px;padding-bottom:55px;border-top:1px solid var(--line)}.next-project>a{display:flex;justify-content:space-between;text-decoration:none;font:500 clamp(38px,7vw,66px) var(--display);letter-spacing:-.07em;margin-top:12px}.next-project>a:hover{color:var(--accent)}
.somwyr-hero{display:grid;grid-template-columns:.9fr 1.1fr;gap:45px;align-items:center;padding-top:65px;padding-bottom:65px}.somwyr-intro h1{font-size:clamp(52px,7vw,82px);letter-spacing:-.08em;margin:27px 0}.somwyr-lede{font-size:15px;line-height:1.75;color:#BDC6D3;max-width:430px}.build-status{font:11px var(--mono);margin:25px 0 21px}.build-status span{color:var(--muted);margin-right:12px}.somwyr-hero-image,.editor-shots figure{margin:0}.somwyr-hero-image img{display:block;width:100%;aspect-ratio:1.65;object-fit:cover;background:#202735}.somwyr-hero-image figcaption{font:10px var(--mono);color:var(--muted);padding-top:9px}.somwyr-hero .external-link{display:inline-block;margin-top:5px}.editor-shots{display:grid;grid-template-columns:1fr 1fr;gap:18px;padding-bottom:70px}.editor-shots img{display:block;width:100%;aspect-ratio:1.68;object-fit:cover;background:#202735}.editor-shots figcaption{padding:10px 0}.somwyr-status{border-top:1px solid var(--line);padding-top:32px;padding-bottom:75px;display:grid;grid-template-columns:1fr 1fr;gap:60px}.status-copy h2{font:500 28px var(--display);letter-spacing:-.045em;margin:16px 0 12px}.status-copy>p:last-child{font-size:13px;line-height:1.75;color:#BDC6D3;max-width:510px;margin-bottom:0}.vr-note{background:#202735;padding:37px 0 42px}.vr-note>div{display:grid;grid-template-columns:1fr 2fr;gap:55px;align-items:start}.vr-note>div>p:last-child{font-size:14px;line-height:1.8;color:#BDC6D3;max-width:720px;margin:0}.somwyr-close{padding-top:75px;padding-bottom:80px;display:flex;justify-content:space-between;align-items:end;gap:45px}.somwyr-close h2{font:500 clamp(34px,5.5vw,61px)/1.06 var(--display);letter-spacing:-.065em;margin:17px 0}.somwyr-close>div>p:last-child{font-size:13px;line-height:1.7;color:#BDC6D3;max-width:550px;margin:0}.somwyr-close .external-link{white-space:nowrap;border-bottom:1px solid #566177;padding-bottom:9px}
@media(max-width:700px){.project-topline{padding-top:19px}.project-hero{padding-top:58px;padding-bottom:55px}.project-hero h1{font-size:clamp(62px,14vw,92px)}.feature-image img{height:76vw;min-height:260px}.feature-image figcaption{padding-left:20px}.prose-section{grid-template-columns:1fr;gap:22px;padding-top:62px;padding-bottom:55px}.prose h2{font-size:37px}.prose p{font-size:14px}.role-section{grid-template-columns:1fr;gap:25px;padding:25px 0}.role-block+.role-block{border-left:0;border-top:1px solid var(--line);padding:25px 0 0}.trailer-section{margin-top:55px;padding:38px 0}.section-heading h2{font-size:26px}.gallery-section{padding-top:55px;padding-bottom:60px}.build-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:17px 10px}.build-grid figcaption{font-size:9px}.section-heading{display:block}.section-note{margin-top:10px}.recognition{grid-template-columns:1fr;gap:32px;padding-bottom:58px}.recognition-item h2{font-size:29px}.reading-inner{grid-template-columns:1fr;gap:14px}.reading-links{grid-template-columns:1fr}.somwyr-hero{grid-template-columns:1fr;gap:28px;padding-top:54px;padding-bottom:50px}.somwyr-intro h1{font-size:clamp(55px,13vw,78px)}.somwyr-lede{font-size:14px}.editor-shots{grid-template-columns:1fr;gap:10px;padding-bottom:52px}.somwyr-status{grid-template-columns:1fr;gap:32px;padding-bottom:54px}.vr-note>div{grid-template-columns:1fr;gap:17px}.somwyr-close{display:block;padding-top:56px;padding-bottom:60px}.somwyr-close .external-link{display:inline-block;margin-top:25px}.next-project{padding-top:42px;padding-bottom:44px}}
.trailer-hero{padding:24px 24px 22px;background:#121722;border-bottom:1px solid var(--line)}.trailer-hero .official-trailer{width:min(740px,100%);height:auto;aspect-ratio:16/9;max-height:none;object-fit:contain;margin:0 auto;background:#121722}.gallery-section.wrap{width:min(1510px,calc(100% - 48px));padding-top:68px;padding-bottom:75px}.tile-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 20px;justify-content:center}.tile-gallery figure{margin:0;display:flex;flex-direction:column;align-items:center}.tile-gallery img{display:block;width:auto;height:auto;max-width:100%;object-fit:contain;background:transparent}.tile-gallery figcaption{width:min(740px,100%);font:10px var(--mono);color:var(--muted);padding-top:9px}.build-gallery-section{background:#202735;padding:50px 0 58px}.build-gallery-section .build-grid img{aspect-ratio:1.55}.build-gallery-section .build-grid figcaption{font:10px var(--mono);color:var(--muted);padding-top:9px}
@media(max-width:700px){.trailer-hero{padding:12px 12px 14px}.gallery-section.wrap{width:calc(100% - 32px);padding-top:48px;padding-bottom:55px}.tile-gallery{grid-template-columns:1fr;gap:24px}.tile-gallery img{max-width:min(100%,740px)}.tile-gallery figcaption{padding-top:8px}.build-gallery-section{padding:38px 0 44px}}

/* Portfolio theme alignment with the Somwyr guide; no product marks or iconography. */
:root{--bg:#121722;--panel:#202735;--ink:#F2EEE5;--muted:#BDC6D3;--line:#394254;--accent:#8578F2;--blue:#55C7DF;--orange:#EF9175;--sans:'Geist',sans-serif;--display:'Nova Round',sans-serif;--mono:'DM Mono',monospace}
body{font-size:16px;line-height:1.6}
.hero h1,.project-hero h1,.somwyr-intro h1,.project-copy h3,.section-head h2,.section-heading h2,.prose h2,.role-block h2,.status-copy h2,.somwyr-close h2,.about-copy h2,.contact h2,.next-project>a{font-family:var(--display);font-weight:400;letter-spacing:-.015em}
.recognition-statement{font:500 19px/1.55 var(--sans);color:var(--ink);max-width:520px}
.trailer-hero{padding:0 0 38px;background:transparent;border:0}
.trailer-hero .official-trailer{width:min(900px,100%);height:auto;aspect-ratio:16/9;max-height:none;object-fit:contain;margin:0 auto;background:#121722;border-radius:12px}
.tile-gallery img,.build-grid img,.somwyr-hero-image img,.editor-shots img{border-radius:12px}
@media(max-width:700px){.trailer-hero{padding:0 0 30px}}

/* Typography hierarchy from the supplied guide. */
.project-hero h1,.project-copy h3,.section-heading h2,.prose h2,.role-block h2,.status-copy h2,.next-project>a{font-family:var(--sans);font-weight:700;letter-spacing:-.02em}
.project-hero h1{font-size:clamp(44px,6vw,64px);line-height:1.05}
.somwyr-intro h1,.somwyr-close h2{font-family:var(--display);font-weight:400;letter-spacing:0;line-height:.96}
.somwyr-intro h1{font-size:clamp(44px,7vw,72px)}
.somwyr-close h2{font-size:clamp(44px,7vw,72px)}
.recognition-statement{font:500 19px/1.55 var(--sans);color:var(--ink);max-width:520px}
.recognition-item>a,.reading-links a,.external-link{ text-decoration:underline;text-underline-offset:4px}
.eyebrow,.project-topline .eyebrow{font-size:11px}
.feature-image img{border-radius:12px}

/* Quiet staggered wayfinding tile: a dot and a discovery star. */
body{background-color:var(--bg);background-image:none}

.recognition-heading{grid-column:1/-1;display:flex;align-items:baseline;gap:20px;margin-bottom:-12px}.recognition-heading h2{font:700 28px/1.12 var(--sans);margin:0}.recognition-item .eyebrow{line-height:1.4}.recognition-item>p:not(.eyebrow){margin-top:12px}
@media(max-width:700px){.recognition-heading{display:block;margin-bottom:0}.recognition-heading h2{margin-top:8px}}

/* Editorial project page for Bellweather & Ash */
.hero-deck{font-family:var(--sans);font-weight:400;letter-spacing:-.01em;line-height:1.4}
.editorial-hero h1{max-width:900px}
.editorial-source-note{font:11px/1.5 var(--mono);letter-spacing:.06em;color:var(--blue);margin:26px 0 0}
.editorial-title-section{background:var(--panel);padding:52px 0 58px}
.editorial-title-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(230px,.7fr);gap:58px;align-items:center}
.editorial-title-grid h2{font:700 clamp(28px,4vw,42px)/1.12 var(--sans);letter-spacing:-.025em;max-width:640px;margin:16px 0 12px}
.editorial-title-grid>div:first-child>p:last-child{font-size:16px;line-height:1.6;color:var(--muted);margin:0}
.editorial-status{border-left:1px solid var(--line);padding-left:38px}
.editorial-status>p:last-child{font-size:15px;line-height:1.7;color:var(--muted);margin:16px 0 0}
@media(max-width:700px){.editorial-title-section{padding:38px 0 42px}.editorial-title-grid{grid-template-columns:1fr;gap:28px}.editorial-status{border-left:0;border-top:1px solid var(--line);padding:23px 0 0}}
