/* approved.css */
@font-face{font-family:DVKDisplay;src:url('bebas.ttf') format('truetype');font-display:swap}@font-face{font-family:DVKMono;src:url('mono.ttf') format('truetype');font-display:swap}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:#202020;color:#eeeEE7;font-family:DVKMono,monospace;background-image:linear-gradient(90deg,transparent calc(100% - 1px),#eeeEE706 0);background-size:25% 100%}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:6px}.skip{position:absolute;top:-100px}.skip:focus{top:10px;background:#202020;padding:15px;z-index:10}header{height:90px;padding:0 4.7%;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #b4b4a82c}.brand{display:flex;align-items:center;gap:30px}.brand>b{font:44px/1 DVKDisplay;letter-spacing:-1.4px;padding-right:28px;border-right:1px solid #b4b4a83b}.brand>span{font-size:13px;letter-spacing:5px}.brand small{display:block;font-size:7px;letter-spacing:2px;margin-top:7px}header nav{display:flex;gap:38px;align-items:center;font-size:10px;letter-spacing:.5px}.talk{padding:12px 0;border-bottom:1px solid #eeeEE7}.hero{padding:30px 4.7% 0;max-width:1920px;margin:auto}.eyeline{font-size:8px;letter-spacing:1.7px;display:flex;justify-content:space-between;gap:30px;color:#d0d0c7}.composition{display:grid;grid-template-columns:58% 36%;gap:6%;align-items:center;min-height:calc(100svh - 215px);padding:35px 0 48px}.copy{min-width:0}.copy h1{font:clamp(90px,12.5vw,200px)/.91 DVKDisplay,sans-serif;letter-spacing:-1.2px;margin:0 0 22px;font-weight:400}.copy h1 span{color:var(--accent);transition:color .5s}.copy p{font-size:12px;line-height:1.9;max-width:510px;margin:0 0 35px;letter-spacing:.3px}.underlink{font-size:10px;letter-spacing:1px;display:inline-block;padding:0 30px 12px 0;border-bottom:1px solid #eeeEE7}.frame-wrap{padding:0 6px;isolation:isolate;min-width:0}.portrait-frame{position:relative;transform:rotate(2deg);background:#eeeEE5;color:#141612;margin:0;padding:14px 14px 12px;box-shadow:12px 12px 0 #eeeEE710;transition:background .6s}.portrait-frame:after{position:absolute;content:'';inset:18px -15px -18px 15px;border:1px solid #eeeEE750;z-index:-1;pointer-events:none}.portrait-frame figcaption{font-size:8px;letter-spacing:1px;display:flex;justify-content:space-between;gap:15px;padding:0 0 11px}.film{position:relative;aspect-ratio:3/4;background:white;overflow:hidden}.film video{width:100%;height:100%;display:block;object-fit:cover;object-position:center center;background:#fff}.film button{position:absolute;bottom:14px;right:14px;border-radius:50%;width:42px;height:42px;background:#111b;color:#fff;border:1px solid #ffffffa0;font-family:Arial,sans-serif;font-size:14px}.frame-base{display:flex;justify-content:space-between;align-items:center;gap:10px;padding-top:14px;font-size:6px;letter-spacing:.3px;min-height:30px}.frame-base a{font-size:9px;white-space:nowrap}.forms{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid #eeeEE72b}.forms>a,.forms>button{display:flex;align-items:center;gap:23px;padding:28px 24px 26px;border:0;border-right:1px solid #eeeEE72b;border-bottom:5px solid var(--c);text-align:left;background:none;font-size:11px;transition:background .3s}.forms>:last-child{border-right:0}.forms span{font-size:9px;color:#92958c}.forms>*:hover,.forms>[aria-pressed=true],.forms>[aria-current=page]{background:color-mix(in srgb,var(--c) 16%,transparent)}.forms>[aria-pressed=true] span,.forms>[aria-current=page] span{color:var(--c)}.skills{display:flex;flex-wrap:wrap;gap:15px;font-size:8px;color:#b5bbae;margin-top:25px}.profile{padding:90px 4.7%;display:grid;grid-template-columns:1fr 2fr;border-top:1px solid #eeeEE71c;margin-top:50px}.profile>span{font-size:9px;letter-spacing:2px;color:#aaaFA4}.profile h2{font-family:Arial,sans-serif;font-size:clamp(21px,2.6vw,40px);line-height:1.3;font-weight:400;margin:0 0 30px;letter-spacing:-1px}.profile a{font-size:11px;border-bottom:1px solid #eeeEE76b;padding-bottom:7px}footer{padding:25px 4.7%;display:flex;justify-content:space-between;border-top:1px solid #eeeEE72b;font-size:8px;letter-spacing:1px}@media(min-width:1700px){.composition{grid-template-columns:55% 32%;gap:10%}.portrait-frame{max-width:520px}.copy h1{font-size:215px}}@media(max-width:900px){header{padding:0 5%;height:76px}.brand{gap:15px}.brand>b{font-size:34px;padding-right:15px}.brand>span{font-size:10px;letter-spacing:2px}.brand small{font-size:5px;letter-spacing:1px}header nav{gap:20px;font-size:9px}header nav>a:nth-child(2){display:none}.hero{padding:24px 5% 0}.composition{grid-template-columns:55% 40%;gap:5%;min-height:0;padding:55px 0}.copy h1{font-size:13vw}.copy p{font-size:10px}.eyeline{font-size:6px;letter-spacing:1px}.portrait-frame{padding:10px}.portrait-frame figcaption{font-size:6px}.frame-base{display:block;font-size:5px;padding-top:8px}.frame-base a{display:block;text-align:right;margin-top:7px;font-size:8px}.film button{width:33px;height:33px;bottom:10px;right:10px}.forms>a,.forms>button{padding:24px 14px;gap:10px;font-size:9px}.forms span{font-size:7px}}@media(max-width:580px){header{height:70px}.brand{gap:12px}.brand>b{font-size:32px;padding-right:12px}.brand>span{font-size:9px;letter-spacing:1px}.brand small{font-size:4.5px;letter-spacing:.5px}header nav{font-size:8px}header nav>a:not(.talk){display:none}.eyeline>span:last-child{display:none}.composition{grid-template-columns:1fr;padding:35px 0 45px;gap:35px}.copy h1{font-size:23vw;margin-bottom:20px}.copy p{font-size:11px;line-height:1.8;margin-bottom:24px}.underlink{font-size:9px}.frame-wrap{width:min(82%,350px);margin:0 auto;padding:0 8px}.portrait-frame{padding:12px}.portrait-frame figcaption{font-size:7px}.frame-base{display:flex;font-size:5px}.frame-base a{margin-top:0;font-size:8px}.forms{grid-template-columns:1fr 1fr}.forms>*{min-height:68px}.forms>a,.forms>button{padding:20px 12px;font-size:10px;border-bottom-width:4px}.forms>:nth-child(2){border-right:0}.forms>:nth-child(-n+2){border-bottom-color:var(--c)}.profile{display:block;margin-top:30px;padding:45px 5%}.profile h2{font-size:22px;letter-spacing:-.5px;margin-top:22px}.profile a{font-size:10px}.skills{font-size:7px}.profile>span{font-size:8px}footer{font-size:7px;padding:22px 5%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:after{transition:none!important}}
/* Interiors: original section colour, shared white exhibition space. */
.section-page .hero{background:var(--accent);color:#252525;max-width:none;padding-top:28px}.section-page .eyeline{color:#252525}.section-page .copy h1{font-size:clamp(72px,10.8vw,170px)}.section-page .underlink{border-color:#252525}.section-page .skills{color:#252525}.section-page .forms{border-color:#25252550}.section-page .forms>a{border-right-color:#25252540;border-bottom-color:#25252533}.section-page .forms span{color:#25252599}.section-page .forms>[aria-current=page]{background:#ffffff28;border-bottom-color:#252525}.section-page .composition{min-height:calc(100svh - 210px)}.section-page .profile{display:none}.portfolio-section{padding:60px 4.7% 70px;background:#f1f1e9;color:#252525}.portfolio-heading{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-bottom:30px}.portfolio-heading>span{font-size:9px;letter-spacing:1px}.portfolio-heading h2{font:clamp(40px,5vw,70px)/1 DVKDisplay;margin:0}.work-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}.work-slot{margin:0}.slot-1{grid-column:1/-1}.work-space{aspect-ratio:1;background:#e4e5dd;display:flex;align-items:end;justify-content:space-between;padding:22px;gap:15px;font-size:8px;color:#62695b}.slot-1 .work-space{aspect-ratio:16/9;background:color-mix(in srgb,var(--accent) 12%,#e8e9e2)}.work-slot figcaption{padding:16px 0 27px;font-size:10px}.store-link{display:inline-block;margin-top:30px;padding-bottom:10px;border-bottom:1px solid #252525;font-size:12px}.section-contact{padding:55px 4.7%;background:var(--accent);color:#252525;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:25px}.section-contact>span{width:100%;font-size:8px;letter-spacing:1px}.section-contact>a:not(.back-home){font:clamp(55px,10vw,145px)/1 DVKDisplay}.back-home{font-size:10px;border-bottom:1px solid #25252570;padding-bottom:8px}@media(max-width:900px){.section-page .copy h1{font-size:11vw}.section-page .composition{min-height:0}.portfolio-section{padding:40px 5%}.work-space{padding:17px;font-size:7px}}@media(max-width:580px){.section-page .copy h1{font-size:20vw}.portfolio-heading{align-items:end;padding-bottom:23px}.portfolio-heading>span{font-size:7px;max-width:110px;line-height:1.8}.portfolio-heading h2{font-size:38px}.work-grid{grid-template-columns:1fr}.slot-1{grid-column:auto}.slot-1 .work-space{aspect-ratio:4/3}.work-space{aspect-ratio:1}.work-slot figcaption{font-size:9px}.section-contact{padding:40px 5%}.section-contact>span{font-size:7px}.back-home{font-size:9px}}
.project-cover{display:block;position:relative}.project-cover img{display:block;width:100%;height:auto}.project-cover>span{position:absolute;right:22px;bottom:22px;background:#202020e6;color:#eeeEE7;padding:15px 20px;font-size:9px;letter-spacing:.5px}.selected-caption{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 0}.selected-caption h3{font:clamp(38px,5vw,70px)/1 DVKDisplay;margin:0}.selected-caption>span{font-size:10px;margin-right:auto}.selected-caption>a{font-size:10px;border-bottom:1px solid #252525;padding-bottom:8px}@media(max-width:580px){.project-cover>span{right:12px;bottom:12px;padding:12px;font-size:7px}.selected-caption{flex-wrap:wrap;gap:12px}.selected-caption>span{font-size:8px;width:calc(100% - 130px)}.selected-caption>a{font-size:9px}}
.design-portfolio .project-cover{aspect-ratio:16/9;overflow:hidden}.design-portfolio .project-cover img{width:100%;height:100%;object-fit:cover;object-position:center}.work-space img,.work-space video{width:100%;height:100%;object-fit:cover}@media(max-width:580px){.design-portfolio .project-cover{aspect-ratio:4/3}}
.character-portfolio .selected-project{max-width:720px;margin:0 auto}.character-cover{display:block;position:relative;aspect-ratio:2/3;overflow:hidden;background:#171919}.character-cover img{width:100%;height:100%;object-fit:contain;display:block}.character-cover>span{position:absolute;bottom:20px;right:20px;background:#202020e6;color:#eeeEE7;padding:14px 18px;font-size:9px}.character-portfolio .selected-caption{flex-wrap:wrap}.character-portfolio .selected-caption h3{font-size:clamp(32px,4vw,52px)}.character-portfolio .selected-caption>span{font-size:8px}@media(max-width:580px){.character-cover>span{bottom:12px;right:12px;font-size:7px;padding:11px}}

/* worlds.css */
:root{--paper:#f0f0e8;--ink:#252525}body{overflow-x:clip}::selection{background:var(--accent);color:var(--ink)}.world-header{background:var(--accent);color:var(--ink);border-color:#25252540}.world-header .talk{border-color:currentColor}.world-header nav a[aria-current]{text-decoration:underline;text-underline-offset:7px}.world-nav{display:flex;justify-content:space-between;gap:15px;padding:20px 4.7%;font-size:10px;background:var(--accent);color:var(--ink);border-top:1px solid #25252540}.world-nav a{padding-bottom:5px}.world-nav [aria-current]{border-bottom:1px solid}.world-hero{position:relative;isolation:isolate;background:var(--accent);color:var(--ink);padding:36px 4.7% 50px;min-height:calc(100svh - 150px)}.world-hero .kicker{display:flex;justify-content:space-between;gap:20px;font-size:9px;letter-spacing:1.5px;line-height:1.8}.world-hero h1{font:clamp(80px,12vw,190px)/.88 DVKDisplay;margin:28px 0;font-weight:400;letter-spacing:-1px}.world-hero p{font-size:12px;line-height:1.9;max-width:440px}.world-hero .jump{display:inline-block;border-bottom:1px solid;padding-bottom:10px;margin:15px 0;font-size:11px}.transform{margin:0;position:relative;min-width:0}.transform video{display:block;width:100%;height:100%;object-fit:cover;object-position:center}.transform .viewport{aspect-ratio:3/4;position:relative;background:#111;overflow:hidden}.transform figcaption{display:flex;justify-content:space-between;padding:12px 0;font-size:8px;letter-spacing:.7px}.transform button{position:absolute;bottom:14px;right:14px;border:1px solid #fffa;border-radius:50%;width:40px;height:40px;background:#111b;color:white;font:15px Arial}.editorial-grid{display:grid;grid-template-columns:1.25fr .7fr;gap:10%;align-items:center;padding-top:28px}.design-world h1{font-size:clamp(90px,13vw,200px)}.design-world .transform{padding:12px 12px 0;background:var(--paper);transform:rotate(-2deg)}.design-world .transform:after{content:'';position:absolute;inset:20px -16px -14px 20px;border:1px solid #25252550;z-index:-1}.design-world .issue{border-top:1px solid #25252560;padding-top:20px;margin-top:35px;font-size:9px;display:flex;justify-content:space-between}.studio-world{background:#173c2d;color:#c3e1c9}.studio-world .studio-grid{display:grid;grid-template-columns:1fr .85fr;gap:7%;align-items:center;margin-top:25px}.studio-world h1{font-size:clamp(80px,11vw,175px)}.studio-world h1 span{color:var(--accent)}.studio-world .transform{max-width:480px;border:1px solid #8fbea660;padding:18px;margin:auto}.studio-world .viewport{aspect-ratio:4/5}.studio-world .studio-grid>div{border-left:1px solid #8fbea650;padding-left:35px}.studio-world .coordinates{display:flex;gap:30px;border-top:1px solid #8fbea650;padding-top:18px;font-size:9px}.studio-world .transform:before{content:'+';position:absolute;left:-8px;top:-13px;background:#173c2d;font:28px monospace}.ai-world{padding-bottom:0;overflow:hidden}.ai-world h1{text-align:center;font-size:clamp(100px,16vw,240px);position:relative;z-index:2;margin:30px 0 -12px}.ai-stage{display:grid;grid-template-columns:1fr 1.1fr 1fr;gap:6%;align-items:center;max-width:1200px;margin:0 auto}.ai-stage .aside-note{border-top:1px solid #25252550;padding-top:20px;font-size:11px;line-height:1.9}.ai-stage .transform{background:#21152d;padding:10px 10px 0;color:#ddd0f1}.ai-stage .viewport{aspect-ratio:3/4}.ai-stage .right-note{align-self:end;margin-bottom:50px}.ai-stage .right-note b{font:70px DVKDisplay;display:block;font-weight:400}.universe-world{display:grid;grid-template-columns:1fr .8fr;gap:4%;align-items:center;padding-top:45px;padding-bottom:65px}.universe-world .kicker{grid-column:1/-1}.universe-world h1{font-size:clamp(100px,14vw,215px)}.universe-world .transform{width:85%;margin:auto;padding:12px;border:1px solid #252525;transform:rotate(3deg)}.universe-world .transform:before{content:'';position:absolute;inset:-24px;border:1px solid #25252540;border-radius:50%;z-index:-1}.universe-world .viewport{aspect-ratio:3/4}.universe-world .serial{font-size:9px;letter-spacing:2px;display:block;margin-top:35px}.exhibition{background:var(--paper);color:var(--ink);padding:65px 4.7% 80px}.exhibition .heading{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:35px}.heading>span{font-size:9px;letter-spacing:1px}.heading h2{font:clamp(55px,7vw,100px)/1 DVKDisplay;margin:0}.project-meta{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:20px 0;font-size:10px;line-height:1.7}.project-meta h3{font:clamp(35px,4vw,60px)/1 DVKDisplay;margin:0}.project-meta a{border-bottom:1px solid;padding-bottom:6px}.design-feature{display:grid;grid-template-columns:.65fr 1.35fr;gap:30px;align-items:start}.design-feature .project-meta{display:block;position:sticky;top:35px;border-top:1px solid;padding-top:25px}.design-feature .project-meta h3{font-size:clamp(65px,8vw,120px)}.design-feature .project-meta p{font-size:11px;line-height:1.9;max-width:240px}.design-feature img{display:block;width:100%;height:auto}.design-pair{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}.design-pair img{width:100%;aspect-ratio:4/5;object-fit:cover}.design-pair img:last-child{object-position:50% 25%}.studio-reel{display:grid;grid-template-columns:1fr .8fr;gap:8%;align-items:center}.studio-reel video{width:100%;height:min(85svh,900px);object-fit:contain;background:#b3b1bd;display:block}.studio-reel h3{font:clamp(60px,7vw,110px)/.95 DVKDisplay;margin:20px 0}.studio-reel p{font-size:12px;line-height:1.9;max-width:350px}.studio-reel a{font-size:11px;display:inline-block;border-bottom:1px solid;padding-bottom:8px;margin-top:20px}.still-study{margin:75px 0 0;display:grid;grid-template-columns:.85fr 1fr;gap:8%;align-items:center;border-top:1px solid #25252530;padding-top:40px}.still-study img{width:100%;max-height:700px;object-fit:contain;background:#151817}.still-study h3{font:clamp(45px,5vw,80px)/1 DVKDisplay;margin:20px 0}.still-study p{font-size:11px;line-height:1.8;max-width:340px}.still-study a{font-size:11px;border-bottom:1px solid;padding-bottom:7px}.ai-exhibition{background:#21182a;color:#e4daed}.ai-exhibition .heading{color:#bb9cdd}.ai-pieces{display:grid;grid-template-columns:1fr .75fr;gap:9%;align-items:start}.ai-pieces article:nth-child(2){margin-top:170px}.ai-pieces img{width:100%;height:auto;display:block}.ai-pieces .project-meta{display:block}.ai-pieces h3{margin:20px 0 10px}.ai-pieces p{font-size:10px;line-height:1.8;color:#bdb1c7}.ai-pieces a{font-size:10px;display:inline-block;margin-top:10px}.collections{background:#dce5ed;color:#122435}.collection{display:grid;grid-template-columns:.7fr 1.1fr;gap:12%;align-items:center;padding:40px 0 70px;border-top:1px solid #12243540}.collection:nth-child(odd){grid-template-columns:1.1fr .7fr}.collection:nth-child(odd)>a{order:-1}.collection img{width:100%;display:block}.collection h3{font:clamp(70px,8vw,130px)/.9 DVKDisplay;margin:24px 0}.collection p{font-size:12px;line-height:1.9;max-width:350px}.collection .serial{font-size:9px;letter-spacing:1px}.collection .text-link{font-size:11px;display:inline-block;border-bottom:1px solid;padding-bottom:8px;margin-top:20px}.world-outro{background:var(--accent);color:var(--ink);padding:60px 4.7%}.world-outro>span{font-size:9px}.world-outro h2{font:clamp(60px,10vw,150px)/1 DVKDisplay;margin:22px 0}.world-outro .outro-links{display:flex;justify-content:space-between;gap:25px;flex-wrap:wrap;font-size:11px}.outro-links a{border-bottom:1px solid;padding-bottom:8px}.world-footer{display:flex;gap:20px;flex-wrap:wrap}.world-footer span{margin-left:auto}.detail-gallery{padding:45px 4.7%;background:var(--paper);color:var(--ink)}.detail-gallery figure{margin:0 auto 40px;max-width:1100px}.detail-gallery img{display:block;width:100%;height:auto}.detail-gallery figcaption{font-size:10px;margin-top:15px}.detail-intro{padding:50px 4.7%;background:var(--accent);color:var(--ink)}.detail-intro h1{font:clamp(70px,12vw,170px)/.95 DVKDisplay;margin:25px 0}.detail-intro p{font-size:12px;line-height:1.9;max-width:650px}.detail-intro>a{font-size:10px}.detail-intro .tag{font-size:9px;letter-spacing:1px}.page-curtain{position:fixed;inset:0;background:var(--accent);z-index:1000;pointer-events:none;transform:translateY(100%)}body.leaving .page-curtain{transform:translateY(0);transition:transform .2s ease-in}body.arriving .page-curtain{animation:curtain-out .65s cubic-bezier(.2,.7,.2,1) both}body.arriving .world-hero h1{animation:type-in .8s both}.design-world:after{content:'';position:absolute;left:4.7%;right:4.7%;top:12px;height:1px;background:#25252570;transform-origin:left;animation:line-in 1s both}.studio-world .transform{animation:studio-in .85s both}.ai-world .transform{animation:signal-in 1s both}.universe-world .transform{animation:orbit-in 1s both}.reveal{transition:transform .6s,opacity .6s}.reveal.waiting{opacity:0;transform:translateY(22px)}@keyframes curtain-out{from{transform:translateY(0)}to{transform:translateY(-101%)}}@keyframes type-in{from{opacity:0;translate:0 18px}to{opacity:1;translate:0 0}}@keyframes line-in{from{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes studio-in{from{opacity:0;translate:15px 0}to{opacity:1;translate:0}}@keyframes signal-in{from{clip-path:inset(45% 0)}to{clip-path:inset(0)}}@keyframes orbit-in{from{rotate:-5deg;opacity:0}to{rotate:0deg;opacity:1}}
@media(max-width:900px){.world-header nav{gap:18px}.world-hero h1{font-size:14vw}.editorial-grid{gap:7%}.studio-world .studio-grid{gap:4%}.ai-world h1{font-size:18vw}.universe-world h1{font-size:16vw}.world-nav{font-size:9px}.design-feature{grid-template-columns:.6fr 1fr}.collection{gap:7%}.project-meta{flex-wrap:wrap}}
@media(max-width:600px){.world-hero{padding:24px 5% 35px;min-height:0}.world-hero .kicker{font-size:7px}.world-hero .kicker>span:last-child{display:none}.world-hero h1{font-size:24vw}.world-hero p{font-size:11px}.editorial-grid,.studio-world .studio-grid,.universe-world{display:block}.transform{width:min(80%,340px);margin:35px auto 0!important}.design-world .issue{margin-top:20px}.studio-world .studio-grid>div{padding-left:18px}.studio-world .transform{width:86%}.ai-stage{grid-template-columns:1fr;gap:0}.ai-stage .aside-note{max-width:100%;margin-top:20px}.ai-stage .right-note{display:none}.ai-world h1{font-size:25vw;margin-bottom:0}.ai-stage .transform{margin-top:25px!important}.universe-world .transform{width:75%;margin-top:45px!important}.universe-world .serial{margin-top:20px}.world-nav{display:grid;grid-template-columns:1fr 1fr;gap:15px;padding:20px 5%;font-size:10px}.exhibition{padding:40px 5%}.heading{display:block!important}.heading>span{font-size:8px}.heading h2{font-size:14vw;margin-top:15px}.design-feature,.studio-reel,.still-study,.ai-pieces,.collection,.collection:nth-child(odd){display:block}.design-feature .project-meta{position:static;padding-bottom:25px}.design-feature .project-meta p{max-width:100%}.design-pair{gap:8px}.studio-reel h3{font-size:17vw}.studio-reel video{height:65svh}.studio-reel>div{padding-top:20px}.still-study{margin-top:40px}.still-study img{margin-top:25px}.ai-pieces article:nth-child(2){margin-top:45px}.collection{padding:25px 0 40px}.collection h3{font-size:22vw}.collection>a{display:block;margin-top:30px}.world-outro{padding:40px 5%}.world-outro h2{font-size:18vw}.detail-intro{padding:35px 5%}.detail-gallery{padding:30px 5%}.world-footer span{margin-left:0;width:100%}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reveal.waiting{opacity:1;transform:none}.page-curtain{display:none}}
/* Keep the composition compact on tall desktop windows. */
.world-hero{min-height:0}.design-world{padding-bottom:65px}.studio-world{padding-bottom:65px}.universe-world{padding-bottom:65px}
.studio-world h1{font-size:clamp(70px,10vw,160px)}
@media(max-width:600px){.studio-world h1{font-size:20vw}}

/* portals.css */
.world-portals{padding:80px 4.7% 70px;max-width:1600px;margin:auto}
.world-portals .portal-intro{height:auto;padding:0 0 38px;border:0;display:flex;justify-content:space-between;align-items:end;gap:30px}
.portal-intro>div>span,.portal-intro-note{font:9px/1.8 DVKMono,monospace;letter-spacing:1px;color:#aaa}
.portal-intro h2{font:800 clamp(30px,4.5vw,68px)/1.05 var(--headline);letter-spacing:-.025em;margin:15px 0 0;color:#eee}
.portal-intro-note{text-align:right}
.portal-field{display:grid;grid-template-columns:1.08fr .92fr;gap:35px 5%;align-items:start}
.portal{display:block;position:relative;min-width:0;isolation:isolate;--portal-accent:#F17D43}
.portal-code{display:block;font:9px/1.5 DVKMono,monospace;letter-spacing:1px;color:var(--portal-accent);border-top:1px solid color-mix(in srgb,var(--portal-accent) 55%,transparent);padding:14px 0}
.portal-scene{height:390px;position:relative;isolation:isolate;overflow:hidden}
.portal-scene img{display:block;position:absolute;object-fit:contain;filter:drop-shadow(0 16px 15px #0008);transition:transform .7s cubic-bezier(.2,.7,.2,1)}
.portal-foot{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:20px 0 14px}
.portal-foot h3{font:800 clamp(28px,3vw,46px)/1.07 var(--headline);letter-spacing:-.025em;margin:0;color:#eee;max-width:75%}
.portal-enter{white-space:nowrap;font:9px DVKMono,monospace;color:var(--portal-accent);display:flex;align-items:center;gap:12px}
.portal-enter b{font:32px/1 Arial,sans-serif;transition:transform .3s}
.portal:hover .portal-enter b,.portal:focus-visible .portal-enter b{transform:translate(4px,-4px)}
.portal:hover .portal-foot h3,.portal:focus-visible .portal-foot h3{color:var(--portal-accent)}
.portal-design .portal-scene{background:radial-gradient(ellipse at 50% 65%,#82432b66,transparent 70%)}
.design-letter{position:absolute;left:-8px;top:8px;font:800 220px/.9 var(--headline);letter-spacing:-.08em;color:#F17D43;transform:rotate(-10deg)}
.portal-scene .design-application{height:300px;width:230px;left:39%;top:24px;transform:rotate(9deg)}
.portal-scene .design-material{height:142px;width:213px;left:3%;bottom:11px;transform:rotate(-9deg)}
.design-caption{position:absolute;right:3%;bottom:18px;color:#F17D43;font:10px/1.5 DVKMono,monospace;letter-spacing:1px}
.portal-design:hover .design-application,.portal-design:focus-visible .design-application{transform:rotate(2deg) translateY(-12px)}
.portal-design:hover .design-material,.portal-design:focus-visible .design-material{transform:rotate(-3deg) translateX(8px)}
.portal-3d{--portal-accent:#67A480;margin-top:90px}
.portal-3d .portal-scene{background:radial-gradient(ellipse,#345d3b99,transparent 70%)}
.volume-letter{position:absolute;left:0;top:2px;font:900 230px/1 Arial,sans-serif;color:transparent;-webkit-text-stroke:1px #67A480;letter-spacing:-.07em;opacity:.7}
.volume-orbit{position:absolute;width:330px;height:205px;left:50%;top:45%;margin:-100px 0 0 -165px;border:1px solid #90d6a5;transform:rotate(-28deg);border-radius:50%;animation:volume-orbit 18s ease-in-out infinite alternate;box-shadow:0 0 25px #67a48020}
.portal-scene .volume-image{width:200px;height:300px;left:50%;top:52%;transform:translate(-50%,-50%) rotate(-7deg)}
.volume-cross{position:absolute;left:8%;bottom:45px;font:50px/1 DVKMono,monospace;color:#67A480}
.volume-caption{position:absolute;right:0;bottom:12px;font:9px/1.6 DVKMono,monospace;letter-spacing:2px;color:#8ac09d}
.portal-3d:hover .volume-image,.portal-3d:focus-visible .volume-image{transform:translate(-50%,-54%) rotate(4deg)}
.portal-ai{--portal-accent:#A18BD0;margin-top:-30px}
.portal-ai .portal-scene{background:radial-gradient(ellipse at 50% 55%,#5f3c7977,transparent 70%)}
.ai-letter{position:absolute;left:2%;top:0;font:italic 130px/.95 Georgia,serif;color:#A18BD0;z-index:2;transform:rotate(-9deg)}
.portal-scene .ai-image-one{width:185px;height:250px;left:4%;top:120px;transform:rotate(-11deg)}
.portal-scene .ai-image-two{width:205px;height:280px;right:6%;top:62px;transform:rotate(10deg)}
.ai-line{position:absolute;width:130%;height:1px;left:-15%;top:55%;background:#a18bd0a0;transform:rotate(-26deg);z-index:3;box-shadow:0 0 14px #a18bd0}
.ai-caption{position:absolute;right:3%;bottom:12px;font:9px/1.6 DVKMono,monospace;letter-spacing:2px;color:#bea5eb}
.portal-ai:hover .ai-image-one,.portal-ai:focus-visible .ai-image-one{transform:rotate(-4deg) translateY(-8px)}
.portal-ai:hover .ai-image-two,.portal-ai:focus-visible .ai-image-two{transform:rotate(3deg) translateY(8px)}
.portal-worlds{--portal-accent:#6999BB;margin-top:55px}
.portal-worlds .portal-scene{background:radial-gradient(ellipse,#33577b77,transparent 72%)}
.world-ring{position:absolute;left:50%;top:44%;width:275px;height:320px;border:1px solid #6999bb99;border-radius:48%;transform:translate(-50%,-50%) rotate(-20deg)}
.ring-two{width:340px;height:270px;transform:translate(-50%,-50%) rotate(25deg);animation:world-breathe 9s ease-in-out infinite alternate}
.ring-three{width:360px;height:330px;opacity:.35;transform:translate(-50%,-50%) rotate(-8deg)}
.world-letter{position:absolute;left:0;top:175px;font:800 72px/.95 var(--headline);letter-spacing:-.04em;color:#6999BB;z-index:2;pointer-events:none}
.portal-scene .world-image{height:275px;width:207px;right:5%;top:28px;transform:rotate(7deg)}
.world-coordinate{position:absolute;right:0;bottom:12px;color:#93bbd7;font:9px/1.6 DVKMono,monospace;letter-spacing:1px}
.portal-worlds:hover .world-image,.portal-worlds:focus-visible .world-image{transform:rotate(-3deg) translateY(-8px)}
@keyframes volume-orbit{from{transform:rotate(-28deg) scale(.96)}to{transform:rotate(22deg) scale(1.06)}}
@keyframes world-breathe{from{transform:translate(-50%,-50%) rotate(25deg)}to{transform:translate(-50%,-50%) rotate(-15deg)}}
@media(min-width:1300px){.portal-scene{height:440px}.design-letter{font-size:270px}.portal-scene .design-application{height:345px;width:260px}.portal-scene .design-material{height:175px;width:260px}.portal-scene .volume-image{height:340px;width:230px}.volume-letter{font-size:270px}.portal-scene .ai-image-one{height:290px;width:215px}.portal-scene .ai-image-two{height:320px;width:235px}.ai-letter{font-size:155px}.world-letter{font-size:86px}.portal-scene .world-image{height:310px;width:235px}}
@media(max-width:700px){.world-portals{padding:45px 5%}.world-portals .portal-intro{display:block;padding-bottom:28px}.portal-intro h2{font-size:9vw}.portal-intro-note{display:none}.portal-intro>div>span{font-size:8px}.portal-field{grid-template-columns:1fr;gap:38px}.portal-3d,.portal-ai,.portal-worlds{margin-top:0}.portal-scene{height:330px}.portal-code{font-size:8px;padding:12px 0}.portal-foot{padding-top:12px}.portal-foot h3{font-size:29px;max-width:77%}.portal-enter{font-size:8px;gap:8px}.portal-enter b{font-size:27px}.design-letter{font-size:190px;top:12px}.portal-scene .design-application{height:250px;width:185px;left:39%;top:20px}.portal-scene .design-material{height:119px;width:178px;bottom:4px;left:0}.design-caption{font-size:8px;right:0;bottom:7px}.volume-letter{font-size:220px}.portal-scene .volume-image{width:175px;height:265px}.volume-orbit{width:280px;height:175px;margin-left:-140px}.volume-cross{font-size:40px;bottom:35px}.volume-caption{font-size:8px}.ai-letter{font-size:105px;top:8px}.portal-scene .ai-image-one{height:205px;width:150px;top:110px;left:3%}.portal-scene .ai-image-two{height:230px;width:170px;right:3%;top:58px}.ai-caption{font-size:8px;bottom:5px}.world-letter{font-size:62px;top:165px}.portal-scene .world-image{height:240px;width:180px;right:4%;top:18px}.world-ring{width:230px;height:270px}.ring-two{width:295px;height:230px}.ring-three{width:310px;height:285px}.world-coordinate{font-size:8px;bottom:5px}}
@media(prefers-reduced-motion:reduce){.portal-scene *,.portal-foot *{animation:none!important;transition:none!important}}

/* New continuous sculptures derived from each transformation, with no pasted media. */
.sculpture-portal .portal-scene{height:470px;overflow:visible;background:none}
.portal-scene .sculpture-art{inset:0;width:100%;height:100%;object-fit:contain;filter:none;transform:none;z-index:1;transition:transform .8s cubic-bezier(.2,.7,.2,1)}
/* All backdrop lettering shares the approved heavy geometric outline. */
.sculpture-portal .portal-scene{container-type:inline-size}
.sculpture-portal .sculpture-type{position:absolute;left:0;top:20%;bottom:auto;max-width:100%;color:transparent;-webkit-text-stroke:1px var(--portal-accent);font-family:'Avenir Next',Avenir,'Arial Black',Arial,sans-serif;font-style:normal;font-weight:800;font-size:clamp(90px,34cqw,190px);line-height:1;letter-spacing:-.025em;opacity:.75;transform:none;pointer-events:none;white-space:nowrap}
.portal-design .sculpture-type{font-size:32cqw;line-height:.92;white-space:normal}
.portal-worlds .sculpture-type{font-size:22cqw;line-height:.94;white-space:normal}
.sculpture-portal .portal-foot h3{font-family:'Avenir Next',Avenir,'Helvetica Neue',Arial,sans-serif;font-weight:800;font-style:normal;letter-spacing:-.025em}
.sculpture-portal:hover .sculpture-art,.sculpture-portal:focus-visible .sculpture-art{transform:translateY(-9px) rotate(2deg)}
.portal-ai:hover .sculpture-art,.portal-ai:focus-visible .sculpture-art{transform:translateY(-9px) rotate(-2deg)}
@media(max-width:700px){.sculpture-portal .portal-scene{height:405px}.sculpture-portal .portal-foot{padding-top:12px}}
@media(prefers-reduced-motion:reduce){.sculpture-portal:hover .sculpture-art,.sculpture-portal:focus-visible .sculpture-art{transform:none}}

/* typography.css */
/* Domi selected B: Avenir Next Heavy. Keep the approved logos and mono details. */
:root{--headline:'Avenir Next',Avenir,'Helvetica Neue',Arial,sans-serif}
h1,h2,h3,.copy h1,.profile h2,.portfolio-heading h2,.selected-caption h3,.character-intro h1,.project-head h1,.process h2,.video-project-copy h3,.world-hero h1,.heading h2,.project-meta h3,.studio-reel h3,.still-study h3,.collection h3,.world-outro h2,.detail-intro h1,.ai-stage .right-note b,.home-worlds b,.section-contact>a:not(.back-home),.character-end>a:first-of-type{font-family:var(--headline);font-weight:800;letter-spacing:-.025em;line-height:.98}
.copy h1{font-size:clamp(52px,6.8vw,112px)}
.world-hero h1,.design-world h1{font-size:clamp(52px,6.9vw,110px);margin:30px 0}
.studio-world h1{font-size:clamp(48px,5.7vw,91px)}
.ai-world h1{font-size:clamp(68px,10.8vw,170px);margin:30px 0 25px}
.universe-world h1{font-size:clamp(60px,7.6vw,120px)}
.ai-stage .right-note b{font-size:clamp(27px,3.5vw,52px);line-height:1.1}
.heading h2{font-size:clamp(34px,4vw,62px);max-width:750px}
.project-meta h3,.design-feature .project-meta h3{font-size:clamp(40px,5vw,78px)}
.studio-reel h3{font-size:clamp(42px,5vw,80px)}
.still-study h3{font-size:clamp(38px,4.5vw,65px)}
.collection h3{font-size:clamp(45px,5.7vw,90px)}
.world-outro h2{font-size:clamp(48px,6.8vw,106px)}
.detail-intro h1{font-size:clamp(52px,8vw,126px);overflow-wrap:anywhere}
.character-intro h1,.project-head h1{font-size:clamp(46px,6.7vw,100px)}
.portfolio-heading h2,.process h2{font-size:clamp(38px,5vw,72px)}
.home-worlds b{font-size:clamp(24px,2.4vw,36px)}
.profile h2{font-size:clamp(22px,2.5vw,37px);line-height:1.25}
.selected-caption h3,.character-portfolio .selected-caption h3{font-size:clamp(30px,3.8vw,52px)}
.section-contact>a:not(.back-home),.character-end>a:first-of-type{font-size:clamp(46px,7.8vw,120px)}
@media(max-width:900px){.copy h1{font-size:7vw}.world-hero h1,.design-world h1{font-size:7vw}.studio-world h1{font-size:6.2vw}.universe-world h1{font-size:8vw}}
@media(max-width:600px){.copy h1{font-size:12vw;line-height:1}.world-hero h1,.design-world h1{font-size:12.2vw}.studio-world h1{font-size:10.2vw}.universe-world h1{font-size:14vw}.ai-world h1{font-size:13vw}.heading h2{font-size:9.2vw}.project-meta h3,.design-feature .project-meta h3{font-size:13vw}.studio-reel h3{font-size:12vw}.collection h3{font-size:13vw}.world-outro h2{font-size:10.5vw}.detail-intro h1{font-size:12vw}.character-intro h1,.project-head h1{font-size:11vw}.section-contact>a:not(.back-home),.character-end>a:first-of-type{font-size:11vw}.home-worlds b{font-size:30px}}
/* Warm originals accompany the orange; the OPPOS identity itself is unchanged. */
.warm-feature{grid-template-columns:.65fr 1.35fr;gap:35px}
.warm-feature .warm-pair{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px;align-items:start}
.warm-feature .warm-pair img{width:100%;height:auto;display:block}
.warm-feature .warm-main{width:100%;height:auto;display:block}
.green-selection{background:#153b2c;color:#e3eddf;padding:55px 4.7%}
.green-selection .heading{display:flex;justify-content:space-between;gap:25px;align-items:end;margin-bottom:30px}
.green-selection .heading>span{font-size:9px;color:#9ec3a7;letter-spacing:1px}
.green-works{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.green-works figure{margin:0;min-width:0}
.green-works a{display:block;aspect-ratio:2/3;background:#0e221a;overflow:hidden}
.green-works img{width:100%;height:100%;object-fit:contain;display:block;transition:scale .5s}
.green-works a:hover img{scale:1.015}
.green-works figcaption{font-size:10px;padding:15px 0;line-height:1.7;display:flex;justify-content:space-between;gap:15px;color:#c5d8c9}
.green-selection .source-note{font-size:9px;line-height:1.8;color:#97b99e;max-width:650px;margin-top:18px}
.green-selection a:focus-visible{outline-color:#d6e5d2}
@media(max-width:600px){.warm-feature .warm-pair{gap:8px}.green-selection{padding:35px 5%}.green-selection .heading{display:block}.green-selection .heading h2{margin-top:15px}.green-works{grid-template-columns:1fr;gap:25px}.green-works a{aspect-ratio:auto}.green-works img{height:auto}.green-works a:hover img{scale:1}}
.project-lead h1{font:800 clamp(64px,9vw,130px)/.98 var(--headline);letter-spacing:-.025em}
.project-end>a:nth-child(2){font:800 clamp(46px,7vw,110px)/1 var(--headline);letter-spacing:-.025em}
@media(max-width:600px){.project-lead h1{font-size:17vw}.project-end>a:nth-child(2){font-size:11vw}}
.warm-feature .warm-pair{margin:0 0 12px}.warm-feature .warm-pair img{aspect-ratio:4/5;height:100%;object-fit:cover}.warm-feature .warm-pair>a:last-child img{object-position:50% 60%}
/* Project headers have two links; keep contact visible when the second-item rule collapses navigation. */
@media(max-width:900px){header nav>a.talk{display:inline-block}}
/* Collection images keep their intrinsic ratio; HTML height attributes must not stretch them. */
.collections .collection{grid-template-columns:minmax(0,.85fr) minmax(0,1fr);gap:clamp(28px,6vw,85px);max-width:1160px;margin:0 auto;padding:42px 0;align-items:center}
.collections .collection:nth-child(odd){grid-template-columns:minmax(0,1fr) minmax(0,.85fr)}
.collections .collection>a{display:block;width:100%;max-width:540px;justify-self:end}
.collections .collection:nth-child(odd)>a{justify-self:start}
.collections .collection img{display:block;width:100%;height:auto;aspect-ratio:auto;object-fit:contain}
.collections .collection>div{max-width:430px}
@media(max-width:600px){.collections .collection,.collections .collection:nth-child(odd){display:flex;flex-direction:column;gap:22px;padding:30px 0;align-items:stretch}.collections .collection>a,.collections .collection:nth-child(odd)>a{order:0;max-width:100%;margin-top:0}.collections .collection>div{max-width:none}}

/* Slightly softer neutral charcoal, retaining the original palette. */
:root{--ink:#252525}
.collections{color:#292929}

/* Long contact headlines need open counters and distinct neighbouring letters. */
.world-outro h2,.section-contact>a:not(.back-home),.character-end>a:first-of-type{letter-spacing:-.015em;line-height:1.04}

/* Neutral matte charcoal: equal RGB channels remove the olive cast. */
body[data-home]{background-color:#202020;color:#eeeeee}
body[data-home] .copy h1 span{display:inline-block;min-height:1.12em;vertical-align:top;line-height:1.08;letter-spacing:-.025em;font-family:var(--headline);font-weight:800}
body[data-form="3d"] .copy h1 span{font-family:"Arial Black","Avenir Next",Arial,sans-serif;font-weight:900;letter-spacing:-.035em}
body[data-form="ia"] .copy h1 span{font-family:Georgia,"Times New Roman",serif;font-style:italic;font-weight:700;letter-spacing:-.04em}
body[data-form="universos"] .copy h1 span{font-family:DVKMono,monospace;font-weight:700;letter-spacing:-.035em;font-size:1em}
@media(prefers-reduced-motion:reduce){body[data-home] .copy h1 span{transition:none}}

/* Section slogans and the peace signature share the section's accent. */
.heading .slogan-lockup{display:flex;align-items:center;gap:clamp(16px,2.4vw,34px);color:var(--accent);min-width:0;max-width:850px}
.heading .slogan-lockup h2{color:inherit;min-width:0;max-width:none;margin:0;line-height:1.04}
.peace-kanji{display:inline-block;flex:none;writing-mode:horizontal-tb;font-family:"Hiragino Sans","Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;font-size:clamp(23px,2.8vw,40px);font-weight:900;line-height:1.1;letter-spacing:.08em}
@media(max-width:600px){.exhibition .heading{align-items:start;flex-direction:column;gap:20px}.heading .slogan-lockup{width:100%;justify-content:space-between;gap:16px}.heading .slogan-lockup h2{font-size:8.7vw}.peace-kanji{font-size:26px}.green-selection .heading .slogan-lockup{margin-top:15px}.green-selection .heading .slogan-lockup h2{margin-top:0}}

/* Align the small label with the centre of the slogan and peace signature. */
.exhibition .heading,.green-selection .heading{align-items:center}
@media(max-width:600px){.exhibition .heading{align-items:stretch}}
/* An editorial index of work, with artwork and restrained section accents. */
.work-index{padding:70px 4.7% 40px;max-width:1920px;margin:auto}
.work-index-label{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:24px;color:#aaa}
.work-index-label h2,.work-index-label>span{font:10px/1.6 DVKMono,monospace;letter-spacing:1px;margin:0}
.index-entry{display:grid;grid-template-columns:55px minmax(0,1fr) 118px 48px;align-items:center;gap:32px;padding:26px 0;border-top:1px solid #ffffff28;position:relative}
.index-entry:last-child{border-bottom:1px solid #ffffff28}
.entry-number{font:12px DVKMono,monospace;color:var(--entry-colour);align-self:start;padding-top:12px}
.entry-copy{min-width:0}
.entry-copy h3{font:800 clamp(30px,4.6vw,70px)/1.08 var(--headline);letter-spacing:-.025em;margin:0 0 12px;color:#eee;transition:color .3s,translate .3s}
.entry-copy p{font:10px/1.7 DVKMono,monospace;color:#aaa;margin:0}
.entry-image{margin:0;justify-self:center;width:105px;height:132px;overflow:hidden;transition:transform .35s}
.entry-image img{display:block;width:100%;height:100%;object-fit:contain}
.entry-arrow{font:36px/1 Arial,sans-serif;color:var(--entry-colour);justify-self:end;transition:translate .3s}
.index-entry:hover h3,.index-entry:focus-visible h3{color:var(--entry-colour);translate:8px 0}
.index-entry:hover .entry-image,.index-entry:focus-visible .entry-image{transform:rotate(-3deg)}
.index-entry:hover .entry-arrow,.index-entry:focus-visible .entry-arrow{translate:4px -4px}
@media(max-width:600px){.work-index{padding:40px 5% 20px}.work-index-label{padding-bottom:20px}.work-index-label h2,.work-index-label>span{font-size:8px;letter-spacing:.4px}.index-entry{grid-template-columns:23px minmax(0,1fr) 66px 18px;gap:12px;padding:24px 0;min-height:131px}.entry-number{font-size:9px;padding-top:5px}.entry-copy h3{font-size:clamp(23px,6.5vw,36px);margin-bottom:9px;line-height:1.07}.entry-copy p{font-size:8px;line-height:1.7}.entry-image{width:66px;height:88px}.entry-arrow{font-size:23px}.index-entry:hover h3,.index-entry:focus-visible h3{translate:0 0}}
@media(prefers-reduced-motion:reduce){.index-entry *{transition:none!important}.index-entry:hover .entry-image{transform:none}}

/* Peace mark: drawn with consistent heavy strokes at every size. */
.peace-symbol{display:block;flex:none;width:clamp(32px,3.6vw,51px);height:auto;fill:none;stroke:currentColor;stroke-width:4;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:600px){.peace-symbol{width:34px}}
/* The professional introduction is reading copy, with natural word spacing. */
body[data-home] .profile{align-items:start}
body[data-home] .profile h2{font-family:'Avenir Next',Avenir,'Helvetica Neue',Arial,sans-serif;font-weight:500;font-size:clamp(22px,2.5vw,37px);line-height:1.45;letter-spacing:0;word-spacing:normal;max-width:850px;margin:0 0 34px;text-wrap:pretty}
body[data-home] .profile>span{padding-top:9px;color:#b8b8b8}
@media(max-width:600px){body[data-home] .profile h2{font-size:23px;line-height:1.5;margin-top:22px}body[data-home] .profile>span{padding-top:0}}
/* Header follows FORMAS through the same --accent value. */
body[data-home]>header{background-color:var(--accent);color:#252525;border-bottom-color:#25252540;transition:none}
body[data-home]>header .brand>b{border-right-color:#25252545}
body[data-home]>header .brand>span{font-family:var(--headline);font-weight:800;font-size:18px;letter-spacing:.035em;line-height:1.1}
body[data-home]>header .brand small{font-family:DVKMono,monospace;font-weight:400;line-height:1.4;letter-spacing:1.5px}
body[data-home]>header .talk{border-bottom-color:currentColor}
body[data-home]>header a:focus-visible{outline-color:#252525}
@media(max-width:900px){body[data-home]>header .brand>span{font-size:15px}body[data-home]>header .brand small{letter-spacing:.7px}}
@media(max-width:580px){body[data-home]>header .brand>span{font-size:12px;letter-spacing:.02em}body[data-home]>header .brand small{font-size:4.5px;letter-spacing:.4px}}

body[data-home] .copy h1 span{transition:none}

/* home-footer.css */
.dvk-closing{display:block;position:relative;padding:36px 4.7% 24px;background:#202020;color:#ededed;border-top:0;letter-spacing:0;font-size:11px;overflow:hidden}
.dvk-closing:before{content:'';position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,#f17d43 0 25%,#67a480 25% 50%,#a18bd0 50% 75%,#6999bb 75%)}
.closing-top{display:flex;justify-content:space-between;align-items:center;gap:25px;color:#b5b5b5;font-size:9px;letter-spacing:.07em}.closing-up{padding:10px 0;color:#ededed;white-space:nowrap}
.closing-invitation{display:grid;grid-template-columns:1.5fr 1fr;gap:8%;align-items:end;padding:55px 0 60px}
.dvk-closing h2{font:800 clamp(64px,8.7vw,138px)/1.02 var(--headline);letter-spacing:-.025em;margin:0}.dvk-closing h2 span{color:var(--accent)}
.closing-contact>span{font-size:9px;letter-spacing:.12em;color:var(--accent)}.closing-contact p{font:400 clamp(15px,1.4vw,21px)/1.65 'Avenir Next',Avenir,Arial,sans-serif;margin:18px 0 24px;color:#c4c4c4}
.closing-mail{display:flex;align-items:center;justify-content:space-between;gap:18px;border-bottom:1px solid #ededed70;padding:8px 0 14px;font-size:clamp(12px,1.3vw,19px);white-space:nowrap}.closing-mail span{font:36px/1 Arial;color:var(--accent);transition:transform .2s}.closing-mail:hover span{transform:translate(3px,-3px)}
.closing-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid #ededed30;border-bottom:1px solid #ededed30}.closing-nav a{display:flex;align-items:center;gap:18px;padding:22px 18px 22px 0;font-size:12px;min-width:0}.closing-nav a+a{border-left:1px solid #ededed20;padding-left:24px}.closing-nav a>span{font-size:9px;color:var(--area)}.closing-nav b{font:18px Arial;margin-left:auto;color:var(--area);transition:transform .2s}.closing-nav a:hover{color:var(--area)}.closing-nav a:hover b{transform:translate(2px,-2px)}
.closing-signature{display:flex;align-items:center;gap:3%;padding:44px 0 28px}.closing-name{font:800 clamp(36px,9.15vw,175px)/1 var(--headline);letter-spacing:-.035em;white-space:nowrap}.closing-signature svg{flex:0 0 8%;width:8%;height:auto;fill:none;stroke:var(--accent);stroke-width:5;stroke-linecap:round;stroke-linejoin:round}
.closing-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-top:19px;border-top:1px solid #ededed20;color:#aaa;font-size:8px;letter-spacing:.05em}.closing-bottom a{color:#ededed;padding:8px 0}
@media(max-width:700px){.closing-invitation{grid-template-columns:1fr;gap:32px;padding:40px 0}.dvk-closing h2{font-size:clamp(58px,13vw,90px)}.closing-contact{max-width:420px}.closing-mail{font-size:14px}.closing-nav{grid-template-columns:1fr 1fr}.closing-nav a{padding:19px 12px 19px 0}.closing-nav a+a{padding-left:16px}.closing-nav a:nth-child(3){border-left:0;padding-left:0}.closing-nav a:nth-child(-n+2){border-bottom:1px solid #ededed20}.closing-signature{padding:34px 0 24px;gap:2%}.closing-name{font-size:9vw}.closing-bottom{flex-wrap:wrap;gap:10px 20px}.closing-bottom>span:nth-child(2){order:3;flex-basis:100%;font-size:7px}.closing-top{font-size:7px;gap:15px}.closing-top>span{max-width:170px;line-height:1.7}}
@media(prefers-reduced-motion:reduce){.closing-mail span,.closing-nav b{transition:none}}

.dvk-closing h2 .closing-question{font-size:.72em;color:#ededed;white-space:nowrap;letter-spacing:-.015em}.closing-signature{justify-content:space-between}
/* Signature band mirrors the header, with one shared live accent. */
.dvk-closing .closing-signature{margin:32px -5.188% 0;padding:32px 5.188%;background:var(--accent);color:#252525;transition:none}
.dvk-closing .closing-signature svg{stroke:currentColor}
.dvk-closing .closing-bottom{border-top:0;margin-top:4px}
@media(max-width:700px){.dvk-closing .closing-signature{margin-top:26px;padding-top:24px;padding-bottom:24px}}
/* Each destination fills its entire cell in its own section colour. */
.dvk-closing .closing-nav a{padding-left:20px;transition:background-color .22s,color .22s}
.dvk-closing .closing-nav a:is(:hover,:focus-visible){background:var(--area);color:#202020;outline:2px solid var(--area);outline-offset:-2px}
.dvk-closing .closing-nav a:is(:hover,:focus-visible)>span,.dvk-closing .closing-nav a:is(:hover,:focus-visible)>b{color:inherit}
@media(max-width:700px){.dvk-closing .closing-nav a,.dvk-closing .closing-nav a:nth-child(3){padding-left:16px}}
@media(prefers-reduced-motion:reduce){.dvk-closing .closing-nav a{transition:none}}

/* socials.css */
.social-spread{--social-text:#ededed;--social-muted:#bdbdbd;--social-rule:#ffffff35;background:#202020;color:var(--social-text);padding:56px 4.7% 65px;border-top:1px solid var(--social-rule);overflow:hidden}
.social-spread-heading{display:flex;align-items:start;justify-content:space-between;gap:30px;border-bottom:1px solid var(--social-rule);padding-bottom:26px}.social-spread-heading>span{font:10px/1.7 var(--mono,monospace);letter-spacing:.08em;padding-top:5px}.social-spread-heading h2{font:500 clamp(24px,2.9vw,44px)/1.2 'Avenir Next',Avenir,sans-serif;letter-spacing:-.015em;margin:0;text-align:right}
.social-feature{--social-colour:#f17d43;display:grid;grid-template-columns:1fr 1fr;align-items:center;position:relative;padding:25px 7% 35px 7%;min-width:0;color:var(--social-text)}.social-feature-copy{position:relative;z-index:1;display:flex;flex-direction:column;align-items:start;padding:30px 0}.social-kicker{font:9px/1.6 var(--mono,monospace);letter-spacing:.05em;color:var(--social-colour);display:block}.social-feature h3{font:800 clamp(76px,10.8vw,172px)/.97 var(--headline);letter-spacing:-.025em;color:var(--social-colour);margin:32px 0 23px}.social-feature h3>span{display:block}.social-handle{display:block;font:11px/1.6 var(--mono,monospace);color:var(--social-muted)}.social-feature img{display:block;width:100%;height:auto;max-height:610px;object-fit:contain;transform:rotate(7deg);transition:transform .6s}.social-feature:hover img{transform:rotate(3deg) translateY(-5px)}.social-open{display:flex;align-items:center;gap:40px;border-bottom:1px solid var(--social-colour);font:11px/1.6 var(--mono,monospace);padding:13px 0;margin-top:28px}.social-open b{color:var(--social-colour);font:400 30px/1 Arial}
.social-companions{display:grid;grid-template-columns:1fr 1fr;gap:6%;border-top:1px solid var(--social-rule);padding-top:30px}.social-companions>a{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:7%;color:var(--social-text);min-width:0}.social-cinema{--social-colour:#a18bd0}.social-dialogue{--social-colour:#6999bb}.social-companions img{display:block;width:100%;height:auto;max-height:275px;object-fit:contain;transition:transform .4s}.social-companions>a:hover img{transform:translateY(-5px)}.social-companions h3{font:800 clamp(28px,3.4vw,52px)/1.12 var(--headline);letter-spacing:-.02em;color:var(--social-colour);margin:20px 0 12px}.social-secondary-open{display:flex;align-items:center;justify-content:space-between;gap:12px;font:10px/1.6 var(--mono,monospace);border-bottom:1px solid var(--social-rule);padding-bottom:10px;margin-top:24px}.social-secondary-open b{font:400 25px/1 Arial;color:var(--social-colour)}.social-spread a:focus-visible,.footer-socials a:focus-visible{outline:2px solid var(--social-colour,#6999bb);outline-offset:6px}
.footer-socials{display:flex;align-items:baseline;gap:32px;flex-wrap:wrap;padding:25px 0 8px;font:12px/1.5 var(--mono,monospace)}.footer-socials a{font:800 22px/1.3 var(--headline);white-space:nowrap}.footer-socials a:hover{color:var(--accent)}.world-footer .footer-socials{flex-basis:100%;padding:0;gap:24px}.world-footer:has(.footer-socials){flex-wrap:wrap}
html[data-theme=light] .social-spread{--social-text:#252525;--social-muted:#555;--social-rule:#25252535;background:#f4f3ef}html[data-theme=light] .social-cinema{--social-colour:#7256a4}html[data-theme=light] .social-dialogue{--social-colour:#3b6888}html[data-theme=light] .social-feature .social-kicker{color:#9d451e}
@media(max-width:700px){.social-spread{padding:34px 4.7% 40px}.social-spread-heading{gap:20px;padding-bottom:22px}.social-spread-heading>span{font-size:8px;max-width:135px}.social-spread-heading h2{font-size:24px}.social-feature{grid-template-columns:1fr 1.15fr;padding:24px 0 28px;gap:0;align-items:center}.social-feature-copy{padding:15px 0}.social-feature h3{font-size:clamp(48px,12vw,80px);margin:22px 0 15px;line-height:1.02}.social-feature .social-kicker{font-size:7px;letter-spacing:0;max-width:120px}.social-feature .social-handle{font-size:9px}.social-feature img{max-height:360px;transform:rotate(5deg)}.social-open{gap:15px;font-size:8px;margin-top:18px;padding:10px 0}.social-open b{font-size:23px}.social-companions{grid-template-columns:1fr;gap:25px;padding-top:24px}.social-companions>a{grid-template-columns:1fr 1fr;gap:10%;padding-bottom:22px;border-bottom:1px solid var(--social-rule)}.social-companions img{max-height:235px}.social-companions h3{font-size:36px;margin:18px 0 10px}.social-kicker{font-size:8px;letter-spacing:.02em}.social-secondary-open{font-size:9px;gap:8px;margin-top:20px}.social-handle{font-size:10px}.footer-socials{gap:20px}.footer-socials a{font-size:20px}}
@media(max-width:900px){body[data-home]>header nav .social-header-link{display:none}}@media(prefers-reduced-motion:reduce){.social-feature img,.social-companions img{transition:none}.social-feature:hover img{transform:rotate(7deg)}.social-companions>a:hover img{transform:none}}

/* chapter-motion.css */
/* A chapter opens through its type, its colour seam and the following artwork. */
.social-spread .chapter-threshold{position:relative;display:grid;grid-template-columns:.7fr 1.3fr;align-items:center;gap:8%;padding:38px 0 60px;border:0;margin-bottom:12px;overflow:hidden}
.chapter-side{display:grid;grid-template-columns:auto 1fr;align-items:center;column-gap:20px;row-gap:20px}.chapter-side>span:not(.chapter-number):not(.chapter-direction){font:10px/1.7 var(--mono,monospace);letter-spacing:.08em;max-width:145px;color:var(--social-muted)}.chapter-number{font:800 clamp(65px,8vw,120px)/1 var(--headline);letter-spacing:-.025em;color:transparent;-webkit-text-stroke:1px #f17d43}.chapter-direction{grid-column:2;font:400 48px/1 Arial;color:#f17d43;justify-self:start}
.social-spread .chapter-threshold h2{font:800 clamp(44px,6.6vw,105px)/1.08 var(--headline);letter-spacing:-.025em;text-align:left;margin:0;color:var(--social-text)}.chapter-line{display:block;overflow:hidden;padding-bottom:.08em;margin-bottom:-.08em}.chapter-line>span{display:block}.chapter-line+ .chapter-line{color:#f17d43}.chapter-seam{position:absolute;left:0;right:0;bottom:0;display:grid;grid-template-columns:1.4fr .8fr 1fr;gap:12px;height:3px}.chapter-seam i{display:block;background:#f17d43;transform-origin:left}.chapter-seam i:nth-child(2){background:#a18bd0}.chapter-seam i:nth-child(3){background:#6999bb}
[data-chapter-state=queued] .chapter-line>span{transform:translateY(112%)}[data-chapter-state=entered] .chapter-line>span{transform:translateY(0);transition:transform .85s cubic-bezier(.2,.7,.15,1)}[data-chapter-state=entered] .chapter-line:nth-child(2)>span{transition-delay:.13s}[data-chapter-state=queued] .chapter-seam i{transform:scaleX(0)}[data-chapter-state=entered] .chapter-seam i{transform:scaleX(1);transition:transform 1s cubic-bezier(.2,.7,.15,1) .15s}[data-chapter-state=entered] .chapter-seam i:nth-child(2){transition-delay:.28s}[data-chapter-state=entered] .chapter-seam i:nth-child(3){transition-delay:.4s}
[data-layer-state=queued]{opacity:0;transform:translate3d(0,30px,0);clip-path:inset(0 0 10% 0)}[data-layer-state=entered]{opacity:1;transform:translate3d(0,0,0);clip-path:inset(0);transition:opacity .75s ease,transform 1s cubic-bezier(.18,.7,.2,1),clip-path 1s cubic-bezier(.18,.7,.2,1);transition-delay:var(--layer-delay,0s)}
/* Each new chapter opens before its content, with one visual rhythm through home. */
body[data-home] .portal-intro,body[data-home] .profile-topline,body[data-home] .closing-top{position:relative}body[data-home] .portal-intro:after,body[data-home] .profile-topline:after,body[data-home] .closing-top:after{content:'';position:absolute;left:0;bottom:-1px;width:100%;height:2px;background:linear-gradient(90deg,#f17d43 0 25%,#67a480 25% 50%,#a18bd0 50% 75%,#6999bb 75%);transform-origin:left}body[data-home] [data-chapter-state=queued].portal-intro:after,body[data-home] [data-chapter-state=queued].profile-topline:after,body[data-home] [data-chapter-state=queued].closing-top:after{transform:scaleX(0)}body[data-home] [data-chapter-state=entered].portal-intro:after,body[data-home] [data-chapter-state=entered].profile-topline:after,body[data-home] [data-chapter-state=entered].closing-top:after{transform:scaleX(1);transition:transform 1.1s cubic-bezier(.18,.7,.2,1)}
@media(max-width:700px){.social-spread .chapter-threshold{grid-template-columns:1fr;gap:24px;padding:14px 0 36px;margin-bottom:12px}.chapter-side{display:flex;align-items:center;gap:18px}.chapter-number{font-size:55px}.chapter-side>span:not(.chapter-number):not(.chapter-direction){font-size:8px;max-width:130px}.chapter-direction{font-size:30px;margin-left:auto}.social-spread .chapter-threshold h2{font-size:clamp(37px,9.8vw,65px)}.chapter-seam{height:2px;gap:7px}}
@media(prefers-reduced-motion:reduce){[data-layer-state],[data-chapter-state] .chapter-line>span,[data-chapter-state] .chapter-seam i{opacity:1;transform:none;clip-path:none;transition:none!important}body[data-home] [data-chapter-state]:after{transform:none!important;transition:none!important}}
.social-feature>img[data-layer-state=queued]{transform:translate3d(0,35px,0) rotate(10deg) scale(.96)}.social-feature>img[data-layer-state=entered]{transform:rotate(7deg);transition:opacity .75s ease,transform 1.1s cubic-bezier(.18,.7,.2,1),clip-path 1s cubic-bezier(.18,.7,.2,1);transition-delay:.12s}.social-feature:hover>img[data-layer-state=entered]{transform:rotate(3deg) translateY(-5px)}
@media(max-width:700px){.social-feature>img[data-layer-state=entered]{transform:rotate(5deg)}}
@media(prefers-reduced-motion:reduce){.social-feature>img[data-layer-state]{transform:rotate(7deg);opacity:1;clip-path:none;transition:none!important}}

/* site-prefs.css */
html{--ui-bg:#202020;--ui-text:#ededed;--ui-muted:#b8b8b8;--ui-line:#ededed30;color-scheme:dark}html[data-theme=light]{--ui-bg:#f4f3ef;--ui-text:#252525;--ui-muted:#555;--ui-line:#25252530;color-scheme:light}
.site-tools{position:fixed;left:50%;bottom:14px;transform:translateX(-50%);z-index:900;display:flex;align-items:center;padding:5px;border:1px solid #ffffff35;border-radius:40px;background:#252525f5;color:#ededed;box-shadow:0 8px 32px #0003;font:11px/1.2 DVKMono,monospace;gap:2px;max-width:calc(100vw - 20px)}.site-tools a,.site-tools button{display:flex;align-items:center;justify-content:center;gap:7px;min-height:40px;padding:0 13px;border:0;border-radius:30px;background:none;color:inherit;font:inherit;white-space:nowrap;text-decoration:none;cursor:pointer}.site-tools a:hover,.site-tools button:hover{background:#ffffff18}.site-tools .site-home{background:var(--accent,#6999bb);color:#252525}.site-home svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.site-tools .welcome-reopen{font:24px Arial;color:var(--accent,#6999bb);padding:0 10px}.site-tools :focus-visible{outline:2px solid #ededed;outline-offset:1px}
body{padding-bottom:78px}.welcome-open{overflow:hidden}
html[data-theme=light] body,html[data-theme=light] body[data-home]{background-color:var(--ui-bg);background-image:linear-gradient(90deg,transparent calc(100% - 1px),#25252506 0);color:var(--ui-text)}
html[data-theme=light] .eyeline,html[data-theme=light] .profile>span,html[data-theme=light] body[data-home] .profile>span{color:#555}html[data-theme=light] .underlink,html[data-theme=light] .profile a{border-color:#25252570}html[data-theme=light] .forms{border-color:#25252530}html[data-theme=light] .forms>button{border-right-color:#25252525}html[data-theme=light] .forms span{color:#555}html[data-theme=light] .profile{border-color:#25252525}html[data-theme=light] .world-portals{color:#252525}html[data-theme=light] .portal-intro-note{color:#555}html[data-theme=light] .portal-intro{border-color:#25252530}
html[data-theme=light] .dvk-closing{background:#f4f3ef;color:#252525}html[data-theme=light] .closing-top,html[data-theme=light] .closing-contact p,html[data-theme=light] .closing-bottom{color:#555}html[data-theme=light] .closing-up,html[data-theme=light] .closing-bottom a,html[data-theme=light] .dvk-closing h2 .closing-question{color:#252525}html[data-theme=light] .closing-mail{border-color:#25252570}html[data-theme=light] .closing-nav,html[data-theme=light] .closing-nav a+a,html[data-theme=light] .closing-nav a:nth-child(-n+2){border-color:#25252530}
html[data-theme=light] .green-selection{background:#e0ece4;color:#252525}html[data-theme=light] .green-works figcaption,html[data-theme=light] .source-note{color:#355440}html[data-theme=light] .ai-exhibition{background:#ece7f3;color:#252525}html[data-theme=light] .ai-pieces p{color:#56466a}html[data-theme=light] .studio-world{background:#dcebe1;color:#252525}html[data-theme=light] .studio-world .transform:before{background:#dcebe1}
html[data-theme=dark] .exhibition:not(.ai-exhibition),html[data-theme=dark] .detail-gallery{background:#202020;color:#ededed}html[data-theme=dark] .collections{background:#202020;color:#ededed}html[data-theme=dark] .collection{border-color:#ededed30}html[data-theme=dark] .world-footer{color:#ededed}html[data-theme=light] .world-footer{background:#f4f3ef;color:#252525}
.welcome-gate{width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;border:0;padding:30px 5%;background:var(--ui-bg);color:var(--ui-text);overflow:auto}.welcome-gate::backdrop{background:var(--ui-bg)}.welcome-gate[open]{display:flex;flex-direction:column;justify-content:space-between}.welcome-meta,.welcome-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;font:10px/1.5 DVKMono,monospace}.welcome-meta b{font:800 16px var(--headline)}.welcome-gate button{cursor:pointer;color:inherit;font:inherit}.welcome-skip{border:0;border-bottom:1px solid var(--ui-line);background:none;padding:12px 0}.welcome-content{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:3%;flex:1;min-height:0}.welcome-copy{z-index:1}.welcome-kicker{font:9px DVKMono,monospace;letter-spacing:.13em;color:var(--ui-muted)}.welcome-gate h2{font:800 clamp(38px,5vw,86px)/1.03 var(--headline);letter-spacing:-.025em;margin:26px 0}.welcome-gate h2 em{font-style:normal;color:var(--welcome-accent,#6999bb)}.welcome-description{font:400 17px/1.6 'Avenir Next',Arial,sans-serif;max-width:400px;color:var(--ui-muted)}.welcome-options{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin:25px 0}.welcome-languages{display:flex;border:1px solid var(--ui-line)}.welcome-languages button{background:none;border:0;padding:12px 16px;font:12px DVKMono,monospace}.welcome-languages button[aria-pressed=true]{background:var(--welcome-accent,#6999bb);color:#252525}.welcome-theme{background:none;border:0;padding:12px 0;font:11px DVKMono,monospace!important}.welcome-enter{border:0;background:var(--welcome-accent,#6999bb);color:#252525!important;padding:18px 24px;font:800 16px var(--headline)!important;min-width:240px;text-align:left}.welcome-art{position:relative;isolation:isolate;min-width:0;align-self:stretch;display:flex;align-items:center}.welcome-art img{width:100%;max-height:72dvh;object-fit:contain}.welcome-bottom{border-top:1px solid var(--ui-line);padding-top:16px;color:var(--ui-muted);font-size:8px}.welcome-gate button:focus-visible{outline:2px solid var(--welcome-accent,#6999bb);outline-offset:4px}
@media(max-width:700px){.welcome-gate{padding:20px 6%}.welcome-meta{font-size:8px}.welcome-meta b{font-size:12px}.welcome-content{display:block;position:relative;padding:30px 0 20px}.welcome-copy{position:relative;z-index:2;max-width:450px}.welcome-gate h2{font-size:clamp(36px,9vw,62px);margin:20px 0}.welcome-description{font-size:15px;max-width:290px}.welcome-art{position:relative;width:65%;margin:-25px 0 -10px auto;max-height:240px;pointer-events:none}.welcome-art img{max-height:240px}.welcome-options{gap:12px;margin:20px 0}.welcome-enter{min-width:220px}.welcome-bottom{font-size:7px}.site-tools a,.site-tools button{padding:0 10px;font-size:10px}.site-tools{bottom:10px}.welcome-kicker{font-size:8px}}
@media(max-height:650px) and (min-width:701px){.welcome-gate h2{font-size:5vw}.welcome-art img{max-height:65dvh}}
@media(prefers-reduced-motion:reduce){.welcome-gate *{animation:none!important;transition:none!important}}
html[lang=en] .dvk-closing h2 .closing-question{font-size:.55em}
html[lang=en] .universe-world h1{font-size:clamp(42px,6vw,96px)}
html[lang=en] .sculpture-type{font-size:24cqw}
html[data-theme=dark] body.oppos-page{background:#202020;color:#ededed}html[data-theme=dark] .oppos-piece figcaption,html[data-theme=dark] .project-documents summary{border-color:#ededed30}html[data-theme=dark] .project-documents a{border-color:#ededed70}
html[data-theme=light] body:not([data-world]):not([data-home])>header:not(.world-header){background:#f4f3ef;color:#252525}html[data-theme=light] body:not([data-world])>header .talk{border-color:currentColor}html[data-theme=light] body[data-home]>header{background:var(--accent)}
@media(max-width:600px){html[lang=en] .universe-world h1{font-size:15vw}html[lang=en] .world-hero .kicker{letter-spacing:.5px}html[lang=en] .world-hero h1{overflow-wrap:normal}}
html[data-theme=light] .character-intro p,html[data-theme=light] .project-head p,html[data-theme=light] .project-head .index,html[data-theme=light] .project-head .meta,html[data-theme=light] .review-tools summary,html[data-theme=light] .review-tools p,html[data-theme=light] .review-tools input{color:#46584b}
html[data-theme=light] .review-tools,html[data-theme=light] .review-tools label,html[data-theme=light] .project-head{border-color:#25252530}
html[data-theme=dark] .process{background:#202020;color:#ededed}html[data-theme=dark] .project-end{color:#252525}
.profile-networks{display:flex;gap:24px;margin-top:24px;flex-wrap:wrap}.profile-networks a{font-size:10px}
/* New biography composition, independent of the retired profile layout. */
.profile-manifesto{position:relative;isolation:isolate;overflow:hidden;padding:50px 6% 100px;color:#ededed;background:#202020;border-top:1px solid #ffffff24}.profile-image,.profile-shade{position:absolute;inset:0;z-index:-1;pointer-events:none}.profile-image{background:url('dvk-black.webp') 20% 38%/cover no-repeat;filter:grayscale(1)}.profile-shade{background:rgba(0,0,0,.8)}.profile-topline{display:flex;justify-content:space-between;gap:20px;font:10px/1.6 DVKMono,monospace;letter-spacing:.08em;color:#bdbdbd;border-bottom:1px solid #ffffff30;padding-bottom:20px}.profile-manifesto-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:10%;padding-top:90px}.profile-heading>span{font:10px DVKMono,monospace;letter-spacing:.1em;color:var(--accent)}.profile-heading h2{font:600 clamp(32px,3.8vw,62px)/1.14 'Avenir Next',Arial,sans-serif;letter-spacing:-.02em;margin:26px 0 45px}.profile-manifesto a{color:#ededed;text-decoration:none;border-bottom:1px solid #ffffff66;padding-bottom:10px;display:inline-block}.profile-cv{font:11px/1.6 DVKMono,monospace}.profile-story{max-width:600px}.profile-story p{font:400 17px/1.65 'Avenir Next',Arial,sans-serif;color:#ccc;margin:0 0 24px}.profile-story .profile-intro{font-size:23px;color:#ededed;line-height:1.4}.profile-story dl{margin:35px 0}.profile-story dl>div{display:grid;grid-template-columns:90px 1fr;gap:16px;border-top:1px solid #ffffff26;padding:18px 0}.profile-story dt{font:9px/1.8 DVKMono,monospace;color:#a6a6a6}.profile-story dd{margin:0;font:400 14px/1.6 'Avenir Next',Arial,sans-serif}.profile-email{font:13px DVKMono,monospace}.profile-story .profile-archive-note{font-size:11px;line-height:1.6;max-width:430px;margin-top:22px;color:#aaa}.profile-manifesto .profile-networks{margin-top:28px;gap:24px}.profile-manifesto .profile-networks a{font:10px DVKMono,monospace}
@media(max-width:700px){.profile-manifesto{padding:30px 6% 60px}.profile-topline{display:block;font-size:8px}.profile-topline span{display:block;margin-bottom:7px}.profile-manifesto-grid{display:block;padding-top:45px}.profile-heading h2{font-size:36px;margin-bottom:28px}.profile-story{margin-top:45px}.profile-story .profile-intro{font-size:22px}.profile-story p{font-size:16px}.profile-story dl>div{grid-template-columns:75px 1fr;gap:12px}.profile-image{background-position:40% center}.profile-story dd{font-size:13px}}
.dvk-pointer{position:fixed;left:0;top:0;width:38px;height:38px;border:1px solid var(--accent,#6999bb);border-radius:50%;pointer-events:none;z-index:9999;opacity:0;will-change:transform;color:var(--accent,#6999bb);transition:width .18s,height .18s,opacity .2s}.dvk-pointer:after{content:'';position:absolute;left:50%;top:50%;width:4px;height:4px;border-radius:50%;background:currentColor;transform:translate(-50%,-50%)}.dvk-pointer.is-visible{opacity:.85}.dvk-pointer.is-link{width:54px;height:54px}.dvk-pointer.is-down{width:28px;height:28px}.welcome-open .dvk-pointer,body:has(.art-viewer[open]) .dvk-pointer{display:none}@media(pointer:coarse),(prefers-reduced-motion:reduce){.dvk-pointer{display:none!important}}
.profile-heading .profile-cv{display:table;margin-top:18px}

/* Welcome scenes share one colour clock; no lettering behind the sculptures. */
.welcome-gate{--welcome-accent:#6999BB}.welcome-gate h2 em{transition:color .8s ease}.welcome-gate .welcome-enter,.welcome-gate .welcome-languages button[aria-pressed=true]{transition:background-color .8s ease}.welcome-actions{display:flex;align-items:center;gap:24px}.welcome-motion{display:grid;place-items:center;width:36px;height:36px;border:1px solid var(--ui-line);background:none;font:13px Arial!important;border-radius:50%;flex-shrink:0}.welcome-gate .welcome-art{height:min(72dvh,760px);align-self:center;position:relative}.welcome-gate .welcome-art img.welcome-sculpture{position:absolute;inset:0;width:100%;height:100%;max-height:none;object-fit:contain;opacity:0;transform:translateY(12px) scale(.975);transition:opacity .85s ease,transform 1.2s cubic-bezier(.2,.7,.2,1);pointer-events:none}.welcome-gate .welcome-art img.welcome-sculpture.is-current{opacity:1;transform:translateY(0) scale(1);animation:welcome-breathe 6.4s ease-in-out infinite}.welcome-gate.motion-paused .welcome-sculpture{animation-play-state:paused!important}@keyframes welcome-breathe{0%,100%{translate:0 0}50%{translate:0 -8px}}@media(max-width:700px){.welcome-gate .welcome-art{height:240px;max-height:none}.welcome-actions{gap:12px}.welcome-motion{width:32px;height:32px}.welcome-meta{gap:12px}}@media(prefers-reduced-motion:reduce){.welcome-gate .welcome-art img.welcome-sculpture{animation:none!important;transition:none!important;transform:none!important}}
.profile-career{border-top:1px solid #ffffff30;border-bottom:1px solid #ffffff30;margin:0 0 28px;padding:16px 0}.profile-career summary{font:11px/1.7 DVKMono,monospace;cursor:pointer}.profile-career summary:focus-visible{outline:2px solid var(--accent);outline-offset:5px}.profile-career dl{margin:20px 0 0}.profile-career dd{overflow-wrap:anywhere}.ai-production-tools span{font:9px DVKMono,monospace;color:var(--accent)}
/* Home signature: one shared measure for the name and professional disciplines. */
body[data-home]>header{height:104px;gap:28px}body[data-home]>header .brand{gap:24px;flex-shrink:0}body[data-home]>header .brand>b{font-size:50px;padding-right:24px}body[data-home]>header .brand>.brand-lockup{display:inline-grid;grid-template-columns:min-content;gap:9px;font-size:inherit;letter-spacing:0;line-height:1}.brand-lockup>.brand-name{display:block;white-space:nowrap;font-family:var(--headline);font-size:27px;font-weight:800;letter-spacing:.012em;line-height:1.05}body[data-home]>header .brand .brand-disciplines{display:flex;justify-content:space-between;align-items:center;width:100%;min-width:0;margin:0;gap:5px;font:400 8.5px/1.35 DVKMono,monospace;letter-spacing:0;white-space:nowrap}.brand-disciplines>span,.brand-disciplines>i{font:inherit;letter-spacing:inherit}.brand-disciplines>i{font-style:normal;opacity:.65}
@media(max-width:1000px){body[data-home]>header{height:92px;gap:20px}body[data-home]>header .brand{gap:18px}body[data-home]>header .brand>b{font-size:44px;padding-right:18px}.brand-lockup>.brand-name{font-size:23px}body[data-home]>header .brand .brand-disciplines{font-size:7.3px;gap:4px}}
@media(max-width:580px){body[data-home]>header{height:82px;gap:12px}body[data-home]>header .brand{gap:12px}body[data-home]>header .brand>b{font-size:36px;padding-right:12px}.brand-lockup>.brand-name{font-size:16px;letter-spacing:0}body[data-home]>header .brand>.brand-lockup{gap:7px}body[data-home]>header .brand .brand-disciplines{font-size:5.3px;gap:3px}body[data-home]>header nav{flex-shrink:0}}
/* On narrow screens the sculpture shares the title stage, never the button row. */
@media(max-width:700px){.welcome-gate .welcome-content{display:grid;grid-template-columns:minmax(0,1fr);align-content:center;gap:0;padding:25px 0 30px}.welcome-gate .welcome-copy{display:contents}.welcome-gate .welcome-kicker{grid-column:1;grid-row:1;margin:0 0 15px}.welcome-gate h2{grid-column:1;grid-row:2;align-self:center;z-index:2;width:54%;max-width:none;font-size:clamp(26px,7.3vw,42px);line-height:1.08;margin:15px 0;overflow-wrap:normal}.welcome-gate .welcome-art{grid-column:1;grid-row:2;justify-self:end;align-self:center;z-index:1;width:46%;height:270px;margin:0;max-height:none}.welcome-gate .welcome-description{grid-column:1;grid-row:3;max-width:100%;margin:20px 0 0;font-size:15px}.welcome-gate .welcome-options{grid-column:1;grid-row:4;margin:24px 0}.welcome-gate .welcome-enter{grid-column:1;grid-row:5;justify-self:start;min-width:220px}.welcome-gate .welcome-art img.welcome-sculpture{object-position:center}.welcome-gate .welcome-content>div{min-width:0}}

/* CV: editorial reading space, documents first, full detail on demand. */
.profile-editorial{background:#202020;padding:50px 4.7% 65px;overflow:hidden}.profile-editorial .profile-manifesto-grid{grid-template-columns:1fr 1.1fr;gap:9%;padding-top:55px}.profile-editorial .profile-heading{border-left:3px solid #6999bb;padding-left:28px}.profile-editorial .profile-heading>span{color:#6999bb}.profile-editorial .profile-heading h2{font:800 clamp(50px,6.2vw,94px)/1.04 var(--headline);letter-spacing:-.025em;margin:24px 0 18px}.profile-editorial .profile-editorial-line{font:10px/1.7 DVKMono,monospace;letter-spacing:.06em;color:#bdbdbd;margin:0 0 34px}.profile-editorial .profile-cv{display:flex;align-items:center;justify-content:space-between;padding:15px 0;margin:0;width:100%;font-size:11px;line-height:1.7}.profile-editorial .profile-personal-link{font:500 15px/1.5 'Avenir Next',Arial,sans-serif;padding:0 0 18px;color:#6999bb;margin-bottom:8px}.profile-editorial .profile-story{margin:0;padding-top:0}.profile-editorial .profile-story .profile-intro{font-size:24px;line-height:1.45;margin-bottom:22px}.profile-editorial .profile-story>p:not(.profile-intro){font-size:16px;line-height:1.65}.profile-editorial .profile-career{margin:30px 0 28px;padding:19px 0}.profile-editorial .profile-career summary{font-size:12px;line-height:1.6}.profile-editorial .profile-story .profile-archive-note{font-size:11px}.profile-editorial .profile-story .profile-networks{display:flex;flex-wrap:wrap;gap:22px}.profile-editorial .profile-topline{font-size:9px}.profile-editorial .profile-career dl>div{grid-template-columns:88px 1fr}.profile-editorial .profile-career dl:first-of-type{margin-bottom:0}
html[data-theme=light] .profile-editorial{background:#e8edf0;color:#252525}html[data-theme=light] .profile-editorial a,html[data-theme=light] .profile-editorial .profile-intro{color:#252525;border-color:#25252550}html[data-theme=light] .profile-editorial .profile-topline,html[data-theme=light] .profile-editorial .profile-editorial-line,html[data-theme=light] .profile-editorial .profile-story p,html[data-theme=light] .profile-editorial dt{color:#555}html[data-theme=light] .profile-editorial .profile-career,html[data-theme=light] .profile-editorial .profile-topline,html[data-theme=light] .profile-editorial .profile-career dl>div{border-color:#25252535}
@media(max-width:700px){.profile-editorial{padding:30px 4.7% 45px}.profile-editorial .profile-manifesto-grid{grid-template-columns:1fr;gap:38px;padding-top:32px;display:grid}.profile-editorial .profile-heading{padding-left:20px}.profile-editorial .profile-heading h2{font-size:54px;margin:20px 0 16px}.profile-editorial .profile-editorial-line{font-size:8px;letter-spacing:.04em;margin-bottom:25px}.profile-editorial .profile-story{margin:0}.profile-editorial .profile-story .profile-intro{font-size:21px}.profile-editorial .profile-story>p:not(.profile-intro){font-size:16px}.profile-editorial .profile-career dl>div{grid-template-columns:1fr;gap:7px}.profile-editorial .profile-career dt{font-size:10px}.profile-editorial .profile-career dd{font-size:14px}.profile-editorial .profile-cv{font-size:10px}}
.profile-editorial .profile-story>p.profile-archive-note{font-size:11px;line-height:1.6}
/* Professional biography: neutral editorial reading face, separate from display type. */
.profile-editorial .profile-story{font-family:'Helvetica Neue',Helvetica,Arial,sans-serif}
.profile-editorial .profile-story>p,.profile-editorial .profile-story>p:not(.profile-intro),.profile-editorial .profile-story .profile-career dd{font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;font-weight:400;letter-spacing:0;line-height:1.6}
.profile-editorial .profile-story .profile-intro{font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;font-size:23px;font-weight:500;line-height:1.4;letter-spacing:-.01em}
.profile-editorial .profile-story>p.profile-archive-note{font-size:11px;line-height:1.55}
@media(max-width:700px){.profile-editorial .profile-story .profile-intro{font-size:21px}.profile-editorial .profile-story>p:not(.profile-intro){font-size:16px}.profile-editorial .profile-story>p.profile-archive-note{font-size:11px}}
/* Domi selected reading proof 02: sans light, 16 October 2026. */
.profile-editorial .profile-story>p,.profile-editorial .profile-story>p:not(.profile-intro),.profile-editorial .profile-story .profile-career dd{font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;font-weight:300;font-size:17px;line-height:1.7;letter-spacing:0}
.profile-editorial .profile-story .profile-intro{font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;font-weight:300;font-size:20px;line-height:1.5;letter-spacing:0}
.profile-editorial .profile-story>p.profile-archive-note{font-size:11px;line-height:1.6}
@media(max-width:700px){.profile-editorial .profile-story .profile-intro{font-size:20px}.profile-editorial .profile-story>p:not(.profile-intro){font-size:17px}.profile-editorial .profile-story>p.profile-archive-note{font-size:11px}}

/* Welcome mobile: one aligned action block, 17 October 2026. */
@media(max-width:700px){
 .welcome-gate .welcome-options{display:flex;justify-content:space-between;align-items:center;gap:12px;width:100%;margin:18px 0 0;padding-top:16px;border-top:1px solid var(--ui-line)}
 .welcome-gate .welcome-enter{justify-self:stretch;width:100%;min-width:0;margin-top:12px;padding:17px 18px;text-align:center;font-size:16px!important;box-sizing:border-box}
 .welcome-gate .welcome-theme{white-space:nowrap}
}
@media(max-width:360px){.welcome-gate .welcome-languages button{padding:12px}.welcome-gate .welcome-options{gap:8px}.welcome-gate .welcome-theme{font-size:10px!important}}

/* Portal titles follow the active theme; keep readable text on ivory. */
.portal-intro h2,.portal-foot h3{color:var(--ui-text,#ededed)}
html[data-theme=light] .portal-intro h2,html[data-theme=light] .portal .portal-foot h3{color:#252525}
