/* Portal layout consolidated into the common system, 05.10.2026. */
:where(.art-portal) *{box-sizing:border-box}
body.art-portal{scroll-behavior:smooth;scroll-padding-top:100px}
body.art-portal{margin:0;background:var(--art-bg);color:#f4f0f4;font-family:var(--art-sans);-webkit-font-smoothing:antialiased}
:where(.art-portal) a{color:inherit;text-decoration:none}
:where(.art-portal) button,:where(.art-portal) input,:where(.art-portal) textarea{font:inherit}
:where(.art-portal) a:focus-visible,:where(.art-portal) button:focus-visible,:where(.art-portal) input:focus-visible,:where(.art-portal) textarea:focus-visible{outline:2px solid #b88fd3;outline-offset:5px}
:where(.art-portal) header{display:flex;justify-content:space-between;align-items:center;gap:28px;padding:25px 5vw;border-bottom:1px solid #ffffff24;position:relative;z-index:10;background:var(--art-bg)}
:where(.art-portal) header img{width:170px;display:block;filter:brightness(0) invert(1)}
:where(.art-portal) header nav{display:flex;gap:30px;align-items:center;font-size:12px}
:where(.art-portal) header a:hover,:where(.art-portal) .under:hover{color:#d2b3ee}
:where(.art-portal) .eyebrow{font:11px/1.5 var(--art-mono);letter-spacing:.14em;text-transform:uppercase;color:#c4afcf}
:where(.art-portal) .hero{padding:65px 5vw 0;position:relative;overflow:hidden}
:where(.art-portal) h1{font-size:clamp(65px,10vw,156px);font-weight:300;line-height:.93;letter-spacing:-.065em;margin:20px 0 36px}
:where(.art-portal) h2{font-size:clamp(36px,5vw,76px);font-weight:300;letter-spacing:-.05em;line-height:1.02;margin:20px 0 32px}
:where(.art-portal) p{font-size:18px;line-height:1.6}
:where(.art-portal) .hero-copy{max-width:590px;margin:0 0 38px;color:#cbc5ce}
:where(.art-portal) .hero-top{display:flex;justify-content:space-between;align-items:flex-end;gap:70px}
:where(.art-portal) .hero-top aside{max-width:310px;padding-bottom:40px}
:where(.art-portal) .hero-top aside p{font-size:16px;color:#b7afb9}
:where(.art-portal) .hero-art{margin:0;position:relative}
:where(.art-portal) .hero-art img{width:100%;height:auto;max-height:none;object-fit:contain;display:block}
:where(.art-portal) .hero-art figcaption{display:flex;justify-content:space-between;gap:30px;font:11px/1.6 var(--art-mono);padding:18px 0 24px;color:#afa4b5;border-bottom:1px solid #ffffff29}
:where(.art-portal) .artist{display:grid;grid-template-columns:1fr 1.4fr;gap:8vw;padding:65px 5vw 90px}
:where(.art-portal) .artist h2{margin-top:15px}
:where(.art-portal) .artist p{max-width:560px;color:#bcb4c0}
:where(.art-portal) .under{display:inline-flex;gap:36px;justify-content:space-between;border-bottom:1px solid currentColor;padding:12px 0;font-size:15px}
:where(.art-portal) .under span{font-size:25px}
:where(.art-portal) .origin{background:#fff;color:#211d24;padding:95px 5vw}
:where(.art-portal) .origin-grid{display:grid;grid-template-columns:.8fr 1.4fr;gap:7vw;align-items:center}
:where(.art-portal) .origin img{width:100%;height:auto;display:block}
:where(.art-portal) .origin p{max-width:430px;color:#655b6b}
:where(.art-portal) .origin .eyebrow{color:#806887}
:where(.art-portal) .origin figcaption{color:#716578;font:11px/1.6 var(--art-mono);margin-top:18px}
:where(.art-portal) .gateways{background:white;color:#211d24;padding:15px 5vw 90px}
:where(.art-portal) .gateways>.eyebrow{color:#806887}
:where(.art-portal) .gate-grid{display:grid;grid-template-columns:1fr 1fr;gap:7vw;border-top:1px solid #d8d0dc}
:where(.art-portal) .gate{position:relative;padding:45px 0 0}
:where(.art-portal) .gate img{width:100%;height:auto;display:block}
:where(.art-portal) .gate p{max-width:430px;color:#655b6b}
:where(.art-portal) .gate h2{font-size:clamp(40px,4.6vw,68px)}
:where(.art-portal) .closing{padding:75px 5vw 95px;border-bottom:1px solid #ffffff25}
:where(.art-portal) .closing h2{max-width:920px}
:where(.art-portal) .closing p{max-width:520px;color:#bcb4c0}
:where(.art-portal) footer{padding:32px 5vw;display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;font:11px/1.8 var(--art-mono);color:#aaa0af}
:where(.art-portal) .preview{background:#242029;padding:9px 5vw;font:11px/1.6 var(--art-mono);color:#cab6d6}
:where(.art-portal) .work-page{padding:65px 5vw}
:where(.art-portal) .work-head{display:flex;justify-content:space-between;gap:7vw;align-items:flex-end}
:where(.art-portal) .work-head p{max-width:390px;color:#bcb4c0}
:where(.art-portal) .work-block{padding:60px 0;border-top:1px solid #ffffff2a}
:where(.art-portal) .work-meta{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:22px}
:where(.art-portal) .work-meta h2{margin:0}
:where(.art-portal) .tabs{display:flex;gap:8px}
:where(.art-portal) .tabs button{color:inherit;border:1px solid #706477;background:none;padding:10px 18px;cursor:pointer}
:where(.art-portal) .tabs button[aria-pressed=true]{color:#211d24;background:#f4eff5;border-color:#f4eff5}
:where(.art-portal) .work-block figure{margin:0}
:where(.art-portal) .work-block img{width:100%;height:auto;max-height:800px;object-fit:contain;display:block}
:where(.art-portal) .work-block figcaption{margin:15px 0 22px;font:11px/1.6 var(--art-mono);color:#b6aaba}
:where(.art-portal) .work-block p{max-width:740px;color:#bcb4c0}
:where(.art-portal) .join{padding:60px 5vw 100px;max-width:1600px;margin:auto}
:where(.art-portal) .join-layout{display:grid;grid-template-columns:1fr 1fr;gap:8vw}
:where(.art-portal) .join h1{font-size:clamp(50px,6vw,92px);max-width:650px}
:where(.art-portal) .join .copy p{max-width:540px;color:#bdb4c3}
:where(.art-portal) .join .copy .lead{font-size:26px;color:#f4eef6}
:where(.art-portal) .join form{border-top:1px solid #897591;padding-top:25px}
:where(.art-portal) label{display:block;font-size:17px;margin:25px 0 9px}
:where(.art-portal) label small{display:block;color:#b2a1bb;font-size:12px;margin-top:8px}
:where(.art-portal) input,:where(.art-portal) textarea{width:100%;padding:15px 12px;background:#1b181e;color:#f7effa;border:1px solid #5a4e62;border-radius:0}
:where(.art-portal) input[type=file]{font-size:12px}
:where(.art-portal) textarea{resize:vertical;min-height:110px}
:where(.art-portal) .fields{display:grid;grid-template-columns:1fr 1fr;gap:20px}
:where(.art-portal) .privacy{display:flex;gap:12px;font-size:12px;line-height:1.6;color:#c3b5cd}
:where(.art-portal) .privacy input{width:17px;flex-shrink:0;align-self:flex-start;margin:5px 0}
:where(.art-portal) .send{margin-top:25px;background:#dbcae8;border:0;color:#25162c;font-size:18px;padding:16px 25px;opacity:.6;cursor:not-allowed}
:where(.art-portal) .form-note{font-size:12px!important;color:#b7a7c1!important}
:where(.art-portal) .status{font:12px/1.5 var(--art-mono);color:#d0bcdb}
:where(.art-portal) .back{display:inline-block;margin-bottom:30px;font-size:12px}
:where(.art-portal) [hidden]{display:none!important}
@media (max-width:760px){:where(.art-portal) header{padding:22px 6vw;align-items:flex-start}
:where(.art-portal) header img{width:125px}
:where(.art-portal) header nav{gap:15px;flex-wrap:wrap;justify-content:flex-end;font-size:10px;max-width:190px}
:where(.art-portal) .hero{padding:40px 6vw 0}
:where(.art-portal) .hero-top,:where(.art-portal) .work-head{display:block}
:where(.art-portal) .hero-top aside{padding-bottom:24px;max-width:100%}
:where(.art-portal) h1{font-size:clamp(44px,14.5vw,72px)}
:where(.art-portal) .hero-copy{font-size:17px}
:where(.art-portal) .hero-art img{max-height:none;object-fit:contain}
:where(.art-portal) .hero-art figcaption{font-size:10px}
:where(.art-portal) .artist,:where(.art-portal) .origin-grid,:where(.art-portal) .gate-grid,:where(.art-portal) .join-layout{grid-template-columns:1fr}
:where(.art-portal) .artist{padding:40px 6vw 55px;gap:10px}
:where(.art-portal) .origin{padding:60px 6vw}
:where(.art-portal) .origin figure{margin:15px 0}
:where(.art-portal) .gateways{padding:0 6vw 65px}
:where(.art-portal) .gate-grid{gap:25px}
:where(.art-portal) .gate{padding-top:20px}
:where(.art-portal) .closing{padding:55px 6vw}
:where(.art-portal) .work-page{padding:35px 6vw}
:where(.art-portal) .work-meta{display:block}
:where(.art-portal) .tabs{margin-top:22px}
:where(.art-portal) .join{padding:35px 6vw 70px}
:where(.art-portal) .join-layout{gap:35px}
:where(.art-portal) .fields{grid-template-columns:1fr;gap:0}
:where(.art-portal) footer{padding:25px 6vw}
:where(.art-portal) .preview{padding:9px 6vw}}
@media (prefers-reduced-motion:reduce){body.art-portal{scroll-behavior:auto}}
@font-face{font-family:Nohemi;src:url(Nohemi-Regular.woff2);font-weight:400;font-display:swap}@font-face{font-family:Nohemi;src:url(Nohemi-Light.woff2);font-weight:300;font-display:swap}@font-face{font-family:"DejaVu Sans Mono";src:url(DejaVuSansMono.woff2);font-weight:400;font-display:swap}
:root{--art-sans:Nohemi,Arial,sans-serif;--art-mono:"DejaVu Sans Mono",monospace;--art-bg:#0b0b0d;--art-fg:#f4f1f6;--art-muted:#b4abbc;--art-brand:#a700e9;--art-text:#bc8aec;--art-focus:var(--art-text)}body{font-family:var(--art-sans);font-synthesis:none}button,input,textarea,select{font-family:inherit}a:focus-visible,button:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid var(--art-focus);outline-offset:5px}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.site-header{font:15px/1.5 var(--art-sans);padding:28px 5vw;display:flex;justify-content:space-between;align-items:center;gap:30px;background:var(--art-bg);color:var(--art-fg);border-bottom:1px solid #ffffff24}.site-header .site-brand img{width:180px;filter:brightness(0) invert(1)}.site-header nav{display:flex;gap:25px;align-items:center;flex-wrap:wrap;font:15px/1.5 var(--art-sans)}.site-language select{font:12px var(--art-mono);color:var(--art-fg);background:var(--art-bg);padding:8px;border:1px solid #ffffff40}.site-language{margin:0}.site-footer{padding:30px 5vw;border-top:1px solid #ffffff24;display:flex;justify-content:space-between;gap:25px;flex-wrap:wrap;font:12px/1.7 var(--art-mono);color:var(--art-muted)}.site-footer nav{display:flex;flex-wrap:wrap;gap:24px}.site-footer a,.site-group a{text-decoration:none;color:inherit}.site-group{padding:75px 5vw;color:var(--art-fg);background:var(--art-bg);font:18px/1.6 var(--art-sans);border-top:1px solid #ffffff24}.site-group h2{font:300 clamp(32px,4vw,60px)/1.1 var(--art-sans);letter-spacing:-.035em;margin:25px 0}.site-group p{max-width:680px;color:var(--art-muted);font:18px/1.6 var(--art-sans)}.site-houses{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:40px}.site-houses>a,.site-houses>div{border-top:1px solid #ffffff30;padding-top:25px}.site-houses strong{display:block;font:400 26px/1.3 var(--art-sans);margin-bottom:18px}.site-houses small{display:block;margin-top:20px}.eyebrow,.meta-tag,figcaption,.chapter-number,.control-btn,.info-menu-item,.lang-menu-item,.portal-entry,.portal-label,.explore-text,.info-close,.info-tag,.info-future-note,.lightbox-caption,.lightbox-counter,.motion-controls{font-family:var(--art-mono)!important;font-weight:400}.art-work h1,.art-work h2,.art-work .subtitle,.art-work .intro-line,.art-work .body-text,.art-work .chapter-copy p,.art-work .wide-heading>p,.art-work .intro-note p,.art-work .process-note,.art-work .gallery-note{font-family:var(--art-mono);font-weight:400}.art-work header,.art-work .site-group h2,.art-work .site-group p{font-family:var(--art-sans)}.art-manifesto .hero-title,.art-manifesto .hero-intro,.art-manifesto .section-title,.art-manifesto .section-body,.art-manifesto .section-tag,.art-manifesto .pull-quote{font-family:var(--art-mono)}.art-legal .legal{font-family:var(--art-sans)}
.art-home .info-content{font-family:var(--art-mono);max-width:660px;width:100%;padding:50px 40px 100px;color:rgba(255,255,255,.82)}.art-home .info-title{font:400 1rem/normal var(--art-mono);letter-spacing:4px;text-transform:uppercase;color:rgba(255,255,255,.85);margin-bottom:28px}.art-home .info-body{font:400 .8rem/2.1 var(--art-mono);color:rgba(255,255,255,.65)}.art-home .info-body p{margin-bottom:20px}.art-home .info-body strong{font-weight:400;color:rgba(255,255,255,.9);letter-spacing:1px}.art-home .info-body em{font-style:normal;color:rgba(255,255,255,.5);letter-spacing:1px}.art-home .portal-home-actions a{font-family:var(--art-mono)}.art-home .site-group{padding:35px 0}.art-home .site-footer{padding:25px 0}.art-home .site-houses{grid-template-columns:1fr}.home-legal{position:fixed;right:25px;bottom:15px;z-index:22;display:flex;gap:15px;font:10px/1.5 var(--art-mono);color:#ccc}.home-legal a{color:inherit;text-decoration:none}.intro-playing .home-legal{visibility:hidden}
.art-motion{margin:35px 0}.motion-controls{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end;margin-bottom:20px;font-size:12px}.motion-controls button{background:none;color:var(--art-fg);border:1px solid #ffffff50;padding:10px 16px;cursor:pointer;font:inherit}.motion-controls button[aria-pressed=true]{background:var(--art-fg);color:var(--art-bg)}.art-motion figure{margin:0}.motion-stage{background:#000;aspect-ratio:16/9;mask-image:linear-gradient(to right,transparent,#000 3%,#000 97%,transparent);isolation:isolate}.motion-stage video,.motion-stage img{display:block;width:100%;height:100%;object-fit:contain;max-height:none;mask-image:linear-gradient(to bottom,transparent,#000 1.5%,#000 98.5%,transparent)}.motion-stage.is-sketch{background:transparent;mask-image:none}.art-motion figcaption{color:var(--art-muted);font:11px/1.7 var(--art-mono);padding:18px 0}.art-portal{background:var(--art-bg);color:var(--art-fg)}.art-portal p{font-size:18px;line-height:1.6}.art-portal .portal-intro{max-width:820px}.art-portal .portal-intro h1{font-size:clamp(55px,8vw,120px)}.art-portal .portal-intro p{max-width:640px}.art-portal .portal-world{padding:60px 5vw}.art-portal .origin,.art-portal .gateways{background:var(--art-bg);color:var(--art-fg);border-top:1px solid #ffffff24}.art-portal .origin p,.art-portal .gate p{color:var(--art-muted)}.art-portal .gate-grid{border-color:#ffffff24}.art-portal .work-block h2,.art-portal .work-block p{font-family:var(--art-mono)}.art-portal .work-block h2{font-size:clamp(27px,4vw,48px);letter-spacing:0}.art-portal input,.art-portal textarea{background:transparent;border:0;border-bottom:1px solid #8d8294;padding:12px 0;color:var(--art-fg)}.art-portal label,.art-portal input,.art-portal textarea{font-family:var(--art-sans)}.art-portal .send{background:transparent;border:1px solid #ffffff66;color:var(--art-fg);opacity:.65}.art-portal .status{font:12px/1.7 var(--art-mono)}.privacy-block{margin-top:55px}.privacy-block p{line-height:1.8;max-width:72ch}
body.lang-zh{--art-sans:"Noto Sans SC","PingFang SC",sans-serif;--art-mono:"Noto Sans SC","PingFang SC",sans-serif}body.lang-ja{--art-sans:"Noto Sans JP","Hiragino Kaku Gothic Pro",sans-serif;--art-mono:"Noto Sans JP","Hiragino Kaku Gothic Pro",sans-serif}body.lang-ar{--art-sans:"Noto Sans Arabic","Geeza Pro",sans-serif;--art-mono:"Noto Sans Arabic","Geeza Pro",sans-serif}
@media(max-width:760px){.site-header{align-items:flex-start;flex-wrap:wrap;padding:25px 6vw}.site-header nav{font-size:12px;gap:18px;max-width:none;justify-content:flex-start}.site-header .site-brand img{width:145px}.site-houses{grid-template-columns:1fr}.site-group p{font-size:16px}.site-footer{font-size:11px}.art-home .info-content{padding:40px 24px 80px}.art-home .info-title{font-size:1rem;letter-spacing:4px}.art-home .info-body{font-size:.8rem;line-height:2.1}.art-work header{flex-wrap:wrap;gap:10px}.art-work .nav-archive{display:block}.art-portal .hero{padding-top:40px}.motion-controls{font-size:11px}.motion-controls button{padding:9px 12px}.art-portal .portal-world{padding:35px 6vw}.home-legal{font-size:9px;right:15px;gap:10px}.site-header .site-language{margin:0}.art-work h1{overflow-wrap:anywhere}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.art-motion *{animation:none!important;transition:none!important}}

.art-portal .world-story{max-width:780px;margin:25px 0 40px}.art-portal .world-story p{font:400 14px/1.9 var(--art-mono);margin-bottom:22px}.art-work #lang-menu button{background:none;border:0;color:inherit;font:inherit;padding:10px 20px;cursor:pointer}.art-work .art-motion{max-width:1200px;margin:40px auto;padding:0 5vw}

#concept-entry{display:block;width:100%;text-align:start;background:none;border:0;color:inherit;cursor:pointer;font:inherit;padding:12px 20px}.art-portal a.under>span{font:inherit}.art-work .site-group h2{font-family:var(--art-sans)}

:root{--font-mono:var(--art-mono)}.site-footer nav{position:static;inset:auto;padding:0;background:none;z-index:auto;justify-content:flex-start}.art-manifesto .manifesto-nav{font-family:var(--art-sans);position:relative;background:var(--art-bg);padding:28px 5vw;gap:20px;flex-wrap:wrap;border-bottom:1px solid #ffffff24}.manifesto-nav .nav-portal{font:15px/1.5 var(--art-sans);color:var(--art-fg);text-decoration:none;letter-spacing:0}.art-manifesto .nav-logo{font:20px/1.5 var(--art-sans);letter-spacing:0;color:var(--art-fg);text-transform:none}.art-manifesto .lang-opt{font:11px/1.5 var(--art-mono);color:var(--art-muted);letter-spacing:0;padding:6px}.art-manifesto .hero{padding-top:75px}.art-manifesto .site-group,.art-manifesto .site-footer{background:var(--art-bg)}

.site-header a{color:var(--art-fg);text-decoration:none;letter-spacing:0;text-transform:none}.site-header nav{position:static;inset:auto;padding:0;background:none;z-index:auto;justify-content:flex-start}.site-header .site-brand{line-height:1;flex-shrink:0}.site-header .site-brand img{display:block}.art-manifesto .site-footer,.art-manifesto .site-footer a{letter-spacing:0;text-transform:none}.site-header .site-language select{width:auto;min-width:82px}.art-work header.site-header{padding:28px 5vw;font-size:15px;letter-spacing:0}.site-header .nav-portal{text-decoration:none}
.site-header{position:relative;inset:auto;z-index:20;-webkit-backdrop-filter:none;backdrop-filter:none}.art-work .work-page{padding-top:65px}.art-work .site-header nav a{text-decoration:none}.site-footer nav a{letter-spacing:0;text-transform:none}@media(max-width:760px){.art-work .work-page{padding-top:40px}.site-header{padding:25px 6vw}}

.art-vrt{font-family:var(--art-mono)}.art-vrt h1{font-family:var(--art-sans)}

body{margin:0}.site-header,.site-header *{box-sizing:border-box}

/* Final artwork masters, 04.10.2026: same physical background; never crop the artwork. */
.motion-stage{background:#0b0b0d;mask-image:none;padding:1.5% 0;box-sizing:border-box;overflow:visible}
.motion-stage video,.motion-stage img{object-fit:contain;mask-image:none}
.motion-stage.is-sketch{background:transparent}
body,body.art-portal,body.art-legal{background:#0b0b0d}

.form-trap{position:absolute!important;left:0;top:0;clip-path:inset(100%);pointer-events:none;width:1px;height:1px;overflow:hidden}.art-portal .send:disabled{opacity:.5;cursor:wait}.art-portal .send:not(:disabled){opacity:1;cursor:pointer}.status{min-height:3em}

/* Approved colour roles, 05.10.2026. Artwork colours are never remapped. */
.art-portal .eyebrow,.art-portal .origin .eyebrow,.art-portal .gateways>.eyebrow,.art-portal .under,.art-portal .back,.art-portal .privacy a,.art-legal .legal a,.site-header a:hover,.site-footer a:hover,.site-group a:hover,.art-home .portal-home-actions a,.art-home .portal-entry,.art-work .nav-archive,.lang-menu-item.active,.art-manifesto .lang-opt.active{color:var(--art-text)}
.art-portal .send{border-color:var(--art-text)}.art-portal .send:hover{background:var(--art-brand);color:#fff}.art-portal label small,.art-portal .form-note{color:var(--art-muted)}

/* Independent language pages: native links retain the approved language-menu appearance. */
.art-home .logo-heading{margin:0;font:inherit;line-height:0}.art-home .logo-heading .logo{display:block}.lang-menu a.lang-menu-item{display:block;text-decoration:none;font:inherit;color:inherit;cursor:pointer}.lang-menu a.lang-menu-item.active{color:var(--art-text)}.language-fallback{display:flex;flex-wrap:wrap;gap:10px;font:12px var(--art-mono)}
