:root{--black:#101010;--paper:#ededE7;--yellow:#ffd600;--muted:#a2a29d;--pad:clamp(22px,4vw,72px);color-scheme:dark;font-family:Barlow,Arial,sans-serif;font-size:16px}*{box-sizing:border-box}body{margin:0;background:var(--black);color:var(--paper)}html{scroll-behavior:smooth;scroll-padding-top:86px}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a,summary{-webkit-tap-highlight-color:transparent}button{border:0}button:focus-visible,a:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--yellow);outline-offset:7px}img{display:block;width:100%}h1,h2,h3,p{margin:0}h1,h2,h3,.wordmark{font-family:'Barlow Condensed','Arial Narrow',Impact,sans-serif;font-weight:800}button{background:none}.yellow{color:var(--yellow)}.eyebrow{font-size:14px;letter-spacing:.13em;font-weight:600}.skip{position:fixed;top:-100px;left:20px;z-index:1000;padding:15px;background:var(--yellow);color:#101010}.skip:focus{top:16px}.nav{position:absolute;top:0;left:0;width:100%;z-index:10;display:flex;align-items:center;justify-content:space-between;padding:25px var(--pad);border-bottom:1px solid #ffffff2e}.wordmark{font-size:37px;line-height:.8;letter-spacing:-2px;transform:skew(-6deg)}.wordmark span{display:block;font:600 10px Barlow,Arial,sans-serif;letter-spacing:2px;margin-top:8px}.nav nav{display:flex;gap:35px;font-size:14px;font-weight:600}.nav nav span{font-size:11px;opacity:.5;margin-left:5px}.nav-contact{font-size:14px;border-bottom:1px solid #ffffff70;padding:8px 0}.nav-contact span{margin-left:25px;color:var(--yellow)}.nav a:hover{color:var(--yellow)}.hero{height:135svh;position:relative}.hero-sticky{position:sticky;top:0;height:100svh;min-height:620px;overflow:hidden;isolation:isolate}.hero-image{height:100%;object-fit:cover;object-position:center 58%;position:absolute;z-index:-3;transform:scale(var(--hero-scale,1.02));will-change:transform}.hero-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(180deg,#0008,transparent 48%,#000a),linear-gradient(90deg,#0008,transparent 75%)}.hero-top{position:absolute;top:140px;left:var(--pad);right:var(--pad);display:flex;justify-content:space-between;font-size:12px;letter-spacing:.13em}.hero-top>span:first-child{font-size:14px;text-transform:uppercase}.hero-top i,.film-corner i{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--yellow);margin-right:9px}.hero-type{position:absolute;left:var(--pad);right:var(--pad);top:26%;display:flex;align-items:flex-end;justify-content:space-between;transform:translateY(var(--hero-y,0px));opacity:var(--hero-opacity,1)}h1{font-size:clamp(110px,15.7vw,265px);line-height:.76;letter-spacing:-.025em}h1>span{display:block;animation:title-enter 1.1s cubic-bezier(.16,1,.3,1) both}h1>span:nth-child(2){animation-delay:.12s;margin-top:12px}.period{color:var(--paper)}.hero-type p{font-size:clamp(18px,1.7vw,28px);line-height:1.35;margin:0 4vw 10px 20px;animation:title-enter 1.2s .25s both}.hero-bottom{position:absolute;left:var(--pad);right:var(--pad);bottom:35px;display:flex;align-items:center;justify-content:space-between;font-size:12px;letter-spacing:.1em}.scroll-link{display:flex;align-items:center;gap:15px;font-size:14px;letter-spacing:0;line-height:1.5}.scroll-link b{font-weight:500;color:#c4c4be}.round-arrow{display:grid;place-items:center;border:1px solid #ffffff70;border-radius:50%;width:50px;height:50px;font-size:24px;transition:background .3s,color .3s}.scroll-link:hover .round-arrow{background:var(--yellow);color:#101010}.side-mark{position:absolute;right:22px;top:50%;writing-mode:vertical-rl;font-size:11px;letter-spacing:.25em;color:#fffc}.portfolio{position:relative;background:var(--paper);color:var(--black)}.portfolio-sticky{padding:32px 0 22px;overflow:hidden}.section-top{display:flex;justify-content:space-between;align-items:center;padding:0 var(--pad);margin-bottom:24px;gap:20px}.section-top h2{font-family:Barlow,Arial,sans-serif;font-size:14px;letter-spacing:.08em;font-weight:600}.section-top h2 span{color:#65655d;font-size:12px}.section-top>span{font-size:12px;letter-spacing:.07em}.mobile-hint{display:none}.filmstrip{display:flex;gap:26px;padding:0 var(--pad);overflow:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#888 transparent}.shot{flex:0 0 65vw;min-width:0;scroll-snap-align:center}.photo{display:block;width:100%;height:60svh;min-height:300px;max-height:660px;padding:0;position:relative;overflow:hidden;background:#242424}.photo img{height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.6,.2,1)}.photo:hover img{transform:scale(1.035)}.open-photo{position:absolute;right:18px;bottom:18px;width:43px;height:43px;background:var(--yellow);color:#101010;border-radius:50%;display:grid;place-items:center;font-size:24px;transition:transform .3s}.photo:hover .open-photo{transform:rotate(45deg)}.shot-caption{display:flex;justify-content:space-between;align-items:end;margin-top:15px}.shot-caption span{font-size:12px;letter-spacing:.12em}.shot-caption h3{font-size:clamp(30px,3vw,52px);line-height:1;margin-top:4px}.portfolio-bottom{display:flex;align-items:center;justify-content:space-between;padding:24px var(--pad) 0;gap:20px;font-size:12px;letter-spacing:.05em}.track-meter{height:2px;width:25%;background:#10101022}.track-meter span{display:block;width:20%;height:100%;background:#101010;transform:translateX(var(--track-progress,0%))}.text-button{font-size:14px;color:#101010;border-bottom:1px solid #101010;padding:4px 0}.text-button span{margin-left:20px}.scroll-enabled .portfolio-sticky{position:sticky;top:0;height:100svh;min-height:650px;display:flex;flex-direction:column;justify-content:center}.scroll-enabled .filmstrip{overflow:visible;transform:translate3d(var(--track-x,0px),0,0);will-change:transform}.scroll-enabled .shot{flex-basis:68vw}.scroll-enabled .photo{height:64svh;min-height:0}.film{padding:70px var(--pad);background:#101010}.film-window{position:relative;min-height:600px;height:85svh;overflow:hidden;clip-path:inset(0 var(--film-inset,0%));isolation:isolate}.film-window>img{height:100%;object-fit:cover;position:absolute;z-index:-2;filter:brightness(.65);transform:scale(var(--film-scale,1.08))}.film-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#000b,transparent),linear-gradient(0deg,#0009,transparent)}.film-content{position:absolute;inset:50px;display:flex;flex-direction:column;justify-content:center}.film-content h2{font-size:clamp(90px,12vw,180px);line-height:.8;letter-spacing:-.02em;margin:30px 0}.film-content h2 span{color:var(--yellow)}.film-info{display:flex;justify-content:space-between;align-items:center;margin-top:30px}.film-info p{font-size:20px;font-weight:600}.film-info p span{display:block;font-size:12px;letter-spacing:.1em;font-weight:400;color:#bbb;margin-top:8px}.play-button{display:flex;align-items:center;gap:16px;font-size:16px}.play-button>span{display:grid;place-items:center;width:74px;height:74px;border:1px solid #fff9;border-radius:50%;padding-left:4px;transition:.3s}.play-button:hover>span{background:var(--yellow);border-color:var(--yellow);color:#101010;transform:scale(1.08)}.film-corner{position:absolute;right:25px;top:25px;font-size:12px;letter-spacing:.2em}.film-corner i{margin-left:8px;background:#ff5e3a}.about{display:grid;grid-template-columns:1.1fr 1fr;gap:10vw;padding:65px var(--pad) 95px}.about h2{font-size:clamp(70px,8.3vw,136px);line-height:.86;margin-top:30px;letter-spacing:-.02em}.about h2 span{color:var(--yellow)}.about-copy{padding-top:45px}.about-copy>p{font-size:clamp(20px,2vw,28px);line-height:1.45;max-width:570px}.about-copy>.muted{font-size:16px;line-height:1.7;color:var(--muted);margin-top:24px}.services{margin-top:40px}.services details{border-top:1px solid #ffffff35}.services details:last-child{border-bottom:1px solid #ffffff35}.services summary{display:flex;gap:20px;align-items:center;padding:18px 0;cursor:pointer;list-style:none;font-size:18px}.services summary::-webkit-details-marker{display:none}.services summary>span{font-size:12px;color:var(--muted)}.services summary b{margin-left:auto;color:var(--yellow);font-weight:400;font-size:24px}.services details[open] summary b{transform:rotate(45deg)}.services details p{color:var(--muted);line-height:1.6;padding:0 0 20px 35px}.contact{padding:30px var(--pad) 38px;background:var(--yellow);color:#101010}.contact-top{display:flex;justify-content:space-between;font-size:12px;letter-spacing:.09em;border-bottom:1px solid #10101040;padding-bottom:25px}.contact-big{display:flex;align-items:center;justify-content:space-between;padding:45px 0}.contact-big h2{font-size:clamp(90px,15.7vw,250px);line-height:.79;letter-spacing:-.025em}.contact-big h2 span{display:block;margin-top:12px}.contact-arrow{font-family:Arial,sans-serif;font-size:clamp(110px,20vw,300px);font-weight:400;line-height:1;transition:transform .4s}.contact-big:hover .contact-arrow{transform:translate(12px,-12px)}.contact-bottom{border-top:1px solid #10101040;padding-top:25px;display:flex;justify-content:space-between;align-items:center;gap:24px}.contact-bottom p{font-size:16px;line-height:1.5}.contact-bottom>a{font-size:14px;border-bottom:1px solid #101010;padding-bottom:5px}.contact a:focus-visible{outline-color:#101010}footer{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:38px var(--pad) 55px}footer>span{font-size:12px;color:var(--muted)}footer>a:last-child{font-size:14px}.page-progress{height:3px;background:transparent;position:fixed;bottom:0;left:0;right:0;z-index:20;pointer-events:none}.page-progress span{display:block;height:100%;background:var(--yellow);width:var(--page-progress,0%)}.motion-toggle{position:fixed;bottom:12px;right:16px;z-index:15;border:1px solid #ffffff35;border-radius:30px;background:#101010dd;padding:7px 12px;color:#deded7;font-size:12px}.js-motion .reveal{opacity:.25;transform:translateY(25px);transition:opacity .7s,transform .7s}.js-motion .reveal.visible{opacity:1;transform:none}dialog{border:1px solid #ffffff30;background:#101010;color:var(--paper);padding:55px 25px 25px;max-width:96vw;max-height:94svh}dialog::backdrop{background:#000e;backdrop-filter:blur(8px)}.close-dialog{position:absolute;right:12px;top:10px;width:40px;height:40px;font-size:22px;background:#222;z-index:2;border-radius:50%}#viewer{width:min(1200px,95vw)}#viewer>img{height:75svh;object-fit:contain}#viewer>p{padding-top:15px;text-align:center;font-size:14px}#gallery-dialog{width:1250px;padding:30px}.gallery-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;padding-right:55px}.gallery-top h2{font-size:55px}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.gallery-grid button{padding:0}.gallery-grid img{aspect-ratio:4/3;object-fit:cover;transition:filter .3s}.gallery-grid button:hover img{filter:brightness(1.2)}#film-dialog{width:min(1200px,96vw)}#video-mount{aspect-ratio:16/9}#video-mount iframe{width:100%;height:100%;border:0}#film-dialog>a{display:block;text-align:center;font-size:14px;margin-top:20px}body.modal-open{overflow:hidden}@keyframes title-enter{from{opacity:0;transform:translateY(65px) rotate(2deg);clip-path:inset(100% 0 0)}to{opacity:1;transform:none;clip-path:inset(0)}}
@media(min-width:1700px){.hero-type{top:29%}}
@media(max-width:900px){.nav nav{gap:18px}.nav-contact{font-size:12px}.hero-top>span:last-child{display:none}.hero-type{top:32%}.hero-type p{font-size:18px}.hero-sign{display:none}.about{gap:6vw}.about h2{font-size:80px}.shot{flex-basis:80vw}.film-content{inset:35px}.film-content h2{font-size:110px}}
@media(max-width:700px){html{scroll-padding-top:20px}.nav{padding:24px var(--pad)}.wordmark{font-size:32px}.nav nav{display:none}.nav-contact{font-size:13px}.nav-contact span{margin-left:12px}.hero{height:100svh}.hero-sticky{min-height:620px}.hero-top{top:110px}.hero-top>span:first-child{font-size:11px}.hero-type{top:27%;display:block}.hero-type h1{font-size:clamp(105px,25.5vw,175px)}.hero-type p{margin:30px 0 0;font-size:18px}.hero-image{object-position:43% center}.hero-shade{background:linear-gradient(180deg,#0007,#0002 50%,#0008)}.side-mark{display:none}.hero-bottom{bottom:26px}.frame-mark{font-size:10px}.section-top{padding-top:8px}.section-top h2{font-size:12px}.section-top>span{font-size:10px}.desktop-hint{display:none}.mobile-hint{display:inline}.filmstrip{gap:14px}.shot{flex-basis:85vw}.photo{height:48svh;min-height:270px}.shot-caption h3{font-size:34px}.portfolio-bottom{padding-top:24px}.portfolio-bottom>span{display:none}.track-meter{width:35%}.film{padding:30px 14px}.film-window{height:70svh;min-height:500px;clip-path:none}.film-content{inset:25px}.film-content h2{font-size:clamp(85px,21vw,140px)}.film-info{align-items:flex-start;gap:25px;flex-direction:column;margin-top:15px}.play-button>span{height:55px;width:55px}.about{display:block;padding:35px var(--pad) 55px}.about h2{font-size:clamp(80px,19vw,130px)}.about-copy{padding-top:30px}.about-copy>p{font-size:21px}.about-copy>.muted{font-size:16px}.contact-top{font-size:10px;gap:18px}.contact-big{padding:40px 0}.contact-big h2{font-size:23vw}.contact-arrow{font-size:22vw}.contact-bottom{align-items:flex-start;flex-direction:column}.contact-bottom p{font-size:15px}footer{flex-wrap:wrap;padding:30px var(--pad) 60px}footer>span{font-size:10px}footer>a:last-child{width:100%;font-size:13px}.gallery-grid{grid-template-columns:repeat(2,1fr);gap:10px}#gallery-dialog{padding:22px 14px}.gallery-top h2{font-size:40px}#viewer>img{height:65svh}.motion-toggle{font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.hero{height:100svh}.hero-image,.hero-type,.film-window>img{transform:none!important}.hero-type{opacity:1!important}}
.scroll-enabled .desktop-hint{display:inline}.scroll-enabled .mobile-hint{display:none}
@media(max-width:900px){.scroll-enabled .shot{flex-basis:85vw}.scroll-enabled .portfolio-sticky{min-height:0}.scroll-enabled .photo{height:57svh}}
.reduced-motion{scroll-behavior:auto}.reduced-motion *{animation:none!important;transition:none!important}.reduced-motion .hero{height:100svh}.reduced-motion .hero-type{opacity:1!important;transform:none!important}.reduced-motion .hero-image,.reduced-motion .film-window>img{transform:none!important}.reduced-motion .film-window{clip-path:none!important}.reduced-motion .reveal{opacity:1;transform:none}

/* The entire site is one horizontal canvas; vertical input moves the camera right. */
html:has(.horizontal-site){overflow-x:clip;scroll-padding:0}
.horizontal-site{overflow-x:clip}
.horizontal-site .nav{position:fixed;height:86px;padding-top:18px;padding-bottom:18px;background:#101010eF;backdrop-filter:blur(12px)}
.horizontal-site main{position:fixed;top:0;left:0;display:flex;align-items:stretch;width:max-content;height:100dvh;will-change:transform}
.horizontal-site main>section{position:relative;flex-shrink:0;width:100vw;height:100dvh;margin:0;overflow:hidden}
.horizontal-site .hero-sticky{position:relative;height:100dvh;min-height:0}
.horizontal-site .hero-type{top:29%;transform:none;opacity:1}
.horizontal-site h1{font-size:min(16vw,29dvh);line-height:.8}
.horizontal-site .hero-top{top:115px}
.horizontal-site .hero-bottom{bottom:40px}
.horizontal-site .portfolio{width:max-content;padding:0}
.horizontal-site .portfolio-sticky{position:relative;display:flex;flex-direction:column;justify-content:center;height:100%;padding:106px 0 25px;overflow:visible}
.horizontal-site .section-top{width:100vw;margin-bottom:18px}
.horizontal-site .filmstrip{width:max-content;overflow:visible;transform:none;scroll-snap-type:none;gap:24px}
.horizontal-site .shot{flex:0 0 auto;width:62vw}
.horizontal-site .photo{height:57dvh;min-height:0;max-height:none}
.horizontal-site .shot-caption h3{font-size:min(4vw,6dvh)}
.horizontal-site .portfolio-bottom{width:100vw;padding-top:18px}
.horizontal-site .track-meter{display:none}
.horizontal-site .desktop-hint{display:inline}
.horizontal-site .mobile-hint{display:none}
.horizontal-site .film{padding:106px 22px 22px}
.horizontal-site .film-window{height:100%;min-height:0;clip-path:none}
.horizontal-site .film-content{inset:35px}
.horizontal-site .film-content h2{font-size:min(12vw,22dvh);margin:22px 0}
.horizontal-site .film-info{margin-top:12px}
.horizontal-site .about{padding:120px var(--pad) 45px;gap:6vw;align-items:center;overflow-y:auto;scrollbar-width:thin}
.horizontal-site .about h2{font-size:min(8vw,16dvh)}
.horizontal-site .about-copy{padding-top:0}
.horizontal-site .about-copy>p{font-size:clamp(18px,1.8vw,25px)}
.horizontal-site .about-copy>.muted{font-size:16px;margin-top:16px}
.horizontal-site .services{margin-top:20px}
.horizontal-site .services summary{padding:13px 0}
.horizontal-site .contact{display:flex;flex-direction:column;justify-content:space-between;padding:110px var(--pad) 32px;overflow-y:auto;scrollbar-width:thin}
.horizontal-site .contact-top{padding-bottom:15px}
.horizontal-site .contact-big{padding:20px 0}
.horizontal-site .contact-big h2{font-size:min(15vw,24dvh)}
.horizontal-site .contact-arrow{font-size:min(20vw,32dvh)}
.horizontal-site .contact-bottom{padding-top:16px}
.horizontal-site .contact footer{padding:22px 0 0;gap:20px;color:#101010}
.horizontal-site .contact footer>span{color:#454019}
.horizontal-site .reveal{opacity:1;transform:none}
.horizontal-site .side-mark{display:none}
@media(max-width:900px){
 .horizontal-site .hero-type{top:30%}
 .horizontal-site h1{font-size:min(24vw,25dvh)}
 .horizontal-site .hero-type p{font-size:18px}
 .horizontal-site .shot{width:85vw}
 .horizontal-site .shot-caption h3{font-size:min(8vw,6dvh)}
 .horizontal-site .film-content h2{font-size:min(21vw,22dvh)}
 .horizontal-site .about{display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;padding-top:110px;gap:25px}
 .horizontal-site .about h2{font-size:min(15vw,12dvh);margin-top:18px}
 .horizontal-site .about h2 br:last-of-type{display:none}
 .horizontal-site .about-copy>p{font-size:18px}
 .horizontal-site .about-copy>.muted{font-size:15px}
 .horizontal-site .contact-big h2{font-size:min(23vw,21dvh)}
 .horizontal-site .contact-arrow{font-size:23vw}
 .horizontal-site .contact footer{padding-top:20px}
 .horizontal-site .contact footer>a:last-child{width:auto}
}
@media(max-height:550px){
 .horizontal-site .hero-top{top:96px}.horizontal-site .hero-type{top:36%}
 .horizontal-site .hero-bottom{bottom:15px}.horizontal-site .hero-type p{font-size:16px}
 .horizontal-site .portfolio-sticky{padding-top:96px}.horizontal-site .photo{height:43dvh}
 .horizontal-site .film-content h2{font-size:19dvh;margin:10px 0}.horizontal-site .film-content{inset:20px}
 .horizontal-site .film-info{flex-direction:row;align-items:center}.horizontal-site .play-button>span{width:45px;height:45px}
}

/* Reversible cinematic transitions, driven by the horizontal camera position. */
.horizontal-site.cinematic-motion .hero-type{
 transform:translate3d(var(--title-drift,0px),0,0) scale(var(--title-zoom,1));
 transform-origin:35% 50%;opacity:var(--title-fade,1);filter:blur(var(--title-blur,0px));will-change:transform,opacity;
}
.horizontal-site.cinematic-motion .hero-image{will-change:transform}
.horizontal-site.cinematic-motion .hero-bottom{opacity:var(--title-fade,1)}
.horizontal-site.cinematic-motion .photo{clip-path:inset(var(--shot-inset,0%) 0);transition:none}
.horizontal-site.cinematic-motion .photo img{transform:translate3d(var(--shot-shift,0px),0,0) scale(var(--shot-zoom,1.035));transition:none}
.horizontal-site.cinematic-motion .shot-caption{transform:translateY(var(--caption-y,0px));transition:none}
.horizontal-site.cinematic-motion .film-window{
 clip-path:polygon(calc(var(--scene-enter,0)*22%) calc(var(--scene-enter,0)*12%),100% 0,calc(100% - var(--scene-enter,0)*12%) 100%,0 calc(100% - var(--scene-enter,0)*10%));
 transform:scale(calc(1 - var(--scene-enter,0)*.08));transform-origin:right center;
}
.horizontal-site.cinematic-motion .film-window>img{transform:scale(calc(1 + var(--scene-enter,0)*.23 + var(--scene-exit,0)*.13))}
.horizontal-site.cinematic-motion .film-content h2{
 transform:translateX(calc(var(--scene-enter,0)*100px + var(--scene-exit,0)*120px)) scale(calc(1 + var(--scene-exit,0)*.5));
 transform-origin:left center;opacity:var(--scene-opacity,1);
}
.horizontal-site.cinematic-motion .film-info{transform:translateY(calc(var(--scene-enter,0)*55px));opacity:var(--scene-opacity,1)}
.horizontal-site.cinematic-motion .about-intro{
 transform:translateX(calc(var(--scene-enter,0)*85px)) rotate(calc(var(--scene-enter,0)*-5deg));
 transform-origin:left bottom;opacity:var(--scene-opacity,1);
}
.horizontal-site.cinematic-motion .about-copy{transform:translateY(calc(var(--scene-enter,0)*65px));opacity:var(--scene-opacity,1)}
.horizontal-site.cinematic-motion .contact-big h2{
 transform:translateX(calc(var(--scene-enter,0)*90px)) scale(calc(1.0 - var(--scene-enter,0)*.27)) rotate(calc(var(--scene-enter,0)*-6deg));
 transform-origin:left center;opacity:var(--scene-opacity,1);
}
.horizontal-site.cinematic-motion .contact-arrow{transform:rotate(calc(var(--scene-enter,0)*-75deg)) scale(calc(1 - var(--scene-enter,0)*.35))}
.horizontal-site.cinematic-motion .contact-bottom{transform:translateY(calc(var(--scene-enter,0)*40px));opacity:var(--scene-opacity,1)}
@media(prefers-reduced-motion:reduce){
 .horizontal-site.cinematic-motion .hero-type{opacity:1;filter:none}
}

/* Explicit page-level motion choice takes precedence over the initial OS hint. */
html.motion-opt-in .horizontal-site.cinematic-motion .hero-type{
 transform:translate3d(var(--title-drift,0px),0,0) scale(var(--title-zoom,1))!important;
 opacity:var(--title-fade,1)!important;filter:blur(var(--title-blur,0px));
}
html.motion-opt-in .horizontal-site.cinematic-motion .hero-image{transform:scale(var(--hero-scale,1.02))!important}
html.motion-opt-in .horizontal-site.cinematic-motion .film-window>img{transform:scale(calc(1 + var(--scene-enter,0)*.23 + var(--scene-exit,0)*.13))!important}

/* Dark gallery and straightforward editorial headings. */
.horizontal-site .portfolio{background:#141414;color:var(--paper);border-left:1px solid #ffffff12;border-right:1px solid #ffffff12}
.horizontal-site .portfolio .section-top h2 span{color:#aaa99f}
.horizontal-site .portfolio .section-top>span,.horizontal-site .portfolio-bottom>span{color:#aaa99f}
.horizontal-site .portfolio .text-button{color:var(--paper);border-color:#ffffff70}
.horizontal-site .portfolio .text-button:hover{color:var(--yellow);border-color:var(--yellow)}
.horizontal-site .shot-caption>span,.horizontal-site .shot-caption>div>span{color:#b3b3ab}
.horizontal-site .film-content h2{font-size:min(10vw,20dvh);line-height:.88}
.horizontal-site .contact-big h2{font-size:min(7.6vw,12.5dvh);line-height:.98;letter-spacing:-.015em}
.horizontal-site .contact-big h2 span{margin-top:0}
.horizontal-site .contact-arrow{font-size:min(14vw,25dvh)}
@media(max-width:900px){
 .horizontal-site .film-content h2{font-size:min(16vw,18dvh)}
 .horizontal-site .contact-big h2{font-size:min(10.4vw,11dvh)}
 .horizontal-site .contact-arrow{font-size:15vw}
}

/* Preserve the composition of the new photographs, including vertical frames. */
.horizontal-site .shot{width:min(82vw,calc(57dvh * var(--photo-ratio)));}
.horizontal-site .shot .photo{height:auto;aspect-ratio:var(--photo-ratio);}
.horizontal-site .shot .photo img{height:100%;object-fit:contain;}
.horizontal-site.cinematic-motion .shot .photo{clip-path:none;transform:translateY(var(--caption-y,0px));}
.horizontal-site.cinematic-motion .shot .photo img{transform:none;}
.horizontal-site .shot-caption h3{font-size:clamp(22px,2.8vw,42px);}
.gallery-grid{align-items:start;}
.gallery-grid img{aspect-ratio:auto;height:auto;}
.horizontal-site .hero-image{object-position:50% 60%;}
.horizontal-site .hero-shade{background:linear-gradient(180deg,#0005,transparent 45%,#0005);}
@media(max-width:700px){.horizontal-site .shot{width:min(85vw,calc(57dvh * var(--photo-ratio)));}.horizontal-site .hero-image{object-position:52% 65%;}}

/* Edge-to-edge photographs without visible captions. */
.horizontal-site .portfolio{border:0}
.horizontal-site .portfolio-sticky{height:100dvh;padding:0;justify-content:flex-start}
.horizontal-site .portfolio .section-top{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.horizontal-site .filmstrip{height:100dvh;padding:0;gap:6px}
.horizontal-site .shot{width:calc(100dvh * var(--photo-ratio));height:100dvh}
.horizontal-site .shot .photo{height:100dvh;max-height:none;width:100%;aspect-ratio:var(--photo-ratio)}
.horizontal-site.cinematic-motion .shot .photo{transform:none;clip-path:none}
.horizontal-site .portfolio-bottom{position:absolute;bottom:25px;left:22px;width:auto;padding:0;z-index:2}
.horizontal-site .portfolio-bottom>span{display:none}
.horizontal-site .portfolio-bottom .text-button{padding:11px 16px;background:#101010d9;border:1px solid #ffffff50;border-radius:3px}
.horizontal-site .open-photo{bottom:24px;right:24px}
.horizontal-site.gallery-view .nav{opacity:0;pointer-events:none;transform:translateY(-100%)}
.horizontal-site .nav{transition:opacity .25s,transform .25s}
.horizontal-site.gallery-view .nav:focus-within{opacity:1;pointer-events:auto;transform:none}
#viewer{padding:0;width:96vw;background:#050505}
#viewer>img{height:92dvh;object-fit:contain}

/* Typography and contact composition adapted from the supplied reference. */
h1,h2,h3{font-family:'Bebas Neue','Barlow Condensed',Impact,sans-serif;font-weight:400;letter-spacing:0}
.horizontal-site h1{font-size:min(18vw,30dvh);line-height:.87;letter-spacing:0}
.horizontal-site .hero-type p,.about-copy>p,.contact-intro>p{font-family:'Barlow Condensed',Arial,sans-serif;letter-spacing:.025em}
.nav nav,.nav-contact,.eyebrow,.text-button,.services summary{font-family:'Barlow Condensed',Arial,sans-serif;text-transform:uppercase;letter-spacing:.12em}
.nav nav{font-size:16px;font-weight:500}.nav-contact{font-size:14px;background:var(--yellow);color:#101010;padding:12px 24px;border:0;clip-path:polygon(0 0,calc(100% - 10px) 0,100% 10px,100% 100%,10px 100%,0 calc(100% - 10px))}
.nav-contact span{color:inherit}.nav .nav-contact:hover{color:#101010;background:#fff}
.eyebrow{color:var(--yellow);font-weight:500;font-size:14px;letter-spacing:.25em}
.horizontal-site .about-copy>p{font-size:24px;line-height:1.5}.horizontal-site .about-copy>.muted{font-family:Barlow,Arial,sans-serif;font-size:16px;letter-spacing:0;line-height:1.7}
.services summary{font-size:20px;letter-spacing:.06em}
.horizontal-site .contact{background:#080808;color:var(--paper);padding:115px var(--pad) 28px;justify-content:flex-start;gap:35px}
.contact-layout{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1fr);gap:clamp(30px,6vw,100px);width:100%;max-width:1300px;margin:auto;align-items:center}
.contact-intro h2{font-size:clamp(85px,10vw,155px);line-height:.87;margin:25px 0 20px}.contact-intro h2 span{color:var(--yellow)}
.contact-intro>p{font-size:21px;line-height:1.6;color:#aaa;max-width:410px}
.contact-facebook{display:inline-block;margin-top:30px;font-family:'Barlow Condensed',sans-serif;font-size:24px;font-weight:600}.contact-facebook>span{display:block;font-size:13px;font-weight:400;letter-spacing:.24em;color:var(--yellow);margin-bottom:6px}
.enquiry-form{display:flex;flex-direction:column;gap:14px;min-width:0}
.enquiry-form label{display:flex;flex-direction:column;gap:7px;font-family:'Barlow Condensed',sans-serif;font-size:14px;letter-spacing:.07em;color:#c9c9c4}
.form-pair{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.enquiry-form input,.enquiry-form textarea,.enquiry-form select{width:100%;min-width:0;border:1px solid #ffffff22;background:#ffffff06;color:var(--paper);font:400 16px Barlow,Arial,sans-serif;padding:13px 15px;border-radius:0;outline:none;transition:border-color .2s,background .2s}
.enquiry-form select option{background:#141414;color:var(--paper)}
.enquiry-form textarea{resize:vertical;min-height:92px;line-height:1.5}
.enquiry-form input::placeholder,.enquiry-form textarea::placeholder{color:#85857f;font-size:14px}
.enquiry-form input:focus,.enquiry-form textarea:focus,.enquiry-form select:focus{border-color:var(--yellow);background:#ffd60009}
.form-submit{width:100%;display:flex;justify-content:center;gap:25px;background:var(--yellow);color:#101010;font:600 16px 'Barlow Condensed',sans-serif;letter-spacing:.18em;text-transform:uppercase;padding:17px 20px;clip-path:polygon(0 0,calc(100% - 12px) 0,100% 12px,100% 100%,12px 100%,0 calc(100% - 12px))}
.form-submit:hover{background:#fff}.form-note,#form-status{font-size:13px;color:#a9a9a3;line-height:1.5;letter-spacing:0}
#message-result{border-top:1px solid #ffffff30;padding-top:16px}.draft-actions{display:flex;align-items:center;gap:22px;margin-top:12px;font-size:14px}.draft-actions button{padding:10px 14px;border:1px solid #ffd60070;color:var(--yellow)}
.horizontal-site .contact footer{width:100%;margin-top:auto;padding-top:23px;border-top:1px solid #ffffff1a;color:var(--paper);flex-shrink:0}.horizontal-site .contact footer>span{color:#999}
.horizontal-site .contact a:focus-visible{outline-color:var(--yellow)}
.horizontal-site.cinematic-motion .contact-intro h2{transform:translateX(calc(var(--scene-enter,0)*65px)) scale(calc(1 - var(--scene-enter,0)*.15));opacity:var(--scene-opacity,1)}
.horizontal-site.cinematic-motion .enquiry-form{transform:translateY(calc(var(--scene-enter,0)*30px))}
@media(max-width:900px){.horizontal-site h1{font-size:min(27vw,27dvh)}.contact-layout{grid-template-columns:1fr;gap:30px;align-items:start;margin:0}.contact-intro h2{font-size:85px;margin:15px 0}.contact-intro>p{font-size:19px}.contact-facebook{margin-top:15px;font-size:20px}.horizontal-site .contact{padding-top:110px;gap:30px}.horizontal-site .about-copy>p{font-size:21px}.nav-contact{padding:11px 16px}.contact-intro h2 br{display:none}.contact-intro h2 span::before{content:' '}}
@media(max-width:440px){.form-pair{grid-template-columns:1fr}.contact-intro h2{font-size:70px}}
@media(max-height:740px) and (min-width:901px){.contact-layout{align-items:start}.contact-intro h2{font-size:100px}.enquiry-form{gap:10px}.enquiry-form input,.enquiry-form select{padding:10px 13px}.enquiry-form textarea{min-height:75px}.horizontal-site .contact{padding-top:105px;gap:22px}}

/* Reels: typographic covers, not substitute video thumbnails. */
.horizontal-site .reels-section{background:#0a0a0a;display:flex;flex-direction:column;padding:110px var(--pad) 45px;gap:18px;color:#f2f0e9}
.reels-heading,.reels-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-shrink:0}
.reels-heading h2{font:400 clamp(35px,5vw,76px)/1 'Bebas Neue',sans-serif;margin:9px 0 0}.reels-heading h2 span{color:var(--yellow)}
.reels-stage{position:relative;flex:1;min-height:160px;overflow:hidden;isolation:isolate}
#reels-track{position:absolute;inset:0;perspective:1000px}
.reel-card{--slot:0;position:absolute;top:2%;left:50%;height:96%;aspect-ratio:9/16;background:linear-gradient(155deg,#252525,#0e0e0e 65%);border:1px solid #ffffff20;color:#eee;overflow:hidden;transform:translateX(calc(-50% + var(--slot)*108%)) scale(.86);opacity:.35;transition:transform .6s cubic-bezier(.2,.8,.2,1),opacity .5s,border-color .5s;display:flex;flex-direction:column;justify-content:space-between;padding:22px;text-align:left;cursor:pointer}
.reel-card.is-active{transform:translateX(-50%) scale(1);opacity:1;border-color:#ffd60088;box-shadow:0 15px 65px #0009;z-index:2}
.reel-format{font:500 11px 'Barlow Condensed',sans-serif;letter-spacing:.2em;z-index:1}
.reel-art{position:absolute;inset:10% -10%;font:400 clamp(160px,35dvh,360px)/.75 'Bebas Neue',sans-serif;letter-spacing:-.05em;color:#ffffff09;transform:rotate(-12deg);pointer-events:none}.reel-art span{display:block;text-align:right;color:#ffd60015}
.reel-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;border:1px solid #ffffff70;border-radius:50%;width:66px;height:66px;padding-left:4px;background:#ffffff08}.is-active .reel-play{background:var(--yellow);color:#111;border-color:var(--yellow)}
.reel-card-foot{display:flex;justify-content:space-between;width:100%;font:500 13px 'Barlow Condensed',sans-serif;letter-spacing:.16em}
.reels-controls{display:flex;gap:22px;align-items:center;font:500 14px 'Barlow Condensed',sans-serif;letter-spacing:.15em}.reels-controls button{border:1px solid #ffffff30;width:44px;height:44px;border-radius:50%}.reels-controls button:hover{background:var(--yellow);color:#111}
#reel-dialog{background:#101010;color:#ddd;width:min(430px,94vw);max-height:94dvh;padding:44px 16px 16px;border:1px solid #ffffff30}#reel-mount{height:min(70dvh,640px);width:100%;background:#080808}#reel-mount iframe{width:100%;height:100%;border:0}#reel-dialog p{font-size:13px;line-height:1.5;margin:12px 0 0}#reel-source{color:var(--yellow);text-decoration:underline}
.reel-card:focus-visible,.reels-controls button:focus-visible{outline:2px solid var(--yellow);outline-offset:-4px}
.reduced-motion .reel-card{transition:none}
@media(max-width:600px){.horizontal-site .reels-section{padding:100px 20px 55px;gap:14px}.reels-heading{align-items:flex-start}.reels-heading h2{font-size:36px;max-width:220px}.reels-heading .text-button{font-size:12px;max-width:90px}.reel-card{max-width:74vw;padding:16px}.reels-bottom{gap:10px}.reels-bottom .text-button{font-size:13px}.reels-controls{gap:10px}}

.reel-preview{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
.reel-art{display:none}.reel-format,.reel-card-foot{position:relative;z-index:1;text-shadow:0 2px 8px #000}.reel-card::after{content:'';position:absolute;inset:0;background:linear-gradient(#0007,transparent 25%,transparent 75%,#0009);pointer-events:none}.reel-play{z-index:2}.reel-card{opacity:.78}.reel-card.is-active{opacity:1}.extra-reel{align-self:center;font-size:12px;color:#bbb;text-decoration:underline}.horizontal-site .reels-section{gap:12px}

/* Brand, panel scroll ownership and a native mobile document. */
.wordmark{display:block;width:145px;height:50px;overflow:hidden;transform:none;flex-shrink:0}.wordmark img{width:145px;max-width:none;transform:translateY(-47px)}
.hero-logo{width:min(580px,65vw);height:min(190px,22vw);overflow:hidden;line-height:1}.hero-logo img{width:100%;transform:translateY(-30%);mix-blend-mode:screen}.hero-logo{mix-blend-mode:screen}
.horizontal-site .panel-arriving{overflow-y:hidden!important}
.horizontal-site .about h2 span{display:inline-block}.horizontal-site .about h2 br+span::before{content:' '}
.form-honey{display:none!important}.email-direct{font-size:14px;color:var(--yellow)}
#reels-track{touch-action:pan-y}
@media(max-width:760px){
 html:has(.horizontal-site){scroll-padding-top:82px}.horizontal-site main{position:relative;display:block;width:100%;height:auto;transform:none!important;will-change:auto}
 .horizontal-site main>section{width:100%;height:auto;min-height:0;overflow:visible;scroll-margin-top:82px}
 .horizontal-site .nav{height:76px;padding:10px 18px}.nav nav{display:none}.nav-contact{font-size:12px;padding:10px 12px}.nav-contact span{margin-left:8px}
 .horizontal-site .hero,.horizontal-site .hero-sticky{height:100svh;min-height:540px}.horizontal-site .hero-top{top:105px}.hero-top>span:last-child{display:none}
 .horizontal-site .hero-type{top:34%;left:22px;right:22px;transform:none!important;opacity:1!important;filter:none!important}.hero-logo{width:90vw;height:29vw}.horizontal-site .hero-image{transform:none!important}.hero-sign,.frame-mark{display:none}
 .horizontal-site .hero-bottom{bottom:35px}.scroll-link b{font-size:0}.scroll-link span:last-child{font-size:0}.scroll-link span:last-child::after{content:'Zobacz portfolio ↓';font-size:15px}
 .horizontal-site .portfolio{width:100%;height:auto}.horizontal-site .portfolio-sticky{height:auto;padding:0;display:block}.horizontal-site .filmstrip{display:flex;width:100%;overflow-x:auto;overflow-y:hidden;gap:10px;scroll-snap-type:x mandatory;transform:none!important;padding:0}
 .horizontal-site .shot{width:auto;flex:0 0 88vw;height:75svh;scroll-snap-align:center}.horizontal-site .photo{width:100%;height:100%;clip-path:none!important}.horizontal-site .photo img{height:100%;object-fit:contain;transform:none!important}
 .horizontal-site .portfolio-bottom{position:relative!important;inset:auto!important;width:100%;padding:18px 22px;transform:none!important}.horizontal-site .portfolio-bottom>span{display:none}
 .horizontal-site .reels-section{height:92svh;min-height:580px;padding:35px 20px;overflow:hidden}.reels-heading h2{font-size:38px}.reel-card{max-width:72vw}
 .horizontal-site .about,.horizontal-site .contact{height:auto;overflow:visible!important;padding:55px 22px;gap:24px}.horizontal-site .about h2{font-size:64px;line-height:1.05}.horizontal-site .about h2 br{display:block}.horizontal-site .about-intro,.horizontal-site .contact-intro h2,.horizontal-site .enquiry-form{transform:none!important;opacity:1!important}
 .contact-layout{display:block}.enquiry-form{margin-top:30px}.contact-intro h2{font-size:70px}.horizontal-site .contact footer{margin-top:35px;flex-wrap:wrap}.horizontal-site .contact footer>span{font-size:10px}.gallery-grid{grid-template-columns:repeat(2,1fr)}
 .motion-toggle{font-size:10px;bottom:8px}.hero-bottom{opacity:1!important}
}

/* Six equally visible reels in two rows. */
.horizontal-site .reels-section{gap:10px;padding-top:100px;padding-bottom:28px}
.reels-heading h2{font-size:clamp(30px,4vw,56px)}
.reels-stage{container-type:size;overflow:visible;min-height:0}
#reels-track{position:absolute;inset:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:12px;width:min(100%,calc((100cqh - 12px)*.84375 + 24px));height:100%;margin:auto;perspective:none}
.reel-card,.reel-card.is-active{position:relative;inset:auto;width:100%;height:100%;max-width:none;aspect-ratio:9/16;transform:none;opacity:1;padding:10px;border:1px solid #ffffff25;box-shadow:none;transition:border-color .2s,translate .2s}
.reel-card:hover{border-color:var(--yellow);translate:0 -2px}.reel-format,.reel-card-foot{display:none}.reel-card::after{background:none}.reel-play,.is-active .reel-play{width:38px;height:38px;font-size:12px;background:#08080899;color:white;border:1px solid #ffffff99;top:auto;bottom:10px;transform:translateX(-50%)}
.reel-card:hover .reel-play{background:var(--yellow);color:#111}.reels-bottom{justify-content:flex-end}.reels-heading .text-button,.reels-bottom .text-button{color:#eee}.hero-logo,.hero-logo img{mix-blend-mode:normal}
@media(max-width:760px){.horizontal-site .reels-section{height:auto;min-height:0;padding:35px 18px}.reels-stage{container-type:normal;height:auto;flex:none}#reels-track{position:relative;inset:auto;width:100%;height:auto;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(2,auto);gap:8px}.reel-card{height:auto;max-width:none;aspect-ratio:9/16;padding:0}.reel-play{width:30px;height:30px;font-size:10px;bottom:6px}.reels-heading h2{font-size:32px}.reels-bottom{margin-top:8px}}

.video-portfolio{display:grid;grid-template-columns:1.1fr 1fr;gap:30px;flex:1;min-height:0;align-items:stretch}.video-portfolio .reels-stage{height:100%}.wiking-card{position:relative;align-self:center;width:100%;aspect-ratio:16/9;padding:0;overflow:hidden;border:1px solid #ffffff30;text-align:left}.wiking-card img{height:100%;object-fit:cover;opacity:.7;transition:scale .4s}.wiking-card:hover img{scale:1.04}.wiking-card>span{position:absolute;inset:auto 20px 18px;font:400 clamp(25px,3vw,48px)/1 "Bebas Neue",sans-serif;text-shadow:0 2px 12px #000}.wiking-card small{display:block;font:500 11px Barlow,sans-serif;letter-spacing:.14em;margin-top:9px}.beyond-copy{font-size:17px!important;margin-top:18px}.beyond-link{display:inline-block;color:var(--yellow);border-bottom:1px solid #ffd60066;padding:8px 0;margin-top:14px}.contact-intro h2{font-size:clamp(45px,6vw,92px)}#car-field[hidden]{display:none}.gallery-grid img{object-fit:contain;background:#080808}@media(max-width:760px){.video-portfolio{display:flex;flex-direction:column;gap:20px;flex:none}.video-portfolio .reels-stage{height:auto}.wiking-card{order:2}.contact-intro h2{font-size:48px!important}.contact-intro h2 br{display:block!important}}

.long-films{min-height:0;display:flex;flex-direction:column;justify-content:center;gap:14px}.long-films .wiking-card{width:auto;height:calc((100% - 14px)/2);max-width:100%;aspect-ratio:16/9;flex-shrink:1}.long-films .wiking-card>span{font-size:clamp(22px,2.2vw,35px)}@media(max-width:760px){.long-films{order:2;gap:16px}.long-films .wiking-card{width:100%;height:auto}}

.hero-accessible-title{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important}
