:root{--black:#080808;--ink:#131313;--white:#f7f7f4;--gray:#a4a4a0;--line:#2b2b2b;--accent:#d9ff43;--display:"Archivo Black",Impact,sans-serif;--body:Inter,Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--black);color:var(--white);font-family:var(--body);font-size:16px;line-height:1.6}img,video{display:block;width:100%}a{color:inherit}.skip-link{position:fixed;left:1rem;top:-5rem;z-index:100;background:var(--accent);color:#000;padding:.7rem 1rem}.skip-link:focus{top:1rem}.site-header{height:86px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(1.25rem,4vw,4.5rem);position:absolute;z-index:20;width:100%;border-bottom:1px solid rgba(255,255,255,.14)}.brand{display:flex;align-items:center;gap:.75rem;text-decoration:none;font-weight:800;letter-spacing:.04em}.brand img{width:44px;height:44px;border-radius:50%;object-fit:cover}.brand b{font-weight:400;color:#bdbdb9}.site-header nav{display:flex;align-items:center;gap:2.1rem}.site-header nav a{text-decoration:none;font-size:.88rem;font-weight:600}.nav-cta{border:1px solid rgba(255,255,255,.55);padding:.65rem 1rem}.menu-button{display:none;background:none;color:#fff;border:1px solid #666;padding:.45rem .75rem;font:inherit}.hero{min-height:100svh;display:grid;grid-template-columns:1.05fr .95fr;position:relative;overflow:hidden}.hero-copy{display:flex;flex-direction:column;justify-content:center;padding:9rem clamp(1.4rem,6vw,7rem) 5rem}.eyebrow,.kicker{text-transform:uppercase;letter-spacing:.16em;font-size:.72rem;font-weight:700}.eyebrow{display:flex;align-items:center;gap:.7rem;color:#d0d0cb}.eyebrow span{display:inline-block;width:32px;height:2px;background:var(--accent)}h1,h2,h3{margin:0;line-height:.94}h1,h2{font-family:var(--display);text-transform:uppercase;letter-spacing:-.055em}h1{font-size:clamp(4rem,8.5vw,9rem);position:relative;z-index:2;margin:.7rem 0 2rem}h1 em{font-style:normal;color:transparent;-webkit-text-stroke:1.5px var(--white)}.hero-lede{font-size:clamp(1rem,1.35vw,1.25rem);max-width:620px;color:#c5c5c0;margin:0 0 2.2rem}.hero-actions{display:flex;align-items:center;gap:2rem;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;text-transform:uppercase;letter-spacing:.1em;font-size:.75rem;font-weight:800;padding:1rem 1.4rem;border:1px solid}.button-light{background:var(--white);color:#000;border-color:var(--white)}.button-dark{background:#000;color:#fff;border-color:#000}.text-link{text-decoration:none;font-weight:700;border-bottom:1px solid #666;padding:.4rem 0}.hero-media{position:relative;min-height:680px}.hero-media:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--black) 0,transparent 25%),linear-gradient(0deg,rgba(0,0,0,.58),transparent 45%);pointer-events:none}.hero-media video{height:100%;object-fit:cover;filter:saturate(.72) contrast(1.08)}.hero-stamp{position:absolute;z-index:2;right:5%;top:15%;width:108px;height:108px;border:1px solid rgba(255,255,255,.65);border-radius:50%;display:grid;place-content:center;text-align:center;font-family:var(--display);font-size:.72rem;line-height:1.25;transform:rotate(8deg)}.sound-label{position:absolute;z-index:2;right:2rem;bottom:1.3rem;text-transform:uppercase;font-size:.65rem;letter-spacing:.14em}.scroll-mark{position:absolute;left:50%;bottom:2rem;z-index:4;writing-mode:vertical-rl;text-transform:uppercase;letter-spacing:.18em;font-size:.6rem;color:#aaa}.scroll-mark span{color:var(--accent);font-size:1rem;margin-top:.7rem}.marquee{overflow:hidden;background:var(--accent);color:#000;border-block:1px solid #000}.marquee div{font-family:var(--display);font-size:clamp(1.15rem,2vw,2rem);white-space:nowrap;padding:.9rem 0;animation:marquee 24s linear infinite;width:max-content}.marquee span{padding:0 1.1rem}@keyframes marquee{to{transform:translateX(-35%)}}.section{padding:clamp(5rem,10vw,10rem) clamp(1.3rem,5vw,5.5rem)}.section-heading{display:grid;grid-template-columns:.55fr 1.25fr .8fr;align-items:end;gap:3rem;margin-bottom:5rem}.kicker{color:#888;margin:0}.section-heading h2,.about h2,.contact h2{font-size:clamp(3.2rem,7vw,7.5rem)}.section-heading h2 span,.about h2 span,.contact h2 span{color:transparent;-webkit-text-stroke:1px currentColor}.section-heading>p:last-child{color:#aaa;margin:0 0 .5rem;max-width:420px}.film-grid{display:grid;grid-template-columns:1.4fr .6fr;gap:4rem 1.5rem;align-items:start}.film-card{position:relative}.film-card video{aspect-ratio:16/9;object-fit:cover;background:#151515}.film-card-tall{grid-row:span 2}.film-card-tall video{aspect-ratio:9/16;max-height:800px}.film-card-wide{margin-top:5rem}.film-card>div{display:grid;grid-template-columns:38px 1fr auto;gap:1rem;align-items:center;padding:1rem 0;border-bottom:1px solid var(--line)}.film-card h3{font-size:1rem}.film-card p,.film-card span{margin:0;color:#777;font-size:.75rem;text-transform:uppercase;letter-spacing:.1em}.audio-note{margin:5rem auto 0;max-width:900px;border:1px solid var(--line);padding:1.4rem 1.6rem;display:flex;gap:1rem;align-items:flex-start;color:#a4a4a0}.audio-note>span{color:var(--accent);font-size:1.5rem}.audio-note p{margin:0;font-size:.84rem}.audio-note strong{color:#fff}.audio-note a{color:#fff}.photo-strip{display:grid;grid-template-columns:1.35fr .65fr 1fr;grid-template-rows:360px 280px;gap:6px;background:#000;padding:6px}.photo-strip figure{margin:0;overflow:hidden}.photo-strip img{height:100%;object-fit:cover;transition:transform .6s ease}.photo-strip figure:hover img{transform:scale(1.035)}.photo-large{grid-row:span 2}.photo-wide{grid-column:span 2}.services{background:var(--white);color:#000}.section-heading.compact{grid-template-columns:.55fr 1.45fr}.service-list{margin:1rem 0 4rem;border-top:1px solid #bbb}.service-list article{display:grid;grid-template-columns:70px .8fr 1.2fr;gap:2rem;padding:2rem 0;border-bottom:1px solid #bbb;align-items:start}.service-list span{font-size:.75rem;color:#777}.service-list h3{font-size:clamp(1.35rem,2.3vw,2.3rem);font-family:var(--display);text-transform:uppercase}.service-list p{margin:0;color:#555;max-width:620px}.about{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(2.5rem,7vw,8rem);align-items:center}.about-image{position:relative}.about-image:before{content:"";position:absolute;inset:-14px 14px 14px -14px;border:1px solid #454545;z-index:-1}.about-image img{aspect-ratio:4/5;object-fit:cover;filter:grayscale(1) contrast(1.1)}.about-copy h2{margin:1rem 0 2rem}.about-copy>p:not(.kicker){max-width:720px;color:#aaa;font-size:1.05rem}.about blockquote{font-family:var(--display);text-transform:uppercase;font-size:clamp(1.2rem,2vw,2rem);margin:2.5rem 0 0;color:var(--accent)}.contact{background:#171717}.contact h2{margin:1rem 0 4rem;max-width:1100px}.contact h2 span{color:var(--accent);-webkit-text-stroke:0}.contact-row{display:flex;align-items:center;justify-content:space-between;gap:2rem;border-top:1px solid #3c3c3c;padding-top:2rem}.contact-row>div{display:flex;flex-direction:column;align-items:flex-end}.contact-row>div a{text-decoration:none;color:#bbb}.contact-row>div a:hover{color:#fff}footer{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:2rem clamp(1.3rem,5vw,5.5rem);color:#777;font-size:.75rem}footer p{margin:0}.footer-brand img{width:34px;height:34px}.footer-brand span{color:#fff}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.marquee div{animation:none}.photo-strip img{transition:none}}
@media (max-width:900px){.site-header{height:72px;position:absolute}.menu-button{display:block}.site-header nav{display:none;position:absolute;top:72px;left:0;right:0;background:#090909;padding:1.5rem;flex-direction:column;align-items:flex-start;border-bottom:1px solid #333}.site-header nav.open{display:flex}.hero{grid-template-columns:1fr;padding-top:72px}.hero-copy{padding:4.5rem 1.3rem 3.5rem;min-height:68svh}.hero-media{min-height:58svh}.hero-media:after{background:linear-gradient(0deg,rgba(0,0,0,.65),transparent 55%)}.scroll-mark{display:none}.section-heading,.section-heading.compact{grid-template-columns:1fr;gap:1.2rem;margin-bottom:3rem}.film-grid{grid-template-columns:1fr;gap:3rem}.film-card-wide{margin-top:0}.film-card-tall{grid-row:auto}.film-card-tall video{max-height:76svh}.photo-strip{grid-template-columns:1fr 1fr;grid-template-rows:360px 240px 240px}.photo-large{grid-column:span 2;grid-row:auto}.photo-wide{grid-column:span 2}.service-list article{grid-template-columns:40px 1fr}.service-list p{grid-column:2}.about{grid-template-columns:1fr}.about-image{max-width:560px}.contact-row{align-items:flex-start;flex-direction:column}.contact-row>div{align-items:flex-start}footer{flex-direction:column;text-align:center}}
@media (max-width:560px){h1{font-size:clamp(3.3rem,18vw,5.3rem)}.hero-lede{font-size:1rem}.hero-media{min-height:50svh}.hero-stamp{width:86px;height:86px}.section{padding:5rem 1.2rem}.film-card>div{grid-template-columns:28px 1fr}.film-card>div p{grid-column:2}.photo-strip{grid-template-columns:1fr;grid-template-rows:320px 300px 320px 300px}.photo-large,.photo-wide{grid-column:auto}.service-list article{grid-template-columns:28px 1fr;gap:1rem}.brand span{font-size:.9rem}footer{padding:2rem 1rem}}

.site-footer{display:flex;flex-direction:column;justify-content:center;gap:0;padding:clamp(5rem,9vw,8rem) 1.25rem 2.25rem;text-align:center;border-top:1px solid rgba(255,255,255,.1);background:#080808}.footer-verse{margin:0 auto;max-width:880px}.footer-verse p{margin:0;color:#e8e8e3;font-size:clamp(1.05rem,2vw,1.4rem);line-height:1.7;font-weight:400}.footer-verse cite{display:block;margin-top:1.65rem;color:#bdbdb9;font-style:normal;font-size:.7rem;font-weight:700;letter-spacing:.24em;text-transform:uppercase}.footer-copyright{margin-top:clamp(3.5rem,6vw,5.5rem);color:#666;font-size:.62rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase}

@media (max-width:560px){.site-footer{padding:4.5rem 1.35rem 1.8rem}.footer-verse p{font-size:1rem;line-height:1.65}.footer-verse cite{font-size:.65rem;letter-spacing:.2em}.footer-copyright{margin-top:3.5rem}}

/* Keep portrait subjects visible in the photography gallery. */
.photo-strip{grid-template-rows:430px 340px}
.photo-strip img{object-position:center 24%}
@media (max-width:900px){.photo-strip{grid-template-rows:420px 310px 310px}}
@media (max-width:560px){.photo-strip{grid-template-rows:none;grid-auto-rows:360px}.photo-strip .photo-large{min-height:420px}}

/* Keep outlined display words visible on dark sections. */
.section-heading h2 span,.about h2 span{-webkit-text-stroke-color:#fff}
.services .section-heading h2 span{-webkit-text-stroke-color:#000}
