
:root{color-scheme:dark;--red:hsl(1.61, 97.39%, 54.9%);--black:#000000;font-family:"Karla",sans-serif;font-synthesis:none;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;color:var(--red);background:var(--black)}*{box-sizing:border-box}body{margin:0}html{scroll-behavior:smooth;scroll-padding-top:35px}a{color:inherit;text-decoration:none}button{font:inherit}a:focus-visible,button:focus-visible,[role=button]:focus-visible{outline:2px solid #fff;outline-offset:6px}.skip,.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.skip:focus{width:auto;height:auto;clip-path:none;z-index:20;padding:15px;background:#000}.site-header{position:relative;display:flex;justify-content:space-between;align-items:center;gap:30px;padding:45px 6%;max-width:1800px;margin:auto}.wordmark{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px 14px;font-size:14px;font-weight:400;line-height:1.5;letter-spacing:.015em}.wordmark em{font-family:"Karla",sans-serif;font-style:normal;font-weight:400;font-size:28px;line-height:1.4;letter-spacing:-.04em}.site-header nav{display:flex;gap:28px;font-size:14px}.site-header nav a{padding:10px 0}.site-header nav a:hover{text-decoration:underline;text-underline-offset:6px}.menu-toggle{display:none}.work{max-width:1620px;padding:26px 4% 110px;margin:auto}.gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:62px 14px}.photo{min-width:0;margin:0;text-align:center}.photo>button{display:block;cursor:zoom-in;border:0;background:#121212;padding:0;margin:0 auto;width:100%;overflow:hidden}.photo img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;transition:transform .65s,filter .65s;filter:saturate(.8)}.photo>button:hover img{transform:scale(1.035);filter:saturate(1)}.photo figcaption{padding-top:21px;width:76%;margin:auto}.photo h3{border:1px solid var(--red);border-radius:60px;font-family:"Space Mono",monospace;font-size:14px;font-weight:400;line-height:1.5;letter-spacing:0;margin:0;padding:5px 12px;text-transform:uppercase;cursor:pointer;transition:background .2s,color .2s}.photo h3:hover{color:#000;background:var(--red)}.credit{letter-spacing:.01em;display:inline-block;color:#B99185;font-size:12px;line-height:1.6;margin-top:10px}.credit:hover{text-decoration:underline}.photo:last-child:nth-child(odd){grid-column:auto;width:100%}.about{border-top:1px solid #502823;margin:0 6%;padding:70px 0;display:grid;grid-template-columns:1fr 1fr;gap:40px}h2{font-size:18px;font-weight:400;margin:0}.about-line{font-family:inherit;font-weight:400;letter-spacing:-.025em;font-size:clamp(28px,3vw,44px);line-height:1.3;margin:0 0 25px}.note{font-size:14px;line-height:1.9;max-width:470px;color:#B99185}footer{padding:30px 6% 45px;display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:14px}footer p{font-size:12px;color:#B99185;max-width:380px;line-height:1.8}dialog{border:0;padding:75px 65px 40px;width:100vw;max-width:none;height:100dvh;max-height:none;background:#000;color:var(--red)}dialog::backdrop{background:#000}dialog[open]{display:flex;align-items:center;justify-content:center}dialog figure{margin:0;max-width:100%;text-align:center}dialog img{display:block;max-width:100%;max-height:77dvh;object-fit:contain;margin:auto}dialog figcaption{padding-top:18px;font-size:14px}dialog button{position:absolute;cursor:pointer;background:#000;color:var(--red);border:0;padding:14px;min-width:48px;min-height:48px}.close{top:15px;right:20px}.previous{left:8px;top:47%}.next{right:8px;top:47%}body.viewing{overflow:hidden}@media(max-width:767px){.site-header{padding:30px 8%;min-height:95px}.wordmark{font-size:12px;gap:7px 10px}.wordmark em{font-size:24px}.menu-toggle{position:fixed;top:23px;right:6vw;display:flex;flex-direction:column;justify-content:center;gap:5px;width:32px;height:32px;min-width:32px;min-height:32px;padding:7px;background:none;border:0;cursor:pointer;z-index:4}.menu-toggle span{width:18px;height:1px;background:var(--red);transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3px) rotate(-45deg)}.site-header nav{display:none;position:absolute;top:90px;left:0;right:0;background:#000;border-bottom:1px solid #502823;padding:30px 8%;z-index:3;font-size:20px}.site-header nav.open{display:flex;flex-direction:column}.work{padding:5px 6% 65px}.gallery{grid-template-columns:1fr;gap:56px}.photo>button{width:82%}.photo figcaption{padding-top:21px;width:100%}.photo h3{font-size:15px;padding:7px 14px}.photo:last-child:nth-child(odd){width:100%;grid-column:auto}.about{grid-template-columns:1fr;padding:45px 0;gap:25px}.about-line{font-size:29px}footer{flex-wrap:wrap;align-items:flex-start}footer p{order:3;flex-basis:100%;margin:0}dialog{padding:70px 40px 30px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

@media(min-width:768px){.site-header{display:grid;grid-template-columns:1fr auto 1fr;max-width:1620px;padding:40px 4% 46px}.wordmark{grid-column:2;grid-row:1;justify-content:center}.site-header nav{grid-column:1;grid-row:1;justify-self:start;gap:20px}.photo h3{min-height:32px;display:flex;align-items:center;justify-content:center}}
.about{display:block;text-align:center;border:0;margin:0 auto;padding:20px 6% 30px;max-width:600px}.about h2{font-size:16px;margin-bottom:15px}.about-line{font-size:20px;line-height:1.5;letter-spacing:-.01em;margin-bottom:14px}.note{margin:0 auto;font-size:14px}footer{display:flex;flex-direction:column;justify-content:center;text-align:center;gap:12px;padding:15px 6% 55px}footer p{margin:0;max-width:500px}.credit{font-size:12px}
@media(max-width:767px){.work{padding:5px 6% 65px}.photo figcaption{width:100%;padding-top:21px}.photo>button{width:82%}.photo h3{font-size:14px;padding:4px 12px}.gallery{gap:56px}.about{padding:20px 6% 25px}footer p{order:0}}

/* Match the reference typography metrics; the reference wordmark is an image. */
:root{letter-spacing:.06em}
.wordmark{font-family:"Karla",sans-serif;font-size:18px;letter-spacing:-.06em;font-weight:400;gap:7px;line-height:1.2}
.wordmark em{font-family:Georgia,"Times New Roman",serif;font-style:italic;font-size:23px;font-weight:400;letter-spacing:-.065em;line-height:1.2}
.photo h3{font-family:"Space Mono",monospace;font-weight:400;font-style:normal;letter-spacing:-.02em;font-size:13px;line-height:1.2;min-height:28px;padding:5px 12px}
.site-header nav,h2,.about-line{font-family:"Karla",sans-serif;font-weight:400;letter-spacing:-.01em;line-height:1.2}
.note,footer p{letter-spacing:.06em;line-height:1.6}
@media(max-width:767px){.wordmark{font-size:16px}.wordmark em{font-size:21px}.photo h3{font-size:13px;line-height:1.2;min-height:26px}}

/* Gawx-style hover lift and image zoom */
@media (hover: hover) and (pointer: fine) {
  .photo > button { transition: transform .8s cubic-bezier(.2,.75,.25,1), box-shadow .8s ease; }
  .photo > button:hover { transform: scale(1.035); box-shadow: 0 18px 38px rgba(0,0,0,.32); }
  .photo > button:hover img { transform: scale(1.02); }
  .photo h3, .site-header nav a, .credit, footer a { transition: transform .35s ease, color .35s ease, background-color .35s ease; }
  .photo h3:hover { transform: scale(1.045); }
  .site-header nav a:hover, .credit:hover, footer a:hover { transform: scale(1.08); text-decoration: none; }
}
@media (prefers-reduced-motion: reduce) {
  .photo > button, .photo img, .photo h3, .site-header nav a, .credit, footer a { transition: none !important; }
}

.instagram-feature{max-width:540px;margin:60px auto 90px;padding:0 6%;text-align:center}.instagram-feature h2{margin-bottom:24px;font-size:16px;color:var(--red)}.instagram-feature .instagram-media{margin:0 auto!important;min-width:0!important;width:100%!important}
.instagram-link{position:fixed;z-index:8;top:38px;right:4vw;display:flex;align-items:center;gap:8px;font-family:"Space Mono",monospace;font-size:12px;letter-spacing:-.02em;color:var(--red);transition:transform .35s ease}.instagram-link svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.5}.instagram-link svg circle:last-child{fill:currentColor;stroke:none}.instagram-link:hover{transform:none}
@media(max-width:767px){.instagram-link{top:28px;right:calc(6vw + 48px);font-size:0}.instagram-link svg{width:22px;height:22px}}
.instagram-link span{display:none}
.youtube-link{position:fixed;z-index:8;top:38px;right:calc(4vw + 42px);display:flex;align-items:center;color:var(--red);transition:transform .35s ease}.youtube-link svg{width:22px;height:22px;fill:currentColor}.youtube-link:hover{transform:none}
@media(max-width:767px){.youtube-link{top:28px;right:calc(6vw + 84px)}.youtube-link svg{width:23px;height:23px}}
.instagram-feature{max-width:100%;margin:62px auto 0;padding:0 4vw;text-align:center}.instagram-feature h2{display:none}.instagram-feature .instagram-media{max-width:100%!important;min-width:0!important;width:100%!important;margin:0 auto!important;background:transparent!important;box-shadow:none!important}.instagram-feature .instagram-media>a{display:block;border:1px solid var(--red);border-radius:60px;padding:6px 14px;color:var(--red);font-family:"Space Mono",monospace;font-size:13px;text-transform:uppercase;letter-spacing:-.02em;transition:transform .35s ease,background-color .35s ease,color .35s ease}.instagram-feature .instagram-media>a:hover{transform:scale(1.035);background:var(--red);color:#000}

/* Reference grid alignment */
@media (min-width: 768px) {
  .site-header { padding-left: 4vw; padding-right: 4vw; }
  .work { max-width: 1500px; padding-left: 4vw; padding-right: 4vw; }
  .photo img { aspect-ratio: auto; object-fit: contain; }
}
.youtube-feature{max-width:100%;padding:0 4vw;line-height:0}.youtube-feature iframe{display:block;width:100%;max-width:100%;aspect-ratio:16/9;height:auto;border:0;margin:0 auto}
.youtube-feature{max-width:960px;margin:110px auto 120px;padding:0 6vw;text-align:left;line-height:normal}.youtube-feature h2{font-family:"Karla",sans-serif;font-size:16px;font-weight:400;letter-spacing:-.01em;margin:0 0 10px;color:var(--red)}.youtube-feature p{font-family:"Karla",sans-serif;font-size:13px;letter-spacing:.06em;color:#B99185;margin:0 0 24px}.youtube-frame{width:100%;line-height:0}.youtube-feature iframe{width:100%;aspect-ratio:16/9;height:auto}
.film-detail{width:min(1500px,92vw);margin:70px auto 90px;display:grid;grid-template-columns:repeat(24,minmax(0,1fr));gap:11px;text-align:center}
.film-detail h2{grid-column:1/-1;font-family:Karla,sans-serif;font-size:24px;font-weight:400;line-height:1.2;letter-spacing:-.01em;margin:0 0 16px;color:var(--red)}
.film-detail>p{grid-column:10/16;font-family:Karla,sans-serif;font-size:14px;line-height:1.1;letter-spacing:.06em;color:var(--red);margin:0 0 28px}
.film-detail .youtube-frame{grid-column:5/21;position:relative;aspect-ratio:4/3;width:100%;background:#000}
.film-detail iframe{position:absolute;inset:0;display:block;width:100%;height:100%;border:0}
@media(max-width:767px){.film-detail{width:88vw;grid-template-columns:repeat(8,minmax(0,1fr));margin:55px auto}.film-detail h2,.film-detail>p,.film-detail .youtube-frame{grid-column:1/-1}.film-detail h2{font-size:22px}.film-detail>p{margin-bottom:35px}}
.video-card-frame{position:relative;width:100%;aspect-ratio:4/3;background:#000}
.video-card-frame iframe{position:absolute;inset:0;display:block;width:100%;height:100%;border:0}
.video-card h3 a{display:block;width:100%}
@media(max-width:767px){.video-card-frame{width:82%;margin:0 auto}}

/* Compact project labels on the first-level work grid. */
.gallery > .video-card figcaption,.gallery > .photo-project figcaption{width:76%}
.gallery > .video-card h3,.gallery > .photo-project h3{min-height:23px;padding:3px 9px;font-size:10px;line-height:1.15}
@media(max-width:767px){.gallery > .video-card figcaption,.gallery > .photo-project figcaption{width:76%}.gallery > .video-card h3,.gallery > .photo-project h3{font-size:10px;padding:3px 9px}}

/* Gawx-inspired contact composition: large title, sparse details, direct email. */
.contact-main{width:min(1500px,92vw);min-height:calc(100svh - 230px);margin:0 auto;padding:8vh 0 12vh;display:grid;grid-template-columns:1.25fr .75fr;align-items:end;gap:6vw}
.contact-main h1{margin:0;font:400 clamp(4.5rem,14vw,13rem)/.82 Karla,sans-serif;letter-spacing:-.085em;color:var(--red)}
.contact-details{max-width:420px;padding-bottom:1.2rem}
.contact-role,.contact-note{font:400 13px/1.6 "Space Mono",monospace;letter-spacing:-.03em;margin:0;color:#B99185}
.contact-email{display:inline-block;margin:22px 0 24px;font:400 clamp(1.35rem,2.3vw,2.2rem)/1.1 Karla,sans-serif;letter-spacing:-.045em;border-bottom:1px solid currentColor;padding-bottom:5px;transition:transform .45s ease,color .45s ease}
.contact-email:hover{transform:scale(1.025);color:#fff}
@media(max-width:767px){.contact-main{min-height:calc(100svh - 180px);grid-template-columns:1fr;align-content:space-between;gap:15vh;padding:9vh 0}.contact-main h1{font-size:clamp(4.5rem,24vw,8rem)}.contact-details{padding:0;max-width:300px}.contact-email{font-size:1.35rem}.contact-page footer{padding-bottom:35px}}

/* Contact page proportions follow the Gawx reference while retaining Clay_416 imagery. */
.contact-page .contact-main{width:min(1560px,90vw);min-height:auto;margin:0 auto;padding:4.4rem 0 1.6rem;display:block}
.contact-feature{display:grid;grid-template-columns:minmax(0,47%) minmax(300px,48%) minmax(0,5%);grid-template-rows:1fr;column-gap:0;align-items:start;min-height:min(46vw,46rem)}
.contact-identity a{transition:opacity .35s ease}.contact-identity a:hover{opacity:.62}
.contact-portrait{grid-column:2;grid-row:1;width:100%;margin:0;aspect-ratio:4 / 5;overflow:hidden;background:#090909}
.contact-portrait img{display:block;width:100%;height:100%;object-fit:cover;object-position:58% center;transform:none;filter:none}
.contact-identity{grid-column:1;grid-row:1;justify-self:center;align-self:start;padding:22% 0 0;font:400 8px/1.45 "Space Mono",monospace;letter-spacing:-.03em;color:#B99185}.contact-identity .contact-role{margin:0;color:var(--red);font-size:14px;line-height:1.2}.contact-identity a{display:block;margin-top:96px;color:#fff}.contact-identity .contact-location{margin:24px 0 0;color:#fff}
@media(max-width:767px){.contact-page .contact-main{width:84vw;padding:4.2rem 0 1rem}.contact-feature{grid-template-columns:1fr 1fr;grid-template-rows:auto;gap:28px 14px;min-height:0}.contact-portrait{grid-column:2;grid-row:1;aspect-ratio:4/5}.contact-identity{grid-column:1;grid-row:1;justify-self:start;align-self:center;padding:0;font-size:8px}.contact-identity .contact-role{font-size:12px}.contact-identity a{margin-top:52px;overflow-wrap:anywhere}.contact-identity .contact-location{margin-top:18px}.contact-page footer{padding-bottom:35px}}
