@font-face{font-family:'Fraunces';font-style:normal;font-weight:100 900;font-display:swap;src:url(../fonts/fraunces.woff2) format('woff2')}@font-face{font-family:'Inter';font-style:normal;font-weight:100 900;font-display:swap;src:url(../fonts/inter.woff2) format('woff2')}:root{color-scheme:dark;--bg:#0A0B0E;--bg-2:#0E1015;--surface:#12141A;--surface-2:#16191F;--border:rgba(255,255,255,.08);--border-2:rgba(255,255,255,.14);--text:#ECEEF2;--muted:#99A1AC;--muted-2:#6C7480;--accent:#3FE0C0;--accent-2:#4D9FFF;--accent-soft:rgba(63,224,192,.14);--accent-blue:rgba(77,159,255,.14);--font-display:"Fraunces",Georgia,"Times New Roman",serif;--font-body:"Inter",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;--radius:18px;--radius-sm:12px;--shadow-glow:0 0 0 1px rgba(255,255,255,.04),0 30px 80px rgba(0,0,0,.55);--maxw:1160px}*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--font-body);font-size:16px;line-height:1.65;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer}h1,h2,h3{font-family:var(--font-display);font-weight:500;line-height:1.08;margin:0;letter-spacing:-.01em}p{margin:0 0 1em}.container{width:100%;max-width:var(--maxw);margin:0 auto;padding:0 24px}.section{padding:clamp(72px,10vw,128px) 0}.section-dark{background:linear-gradient(180deg,var(--bg) 0%,var(--bg-2) 40%,var(--bg) 100%);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.eyebrow{display:inline-block;font-family:var(--font-body);font-size:12px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--accent);margin-bottom:16px}.section-head h2{font-size:clamp(30px,4.5vw,52px)}.section-sub{color:var(--muted);font-size:clamp(16px,1.6vw,19px);max-width:560px;margin-top:16px}.section-head .section-sub{margin-bottom:0}.accent-text{color:var(--accent);font-weight:600}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:600;font-size:15px;line-height:1;padding:14px 26px;border-radius:999px;border:1px solid transparent;transition:transform .25s ease,background .25s ease,border-color .25s ease,box-shadow .25s ease,color .25s ease;will-change:transform}.btn-primary{color:#06120E;background:var(--accent);box-shadow:0 10px 30px -8px rgba(63,224,192,.55)}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 16px 40px -8px rgba(63,224,192,.7)}.btn-ghost{color:var(--text);border-color:var(--border-2);background:rgba(255,255,255,.02)}.btn-ghost:hover{border-color:var(--accent);color:var(--accent);transform:translateY(-2px)}.btn-block{width:100%}.site-header{position:fixed;top:0;left:0;right:0;z-index:100;transition:background .35s ease,border-color .35s ease,backdrop-filter .35s ease;border-bottom:1px solid transparent}.site-header.scrolled{background:rgba(10,11,14,.82);backdrop-filter:saturate(140%) blur(14px);border-bottom:1px solid var(--border)}.nav-wrap{display:flex;align-items:center;justify-content:space-between;height:72px}.brand{display:flex;align-items:center;gap:10px}.brand-mark{height:38px;width:auto;filter:invert(1);opacity:.96}.brand-name{font-family:var(--font-display);font-size:20px;font-weight:500;letter-spacing:.01em}.brand-ltd{font-size:11px;letter-spacing:.3em;color:var(--muted-2);align-self:flex-end;margin-bottom:3px}.nav{display:flex;align-items:center;gap:28px}.nav-link{font-size:15px;font-weight:500;color:var(--muted);transition:color .2s ease;position:relative}.nav-link:hover{color:var(--text)}.nav-cta{padding:11px 20px;font-size:14px}.nav-toggle{display:none;background:none;border:0;width:42px;height:42px;flex-direction:column;align-items:center;justify-content:center;gap:5px}.nav-toggle span{display:block;width:22px;height:2px;background:var(--text);border-radius:2px;transition:transform .3s ease,opacity .3s ease}.nav-toggle.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}.nav-toggle.open span:nth-child(2){opacity:0}.nav-toggle.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.hero{position:relative;min-height:100svh;display:flex;align-items:center;padding:140px 0 80px;overflow:hidden}.hero-glow{position:absolute;inset:0;pointer-events:none;background:radial-gradient(60% 50% at 25% 30%,var(--accent-blue),transparent 60%),radial-gradient(55% 45% at 78% 68%,var(--accent-soft),transparent 60%),radial-gradient(40% 40% at 55% 15%,rgba(77,159,255,.08),transparent 60%);filter:blur(8px)}.hero-inner{position:relative;text-align:center;display:flex;flex-direction:column;align-items:center}.hero-mark{height:clamp(96px,18vw,170px);width:auto;filter:invert(1);opacity:.95;margin-bottom:36px}.hero h1{font-size:clamp(44px,8.5vw,96px);max-width:14ch}.hero h1 em{font-style:italic;color:var(--accent)}.lead{color:var(--muted);font-size:clamp(17px,2vw,21px);max-width:640px;margin:26px auto 0}.hero-actions{display:flex;gap:16px;margin-top:40px;flex-wrap:wrap;justify-content:center}.grid-grid{display:grid;gap:18px}.services-grid{grid-template-columns:repeat(3,1fr);margin-top:52px}.card{position:relative;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:30px 28px;transition:transform .35s ease,border-color .35s ease,background .35s ease,box-shadow .35s ease}.card:hover{transform:translateY(-6px);border-color:var(--border-2);box-shadow:var(--shadow-glow)}.service-card::after{content:"";position:absolute;left:28px;top:0;height:2px;width:34px;background:var(--accent);opacity:0;transition:opacity .35s ease,width .35s ease}.service-card:hover::after{opacity:1;width:56px}.card-index{font-size:13px;font-weight:600;letter-spacing:.12em;color:var(--muted-2);margin-bottom:18px}.service-card h3{font-size:22px;margin-bottom:10px}.service-card p{color:var(--muted);font-size:15px;margin:0}.work-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:52px}.work-card{background:none;border:0;padding:0;text-align:left;color:var(--text);display:flex;flex-direction:column;gap:16px;transition:transform .35s ease}.work-card:hover{transform:translateY(-8px)}.work-media{position:relative;display:block;aspect-ratio:9/16;overflow:hidden;border-radius:var(--radius);border:1px solid var(--border);background:var(--surface)}.work-media img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease,opacity .4s ease}.work-card:hover .work-media img{transform:scale(1.05)}.play-badge{position:absolute;inset:0;margin:auto;width:58px;height:58px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#06120E;background:rgba(63,224,192,.92);box-shadow:0 0 0 8px rgba(63,224,192,.12),0 10px 30px rgba(0,0,0,.5);opacity:.92;transition:transform .3s ease,box-shadow .3s ease}.work-card:hover .play-badge{transform:scale(1.08);box-shadow:0 0 0 14px rgba(63,224,192,.16),0 16px 40px rgba(0,0,0,.6)}.play-badge svg{margin-left:2px}.work-dur{position:absolute;left:12px;bottom:12px;font-size:12px;font-weight:600;padding:5px 10px;border-radius:999px;background:rgba(0,0,0,.6);backdrop-filter:blur(4px)}.work-meta{display:flex;flex-direction:column;gap:2px;padding:0 4px}.work-label{font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--accent)}.work-title{font-family:var(--font-display);font-size:22px}.work-footnote{text-align:center;color:var(--muted);margin-top:48px;font-size:15px}.about-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:clamp(32px,6vw,84px);align-items:start}.about-body{font-size:clamp(17px,1.7vw,19px);color:var(--muted)}.about-body p:first-child{color:var(--text);font-size:clamp(19px,1.9vw,22px)}.value-strip{margin-top:clamp(40px,6vw,72px);display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.value{padding:28px 22px}.value+ .value{border-left:1px solid var(--border)}.value strong{display:block;font-family:var(--font-display);font-size:24px;font-weight:500;color:var(--text)}.value span{color:var(--muted);font-size:14px}.section-contact{position:relative}.contact-panel{background:linear-gradient(180deg,var(--surface) 0%,var(--bg-2) 100%);border:1px solid var(--border);border-radius:var(--radius);padding:clamp(32px,5vw,64px);box-shadow:var(--shadow-glow);position:relative;overflow:hidden}.contact-panel::before{content:"";position:absolute;top:-40%;right:-20%;width:60%;height:80%;background:radial-gradient(closest-side,var(--accent-soft),transparent);filter:blur(10px);pointer-events:none}.contact-grid{display:grid;grid-template-columns:0.9fr 1.3fr;gap:clamp(32px,5vw,72px);margin-top:40px;position:relative}.contact-info{display:flex;flex-direction:column;gap:26px}.info-block{display:flex;flex-direction:column;gap:6px}.info-label{font-size:12px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--muted-2)}.info-value{font-size:16px;color:var(--text);line-height:1.5}a.info-value{color:var(--accent)}.info-value a{color:var(--accent)}.contact-form{display:flex;flex-direction:column;gap:18px}.field{display:flex;flex-direction:column;gap:8px}.field label{font-size:13px;font-weight:600;color:var(--muted)}.field input,.field select,.field textarea{width:100%;background:rgba(255,255,255,.03);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font-family:inherit;font-size:15px;padding:13px 15px;transition:border-color .2s ease,background .2s ease,box-shadow .2s ease}.field textarea{resize:vertical;min-height:130px}.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--accent);background:rgba(255,255,255,.05);box-shadow:0 0 0 3px var(--accent-soft)}.field select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);background-position:calc(100% - 20px) 50%,calc(100% - 15px) 50%;background-size:5px 5px;background-repeat:no-repeat}.field select:invalid{color:var(--muted-2)}.field select option{background-color:var(--surface);color:var(--text)}.field select option:disabled{color:var(--muted-2)}.hp-field{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden;opacity:0}.form-hint{color:var(--muted-2);font-size:13px;text-align:center;margin:0}.form-status{min-height:0;font-size:14px}.form-status:not(:empty){padding:12px 15px;border-radius:var(--radius-sm);margin-top:4px}.status-ok{display:block;color:var(--accent);background:var(--accent-soft)}.status-err{display:block;color:#FF9A8A;background:rgba(255,120,90,.12)}.status-err a{color:#FFB3A6;text-decoration:underline}.footer{border-top:1px solid var(--border);padding:56px 0 40px}.footer-inner{display:flex;flex-direction:column;align-items:center;gap:22px;text-align:center}.brand-lockup{height:60px;width:auto;filter:invert(1)}.footer-nav{display:flex;gap:26px;flex-wrap:wrap;justify-content:center}.footer-nav a{color:var(--muted);font-size:14px}.footer-nav a:hover{color:var(--text)}.footer-copy{color:var(--muted-2);font-size:13px;margin:0}.footer-copy a{color:var(--muted)}.footer-copy a:hover{color:var(--accent)}.modal{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;padding:24px;visibility:hidden;opacity:0;transition:opacity .3s ease,visibility .3s ease}.modal.open{visibility:visible;opacity:1}.modal-backdrop{position:absolute;inset:0;background:rgba(4,5,7,.8);backdrop-filter:blur(6px)}.modal-dialog{position:relative;width:min(560px,92vw);max-height:90svh;overflow:hidden;border-radius:var(--radius);background:var(--surface);border:1px solid var(--border-2);box-shadow:var(--shadow-glow);transform:translateY(12px) scale(.98);transition:transform .3s ease}.modal.open .modal-dialog{transform:translateY(0) scale(1)}.modal-close{position:absolute;top:12px;right:12px;z-index:2;width:38px;height:38px;border-radius:50%;border:1px solid var(--border-2);background:rgba(0,0,0,.5);color:var(--text);font-size:22px;line-height:1;display:flex;align-items:center;justify-content:center;transition:background .2s ease,color .2s ease}.modal-close:hover{background:var(--accent);color:#06120E}.modal-title{font-family:var(--font-display);font-size:18px;margin:0;padding:16px 18px 8px}.modal-dialog video{display:block;width:100%;max-height:70svh;background:#000}.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease;transition-delay:var(--d,0ms)}.reveal.visible{opacity:1;transform:none}@media (max-width:900px){.services-grid{grid-template-columns:repeat(2,1fr)}.work-grid{grid-template-columns:repeat(2,1fr)}.about-grid{grid-template-columns:1fr}.contact-grid{grid-template-columns:1fr}}@media (max-width:640px){.nav{position:fixed;top:72px;left:0;right:0;z-index:99;flex-direction:column;align-items:flex-start;gap:8px;padding:18px 24px 24px;background:rgba(10,11,14,.96);backdrop-filter:blur(14px);border-bottom:1px solid var(--border);transform:translateY(-12px);opacity:0;visibility:hidden;transition:transform .3s ease,opacity .3s ease,visibility .3s ease}.nav.open{transform:translateY(0);opacity:1;visibility:visible}.nav-link{width:100%;padding:2px 0}.nav-cta{margin-top:12px;width:100%}.nav-toggle{display:flex}.services-grid{grid-template-columns:1fr}.work-grid{grid-template-columns:1fr}.value-strip{grid-template-columns:1fr}.value+.value{border-left:none;border-top:1px solid var(--border)}.hero h1{font-size:clamp(40px,12vw,58px)}}.loader{position:fixed;inset:0;z-index:1000;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:26px;background:var(--bg);opacity:0;visibility:hidden;transition:opacity .6s ease,visibility .6s ease}.js .loader{opacity:1;visibility:visible}.loader.hidden{opacity:0;visibility:hidden}.no-js .loader{display:none}body.loading{overflow:hidden}.loader-inner{position:relative;width:150px;height:150px;display:flex;align-items:center;justify-content:center}.loader-ring{position:absolute;inset:0;border-radius:50%;border:2px solid rgba(255,255,255,.10);border-top-color:var(--accent);animation:loader-spin 1.1s linear infinite}.loader-mark{height:96px;width:auto;filter:invert(1);opacity:0;animation:loader-pop .7s ease forwards}.loader-label{font-family:var(--font-display);font-size:20px;letter-spacing:.04em;color:var(--muted);opacity:0;animation:loader-fade 1s ease .2s forwards}@keyframes loader-spin{to{transform:rotate(360deg)}}@keyframes loader-pop{from{opacity:0;transform:scale(.7)}to{opacity:1;transform:scale(1)}}@keyframes loader-fade{to{opacity:1}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}