:root{font-family:Inter,Arial,sans-serif;color:#141414;background:#f4f3f1;font-synthesis:none;--paper:#f4f3f1;--ink:#141414;--red:#f20b28;--line:#d4d3d0;--pad:3.75vw}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;min-width:320px;-webkit-font-smoothing:antialiased}button,a{-webkit-tap-highlight-color:transparent}button,input{font:inherit}button{cursor:pointer;border:0;color:inherit}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button:focus-visible,a:focus-visible{outline:2px solid var(--red);outline-offset:6px}button:disabled{opacity:.3;cursor:default}h1,h2,h3,p{margin:0}::selection{background:var(--red);color:white}.eyebrow{font-size:10px;font-weight:500;letter-spacing:2px;line-height:1.5}.skip-link{position:fixed;top:-100px;left:20px;z-index:100;background:var(--red);color:white;padding:14px}.skip-link:focus{top:12px}
.masthead{height:64px;padding:0 var(--pad);display:flex;align-items:center;justify-content:space-between;background:var(--paper);position:sticky;top:0;z-index:20;border-bottom:1px solid #d4d3d033}.brand{display:flex;align-items:center;gap:32px;font-size:14px;font-weight:600;letter-spacing:3px}.brand img{height:44px;width:11px;object-fit:contain}.masthead nav{display:flex;align-items:center;gap:54px;margin-right:32px}.masthead nav a{font-size:11px;letter-spacing:1.7px;font-weight:600;padding:12px 0;position:relative}.masthead nav a:after{content:'';position:absolute;left:0;right:100%;height:1px;background:var(--red);bottom:6px;transition:right .25s}.masthead nav a:hover:after{right:0}.menu-toggle{display:none!important}
.hero{height:45vw;min-height:610px;max-height:820px;position:relative;overflow:hidden;color:var(--paper);background:#090909}.hero-bg{position:absolute;inset:-2%;width:104%;height:104%;max-width:none;object-fit:cover;animation:hero-flow 24s ease-in-out infinite alternate;pointer-events:none}@keyframes hero-flow{from{transform:scale(1.01) translateY(0)}to{transform:scale(1.05) translateY(-1.3%)}}.hero-grid{position:absolute;inset:0 var(--pad);display:grid;grid-template-columns:23% 58% 19%;border-left:1px solid #ffffff20;border-right:1px solid #ffffff20;pointer-events:none}.hero-grid i{height:100%;border-left:1px solid #ffffff12}.hero-grid i:first-child{border:0}.hero-grid i:last-child{display:none}.hero-inner{height:100%;position:relative;padding:54px var(--pad) 32px}.hero-eyebrow{display:flex;align-items:center;justify-content:space-between}.eyebrow-line{display:flex;gap:25px;align-items:center;margin-left:-10px}.short-rule{width:40px;border-top:1px solid #bbb}.hero-manifesto{position:relative;padding-right:44px;font-size:9px;letter-spacing:2px}.hero-manifesto svg{position:absolute;right:-10px;top:2px}.hero h1{font-size:17.9vw;font-weight:900;line-height:.76;letter-spacing:-.077em;margin:29px 0 21px 27px}.hero h1 span{display:block}.hero-signature{font-family:Caveat,cursive;font-size:5.65vw;font-weight:400;white-space:nowrap;color:var(--red);position:absolute;top:65%;right:5.5%;transform:rotate(-7deg);line-height:1;pointer-events:none}.hero-bottom{display:grid;grid-template-columns:19% 57% 24%;align-items:end;position:absolute;left:var(--pad);right:var(--pad);bottom:36px}.hero-disciplines{font-size:9px;line-height:1.4;padding-left:35px;position:relative}.hero-disciplines:before{content:'';position:absolute;left:-9px;top:11px;width:16px;border-top:1px solid #ccc}.hero-intro>p{font-size:18px;line-height:1.45;letter-spacing:-.5px;font-weight:400;margin-bottom:18px}.hero-actions{display:flex;align-items:center;gap:35px}.primary-button{background:var(--red);color:white;display:inline-flex;align-items:center;justify-content:space-between;gap:25px;padding:21px 34px;font-size:11px;letter-spacing:1.4px;font-weight:600;min-width:270px;transition:background .25s,transform .25s}.primary-button:hover{background:#d5001c;transform:translateY(-2px)}.text-link,.text-button{display:inline-flex;align-items:center;justify-content:space-between;gap:18px;border-bottom:1px solid currentColor;padding:10px 0;font-size:10px;font-weight:600;letter-spacing:1.3px;background:none;text-align:left}.light-link{min-width:110px}.text-link:hover,.text-button:hover{color:var(--red)}.hero-availability{font-size:9px;letter-spacing:2px;margin-bottom:12px;justify-self:end;padding-left:24px;position:relative}.hero-availability:before{content:'';position:absolute;width:14px;left:0;top:6px;border-top:1px solid #bdbdbd}
.section-pad{padding:52px var(--pad) 74px}.section-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:30px}.section-label{display:flex;align-items:center;gap:22px}.section-label>span:first-child{font-size:9px;letter-spacing:1px}.label-rule{width:40px;border-top:1px solid #aaa}.section-label h2{font-size:12px;font-weight:600;letter-spacing:2.5px}.section-aside{font-size:9px;letter-spacing:2px}.filters{display:flex;gap:27px;margin:-2px 0 30px;flex-wrap:wrap}.filters button{background:none;padding:8px 0 7px;border-bottom:1px solid transparent;font-size:11px;line-height:1.4;color:#656565;transition:color .2s}.filters button span{font-size:8px;vertical-align:super;margin-left:5px;color:#777}.filters button.active{border-color:var(--red);color:var(--ink)}.filters button.active span{color:var(--red)}.filters button:hover{color:var(--red)}
.feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.feature-card{height:26vw;min-height:330px;max-height:500px;position:relative;overflow:hidden;background:#dedddc}.feature-copy{position:relative;z-index:2;padding:60px 30px 60px;width:44%;pointer-events:none}.feature-copy .eyebrow{font-size:8px;letter-spacing:1px;white-space:nowrap;margin-bottom:12px}.feature-copy h3{font-size:4.5vw;letter-spacing:-.055em;line-height:.86;font-weight:900;margin-bottom:19px;text-transform:uppercase}.feature-summary{font-size:13px;letter-spacing:-.25px;line-height:1.38;max-width:185px}.feature-scrd{color:var(--paper);background:#242424}.feature-images{position:absolute;inset:0}.feature-images img{position:absolute;transition:transform .8s cubic-bezier(.2,.8,.2,1)}.jrny-front{width:51%;height:100%;object-fit:contain;left:39%;top:6%;z-index:1;transform:rotate(-8deg)}.jrny-rear{width:48%;height:96%;object-fit:contain;right:-5%;top:-2%;mix-blend-mode:multiply;transform:rotate(6deg)}.scrd-front{height:92%;width:67%;object-fit:contain;left:39%;top:14%;transform:rotate(-10deg);z-index:1}.scrd-rear{height:88%;width:62%;object-fit:contain;right:-18%;top:-10%;transform:rotate(14deg)}.feature-card:hover .jrny-front{transform:rotate(-5deg) scale(1.03)}.feature-card:hover .jrny-rear{transform:rotate(3deg) scale(1.03)}.feature-card:hover .scrd-front{transform:rotate(-7deg) scale(1.03)}.feature-open{position:absolute;inset:0;z-index:3;background:transparent;text-align:left}.feature-open>span{position:absolute;bottom:34px;left:30px;display:flex;align-items:center;gap:50px;border-bottom:1px solid currentColor;font-size:9px;letter-spacing:1.3px;font-weight:600;padding-bottom:8px}
.work-grid{display:grid;grid-template-columns:1fr 1fr;gap:55px 28px;margin-top:58px}.work-image{width:100%;height:32vw;max-height:550px;background:#dedddc;overflow:hidden;position:relative;padding:0;display:block}.work-image>img{height:100%;width:100%;object-fit:cover;transition:transform .6s}.work-image:hover>img{transform:scale(1.03)}.image-action{position:absolute;right:22px;bottom:22px;background:var(--paper);color:var(--ink);width:48px;height:48px;display:flex;align-items:center;justify-content:center;transition:background .2s,color .2s}.work-image:hover .image-action,.amazon-image:hover .image-action{background:var(--red);color:white}.work-togal .work-image{background:#fafaf6}.work-togal .work-image>img{object-position:center top}.work-eclipse .work-image{background:#10191c}.work-eclipse .work-image>img{object-fit:contain}.work-zann .work-image{background:#fff}.work-zann .work-image>img{object-fit:cover}.work-meta{display:flex;justify-content:space-between;align-items:center;padding-top:22px}.work-meta .eyebrow{font-size:9px;letter-spacing:1.3px;margin-bottom:8px;color:#5c5c5c}.work-meta h3{font-size:29px;letter-spacing:-1.2px;font-weight:600}.work-meta h3 button{background:transparent;padding:0;text-align:left;letter-spacing:inherit;font-size:inherit;font-weight:inherit}.work-meta h3 button:hover{color:var(--red)}.project-number{font-size:11px;color:#6c6c6c}.work-summary{font-size:14px;line-height:1.5;max-width:450px;color:#626262;margin-top:11px}
.art-section{background:var(--ink);color:var(--paper);padding-top:55px;padding-bottom:66px}.art-intro{display:flex;justify-content:space-between;align-items:flex-end;padding:32px 0 44px;gap:40px}.art-intro h2{font-size:6.5vw;font-weight:600;letter-spacing:-.065em;line-height:.98}.art-intro h2 span{color:var(--red)}.art-intro>div{width:32%;padding-bottom:6px}.art-intro p{font-size:16px;line-height:1.5;color:#c7c6c3;margin-bottom:24px}.art-intro .text-button{min-width:245px}.art-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.art-grid button{padding:0;position:relative;overflow:hidden;background:#333;aspect-ratio:1}.art-grid img{height:100%;width:100%;object-fit:cover;transition:transform .6s}.art-grid button:hover img{transform:scale(1.04)}.art-grid button>span{position:absolute;right:10px;bottom:10px;background:var(--ink);color:var(--paper);display:flex;padding:10px}
.amazon-section{border-bottom:1px solid var(--line);padding-top:62px;padding-bottom:80px}.amazon-layout{display:grid;grid-template-columns:1.15fr 1fr;gap:7%;align-items:center;margin-top:40px}.amazon-image{position:relative;padding:0;overflow:hidden;background:#d9dedb}.amazon-image>img{width:100%;height:auto;min-height:280px;object-fit:cover;transition:transform .5s}.amazon-image:hover>img{transform:scale(1.02)}.amazon-copy h2{font-size:4.3vw;letter-spacing:-.06em;line-height:1;margin:17px 0 22px;font-weight:600}.amazon-copy>p:not(.eyebrow){font-size:15px;color:#626262;line-height:1.6;max-width:350px;margin-bottom:23px}.amazon-copy .text-button{min-width:255px}
.about-section{padding-top:64px;padding-bottom:100px}.about-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:10%;align-items:center;margin-top:48px}.portrait{max-width:480px}.portrait>img{width:100%;height:480px;object-fit:cover;object-position:center 35%}.portrait>span{display:block;margin-top:18px;font-size:9px;letter-spacing:1.4px}.about-copy h2{font-size:6.1vw;line-height:.96;letter-spacing:-.065em;font-weight:600;margin-bottom:32px}.about-copy h2 span{color:var(--red)}.about-copy>p{font-size:16px;line-height:1.6;max-width:470px;color:#555;margin-bottom:14px}.expertise{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);margin:26px 0 22px;padding-top:20px;gap:16px;font-size:12px}
.contact-section{background:var(--ink);color:var(--paper);padding-top:55px;padding-bottom:64px}.contact-main{display:flex;align-items:center;justify-content:space-between;padding:35px 0 55px;gap:25px}.contact-main h2{font-size:8.1vw;letter-spacing:-.065em;line-height:.99;font-weight:600}.contact-main h2 span{color:var(--red)}.contact-arrow{display:flex;align-items:center;justify-content:center;width:110px;height:110px;border:1px solid #676767;border-radius:50%;flex-shrink:0;transition:background .25s}.contact-arrow:hover{background:var(--red);border-color:var(--red)}.contact-bottom{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #444;padding-top:35px;gap:30px}.contact-bottom>p{font-size:15px;color:#bbb;line-height:1.6}.email-row{display:flex;align-items:center;gap:18px;position:relative}.email-row>a{font-size:25px;letter-spacing:-1px;border-bottom:1px solid #777;padding-bottom:7px}.email-row>a:hover{color:var(--red)}.copy-status{position:absolute;font-size:11px;right:0;top:100%;padding-top:6px}.icon-button{display:inline-flex;justify-content:center;align-items:center;background:none;min-height:42px;min-width:42px;flex-shrink:0}.icon-button:hover{color:var(--red)}footer{background:var(--ink);color:#c4c4c1;display:flex;align-items:center;gap:30px;justify-content:space-between;padding:26px var(--pad);border-top:1px solid #383838;font-size:9px;letter-spacing:1.2px}footer .eyebrow{font-size:9px}footer a{display:flex;align-items:center;gap:14px}footer a:nth-child(2){margin-left:auto}footer a:hover{color:var(--red)}
.project-dialog{border:0;background:var(--paper);color:var(--ink);padding:0;max-width:1120px;width:calc(100% - 80px);max-height:calc(100dvh - 64px);margin:auto;overscroll-behavior:contain}.project-dialog::backdrop{background:#000c;backdrop-filter:blur(8px)}.dialog-shell{padding:30px 45px 35px}.dialog-top{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:16px}.dialog-top .eyebrow{font-size:9px;letter-spacing:1px}.dialog-intro{display:grid;grid-template-columns:1fr 1fr;gap:35px;align-items:start;padding:35px 0 20px}.dialog-intro h2{font-size:64px;line-height:1;letter-spacing:-3.5px;font-weight:700}.dialog-intro p{font-size:15px;line-height:1.6;color:#555}.dialog-role{display:flex;gap:30px;border-top:1px solid var(--line);padding:20px 0 25px}.dialog-role .eyebrow{white-space:nowrap;font-size:9px}.dialog-role p{font-size:12px;line-height:1.5}.gallery-frame{display:flex;justify-content:center;align-items:center;background:#dfdedb;min-height:240px;height:min(58vh,560px);overflow:hidden}.gallery-frame img{max-width:100%;max-height:100%;object-fit:contain}.gallery-frame.is-full{height:auto;max-height:none;min-height:0;display:block}.gallery-frame.is-full img{width:100%;max-height:none;height:auto}.gallery-togal{align-items:flex-start;background:white}.gallery-togal:not(.is-full) img{width:100%;max-height:none;height:auto;object-fit:cover;object-position:top}.gallery-art{background:#111}.gallery-art img{height:100%}.gallery-amazon{background:white}.gallery-wtw{background:#aaa}.gallery-controls{display:flex;align-items:center;justify-content:space-between;padding:15px 0 20px;gap:20px}.gallery-pagination{display:flex;align-items:center;gap:15px;font-size:11px;font-variant-numeric:tabular-nums}.gallery-controls .text-button{font-size:10px}.gallery-thumbs{display:flex;gap:12px;overflow-x:auto;padding:4px 0 20px}.gallery-thumbs button{background:#e0dfdd;height:66px;width:80px;flex-shrink:0;padding:5px;border:1px solid transparent}.gallery-thumbs button.selected{border-color:var(--red)}.gallery-thumbs img{width:100%;height:100%;object-fit:contain}.dialog-footer{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-top:18px;gap:20px}
.hero{height:44.5vw}.hero h1{margin-top:4px;line-height:.72}.hero-signature{font-family:'La Belle Aurore',Caveat,cursive;font-size:5vw;top:66%;right:5.8%}.primary-button{padding-top:18px;padding-bottom:18px}.feature-jrny{background:#ccc}.jrny-front{height:88%;width:49%;top:7%;transform:rotate(-4deg)}.jrny-rear{mix-blend-mode:darken;transform:rotate(3deg)}.feature-card:hover .jrny-front{transform:rotate(-2deg) scale(1.02)}.selected-work{display:flex;flex-direction:column}.selected-work .section-top{order:0;margin-bottom:18px}.selected-work .feature-grid{order:1;margin-bottom:28px}.selected-work .filters{order:2;margin:0}.selected-work .work-grid{order:3;margin-top:34px}
@media(min-width:1700px){.hero h1{font-size:300px}.hero-signature{font-size:85px}.feature-copy h3{font-size:77px}}
@media(max-width:1100px){.hero h1{margin-top:38px;font-size:18.1vw}.hero-signature{top:60%;font-size:6vw;right:5%}.hero-bottom{grid-template-columns:16% 64% 20%}.hero-intro>p{font-size:16px}.hero-availability{font-size:8px;letter-spacing:1.2px}.hero-actions{gap:24px}.primary-button{min-width:230px;padding:19px 23px}.feature-copy{padding:44px 24px;width:46%}.feature-summary{font-size:12px}.feature-open>span{left:24px;bottom:28px}.feature-copy h3{font-size:5vw}.work-image{height:36vw}.portrait>img{height:390px}.contact-main h2{font-size:8vw}.hero-disciplines{padding-left:18px}.masthead nav{margin-right:0;gap:36px}}
@media(max-width:760px){:root{--pad:6vw}.masthead{height:66px}.brand{font-size:11px;letter-spacing:2px;gap:20px}.brand img{height:38px;width:9px}.menu-toggle{display:inline-flex!important}.masthead nav{display:none;position:absolute;top:66px;left:0;right:0;background:var(--paper);padding:25px 6vw 32px;border-bottom:1px solid var(--line)}.masthead nav.nav-open{display:flex;flex-direction:column;align-items:flex-start;gap:18px}.masthead nav a{font-size:14px}.hero{height:640px;min-height:0;max-height:none}.hero-inner{padding-top:37px}.hero-eyebrow .eyebrow-line{gap:14px;margin-left:0}.hero-eyebrow .short-rule{width:25px}.hero-eyebrow .eyebrow{font-size:8px;letter-spacing:1.4px}.hero-manifesto{display:none}.hero-grid{grid-template-columns:27% 73%}.hero-grid i:nth-child(3){display:none}.hero h1{font-size:20.5vw;letter-spacing:-.08em;line-height:.84;margin:56px 0 0 -2px}.hero-signature{font-size:10.5vw;top:48%;right:7%;transform:rotate(-7deg)}.hero-bottom{display:block;bottom:33px;left:var(--pad);right:var(--pad)}.hero-disciplines{display:none}.hero-intro>p{font-size:17px;letter-spacing:-.4px;margin-bottom:25px}.hero-actions{gap:22px;justify-content:space-between;align-items:center}.primary-button{min-width:0;padding:19px 22px;font-size:10px;gap:22px;letter-spacing:.9px}.light-link{min-width:77px;font-size:9px}.hero-availability{margin:27px 0 0;font-size:8px;letter-spacing:1.5px;padding-left:22px}.hero-availability br{display:none}.section-pad{padding:37px var(--pad) 48px}.section-top{margin-bottom:27px;gap:20px}.section-label{gap:13px}.section-label h2{font-size:10px;letter-spacing:1.4px}.label-rule{width:23px}.section-aside{display:none}.filters{gap:12px 23px;margin:0 0 25px}.filters button{font-size:10px}.feature-grid{grid-template-columns:1fr;gap:18px}.feature-card{height:100vw;min-height:340px;max-height:475px}.feature-copy{padding:48px 24px;width:47%}.feature-copy h3{font-size:14vw}.feature-copy .eyebrow{font-size:7px;letter-spacing:.6px}.feature-summary{font-size:12px;max-width:150px}.jrny-front{width:61%;height:90%;left:38%;top:10%}.jrny-rear{right:-14%;width:62%;top:0}.scrd-front{left:38%;width:78%}.scrd-rear{width:75%;right:-24%}.feature-open>span{font-size:9px;gap:30px;bottom:29px}.work-grid{grid-template-columns:1fr;gap:38px;margin-top:38px}.work-image{height:72vw;max-height:450px}.work-meta{padding-top:17px}.work-meta h3{font-size:26px}.work-meta .eyebrow{font-size:8px}.work-summary{font-size:13px;margin-top:9px}.art-intro{display:block;padding:20px 0 32px}.art-intro h2{font-size:12vw;margin-bottom:26px}.art-intro>div{width:100%}.art-intro p{font-size:14px;margin-bottom:15px}.art-grid{grid-template-columns:1fr 1fr;gap:12px}.art-grid button>span{padding:6px;right:7px;bottom:7px}.amazon-layout{grid-template-columns:1fr;gap:28px;margin-top:27px}.amazon-image>img{min-height:0}.amazon-copy h2{font-size:11vw;margin:12px 0 17px}.amazon-copy>p:not(.eyebrow){font-size:14px;max-width:none}.about-layout{grid-template-columns:1fr;gap:32px;margin-top:32px}.portrait{max-width:none}.portrait>img{height:105vw;max-height:480px}.portrait>span{font-size:8px}.about-copy h2{font-size:13vw;margin-bottom:23px}.about-copy>p{font-size:14px}.expertise{gap:15px;font-size:11px}.contact-main{padding:28px 0 32px;align-items:flex-end;gap:10px}.contact-main h2{font-size:11vw;letter-spacing:-.065em}.contact-arrow{width:52px;height:52px}.contact-arrow svg{width:36px}.contact-bottom{display:block;padding-top:25px}.contact-bottom>p{font-size:13px;margin-bottom:24px}.email-row{gap:12px;justify-content:space-between}.email-row>a{font-size:21px;letter-spacing:-.7px}.contact-section{padding-bottom:48px}footer{padding:23px var(--pad);font-size:8px;gap:12px;flex-wrap:wrap}footer .eyebrow{font-size:8px;width:100%;margin-bottom:5px}footer a:nth-child(2){margin-left:0}footer a:last-child{margin-left:auto}.project-dialog{width:calc(100% - 20px);max-height:calc(100dvh - 20px)}.dialog-shell{padding:18px 20px 23px}.dialog-top .eyebrow{font-size:8px;max-width:80%}.dialog-intro{grid-template-columns:1fr;gap:20px;padding:25px 0}.dialog-intro h2{font-size:42px;letter-spacing:-2px}.dialog-intro p{font-size:13px}.dialog-role{display:block}.dialog-role p{margin-top:8px}.gallery-frame{height:50vh;min-height:220px}.gallery-controls{gap:10px}.gallery-pagination{gap:4px;font-size:10px}.gallery-pagination .icon-button{min-width:33px}.gallery-controls .text-button{font-size:9px;letter-spacing:.8px;gap:8px}.dialog-footer .text-link,.dialog-footer .text-button{font-size:8px;letter-spacing:.5px;gap:6px}.gallery-thumbs{gap:8px}.gallery-thumbs button{width:62px;height:55px}}
.primary-button{background:#e60025}.filters button.active span{color:#cd0a24}.feature-open:focus-visible{outline-offset:-5px}.gallery-thumbs button:focus-visible{outline-offset:0}
@media(max-width:760px){.hero-signature{font-size:8.8vw;right:6vw;top:49%}.hero-availability{letter-spacing:1px}}
@media(max-width:360px){.hero{height:600px}.primary-button{padding:18px 15px;font-size:9px}.hero-actions{gap:14px}.feature-copy{padding-left:20px}.feature-summary{font-size:11px}.email-row>a{font-size:18px}.hero-signature{top:45%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
.work-games-for-life .work-image{background:#fff}.work-games-for-life .work-image>img{object-fit:contain;padding:18px}

/* JRNY editorial campaign cover. */
.feature-jrny{color:#fff;background:#15191c}.feature-jrny .jrny-editorial-cover{inset:0;width:100%;height:100%;object-fit:cover;object-position:58% center}.feature-jrny .feature-images:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,8,12,.84),rgba(4,8,12,.52) 31%,transparent 58%);pointer-events:none}.feature-jrny .feature-copy{width:42%;text-shadow:0 2px 16px #0008}.feature-jrny .feature-copy .eyebrow{color:#fff}.feature-jrny .feature-summary{color:#f0f0ee}.feature-jrny .feature-open{color:#fff}.feature-jrny:hover .jrny-editorial-cover{transform:scale(1.025)}
@media(max-width:760px){.feature-jrny .jrny-editorial-cover{object-position:58% center}.feature-jrny .feature-copy{width:45%;padding-left:22px;padding-right:10px}.feature-jrny .feature-summary{font-size:11px;max-width:125px}.feature-jrny .feature-copy h3{font-size:12vw}.feature-jrny .feature-images:after{background:linear-gradient(90deg,#04080cdb,#04080c77 36%,transparent 70%)}}

/* SCRD artwork-led close crop. */
.feature-scrd{background:#efeee6;color:#171717}.feature-scrd .scrd-editorial-cover{inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 0%;transform:none}.feature-scrd .feature-copy{width:39%;text-shadow:0 1px 12px #f4f2e6cc}.feature-scrd .feature-summary{max-width:175px}.feature-scrd .feature-open{color:#171717}.feature-scrd .feature-images:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#f2f1e9b3, #f2f1e933 18%,transparent 30%);pointer-events:none}.feature-scrd:hover .scrd-editorial-cover{transform:scale(1.025)}
@media(max-width:760px){.feature-scrd .scrd-editorial-cover{object-position:56% 0%}.feature-scrd .feature-copy{width:43%;padding-right:8px}.feature-scrd .feature-summary{max-width:125px;font-size:11px}.feature-scrd .feature-copy h3{font-size:12vw}}

.feature-scrd .scrd-editorial-cover{left:19%;right:auto;width:100%}
@media(max-width:760px){.feature-scrd .scrd-editorial-cover{left:17%}}

.work-wtw .work-image>img{object-fit:cover;object-position:48% center}
.hero-canvas{position:absolute;inset:0;width:100%;height:100%;opacity:0;pointer-events:none;transition:opacity .65s ease}
.hero-canvas.is-ready{opacity:1}
.hero-glitch{display:inline-block;position:relative}
.motion-enabled .hero-glitch::before,.motion-enabled .hero-glitch::after{content:attr(data-text);position:absolute;inset:0;pointer-events:none;opacity:0;color:inherit;animation:hero-glitch-slice 4.8s steps(1,end) 1.6s infinite}
.motion-enabled .hero-glitch::before{text-shadow:7px 0 var(--red);--glitch-shift:-24px}
.motion-enabled .hero-glitch::after{text-shadow:-7px 0 #a6b9bd;--glitch-shift:24px;animation-direction:reverse}
.motion-enabled .hero-name-line:nth-child(2) .hero-glitch::before,.motion-enabled .hero-name-line:nth-child(2) .hero-glitch::after{animation-delay:1.73s}
@keyframes hero-glitch-slice{0%,8%,100%{opacity:0;transform:none;clip-path:inset(0)}1%{opacity:1;clip-path:inset(16% 0 66% 0);transform:translateX(var(--glitch-shift))}2%{opacity:1;clip-path:inset(61% 0 18% 0);transform:translateX(calc(var(--glitch-shift) * -1))}3%{opacity:0}4%{opacity:1;clip-path:inset(36% 0 47% 0);transform:translateX(var(--glitch-shift))}5%{opacity:1;clip-path:inset(78% 0 7% 0);transform:translateX(calc(var(--glitch-shift) * -.5))}6%{opacity:0}7%{opacity:1;clip-path:inset(24% 0 67% 0);transform:translateX(calc(var(--glitch-shift) * .5))}}
.scroll-ink-word{--ink-fill:100%;background:linear-gradient(to right,var(--ink-color) 0 var(--ink-fill),#858582 var(--ink-fill) 100%);background-clip:text;-webkit-background-clip:text;color:transparent!important;-webkit-text-fill-color:transparent}
.bottom-blur{position:fixed;bottom:0;left:0;right:0;height:clamp(65px,12vh,120px);z-index:30;pointer-events:none;isolation:isolate;transition:opacity .15s linear}
.bottom-blur i{position:absolute;inset:0;backdrop-filter:blur(var(--blur)) saturate(1.1);-webkit-backdrop-filter:blur(var(--blur)) saturate(1.1);mask-image:linear-gradient(to bottom,transparent var(--mask-start),black var(--mask-end));-webkit-mask-image:linear-gradient(to bottom,transparent var(--mask-start),black var(--mask-end))}
body:has(.project-dialog[open]) .bottom-blur{visibility:hidden}
@media(prefers-reduced-motion:reduce){.bottom-blur{display:none}.scroll-ink-word{background:none;color:var(--ink-color)!important;-webkit-text-fill-color:var(--ink-color)}}
.motion-enabled .motion-reveal{opacity:0;translate:0 38px;transition:opacity .85s cubic-bezier(.16,1,.3,1) var(--reveal-delay,0ms),translate 1.05s cubic-bezier(.16,1,.3,1) var(--reveal-delay,0ms)}
.motion-enabled .motion-reveal.is-revealed{opacity:1;translate:0 0}
.motion-enabled .motion-reveal:focus-within{opacity:1;translate:0 0;transition-delay:0s}
.motion-enabled .hero:not(.is-in-view) .hero-name-line,.motion-enabled .hero:not(.is-in-view) .hero-signature,.motion-enabled .hero:not(.is-in-view) .hero-bottom{opacity:0}
.motion-enabled .hero.is-in-view .hero-name-line{animation:name-entrance 1.25s cubic-bezier(.16,1,.3,1) both}
.motion-enabled .hero.is-in-view .hero-name-line:nth-child(2){animation-delay:.14s}
.motion-enabled .hero.is-in-view .hero-signature{animation:signature-entrance 1.3s cubic-bezier(.16,1,.3,1) .48s both}
.motion-enabled .hero.is-in-view .hero-bottom{animation:detail-entrance .9s cubic-bezier(.16,1,.3,1) .42s both}
.motion-enabled .hero.is-in-view .hero-eyebrow{animation:detail-entrance .85s cubic-bezier(.16,1,.3,1) .08s both}
@keyframes name-entrance{from{opacity:0;transform:translateY(70px);clip-path:inset(100% -5% -30% -5%)}to{opacity:1;transform:translateY(0);clip-path:inset(-30% -5% -30% -5%)}}
@keyframes signature-entrance{from{opacity:0;clip-path:inset(-50% 100% -50% -20%)}to{opacity:1;clip-path:inset(-50% -20% -50% -20%)}}
@keyframes detail-entrance{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}
.roll-label{display:inline-block;height:1.4em;line-height:1.4;overflow:hidden;vertical-align:bottom}
.roll-track{display:block;transition:transform .45s cubic-bezier(.16,1,.3,1)}
.roll-track>span{display:block;line-height:1.4;white-space:nowrap}
a:hover .roll-track,button:hover .roll-track,a:focus-visible .roll-track,button:focus-visible .roll-track{transform:translateY(-50%)}
.feature-card{transform:perspective(1200px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));transition:transform .55s cubic-bezier(.16,1,.3,1);will-change:auto}
.motion-enabled .feature-card.motion-reveal{transition:opacity .85s cubic-bezier(.16,1,.3,1) var(--reveal-delay,0ms),translate 1.05s cubic-bezier(.16,1,.3,1) var(--reveal-delay,0ms),transform .55s cubic-bezier(.16,1,.3,1)}
.motion-enabled .work-card.motion-reveal:not(.is-revealed) .work-image>img{transform:scale(1.1)}
.motion-enabled .work-card .work-image>img{transition:transform 1.2s cubic-bezier(.16,1,.3,1)}
.primary-button svg,.text-button svg,.text-link svg,.feature-open svg,.image-action svg{transition:transform .45s cubic-bezier(.16,1,.3,1)}
.primary-button:hover svg,.text-button:hover svg,.text-link:hover svg,.feature-open:hover svg{transform:translateX(5px)}
.work-image:hover .image-action svg,.art-grid button:hover svg,.amazon-image:hover .image-action svg{transform:translate(2px,-2px)}
.project-dialog[open]{animation:dialog-entrance .45s cubic-bezier(.16,1,.3,1) both;transform-origin:50% 56%}
.project-dialog[open]::backdrop{animation:backdrop-entrance .3s ease both}
.project-dialog.is-closing{animation:dialog-exit .19s ease both}
.project-dialog.is-closing::backdrop{animation:backdrop-exit .19s ease both}
.gallery-frame img{animation:gallery-entrance .6s cubic-bezier(.16,1,.3,1) both}
@keyframes dialog-entrance{from{opacity:0;transform:translateY(28px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes dialog-exit{to{opacity:0;transform:translateY(14px) scale(.985)}}
@keyframes backdrop-entrance{from{opacity:0}to{opacity:1}}
@keyframes backdrop-exit{to{opacity:0}}
@keyframes gallery-entrance{from{opacity:0;scale:1.025}to{opacity:1;scale:1}}
@media(max-width:760px){.motion-enabled .motion-reveal{translate:0 24px}.motion-enabled .motion-reveal.is-revealed{translate:0 0}.masthead nav.nav-open{animation:detail-entrance .35s cubic-bezier(.16,1,.3,1) both}}
@media(prefers-reduced-motion:reduce){.hero-canvas{display:none}.motion-reveal{opacity:1!important;translate:none!important}.hero-name-line,.hero-signature,.hero-bottom{opacity:1!important;clip-path:none!important}.feature-card{transform:none!important}.roll-track{transform:none!important}*,*:before,*:after{animation:none!important;transition:none!important}}
.has-scroll-grid{position:relative;isolation:isolate}
.has-scroll-grid>.section-grid{position:absolute;inset:0 var(--pad);z-index:-1;pointer-events:none;overflow:hidden;--grid-base:#d4d3d0;--grid-active:#141414}
.section-grid i{position:absolute;display:block;opacity:.25}
.section-grid .grid-vertical{top:0;bottom:0;width:1px;background:var(--grid-base)}
.section-grid .grid-vertical:after{content:'';position:absolute;top:0;left:0;width:1px;height:var(--grid-fill,0%);background:var(--grid-active)}
.section-grid .grid-horizontal{left:0;right:0;height:1px;background:var(--grid-base)}
.section-grid .grid-horizontal:after{content:'';display:block;height:1px;width:var(--row-fill,0%);background:var(--grid-active)}
.hero>.section-grid,.art-section>.section-grid,.contact-section>.section-grid{--grid-base:#fff;--grid-active:var(--red)}
.hero>.section-grid{z-index:1}.hero-inner{z-index:2}.hero-grid{display:none}
@media(max-width:760px){.section-grid .grid-vertical:nth-child(2),.section-grid .grid-vertical:nth-child(4){display:none}}
.services-ticker{position:absolute;bottom:12px;right:var(--pad);width:46.25%;height:32px;overflow:hidden;border-top:1px solid #ffffff25;mask-image:linear-gradient(to right,transparent,#000 7%,#000 93%,transparent);-webkit-mask-image:linear-gradient(to right,transparent,#000 7%,#000 93%,transparent)}
.services-track{display:flex;width:max-content;animation:services-drift 50s linear infinite;will-change:transform}
.services-run{display:flex;flex-shrink:0;align-items:center;white-space:nowrap}
.services-run>span{display:flex;align-items:center;gap:24px;padding:10px 24px 0 0;font-size:10px;line-height:1.2;font-weight:500;letter-spacing:1.1px;text-transform:uppercase}
.services-run b{color:var(--red);font-size:12px;font-weight:400}
@keyframes services-drift{from{transform:translateX(-50%)}to{transform:translateX(0)}}
.services-ticker:hover .services-track,.hero:has(.hero-canvas[data-motion="paused"]) .services-track{animation-play-state:paused}
.hero-bottom{bottom:62px}
@media(max-width:760px){.hero-bottom{bottom:62px}.services-ticker{width:44%;right:6vw;bottom:14px}.services-run>span{font-size:8px;gap:16px;padding-right:16px}}
@media(prefers-reduced-motion:reduce){.services-ticker{height:auto;max-height:52px;overflow:auto;mask-image:none;-webkit-mask-image:none}.services-track{width:auto}.services-run{flex-wrap:wrap;white-space:normal}.services-run:nth-child(2){display:none}.services-run>span{font-size:8px;padding-top:5px;gap:8px;padding-right:8px}}
.hero-foreground-wave{position:absolute;inset:0;z-index:3;pointer-events:none;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);mask-image:radial-gradient(ellipse 28% 36% at 84% 44%,#000 0%,#000 30%,transparent 76%);-webkit-mask-image:radial-gradient(ellipse 28% 36% at 84% 44%,#000 0%,#000 30%,transparent 76%);animation:foreground-wave 9s ease-in-out infinite alternate}
.hero-foreground-wave .hero-canvas{opacity:.4}.hero-foreground-wave .hero-canvas:not(.is-ready){opacity:0}
@keyframes foreground-wave{from{transform:translate(2%,-1%) scale(1.02)}to{transform:translate(-9%,4%) scale(1.09)}}
.hero:has(>.hero-canvas[data-motion="paused"]) .hero-foreground-wave{animation-play-state:paused}
@media(max-width:760px){.hero-foreground-wave{mask-image:radial-gradient(ellipse 30% 22% at 83% 35%,#000 20%,transparent 80%);-webkit-mask-image:radial-gradient(ellipse 30% 22% at 83% 35%,#000 20%,transparent 80%);backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}}
@media(prefers-reduced-motion:reduce){.hero-foreground-wave{display:none}}
.hero-location{position:absolute;left:50%;transform:translateX(-50%);font-size:10px;font-weight:500;letter-spacing:2px;line-height:1.5;white-space:nowrap}
@media(max-width:760px){.hero-location{position:static;transform:none;font-size:8px;letter-spacing:1.4px;margin-left:auto}}
.about-profile{position:relative;padding-top:26px}
.profile-language{position:absolute;top:0;right:0;background:transparent;font-size:9px;letter-spacing:1.4px;color:#666;padding:0 0 5px;border-bottom:1px solid #aaa}
.profile-layers{display:grid}
.profile-language-copy{grid-area:1/1;min-width:0;transition:opacity .22s ease,filter .22s ease;align-self:start}
.profile-language-copy>p{font-size:16px;line-height:1.65;color:#626262;margin-bottom:20px}
.profile-japanese{visibility:hidden;opacity:0;pointer-events:none}
.profile-japanese h2{font-family:Inter,'Yu Gothic','Hiragino Kaku Gothic ProN',sans-serif;font-size:clamp(28px,3.4vw,58px);letter-spacing:-.04em;line-height:1.3}
.show-japanese .profile-english{visibility:hidden;opacity:0;pointer-events:none}
.show-japanese .profile-japanese{visibility:visible;opacity:1;pointer-events:auto;animation:profile-switch .65s ease both}
.about-profile:not(.show-japanese) .profile-english{animation:profile-switch .65s ease both}
@keyframes profile-switch{0%{filter:blur(8px);opacity:.15;transform:translateX(-8px)}18%{filter:blur(5px);transform:translateX(9px);text-shadow:-3px 0 #f20b2866}30%{transform:translateX(-5px);filter:blur(3px)}48%{transform:translateX(3px);filter:blur(1px);text-shadow:2px 0 #a6b9bd}100%{filter:blur(0);opacity:1;transform:none;text-shadow:none}}
@media(max-width:760px){.profile-language-copy>p{font-size:14px}.profile-japanese h2{font-size:8vw}}
@media(prefers-reduced-motion:reduce){.profile-language-copy{animation:none!important;transition:none!important}}
.hero-sculpture{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.hero-experiment>.hero-bg{display:none}
.hero-experiment .hero-inner{background:linear-gradient(90deg,#08090b44,transparent 65%)}
.hero-experiment .hero-signature{z-index:1}
.sculpture-preview .section-grid,.sculpture-preview~footer>.section-grid{visibility:hidden}

/* Scroll-directed opening, isolated from the original portfolio. */
.hero-stage-default{display:contents}
.sculpture-masthead{position:fixed;inset:0 0 auto;background:transparent;color:#fff;border:0;mix-blend-mode:difference}
.sculpture-masthead .brand img{filter:invert(1)}
.hero-scroll-stage{height:250svh;position:relative;background:var(--paper)}
.hero-scroll-stage .hero-experiment{position:sticky;top:0;height:100svh;min-height:0;max-height:none;opacity:var(--scene-opacity,1)}
.hero-scroll-stage .hero-inner{padding-top:110px;opacity:var(--copy-opacity,1);filter:blur(var(--copy-blur,0px));pointer-events:auto}
.hero-scroll-stage .hero-sculpture{filter:blur(var(--rock-blur,0px));transform:scale(1.02)}
.hero-scroll-stage .hero-grid{display:none}
.explosion-smoke{position:absolute;inset:-35%;pointer-events:none;opacity:var(--smoke-opacity,0);transform:rotate(var(--smoke-turn,0deg));background:radial-gradient(ellipse at 32% 43%,#d8dce360,transparent 26%),radial-gradient(ellipse at 70% 60%,#d4dbe66b,transparent 24%),radial-gradient(ellipse at 48% 75%,#bbc7d540,transparent 22%);filter:blur(34px)}
.explosion-flash{position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 50% 50%,#fff 0%,#f4f3f1 74%);opacity:var(--flash-opacity,0)}
.scroll-explore{position:absolute;bottom:22px;left:var(--pad);color:white;opacity:var(--copy-opacity,1);pointer-events:none;font-size:9px}
@media(max-width:760px){.sculpture-masthead nav{background:#090909;color:white}.hero-scroll-stage{height:220svh}.hero-scroll-stage .hero-inner{padding-top:95px}.hero-scroll-stage .hero-experiment h1{margin-top:55px}.hero-scroll-stage .hero-signature{top:44%}.hero-scroll-stage .hero-bottom{bottom:75px}}
@media(prefers-reduced-motion:reduce){.hero-scroll-stage{height:100svh}.hero-scroll-stage .hero-experiment{opacity:1!important}.hero-scroll-stage .hero-inner{opacity:1!important;filter:none!important}.hero-scroll-stage .hero-sculpture{filter:none!important}.explosion-smoke,.explosion-flash{display:none}}

body:has(.hero-scroll-stage[data-active="true"]) .bottom-blur{visibility:hidden}

/* Keep the heart visible around a smaller, single-line name. */
.hero-scroll-stage .hero-heart h1{position:absolute;top:43%;left:50%;transform:translate(-50%,-50%);display:flex;align-items:baseline;justify-content:center;gap:.23em;width:max-content;max-width:94%;margin:0;font-size:7.7vw;line-height:1.08;letter-spacing:-.065em;white-space:nowrap}
.hero-heart h1 .hero-name-line{display:block}
@media(min-width:1700px){.hero-scroll-stage .hero-heart h1{font-size:130px}}
@media(max-width:760px){.hero-scroll-stage .hero-heart h1{font-size:8.6vw;top:40%;margin:0;letter-spacing:-.06em}}

.hero-scroll-stage .hero-heart h1{font-size:4.5vw;text-transform:uppercase;letter-spacing:.17em;gap:.38em;font-weight:600}
@media(min-width:1700px){.hero-scroll-stage .hero-heart h1{font-size:76px}}
@media(max-width:760px){.hero-scroll-stage .hero-heart h1{font-size:5vw;letter-spacing:.13em;gap:.3em}}

.hero-scroll-stage .hero-heart .hero-signature{top:calc(43% + 50px);right:calc(50% - 420px);font-size:3vw;transform:rotate(-7deg)}
@media(min-width:1700px){.hero-scroll-stage .hero-heart .hero-signature{font-size:51px}}
@media(max-width:1100px){.hero-scroll-stage .hero-heart .hero-signature{top:calc(43% + 35px);right:19%;font-size:3.7vw}}
@media(max-width:760px){.hero-scroll-stage .hero-heart .hero-signature{top:calc(40% + 28px);right:12%;font-size:5vw}}

/* Frosted navigation takes over once Selected Work reaches the menu. */
.masthead.is-over-work{mix-blend-mode:normal;color:#141414;background:rgba(244,243,241,.72);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);isolation:isolate;border-bottom:0}
.masthead.is-over-work:before{content:"";position:absolute;left:0;right:0;top:100%;height:38px;background:linear-gradient(to bottom,rgba(244,243,241,.72),rgba(244,243,241,0));backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);mask-image:linear-gradient(to bottom,#000,transparent);-webkit-mask-image:linear-gradient(to bottom,#000,transparent);pointer-events:none;z-index:-1}
.sculpture-masthead.is-over-work .brand img{filter:none}
@media(prefers-reduced-motion:reduce){.masthead.is-over-work{backdrop-filter:none;-webkit-backdrop-filter:none;background:rgba(244,243,241,.96)}.masthead.is-over-work:before{backdrop-filter:none;-webkit-backdrop-filter:none}}
