:root{--orange:#f76932;--paper:#f7f6f2;--ink:#20211f;--muted:#6b6c66;--line:#dcdcd5}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}a,button{ -webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:3px solid var(--orange);outline-offset:5px}button{border:0}header{height:100px;padding:0 4%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;font-size:39px;font-weight:800;letter-spacing:-2.5px}.brand img{width:39px;height:39px;border-radius:50%;object-fit:cover}.brand-dot{color:var(--orange)}nav{display:flex;gap:38px;align-items:center;font-size:13px}nav a span{margin-left:14px}.contact-link{padding:13px 20px;border:1px solid #222;border-radius:30px}#menu{display:none}.intro{padding:42px 7% 52px}.intro-top,.intro-bottom{display:flex;justify-content:space-between;align-items:center}.eyebrow{font-size:10px;letter-spacing:1.8px;font-weight:600;display:flex;gap:10px;align-items:center}.eyebrow i{width:7px;height:7px;border-radius:50%;background:var(--orange)}.intro-note{font-size:12px;line-height:1.5;color:var(--muted)}h1{font-size:clamp(70px,9.2vw,150px);letter-spacing:-.075em;line-height:.92;font-weight:600;margin:48px 0 35px;position:relative}h1>span{color:var(--orange)}h1 svg{width:9vw;height:9vw;stroke:var(--orange);stroke-width:4;fill:none;position:absolute;right:5%;bottom:6px}.intro-bottom p{font-size:14px;line-height:1.55;color:#53544f}.intro-bottom>a{font-size:12px}.intro-bottom>a span{display:inline-grid;place-items:center;border:1px solid #bbb;border-radius:50%;height:38px;width:38px;margin-left:18px}.work{padding:0 2% 70px}.work-heading{padding:21px 1.5%;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line)}.work-heading p{font-size:14px;margin:0}.work-heading em{font-family:Georgia,serif;color:var(--orange)}.filter-bar{display:flex;gap:14px;justify-content:space-between;padding:14px 1.5%;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}#filters{display:flex;gap:6px;flex-wrap:wrap}.filter{background:none;border:1px solid transparent;border-radius:30px;padding:11px 15px;font-size:11px;white-space:nowrap}.filter:hover{border-color:#bcbdb6}.filter[aria-pressed=true]{background:var(--ink);color:#fff}.filter sup{font-size:8px;opacity:.55;padding-left:4px}.view-toggle{background:transparent;width:42px;font-size:24px;flex-shrink:0}.selection-info{display:flex;justify-content:space-between;padding:6px 1.5% 12px;gap:20px;font-size:11px;color:var(--muted)}.selection-info p{margin:12px 0}#count{align-self:center;white-space:nowrap}.film-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:12px}.film-card{grid-column:span 4;position:relative;min-width:0;height:320px;overflow:hidden;border-radius:3px;background:#222;text-align:left;isolation:isolate;padding:0;color:white;display:block}.film-card:nth-child(6n+1),.film-card:nth-child(6n+2){grid-column:span 6;height:410px}.film-card:nth-child(6n+6){grid-column:span 12;height:430px}.film-card img{width:100%;height:100%;object-fit:cover;transition:transform .7s ease,filter .5s;filter:brightness(.89)}.film-card::after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 40%,#0009 100%);z-index:1}.film-card:hover img{transform:scale(1.045);filter:brightness(1)}.film-label{position:absolute;z-index:2;bottom:24px;left:26px;right:70px}.film-label small{font-size:10px;text-transform:uppercase;letter-spacing:1.4px}.film-label strong{display:block;font-size:25px;letter-spacing:-.7px;font-weight:500;margin-top:6px}.film-type{position:absolute;z-index:2;top:20px;left:23px;font-size:9px;letter-spacing:.9px;border:1px solid #ffffff70;border-radius:30px;padding:7px 10px;background:#0001}.play-icon{position:absolute;z-index:2;right:23px;bottom:27px;display:grid;place-items:center;border:1px solid #ffffff90;width:42px;height:42px;border-radius:50%;font-size:13px;padding-left:3px;transition:background .2s}.film-card:hover .play-icon{background:var(--orange);border-color:var(--orange)}.film-index{position:absolute;z-index:2;right:23px;top:26px;font-size:10px;opacity:.7}.film-grid.compact .film-card{grid-column:span 4;height:290px}.archive-line{display:flex;justify-content:space-between;font-size:12px;padding:25px 1.5%;border-bottom:1px solid var(--line)}.archive-line>span{color:var(--muted)}.approach{display:grid;grid-template-columns:1fr 1fr;gap:10%;padding:60px 7% 100px}.approach h2{font-size:clamp(36px,4.2vw,66px);line-height:1.04;letter-spacing:-2.6px;font-weight:500;margin:34px 0}.approach h2 em{color:var(--orange);font-style:normal}.approach-copy{padding-top:40px}.approach-copy p{font-size:13px;line-height:1.8;color:var(--muted)}.approach-copy .large{font-size:23px;line-height:1.4;letter-spacing:-.5px;color:var(--ink);margin-top:0}.steps{margin-top:30px}.steps>div{display:flex;gap:24px;border-top:1px solid var(--line);padding:19px 0}.steps b{font-weight:400;font-size:10px;color:var(--orange);padding-top:4px}.steps span{font-size:15px}.steps small{display:block;font-size:11px;line-height:1.5;color:var(--muted);margin-top:7px}.library{background:#eae9e2;margin:0 2%;padding:50px 5.2% 60px;position:relative;overflow:hidden;min-height:400px}.library h2{font-size:45px;line-height:1.04;font-weight:500;letter-spacing:-2px}.library p{max-width:410px;font-size:13px;line-height:1.8;color:var(--muted)}.library>a{display:inline-block;margin-top:17px;font-size:12px;border-bottom:1px solid #aaa;padding-bottom:8px}.library-art{position:absolute;width:40%;height:100%;right:0;top:0;pointer-events:none}.library-art img{position:absolute;width:65%;height:45%;object-fit:cover;right:15%;top:9%;transform:rotate(-8deg);box-shadow:0 20px 30px #0002}.library-art img+img{top:43%;right:-1%;transform:rotate(9deg)}.library-art span{position:absolute;bottom:16%;left:-6%;font-size:37px;color:var(--orange);font-weight:800;letter-spacing:-2px;line-height:.95;transform:rotate(-8deg)}.contact{padding:100px 7% 70px}.contact h2{font-size:clamp(43px,6.5vw,99px);font-weight:500;line-height:1;letter-spacing:-4px;margin:35px 0}.contact h2 em{font-style:normal;color:var(--orange)}.contact-bottom{display:flex;align-items:center;justify-content:space-between}.contact-bottom p{font-size:13px;line-height:1.7;color:var(--muted)}.contact-bottom>a{background:var(--orange);color:white;padding:17px 24px;border-radius:30px;font-size:13px}.contact-bottom>a span{margin-left:50px}footer{margin:0 4%;padding:27px 0;border-top:1px solid var(--line);display:flex;gap:30px;align-items:center;justify-content:space-between;font-size:10px;color:var(--muted)}.footer-brand{font-size:25px;font-weight:bold;letter-spacing:-1.5px;color:var(--ink)}dialog{border:none;padding:25px;background:#181916;color:white;width:min(1100px,94vw);max-height:94vh;overflow:auto;border-radius:7px}dialog::backdrop{background:#111c;backdrop-filter:blur(9px)}.player-top,.player-info{display:flex;justify-content:space-between;align-items:center;gap:20px}.player-top{margin-bottom:18px}.player-top button,.player-info button{background:transparent;color:#eee;font-size:12px}dialog video{display:block;width:100%;max-height:65vh;background:black;aspect-ratio:16/9}dialog h2{font-size:28px;letter-spacing:-1px;margin:5px 0}#player-client{font-size:10px;text-transform:uppercase;letter-spacing:1.3px;color:#aaa;margin-bottom:5px}#player-description{font-size:13px;color:#aaa}.player-info{margin-top:20px}#video-error{font-size:13px;color:#ffbc9c}#video-error a{text-decoration:underline}body:has(dialog[open]){overflow:hidden}@media(min-width:1800px){main{max-width:1800px;margin:auto}}@media(max-width:800px){header{height:80px;padding:0 5%}.brand{font-size:32px}.brand img{width:32px;height:32px}nav{gap:20px;font-size:11px}nav .contact-link{padding:10px 13px}.intro{padding:30px 5%}.intro-note{font-size:10px}h1{font-size:13vw;margin:35px 0;letter-spacing:-.07em}h1 svg{right:0;width:12vw;height:12vw}.intro-bottom p{font-size:12px}.film-card,.film-card:nth-child(n){grid-column:span 6;height:270px}.film-card:nth-child(3n+1){grid-column:span 12;height:360px}.film-label{left:20px;bottom:20px}.film-label strong{font-size:22px}.film-grid.compact .film-card{grid-column:span 6;height:240px}.filter-bar{gap:3px}.filter{padding:10px;font-size:10px}.view-toggle{width:25px}.approach{gap:7%;padding:40px 5% 65px}.approach-copy{padding-top:35px}.approach-copy .large{font-size:19px}.library{padding:40px 5%}.library h2{font-size:35px}.library p{max-width:52%}.library-art{width:42%}.library-art span{font-size:27px}.contact{padding:70px 5%}.contact h2{letter-spacing:-2.4px}footer{flex-wrap:wrap;gap:15px}}@media(max-width:520px){nav{display:none}#menu{display:block;background:none;font-size:23px}nav.open{display:flex;position:absolute;z-index:10;left:0;right:0;top:80px;flex-direction:column;background:var(--paper);padding:30px;border-bottom:1px solid var(--line);font-size:15px}.intro-note{display:none}.intro-bottom{align-items:flex-end;gap:10px}.intro-bottom p{font-size:11px}.intro-bottom>a{font-size:10px}.intro-bottom>a span{margin-left:7px;width:28px;height:28px}.work-heading p{font-size:11px}.eyebrow{font-size:8px;letter-spacing:1.2px}.work{padding-bottom:20px}.filter-bar{padding:10px 0}.filter{padding:9px 10px;font-size:9px}#filters{gap:2px}.selection-info{font-size:10px}.film-grid{gap:8px}.film-card,.film-card:nth-child(n),.film-grid.compact .film-card{grid-column:span 12;height:260px}.film-type{top:16px;left:17px;font-size:8px}.film-label strong{font-size:24px}.film-label small{font-size:9px}.archive-line{gap:20px;line-height:1.6;font-size:10px}.approach{grid-template-columns:1fr;gap:0;padding-top:35px}.approach h2{font-size:43px;letter-spacing:-2px}.approach-copy{padding-top:0}.library{padding-bottom:210px}.library p{max-width:100%}.library h2{font-size:34px}.library-art{height:210px;width:70%;top:auto;bottom:0}.library-art span{font-size:25px}.contact h2{font-size:43px}.contact-bottom{align-items:flex-start;flex-direction:column;gap:15px}.contact-bottom>a{padding:15px 22px}footer>span:nth-child(2){display:none}dialog{padding:15px}.player-top{gap:10px}.player-info{align-items:flex-start}.player-info button{white-space:nowrap;font-size:10px}dialog h2{font-size:22px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}
/* Portfolio first: keep the introduction short and the image wall in view. */
@media(min-width:801px){.intro{padding:25px 4% 24px}.intro-top{align-items:flex-start}.intro-note{font-size:10px}h1{font-size:clamp(65px,7.2vw,116px);line-height:1.02;margin:23px 0 14px;letter-spacing:-.065em}h1 br{display:none}h1>span::before{content:' '}h1 svg{display:none}.intro-bottom p{margin:7px 0;font-size:12px}.work-heading{padding-top:16px;padding-bottom:16px}.film-card:nth-child(6n+1),.film-card:nth-child(6n+2){height:365px}}
[hidden]{display:none!important}#local-preview-note{margin:15px 1.5% 0;color:#8a572c;font-size:10px;letter-spacing:.3px}.variant-count{position:absolute;z-index:2;right:20px;top:55px;font-size:9px;padding:6px 9px;border-radius:20px;background:#0007;color:#fff}.locked img{filter:none;object-fit:cover}.locked:hover img{filter:none}.locked .film-type{color:#ffad85;border-color:#ffad8560}.locked .play-icon{font-size:20px}.locked .film-label strong{font-size:22px}#variants{display:flex;gap:7px;overflow-x:auto;padding:0 0 14px;max-width:100%;scrollbar-width:thin}.variant-button{flex-shrink:0;max-width:290px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-radius:20px;padding:9px 13px;background:#ffffff10;border:1px solid #ffffff20;font-size:11px;color:#ddd}.variant-button[aria-pressed=true]{background:var(--orange);border-color:var(--orange);color:#fff}#access-request{min-height:280px;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:40px 20px;background:#242722;border:1px solid #ffffff10}.access-lock{font-size:40px;color:var(--orange)}#access-request h3{font-size:25px;margin:14px 0 0;font-weight:500;letter-spacing:-.5px}#access-request p{font-size:13px;max-width:420px;line-height:1.7;color:#bbb}#access-request a{display:inline-block;background:var(--orange);color:#fff;border-radius:30px;padding:14px 20px;font-size:12px;margin:13px 0}#access-request small{font-size:10px;color:#999;margin-top:8px}
/* Resolution-aware mosaic: source pixels limit tile size. */
.header-tools{display:flex;align-items:center;gap:14px}.language-control select{font:inherit;font-size:11px;background:transparent;border:1px solid #c9c9c1;border-radius:20px;padding:9px 10px;max-width:142px;color:var(--ink);cursor:pointer}.language-control select:focus-visible{outline:3px solid var(--orange);outline-offset:3px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}h1 .hero-first{color:var(--ink)}h1>.hero-first::before{content:none}.intro-note{max-width:220px;text-align:right}.film-grid{grid-auto-rows:8px;gap:12px;grid-auto-flow:row dense;align-items:start}.film-grid.category-grid{grid-auto-flow:row}.film-card,.film-card:nth-child(n),.film-grid.compact .film-card{height:auto;justify-self:center;max-width:100%;transition:opacity .25s ease}.film-card img{display:block}.film-card.letterbox img{object-fit:contain}.film-card:hover img{transform:none}.film-label{left:20px;bottom:20px;right:55px}.film-label strong{font-size:24px;line-height:1.12;overflow-wrap:anywhere}.small-card .film-label{left:14px;bottom:15px;right:44px}.small-card .film-label strong,.locked.small-card .film-label strong{font-size:18px;letter-spacing:-.4px}.small-card .film-label small{font-size:8px;letter-spacing:1px}.small-card .play-icon{right:12px;bottom:14px;width:28px;height:28px;font-size:10px}.small-card .film-type{left:12px;top:12px;font-size:7px;padding:5px 7px;max-width:76%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.small-card .film-index{right:12px;top:18px;font-size:8px}.small-card .variant-count{right:12px;top:42px;font-size:7px;padding:4px 7px}.more-wrap{display:flex;align-items:center;flex-direction:column;padding:34px 15px 24px;gap:9px}#more{background:var(--ink);color:var(--paper);border-radius:40px;padding:17px 23px;display:flex;gap:35px;align-items:center;font-size:13px;transition:background .2s}#more:hover{background:var(--orange)}#more>span:last-child{font-size:22px}#more-note{font-size:11px;color:var(--muted);margin:4px 0;text-align:center}.player-info button:disabled{opacity:.5;cursor:default}.steps>div>span>span{display:block}.steps small{max-width:400px}.selection-info{flex-wrap:wrap;gap:0 20px}#count{padding:10px 0}#player-description{line-height:1.6}
@media(min-width:801px){header nav{margin-left:auto;margin-right:35px}h1{font-size:clamp(58px,7.2vw,116px)}}
@media(max-width:800px){.brand{font-size:29px}header{gap:15px}header nav{gap:13px}.language-control select{max-width:120px;font-size:10px}.intro-note{max-width:180px}.film-label strong{font-size:22px}}
@media(max-width:520px){.header-tools{gap:12px}.brand{font-size:30px}.language-control select{max-width:120px}.intro-bottom p{max-width:210px}.intro-bottom>a>span:first-child{display:inline;border:none;margin:0;width:auto;height:auto}.intro-bottom>a>span:last-child{margin-left:5px}.intro h1{font-size:15vw}.film-grid{gap:12px}.contact h2{font-size:40px}.approach h2{font-size:38px}#next-film{white-space:normal;max-width:125px;text-align:right}.small-card .film-label strong{font-size:20px}.more-wrap{padding-top:25px}}

.intro-bottom>a>span:first-child{display:inline;border:0;margin:0;width:auto;height:auto}.intro-bottom>a>span:last-child{display:inline-grid}

nav a>span[data-copy]{margin-left:0}

/* Filled, justified rows preserve the actual image area, including vertical films. */
.film-grid,.film-grid.category-grid{display:block;position:relative;max-width:1280px;margin-inline:auto}
.film-grid .film-card,.film-grid .film-card:nth-child(n),.film-grid.compact .film-card{position:absolute;max-width:none;margin:0}
.film-card img{position:absolute;max-width:none;object-fit:contain;filter:brightness(.93)}
.film-card.narrow-card .film-type,.film-card.narrow-card .film-index,.film-card.narrow-card .variant-count{display:none}
.film-card.narrow-card .film-label{left:10px;right:10px;bottom:46px}.film-card.narrow-card .film-label strong{font-size:15px;line-height:1.1}.film-card.narrow-card .film-label small{font-size:7px;letter-spacing:.3px}

.short-card .film-type,.short-card .film-index{display:none}.short-card .film-label strong{font-size:16px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.short-card .variant-count{top:8px;right:8px}.narrow-card .film-label strong{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}

.mini-card .film-label{display:none}.mini-card .play-icon{right:calc(50% - 14px);bottom:12px}
/* Quiet, tactile motion; image zoom is capped by the available source pixels. */
.film-card img{transition:transform .85s cubic-bezier(.2,.7,.2,1),filter .5s ease}
.film-label{transition:transform .45s cubic-bezier(.2,.7,.2,1)}
.play-icon{transition:transform .4s cubic-bezier(.2,.7,.2,1),background .25s,border-color .25s}
.variant-count{display:flex;align-items:center;gap:7px;backdrop-filter:blur(8px)}
.stack-mark{position:relative;display:inline-block;width:14px;height:10px;border:1px solid currentColor;border-radius:2px;flex-shrink:0}
.stack-mark::before,.stack-mark::after{content:'';position:absolute;inset:-1px;border:1px solid currentColor;border-radius:2px;transition:transform .4s;transform-origin:bottom left}
.stack-mark::before{transform:translate(2px,-2px);opacity:.65}.stack-mark::after{transform:translate(4px,-4px);opacity:.35}
.film-card:focus-visible img{transform:scale(var(--hover-zoom,1));filter:brightness(1)}
.film-card:focus-visible .play-icon{background:var(--orange);border-color:var(--orange)}
@media(hover:hover) and (pointer:fine){
 .film-card:hover img{transform:scale(var(--hover-zoom,1));filter:brightness(1)}
 .film-card:hover .film-label{transform:translateY(-3px)}
 .film-card:hover .play-icon{transform:translate(var(--pointer-x,0px),var(--pointer-y,0px));background:var(--orange);border-color:var(--orange)}
 .film-card:hover .stack-mark::before{transform:translate(2px,-2px) rotate(-9deg)}
 .film-card:hover .stack-mark::after{transform:translate(4px,-4px) rotate(-18deg)}
 #more>span:last-child{transition:transform .35s}#more:hover>span:last-child{transform:rotate(90deg)}
}
dialog[open]{animation:player-in .25s ease-out}@keyframes player-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important}.film-card:hover img,.film-card:focus-visible img,.film-card:hover .film-label,.film-card:hover .play-icon,#more:hover>span:last-child{transform:none}}
.film-card.has-subtitle .film-label{bottom:calc(var(--subtitle-space,30px) + 16px)}
.film-card.has-subtitle .play-icon{bottom:calc(var(--subtitle-space,30px) + 16px)}

#player-original{font-size:13px;color:var(--muted);margin:10px 0 0;line-height:1.5;overflow-wrap:anywhere}

/* Readable approach copy on desktop and touch screens. */
.approach-copy p{font-size:16px;line-height:1.75}
.approach-copy .large{font-size:24px;line-height:1.45}
.steps>div{gap:20px;padding-block:22px}
.steps>div>span{min-width:0;font-size:18px;line-height:1.4}
.steps small{font-size:15px;line-height:1.7;max-width:48ch;margin-top:9px}
@media(max-width:800px){.approach-copy .large{font-size:22px}.approach-copy p,.steps small{font-size:16px}.steps>div>span{font-size:18px}}

/* Compact language flags, matching the orange eyehear accent. */
.language-flags{display:flex;align-items:center;gap:3px}.site-flag{display:grid;place-items:center;padding:6px;border:1px solid transparent;border-radius:20px;background:transparent;cursor:pointer}.site-flag[aria-pressed="true"]{border-color:var(--orange,#f76932);background:#f7693210}.site-flag:focus-visible{outline:2px solid #f76932;outline-offset:2px}.flag{display:block;width:22px;height:15px;border-radius:2px;overflow:hidden;box-shadow:0 0 0 1px #0001}.flag-nl{background:linear-gradient(#ae1c28 0 33.333%,#fff 33.333% 66.666%,#21468b 66.666%)}.flag-en{background:linear-gradient(90deg,transparent 41%,#c8102e 41% 59%,transparent 59%),linear-gradient(transparent 36%,#c8102e 36% 64%,transparent 64%),linear-gradient(90deg,transparent 34%,white 34% 66%,transparent 66%),linear-gradient(transparent 26%,white 26% 74%,transparent 74%),linear-gradient(34deg,transparent 44%,white 44% 56%,transparent 56%),linear-gradient(-34deg,transparent 44%,white 44% 56%,transparent 56%),#012169}.flag-de{background:linear-gradient(#151515 0 33.333%,#d00 33.333% 66.666%,#ffce00 66.666%)}.flag-fr{background:linear-gradient(90deg,#002395 0 33.333%,white 33.333% 66.666%,#ed2939 66.666%)}.flag-es{background:linear-gradient(#aa151b 0 25%,#f1bf00 25% 75%,#aa151b 75%)}@media(max-width:520px){.header-tools{gap:6px}.language-flags{gap:0}.site-flag{padding:5px 4px}.site-flag .flag{width:18px;height:12px}}

/* Original eyehear wordmark; natural SVG proportions and transparent background. */
:root{--orange:#ff6600}.brand.theme-toggle,.footer-brand.theme-toggle{background:transparent;padding:0;border:0;display:inline-flex;align-items:center;flex-shrink:0;line-height:1}.brand .brand-logo{width:174px;height:auto;aspect-ratio:1453.82/340.27;object-fit:contain;border-radius:0}.footer-brand .brand-logo{width:128px;height:auto;object-fit:contain;border-radius:0}.contact-bottom>a,#access-request a{color:#20211f}.filter[aria-pressed=true]{color:var(--paper)}
:root[data-theme="dark"]{--paper:#181b18;--ink:#f2f2e9;--muted:#b5baaf;--line:#3c433b;color-scheme:dark}
:root[data-theme="dark"] .intro-bottom p{color:var(--muted)}:root[data-theme="dark"] .library{background:#242a23}:root[data-theme="dark"] .filter:hover{border-color:#858e7e}:root[data-theme="dark"] .intro-bottom>a span{border-color:#596151}:root[data-theme="dark"] .language-control select{border-color:var(--line)}
@media(max-width:520px){.brand .brand-logo{width:142px}.footer-brand .brand-logo{width:118px}}

/* Shared alignment on Safari, touchscreens and desktop. SVG arrows avoid emoji. */
.link-arrow{display:block;width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
header nav a{display:inline-flex;align-items:center;justify-content:center;gap:8px;text-align:center;line-height:1.25}header nav a>span{margin:0}
.filter{display:inline-flex;align-items:center;justify-content:center;gap:5px;line-height:1.2;text-align:center;min-height:36px}.filter sup{position:static;top:auto;vertical-align:baseline;font-size:.75em;line-height:1;padding:0;align-self:center}
.intro-bottom>a{display:inline-flex;align-items:center;justify-content:center;gap:12px;line-height:1.3;flex-shrink:0}.intro-bottom>a>.arrow-circle{display:inline-flex;align-items:center;justify-content:center;margin:0;width:38px;height:38px;flex:0 0 38px;line-height:1}.intro-bottom>a>.arrow-circle .link-arrow{width:19px;height:19px}
.contact-bottom{gap:24px}.contact-bottom>p{flex:1;min-width:0}.contact-bottom>a{display:inline-flex;align-items:center;justify-content:center;gap:18px;text-align:center;line-height:1.3;min-height:52px;flex-shrink:0}.contact-bottom>a span{margin:0}.contact-bottom>a .link-arrow{width:18px;height:18px}
.view-toggle{display:inline-flex;align-items:center;justify-content:center;align-self:flex-start;border:1px solid transparent;border-radius:8px;min-width:42px;min-height:42px;padding:10px}.view-toggle svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.5}.view-toggle[aria-pressed="true"]{border-color:var(--orange);background:#ff660015;color:var(--orange)}
@media(max-width:520px){.filter{min-height:36px;padding:9px 10px}.filter-bar{align-items:flex-start;gap:6px}#filters{flex:1;min-width:0}.intro-bottom>a{gap:8px;font-size:11px}.intro-bottom>a>.arrow-circle{width:30px;height:30px;flex-basis:30px}.intro-bottom>a>.arrow-circle .link-arrow{width:17px;height:17px}.intro-bottom p{flex:1;min-width:0;max-width:210px}.contact-bottom>a{align-self:flex-start;max-width:100%;padding:15px 22px}.view-toggle{min-width:42px}}

/* Keep counts on the same baseline; superscript varies across browsers. */
.filter{align-items:baseline}.filter-name,.filter-count{display:inline-block;line-height:1.25}.filter-count{font-size:.78em;opacity:.6;font-variant-numeric:tabular-nums}
header nav a{white-space:nowrap;flex-shrink:0}header nav a>.link-arrow{display:block;flex:none}
@media(min-width:521px) and (max-width:1100px){header .brand .brand-logo{width:142px}header nav{margin-left:auto;margin-right:0;gap:18px}.header-tools{flex-shrink:0}header{gap:18px}}
/* Short landscape screens need space for the work, not a full-height intro. */
@media(orientation:landscape) and (max-height:520px) and (max-width:1100px){
 header{height:64px;padding-inline:max(20px,env(safe-area-inset-left)) max(20px,env(safe-area-inset-right));gap:16px}header nav{margin-right:0;gap:16px;font-size:12px}header .brand .brand-logo{width:142px}header nav .contact-link{padding:9px 14px}.header-tools{gap:8px}.site-flag{padding:5px}
 .intro{padding:14px 4% 16px}.intro-note{display:none}.intro h1{font-size:clamp(40px,6vw,60px);line-height:1.04;margin:12px 0 8px}.intro h1 br{display:none}.intro h1>span:not(:first-child)::before{content:' '}.intro-bottom p{font-size:12px;margin:5px 0}.intro-bottom>a>.arrow-circle{width:30px;height:30px;flex-basis:30px}
 .work-heading{padding:12px 1.5%}.filter-bar{padding:8px 1.5%;align-items:center;gap:10px}#filters{flex:1;min-width:0;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin}.filter{flex-shrink:0;font-size:11px;min-height:36px;padding:9px 12px}.selection-info{padding-block:0 6px}.selection-info p{margin-block:8px}.view-toggle{align-self:center}
}

@media(orientation:landscape) and (max-height:520px) and (max-width:700px){header{padding-inline:16px;gap:12px}header .brand .brand-logo{width:116px}header nav{gap:10px;font-size:11px}header nav .contact-link{padding:8px 10px}.header-tools{gap:4px}.language-flags{gap:2px}.site-flag{padding:4px}.site-flag .flag{width:18px;height:12px}}

/* Category controls: a quiet outline and visible rules above and below. */
.filter{border-color:var(--line)}
:root[data-theme="dark"] .filter-bar{border-color:#596151}

/* Centre the label boxes inside each category pill; keep the rows left aligned. */
.filter{align-items:center;justify-content:center;line-height:1}
.filter-name,.filter-count{line-height:1}


/* Lower titles with reserved play-button space and a soft bottom gradient. */
.film-grid .film-card .film-label{left:20px;right:88px;bottom:12px;height:auto;transform:none}
.film-grid .film-card .film-label strong{font-size:22px!important;font-weight:500;line-height:1.16;letter-spacing:-.45px;-webkit-line-clamp:2;text-shadow:0 1px 9px rgb(0 0 0 / 22%)}
.film-card::after{background:linear-gradient(180deg,transparent 30%,rgb(0 0 0 / 3%) 46%,rgb(0 0 0 / 13%) 65%,rgb(0 0 0 / 32%) 84%,rgb(0 0 0 / 59%) 100%)}
.film-card img,.film-card:hover img{filter:brightness(1)}
.film-card .play-icon{right:18px;bottom:17px;width:34px;height:34px;font-size:11px;background:rgb(0 0 0 / 7%);border-color:rgb(255 255 255 / 65%)}
.film-grid .film-card.narrow-card .film-label{left:12px;right:12px;bottom:12px}
.film-grid .film-card.narrow-card .film-label strong{-webkit-line-clamp:4}
.film-card.narrow-card .play-icon{top:46px;bottom:auto;right:10px;width:27px;height:27px}
.film-card.narrow-card .variant-count{display:none}
@media(max-width:800px){
 .film-grid .film-card .film-label{left:14px;right:60px;bottom:12px}
 .film-grid .film-card .film-label strong{font-size:18px!important;line-height:1.16;letter-spacing:-.3px;-webkit-line-clamp:3}
 .film-card .play-icon{width:27px;height:27px;right:11px;bottom:12px;font-size:10px}
 .film-grid .film-card.narrow-card .film-label{left:10px;right:10px;bottom:12px}
}
.internal-use-note{position:absolute;z-index:2;left:20px;top:49px;font-size:8px;letter-spacing:1.4px;text-transform:uppercase;color:#ffb18f}.small-card .internal-use-note{left:12px;top:39px;font-size:7px;letter-spacing:1px}

.film-grid .film-card .film-label strong{width:100%;max-width:100%;overflow-wrap:anywhere}
.film-card .play-icon{transform:none!important}

/* Internal label stays under the lock, separate from the film title. */
.film-card.locked img{visibility:hidden}
.film-card.locked::before{content:'';position:absolute;z-index:2;left:50%;top:calc(var(--private-center-y,100px) - 40px);width:36px;height:44px;transform:translateX(-50%);background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 42 48' fill='none' stroke='%23f76932' stroke-width='2'%3E%3Cpath d='M11 20v-7a10 10 0 0 1 20 0v7'/%3E%3Crect x='5' y='20' width='32' height='25' rx='4'/%3E%3Ccircle cx='21' cy='31' r='2'/%3E%3Cpath d='M21 33v5'/%3E%3C/svg%3E") center/contain no-repeat}
.film-card.locked .internal-use-note{left:0;right:0;top:calc(var(--private-center-y,100px) + 12px);text-align:center;font-size:8px;letter-spacing:1.5px;color:#f7f6f2b3}
.short-card.locked .film-label strong{-webkit-line-clamp:2}
.short-card.locked::before{width:24px;height:29px;top:calc(var(--private-center-y,60px) - 28px)}
.short-card.locked .internal-use-note{top:calc(var(--private-center-y,60px) + 7px);font-size:6px;letter-spacing:1px}
