:root{--bg:#10110f;--fg:#f1efe8;--muted:#b0b1a7;--accent:#c5d2af;--g:clamp(22px,4.8vw,85px)}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:95px}body{background:var(--bg);color:var(--fg);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}button:disabled{opacity:.5;cursor:wait}img{display:block;width:100%}h1,h2,h3{font-weight:400}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:5px}[hidden]{display:none!important}::selection{background:var(--accent);color:#10110f}.skip{position:fixed;top:10px;left:10px;padding:15px;background:white;color:black;z-index:2000;transform:translateY(-150%)}.skip:focus{transform:none}.brand{font-size:14px;letter-spacing:.09em;white-space:nowrap;font-weight:600}.brand span{font-weight:400}.brand b{color:var(--accent);margin-left:14px;font-size:20px;font-weight:400}header{position:fixed;top:0;left:0;right:0;height:86px;display:flex;align-items:center;padding:0 var(--g);z-index:100;background:linear-gradient(#0008,transparent);border-bottom:1px solid #ffffff20;transition:background .3s}header.scrolled{background:#10110ff2;backdrop-filter:blur(15px)}header nav{display:flex;gap:28px;margin-left:auto;margin-right:28px}header nav a,.book{font-size:11px;letter-spacing:.1em;text-transform:uppercase;padding:14px 0}header nav a:hover{color:var(--accent)}.languages{display:flex;align-items:center;font-size:11px;margin-right:20px}.languages span{color:#b0b0a7}.languages button{background:none;border:0;width:35px;height:44px;color:#b8b8ae;font-size:11px}.languages button[aria-pressed=true]{color:white;text-decoration:underline;text-underline-offset:5px}.book{border:1px solid #ffffff70;padding:13px 18px}.book:hover{background:var(--fg);color:var(--bg)}#menu-toggle{display:none;border:0;background:none;font-size:24px;width:44px;height:44px}.hero{height:100svh;min-height:660px;max-height:1250px;position:relative;display:flex;align-items:flex-end;overflow:hidden;background:#263026}.hero-image{position:absolute;inset:-7%;will-change:transform}.hero-image img,.hero-image video{width:100%;height:100%;object-fit:cover}.hero-image video{position:absolute;inset:0}.shade{position:absolute;inset:0;background:linear-gradient(90deg,#0009,transparent 90%),linear-gradient(0deg,#000b,transparent 80%,#0004)}.hero-content{position:relative;width:100%;padding:140px var(--g) 100px}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:10px;line-height:1.7}.hero .eyebrow{display:flex;align-items:center;gap:12px;margin-bottom:28px}.eyebrow i{display:block;width:6px;height:6px;background:var(--accent);border-radius:50%}.hero h1{font-size:clamp(75px,11vw,180px);line-height:.87;letter-spacing:-.065em}.hero h1 span{display:block;color:#f1efe8e0}.hero-subtitle{font-size:12px;letter-spacing:.15em;text-transform:uppercase;margin-top:30px;line-height:1.7}.actions{display:flex;gap:12px;margin-top:30px}.primary,.outline{padding:16px 24px;min-height:49px;display:inline-flex;align-items:center;justify-content:space-between;gap:35px;font-size:11px;text-transform:uppercase;letter-spacing:.08em;border:0}.primary{background:var(--fg);color:var(--bg)}.primary:hover{background:var(--accent)}.outline{background:transparent;border:1px solid #ffffff70}.hero-bottom{position:absolute;bottom:30px;left:var(--g);right:var(--g);display:flex;align-items:center;gap:20px;font-size:10px;letter-spacing:.08em}.hero-bottom small{margin-left:auto;color:#d3d3c9;font-size:9px}#hero-pause{background:#10110f90;border:1px solid #fff6;padding:10px;font-size:11px}.section{padding:clamp(80px,9vw,145px) var(--g)}.heading{display:grid;grid-template-columns:80px minmax(0,1fr) 280px;gap:26px;align-items:start;margin-bottom:70px}.heading .eyebrow{padding-top:10px;color:var(--muted)}.heading h2,.about h2{font-size:clamp(42px,5.5vw,85px);line-height:1.03;letter-spacing:-.055em}.heading p{font-size:14px;line-height:1.8;color:var(--muted);max-width:350px}.projects{display:flex;flex-direction:column;gap:90px}.project{width:92%}.project:nth-child(even){width:82%;margin-left:auto}.project-button{display:block;text-align:left;width:100%;border:0;background:transparent}.project-media{position:relative;aspect-ratio:16/9;overflow:hidden;background:#222}.project-media img{height:120%;object-fit:cover;transform:translateY(-8%);will-change:transform}.play{position:absolute;left:25px;bottom:25px;display:flex;align-items:center;gap:15px;padding:13px 18px;background:#10110fcc;font-size:11px;letter-spacing:.1em;text-transform:uppercase}.project-info{display:flex;justify-content:space-between;gap:20px;padding-top:20px}.project-info h3{font-size:clamp(25px,3vw,43px);letter-spacing:-.04em}.project-info p{font-size:12px;color:var(--muted);margin-top:12px}.project-info>span{font-size:32px}.light{background:#e8e6de;color:#10110f}.light .heading p,.light .eyebrow{color:#5b5e54}.service{display:grid;grid-template-columns:80px minmax(0,1fr) 40%;gap:26px;padding:35px 0;border-top:1px solid #10110f38}.service:last-child{border-bottom:1px solid #10110f38}.service>span{font-size:11px;color:#5b5e54;padding-top:8px}.service h3{font-size:clamp(27px,3vw,45px);letter-spacing:-.04em}.service p{font-size:15px;line-height:1.8;color:#52564c}.about{display:grid;grid-template-columns:25% minmax(0,1fr);gap:30px}.about>div>p{font-size:19px;line-height:1.8;max-width:700px;color:var(--muted);margin-top:35px}.about>.eyebrow{color:var(--muted)}.process{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:60px;margin-top:80px;padding-top:35px;border-top:1px solid #fff3}.process span{font-size:11px;color:var(--accent)}.process h3{font-size:23px;letter-spacing:-.02em;margin:24px 0 15px}.process p{font-size:14px;color:var(--muted);line-height:1.8;max-width:340px}.contact{background:#1b1e18;display:grid;grid-template-columns:1fr 1fr;gap:8vw}.contact h2{font-size:clamp(42px,5.7vw,88px);line-height:1.03;letter-spacing:-.055em;margin:28px 0}.contact p{font-size:15px;color:var(--muted);line-height:1.8;max-width:410px}#contact-links{display:flex;flex-direction:column;gap:15px;margin-top:25px;overflow-wrap:anywhere}form label{display:flex;flex-direction:column;gap:10px;font-size:12px;line-height:1.6}form{display:flex;flex-direction:column;gap:23px}input,textarea,select{width:100%;padding:13px;border:1px solid #ffffff40;background:#11150f;color:var(--fg);border-radius:0;font-size:16px}textarea{resize:vertical}select{min-width:0}.two{display:grid;grid-template-columns:1fr 1fr;gap:15px}.consent{flex-direction:row;align-items:flex-start;color:var(--muted)}.consent input{width:18px;height:18px;flex-shrink:0;margin-top:3px;accent-color:var(--accent)}.consent a{text-decoration:underline}.trap{position:absolute;left:-10000px}#form-status{font-size:13px;color:var(--accent)}footer{padding:32px var(--g);display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid #ffffff20;font-size:11px;color:var(--muted)}footer .brand{font-size:12px;color:var(--fg)}dialog{margin:auto;padding:30px;width:min(1100px,95vw);max-height:92svh;overflow:auto;background:#151713;color:var(--fg);border:1px solid #ffffff30}dialog::backdrop{background:#000d;backdrop-filter:blur(5px)}.viewer-top{display:flex;align-items:start;justify-content:space-between;gap:20px;margin-bottom:20px}.viewer-top h2{font-size:clamp(26px,4vw,48px);letter-spacing:-.04em;margin-top:10px}.viewer-top button,.gallery-controls button{width:44px;height:44px;border:1px solid #ffffff40;background:transparent;flex-shrink:0;font-size:22px}#viewer-description{line-height:1.7;color:var(--muted);margin-bottom:20px;white-space:pre-line}#project-video{width:100%;max-height:65svh;background:black;margin-bottom:25px}#gallery-image{max-height:65svh;object-fit:contain;background:#10110f}.gallery-controls{display:flex;gap:20px;align-items:center;justify-content:center;margin:15px 0;font-size:12px}#thumbnails{display:flex;gap:10px;overflow:auto;padding-bottom:10px}#thumbnails button{border:2px solid transparent;flex:0 0 85px;background:none}#thumbnails button[aria-pressed=true]{border-color:var(--accent)}#thumbnails img{height:65px;object-fit:cover}.noscript{padding:20px;background:#e8e6de;color:#10110f;text-align:center}.preview-note{padding:14px;background:#c5d2af;color:#10110f;text-align:center;position:fixed;bottom:0;left:0;right:0;z-index:110;font-size:13px}
@media(max-width:1050px){header nav{gap:18px;margin-right:15px}.book{display:none}.languages{margin-left:auto;margin-right:0}.heading{grid-template-columns:50px minmax(0,1fr)}.heading p{grid-column:2}.service{grid-template-columns:50px minmax(0,1fr)}.service p{grid-column:2}.contact{gap:40px}.project,.project:nth-child(even){width:100%}.about{grid-template-columns:1fr}.process{gap:30px}}
@media(max-width:700px){header{height:72px}.brand{font-size:11px}.brand b{display:none}.hero{min-height:640px}.hero-content{padding-bottom:100px}.hero h1{font-size:clamp(59px,16.4vw,110px)}.hero-subtitle{font-size:10px;letter-spacing:.1em;max-width:290px}.hero-image img,.hero-image video{object-position:58% center}.hero-bottom{font-size:9px}.actions{flex-wrap:wrap}.primary,.outline{font-size:10px;padding:15px 17px;gap:20px}header nav{position:fixed;top:72px;left:0;right:0;background:var(--bg);padding:25px var(--g);display:none;flex-direction:column;margin:0;gap:12px;box-shadow:0 15px 30px #0008}header nav.open{display:flex}header nav a{font-size:21px;text-transform:none;letter-spacing:0}#menu-toggle{display:block;margin-left:5px}.heading{display:block;margin-bottom:45px}.heading h2{font-size:43px;margin:20px 0}.heading p{margin-top:20px}.project-media{aspect-ratio:4/3}.project-info h3{font-size:28px}.projects{gap:65px}.service{display:block}.service h3{font-size:31px;margin:15px 0}.about h2{font-size:45px}.about>div>p{font-size:17px}.process{grid-template-columns:1fr;margin-top:35px;gap:35px}.process h3{margin-top:15px}.contact{grid-template-columns:1fr}.contact h2{font-size:48px}.two{grid-template-columns:1fr}footer{flex-wrap:wrap;gap:20px}footer .brand{width:100%}dialog{padding:18px}.play{left:15px;bottom:15px;font-size:10px;padding:11px}html{scroll-padding-top:80px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.hero-image{transform:none!important}.project-media img{transform:translateY(-8%)!important}}

/* Three-language selector remains usable on narrow phones. */
@media(max-width:380px){header{padding-left:16px;padding-right:16px}.languages button{width:29px}.languages{font-size:10px}.brand{font-size:10px}#menu-toggle{width:36px;margin-left:0}}

/* Company names of different lengths wrap without covering navigation. */
header>.brand{min-width:0;max-width:28%;white-space:normal;overflow-wrap:anywhere;display:flex;align-items:center;flex-shrink:1}header>.brand [data-company]{text-transform:uppercase;line-height:1.25}.hero h1[data-company-hero]{text-transform:uppercase;overflow-wrap:anywhere;max-width:100%;font-size:clamp(52px,9vw,155px);line-height:.98}footer .brand{white-space:normal;overflow-wrap:anywhere}footer>span{overflow-wrap:anywhere}
@media(max-width:1050px){header>.brand{max-width:32%}}
@media(max-width:700px){header>.brand{max-width:none;flex:1}.languages,#menu-toggle{flex-shrink:0}.hero h1[data-company-hero]{font-size:clamp(42px,13vw,90px);line-height:1.02}.hero-content{padding-top:110px}.hero{height:auto;min-height:100svh}.hero h1[data-company-hero] span{overflow-wrap:anywhere}}

/* Portrait covers preserve the complete frame and avoid cinematic crop. */
.project.project-portrait{width:100%;align-self:center;margin-left:auto;margin-right:auto}.project-portrait .project-media img{height:100%;object-fit:contain;transform:none!important;will-change:auto}.project-portrait .project-media{background:#10110f}.project-portrait .play{max-width:calc(100% - 30px)}
