:root{--bg:#0a0a0a;--bg-soft:#121212;--fg:#f2f2f0;--muted:#8a8a86;--line:hsla(0,0%,100%,.12);--accent:#fff;--nav-h:76px}*{box-sizing:border-box;margin:0;padding:0}body,html{background:var(--bg);color:var(--fg);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,Roboto,Helvetica,Arial,sans-serif;overflow-x:hidden}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}::selection{background:#fff;color:#000}.nav{position:fixed;inset:0 0 auto 0;height:var(--nav-h);display:flex;align-items:center;justify-content:space-between;padding:0 clamp(20px,5vw,64px);z-index:100;transition:background .35s ease,border-color .35s ease,-webkit-backdrop-filter .35s ease;transition:background .35s ease,backdrop-filter .35s ease,border-color .35s ease;transition:background .35s ease,backdrop-filter .35s ease,border-color .35s ease,-webkit-backdrop-filter .35s ease;border-bottom:1px solid transparent}.nav.scrolled{background:hsla(0,0%,4%,.82);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom-color:var(--line)}.nav.menu-open{background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;border-bottom-color:transparent}.nav-toggle,.wordmark{mix-blend-mode:difference}.wordmark{font-weight:600;letter-spacing:.28em;font-size:14px;text-transform:uppercase}.wordmark span{font-weight:300;color:var(--fg)}.nav-links{display:flex;gap:clamp(18px,3vw,40px);align-items:center}.nav-links a{font-size:12px;letter-spacing:.22em;text-transform:uppercase;font-weight:400;opacity:.85;transition:opacity .25s;position:relative;padding:6px 0;mix-blend-mode:difference}.nav-links a.active,.nav-links a:hover{opacity:1}.nav-links a.active:after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:currentColor}.nav-toggle{display:none;background:none;border:none;color:inherit;font-size:12px;letter-spacing:.22em;text-transform:uppercase;cursor:pointer}@media (max-width:720px){.nav-links{position:fixed;inset:0;background:#0a0a0a;flex-direction:column;justify-content:center;align-items:center;gap:36px;transform:translateY(-100%);transition:transform .45s cubic-bezier(.7,0,.2,1)}.nav-links.open{transform:translateY(0)}.nav-links a{font-size:18px;mix-blend-mode:normal}.nav-toggle{display:block;z-index:101}}.hero{height:100vh;height:100svh;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden}.hero-bg,.hero-bg .slide{position:absolute;inset:0}.hero-bg .slide{opacity:0;transition:opacity 2s ease-in-out;transform:scale(1.05);animation:kenburns 12s ease-out forwards}.hero-bg .slide.show{opacity:1}.hero-bg img{width:100%;height:100%;object-fit:cover;filter:brightness(.55) saturate(.95)}@keyframes kenburns{0%{transform:scale(1.12)}to{transform:scale(1)}}.hero-scrim{position:absolute;inset:0;background:radial-gradient(120% 90% at 50% 40%,transparent 30%,rgba(0,0,0,.55) 100%),linear-gradient(0deg,rgba(0,0,0,.75),transparent 55%)}.hero-inner{position:relative;text-align:center;padding:0 24px;z-index:2}.hero-welcome{font-size:12px;letter-spacing:.4em;text-transform:uppercase;color:var(--muted);margin-bottom:26px;animation:rise 1s .1s both}.hero-name{font-size:clamp(44px,11vw,132px);font-weight:300;letter-spacing:.02em;line-height:.98;animation:rise 1.1s .25s both}.hero-title{margin-top:22px;font-size:clamp(13px,1.6vw,18px);letter-spacing:.42em;text-transform:uppercase;color:var(--fg);opacity:.9;animation:rise 1.1s .4s both}.hero-cta{margin-top:48px;display:flex;gap:14px;justify-content:center;flex-wrap:wrap;animation:rise 1.1s .55s both}.btn{display:inline-block;padding:14px 30px;border:1px solid var(--line);font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--fg);background:hsla(0,0%,100%,.02);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transition:all .3s}.btn-solid,.btn:hover{background:#fff;color:#000;border-color:#fff}.btn-solid:hover{background:transparent;color:#fff}@keyframes rise{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}.scroll-hint{position:absolute;bottom:28px;left:50%;transform:translateX(-50%);z-index:2;font-size:10px;letter-spacing:.3em;text-transform:uppercase;color:var(--muted);display:flex;flex-direction:column;align-items:center;gap:10px}.scroll-hint .line{width:1px;height:42px;background:linear-gradient(var(--muted),transparent);animation:drop 1.8s infinite}@keyframes drop{0%{transform:scaleY(0);transform-origin:top}40%{transform:scaleY(1);transform-origin:top}60%{transform:scaleY(1);transform-origin:bottom}to{transform:scaleY(0);transform-origin:bottom}}.section{padding:clamp(80px,12vh,160px) clamp(24px,8vw,140px);border-top:1px solid var(--line)}.eyebrow{font-size:11px;letter-spacing:.36em;text-transform:uppercase;color:var(--muted);margin-bottom:28px}.about-grid{display:grid;grid-template-columns:1.2fr 1fr;grid-gap:clamp(40px,7vw,110px);gap:clamp(40px,7vw,110px);align-items:center}.about-text h2{font-size:clamp(28px,4vw,52px);font-weight:300;margin-bottom:30px;letter-spacing:.01em}.about-text p{color:#cfcfca;font-size:clamp(15px,1.3vw,18px);line-height:1.75;margin-bottom:18px;font-weight:300;max-width:60ch}.about-portrait{position:relative;aspect-ratio:4/5;overflow:hidden}.about-portrait img{width:100%;height:100%;object-fit:cover;filter:grayscale(.15)}@media (max-width:820px){.about-grid{grid-template-columns:1fr}.about-portrait{order:-1;max-height:60vh}}.partners-list{column-count:2;column-gap:clamp(30px,6vw,90px);max-width:760px}.partners-list li{list-style:none;padding:16px 0;border-bottom:1px solid var(--line);font-size:clamp(15px,1.4vw,19px);font-weight:300;letter-spacing:.02em;page-break-inside:avoid;break-inside:avoid}@media (max-width:560px){.partners-list{column-count:1}}.strip{display:grid;grid-auto-flow:column;grid-auto-columns:clamp(240px,32vw,420px);grid-gap:14px;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:14px}.strip::-webkit-scrollbar{height:6px}.strip::-webkit-scrollbar-thumb{background:var(--line)}.strip figure{position:relative;aspect-ratio:3/2;overflow:hidden;scroll-snap-align:start;cursor:pointer}.strip img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.8,.2,1),filter .5s;filter:brightness(.85)}.strip figure:hover img{transform:scale(1.06);filter:brightness(1)}.portfolio-page{padding-top:var(--nav-h);min-height:100vh}.portfolio-head{text-align:center;padding:clamp(40px,7vh,90px) 24px clamp(20px,3vh,36px)}.portfolio-head h1{font-size:clamp(34px,7vw,86px);font-weight:300;letter-spacing:.04em}.portfolio-head p{margin-top:18px;color:var(--muted);font-size:14px;font-weight:300;max-width:56ch;margin-inline:auto;letter-spacing:.02em;min-height:2.6em}.tabs{display:flex;gap:6px;justify-content:center;flex-wrap:wrap;padding:16px 16px 44px;position:-webkit-sticky;position:sticky;top:var(--nav-h);background:linear-gradient(to bottom,var(--bg) 0,var(--bg) 50%,hsla(0,0%,4%,.78) 72%,transparent 100%);z-index:40}.tab{background:none;border:1px solid transparent;color:var(--muted);font-size:12px;letter-spacing:.22em;text-transform:uppercase;padding:12px 20px;cursor:pointer;transition:color .25s,border-color .25s}.tab.active,.tab:hover{color:var(--fg)}.tab.active{border-color:var(--line);border-radius:999px}.masonry{column-count:4;column-gap:14px;padding:28px clamp(14px,4vw,56px) 90px}@media (max-width:1200px){.masonry{column-count:3}}@media (max-width:800px){.masonry{column-count:2}}@media (max-width:480px){.masonry{column-count:1}}.tile{page-break-inside:avoid;break-inside:avoid;margin-bottom:14px;position:relative;overflow:hidden;cursor:pointer;background:var(--bg-soft);opacity:0;animation:fadeIn .6s ease forwards}@keyframes fadeIn{to{opacity:1}}.tile img{width:100%;height:auto;transition:transform .8s cubic-bezier(.2,.8,.2,1),filter .5s;filter:brightness(.82) saturate(.95)}.tile:hover img{transform:scale(1.05);filter:brightness(1) saturate(1)}.tile:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.35),transparent 45%);opacity:0;transition:opacity .4s}.tile:hover:after{opacity:1}.tile .plus{position:absolute;right:14px;bottom:14px;width:34px;height:34px;border:1px solid hsla(0,0%,100%,.6);border-radius:50%;display:grid;place-items:center;opacity:0;transform:translateY(8px);transition:all .4s;font-size:18px;font-weight:200}.tile:hover .plus{opacity:1;transform:translateY(0)}.lb{position:fixed;inset:0;z-index:1000;background:rgba(6,6,6,.97);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;animation:lbIn .3s ease}@keyframes lbIn{0%{opacity:0}to{opacity:1}}.lb-stage{position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:center;padding:clamp(20px,6vh,70px) clamp(20px,9vw,130px)}.lb-img{max-width:100%;max-height:100%;object-fit:contain;box-shadow:0 30px 90px rgba(0,0,0,.6);animation:lbImg .45s cubic-bezier(.2,.8,.2,1)}@keyframes lbImg{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.lb-close{position:absolute;top:22px;right:26px;z-index:10;width:46px;height:46px;display:grid;place-items:center;background:none;border:none;color:var(--fg);font-size:30px;font-weight:200;line-height:1;cursor:pointer;opacity:.8;transform-origin:center center;transition:opacity .25s,transform .25s}.lb-close:hover{opacity:1;transform:rotate(90deg)}.lb-nav{position:absolute;top:50%;transform:translateY(-50%);z-index:10;background:none;border:1px solid var(--line);color:var(--fg);width:54px;height:54px;border-radius:50%;cursor:pointer;display:grid;place-items:center;font-size:20px;transition:background .25s,color .25s}.lb-nav:hover{background:#fff;color:#000}.lb-prev{left:clamp(14px,3vw,40px)}.lb-next{right:clamp(14px,3vw,40px)}.lb-meta{position:absolute;bottom:22px;left:0;right:0;text-align:center;font-size:11px;letter-spacing:.28em;text-transform:uppercase;color:var(--muted)}.lb-meta .cat{color:var(--fg)}@media (max-width:720px){.lb-nav{width:44px;height:44px}}.page{padding-top:var(--nav-h);min-height:100vh}.page-hero{position:relative;min-height:38vh;display:flex;align-items:center;justify-content:center;text-align:center;padding:clamp(32px,6vw,72px);overflow:hidden}.page-hero .bg{position:absolute;inset:0}.page-hero .bg img{width:100%;height:100%;object-fit:cover;filter:brightness(.4)}.page-hero h1{position:relative;font-size:clamp(32px,6vw,76px);font-weight:300;letter-spacing:.02em;max-width:18ch;margin:0 auto;z-index:2}.prose{max-width:760px;margin:0 auto;padding:clamp(50px,9vh,110px) clamp(24px,6vw,40px)}.prose p{color:#cfcfca;font-size:clamp(15px,1.35vw,19px);line-height:1.8;font-weight:300;margin-bottom:22px}.prose .actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:40px}.video-wrap{max-width:1100px;margin:0 auto clamp(40px,8vh,90px);padding:0 clamp(24px,6vw,40px)}.video-wrap video{width:100%;border:1px solid var(--line);background:#000}.contact-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:clamp(40px,8vw,120px);gap:clamp(40px,8vw,120px);max-width:1100px;margin:0 auto;padding:clamp(50px,9vh,110px) clamp(24px,6vw,40px);align-items:start}@media (max-width:760px){.contact-grid{grid-template-columns:1fr}}.field{margin-bottom:22px}.field label{display:block;font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--muted);margin-bottom:10px}.field input,.field select,.field textarea{width:100%;background:transparent;border:none;border-bottom:1px solid var(--line);color:var(--fg);font:inherit;font-size:16px;padding:10px 0;outline:none;transition:border-color .3s}.field select{-moz-appearance:none;appearance:none;-webkit-appearance:none;cursor:pointer;background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);background-position:calc(100% - 14px),calc(100% - 8px);background-size:6px 6px,6px 6px;background-repeat:no-repeat}.field select option{background:#111;color:var(--fg)}.field input:focus,.field select:focus,.field textarea:focus{border-color:#fff}.field textarea{resize:vertical;min-height:120px}.form-note{margin-top:18px;font-size:13px;color:var(--muted);line-height:1.6}.form-note a{border-bottom:1px solid var(--muted)}.form-error{color:#e8a3a3}.form-error a{color:#e8a3a3;border-bottom-color:#e8a3a3}.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.form-success{border:1px solid var(--line);padding:clamp(28px,4vw,44px);animation:rise .6s both}.form-success h3{font-size:clamp(22px,2.5vw,30px);font-weight:300;margin-bottom:16px}.form-success p{color:#cfcfca;font-weight:300;line-height:1.7;margin-bottom:26px}.btn:disabled{opacity:.5;cursor:not-allowed}.contact-info h2{font-size:clamp(26px,3vw,40px);font-weight:300;margin-bottom:30px}.contact-info .big-phone{font-size:clamp(28px,4vw,46px);font-weight:300;letter-spacing:.04em;display:inline-block;margin-bottom:8px}.contact-info p{color:#cfcfca;font-weight:300;line-height:1.7;margin-bottom:26px}.contact-info a.inline,a.inline{border-bottom:1px solid var(--muted);transition:border-color .25s,color .25s}a.inline:hover{border-color:var(--fg)}.info-block{padding:20px 0;border-top:1px solid var(--line)}.info-block:last-of-type{border-bottom:1px solid var(--line)}.info-label{display:block;font-size:10px;letter-spacing:.28em;text-transform:uppercase;color:var(--muted);margin-bottom:12px}.info-value{font-size:clamp(15px,1.4vw,18px);font-weight:300;color:var(--fg)}a.info-value:hover{color:var(--muted)}.contact-info .big-phone{margin-bottom:0}.socials{display:flex;gap:18px;margin-top:10px;flex-wrap:wrap}.socials a{font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--muted);border:1px solid var(--line);padding:10px 16px;transition:all .25s}.socials a:hover{color:#000;background:#fff;border-color:#fff}.contact-services{max-width:1100px;margin:0 auto;border-top:1px solid var(--line);padding:clamp(40px,7vh,80px) clamp(24px,6vw,40px) clamp(60px,10vh,120px)}.service-tags{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:30px}.service-tags li{list-style:none}.service-tags a{display:inline-block;padding:10px 20px;border:1px solid var(--line);border-radius:999px;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--fg);transition:all .25s}.service-tags a:hover{background:#fff;color:#000;border-color:#fff}.services-cta{color:#cfcfca;font-weight:300;font-size:clamp(15px,1.3vw,18px);line-height:1.7}.footer{border-top:1px solid var(--line);padding:40px clamp(24px,8vw,140px);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;color:var(--muted);font-size:12px;letter-spacing:.06em}.footer .socials a{font-size:10px}.footer .credit a{color:var(--fg);border-bottom:1px solid var(--line);transition:border-color .25s}.footer .credit a:hover{border-color:var(--fg)}