:root{--black:#080808;--panel:#141414;--white:#f5f5f2;--muted:#929292;--line:#292929;--max:1220px;--ease:cubic-bezier(.2,.7,.2,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--black);color:var(--white);font-family:"DM Sans",sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;max-width:100%}::selection{background:var(--white);color:var(--black)}[hidden]{display:none!important}.section-wrap{width:min(var(--max),calc(100% - 88px));margin-inline:auto}
.site-header{height:94px;padding:0 max(44px,calc((100vw - var(--max))/2));display:flex;align-items:center;justify-content:space-between;gap:30px;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20;background:rgba(8,8,8,.94);backdrop-filter:blur(14px)}.brand{display:flex;flex-direction:column;align-items:flex-start;flex:0 0 auto;gap:5px}.brand-logo{width:190px;height:auto;object-fit:contain}.brand-descriptor{font-size:8px;letter-spacing:.24em;color:#a4a4a0;font-weight:600}.main-nav{display:flex;align-items:center;gap:30px;margin-left:auto}.main-nav a{font-size:11px;color:#a2a29e;transition:color .2s}.main-nav a:hover{color:var(--white)}
.button{display:inline-flex;align-items:center;justify-content:space-between;gap:23px;min-height:51px;padding:15px 18px;font-size:11px;font-weight:700;transition:background .2s,color .2s,border-color .2s}.button span{font-size:17px;font-weight:400}.button-light{background:var(--white);color:var(--black);border:1px solid var(--white)}.button-light:hover{background:#deded9;border-color:#deded9}.button-outline{border:1px solid #444;color:var(--white)}.button-outline:hover{border-color:var(--white)}.header-cta{min-height:42px;padding:11px 14px;gap:18px;white-space:nowrap}.menu-toggle{display:none;border:0;background:transparent;padding:8px}.menu-toggle span{width:24px;height:1px;background:var(--white);display:block;margin:6px 0}
.hero{padding-top:108px;padding-bottom:28px;min-height:620px;display:flex;flex-direction:column}.hero-eyebrow,.section-index{font-size:9px;letter-spacing:.18em;color:#999995;font-weight:700}.hero-eyebrow{display:flex;align-items:center;gap:12px}.eyebrow-line{width:26px;height:1px;background:#62625f}.eyebrow-separator{color:#555}.hero h1{font:800 clamp(68px,10.8vw,144px)/.86 Manrope,sans-serif;letter-spacing:-.095em;margin:49px 0 35px;max-width:1100px}.hero h1 em{font-style:normal;color:#858581}.hero-bottom{display:flex;justify-content:space-between;align-items:flex-end;gap:40px}.hero-bottom p{max-width:510px;color:#aaa9a5;font-size:14px;line-height:1.9;margin:0}.hero-actions{display:flex;gap:10px;flex-wrap:wrap}.hero-footnote{border-top:1px solid var(--line);margin-top:72px;padding-top:15px;display:flex;justify-content:space-between;color:#686864;font-size:8px;letter-spacing:.15em}
.work-section{padding-top:122px;padding-bottom:126px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:42px}.section-heading h2,.approach-inner h2,.closing-section h2{font:700 clamp(39px,5.2vw,67px)/1.02 Manrope,sans-serif;letter-spacing:-.075em;margin:17px 0 0}.section-heading h2 em,.approach-inner h2 em,.closing-section h2 em{font-style:normal;color:#7d7d79}.section-heading>p{font-size:11px;line-height:1.9;color:var(--muted);margin:0 0 4px;max-width:330px}.filter-bar{display:flex;gap:8px;flex-wrap:wrap;padding-bottom:23px;border-bottom:1px solid var(--line);margin-bottom:25px}.filter-chip{display:inline-flex;align-items:center;gap:13px;background:transparent;color:#92928d;border:1px solid #30302e;padding:12px 14px;font-size:10px;cursor:pointer;transition:all .2s}.filter-chip:hover,.filter-chip.active{background:var(--white);border-color:var(--white);color:var(--black)}.filter-chip span{font-size:8px;opacity:.65}.project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:42px 22px}.project-card{min-width:0;animation:card-enter .32s var(--ease) both}.project-image{position:relative;display:block;overflow:hidden;background:#171717;aspect-ratio:16/9;border:0;padding:0;width:100%;text-align:left;color:inherit;font:inherit;cursor:pointer}.project-image img{width:100%;height:100%;object-fit:cover;transition:transform .65s var(--ease),opacity .3s;opacity:.87}
.project-image:focus-visible{outline:2px solid var(--white);outline-offset:4px}
.project-image iframe{position:absolute;inset:0;width:100%;height:100%;border:0;display:block;background:#000}
.project-image.is-playing{cursor:default}
.project-image:hover img{transform:scale(1.035);opacity:1}.image-index{position:absolute;top:14px;left:14px;font-size:9px;letter-spacing:.12em;padding:7px 9px;background:rgba(8,8,8,.78);border:1px solid rgba(245,245,242,.18)}.image-play{position:absolute;right:14px;bottom:14px;display:grid;place-items:center;width:40px;height:40px;background:var(--white);color:var(--black);border-radius:50%;font-size:17px;transition:transform .2s}.project-image:hover .image-play{transform:rotate(45deg)}.project-meta{display:flex;justify-content:space-between;align-items:flex-start;padding-top:15px}.project-type{font-size:8px;letter-spacing:.15em;color:#898984}.project-meta h3{font:600 18px Manrope,sans-serif;letter-spacing:-.04em;margin:8px 0 0}.project-arrow{font-size:18px;color:#777}.filter-empty{padding:40px 0;color:#92928d;font-size:12px}.filter-empty a,.work-note a{color:var(--white);text-decoration:underline;text-underline-offset:3px}.work-note{display:flex;gap:12px;align-items:flex-start;border-top:1px solid var(--line);margin-top:44px;padding-top:17px;color:#858580;font-size:10px;line-height:1.8}.work-note>span{color:var(--white);font-size:15px}.work-note p{margin:0}
.approach-section{background:#111;border-top:1px solid #202020;border-bottom:1px solid #202020;padding:97px 0}.approach-inner{display:grid;grid-template-columns:1.05fr .95fr;gap:80px;align-items:start}.approach-inner h2{font-size:clamp(43px,5.7vw,72px)}.approach-copy{max-width:490px;padding-top:10px}.approach-lead{font:500 22px/1.45 Manrope,sans-serif;letter-spacing:-.04em;margin:0 0 18px}.approach-copy p:not(.approach-lead){color:#999994;font-size:12px;line-height:1.95;margin-bottom:22px}.text-link{display:inline-flex;gap:25px;align-items:center;padding-bottom:8px;border-bottom:1px solid #666;font-size:11px}.text-link span{font-size:16px}
.faq-section{padding-top:122px;padding-bottom:126px}.faq-heading{margin-bottom:47px}.faq-list{border-top:1px solid var(--line)}.faq-item{border-bottom:1px solid var(--line)}.faq-item summary{list-style:none;display:grid;grid-template-columns:47px 1fr 24px;gap:15px;align-items:center;padding:23px 0;cursor:pointer}.faq-item summary::-webkit-details-marker{display:none}.faq-number{color:#777772;font-size:9px;letter-spacing:.1em}.faq-question{font:500 17px Manrope,sans-serif;letter-spacing:-.03em}.faq-icon{width:22px;height:22px;position:relative}.faq-icon:before,.faq-icon:after{content:"";position:absolute;background:#aaa9a4;top:10px;left:4px;width:14px;height:1px;transition:transform .2s}.faq-icon:after{transform:rotate(90deg)}.faq-item[open] .faq-icon:after{transform:rotate(0)}.faq-answer{padding:0 55px 24px 62px;max-width:900px}.faq-answer p{color:#9a9a95;font-size:12px;line-height:1.95;margin:0 0 9px}.faq-answer p:last-child{margin-bottom:0}.faq-answer strong{color:var(--white);font-weight:600}.faq-inline-contact a{color:var(--white);text-decoration:underline;text-underline-offset:3px}
.closing-section{padding-top:87px;padding-bottom:92px;border-top:1px solid var(--line)}.closing-section h2{font-size:clamp(58px,9.3vw,116px);line-height:.93;margin:25px 0 38px}.closing-bottom{display:flex;justify-content:space-between;align-items:flex-end;gap:30px}.closing-bottom p{color:#999994;font-size:12px;line-height:1.85;max-width:390px;margin:0}.site-footer{border-top:1px solid var(--line);padding-top:31px;padding-bottom:22px}.footer-top{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:start;gap:24px;padding-bottom:38px}.footer-brand .brand-logo{width:174px}.footer-brand .brand-descriptor{font-size:7px}.footer-top>p{font-size:10px;line-height:1.8;color:#898984;margin:0}.footer-contact{justify-self:end;display:flex;flex-direction:column;align-items:flex-start;gap:10px}.footer-label{font-size:8px;letter-spacing:.15em;color:#787873}.footer-contact>a{font-size:11px}.footer-contact>a span{margin-left:10px;color:#aaa}.footer-bottom{border-top:1px solid var(--line);padding-top:16px;display:flex;align-items:center;justify-content:space-between;gap:20px;color:#777771;font-size:8px;letter-spacing:.1em}.social-links{display:flex;gap:20px;flex-wrap:wrap}.social-links a{color:#aaa9a4;letter-spacing:0;font-size:10px}.social-links a:hover,.back-top:hover{color:var(--white)}.back-top{color:#aaa9a4;white-space:nowrap}
@keyframes card-enter{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:850px){.section-wrap{width:calc(100% - 52px)}.site-header{padding:0 26px;gap:20px}.brand-logo{width:170px}.main-nav{gap:18px}.main-nav a{font-size:10px}.header-cta{font-size:10px}.hero{padding-top:87px;min-height:auto}.hero h1{font-size:clamp(65px,11.4vw,100px)}.hero-bottom{align-items:flex-start;flex-direction:column}.hero-actions{margin-top:2px}.hero-footnote{margin-top:55px}.work-section,.faq-section{padding-top:90px;padding-bottom:90px}.approach-inner{gap:40px}.footer-bottom{align-items:flex-start;flex-wrap:wrap}}
@media(max-width:620px){html{scroll-padding-top:80px}.section-wrap{width:calc(100% - 36px)}.site-header{height:78px;padding:0 18px}.brand-logo{width:145px}.brand-descriptor{font-size:6px;letter-spacing:.21em}.header-cta{display:none}.menu-toggle{display:block;margin-left:auto}.main-nav{display:none;position:absolute;top:77px;left:0;right:0;background:#0c0c0c;border-bottom:1px solid var(--line);padding:18px;flex-direction:column;align-items:stretch;gap:0}.main-nav.open{display:flex}.main-nav a{padding:13px 0;font-size:12px}.hero{padding-top:65px}.hero-eyebrow{font-size:7px;letter-spacing:.13em;gap:8px}.eyebrow-line{width:15px}.hero h1{font-size:clamp(53px,14vw,82px);margin:36px 0 27px;letter-spacing:-.09em}.hero-bottom p{font-size:12px;line-height:1.85}.hero-actions{width:100%;gap:8px}.hero-actions .button{flex:1;min-width:0;gap:10px;padding:13px 11px;font-size:9px}.hero-footnote{font-size:6px;letter-spacing:.08em;margin-top:42px}.section-heading{align-items:flex-start;flex-direction:column;gap:14px;margin-bottom:27px}.section-heading h2{font-size:43px}.section-heading>p{font-size:10px;max-width:none}.filter-bar{gap:7px;margin-bottom:20px}.filter-chip{padding:10px 10px;font-size:9px;gap:8px}.project-grid{grid-template-columns:1fr;gap:30px}.project-meta h3{font-size:17px}.work-note{margin-top:32px}.approach-section{padding:70px 0}.approach-inner{grid-template-columns:1fr;gap:24px}.approach-inner h2{font-size:51px}.approach-copy{padding-top:0}.approach-lead{font-size:20px}.approach-copy p:not(.approach-lead){font-size:11px}.faq-section{padding-top:78px;padding-bottom:80px}.faq-heading{gap:16px}.faq-item summary{grid-template-columns:27px 1fr 22px;gap:10px;padding:19px 0}.faq-question{font-size:14px}.faq-answer{padding:0 14px 21px 37px}.faq-answer p{font-size:11px}.closing-section{padding-top:66px;padding-bottom:68px}.closing-section h2{font-size:clamp(48px,12.5vw,74px);letter-spacing:-.085em}.closing-bottom{align-items:flex-start;flex-direction:column}.closing-bottom p{font-size:11px}.closing-bottom .button{width:100%}.footer-top{grid-template-columns:1fr;gap:23px}.footer-contact{justify-self:start}.footer-bottom{gap:17px}.social-links{order:3;width:100%;gap:17px}.back-top{margin-left:auto}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

/* Project inquiry form: added within the existing closing CTA section only. */
.project-form{flex:1;min-width:0;max-width:760px}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px;border-top:1px solid var(--line)}
.form-field{min-width:0;padding:13px 0;border-bottom:1px solid var(--line)}
.form-field-full{grid-column:1/-1}
.form-field label{display:block;margin-bottom:8px;color:#aaa9a4;font-size:8px;font-weight:700;letter-spacing:.14em}
.form-field input,.form-field select,.form-field textarea{display:block;width:100%;min-width:0;padding:6px 0;border:0;border-radius:0;outline:none;background:transparent;color:var(--white);font:500 11px/1.6 "DM Sans",sans-serif}
.form-field select{appearance:none;cursor:pointer}
.form-field select option{background:#141414;color:var(--white)}
.form-field textarea{min-height:75px;resize:vertical}
.form-field input::placeholder,.form-field textarea::placeholder,.form-field select:invalid{color:#686864}
.form-field input:focus,.form-field select:focus,.form-field textarea:focus{box-shadow:0 1px 0 #858581}
.form-bottom{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:16px}
.submit-btn{cursor:pointer;flex:none;font-family:inherit}
.submit-btn:disabled{opacity:.65;cursor:wait}
.form-status{max-width:390px;border:1px solid var(--line);padding:10px 12px}
.form-status strong{display:block;margin-bottom:4px;font-size:8px;letter-spacing:.13em}
.form-status span{display:block;color:#aaa9a4;font-size:10px;line-height:1.6}
.form-status.success{border-color:#42423e}
.form-status[hidden]{display:none!important}
.hidden-field{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden}
@media(max-width:850px){.closing-bottom{align-items:flex-start;flex-direction:column}.closing-bottom>.project-form{width:100%;max-width:none}.form-grid{gap:0 18px}}
@media(max-width:620px){.closing-bottom>.project-form{width:100%}.form-grid{grid-template-columns:1fr}.form-field-full{grid-column:auto}.form-bottom{align-items:stretch;flex-direction:column-reverse}.submit-btn{width:max-content;min-width:160px}.form-status{max-width:none}}

