:root{--paper:#f8f7f2;--ink:#2c2d56;--yellow:#ffdd08;--muted:#6c6d7d}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid #ae8d00;outline-offset:6px}.wrap{width:min(1280px,calc(100% - 112px));margin:auto}header{height:108px;padding:0 56px;display:flex;align-items:center;gap:60px;border-bottom:1px solid #2c2d561c}header .brand{width:170px;height:82px;overflow:hidden;display:flex;align-items:center}.brand img{width:100%;height:100%;object-fit:cover}nav{display:flex;gap:36px;margin-left:auto;font-size:14px}nav a:hover{border-bottom:1px solid}.languages{display:flex;gap:8px;font-size:12px}.languages button{border:0;background:none;padding:7px}.languages button[aria-pressed=true]{font-weight:700;border-bottom:2px solid var(--yellow)}.hero{padding-top:75px}.eyebrow{font-size:11px;font-weight:600;letter-spacing:.14em;display:flex;align-items:center;gap:10px}.eyebrow i{width:7px;height:7px;background:var(--yellow);border-radius:50%}h1,h2,h3,p{margin:0}h1{font:500 clamp(44px,6.7vw,96px)/1.08 Manrope,sans-serif;letter-spacing:-.065em;margin:30px 0}em{font-style:normal;position:relative;display:inline-block;z-index:0}em:after{content:'';position:absolute;bottom:3%;left:-2%;width:104%;height:17%;background:var(--yellow);z-index:-1;transform:rotate(-2deg)}.hero-bottom{display:flex;justify-content:space-between;align-items:center;margin:30px 0 42px}p{font-size:16px;line-height:1.7;color:var(--muted)}.round-link{display:flex;gap:24px;align-items:center;font-size:13px}.round-link b{border:1px solid #2c2d5640;border-radius:50%;width:46px;height:46px;display:grid;place-items:center;font-size:22px;font-weight:400}.hero-art{height:480px;position:relative;overflow:hidden;background:linear-gradient(165deg,#d9d9cd,#c3ccd0 48%,#a6b0b0)}.sun{position:absolute;width:180px;height:180px;border-radius:50%;background:#f1eacb;filter:blur(1px);left:65%;top:42px}.mountain{position:absolute;inset:10% -5% -10%;clip-path:polygon(0 80%,12% 45%,21% 59%,37% 9%,46% 37%,55% 20%,72% 69%,85% 28%,100% 62%,100% 100%,0 100%);background:linear-gradient(140deg,#b7bec0,#667d85)}.mountain.front{transform:translate(-10%,27%) scale(1.2);background:linear-gradient(120deg,#657c7c,#273b4f)}.frame-label{position:absolute;top:24px;left:26px;font-size:9px;letter-spacing:.13em;color:#293d4a;background:#f8f7f2b8;padding:9px 12px}.art-word{position:absolute;bottom:44px;left:40px;color:#fff;font-size:clamp(24px,4vw,50px);font-family:Manrope;letter-spacing:-.04em;max-width:450px}.below-art{display:flex;justify-content:space-between;padding-top:17px;font-size:11px;letter-spacing:.05em}.projects{padding:110px 0}.section-top{display:flex;justify-content:space-between;align-items:start;margin-bottom:55px}.section-top p{font-size:24px;line-height:1.4;color:var(--ink);letter-spacing:-.03em}.project-layout{display:grid;grid-template-columns:230px 1fr;gap:65px}aside{position:sticky;top:40px;align-self:start;display:flex;flex-direction:column;gap:8px}aside a{padding:13px 0;color:var(--muted);font-size:13px}aside a.active{color:var(--ink);font-weight:700}aside a.active:before{content:'—';color:#b09500;margin-right:12px}.project{scroll-margin-top:35px;margin-bottom:70px}.thumbnail{width:100%;aspect-ratio:16/9;position:relative;overflow:hidden;border:0;display:block;text-align:left;background:#d8d9d2}.thumbnail:before{content:'';position:absolute;inset:15% 15%;border:1px solid #ffffff60;transform:rotate(-13deg);box-shadow:40px 40px 0 #ffffff12}.thumbnail.v2{background:linear-gradient(130deg,#b8c3bc,#e9e4d4)}.thumbnail.v3{background:linear-gradient(120deg,#c9a788,#64535b)}.thumbnail.v4{background:radial-gradient(ellipse at 70% 40%,#b88b9b,#3d3b63 70%)}.thumbnail.v5{background:linear-gradient(35deg,#5a747a,#d2d1b9)}.thumb-type{position:absolute;left:28px;bottom:25px;font-size:clamp(24px,3vw,45px);letter-spacing:-.05em;color:#fff}.placeholder-tag{position:absolute;left:20px;top:20px;background:#f8f7f2dd;padding:7px 10px;font-size:9px;letter-spacing:.08em}.play{position:absolute;right:25px;bottom:25px;width:52px;height:52px;display:grid;place-items:center;border:1px solid #fff9;border-radius:50%;color:white}.thumbnail:hover .play{background:var(--yellow);color:var(--ink);border-color:var(--yellow)}.project-meta{display:flex;justify-content:space-between;gap:25px;margin-top:20px}.project h3{font-size:23px;letter-spacing:-.04em;font-weight:500}.project p{font-size:13px;margin-top:9px;max-width:480px}.project-number{font-size:11px;padding-top:6px;color:var(--muted)}.location{background:#eeeee6;padding:80px 0}.location-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:40px}h2{font:500 clamp(40px,5.5vw,76px)/1.12 Manrope;letter-spacing:-.06em;margin-top:25px}.location-head p{font-size:14px}.map{position:relative;overflow:hidden;min-height:290px}.map svg{display:block;width:100%;height:auto;min-height:290px;object-fit:cover}.map-pin{position:absolute;top:46%;left:51%;display:flex;flex-direction:column;align-items:center;transform:translate(-50%,-40%);isolation:isolate}.map-pin:before{content:'';position:absolute;width:160px;height:160px;top:-30px;background:radial-gradient(#ffdd0877,transparent 70%);z-index:-1}.map-pin img{width:90px;height:70px;object-fit:cover;filter:drop-shadow(0 0 12px #ffdd08)}.map-pin strong{font-size:18px}.map-pin span{font-size:11px;margin-top:5px}.map-note{position:absolute;bottom:14px;left:16px;font-size:8px;letter-spacing:.08em;color:#666d72}.drawn-pin{position:absolute;right:18px;bottom:15px;width:36px;height:45px;object-fit:cover;object-position:50% 50%;mix-blend-mode:multiply}.contact{padding:110px 0 85px}.contact h2{font-size:clamp(60px,9vw,125px)}.contact-bottom{display:flex;justify-content:space-between;align-items:end;margin-top:40px}.contact-placeholder{border-bottom:1px solid #2c2d5640;padding-bottom:15px;min-width:300px;font-size:22px}.contact-placeholder small{display:block;font-size:8px;letter-spacing:.08em;margin-top:12px;color:var(--muted)}footer{display:flex;justify-content:space-between;gap:20px;align-items:center;border-top:1px solid #2c2d5626;padding:28px 0;font-size:11px;color:var(--muted)}footer button{background:none;border:0;font-size:11px;margin-left:15px}dialog{border:1px solid #ddd;background:var(--paper);color:var(--ink);padding:45px;max-width:min(540px,90vw)}dialog::backdrop{background:#16172a88}dialog h2{font-size:30px;margin:10px 0 20px}.close{float:right;border:0;background:none;font-size:26px}@media(max-width:760px){.wrap{width:calc(100% - 40px)}header{height:88px;padding:0 20px;gap:10px}.brand{max-width:120px}nav{gap:14px;font-size:12px}nav a:nth-child(2){display:none}.languages{gap:0}.hero{padding-top:45px}h1{font-size:clamp(38px,8.5vw,62px)}.hero-bottom{align-items:start;gap:20px}.hero-bottom p{font-size:13px}.round-link{gap:10px;font-size:11px}.round-link b{width:32px;height:32px}.hero-art{height:350px}.art-word{left:24px;bottom:28px}.projects{padding:70px 0}.section-top p{font-size:18px}.section-top{gap:20px}.project-layout{display:block}aside{position:static;flex-direction:row;overflow:auto;gap:20px;margin-bottom:30px}aside a{white-space:nowrap;font-size:11px}aside a.active:before{display:none}.project{margin-bottom:45px}.location{padding:55px 0}.location-head{display:block}.location-head p{margin-top:22px}.map svg{width:165%;max-width:none;transform:translateX(-20%)}.map-pin{left:52%}.contact{padding:75px 0 60px}.contact-bottom{display:block}.contact-placeholder{margin-top:35px;min-width:0}footer{flex-wrap:wrap;font-size:10px}footer>span:last-child{display:none}.project h3{font-size:21px}.project p{font-size:12px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Laterna: hand-drawn headline character inspired by the original wordmark. */
@font-face{font-family:LaternaHand;src:url('assets/caveat-medium.ttf') format('truetype');font-style:normal;font-weight:500;font-display:swap}
h1,h2,.contact h2{font-family:LaternaHand,'Segoe Print',cursive;font-weight:500;letter-spacing:-.025em;line-height:1.04}
h1{font-size:clamp(54px,8vw,112px)}
h2{font-size:clamp(50px,6.5vw,88px)}
.contact h2{font-size:clamp(76px,10vw,140px)}
.project h3{font-family:LaternaHand,'Segoe Print',cursive;font-size:34px;letter-spacing:-.01em;line-height:1.15}
.art-word{font-family:LaternaHand,'Segoe Print',cursive;font-size:clamp(32px,4.5vw,62px);letter-spacing:-.015em}
em:after{height:10%;bottom:9%;border-radius:45% 15% 40% 20%;transform:rotate(-3deg)}
dialog h2{font-size:40px}
@media(max-width:760px){h1{font-size:clamp(48px,10.5vw,78px)}h2{font-size:54px}.project h3{font-size:30px}.contact h2{font-size:clamp(76px,14vw,110px)}}

/* 2020 mockup direction: upright hand lettering, Azo Sans, offset editorial layout. */
@font-face{font-family:Azo;src:url('assets/azo-light.otf');font-weight:300;font-display:swap}
@font-face{font-family:Azo;src:url('assets/azo-medium.otf');font-weight:500 800;font-display:swap}
@font-face{font-family:LaternaSketch;src:url('assets/annie-hand.ttf');font-weight:400;font-display:swap}
:root{--paper:#fff;--muted:#63637a}body{font-family:Azo,Arial,sans-serif;font-weight:300}body:before{content:'';display:block;height:9px;background:var(--yellow);clip-path:polygon(0 0,100% 0,100% 75%,76% 100%,52% 65%,20% 100%,0 80%)}
.wrap{width:min(1200px,calc(100% - 112px))}header{max-width:1440px;margin:auto;height:130px;border:0;gap:35px}header .brand{width:220px;height:110px}.brand img{object-fit:contain}nav{gap:30px;font-size:12px;letter-spacing:.12em}nav a{position:relative}nav a:hover{border:0}nav a:hover:after{content:'';position:absolute;left:0;right:0;bottom:-4px;height:6px;background:var(--yellow);z-index:-1}.languages{letter-spacing:.04em}
h1,h2,h3,.contact h2,.project h3,.hand-link,.art-word{font-family:LaternaSketch,'Segoe Print',cursive;font-weight:400;letter-spacing:0;line-height:1.15}h1{font-size:clamp(60px,6.8vw,96px);margin:25px 0 28px}h2{font-size:clamp(44px,5vw,72px)}em:after{height:15%;bottom:3%;border-radius:24% 35% 20% 30%;clip-path:polygon(0 35%,18% 8%,40% 20%,61% 0,82% 25%,99% 10%,100% 82%,82% 100%,58% 75%,36% 100%,16% 78%,1% 100%)}
.hero{padding:40px 0 65px;min-height:650px;display:grid;grid-template-columns:38% 1fr;gap:75px;align-items:center}.hero-mark{height:550px;overflow:visible;position:relative}.hero-mark img{position:absolute;width:620px;height:620px;object-fit:contain;left:-120px;top:-35px}.hero-copy{padding:20px 0}.hero-copy p{font-size:20px;max-width:430px;color:var(--ink)}.hand-link{display:inline-block;position:relative;font-size:24px;margin-top:38px}.hand-link:after{content:'';position:absolute;left:-3px;right:-6px;bottom:0;height:7px;background:var(--yellow);z-index:-1;transform:rotate(-1deg);border-radius:30%}
.eyebrow{font-size:10px;line-height:1.6;letter-spacing:.16em;font-weight:500}.intro{padding:80px 0 100px;border-top:1px solid #2c2d5617}.intro-lead{max-width:800px}.intro-lead>p{max-width:570px;margin:30px 0 0 130px;font-size:19px}.process{display:grid;grid-template-columns:repeat(3,1fr);gap:65px;margin-top:70px}.process article>span{font-size:11px;color:#8b8b98}.process h3{font-family:Azo;font-weight:500;font-size:21px;margin:15px 0}.process p{font-size:16px;line-height:1.65;max-width:290px}
.projects{padding:65px 0 90px}.section-top{align-items:end;margin-bottom:45px}.section-top h2{margin:0}.section-top p{font-family:Azo;font-size:18px;line-height:1.6;max-width:350px}.project-layout{display:block}aside{position:static;display:flex;flex-direction:row;justify-content:flex-end;gap:25px;margin-bottom:60px;flex-wrap:wrap}aside a{font-size:12px;padding:8px 0;position:relative}aside a.active:before{display:none}aside a.active:after{content:'';position:absolute;left:0;right:0;bottom:1px;height:5px;background:var(--yellow);z-index:-1}
.project{width:85%;margin:0 0 115px auto;position:relative}.project:nth-child(even){margin-left:0;margin-right:auto}.thumbnail{background:#f0f0f3!important;border:1px solid #2c2d5620;aspect-ratio:16/9}.thumbnail:before{inset:25% 32%;transform:rotate(-3deg);box-shadow:none;border:2px solid #2c2d5626;border-radius:15% 8% 12% 6%}.thumb-type{font-family:LaternaSketch;font-size:32px;left:30px;bottom:25px;color:var(--ink)}.placeholder-tag{background:white;font-size:9px;color:#75758a}.play{border-color:#2c2d5680;color:var(--ink)}.project-meta{position:relative;max-width:620px;margin:25px 30px 0 0;gap:20px}.project h3{font-size:clamp(32px,3.4vw,48px)}.project p{font-size:16px;margin-top:14px;line-height:1.6}.project-number{font-family:LaternaSketch;font-size:22px;color:var(--ink);white-space:nowrap}.project:nth-child(odd) .project-meta{margin-left:-70px;background:white;padding:20px 25px 0 0}.project:nth-child(even) .project-meta{margin-left:auto;margin-right:-60px;background:white;padding:20px 0 0 25px}
.location{background:#fafaf7;padding:85px 0}.location-head p{font-size:17px;max-width:360px}.map{border:1px solid #2c2d5610}.contact{padding:100px 0}.contact h2{font-size:clamp(65px,7vw,100px)}.contact-bottom p{font-size:18px}.contact-placeholder{font-size:24px;font-weight:300}.contact-placeholder small{font-size:9px}footer.wrap{width:100%;max-width:none;padding:42px max(30px,calc((100vw - 1200px)/2));background:var(--ink);color:#fff;border:0;min-height:145px}footer button{color:white;font-family:Azo;font-size:12px}dialog h2{font-size:36px}
@media(max-width:900px){header{padding:0 25px;gap:18px}header .brand{width:175px}nav{gap:16px;font-size:10px}.wrap{width:calc(100% - 60px)}.hero{gap:35px;grid-template-columns:30% 1fr;min-height:540px}.hero-mark img{width:450px;height:540px;left:-135px;top:5px}.hero-mark{height:470px}h1{font-size:65px}.process{gap:30px}.project{width:88%}.project:nth-child(odd) .project-meta{margin-left:-30px}.project:nth-child(even) .project-meta{margin-right:-30px}}
@media(max-width:600px){header{height:100px;padding:0 18px}header .brand{width:140px;height:90px}nav{gap:14px;margin-left:auto}nav a:nth-child(2),nav a:nth-child(3){display:none}.languages{font-size:10px}.wrap{width:calc(100% - 40px)}.hero{display:block;min-height:0;padding:30px 0 60px;position:relative}.hero-mark{position:absolute;right:-5px;top:15px;height:120px;width:65px;opacity:.2;pointer-events:none}.hero-mark img{width:190px;height:190px;left:-65px;top:-25px}.hero-copy{position:relative}h1{font-size:clamp(52px,12vw,72px);margin:26px 0}.hero-copy p{font-size:18px;max-width:290px}.hero .eyebrow{max-width:250px;font-size:9px}.hand-link{margin-top:28px;font-size:23px}.intro{padding:55px 0}.intro-lead>p{margin:25px 0 0;font-size:17px}.process{grid-template-columns:1fr;gap:26px;margin-top:40px}.process article{display:grid;grid-template-columns:25px 1fr;column-gap:14px}.process article>span{padding-top:5px}.process h3{margin:0 0 8px;font-size:20px}.process p{grid-column:2;max-width:none}.section-top{display:block}.section-top p{margin-top:25px;font-size:16px}.projects{padding-top:45px}aside{justify-content:flex-start;gap:10px 20px;margin-bottom:35px}aside a{font-size:11px}.project,.project:nth-child(even){width:100%;margin:0 0 65px}.project:nth-child(odd) .project-meta,.project:nth-child(even) .project-meta{padding:0;margin:20px 0 0;background:none}.project h3{font-size:34px}.project p{font-size:15px}.thumb-type{font-size:25px;left:18px;bottom:18px}.placeholder-tag{font-size:8px;left:12px;top:12px}.play{width:40px;height:40px;bottom:15px;right:15px}.project-number{font-size:18px}.location{padding:55px 0}.location-head p{font-size:16px}.contact{padding:65px 0}.contact h2{font-size:68px}.contact-bottom p{font-size:17px}footer.wrap{padding:30px 20px;gap:25px}}

@media(min-width:601px) and (max-width:760px){.hero{grid-template-columns:28% minmax(0,1fr);gap:25px}.hero-copy h1{font-size:58px}.hero-copy p{font-size:17px}.hero-mark img{left:-150px}nav a:nth-child(2){display:none}}
@media(max-width:600px){.hero{overflow:hidden}.hero-mark{right:0}.hero-mark img{max-width:150px;left:-75px}}

.process-icon{display:block;width:85px;height:85px;object-fit:contain;margin-bottom:18px;mix-blend-mode:multiply}.about-closing{font-family:LaternaSketch;font-size:36px;margin:65px 0 0;text-align:center;color:var(--ink)}@media(max-width:600px){.process-icon{grid-column:2;width:65px;height:65px;margin-bottom:10px}.process article>span{grid-column:1;grid-row:2}.process h3{grid-column:2}.about-closing{font-size:29px;margin-top:40px}}

/* Larger wordmark; welcome area without a second logo. */
header{height:170px}header .brand{width:330px;height:155px;flex-shrink:0}.hero{display:block;min-height:490px;padding:55px 0 85px}.hero-copy{max-width:800px;margin:auto;text-align:center}.hero-copy .eyebrow{justify-content:center}.hero-copy p{margin:auto;max-width:620px}.hero-copy h1{font-size:clamp(60px,6.8vw,96px)}@media(max-width:900px){header{height:145px}header .brand{width:265px;height:135px}.hero{min-height:440px;padding:45px 0 70px}}@media(max-width:600px){header{height:auto;min-height:140px;flex-wrap:wrap;justify-content:space-between;gap:0 12px;padding:10px 20px 18px}header .brand{width:235px;height:110px;margin-right:auto}header nav{order:3;width:100%;justify-content:center;margin:0;gap:30px;padding-top:5px}header .languages{margin-left:auto}.hero{min-height:0;padding:50px 0 65px}.hero-copy{padding:0}.hero-copy h1{font-size:clamp(52px,12vw,72px)}.hero-copy .eyebrow{max-width:none}.hero-copy p{max-width:310px;font-size:18px}}

.project-details{display:flex;flex-direction:column;align-items:stretch;gap:8px;flex-shrink:0;min-width:170px;padding-top:5px}.detail-box{display:block;border:1px dashed #2c2d5650;background:#fafaf7;padding:10px 12px;font-family:Azo,Arial,sans-serif;font-size:12px;line-height:1.4;color:var(--muted);white-space:nowrap}@media(max-width:600px){.project-meta{flex-direction:column}.project-details{flex-direction:row;flex-wrap:wrap;gap:8px;min-width:0;padding-top:0}.detail-box{font-size:11px;padding:8px 10px}}

/* Project credits follow the supplied editorial reference. */
.project-credit{font-family:Azo,Arial,sans-serif;font-size:11px;letter-spacing:.12em;line-height:1.8;margin-bottom:16px;color:var(--ink)}.project-credit strong{position:relative;font-weight:500;isolation:isolate;white-space:nowrap}.project-credit strong:after{content:"";position:absolute;left:-3px;right:-4px;bottom:0;height:7px;background:var(--yellow);z-index:-1;border-radius:40% 25% 30% 20%;transform:rotate(-1deg)}.project .project-meta{position:relative;width:60%;max-width:650px;margin-top:-130px;margin-bottom:0;min-height:150px;z-index:2}.project:nth-child(odd) .project-meta{margin-left:-65px;margin-right:auto;padding:20px 24px;background:rgba(255,255,255,.95)}.project:nth-child(even) .project-meta{margin-left:auto;margin-right:-65px;padding:20px 24px;background:rgba(255,255,255,.95)}.project h3{font-size:clamp(32px,3.7vw,52px)}.project p{margin-top:18px}.play{bottom:auto;top:20px}.project{margin-bottom:125px}@media(max-width:900px){.project:nth-child(odd) .project-meta{margin-left:-25px}.project:nth-child(even) .project-meta{margin-right:-25px}.project .project-meta{width:75%;margin-top:-80px}.project-credit{font-size:10px;letter-spacing:.07em}}@media(max-width:600px){.project .project-meta,.project:nth-child(odd) .project-meta,.project:nth-child(even) .project-meta{width:100%;margin:20px 0 0;padding:0;background:none;min-height:0}.project-credit{font-size:10px;margin-bottom:12px}.project h3{font-size:34px}.project{margin-bottom:65px}.play{top:auto;bottom:15px}}

footer.company-footer{display:grid;grid-template-columns:1.2fr 1.2fr 1.4fr;gap:45px;padding-top:55px;padding-bottom:60px;align-items:start;position:relative}footer.company-footer:before{content:"";position:absolute;top:-6px;left:0;width:100%;height:10px;background:var(--ink);clip-path:polygon(0 50%,15% 15%,35% 35%,52% 0,76% 40%,100% 60%,100% 100%,0 100%)}.footer-company h3{font-size:26px;margin:0 0 28px;white-space:nowrap}.footer-company address{font-style:normal;font-size:17px;line-height:1.5}.footer-company p{color:white;font-size:16px;margin-top:30px}.footer-contact,.footer-social,.footer-legal{padding-top:57px;display:flex;flex-direction:column;gap:8px;font-size:17px}.footer-contact a:hover{text-decoration:underline}.footer-legal{align-items:flex-end}.footer-legal button{font-size:17px;font-weight:500;margin:0;padding:0;text-align:right}.footer-social span{line-height:1.4}@media(max-width:900px){footer.company-footer{grid-template-columns:1fr 1fr;gap:25px 40px}.footer-social,.footer-legal{padding-top:0}.footer-legal{align-items:flex-start}}@media(max-width:600px){footer.company-footer{grid-template-columns:1fr;gap:25px;padding:40px 25px}.footer-contact{padding-top:0}.footer-company h3{margin-bottom:20px}.footer-company p{margin-top:20px}.footer-social{flex-direction:row;gap:25px}.footer-legal{flex-direction:row;gap:25px}.footer-legal button{font-size:15px}}

/* Transparent Laterna location illustration, fully visible at every width. */
.map-illustration{margin:0;min-height:0;overflow:visible;background:transparent}
.map-illustration .location-artwork{display:block;width:100%;height:auto;max-width:100%;object-fit:contain}
.map-illustration figcaption{position:static;margin-top:16px;font-size:10px;letter-spacing:.06em;color:var(--muted)}

.location{padding-top:40px}
.location-head{margin-bottom:12px}
.map-illustration{overflow:hidden}
.map-illustration .location-artwork{margin-top:-9%}
@media(max-width:760px){.location{padding-top:32px}.location-head{margin-bottom:8px}.location-head h2{font-size:48px}}

.hero-copy{max-width:960px}.hero-copy h1{font-size:clamp(48px,6.5vw,90px);margin-bottom:30px}.hero-copy .welcome-subtitle{font-family:Azo,Arial,sans-serif;font-weight:500;font-size:clamp(21px,2.4vw,30px);letter-spacing:0;line-height:1.4;margin:0 auto 35px;max-width:850px}.hero-copy .welcome-text{max-width:760px;margin:auto;text-align:left}.hero-copy .welcome-text p{max-width:none;margin:0 0 22px;font-size:18px;line-height:1.75}.hero{padding-top:40px;padding-bottom:75px}@media(max-width:600px){.hero-copy h1{font-size:48px}.hero-copy .welcome-subtitle{font-size:22px;margin-bottom:28px}.hero-copy .welcome-text p{font-size:17px;line-height:1.65}.hero{padding-top:35px}}

/* Entering the studio. */
body{transition:background-color .65s ease,color .65s ease}
.bts{position:relative;background:#11131b;color:#fff;padding:105px 0 85px;scroll-margin-top:35px}
.bts:before,.bts:after{content:'';display:block;height:1px;background:linear-gradient(90deg,transparent,#ffffff30,transparent);position:absolute;left:0;right:0;top:0}.bts:after{top:auto;bottom:0}
.bts-heading{max-width:850px;margin-bottom:65px}.bts-heading .eyebrow{color:#b7b8c3}.bts h2{color:white;font-size:clamp(60px,8vw,112px);margin:25px 0}.bts p{color:#c1c2ce;font-size:20px}
.bts-gallery{display:grid;grid-template-columns:1.25fr .75fr;gap:55px;align-items:start}.bts figure{margin:0}.bts-portrait{padding-top:160px}.bts img{display:block;width:100%;height:auto}.bts figcaption{display:flex;flex-direction:column;gap:12px;padding-top:20px;color:#bfc0cb;font-size:10px;letter-spacing:.08em}.bts figcaption span:last-child{font-size:17px;letter-spacing:0;color:white}
.bts-exit{display:flex;justify-content:space-between;gap:25px;border-top:1px solid #ffffff26;margin-top:80px;padding-top:25px;color:#bfc0cb;font-size:12px}.bts-exit a{color:#ffdd08}
body.in-studio{background:#11131b;color:#fff}body.in-studio header{background:#11131bf5;color:#fff;border-color:#ffffff26;transition:background .65s,color .65s}body.in-studio .brand img{filter:grayscale(1) brightness(0) invert(1)}body.in-studio .bts-nav{color:#ffdd08}
@media(max-width:1100px){header{gap:20px}nav{gap:18px;font-size:12px}}
@media(max-width:760px){header{flex-wrap:wrap;height:auto;min-height:100px;padding-bottom:12px}nav{order:3;width:100%;justify-content:center;flex-wrap:wrap;gap:16px}nav .bts-nav{display:inline-block!important}.languages{margin-left:auto}.bts{padding:65px 0}.bts-heading{margin-bottom:35px}.bts h2{font-size:64px}.bts p{font-size:17px}.bts-gallery{grid-template-columns:1fr;gap:40px}.bts-portrait{padding-top:0;width:80%;justify-self:end}.bts-exit{margin-top:50px;flex-direction:column}}
@media(prefers-reduced-motion:reduce){body,body.in-studio header{transition:none}}

.intro .process{margin-top:0}
body.in-studio{color:var(--ink)}

.project-bts-link{display:inline-flex;align-items:center;gap:12px;margin-top:20px;padding:8px 0;border-bottom:1px solid currentColor;font-size:14px;font-weight:500;line-height:1.4}.project-bts-link:hover{color:#8a7200}.project-bts-link span{font-size:18px}

.bts-page{background:#11131b;color:#fff}.bts-page .bts{min-height:80vh}.bts-page header{background:#11131b;color:#fff;border-color:#ffffff26}.bts-page .brand img{filter:grayscale(1) brightness(0) invert(1)}

.bts-project-nav{display:flex;flex-wrap:wrap;gap:16px 30px;margin:0 0 55px}.bts-project-nav a{font-size:14px;color:#ddd;border-bottom:1px solid #ffffff55;padding-bottom:8px}.bts-project-nav a:hover{color:var(--yellow)}.bts-project-title{font-size:36px!important;color:#fff;margin-bottom:35px;scroll-margin-top:50px}.bts-project{margin-top:110px;padding-top:65px;border-top:1px solid #ffffff26;scroll-margin-top:30px}.bts-project-heading{margin-bottom:45px}.bts-project-heading h2{font-size:clamp(55px,7vw,90px)}.gondel-gallery{display:grid;grid-template-columns:1fr 1fr;gap:55px 40px;align-items:start}.gondel-gallery figure{margin:0}.gondel-photo-5,.gondel-photo-10{grid-column:1/-1}.gondel-photo-1{grid-row:span 2}.gondel-gallery img{width:100%;height:auto;display:block}.gondel-photo-16{grid-column:1/-1;width:80%;justify-self:end}@media(max-width:650px){.gondel-gallery{grid-template-columns:1fr;gap:35px}.gondel-photo-1{grid-row:auto;width:80%}.gondel-photo-16{width:100%}.bts-project{margin-top:65px;padding-top:40px}.bts-project-nav{margin-bottom:35px}}

.platz-gallery{display:grid;grid-template-columns:1fr 1fr;gap:45px 35px;align-items:start}.platz-gallery figure{margin:0}.platz-gallery figure:first-child,.platz-gallery figure:last-child{grid-column:1/-1}.platz-gallery figure:last-child{width:80%;justify-self:end}.platz-gallery img{width:100%;height:auto;display:block}@media(max-width:650px){.platz-gallery{grid-template-columns:1fr;gap:35px}.platz-gallery figure:last-child{width:100%}}

.thumbnail.real-film:before{display:none}.real-film img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.real-film:after{content:'';position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#0009)}.real-film .play,.real-film .thumb-type{z-index:1}.project-player{display:block;width:100%;aspect-ratio:16/9;border:0;background:#111}.slideshow{display:block!important}.slideshow figure{width:100%!important;padding:0!important;margin:0!important}.slideshow figure[hidden]{display:none!important}.slideshow img{width:100%;height:clamp(280px,65vh,750px);object-fit:contain;background:#0b0d14}.slide-controls{display:flex;justify-content:center;align-items:center;gap:25px;margin-top:24px;color:white}.slide-controls button{width:48px;height:48px;background:transparent;border:1px solid #ffffff60;border-radius:50%;color:white;font-size:24px}.slide-controls button:hover{background:var(--yellow);color:var(--ink)}.slide-controls span{min-width:55px;text-align:center;font-size:13px}
/* Keep project details clear of the video and its controls. */
.project:nth-child(odd) .project-meta,.project:nth-child(even) .project-meta{position:static;transform:none;margin:24px 0 0;padding:0;background:transparent;width:100%;max-width:none}
#film-1 .real-film .thumb-type{color:#fff;text-shadow:0 1px 5px #0008}
.bts-overlay{position:fixed;inset:0;max-width:none;max-height:none;width:100%;height:100dvh;margin:0;padding:30px;background:#20213f;color:#fff;border:0;opacity:0;transition:opacity .5s ease;overflow:auto}.bts-overlay[open]{opacity:1;animation:studio-enter .55s ease}.bts-overlay::backdrop{background:#20213f;animation:studio-enter .55s ease}.bts-overlay-open{overflow:hidden}.bts-overlay-inner{max-width:1200px;margin:auto;text-align:center}.bts-overlay h2{font-size:clamp(35px,5vw,62px);margin:0 45px 20px;color:white}.bts-overlay-frame{height:65dvh;display:flex;align-items:center;justify-content:center}.bts-overlay-frame img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;touch-action:pan-y}.bts-overlay-close{position:fixed;right:20px;top:12px;border:0;background:transparent;color:white;font-size:38px;z-index:2}.bts-overlay-caption{color:#ddddeb;font-size:13px;margin:15px 0;min-height:22px}.bts-overlay-controls{display:flex;align-items:center;justify-content:center;gap:24px}.bts-overlay-controls button{border:1px solid #ffffff60;background:transparent;color:white;padding:9px 17px;border-radius:30px}.bts-overlay-controls span{font-size:13px}.bts-overlay-controls button:hover{background:#ffdd08;color:#20213f}@keyframes studio-enter{from{opacity:0}to{opacity:1}}@media(max-width:600px){.bts-overlay{padding:55px 16px 25px}.bts-overlay-frame{height:58dvh}.bts-overlay-controls{gap:15px}}@media(prefers-reduced-motion:reduce){.bts-overlay,.bts-overlay::backdrop{animation:none;transition:none}}
/* Temporary BTS treatment until final photographs are supplied. */
.bts-gallery img,.gondel-gallery img,.platz-gallery img,.bts-overlay-frame img{filter:grayscale(1)}

/* Coverflow: complete central photo with clickable neighbouring previews. */
.coverflow.slideshow,.coverflow.bts-overlay-frame{position:relative;display:block!important;height:clamp(300px,54vw,650px);overflow:hidden;perspective:1400px;isolation:isolate;touch-action:pan-y}
.coverflow-card{position:absolute;left:15%;top:0;width:70%;height:100%;padding:0;border:0;background:transparent;transform:translateX(calc(var(--slot)*76%)) scale(.78) rotateY(calc(var(--slot)*-17deg));opacity:.5;z-index:1;transition:transform .55s cubic-bezier(.22,.7,.25,1),opacity .55s ease;cursor:pointer;will-change:transform}
.coverflow-card[data-position="0"]{transform:translateX(0) scale(1) rotateY(0);opacity:1;z-index:3;cursor:default}.coverflow-card[data-position="-2"],.coverflow-card[data-position="2"]{opacity:0;pointer-events:none}.coverflow-card img,.slideshow .coverflow-card img,.bts-overlay-frame .coverflow-card img{display:block;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;background:transparent;filter:grayscale(1)}.coverflow-reset{transition:none!important}.coverflow-caption{min-height:65px}.coverflow-caption figcaption{padding-top:18px}.bts-overlay-frame.coverflow{height:65dvh}.coverflow-card:focus-visible{outline:2px solid #ffdd08;outline-offset:-4px}@media(max-width:600px){.coverflow.slideshow{height:390px;max-height:58dvh}.coverflow-card{left:12%;width:76%;transform:translateX(calc(var(--slot)*83%)) scale(.8) rotateY(calc(var(--slot)*-12deg))}.bts-overlay-frame.coverflow{height:58dvh}}@media(prefers-reduced-motion:reduce){.coverflow-card{transition:none}}

/* Compact project collections */
.project-group,.project-group:nth-child(even){width:100%;margin:0 0 90px}.project-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px}.project-group .project-group-title{font-size:36px;margin:0 0 24px}.project-card{min-width:0}.project-tiles .project-meta{min-height:0}.project-tiles .project-card h3{font-size:clamp(28px,2.5vw,38px);line-height:1.2}.project-tiles .project-card p{font-size:15px}.project-tiles .thumb-type{color:white;text-shadow:0 1px 5px #0008;font-size:28px}.project-tiles .play{color:white;border-color:#fffc;background:#20213f35}.project-tiles .project-bts-link{font-size:14px}.project-single{max-width:900px}.project-card .project-meta{position:static!important;transform:none;margin:22px 0 0!important;padding:0!important;background:transparent!important;width:100%!important;max-width:none}.project-player{width:100%;aspect-ratio:16/9}.project-tiles .project-credit{margin-bottom:10px}@media(max-width:650px){.project-tiles{grid-template-columns:1fr;gap:42px}.project-group,.project-group:nth-child(even){margin-bottom:65px}.project-tiles .project-card h3{font-size:32px}}

/* Flat filmstrip shared by every BTS gallery and overlay. */
.coverflow.slideshow,.coverflow.bts-overlay-frame{perspective:none;-webkit-mask-image:linear-gradient(to right,transparent,#000 13%,#000 87%,transparent);mask-image:linear-gradient(to right,transparent,#000 13%,#000 87%,transparent)}
.coverflow-card,.coverflow-card[data-position="0"]{left:16%;width:68%;transform:translateX(calc(var(--slot)*104%));transition:transform 1.25s cubic-bezier(.25,.1,.25,1),opacity 1.25s ease;opacity:.72}
.coverflow-card[data-position="0"]{opacity:1}.coverflow-card[data-position="-2"],.coverflow-card[data-position="2"]{opacity:0}
@media(max-width:600px){.coverflow-card,.coverflow-card[data-position="0"]{left:14%;width:72%;transform:translateX(calc(var(--slot)*104%))}}
@media(prefers-reduced-motion:reduce){.coverflow-card{transition:none}}

/* Enter the studio as the lights dim, before the photographs appear. */
.bts-overlay[open]{animation:studio-lights-out 2s cubic-bezier(.25,.1,.25,1) both}
.bts-overlay[open]::backdrop{animation:studio-dim-backdrop 2s cubic-bezier(.25,.1,.25,1) both}
.bts-overlay[open] .bts-overlay-inner{animation:studio-photos-in 2.3s ease both}
@keyframes studio-lights-out{from{opacity:1;background-color:transparent}to{opacity:1;background-color:#20213f}}
@keyframes studio-dim-backdrop{from{background-color:transparent}to{background-color:#20213f}}
@keyframes studio-photos-in{0%,35%{opacity:0}100%{opacity:1}}
@media(prefers-reduced-motion:reduce){.bts-overlay[open],.bts-overlay[open]::backdrop,.bts-overlay[open] .bts-overlay-inner{animation:none}}

/* Soft light behind the BTS prints, shared by page and overlay. */
.coverflow-card::before{content:'';position:absolute;inset:12% 7%;z-index:-1;pointer-events:none;background:radial-gradient(ellipse,rgba(223,224,244,.22),rgba(191,195,235,.09) 48%,transparent 73%);filter:blur(30px);opacity:.4;transition:opacity 1.25s ease}
.coverflow-card[data-position="0"]::before{opacity:1}
.coverflow-card img,.slideshow .coverflow-card img,.bts-overlay-frame .coverflow-card img{filter:grayscale(1) drop-shadow(0 0 18px rgba(224,225,247,.14)) drop-shadow(0 0 48px rgba(190,196,239,.13))}
@media(prefers-reduced-motion:reduce){.coverflow-card::before{transition:none}}

.bts-video-flight{position:fixed;z-index:8;object-fit:cover;pointer-events:none;margin:0;max-width:none;max-height:none;box-shadow:0 0 45px #dfe0f42b;will-change:top,left,width,height,opacity}.bts-overlay[open] .bts-overlay-inner{animation:studio-photos-in 2.7s ease both}

/* Compact, consistent project captions. */
.project-card .project-meta,.project-card .project-meta *{font-family:Azo,Arial,sans-serif;letter-spacing:normal}
.project-card .project-meta{margin-top:14px!important;min-height:0}
.project-card .project-credit{font-size:12px;line-height:1.5;margin-bottom:4px;color:var(--muted)}
.project-card .project-credit strong{font-weight:600;white-space:normal}.project-card .project-credit strong:after{display:none}
.project .project-card h3,.project-tiles .project-card h3{font-size:18px;line-height:1.4;font-weight:500;letter-spacing:0;margin:0}
.project .project-card .project-format{font-size:13px;line-height:1.5;margin:4px 0 0;color:var(--muted)}
.project-card .project-meta .project-bts-link{font-size:12px;margin-top:12px;padding-bottom:5px}

/* Deeper studio darkness to bring out the ambient light. */
.bts-page,.bts-page header,.bts-page .bts{background:#080911}
.bts-overlay,.bts-overlay::backdrop{background:#080911}
@keyframes studio-lights-out{from{opacity:1;background-color:transparent}to{opacity:1;background-color:#080911}}
@keyframes studio-dim-backdrop{from{background-color:transparent}to{background-color:#080911}}

/* A single unbroken project tile collection. */
#categories:empty{display:none}#project-list.all-projects{grid-template-columns:repeat(2,minmax(0,1fr));gap:48px 36px}.all-projects>.project-card{width:100%;margin:0;scroll-margin-top:40px}.all-projects .thumb-type{color:white}.all-projects .play{color:white;border-color:#fffc;background:#20213f35}@media(max-width:650px){#project-list.all-projects{grid-template-columns:1fr;gap:40px}}

/* Stronger monochrome with a photographic red-filter response. */
.bts-gallery img,.gondel-gallery img,.platz-gallery img,.bts-overlay-frame img{filter:url(#bts-red-filter) contrast(1.18)}
.coverflow-card img,.slideshow .coverflow-card img,.bts-overlay-frame .coverflow-card img{filter:url(#bts-red-filter) contrast(1.18) drop-shadow(0 0 18px rgba(224,225,247,.14)) drop-shadow(0 0 48px rgba(190,196,239,.13))}

.project-player.vimeo-player{aspect-ratio:4/3}

.gondeltalk-player{--plyr-color-main:#ffdd08;--plyr-font-family:Azo,Arial,sans-serif;--plyr-video-control-color-hover:#2c2d56;--plyr-control-radius:4px;overflow:hidden}.gondeltalk-player .plyr{width:100%;height:100%}.gondeltalk-player .plyr__control--overlaid{color:#2c2d56;background:#ffdd08}.gondeltalk-player .plyr__controls button{font-family:Azo,Arial,sans-serif}.gondeltalk-player .plyr__video-embed iframe{border:0}

/* Compact, vertically aligned language switch. */
header .languages{display:inline-flex;align-items:center;justify-content:center;gap:4px;white-space:nowrap;line-height:1;letter-spacing:0;flex-shrink:0}header .languages button{display:inline-flex;align-items:center;justify-content:center;margin:0;padding:7px 3px;font-size:12px;line-height:1;border:0;position:relative}header .languages>span{display:inline-flex;align-items:center;font-family:Arial,sans-serif;font-size:12px;line-height:1;margin:0;padding:0;opacity:.55}header .languages button[aria-pressed=true]{border:0}header .languages button[aria-pressed=true]:after{content:'';position:absolute;height:2px;background:var(--yellow);left:3px;right:3px;bottom:1px}

.laterna-film-player{--plyr-color-main:#ffdd08;--plyr-font-family:Azo,Arial,sans-serif;--plyr-video-control-color-hover:#2c2d56;--plyr-control-radius:4px;overflow:hidden}.laterna-film-player .plyr{width:100%;height:100%}.laterna-film-player .plyr__control--overlaid{color:#2c2d56;background:#ffdd08}.laterna-film-player .plyr__controls button{font-family:Azo,Arial,sans-serif}.laterna-film-player iframe{border:0}

/* Cinematic editorial direction: a light opening, a scroll-linked dark studio. */
body{--page-bg:#fff;--page-ink:#2c2d56;--page-muted:#63637a;background:var(--page-bg);color:var(--page-ink)}header{background:transparent;color:var(--page-ink)}header .brand img{filter:none!important}.hero{min-height:0;padding:60px 0 65px}.hero-copy{max-width:none;text-align:left;margin:0}.hero-copy h1{font-family:Azo,Arial,sans-serif;font-weight:300;font-size:clamp(42px,5.8vw,80px);letter-spacing:-.035em;line-height:1.15;margin:0 0 28px}.hero-copy h1:after{content:'';display:block;background:var(--yellow);width:70px;height:3px;margin-top:24px}.hero-copy .welcome-subtitle{font-family:Azo,Arial,sans-serif;font-weight:300;font-size:clamp(20px,2.3vw,30px);text-align:left;max-width:100%;margin:0}.hero .hand-link{display:none}.projects{padding:0 0 80px}#featured-film{margin-bottom:65px}.featured-card .thumbnail{aspect-ratio:16/9;border:0}.featured-card .play{top:50%;left:50%;right:auto;bottom:auto;transform:translate(-50%,-50%);width:75px;height:75px;background:#10111430;border:1px solid #fff;color:#fff;font-size:28px}.featured-card .project-meta{margin-top:16px!important}.featured-card h3{font-family:Azo!important;font-size:20px!important;font-weight:300}.section-top{display:flex;gap:30px;align-items:center;margin:0 0 32px}.section-top h2{font-family:Azo,Arial,sans-serif;font-size:12px;font-weight:500;letter-spacing:.25em;text-transform:uppercase;white-space:nowrap;margin:0}.section-rule{height:1px;flex:1;background:currentColor;opacity:.25}.selected-film-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:45px 28px}.selected-film-grid .project-card{min-width:0}.selected-film-grid .thumbnail{aspect-ratio:16/9;border:0}.selected-film-grid .project-card:nth-child(3n+2){padding-top:35px}.selected-film-grid .project-card:nth-child(3n){padding-top:70px}.selected-film-grid h3{font-family:Azo,Arial,sans-serif!important;font-size:22px!important;font-weight:300;line-height:1.3}.selected-film-grid h3:after{content:'';display:block;width:35px;height:2px;background:var(--yellow);margin-top:12px}.selected-film-grid .project-format{font-size:12px!important;color:var(--page-muted)}.selected-film-grid .play{top:50%;left:50%;right:auto;bottom:auto;transform:translate(-50%,-50%);background:#10111430;color:white;border-color:white}.selected-film-grid .project-meta{position:static!important;margin:20px 0 0!important;padding:0!important;width:100%!important;min-height:0!important;background:none!important}.project-external{font-size:12px;color:var(--page-muted)}.intro{padding:55px 0 85px;color:var(--page-ink);border-color:#80808025}.intro .welcome-text{max-width:760px;margin:0 auto 65px}.intro .welcome-text p{font-size:18px;line-height:1.8;color:var(--page-muted);margin-bottom:22px}.process p{color:var(--page-muted)}.bts-feature{padding:90px 0 100px}.bts-feature-image{position:relative;isolation:isolate;overflow:hidden;min-height:520px;background:#101114}.bts-feature-image>img{width:100%;height:580px;object-fit:cover;object-position:center;display:block;filter:none}.bts-feature-image:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#101114e6,transparent 85%);z-index:1}.bts-feature-copy{position:absolute;left:55px;top:50%;transform:translateY(-50%);z-index:2;color:#f6f4ed;max-width:430px}.bts-feature-copy h2{font-family:Azo,Arial,sans-serif;font-weight:300;font-size:48px;letter-spacing:-.025em;line-height:1.2;margin:28px 0 36px}.bts-feature-link{display:inline-flex;background:#ffdd08;color:#171821;padding:15px 20px;font-size:14px;font-weight:500}.location{background:transparent;color:var(--page-ink)}.location-artwork{filter:invert(calc(var(--dark-progress,0) * 1));mix-blend-mode:normal}.location .map{background:transparent}.location figcaption,.contact p{color:var(--page-muted)}.contact{color:var(--page-ink)}.contact-placeholder a{color:var(--page-ink)}
@media(max-width:850px){.selected-film-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.selected-film-grid .project-card:nth-child(n){padding-top:0}.selected-film-grid .project-card:nth-child(even){padding-top:30px}.bts-feature-copy{left:35px}.bts-feature-image>img{height:500px}.bts-feature-copy h2{font-size:40px}}@media(max-width:600px){.hero{padding:35px 0 40px}.hero-copy h1{font-size:45px}.hero-copy .welcome-subtitle{font-size:21px}.selected-film-grid{grid-template-columns:1fr;gap:35px}.selected-film-grid .project-card:nth-child(n){padding:0}.section-top{gap:18px}.section-top h2{font-size:10px;letter-spacing:.18em}.projects{padding-bottom:40px}#featured-film{margin-bottom:40px}.featured-card .play{width:55px;height:55px}.intro{padding:30px 0 40px}.intro .welcome-text p{font-size:17px}.bts-feature{padding:65px 0}.bts-feature .wrap{width:100%}.bts-feature-image>img{height:560px;object-position:58% center}.bts-feature-image:after{background:linear-gradient(0deg,#101114ed,transparent 95%)}.bts-feature-copy{left:25px;right:25px;top:auto;bottom:40px;transform:none}.bts-feature-copy h2{font-size:37px}.location{padding-top:30px}}

/* Align project thumbnails across every row and breakpoint. */
.selected-film-grid .project-card:nth-child(n){padding-top:0}.selected-film-grid{align-items:start}

/* A shared studio entrance, then an interleaved monochrome BTS collection. */
.bts-overlay[open]{animation:none;background:#080911;isolation:isolate}.bts-overlay[open]::backdrop{animation:none;background:#080911e8}.bts-overlay[open]:before{content:'';position:fixed;inset:0;pointer-events:none;z-index:0;background:radial-gradient(ellipse at 50% -10%,rgba(249,243,213,.32),transparent 60%),conic-gradient(from 155deg at 50% -20%,transparent 0deg,rgba(236,237,255,.13) 14deg,transparent 27deg);animation:studio-light-on 2.5s ease both}.bts-overlay-inner{position:relative;z-index:1}.bts-overlay[open] .bts-overlay-inner{animation:mixed-photos-in 4s ease both}.bts-overlay-close{z-index:12}.bts-overlay .bts-overlay-caption{display:none}.bts-overlay .coverflow-card img{filter:grayscale(1) contrast(1.1) drop-shadow(0 0 32px #e4e7ff20)}.bts-video-flight{z-index:8}.bts-overlay .bts-overlay-controls{position:relative;z-index:9}
@keyframes studio-light-on{0%{opacity:0}20%{opacity:.08}40%{opacity:.85}55%{opacity:.6}100%{opacity:1}}
@keyframes mixed-photos-in{0%,38%{opacity:0;transform:translateY(15px)}100%{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.bts-overlay[open]:before,.bts-overlay[open] .bts-overlay-inner{animation:none}}

/* Location belongs to the light studio introduction. */
.intro{position:relative;isolation:isolate;overflow:hidden}.intro .welcome-text{margin-left:0;max-width:640px;position:relative;z-index:2}.about-location{position:relative;min-height:330px;margin:30px 0 55px;isolation:isolate;scroll-margin-top:40px}.about-location img{position:absolute;right:-60px;top:-90px;width:86%;height:470px;object-fit:contain;opacity:.24;z-index:-1;pointer-events:none}.about-location-label{padding-top:80px}.about-location-label h2{font-family:Azo,Arial,sans-serif;font-weight:300;font-size:clamp(46px,5.5vw,76px);letter-spacing:-.04em;margin:0 0 15px}.about-location-label p{font-size:18px;color:var(--page-muted)}.intro .process{position:relative;z-index:2}.intro .process article{background:rgba(255,255,255,.8)}
/* Camera-monitor overlays are confined to the poster, leaving playback unobstructed. */
.thumbnail.real-film .monitor-overlay{position:absolute;inset:12px;z-index:2;pointer-events:none;color:#fff;text-align:left;isolation:isolate}.monitor-overlay:before,.monitor-overlay:after{content:'';position:absolute;width:15px;height:15px;border-color:rgba(255,255,255,.8);border-style:solid;pointer-events:none}.monitor-overlay:before{top:0;left:0;border-width:1px 0 0 1px}.monitor-overlay:after{right:0;bottom:0;border-width:0 1px 1px 0}.monitor-label,.monitor-time{position:absolute;top:9px;font-family:'Courier New',monospace;font-size:8px;letter-spacing:.06em;line-height:1.4;text-transform:uppercase;text-shadow:0 1px 5px #000;max-width:65%}.monitor-label{left:10px}.monitor-time{right:10px;font-size:8px}.monitor-title{position:absolute;bottom:15px;left:12px;right:60px;font-family:Azo,Arial,sans-serif;font-weight:500;font-size:clamp(18px,1.9vw,26px);line-height:1.12;letter-spacing:-.025em;text-shadow:0 2px 12px #0009}.thumbnail.real-film:after{inset:0;background:linear-gradient(0deg,#000b,transparent 58%,#0004)}.selected-film-grid .play{left:auto;right:20px;top:auto;bottom:22px;transform:none;width:36px;height:36px;font-size:18px;z-index:3}.featured-card .monitor-overlay{inset:20px}.featured-card .monitor-label,.featured-card .monitor-time{font-size:11px}.featured-card .monitor-title{font-size:clamp(24px,3vw,42px);bottom:22px;max-width:70%}.featured-card .play{z-index:3}.project-card .thumbnail:focus-visible{outline:3px solid #c7a600;outline-offset:5px}
@media(max-width:850px){.monitor-time{display:none}.about-location img{width:100%;right:-100px;opacity:.2}}@media(max-width:600px){.about-location{min-height:280px;margin:15px 0 35px}.about-location img{right:-45px;top:-20px;width:120%;height:320px;opacity:.23}.about-location-label{padding-top:15px}.about-location-label h2{font-size:48px}.about-location-label p{font-size:16px}.monitor-title{font-size:23px}.monitor-label{font-size:9px}.featured-card .monitor-title{font-size:22px;right:15px;bottom:12px}.featured-card .monitor-label{font-size:9px}.featured-card .monitor-time{display:none}.featured-card .play{top:45%;width:48px;height:48px}}

.project-card .project-client{font-family:Azo,Arial,sans-serif;font-size:11px!important;font-weight:300;line-height:1.5;color:var(--page-muted);margin:0 0 8px!important}.project-card .project-meta h3{margin:0}.project-card .project-format{font-size:12px!important;margin-top:10px!important}.featured-card .project-meta h3{font-size:28px!important}.selected-film-grid h3:after{display:none}

/* Center the introduction and give the location artwork its own space below services. */
.intro .welcome-text{max-width:780px;margin:0 auto 65px;text-align:center}.intro .welcome-text p{text-align:center}.about-location{position:relative;min-height:0;margin:60px 0 0;overflow:visible}.about-location img{position:static;display:block;width:100%;height:auto;max-height:none;object-fit:contain;opacity:1;z-index:auto;pointer-events:auto}.project-card .project-meta{margin-top:14px!important}.project-card .project-client{margin-bottom:4px!important}.project-card .project-format{margin-top:0!important}.placeholder-film{position:relative;aspect-ratio:16/9;background:#252735!important;border:1px solid #3b3e55!important;overflow:hidden}.placeholder-film:before{display:none}.placeholder-film .monitor-overlay{display:block}.placeholder-status{position:absolute;top:48%;left:0;right:0;color:#c7c8d2;font:12px Azo,Arial,sans-serif;letter-spacing:.08em;text-align:center}.placeholder-film .monitor-title{color:white}.placeholder-film:after{pointer-events:none}@media(max-width:600px){.intro .welcome-text{margin-bottom:40px}.about-location{margin-top:40px}.about-location img{width:100%;height:auto;opacity:1;position:static}}

/* Fade the complete light composition before the studio background becomes dark. */
body:not(.bts-page)>header,main>#home,main>#projects,main>#about{opacity:var(--light-opacity,1)}
main>#home,main>#projects,main>#about{--page-ink:#2c2d56;--page-muted:#63637a;color:#2c2d56}
.intro .process article{background:transparent}
.process-icon{mix-blend-mode:normal}
.about-location img{filter:none;mix-blend-mode:normal}

/* White brand footer and near-black navy studio palette. */
footer.company-footer{background:#fff;color:#2c2d56}
footer.company-footer:before{background:#fff}
footer.company-footer p,footer.company-footer button,footer.company-footer a,footer.company-footer address{color:#2c2d56}

/* Oversized original lantern, drifting quietly behind the light content. */
body{isolation:isolate}
.brand-watermark{position:fixed;inset:-180vh -65vw auto;height:480vh;z-index:-1;pointer-events:none;background:url('assets/logo-watermark.svg') center/contain no-repeat;opacity:calc(.09 * var(--light-opacity,1));transform:translateY(var(--watermark-y,0px)) rotate(-19deg);will-change:transform}
.brand-statement{display:grid;grid-template-columns:260px 1fr;gap:46px;align-items:center;margin-top:60px;padding:26px 0 10px;color:#2c2d56}
.brand-statement h2{font-family:Azo,Arial,sans-serif;font-size:28px;font-weight:500;line-height:1.15;letter-spacing:-.025em;margin:0}
.brand-statement p{position:relative;padding-left:46px;border-left:0;font-size:17px;line-height:1.6;color:#2c2d56}
.brand-statement p:before{content:'';position:absolute;left:0;top:0;bottom:0;width:4px;background:#ffdd08;clip-path:polygon(22% 0,100% 8%,65% 35%,100% 62%,55% 100%,0 95%,20% 58%,0 30%)}
.hero-copy h1:after{height:8px;width:88px;transform:rotate(-2deg);border-radius:40% 25% 35% 20%;clip-path:polygon(0 35%,17% 12%,36% 24%,57% 0,78% 18%,98% 5%,100% 75%,82% 100%,61% 80%,39% 100%,18% 79%,1% 100%)}
.bts-feature-copy h2:after{content:'';display:block;width:75px;height:7px;margin-top:20px;background:#ffdd08;transform:rotate(-2deg);clip-path:polygon(0 25%,24% 8%,46% 20%,71% 0,99% 12%,100% 83%,75% 100%,51% 78%,23% 100%,0 80%)}
@media(max-width:600px){.brand-statement{grid-template-columns:1fr;gap:22px;margin-top:35px}.brand-statement h2{font-size:27px}.brand-statement p{padding-left:22px;font-size:16px}.brand-watermark{inset:-110vh -120vw auto;height:340vh}}
@media(prefers-reduced-motion:reduce){.brand-watermark{will-change:auto}}

/* Broad, rounded marker stroke based on the printed business card. */
.about-title{font-family:Azo,Arial,sans-serif;font-size:clamp(30px,3.2vw,44px);font-weight:500;line-height:1.3;text-align:center;letter-spacing:-.025em;margin:0 auto 36px}
em:after{background:url('assets/ci-marker.svg') center/100% 100% no-repeat;clip-path:none;border-radius:0;height:.42em;bottom:.14em;left:-.025em;width:calc(100% + .05em);transform:rotate(-1deg)}
.hero-copy h1:after,.bts-feature-copy h2:after{background:url('assets/ci-marker.svg') center/100% 100% no-repeat;clip-path:none;border-radius:0;height:10px;transform:rotate(-1deg)}
@media(max-width:600px){.about-title{font-size:30px;margin-bottom:28px}}

/* Original business-card stroke; ink remains above the yellow marking. */
em:after{height:.24em;bottom:.14em;left:-.025em;width:calc(100% + .05em);transform:none;background-image:url('assets/ci-marker.svg')}
.hero-copy h1:after,.bts-feature-copy h2:after{height:6px;transform:none;background-image:url('assets/ci-marker.svg')}
.languages a{display:inline-block;padding:7px;font-size:inherit;line-height:1.2}
.languages a[aria-current="page"]{font-weight:700;border-bottom:2px solid var(--yellow)}
header .languages a{display:inline-flex;align-items:center;justify-content:center;margin:0;padding:7px 3px;font-size:12px;line-height:1;border:0;position:relative}
header .languages a[aria-current="page"]:after{content:'';position:absolute;height:2px;background:var(--yellow);left:3px;right:3px;bottom:1px}

.about-intro{display:grid;grid-template-columns:280px minmax(0,1fr);gap:60px;margin-bottom:65px;align-items:start;position:relative;z-index:2}
.about-intro .about-title{text-align:left;margin:0;font-size:34px;line-height:1.25}
.about-intro .welcome-text{max-width:none;margin:0;text-align:left}
.about-intro .welcome-text p{text-align:left}
@media(max-width:900px){.about-intro{grid-template-columns:220px minmax(0,1fr);gap:35px}.about-intro .about-title{font-size:29px}}
@media(max-width:600px){.about-intro{grid-template-columns:1fr;gap:25px;margin-bottom:40px}.about-intro .about-title{font-size:30px}.about-intro .welcome-text{margin:0}}
/* Keep the section label beside the full introduction on desktop and tablet. */
#about .about-intro{grid-template-columns:minmax(210px,280px) minmax(0,1fr);column-gap:60px;align-items:start}
#about .about-intro>.about-title{grid-column:1;grid-row:1;text-align:left;justify-self:start;width:100%;margin:0}
#about .about-intro>.welcome-text{grid-column:2;grid-row:1;text-align:left;width:100%;max-width:none;margin:0}
#about .about-intro>.welcome-text p{text-align:left}
@media(max-width:900px) and (min-width:601px){#about .about-intro{grid-template-columns:210px minmax(0,1fr);column-gap:30px}}
@media(max-width:600px){#about .about-intro{grid-template-columns:1fr;gap:25px}#about .about-intro>.about-title{grid-column:1;grid-row:1}#about .about-intro>.welcome-text{grid-column:1;grid-row:2}}

/* Location illustration alongside the contact invitation. */
.contact-heading-map{display:grid;grid-template-columns:minmax(280px,.85fr) minmax(0,1.15fr);gap:45px;align-items:center;margin:30px 0 40px}
.contact-heading-map>h2{margin:0;font-size:clamp(60px,6.5vw,94px)}
.contact-location{margin:0;padding:18px;background:#fff;scroll-margin-top:100px;overflow:hidden}
.contact-location img{display:block;width:100%;height:auto;filter:none;opacity:1;mix-blend-mode:normal}
@media(max-width:760px){.contact-heading-map{grid-template-columns:1fr;gap:35px;margin:25px 0 30px}.contact-location{padding:12px}.contact-heading-map>h2{font-size:clamp(58px,10vw,80px)}}

/* White location and contact closing after the dark BTS chapter. */
.closing-section{background:#fff;color:#2c2d56;--page-ink:#2c2d56;--page-muted:#63637a;position:relative}
.location-closing{padding-top:70px;scroll-margin-top:35px}
.location-closing img{display:block;width:100%;height:auto;max-width:1100px;margin:auto;opacity:1;filter:none;mix-blend-mode:normal}
.closing-section .contact{padding-top:45px;padding-bottom:100px;color:#2c2d56}
.closing-section .contact h2{color:#2c2d56}
.closing-section .contact p{color:#63637a}
.closing-section .contact-placeholder a{color:#2c2d56}
footer.company-footer{background:#0e1120;color:#fff}
footer.company-footer:before{background:#0e1120}
footer.company-footer p,footer.company-footer button,footer.company-footer a,footer.company-footer address{color:#fff}
@media(max-width:600px){.location-closing{padding-top:40px}.closing-section .contact{padding-top:35px;padding-bottom:65px}}
/* Quiet paired rows: one full-width feature, then landscape or square tiles. */
.selected-film-grid{display:flex;flex-direction:column;gap:42px;align-items:stretch}
.project-row{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start}
.project-row>.project-card{display:flex;flex-direction:column;min-width:0;padding:0!important}
.project-row .thumbnail{display:block;flex:none;aspect-ratio:16/9}
.project-row .project-meta{min-height:40px!important;margin-top:12px!important}
.project-row-1{grid-template-columns:1fr 2fr}
.project-row-1>.project-card:first-child .thumbnail{aspect-ratio:1}
.project-row-1>.project-card:last-child .thumbnail{aspect-ratio:2}
.project-row-3{grid-template-columns:1fr 2fr}
.project-row-3>.project-card:first-child .thumbnail{aspect-ratio:1}
.project-row-3>.project-card:last-child .thumbnail{aspect-ratio:2}
.selected-film-grid .ochsner-art{background:#f5f3ed!important;border-color:#2c2d5618!important}
.ochsner-art .ochsner-icon{position:absolute;inset:auto;left:calc(50% - 55px);top:22%;width:110px;height:110px;object-fit:contain;mix-blend-mode:multiply}
.ochsner-art .monitor-title{color:#2c2d56;text-shadow:none}
.ochsner-art .monitor-overlay:before,.ochsner-art .monitor-overlay:after{border-color:#2c2d5640}
.ochsner-art .placeholder-status{color:#63637a;top:60%}
body.film-viewer-open{overflow:hidden}
dialog.film-viewer{position:fixed;inset:0;width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;border:0;background:#0e1120ed;color:#fff;overflow:hidden;animation:film-viewer-in .35s ease both}
dialog.film-viewer[open]{display:grid;place-items:center}
.film-viewer::backdrop{background:transparent}
.film-viewer-stage{position:relative;width:min(1120px,calc(100vw - 64px),calc(177.778dvh - 178px));aspect-ratio:16/9;transform-origin:top left;background:#0e1120;box-shadow:0 24px 100px #0008}
.film-viewer-stage>.project-player{height:100%}
.film-viewer-preview{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;aspect-ratio:auto!important;pointer-events:none;z-index:4}
.film-viewer-close{position:absolute;right:24px;top:18px;z-index:10;width:46px;height:46px;border:1px solid #ffffff50;border-radius:50%;background:#0e1120;color:#fff;font-size:30px;line-height:1;display:grid;place-items:center}
.film-viewer-close:hover{color:#ffdd08;border-color:#ffdd08}
@keyframes film-viewer-in{from{background:#0e112000}to{background:#0e1120ed}}
@media(max-width:900px){.selected-film-grid{gap:34px}.project-row{gap:20px}}
@media(max-width:600px){.selected-film-grid{gap:30px}.project-row{grid-template-columns:1fr;gap:30px}.project-row .project-card .thumbnail{aspect-ratio:16/9}.film-viewer-stage{width:calc(100vw - 24px)}.film-viewer-close{top:14px;right:14px}}
@media(prefers-reduced-motion:reduce){dialog.film-viewer{animation:none}}
.selected-film-grid .ochsner-art:after{display:none}
.selected-film-grid .thumbnail>img[src*="i.ytimg.com"]{transform:scale(1.34)}

/* Original vector wordmark without the lantern, for the dark footer. */
.footer-company .footer-wordmark{display:block;width:190px;max-width:100%;height:auto}

/* Original Laterna headline typeface supplied by the owner. */
@font-face{font-family:GoodKitty;src:url('assets/good-kitty-regular.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
.hero-copy h1,.contact h2{font-family:GoodKitty,'Segoe Print',cursive;font-weight:400;letter-spacing:0;line-height:1.15}

/* Transparent original CI vectors, centered within each service column. */
.process .process-icon{display:block;grid-column:1/-1;width:85px;height:85px;object-fit:contain;object-position:center;margin:0 auto 24px;mix-blend-mode:normal;justify-self:center}

/* Original CI icons distinguish films, trailers and photo stories. */
.project-card .project-meta{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap}
.project-meta>div{min-width:0;flex:1 1 130px}
.project-action{display:inline-flex;align-items:center;justify-content:flex-end;gap:8px;flex:0 0 auto;margin-left:auto;padding:0;border:0;background:none;color:#2c2d56;font-family:Azo,Arial,sans-serif;font-size:14px;font-weight:500;line-height:1.3;white-space:nowrap;min-height:38px}
.project-action img{width:38px;height:38px;object-fit:contain;display:block}
.project-action:hover:not(:disabled){text-decoration:underline;text-decoration-color:#ffdd08;text-underline-offset:5px}
.project-action:disabled{cursor:default;opacity:.65}
@media(max-width:600px){.project-action{font-size:13px}.project-action img{width:34px;height:34px}}

/* Keep film tiles directly clickable; Ochsner previews mixed media in three cells. */
.lisl-placeholder .project-action img{display:none}
.selected-film-grid .ochsner-mosaic{display:grid;grid-template-columns:2fr 1fr;grid-template-rows:repeat(2,minmax(0,1fr));gap:8px;background:transparent!important;overflow:visible}
.ochsner-media-slot{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;min-height:0;overflow:hidden;background:#f5f3ed;border:1px solid #2c2d5618;color:#2c2d56}
.ochsner-video-slot{grid-row:span 2;background:#f1efe8;padding-bottom:45px}
.ochsner-media-slot>img{position:static;width:56px;height:56px;object-fit:contain;flex:none}
.ochsner-photo-slot>img{width:34px;height:34px}
.ochsner-media-slot>span{font:500 11px/1.4 Azo,Arial,sans-serif;text-align:center;color:#63637a;padding:0 7px}
.ochsner-video-slot>strong{position:absolute;bottom:18px;left:18px;right:18px;font:500 clamp(14px,1.7vw,24px)/1.15 Azo,Arial,sans-serif}
@media(max-width:600px){.project-row .ochsner-mosaic{aspect-ratio:2}.ochsner-mosaic{gap:6px}.ochsner-media-slot>img{width:38px;height:38px}.ochsner-photo-slot>img{width:25px;height:25px}.ochsner-media-slot>span{font-size:9px}.ochsner-video-slot>strong{left:10px;bottom:10px;right:10px;font-size:14px}.ochsner-video-slot{padding-bottom:30px}}

.project-meta>.project-external{margin-left:auto;align-self:flex-start;text-align:right;font-family:Azo,Arial,sans-serif;font-weight:700;font-size:14px;line-height:1.5;color:#2c2d56}

/* Locally stored YouTube artwork retains the existing crop. */
.thumbnail img[src*="youtube-"]{transform:scale(1.34)}
.privacy-panel{width:min(720px,calc(100vw - 32px));max-width:720px;max-height:85vh;overflow:auto;background:#fff;color:#2c2d56;padding:32px;border:0;border-radius:4px;font:16px/1.6 Azo,Arial,sans-serif}.privacy-panel h2{font:500 28px/1.2 Azo,Arial,sans-serif}.privacy-panel h3{font-size:19px;margin:28px 0 8px}.privacy-panel a{text-decoration:underline}.privacy-panel::backdrop{background:#0e1120b8}.privacy-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}.privacy-actions button{background:#fff;color:#2c2d56;border:1px solid #2c2d56;padding:12px 18px;font-weight:600}.privacy-panel label{display:block;padding:14px 0}.privacy-panel input{margin-right:10px}.privacy-close{float:right;background:none;border:0;font-size:26px}.privacy-note{font-size:14px;color:#626279}

/* Start only once the real headline font is available; preserve layout while waiting. */
.intro-reveal{opacity:0;transform:translateY(16px);transition:opacity .65s ease,transform .75s cubic-bezier(.22,.61,.36,1)}
.intro-reveal.is-visible{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.intro-reveal{transform:none;transition:none}}
