@font-face{font-family:Inter;src:url('/assets/Inter.ttf') format('truetype');font-weight:100 900;font-display:swap}@font-face{font-family:Instrument;src:url('/assets/InstrumentSerif-Italic.ttf') format('truetype');font-style:italic;font-display:swap}:root{--ink:#242320;--paper:#f2ede4;--orange:#e54b32;--stone:#b7b0a3;--line:#ccc6bc}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;background:var(--paper);color:var(--ink);font:400 16px/1.5 Inter,Arial,sans-serif}body.locked{overflow:hidden}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #1765c0;outline-offset:5px}button{color:inherit}img{display:block;width:100%;height:auto}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.05;letter-spacing:-.055em}em{font-family:Instrument,Georgia,serif;font-weight:400;letter-spacing:-.025em}::selection{background:var(--orange);color:#000}.skip{position:fixed;top:-100px;left:20px;z-index:100;background:#fff;padding:12px}.skip:focus{top:12px}.site-header{height:104px;display:flex;align-items:center;justify-content:space-between;padding:0 42px;gap:38px;background:var(--paper);position:relative;z-index:30;border-bottom:1px solid var(--line)}.brand{width:276px;flex-shrink:0}.brand img{width:100%}.desktop-nav{display:flex;gap:40px;align-items:center;margin-left:auto;font-size:15px;font-weight:500}.desktop-nav a{border-bottom:1px solid transparent;padding:7px 0}.desktop-nav a:hover{border-color:var(--ink)}.menu-toggle{display:flex;align-items:center;justify-content:center;gap:24px;border:0;background:var(--orange);color:#000;height:52px;padding:0 24px;font-size:15px;font-weight:600}.menu-toggle i{width:23px;height:8px;border-block:2px solid currentColor;transition:transform .25s}.menu-toggle[aria-expanded=true] i{transform:rotate(45deg);height:2px;border-bottom:0}.hero{position:relative;min-height:640px;height:calc(100svh - 104px);max-height:1080px;color:var(--paper);overflow:hidden}.hero-image,.hero-shade{position:absolute;inset:0;height:100%;object-fit:cover}.hero-image{object-position:center 48%}.hero-shade{background:linear-gradient(180deg,rgba(18,16,13,.23),transparent 38%,rgba(18,16,13,.55))}.hero-top,.hero-bottom{position:absolute;left:48px;right:48px;display:flex;justify-content:space-between;gap:20px;font-size:12px;font-weight:500;letter-spacing:.075em}.hero-top{top:35px}.hero-bottom{bottom:28px;letter-spacing:.015em;font-size:13px}.hero-content{position:absolute;left:48px;right:48px;bottom:92px;display:flex;align-items:flex-end;justify-content:space-between;gap:36px}.hero h1{font-size:clamp(64px,7.8vw,136px);font-weight:600;line-height:.97}.hero h1 em{font-size:1.25em;line-height:.95}.hero-link{background:var(--paper);color:var(--ink);display:flex;align-items:center;justify-content:space-between;gap:44px;padding:20px 24px;font-size:15px;font-weight:500}.hero-link span{font-size:25px}.hero-link:hover{background:var(--orange);color:#000}.section{padding:110px 48px}.eyebrow{display:block;font-size:12px;font-weight:600;letter-spacing:.1em;margin-bottom:32px}.intro h2{font-size:clamp(44px,5.8vw,88px);font-weight:600}.category-links{margin-top:52px;display:flex;gap:12px;flex-wrap:wrap}.category-links a{padding:12px 19px;border:1px solid var(--line);font-size:15px}.category-links a:hover{background:var(--ink);color:var(--paper)}.menu-panel{position:fixed;inset:104px 0 0;background:var(--ink);color:var(--paper);z-index:25;padding:45px 7vw;overflow:auto}.menu-panel[hidden]{display:none}.menu-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 10vw}.menu-grid a{display:flex;justify-content:space-between;padding:11px 0;border-bottom:1px solid #59564f;font-size:clamp(24px,3.3vw,50px);font-weight:500;letter-spacing:-.035em}.menu-grid a:hover{color:var(--orange)}.menu-grid small{font-size:12px;font-weight:400;letter-spacing:0;align-self:center;color:var(--stone)}.menu-extra{display:flex;flex-wrap:wrap;gap:25px;margin-top:35px;font-size:14px;color:var(--stone)}.site-footer{background:var(--ink);color:var(--paper);padding:70px 48px 30px}.site-footer>a{font-size:clamp(30px,4vw,60px);font-weight:500;letter-spacing:-.04em;line-height:1.1;display:block;max-width:850px}.site-footer>div{border-top:1px solid #59564f;margin-top:65px;padding-top:24px;display:flex;gap:28px;flex-wrap:wrap;font-size:13px}.site-footer>div span{margin-right:auto}.site-footer a:hover{color:var(--orange)}@media(min-width:1800px){.section,.site-footer{padding-left:max(48px,calc((100vw - 1680px)/2));padding-right:max(48px,calc((100vw - 1680px)/2))}}@media(max-width:760px){.site-header{height:86px;padding:0 20px;gap:12px}.brand{width:215px}.desktop-nav{display:none}.menu-toggle{padding:0 14px;height:46px;gap:12px}.menu-toggle span{display:none}.menu-panel{inset:86px 0 0;padding:25px}.menu-grid{grid-template-columns:1fr;gap:0}.menu-grid a{font-size:28px;padding:8px 0}.hero{height:calc(100svh - 86px);min-height:580px}.hero-top,.hero-bottom,.hero-content{left:24px;right:24px}.hero-top span:last-child{display:none}.hero-content{bottom:95px;display:block}.hero h1{font-size:clamp(64px,13vw,100px)}.hero-link{margin-top:35px;width:fit-content;font-size:14px;padding:13px 18px}.hero-bottom span:last-child{display:none}.section{padding:70px 24px}.site-footer{padding:54px 24px 26px}.site-footer>div{gap:16px}.site-footer>div span{flex-basis:100%}.category-links{gap:8px}.category-links a{padding:10px 13px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
.desktop-nav{gap:24px;font-size:14px}.desktop-nav a[aria-current],.category-links a[aria-current]{border-color:var(--ink)}.category-links a[aria-current]{background:var(--ink);color:var(--paper)}.intro-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:48px}.intro-heading>p{font-size:16px;line-height:1.7;max-width:320px;margin-bottom:8px}.photo-grid{display:grid;gap:40px 24px;margin-top:50px}.home-grid{grid-template-columns:repeat(12,1fr)}.home-grid .photo-card:nth-child(6n+1){grid-column:span 7}.home-grid .photo-card:nth-child(6n+2){grid-column:span 5}.home-grid .photo-card:nth-child(6n+3),.home-grid .photo-card:nth-child(6n+4){grid-column:span 6}.home-grid .photo-card:nth-child(6n+5){grid-column:span 5}.home-grid .photo-card:nth-child(6n+6){grid-column:span 7}.photo-open{display:block;background:none;border:0;width:100%;padding:0;text-align:left}.photo-frame{display:block;position:relative;overflow:hidden;background:var(--stone);isolation:isolate}.home-grid .photo-frame{height:480px}.photo-frame>img{height:100%;width:100%;object-fit:cover;transition:transform 500ms cubic-bezier(.2,.65,.3,1)}.photo-open:hover .photo-frame>img,.photo-open:focus-visible .photo-frame>img{transform:scale(1.04)}.photo-overlay{position:absolute;inset:0;color:#fff;background:linear-gradient(transparent 20%,rgba(0,0,0,.82));display:flex;justify-content:flex-end;flex-direction:column;gap:12px;padding:28px;opacity:0;transition:opacity .3s}.photo-open:hover .photo-overlay,.photo-open:focus-visible .photo-overlay{opacity:1}.overlay-client{display:block;font-size:clamp(20px,2.1vw,32px);font-weight:500;line-height:1.15;max-width:90%;letter-spacing:-.03em}.overlay-client small{display:block;font-size:11px;font-weight:400;letter-spacing:.08em;margin-bottom:10px}.overlay-credit{font-size:14px}.expand-icon{position:absolute;right:25px;top:18px;font-size:32px}.photo-caption{display:flex;justify-content:space-between;align-items:baseline;padding-top:14px;font-size:16px;font-weight:500;gap:20px}.photo-caption small{font-size:12px;white-space:nowrap;font-weight:400}.touch-credit{display:none}.film-teaser{display:grid;grid-template-columns:4fr 7fr;gap:80px;background:var(--ink);color:var(--paper);padding:90px 48px;align-items:center}.film-teaser h2{font-size:clamp(44px,5vw,75px);font-weight:500}.film-teaser .text-link{margin-top:45px}.text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;border-bottom:1px solid currentColor;padding-bottom:8px;font-size:16px;font-weight:500}.film-teaser-image{position:relative;display:block;overflow:hidden;aspect-ratio:16/10}.film-teaser-image>img{height:100%;object-fit:cover;transition:transform .5s}.film-teaser-image:hover>img{transform:scale(1.04)}.play-mark{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:64px;height:64px;border:1px solid #fff;border-radius:50%;background:rgba(0,0,0,.35);color:#fff;font-size:20px;padding-left:3px}.brand-statement{display:flex;align-items:center;justify-content:space-between;background:var(--orange);color:#000;padding:95px 48px;gap:45px}.brand-statement p{font-size:clamp(52px,8vw,120px);line-height:.95;letter-spacing:-.06em;font-weight:600}.brand-statement em{font-size:1.1em}.statement-mark{width:31%;max-width:420px}.statement-mark img{mix-blend-mode:multiply}.page-heading{padding:55px 48px 0}.back-link{font-size:14px;display:inline-block;margin-bottom:62px}.back-link:hover{text-decoration:underline}.heading-row{display:flex;justify-content:space-between;align-items:flex-end;gap:50px}.heading-row .eyebrow{margin-bottom:24px}.heading-row h1{font-size:clamp(64px,8vw,116px);font-weight:600;max-width:950px}.heading-row>p{max-width:340px;line-height:1.7;margin-bottom:5px}.gallery-section,.clients-section,.video-section{padding:0 48px 100px}.gallery-section .category-links{margin:50px 0 65px;border-bottom:1px solid var(--line);padding-bottom:24px}.gallery-title{display:flex;justify-content:space-between;align-items:baseline;gap:30px}.gallery-title h2{font-size:34px;font-weight:500}.gallery-title>span{font-size:13px;white-space:nowrap}.category-grid{grid-template-columns:1fr 1fr}.category-grid .photo-frame{aspect-ratio:4/3}.category-grid .photo-card:nth-child(5n+3){grid-column:span 2}.category-grid .photo-card:nth-child(5n+3) .photo-frame{aspect-ratio:2/1}.draft-note{border-left:3px solid var(--orange);padding-left:18px;font-size:14px;line-height:1.65;margin-top:45px;max-width:730px;color:#57534c}.next-section{border-top:1px solid var(--line);padding:60px 48px;display:flex;justify-content:space-between;align-items:center;gap:28px}.next-section>span{font-size:12px;letter-spacing:.06em}.next-section>a{font-size:clamp(28px,4vw,55px);font-weight:500;letter-spacing:-.04em}.lightbox{width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;padding:24px 32px;border:0;background:#151513;color:var(--paper);overflow:hidden}.lightbox::backdrop{background:#151513}.lightbox[open]{display:flex;flex-direction:column}.lightbox-top{display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:14px;flex-shrink:0}.lightbox-close{border:0;background:transparent;color:var(--paper);padding:8px;font-size:14px;display:flex;align-items:center;gap:20px}.lightbox-close span{font-size:30px;line-height:1}.lightbox-picture{display:grid;grid-template-columns:52px minmax(0,1fr) 52px;gap:20px;align-items:center;flex:1;min-height:0;padding:18px 0}.lightbox-picture img{height:100%;max-height:calc(100dvh - 180px);object-fit:contain}.lightbox-prev,.lightbox-next{background:none;border:1px solid #666259;color:var(--paper);height:52px;width:52px;font-size:24px}.lightbox-caption{display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:14px;padding:15px 0 0;flex-shrink:0}.lightbox-caption strong{font-size:19px;font-weight:500;max-width:65%}.video-section{padding-top:70px}.video-grid{display:grid;grid-template-columns:1fr 1fr;gap:55px 28px}.video-poster{display:block;padding:0;border:0;position:relative;width:100%;background:var(--ink);aspect-ratio:16/9;overflow:hidden}.video-poster img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.video-poster:hover img{transform:scale(1.04)}.video-duration{position:absolute;bottom:15px;right:15px;color:#fff;background:#242320;padding:3px 8px;font-size:13px}.video-card h2{font-size:24px;line-height:1.2;font-weight:500;letter-spacing:-.03em;margin-top:20px}.video-card iframe{width:100%;aspect-ratio:16/9;border:0;display:block}.video-load{padding:22px;background:#e4ded4;margin-top:20px;font-size:14px}.video-load p{margin-bottom:20px}.button-dark{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;padding:17px 22px;background:var(--ink);color:var(--paper);border:1px solid var(--ink);font-size:15px;font-weight:500}.button-dark:hover{background:#000}.video-external{display:block;margin-top:20px;text-decoration:underline}.video-notice{font-size:14px;color:#57534c;margin-top:48px}.single-video{grid-template-columns:1fr;max-width:1000px}.single-video .video-card h2{font-size:30px}.clients-section{padding-top:80px}.client-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.client-grid>div{min-height:155px;display:flex;align-items:center;justify-content:center;text-align:center;padding:25px;font-size:25px;font-weight:600;line-height:1.2;letter-spacing:-.035em;border-bottom:1px solid var(--line);border-right:1px solid var(--line)}.partner-block{padding:70px 0 0}.partner-block>a{display:flex;justify-content:space-between;font-size:40px;letter-spacing:-.035em;max-width:700px}.about-section{padding:90px 48px 110px;display:grid;grid-template-columns:1fr 1fr;gap:9vw}.about-mark{background:var(--orange);display:grid;place-items:center;aspect-ratio:1}.about-mark img{width:90%}.about-copy h2{font-size:72px;font-weight:500;margin-bottom:35px}.about-copy p{margin-bottom:24px;line-height:1.8}.about-copy .draft-note{font-size:14px;margin-top:40px}.contact-section{padding:85px 48px 110px;display:grid;grid-template-columns:1fr 1fr;gap:9vw}.contact-email,.contact-phone{display:block;font-size:clamp(20px,2.25vw,35px);font-weight:500;letter-spacing:-.03em;overflow-wrap:anywhere}.contact-phone{margin-top:15px}.contact-details address{font-style:normal;font-size:16px;margin-top:45px;line-height:1.7}.contact-details .text-link{margin-top:45px}form h2{font-size:32px;font-weight:500;margin-bottom:30px}form label{display:block;font-size:14px;font-weight:500;margin-bottom:25px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:24px}input,textarea,select{display:block;width:100%;border:0;border-bottom:1px solid #8b867c;background:transparent;border-radius:0;padding:12px 0;font-size:16px;color:var(--ink);margin-top:8px}textarea{resize:vertical}select{min-height:48px}.form-info{font-size:13px;line-height:1.7;color:#57534c;margin-bottom:25px}.form-status{font-size:14px;margin-top:22px;line-height:1.6}.legal-copy{max-width:900px;padding:65px 48px 110px;line-height:1.8}.legal-copy h2{font-size:23px;letter-spacing:-.02em;margin:32px 0 18px}.legal-copy p{margin-bottom:24px}.legal-copy a:not(.text-link){text-decoration:underline}.menu-grid a[aria-current]{color:var(--orange)}.menu-panel[hidden],.video-load[hidden]{display:none!important}
@media(max-width:1100px){.desktop-nav{gap:18px}.site-header{gap:20px;padding:0 24px}.brand{width:230px}.menu-toggle{gap:14px;padding:0 18px}.intro-heading{display:block}.intro-heading>p{margin-top:30px;max-width:none}.home-grid .photo-frame{height:360px}.film-teaser{gap:45px}.heading-row{display:block}.heading-row>p{margin-top:30px;max-width:620px}.contact-section{gap:50px}.client-grid>div{font-size:21px}}
@media(max-width:940px){.desktop-nav{display:none}.menu-toggle{margin-left:auto}.contact-section,.about-section{gap:45px;grid-template-columns:1fr}.about-mark{max-width:500px}.contact-details{padding-bottom:35px;border-bottom:1px solid var(--line)}}
@media(max-width:760px){.site-header{padding:0 20px}.brand{width:215px}.photo-grid{gap:30px 16px;margin-top:35px}.home-grid,.category-grid{grid-template-columns:1fr}.home-grid .photo-card,.category-grid .photo-card:nth-child(5n+3){grid-column:auto}.home-grid .photo-frame,.category-grid .photo-frame,.category-grid .photo-card:nth-child(5n+3) .photo-frame{height:auto;aspect-ratio:4/3}.photo-overlay{padding:20px}.photo-caption{font-size:16px}.touch-credit{display:block;font-size:13px;line-height:1.6;margin-top:7px;color:#57534c}.film-teaser{grid-template-columns:1fr;padding:60px 24px;gap:40px}.film-teaser .text-link{margin-top:25px}.brand-statement{padding:65px 24px;gap:15px}.brand-statement p{font-size:clamp(44px,10vw,75px)}.statement-mark{width:32%}.page-heading{padding:35px 24px 0}.back-link{margin-bottom:45px}.heading-row h1{font-size:clamp(54px,11vw,84px)}.heading-row>p{font-size:16px}.gallery-section,.clients-section,.video-section{padding:0 24px 70px}.gallery-section .category-links{margin:35px 0 40px}.gallery-title{display:block}.gallery-title h2{font-size:28px}.gallery-title>span{display:block;margin-top:15px}.next-section{padding:40px 24px;display:block}.next-section>a{display:block;margin-top:18px}.lightbox{padding:16px}.lightbox-picture{grid-template-columns:32px minmax(0,1fr) 32px;gap:8px}.lightbox-prev,.lightbox-next{width:32px;height:44px;font-size:20px}.lightbox-caption{display:block;min-height:80px}.lightbox-caption strong{display:block;font-size:16px;max-width:none}.lightbox-caption>span{display:block;margin-top:7px;font-size:13px}.lightbox-picture img{max-height:calc(100dvh - 220px)}.video-section,.clients-section{padding-top:50px}.video-grid{grid-template-columns:1fr;gap:40px}.video-card h2,.single-video .video-card h2{font-size:23px}.client-grid{grid-template-columns:1fr 1fr}.client-grid>div{min-height:120px;font-size:18px;padding:15px}.partner-block>a{font-size:32px}.about-section,.contact-section{padding:55px 24px 70px;gap:45px}.about-copy h2{font-size:60px}.form-row{grid-template-columns:1fr;gap:0}.legal-copy{padding:35px 24px 70px}.draft-note{font-size:13px}}
@media(hover:none){.touch-credit{display:block;font-size:13px;line-height:1.6;margin-top:7px}.photo-overlay{display:none}}

.site-header{position:sticky;top:0}

/* Full-screen entry: transparent wordmark over the water photograph. */
.home-page .site-header{position:fixed;top:0;left:0;right:0;transform:translateY(-110%);visibility:hidden;transition:transform .3s,visibility .3s}
.home-page.has-entered .site-header,.home-page:has(.site-header:focus-within) .site-header{transform:translateY(0);visibility:visible}
.hero.hero-entrance{height:100svh;min-height:0;max-height:none;display:grid;place-items:center}
.hero-entrance .hero-shade{background:rgba(15,13,11,.23)}
.entrance-center{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;width:min(760px,84vw);text-align:center}
.entrance-center h1{width:100%;margin:0;font-size:inherit;line-height:1}
.entrance-center h1 img{width:100%;height:auto}
.entrance-link{display:flex;flex-direction:column;align-items:center;gap:14px;padding:18px 28px;margin-top:20px;font-size:18px;font-weight:500;color:#fff;letter-spacing:.015em;text-shadow:0 1px 12px rgba(0,0,0,.5)}
.entrance-link span{font-size:27px;line-height:1;transition:transform .25s}
.entrance-link:hover span{transform:translateY(5px)}
.entrance-link:hover{text-decoration:underline;text-underline-offset:5px}
@media(max-width:760px){.entrance-center{width:90vw}.entrance-link{font-size:16px;margin-top:20px}.hero-entrance .hero-image{object-position:42% center}}

/* Compact photo wall: no click action or fullscreen viewer. */
:root{--gallery-divider:#fff;--gallery-gap:2px}
.photo-grid.home-grid,.photo-grid.category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--gallery-gap);padding:var(--gallery-gap);background:var(--gallery-divider);margin-top:28px}
.photo-grid .photo-card:nth-child(n){grid-column:auto;min-width:0;cursor:default}
.photo-grid .photo-card:nth-child(n) .photo-frame{height:100%;aspect-ratio:4/3}
.photo-card .photo-frame>img{transition:transform 350ms ease;object-fit:cover}
.photo-card:hover .photo-frame>img,.photo-card:focus-visible .photo-frame>img{transform:scale(1.035)}
.photo-card:hover .photo-overlay,.photo-card:focus-visible .photo-overlay{opacity:1}
.photo-card:focus-visible{outline:3px solid var(--orange);outline-offset:-3px}
.photo-card .photo-overlay{padding:20px;gap:8px;pointer-events:none}
.photo-card .overlay-client{font-size:clamp(18px,1.6vw,25px)}
.gallery-section{padding-left:12px;padding-right:12px}
.gallery-section>.category-links,.gallery-section>.gallery-title,.gallery-section>.draft-note{margin-left:36px;margin-right:36px}
.home-grid{margin-left:-36px;margin-right:-36px}
@media(max-width:1000px){.photo-grid.home-grid,.photo-grid.category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.gallery-section{padding-left:2px;padding-right:2px}.gallery-section>.category-links,.gallery-section>.gallery-title,.gallery-section>.draft-note{margin-left:22px;margin-right:22px}.home-grid{margin-left:-22px;margin-right:-22px}.photo-card .photo-overlay{padding:12px}.photo-card .overlay-client{font-size:16px}.photo-card .overlay-credit{font-size:12px}.photo-card .overlay-client small{font-size:10px;margin-bottom:5px}}
@media(hover:none){.photo-card .photo-overlay{display:flex;opacity:1;background:linear-gradient(transparent 25%,rgba(0,0,0,.85))}.photo-grid.home-grid,.photo-grid.category-grid{grid-template-columns:1fr}.photo-card .overlay-client{font-size:20px}.photo-card .overlay-credit{font-size:14px}}

/* Justified rows preserve each photograph's native orientation and order. */
.photo-grid.home-grid,.photo-grid.category-grid{display:flex;flex-wrap:wrap;align-items:flex-start;gap:2px;background:#fff}
.photo-grid .photo-card:nth-child(n){flex:none;max-width:100%;overflow:hidden;background:#fff}
.photo-grid .photo-card:nth-child(n) .photo-frame{width:100%;height:100%;aspect-ratio:auto}
.photo-grid .photo-frame>img{width:100%;height:100%;object-fit:contain}
.gallery-navigation{padding:24px 48px 0}
.gallery-navigation .category-links{margin:0}
@media(max-width:760px){.gallery-navigation{padding:24px 24px 0}}

/* Large masonry tiles: portrait photographs are naturally taller. */
.photo-grid.home-grid,.photo-grid.category-grid{display:block;position:relative;padding:0;background:#fff}
.gallery-section{padding-left:0;padding-right:0}
.photo-grid .photo-card:nth-child(n){margin:0}

/* Dedicated galleries: navigation and images only. */
.gallery-section{padding:0}
.photo-grid.category-grid{margin-top:0}
.site-footer[hidden]{display:none}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.gallery-mobile-nav{display:none}
@media(max-width:1000px){.gallery-mobile-nav{display:flex;flex-wrap:wrap;gap:16px;padding:18px 24px;background:var(--paper)}.gallery-mobile-nav a{font-size:14px;padding-bottom:4px}.gallery-mobile-nav a[aria-current]{border-bottom:2px solid var(--orange)}}

/* Quiet, readable image credits. */
.photo-card .photo-overlay{padding:18px 20px;gap:5px}
.photo-card .overlay-client{font-size:14px;font-weight:400;line-height:1.4;letter-spacing:0;max-width:100%}
.photo-card .overlay-credit{font-size:12px;font-weight:400;line-height:1.4;letter-spacing:0}
@media(max-width:760px){.photo-card .photo-overlay{padding:12px 14px;gap:4px}.photo-card .overlay-client{font-size:12px}.photo-card .overlay-credit{font-size:11px}}

.video-section{padding:24px 32px 48px}
.video-categories{display:flex;gap:24px;flex-wrap:wrap;margin-bottom:28px;font-size:14px}
.video-categories a{padding-bottom:6px;border-bottom:1px solid var(--orange)}
.video-group{scroll-margin-top:120px;margin-bottom:45px}
.video-category-title{font-size:18px;font-weight:500;margin:0 0 16px}
.video-grid{gap:28px 20px}
.video-stage{position:relative;width:100%;aspect-ratio:16/9;background:#141414;overflow:hidden}
.video-stage .video-poster,.video-stage iframe{display:block;width:100%;height:100%;aspect-ratio:16/9;border:0;margin:0}
.video-stage .video-poster img{display:block;width:100%;height:100%;object-fit:cover;transform:none}
.video-stage .video-poster:hover img{transform:none}
.video-card h3{font-size:14px;font-weight:400;line-height:1.5;margin:10px 0 0}
@media(max-width:760px){.video-section{padding:20px 14px}.video-grid{grid-template-columns:1fr}.video-categories{gap:16px}}

/* Compact video thumbnails, including Live. */
.video-grid,.video-grid.single-video{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px 16px}
.video-card h3{font-size:12px;line-height:1.4;margin-top:8px}
.video-stage .play-mark{width:42px;height:42px;font-size:14px}
.video-stage .video-duration{font-size:11px;bottom:8px;right:8px;padding:2px 5px}
@media(max-width:1100px){.video-grid,.video-grid.single-video{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.video-grid,.video-grid.single-video{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 12px}}
@media(max-width:420px){.video-grid,.video-grid.single-video{grid-template-columns:1fr}}

.video-source-link{display:inline-block;font-size:11px;margin-top:6px;text-decoration:underline;text-underline-offset:3px}

.video-stage video{display:block;width:100%;height:100%;object-fit:contain;background:#141414}

/* Give the single livestream more room than the Movie thumbnails. */
.video-grid.single-video{grid-template-columns:minmax(0,1fr);width:calc((100% - 16px)/2);max-width:840px}
@media(max-width:1100px){.video-grid.single-video{width:66.6667%}}
@media(max-width:760px){.video-grid.single-video{width:100%}}

.client-grid>div{overflow-wrap:anywhere;font-size:clamp(16px,1.5vw,22px);line-height:1.4}

/* Legal and per-video privacy information */
.legal-copy h3{font-size:18px;margin:28px 0 12px}.legal-copy{overflow-wrap:anywhere}.video-privacy{font-size:11px;line-height:1.6;color:#57534c;margin:10px 0}.video-privacy a,.form-info a{text-decoration:underline}.video-reset{font:inherit;color:inherit;background:none;border:0;padding:8px 0;text-decoration:underline;cursor:pointer}

.contact-person{display:flex;align-items:center;gap:24px;margin-bottom:32px}.contact-portrait{width:120px;height:160px;object-fit:cover;flex-shrink:0;border-radius:3px;border-bottom:3px solid var(--orange)}.contact-person .eyebrow{color:#a83220;margin-bottom:12px;display:block}.contact-person-name{font-size:24px;font-weight:600;line-height:1.3}.contact-person-name span{display:block;font-size:13px;font-weight:400;margin-top:7px;letter-spacing:0}@media(max-width:760px){.contact-portrait{width:96px;height:128px}.contact-person{gap:20px}.contact-person-name{font-size:22px}}

.client-grid>.client-tile{flex-direction:column;gap:20px;min-height:190px;padding:28px 24px;font-size:18px}.client-logo-wrap{height:58px;width:170px;display:flex;align-items:center;justify-content:center}.client-logo{width:auto;height:auto;max-width:100%;max-height:58px;object-fit:contain}.logo-dark{background:var(--ink);border-radius:3px;padding:7px}.partner-identity{display:flex;align-items:center;gap:24px}.partner-logo{width:110px;height:70px;object-fit:contain;background:var(--ink);padding:9px;border-radius:3px}@media(max-width:600px){.client-grid>.client-tile{font-size:15px;padding:22px 14px;min-height:170px}.client-logo-wrap{width:125px;height:50px}.client-logo{max-height:50px}.partner-logo{width:85px;height:55px}.partner-identity{gap:16px}}

/* Direct navigation and a small legal footer on every page. */
.desktop-nav{display:flex;gap:24px;color:var(--orange)}.desktop-nav a:hover,.desktop-nav a[aria-current]{border-color:var(--orange)}.desktop-nav a[aria-current]{font-weight:700}.gallery-mobile-nav{display:none!important}.site-footer{padding:24px 48px;display:flex;align-items:center;justify-content:space-between;gap:24px;background:var(--paper);color:var(--ink);border-top:1px solid var(--line);font-size:12px}.site-footer nav{display:flex;gap:24px}.site-footer nav a{padding:8px 0}.home-page .site-footer{position:absolute;bottom:0;left:0;right:0;z-index:2;background:transparent;border:0;color:white;text-shadow:0 1px 5px #000}
@media(max-width:1100px){.site-header{height:auto;min-height:104px;flex-wrap:wrap;gap:18px;padding:20px 24px}.desktop-nav{display:flex;flex-wrap:wrap;gap:8px 22px}.brand{width:230px}}
@media(max-width:940px){.site-header{display:flex;align-items:flex-start;flex-direction:column;gap:15px}.desktop-nav{display:flex;margin-left:0;width:100%;font-size:14px;gap:4px 20px}.site-footer{padding:20px 24px}.desktop-nav a{padding:7px 0}}
@media(max-width:420px){.site-footer{gap:12px;padding:16px 20px;font-size:11px}.site-footer nav{gap:16px}}

.video-overlay-open{overflow:hidden}.video-overlay{width:min(76vw,1100px,calc((100dvh - 145px)*16/9));max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);padding:0;border:1px solid #56514b;border-radius:8px;background:var(--ink);color:var(--paper);box-shadow:0 28px 100px #0008;overflow:auto}.video-overlay::backdrop{background:rgba(20,19,17,.6);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px)}.video-overlay-bar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 20px}.video-overlay-bar h2{font-size:16px;font-weight:500;line-height:1.4;letter-spacing:0}.video-overlay-close{flex-shrink:0;width:40px;height:40px;border:0;border-radius:50%;background:var(--orange);color:var(--ink);font-size:30px;line-height:1}.video-overlay-player{aspect-ratio:16/9;background:#000}.video-overlay-player iframe,.video-overlay-player video{display:block;width:100%;height:100%;border:0;object-fit:contain}.video-overlay-note{padding:14px 20px;font-size:12px;line-height:1.5;letter-spacing:0;color:var(--stone)}.video-overlay-note a{text-decoration:underline}@media(max-width:760px){.video-overlay{width:calc(100vw - 24px);max-width:calc(100vw - 24px)}.video-overlay-bar{padding:10px 12px;gap:12px}.video-overlay-bar h2{font-size:14px}}

/* Compact client overview, with text-only references at the end. */
.client-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.client-grid>.client-tile{min-height:155px;padding:20px 14px;gap:17px;font-size:14px;font-weight:400;line-height:1.45;letter-spacing:0}.client-logo-wrap{width:125px;max-width:100%;height:48px}.client-logo{max-height:48px}.partner-block{padding-top:38px}.partner-block>.eyebrow{margin-bottom:12px}.partner-block>a{font-size:16px;font-weight:400;letter-spacing:0;width:fit-content;gap:18px}.partner-identity{display:inline}.partner-block>a:hover{color:var(--orange)}
@media(max-width:1100px){.client-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:800px){.client-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:560px){.client-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.client-grid>.client-tile{min-height:145px;font-size:13px;padding:18px 12px}.client-logo-wrap{width:110px}}

/* Circular contact portrait with CI-orange border. */
.contact-portrait{width:120px;height:120px;border:3px solid var(--orange);border-radius:50%;object-fit:cover;object-position:center 0%}@media(max-width:760px){.contact-portrait{width:96px;height:96px}}

.client-logo[src$="energie-modern.png"]{mix-blend-mode:multiply}


/* Review: readable consent and legal links. */
.video-privacy{font-size:12px}.legal-copy a{text-decoration:underline;text-underline-offset:3px}.form-row>*{min-width:0}.contact-email{overflow-wrap:anywhere}

/* Mobile credits stay hidden until the photograph is tapped. */
.photo-card.caption-open .photo-overlay{opacity:1}
@media(max-width:760px),(hover:none){
 .photo-card .photo-overlay,.photo-card:hover .photo-overlay{opacity:0}
 .photo-card.caption-open .photo-overlay,.photo-card:focus-visible .photo-overlay{opacity:1}
 .photo-card:hover .photo-frame>img{transform:none}
}

/* Compact descriptive content beneath the portfolio. */
.portfolio-summary{padding:42px 24px;max-width:960px;margin:auto}.portfolio-summary h1{font-size:clamp(25px,4vw,38px);margin-bottom:18px}.portfolio-summary p{max-width:760px;line-height:1.7;margin-bottom:20px}.portfolio-summary a{display:inline-block;text-decoration:underline;text-underline-offset:4px;margin:0 24px 12px 0}.home-intro-copy{max-width:760px;margin:24px 0;line-height:1.7}.entrance-location{margin-top:18px;font-size:clamp(14px,2vw,20px);color:var(--paper)}.home-page .site-footer{position:static;background:var(--paper);color:var(--ink);text-shadow:none}.photo-grid:not([style]) .photo-frame>img{height:auto}.photo-grid:not([style]){display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start}.photo-grid.people-grid:not([style]){grid-template-columns:repeat(4,minmax(0,1fr))}@media(max-width:999px){.photo-grid:not([style]),.photo-grid.people-grid:not([style]){grid-template-columns:repeat(2,minmax(0,1fr))}}
