:root{--ink:#141414;--paper:#eeede9;--subtle:#625f5a;--rule:#c5c2bb;--space:clamp(24px,5vw,72px)}
button{color:inherit}button.hero-cta{background:transparent;color:inherit;border:0;border-bottom:1px solid #c9c9c9;padding-top:0;padding-left:0;padding-right:0;text-align:left}
:focus-visible{outline:2px solid currentColor;outline-offset:5px}html{scroll-padding-top:110px}.skip-link{position:fixed;left:20px;top:-80px;z-index:150;background:var(--paper);color:var(--ink);padding:14px}.skip-link:focus{top:16px}
.hero-actions{display:flex;align-items:baseline;gap:30px;flex-wrap:wrap}.quiet-cta{font-size:12px;color:#bdbdb8;padding:12px 0}.quiet-cta:hover{color:#fff}.nav-contact{border-bottom:1px solid currentColor!important}.studio-contact{display:block;width:fit-content;font-size:12px;margin-top:28px;color:#b4b4ae}.micro{font-size:11px}.pill{position:relative;min-height:44px;width:20px;background:transparent!important}.pill:after{content:'';position:absolute;height:4px;border-radius:4px;left:0;right:0;top:20px;background:#777}.pill.active{width:34px}.pill.active:after{background:#eee}.pills.light .pill.active:after{background:#151515}.pills{bottom:32px}.intro-replay{min-height:44px}.nav.on-light{background:rgba(238,237,233,.96)}
.inner-page{overscroll-behavior:contain;scroll-padding-top:110px}.inner-page .page-header{min-height:0;padding-top:155px;padding-bottom:64px}.page-header h1{font-size:clamp(62px,8.2vw,128px)}.page-header .breadcrumb{display:flex;gap:16px;align-items:center;color:var(--subtle)}.breadcrumb a:hover{text-decoration:underline}.page-body{gap:clamp(30px,6vw,90px);padding-bottom:75px}.page-body .body-copy p{font-size:16px}.section-block{padding:64px 12% 70px 15.5%;border-top:1px solid var(--rule)}.section-heading{display:grid;grid-template-columns:1fr 1.6fr;gap:clamp(30px,6vw,90px);margin-bottom:36px}.section-heading h2{font-size:clamp(32px,4vw,54px);font-weight:450;letter-spacing:-.06em;line-height:1.1;margin:12px 0}.section-heading p{font-size:15px;line-height:1.8;max-width:510px;color:var(--subtle);align-self:end;margin:0}.text-link{font-size:13px;border-bottom:1px solid;padding-bottom:8px;display:inline-flex;gap:22px}.section-block .text-link{margin-top:30px}
.service-detail{border-top:1px solid var(--rule);padding:28px 0;display:grid;grid-template-columns:70px 1fr 1.1fr;gap:22px}.service-detail h3{font-size:26px;font-weight:450;letter-spacing:-.045em;margin:0 0 12px}.service-detail p{font-size:14px;color:var(--subtle);line-height:1.8;margin:0 0 18px;max-width:390px}.deliverables{list-style:none;padding:0;margin:0}.deliverables li{font-size:13px;padding:10px 0;border-bottom:1px solid #d5d2cc}.service-detail .text-link{margin-top:12px}.section-block.dark{background:#141414;color:var(--paper);border-color:#333}.dark .section-heading p{color:#aaa8a2}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:25px;counter-reset:steps}.step{border-top:1px solid #555;padding-top:20px}.step h3{font-size:20px;font-weight:400;letter-spacing:-.035em;margin:22px 0 12px}.step p{font-size:13px;line-height:1.8;color:#b2b0aa;margin:0}.faq{max-width:850px;margin-left:auto}.faq details{border-top:1px solid var(--rule)}.faq details:last-child{border-bottom:1px solid var(--rule)}.faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px;padding:24px 0;font-size:17px;letter-spacing:-.025em}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:'+';font-size:22px;font-weight:300}.faq details[open] summary:after{content:'−'}.faq details p{font-size:14px;line-height:1.8;color:var(--subtle);max-width:650px;margin:0 35px 25px 0}
.project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:35px 24px}.work-card{display:block}.work-art{height:clamp(210px,25vw,340px);background:#d9d5ce;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}.work-art img{height:100%;width:100%;object-fit:cover;filter:grayscale(1);transition:transform .7s var(--ease)}.work-card:hover img{transform:scale(1.04)}.work-art .bistro-mark{font:italic 70px/.85 Georgia,serif;letter-spacing:-.075em;text-align:center;color:#222}.work-meta{display:flex;justify-content:space-between;align-items:baseline;padding:18px 0;border-bottom:1px solid var(--rule);gap:15px}.work-meta h3{font-size:24px;font-weight:450;letter-spacing:-.04em;margin:0}.work-meta small{font-size:11px;color:var(--subtle)}.filter-bar{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 30px}.filter-bar button,.choice{border:1px solid var(--rule);background:transparent;color:var(--ink);font-size:12px;padding:12px 17px;min-height:44px;border-radius:0}.filter-bar button[aria-pressed=true],.choice:has(input:checked){background:var(--ink);border-color:var(--ink);color:var(--paper)}.filter-bar button:hover{border-color:var(--ink)}.project-count{margin:0 0 25px;color:var(--subtle)}[hidden]{display:none!important}.case-note{font-size:12px;line-height:1.7;color:var(--subtle);border-left:1px solid var(--rule);padding-left:18px;margin:24px 0}.case-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:30px}.case-facts p{font-size:14px}.case-facts span{display:block;font-size:10px;letter-spacing:.06em;color:var(--subtle);margin-bottom:12px}.next-case{font-size:clamp(30px,5vw,65px);letter-spacing:-.06em;display:flex;justify-content:space-between;align-items:center;padding:25px 0}
.contact-layout{grid-template-columns:.85fr 1.6fr}.contact-aside h2{margin-bottom:22px}.contact-aside p{font-size:14px;line-height:1.8;color:var(--subtle);max-width:280px}.contact-aside .micro{margin-top:30px}.brief-form{min-width:0}.brief-form fieldset{border:0;padding:0;margin:0 0 32px}.brief-form legend,.field>label{font-size:13px;margin-bottom:14px;display:block}.choices{display:flex;flex-wrap:wrap;gap:8px}.choice{display:flex;align-items:center;gap:8px;cursor:pointer}.choice input{accent-color:#777;margin:0;width:14px;height:14px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:24px}.field{margin-bottom:28px}.field input,.field textarea,.field select{width:100%;font:inherit;font-size:15px;line-height:1.6;background:transparent;border:0;border-bottom:1px solid #99958d;color:var(--ink);border-radius:0;padding:12px 0;min-height:48px}.field textarea{resize:vertical;min-height:120px}.field input::placeholder,.field textarea::placeholder{color:#77736d}.field label small{color:var(--subtle)}.form-note{font-size:12px;line-height:1.8;color:var(--subtle);margin:0 0 22px}.solid-btn{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;min-height:49px;padding:16px 23px;background:var(--ink);color:var(--paper);border:1px solid var(--ink);font-size:13px}.solid-btn:hover{background:#353535}.brief-result{margin-top:32px;border-top:1px solid var(--rule);padding-top:25px}.brief-result h3{font-size:25px;font-weight:450;letter-spacing:-.04em;margin:0 0 15px}.brief-result textarea{display:block;width:100%;min-height:220px;resize:vertical;padding:18px;font:13px/1.8 'Courier New',monospace;background:#e5e3dd;border:1px solid var(--rule);color:var(--ink);margin:16px 0}.result-actions{display:flex;align-items:center;flex-wrap:wrap;gap:22px}.result-actions .inline-btn{margin:0}.draft-status{font-size:11px;color:var(--subtle);min-height:20px;margin-bottom:20px}.clear-draft{border:0;border-bottom:1px solid;background:none;font-size:11px;padding:5px 0;margin-left:12px;color:inherit}.toast{position:fixed;bottom:28px;left:50%;transform:translate(-50%,20px);background:#eeede9;color:#141414;border:1px solid #999;padding:15px 23px;font-size:13px;max-width:90vw;z-index:160;opacity:0;visibility:hidden;transition:.25s;pointer-events:none}.toast.visible{opacity:1;visibility:visible;transform:translate(-50%,0)}.closing{padding:55px 12% 65px 15.5%;background:#dedbd4;color:#141414;display:flex;justify-content:space-between;align-items:center;gap:30px}.closing h2{font-size:clamp(32px,4vw,59px);line-height:1.05;letter-spacing:-.06em;font-weight:450;margin:12px 0 0}.page-bottom a,.back-btn{min-height:44px;display:flex;align-items:center}.page-bottom{font-size:12px}.menu-overlay{overflow-y:auto}.menu-inner a{min-height:60px}.menu-bottom{position:static;margin:auto 10% 35px 15.5%}.noscript-note{position:relative;z-index:120;background:#eee;color:#111;padding:20px}
@media(min-width:651px) and (max-height:740px){.hero-copy{top:24%}.hero-title{font-size:clamp(50px,6vw,86px)}.hero-eyebrow{margin-bottom:20px}.hero-title{margin-bottom:20px}.hero-cta{margin-top:20px}.service-main{top:18%}.section-head{font-size:65px;margin:20px 0}.service-link{padding:13px 0}.studio-content{top:24%}.studio-content h2{font-size:70px;margin:20px 0}.studio-link{margin-top:12px}.studio-contact{margin-top:18px}.scene-label{bottom:80px}}
@media(max-width:900px){.section-block,.closing{padding-left:9%;padding-right:9%}.service-detail{grid-template-columns:40px 1fr 1fr}.section-heading{gap:35px}.steps{grid-template-columns:repeat(2,1fr);gap:32px}.menu-bottom{margin-left:10%}.field-row{grid-template-columns:1fr;gap:0}}
@media(max-width:650px){.hero-actions{display:block}.quiet-cta{display:block;margin-top:6px}.hero-copy{top:29%}.hero-title{margin-bottom:24px}.hero-eyebrow{max-width:240px}.hero-cta{margin-top:24px}.hero-bottom>.micro{display:none}.nav.on-light{background:rgba(238,237,233,.97);color:#141414!important}.nav.on-light .nav-logo img{filter:invert(1)}.scene-service .section-head{font-size:58px}.scene{min-height:720px}.studio-content{top:25%}.studio-contact{margin-top:24px}.section-block{padding:45px 8%}.section-heading{display:block;margin-bottom:30px}.section-heading p{margin-top:22px}.service-detail{grid-template-columns:28px 1fr;gap:12px}.service-detail>div:last-child{grid-column:2}.service-detail h3{font-size:24px}.project-grid{grid-template-columns:1fr}.work-art{height:280px}.contact-aside{margin-bottom:35px}.contact-aside p{max-width:100%}.case-facts{grid-template-columns:1fr;gap:10px}.closing{padding:40px 8%;display:block}.closing .text-link{margin-top:25px}.page-header .breadcrumb{font-size:10px;gap:10px}.page-body{padding-left:8%;padding-right:8%}.page-body .body-copy{margin-top:0}.page-body>h2{margin-bottom:30px}.inner-page .page-header{padding-bottom:45px}.steps{gap:28px 20px}.step h3{font-size:19px}.faq summary{font-size:16px}.page-bottom{gap:12px}.menu-inner{padding-top:100px}.menu-inner a{font-size:42px}.menu-bottom{margin-top:30px}.choice{padding:12px}.scene-label{font-size:10px}.field-row{display:block}.work-meta small{max-width:120px;text-align:right}}
.nav-right{margin-left:auto}.pills{bottom:73px}.intro-replay{left:auto;right:5.2vw;top:100px;bottom:auto}
.film-intro video{opacity:1;filter:none;object-fit:cover}.film-intro:after{background:linear-gradient(0deg,rgba(0,0,0,.45),transparent 20%)}.film-intro{transition:opacity .85s var(--ease),visibility .85s}.film-progress{position:absolute;bottom:0;left:0;right:0;height:2px;z-index:4;background:#ffffff15}.film-progress span{display:block;width:100%;height:100%;background:#d7d6d0;transform:scaleX(0);transform-origin:left;transition:transform .25s linear}.film-top{font-size:10px}.intro-finished .hero-copy{animation:arrive .9s var(--ease) both}.intro-finished .hero-photo{animation:arrive 1.2s var(--ease) both}@keyframes arrive{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
.case-showcase .work-art{height:auto;aspect-ratio:1.44;background:#dedbd4}.case-showcase .work-art img{object-fit:contain;filter:none}.work-card .work-art img{object-fit:cover;object-position:top;filter:grayscale(1)}.work-card:hover .work-art img{filter:grayscale(0)}.project-card img{object-position:top}.project-card.bistro img{z-index:-2}.case-capabilities{display:grid;grid-template-columns:1fr 1fr;gap:32px 45px}.case-capabilities article{border-top:1px solid var(--rule);padding-top:23px}.case-capabilities h3{font-size:23px;font-weight:450;letter-spacing:-.045em;margin:0 0 15px}.case-capabilities p{font-size:14px;line-height:1.8;color:var(--subtle);max-width:410px;margin:0}
@media(max-width:650px){.film-intro video{object-fit:contain;background:#070707}.film-top{top:30px;left:8%;right:8%;line-height:1.7}.film-bottom{left:8%;right:8%;bottom:35px;gap:18px}.film-bottom .micro{font-size:10px}.case-capabilities{grid-template-columns:1fr;gap:25px}.case-showcase .work-art{aspect-ratio:1.1}.case-showcase .work-art img{object-fit:contain}}
@media(max-width:650px){.edge-index{display:none}.intro-replay{top:auto;bottom:20px;left:8%;right:auto}.hero-copy{top:26%}.nav-right{margin-left:auto}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
