:root{--bg:#fff;--panel:#f1f1ef;--text:#111;--muted:#6e6e68;--line:rgba(0,0,0,.14)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}body.modal-open{overflow:hidden}.contact-section,.content-wrap,.work-section,body,html,main{background-color:#fff}a{color:inherit;text-decoration:none}button{font:inherit}.site-intro{position:fixed;inset:0;z-index:100;display:grid;place-content:center;text-align:center;background:#fff;color:#111;pointer-events:none;animation:introCurtain 2.6s cubic-bezier(.65,0,.35,1) both}.site-intro p{margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(50px,8vw,112px);line-height:.9;letter-spacing:-.045em;text-transform:uppercase;animation:introName 2.1s ease both}.site-intro span{margin-top:18px;color:#555;font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;animation:introName 2.1s ease .12s both}.site-header{position:fixed;inset:0 0 auto 0;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:24px 34px;color:#111;background:hsla(0,0%,100%,.94);border-bottom:1px solid rgba(0,0,0,.08);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.wordmark{font-size:13px;letter-spacing:.18em;font-weight:700}.site-header nav{display:flex;gap:28px;font-size:12px;letter-spacing:.04em}.site-header nav a{opacity:.72;transition:opacity .25s ease}.site-header nav a:focus-visible,.site-header nav a:hover{opacity:1}.hero{position:relative;min-height:100vh;overflow:hidden;background:#050505}.hero-image{background-image:url(/hero-white-set.jpg);background-size:cover;background-position:50%;overflow:hidden;animation:lightsUp 4.8s ease-in-out 1.05s both}.hero-image,.hero-shade{position:absolute;inset:0}.hero-shade{background:linear-gradient(0deg,rgba(0,0,0,.1),transparent 38%)}.studio-beam{position:absolute;top:-5%;width:42%;height:110%;-webkit-clip-path:polygon(45% 0,55% 0,100% 100%,0 100%);clip-path:polygon(45% 0,55% 0,100% 100%,0 100%);background:linear-gradient(180deg,hsla(0,0%,100%,.5),rgba(180,220,255,.08) 72%,transparent);mix-blend-mode:screen;opacity:0;pointer-events:none;animation:beamOn 3.6s ease-in-out both}.beam-one{left:-6%;animation-delay:.35s}.beam-two{left:29%;animation-delay:.85s}.beam-three{right:-7%;animation-delay:1.35s}.hero-panel{position:absolute;z-index:3;left:5.2vw;top:39%;width:36%;display:flex;flex-direction:column;align-items:flex-start;padding:0;text-align:left;color:#111;background:transparent}.hero-panel p{margin:0 0 14px;font-family:Georgia,Times New Roman,serif;font-size:clamp(46px,5.4vw,92px);line-height:.95;letter-spacing:-.045em;text-transform:uppercase}.hero-panel span{color:#555;font-size:13px;font-style:italic;font-weight:600;letter-spacing:.03em}.hero-content{position:relative;z-index:2;padding:0 5vw 8vh;max-width:1100px}.eyebrow{margin:0 0 18px;color:var(--muted);font-size:11px;letter-spacing:.18em;text-transform:uppercase}.hero .eyebrow,.live-copy .eyebrow{color:hsla(0,0%,100%,.72)}.hero h1{margin:0 0 20px;font-size:clamp(64px,12vw,174px);line-height:.76;letter-spacing:-.07em}.hero span{color:hsla(0,0%,100%,.76);font-size:12px;letter-spacing:.12em;text-transform:uppercase}.hero-content,.scroll-cue{color:#fff}.scroll-cue{position:absolute;z-index:4;right:34px;bottom:34px;color:#111;font-size:22px;opacity:.58}.content-wrap{padding:0 4vw}.work-section{position:relative;padding:110px 0 30px;scroll-margin-top:30px}.reveal-section{position:relative;opacity:0;transform:translateY(34px);transition:opacity 1s ease,transform 1s cubic-bezier(.22,1,.36,1)}.reveal-section.is-visible{opacity:1;transform:none}.reveal-section:after{content:"";position:absolute;z-index:8;inset:0;background:linear-gradient(105deg,transparent 25%,hsla(0,0%,100%,.9) 48%,transparent 70%);transform:translateX(-120%);pointer-events:none}.reveal-section.is-visible:after{animation:sectionLight 1.65s ease-out .12s both}.section-heading{position:relative;isolation:isolate;display:flex;justify-content:space-between;align-items:baseline;padding-bottom:18px;border-bottom:1px solid var(--line);margin-bottom:28px}.section-heading p{position:relative;z-index:1;margin:0;font-size:clamp(30px,4vw,58px);letter-spacing:-.045em}.section-number{position:absolute;z-index:0;right:0;bottom:-22px;color:#111;font-size:clamp(82px,12vw,184px);font-weight:700;line-height:.7;letter-spacing:-.08em;opacity:.055;pointer-events:none}.project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:42px 18px;gap:42px 18px}.project-card{min-width:0}.video-frame{position:relative;aspect-ratio:16/9;overflow:hidden;background:var(--panel)}.video-frame iframe{position:absolute;inset:-1%;width:102%;height:102%;border:0;pointer-events:none;transition:transform .8s cubic-bezier(.22,1,.36,1),filter .5s ease}.video-card:hover .video-frame iframe{transform:scale(1.025)}.project-open{position:absolute;inset:0;display:grid;place-items:center;border:0;background:transparent;color:#fff;cursor:pointer;transition:background .35s ease}.project-open span{display:grid;place-items:center;width:78px;aspect-ratio:1;border:1px solid hsla(0,0%,100%,.78);border-radius:50%;background:rgba(0,0,0,.2);font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;opacity:0;transform:scale(.82);transition:opacity .35s ease,transform .5s cubic-bezier(.22,1,.36,1)}.video-card:hover .project-open{background:rgba(0,0,0,.13)}.project-open:focus-visible span,.video-card:hover .project-open span{opacity:1;transform:scale(1)}.video-frame img{display:block;width:100%;height:100%;object-fit:cover}.project-copy{padding:15px 2px 0}.project-copy h3{margin:0 0 7px;font-size:clamp(20px,2vw,30px);letter-spacing:-.035em}.project-copy p{margin:0;color:var(--muted);font-size:13px}.live-feature{position:relative;min-height:min(72vw,900px);overflow:hidden}.live-image-carousel{position:absolute;inset:0;overflow:hidden;background:#111}.live-image{position:absolute;inset:-1%;width:102%;height:102%;object-fit:cover;opacity:0;transform:scale(1.035) translateX(.45%);transition:opacity 1.25s ease,transform 5.8s cubic-bezier(.22,1,.36,1)}.live-image.is-active{opacity:1;transform:scale(1.005) translateX(-.35%)}.live-feature:after{content:"";position:absolute;z-index:1;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.82),transparent 58%);pointer-events:none}.live-copy{position:absolute;z-index:2;left:34px;right:34px;bottom:30px}.live-copy h3{margin:0 0 8px;font-size:clamp(34px,6vw,88px);letter-spacing:-.055em}.live-copy>p:last-child{margin:0;color:hsla(0,0%,100%,.72)}.live-progress{position:absolute;z-index:3;right:34px;bottom:34px;display:flex;gap:7px}.live-progress span{width:22px;height:2px;background:hsla(0,0%,100%,.32);transition:width .45s ease,background .45s ease}.live-progress span.is-active{width:42px;background:#fff}.contact-section{margin-top:120px;padding:90px 0 110px;border-top:1px solid var(--line);display:flex;align-items:flex-end;justify-content:space-between;gap:30px}.contact-section p{margin:0 0 14px;color:var(--muted)}.phone{color:var(--text);font-size:clamp(28px,3.4vw,52px);font-weight:700;letter-spacing:-.035em;line-height:1}.email{font-size:clamp(28px,5vw,70px);letter-spacing:-.05em;border-bottom:1px solid;overflow-wrap:anywhere}.video-modal{position:fixed;z-index:200;inset:0;display:grid;place-items:center;padding:28px;color:#fff;animation:modalIn .45s ease both}.modal-backdrop{position:absolute;inset:0;border:0;background:rgba(0,0,0,.94);cursor:default}.modal-shell{position:relative;z-index:1;width:min(94vw,1500px)}.modal-topline{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding-bottom:14px}.modal-topline p{margin:0 0 4px;font-size:clamp(20px,2.4vw,38px);letter-spacing:-.035em}.modal-topline span{color:hsla(0,0%,100%,.58);font-size:12px}.modal-topline button{border:0;border-bottom:1px solid hsla(0,0%,100%,.58);padding:4px 0;background:transparent;color:#fff;cursor:pointer}.modal-player{position:relative;width:100%;aspect-ratio:16/9;background:#000}.modal-player iframe{position:absolute;inset:0;width:100%;height:100%;border:0}@keyframes lightsUp{0%{filter:brightness(.1) saturate(.72);transform:scale(1.025)}to{filter:brightness(1) saturate(1);transform:scale(1)}}@keyframes introName{0%{opacity:0;transform:translateY(16px);filter:blur(6px)}38%,72%{opacity:1;transform:none;filter:blur(0)}to{opacity:0;transform:translateY(-7px);filter:blur(2px)}}@keyframes introCurtain{0%,70%{opacity:1}to{opacity:0;visibility:hidden}}@keyframes sectionLight{0%{transform:translateX(-120%);opacity:0}22%{opacity:.8}to{transform:translateX(120%);opacity:0}}@keyframes modalIn{0%{opacity:0}to{opacity:1}}@keyframes beamOn{0%{opacity:0}52%{opacity:.26}to{opacity:.06}}@media (max-width:780px){.site-header{padding:20px}.site-header nav{gap:12px;font-size:11px}.site-header nav a:nth-child(3){display:none}.hero-image{inset:0;background-position:24%}.hero-shade{inset:0;background:linear-gradient(0deg,rgba(0,0,0,.16),transparent 56%)}.hero-panel{left:22px;right:22px;top:31%;width:auto;align-items:flex-start;padding:0;text-align:left;background:transparent}.hero-panel p{margin-bottom:8px;font-size:clamp(40px,13vw,58px)}.hero-panel span{font-size:10px}.hero-content{padding:0 20px 74px}.hero h1{font-size:clamp(66px,24vw,112px)}.hero span{display:block;max-width:280px;line-height:1.55}.scroll-cue{right:28px;bottom:42px}.content-wrap{padding:0 16px}.work-section{padding-top:76px}.project-grid{grid-template-columns:1fr;gap:36px}.project-open span{width:66px;opacity:.92;transform:none}.live-feature{min-height:120vw}.live-copy{left:20px;right:20px;bottom:20px}.live-progress{right:20px;top:20px;bottom:auto}.live-progress span{width:12px}.live-progress span.is-active{width:24px}.contact-section{align-items:flex-start;flex-direction:column}.video-modal{padding:16px}.modal-topline{align-items:flex-start}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-image,.reveal-section,.reveal-section:after,.site-intro,.site-intro p,.site-intro span,.studio-beam,.video-modal{animation:none;transition:none}.site-intro{display:none}.reveal-section{opacity:1;transform:none}.studio-beam{display:none}}