:root{--red:#df251d;--ink:#201914;--cream:#fff8f0;--line:#ffd2b83d;--sans:'DM Sans',sans-serif;--display:'Barlow Condensed',sans-serif;--serif:'Instrument Serif',serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:0}body{margin:0;background:var(--red);color:var(--cream);font:16px/1.6 var(--sans);-webkit-font-smoothing:antialiased}h1,h2,h3,p{margin:0}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{cursor:pointer}button,a{touch-action:manipulation}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid currentColor;outline-offset:6px}::selection{background:var(--ink);color:var(--cream)}.skip{position:fixed;top:-100px;left:15px;z-index:60;padding:12px;background:var(--cream);color:var(--ink)}.skip:focus{top:12px}.nav{position:absolute;top:0;left:0;right:0;padding:29px 4%;display:flex;align-items:center;justify-content:space-between;gap:20px;z-index:20}.wordmark{font-family:var(--display);font-weight:800;font-size:37px;letter-spacing:-1px;line-height:1;display:inline-flex;gap:3px;align-items:flex-start}.wordmark span{font:12px var(--sans);margin-top:2px}.nav nav{display:flex;gap:38px;font-size:14px}.nav sup{font-size:12px;margin-left:3px}.nav a:hover{opacity:.7}.nav-contact{border:0;border-bottom:1px solid #ffecd68c;color:inherit;background:none;padding:8px 0;font-size:14px;display:flex;gap:35px}.hero{height:100svh;min-height:720px;position:relative;overflow:hidden;isolation:isolate;padding:136px 5% 35px}.hero:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent 49.94%,#fff2 50%,transparent 50.06%);z-index:-1}.hero-rail{display:flex;justify-content:space-between;gap:20px;font-size:12px;letter-spacing:1.5px;line-height:1.5}.hero h1{position:absolute;left:5%;top:26%;font-family:var(--display);font-weight:800;font-size:clamp(145px,18vw,275px);line-height:.77;letter-spacing:-3px;z-index:2;pointer-events:none}.title-line{display:block}.title-line.second{margin-top:8px;position:relative;z-index:4}.period{color:var(--ink)}.hero-object{position:absolute;right:1%;top:15%;width:56%;transform:translate3d(var(--mx,0px),var(--my,0px),0) rotate(calc(var(--hero-p,0) * 12deg)) scale(calc(1 + var(--hero-p,0) * .1));z-index:3;pointer-events:none}.hero-object img{width:100%;height:auto;display:block;animation:knot 10s ease-in-out infinite;filter:drop-shadow(0 28px 19px #5b100f25)}.hero-copy{position:absolute;right:5%;bottom:12%;display:flex;align-items:flex-end;gap:45px;z-index:6}.hero-copy p{font-size:14px;line-height:1.7;max-width:310px}.circle-link{height:64px;width:64px;flex-shrink:0;border:1px solid #ffead999;border-radius:50%;display:grid;place-items:center;font-size:27px;transition:background .25s,transform .25s;background:none;color:inherit}.circle-link:hover{background:#fff2;transform:rotate(-20deg)}.hero-bottom{position:absolute;left:5%;right:5%;bottom:28px;display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:14px;font-size:12px;letter-spacing:1.6px}.work-journey{height:300svh;position:relative;background:var(--red)}.work-stage{position:sticky;top:0;height:100svh;min-height:650px;overflow:hidden;isolation:isolate}.work-heading{position:absolute;left:5%;top:6%;z-index:5}.label{font-size:12px;letter-spacing:1.4px;font-weight:500;line-height:1.6}.work-heading h2{font-family:var(--serif);font-weight:400;font-size:56px;line-height:1.04;letter-spacing:-1px;margin-top:17px}.work-heading h2 em{font-weight:400}.work-index{position:absolute;left:5%;bottom:21%;display:flex;flex-direction:column;gap:13px;z-index:8}.work-index button{display:flex;gap:20px;color:#ffedcba8;font-size:13px;border:0;background:transparent;padding:4px 0;text-align:left}.work-index button span{font-size:12px}.work-index button[aria-pressed=true]{color:#fff7e9}.work-index button[aria-pressed=true]:after{content:'↗';margin-left:14px}.project-deck{position:absolute;left:34%;top:16%;width:57%;height:70%;perspective:1200px}.project-card{position:absolute;inset:0;border-radius:15px;overflow:hidden;box-shadow:0 28px 55px #4b0b0c40;transform-origin:50% 80%;will-change:transform;display:flex;flex-direction:column;min-height:380px}.card-one{background:#f9ebd4;color:#231d16}.card-meta{position:absolute;left:23px;right:23px;top:20px;display:flex;align-items:center;justify-content:space-between;gap:18px;font-size:12px;letter-spacing:1px;z-index:3}.counter-title{font-family:var(--display);font-weight:700;position:absolute;left:28px;top:16%;font-size:94px;line-height:.75;letter-spacing:-2px;z-index:2}.counter-title em{font-family:var(--serif);font-weight:400;font-size:79px;line-height:.9}.card-one>img{position:absolute;width:78%;right:-9%;top:16%;height:auto;transform:rotate(-17deg)}.card-footer{position:absolute;bottom:20px;left:23px;right:23px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:12px;z-index:4}.card-footer button{color:inherit;background:none;border:1px solid currentColor;border-radius:50%;height:38px;width:38px;display:grid;place-items:center;font-size:20px}.card-footer button:hover{background:#ffffff40}.card-two{background:#0539da;color:white}.card-two>img,.card-three>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.card-two h3{position:absolute;left:25px;top:20%;font-size:53px;line-height:1.02;letter-spacing:-2px;font-weight:500;max-width:390px;z-index:3}.card-two h3 em{font-family:var(--serif);font-weight:400;font-size:70px}.card-three{color:#402319;background:#efdfc2}.card-three h3{position:absolute;left:24px;top:19%;font-family:var(--serif);font-weight:400;font-size:79px;line-height:.95;letter-spacing:-2px;z-index:3}.work-bottom{position:absolute;bottom:25px;left:5%;right:5%;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:12px;letter-spacing:.7px;z-index:10}.motion-control{font-size:12px;color:inherit;background:transparent;border:1px solid #fff4;border-radius:100px;padding:7px 12px}.work-progress{width:110px;height:2px;background:#ffebd347}.work-progress i{display:block;height:100%;width:var(--progress,0%);background:var(--cream)}.studio{padding:100px 6% 95px;background:#211a17;color:#f8ecdc}.studio-intro{display:flex;align-items:flex-start;justify-content:space-between;gap:35px}.studio-intro .label{color:#bdad9c}.studio-intro h2{font-family:var(--serif);font-size:68px;font-weight:400;line-height:1.05;letter-spacing:-1.7px;width:65%}.studio-intro h2 em{color:#f04a35}.studio-body{margin-top:65px;display:grid;grid-template-columns:.8fr 1.2fr;gap:11%}.studio-statement{font-size:20px;line-height:1.65;letter-spacing:-.3px;max-width:340px;color:#bcaa97}.services details{border-top:1px solid #d3bca42e;padding:20px 0}.services details:last-child{border-bottom:1px solid #d3bca42e}.services summary{display:flex;align-items:center;gap:22px;font-size:29px;font-weight:450;list-style:none;cursor:pointer;letter-spacing:-1px}.services summary::-webkit-details-marker{display:none}.services summary span{font-size:12px;color:#a78f7a;letter-spacing:1px}.services summary i{font:23px var(--sans);margin-left:auto;font-style:normal;transition:transform .3s}.services details[open] summary i{transform:rotate(45deg)}.services details p{font-size:14px;color:#bda994;margin:17px 22px 5px 40px;line-height:1.8}.contact{padding:52px 6% 43px;background:#f8ecd9;color:#211a17;position:relative;overflow:hidden}.contact-top{display:flex;align-items:center;justify-content:space-between;gap:20px}.outline-button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;border:1px solid currentColor;border-radius:100px;background:none;color:inherit;padding:12px 19px;font-size:14px;transition:background .2s}.outline-button:hover{background:#2019140a}.contact h2{font-family:var(--display);font-size:clamp(135px,22vw,325px);line-height:.78;font-weight:700;letter-spacing:-3px;margin:65px 0 33px;color:var(--red)}.contact h2 em{font-family:var(--serif);font-weight:400;font-size:.8em;line-height:.7;padding-left:18%}.contact-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;font-size:15px}.dark-circle{border-color:#211a17;color:#211a17}.dark-circle:hover{background:#211a1709}footer{padding:29px 6%;display:flex;align-items:center;justify-content:space-between;gap:25px}footer .wordmark{font-size:54px}footer p,footer>span{font-size:12px;letter-spacing:1.4px}dialog{border:0;padding:0;color:var(--ink);background:var(--cream);max-height:90svh;max-width:1000px;width:calc(100% - 42px);border-radius:12px;overflow:auto;box-shadow:0 30px 150px #0004}dialog::backdrop{background:#211a17c9;backdrop-filter:blur(10px)}.dialog-close{position:absolute;right:18px;top:16px;width:40px;height:40px;display:grid;place-items:center;border:1px solid #211a1750;border-radius:50%;background:#fff3e3e6;color:#211a17;font-size:25px;z-index:5}.dialog-close:hover{background:white}#case-dialog>img{display:block;width:100%;max-height:440px;object-fit:cover;background:#ead5be}.case-copy{padding:30px 40px 37px}.case-copy h2{font-family:var(--serif);font-size:63px;font-weight:400;margin:12px 0 14px;line-height:1}.case-copy>p:not(.label){font-size:16px;max-width:700px;line-height:1.8;color:#72604d}.case-copy .case-note{font-size:13px!important;margin-top:15px}.case-copy .outline-button{margin-top:25px}#brief-dialog{max-width:680px}.brief-inner{padding:45px}.brief-inner h2{font-family:var(--serif);font-weight:400;font-size:74px;line-height:.9;letter-spacing:-1px;margin:24px 0}.brief-inner>p:not(.label){font-size:14px;color:#796854;max-width:460px}.brief-inner form{margin-top:25px}form label{font-size:14px;display:block}input,textarea{display:block;width:100%;border:0;border-bottom:1px solid #ad9981;border-radius:0;background:transparent;color:var(--ink);font-size:16px;padding:12px 0;outline-offset:5px}textarea{resize:vertical;min-height:100px}fieldset{border:0;padding:0;margin:26px 0}legend{font-size:14px;margin-bottom:12px}.brief-options{display:flex;gap:9px;flex-wrap:wrap}.brief-options label{display:flex;align-items:center;gap:7px;border:1px solid #cdbda7;padding:9px 12px;border-radius:100px;font-size:13px}.brief-options input{width:auto;margin:0;accent-color:#b82d21}.filled-button{margin-top:23px;background:var(--red);color:var(--cream);border:0;border-radius:5px;display:flex;align-items:center;justify-content:space-between;gap:30px;width:100%;padding:14px 18px;font-size:14px}#brief-status{font-size:13px;margin-top:14px}.paused .hero-object img{animation-play-state:paused}@keyframes knot{0%,100%{transform:translateY(0) rotate(-3deg)}50%{transform:translateY(-17px) rotate(3deg)}}
@media(max-width:1100px){.hero h1{font-size:19vw;top:29%}.hero-object{top:23%;width:61%;right:-5%}.hero-copy{gap:25px;bottom:13%}.hero-copy p{font-size:13px}.work-heading h2{font-size:44px}.project-deck{left:31%;width:64%;top:23%;height:61%}.work-heading{top:7%}.counter-title{font-size:76px}.counter-title em{font-size:64px}.card-two h3{font-size:44px}.card-two h3 em{font-size:59px}.card-three h3{font-size:65px}.card-meta{font-size:12px}.studio-intro h2{font-size:57px}.studio-body{gap:8%}.services summary{font-size:26px}}
@media(max-width:760px){.nav{padding:23px 23px}.nav nav{display:none}.wordmark{font-size:34px}.nav-contact{font-size:13px;gap:20px}.hero{min-height:680px;height:100svh;padding:113px 23px 27px}.hero-rail{font-size:12px;letter-spacing:1px}.hero-rail>span:last-child{max-width:120px;text-align:right}.hero h1{font-size:29vw;left:5%;top:27%;letter-spacing:-1px;line-height:.86}.title-line.second{margin-top:0}.hero-object{width:105%;right:-27%;top:23%}.hero-copy{right:23px;left:23px;bottom:12%;justify-content:space-between;gap:20px}.hero-copy p{font-size:14px;line-height:1.6;max-width:260px}.circle-link{width:53px;height:53px;font-size:24px}.hero-bottom{left:23px;right:23px;font-size:12px;letter-spacing:1px;bottom:25px}.hero-bottom>span{max-width:45%}.hero-bottom>span:last-child{text-align:right}.work-journey{height:290svh}.work-stage{min-height:650px}.work-heading{top:30px;left:23px}.work-heading .label{font-size:12px}.work-heading h2{font-size:43px;line-height:1.02;margin-top:12px}.project-deck{left:10%;width:82%;top:29%;height:54%}.project-card{min-height:0;border-radius:10px}.card-meta{left:16px;right:16px;top:15px;font-size:12px;letter-spacing:.5px;gap:8px}.card-footer{left:16px;right:16px;bottom:14px;font-size:12px;gap:10px}.card-footer button{width:34px;height:34px;flex-shrink:0}.counter-title{font-size:74px;left:19px;top:20%;letter-spacing:-1px}.counter-title em{font-size:65px}.card-one>img{width:95%;right:-17%;top:28%}.card-two h3{font-size:36px;left:18px;top:22%;max-width:280px;letter-spacing:-1px}.card-two h3 em{font-size:51px}.card-three h3{font-size:57px;left:18px;top:19%}.work-index{left:23px;right:23px;bottom:10%;flex-direction:row;justify-content:space-between;gap:9px}.work-index button{gap:6px;font-size:12px}.work-index button span{font-size:12px}.work-index button[aria-pressed=true]:after{display:none}.work-bottom{left:23px;right:23px;bottom:21px;font-size:12px;gap:10px}.work-progress{width:45px}.motion-control{font-size:12px;padding:6px 9px}.studio{padding:64px 23px}.studio-intro{display:block}.studio-intro .label{font-size:12px}.studio-intro h2{font-size:47px;width:100%;margin-top:28px;letter-spacing:-.7px}.studio-body{grid-template-columns:1fr;gap:30px;margin-top:27px}.studio-statement{font-size:18px;max-width:440px}.services summary{font-size:26px;gap:15px}.services details p{font-size:14px;margin-left:32px}.contact{padding:33px 23px}.contact-top{align-items:flex-start}.contact-top .label{font-size:12px;max-width:100px}.outline-button{font-size:12px;gap:14px;padding:10px 14px}.contact h2{font-size:37vw;margin:47px 0 33px;letter-spacing:-2px}.contact-bottom p{font-size:13px;max-width:250px}footer{padding:29px 23px;flex-wrap:wrap;gap:24px}footer .wordmark{font-size:45px}footer p{font-size:12px}footer>span{font-size:12px;flex-basis:100%}.case-copy{padding:27px 23px}.case-copy h2{font-size:49px}.case-copy>p:not(.label){font-size:14px}.brief-inner{padding:38px 25px}.brief-inner h2{font-size:63px}.brief-options{gap:7px}.brief-options label{font-size:12px;padding:8px 10px}.dialog-close{top:13px;right:13px;width:35px;height:35px}dialog{width:calc(100% - 24px);max-height:92svh}.label{font-size:12px}}
@media(max-width:370px){.hero-copy p{font-size:13px}.work-index button{font-size:12px}.counter-title{font-size:63px}.counter-title em{font-size:55px}.card-two h3{font-size:31px}.card-two h3 em{font-size:45px}.card-three h3{font-size:49px}.studio-intro h2{font-size:41px}.nav-contact{font-size:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.hero-object{transform:none!important}.work-journey{height:auto}.work-stage{height:auto;min-height:0;padding:55px 5%}.work-heading,.work-index,.project-deck,.work-bottom{position:relative;inset:auto}.work-heading{margin-bottom:30px}.work-index{display:none}.project-deck{width:100%;height:auto;display:grid;gap:25px}.project-card{position:relative;inset:auto;height:520px;transform:none!important;opacity:1!important;pointer-events:auto!important}.work-bottom{margin-top:25px}.work-progress,.motion-control{display:none}}

.work-index button,.motion-control,.nav-contact,.outline-button,.brief-options label,.card-footer,.hero-copy p{font-size:14px}.card-meta{font-size:12px;line-height:1.4}.card-meta>span{max-width:50%}.hero{min-height:620px}@media(max-width:760px){.hero{min-height:640px}.work-index button{font-size:12px}.card-meta{font-size:12px}.card-meta>span:last-child{text-align:right}.work-bottom{flex-wrap:wrap}.work-progress{display:none}.contact-top{gap:14px}}
/* Preserve the full headline while the sculpture threads between its lines. */
.hero h1{z-index:auto}.title-line{position:relative;z-index:4}.title-line.second{z-index:6}.hero-object{z-index:5;top:12%;right:0;width:51%}.hero-copy{z-index:7}
@media(max-width:760px){.hero-object{top:25%;right:-22%;width:100%}.hero h1{top:26%;font-size:28vw}.hero-copy{bottom:13%}}

.work-index button{color:var(--cream)}.hero-rail{position:relative;z-index:7}
/* Outgoing panels stay in the gallery rail rather than crossing the title. */
.project-deck{clip-path:inset(0 -35% -15% 0)}
@media(max-width:760px) and (prefers-reduced-motion:no-preference){.work-stage{min-height:0}.project-deck{top:31%;height:51%}.work-index{bottom:10%}}
@media(max-width:760px) and (max-height:650px) and (prefers-reduced-motion:no-preference){.work-heading{top:23px}.work-heading h2{font-size:36px}.project-deck{top:29%;height:49%}.work-index{bottom:12%}.work-bottom{bottom:17px}.counter-title{font-size:61px}.counter-title em{font-size:53px}.card-two h3{font-size:30px}.card-two h3 em{font-size:43px}.card-three h3{font-size:48px}.card-footer{font-size:12px}.card-meta{font-size:12px}}
/* A pinned stage clips artwork without becoming a second scroll container. */
.hero,.work-stage{overflow:clip}
@media(max-width:760px){.hero-rail>span:first-child{max-width:none;text-align:left}.hero h1{font-size:26vw}.title-line{z-index:6}.hero-object{top:37%;width:115%;right:-28%}.title-line.second{text-shadow:0 2px 0 #b8201740}}
@media(max-width:760px) and (max-height:700px){.hero-object{top:33%;width:100%;right:-22%}}
@media(max-width:760px){.work-bottom>#project-caption{display:none}.work-index button{min-height:44px}.motion-control{min-height:40px}}
.card-one>img{width:70%;right:-10%;top:20%}.card-one .card-footer,.card-three .card-footer{left:0;right:0;bottom:0;padding:13px 23px;background:#f9ebd4f2}.card-two .card-footer{left:0;right:0;bottom:0;padding:13px 23px;background:#082aaaee}
@media(max-width:760px){.card-one>img{width:80%;right:-33%;top:24%}.card-one .card-footer,.card-two .card-footer,.card-three .card-footer{padding:11px 16px;font-size:12px}}
.card-three h3{left:8%;top:auto;bottom:18%;color:#fff5e6;text-shadow:0 1px 8px #3a142026}
