:root{--paper:#261c3c;--ink:#f5eafc;--accent:#c8fa7f;--muted:#b59bcf;--line:#604d78;--art-bg:#3b2c56;--modal-bg:#352647;--button-ink:#30223f}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.8 -apple-system,BlinkMacSystemFont,"PingFang SC",sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer;color:inherit}a:focus-visible,button:focus-visible{outline:3px solid var(--accent);outline-offset:5px}header,main,footer{max-width:1280px;margin:auto}header{padding:30px 45px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{font-size:25px;font-weight:700;letter-spacing:2px}.brand small{font-size:9px;letter-spacing:1px;font-weight:400;margin-left:12px}nav{display:flex;gap:28px;font-size:11px}.gate{border:1px solid var(--line);background:transparent;padding:10px 18px;font-size:11px}.gate:hover{border-color:var(--accent)}.hero{position:relative;padding:65px 45px;min-height:520px;overflow:hidden}.eyebrow{font:9px/1.6 ui-monospace,monospace;letter-spacing:2px;color:var(--accent);display:block}h1{font-size:clamp(40px,5vw,68px);line-height:1.3;font-weight:500;letter-spacing:-2px;margin:27px 0}h1 em{font-style:normal;color:var(--accent)}.intro{font-size:13px;color:var(--muted);line-height:2}.primary{background:var(--accent);border:0;color:var(--button-ink,var(--paper));padding:12px 22px;display:inline-flex;gap:40px;align-items:center;margin-top:20px}.section{padding:45px}.section-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:25px}.section-head h2{font-size:28px;font-weight:500;margin:8px 0}.section-head>p{font-size:11px;color:var(--muted)}.catalog{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.item{border:1px solid var(--line);background:var(--panel,var(--paper))}.art{height:190px;position:relative;overflow:hidden;background:var(--art-bg)}.item-body{padding:22px}.item small{font:8px/1.5 ui-monospace;letter-spacing:1px;color:var(--muted)}.item h3{font-size:21px;font-weight:500;margin:9px 0}.item p{font-size:11px;color:var(--muted);min-height:40px}.meta{display:flex;justify-content:space-between;gap:8px;border-top:1px solid var(--line);padding-top:13px;margin-top:20px;font:9px/1.6 ui-monospace;color:var(--muted)}.item .gate{border:0;border-top:1px solid var(--line);width:100%;display:flex;justify-content:space-between;padding:13px 0 0;margin-top:13px;font-size:11px}.item .gate span{color:var(--accent)}.note{margin:25px 45px 60px;padding:30px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:30px}.note h2{font-size:25px;font-weight:400;margin:0}.note p{font-size:11px;color:var(--muted);max-width:420px;margin:0}footer{border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;padding:30px 45px;font:9px/1.6 ui-monospace;color:var(--muted)}.art i,.sculpture i{position:absolute;display:block}.art-label{position:absolute;left:15px;bottom:12px;font:8px ui-monospace;letter-spacing:2px;z-index:2}.art .n{position:absolute;right:15px;top:12px;font:9px ui-monospace;opacity:.5}.sculpture{position:absolute;right:30px;top:50px;width:440px;height:410px;pointer-events:none}.hero-copy{position:relative;z-index:1;max-width:650px}@media(max-width:850px){header{padding:24px 25px}.hero{padding:45px 25px;min-height:480px}.sculpture{right:-90px;opacity:.6;transform:scale(.85)}.hero-copy{max-width:550px}.section{padding:35px 25px}.catalog{gap:14px}.art{height:150px}.item-body{padding:16px}.item h3{font-size:18px}.item p{min-height:60px;font-size:10px}.meta{font-size:7px}.note{margin:20px 25px 45px;padding:25px 0}footer{padding:25px}}@media(max-width:620px){header{padding:22px}.brand{font-size:22px}.brand small{display:none}nav{gap:17px;font-size:10px}header>.gate{display:none}.hero{padding:35px 22px 40px;min-height:690px}.hero h1{font-size:44px;letter-spacing:-1.5px}.sculpture{top:340px;right:calc(50% - 210px);width:420px;height:330px;transform:scale(.85);opacity:1}.hero-copy{max-width:none}.section{padding:32px 22px}.section-head h2{font-size:25px}.section-head>p{display:none}.catalog{grid-template-columns:1fr;gap:22px}.art{height:220px}.item-body{padding:22px}.item h3{font-size:23px}.item p{min-height:0;font-size:12px}.meta{font-size:9px}.note{margin:10px 22px 40px;display:block}.note p{margin-top:15px}footer{padding:25px 22px;flex-wrap:wrap;gap:15px}.hero .eyebrow{font-size:8px}.intro{font-size:12px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{background-image:radial-gradient(#b99bd71c 1px,transparent 1px);background-size:18px 18px}.brand{font:800 24px ui-monospace;letter-spacing:2px}.hero h1{font-weight:700;text-shadow:4px 4px 0 #594471}.sculpture{right:50px;top:80px;width:360px;height:350px;background:linear-gradient(45deg,#4f3768 25%,transparent 25% 75%,#4f3768 75%),linear-gradient(45deg,#4f3768 25%,#38274e 25% 75%,#4f3768 75%);background-position:0 0,24px 24px;background-size:48px 48px;transform:rotate(7deg);border:4px solid #8b6eaa;box-shadow:12px 12px 0 #171022}.sculpture i{width:32px;height:32px;left:90px;top:100px;background:#c8fa7f;box-shadow:32px 0 #c8fa7f,64px 0 #c8fa7f,0 32px #c8fa7f,32px 32px #c8fa7f,64px 32px #c8fa7f,-32px 32px #c8fa7f,96px 32px #c8fa7f,-32px 64px #c8fa7f,0 64px #352344,32px 64px #c8fa7f,64px 64px #352344,96px 64px #c8fa7f,0 96px #c8fa7f,32px 96px #c8fa7f,64px 96px #c8fa7f,0 128px #c8fa7f,64px 128px #c8fa7f}.sculpture i:not(:first-child){display:none}.item{border:2px solid #745b91;box-shadow:6px 6px 0 #171022}.art{background:repeating-linear-gradient(0deg,transparent 0 30px,#6e5284 31px 32px),repeating-linear-gradient(90deg,#49365f 0 30px,#6e5284 31px 32px)}.art:before{content:'';position:absolute;width:45px;height:45px;left:calc(50% - 25px);top:60px;background:#c8fa7f;box-shadow:12px 12px 0 #171022}.item:nth-child(2) .art:before{background:#ee9bc5;border-radius:50%;box-shadow:0 22px 0 -7px #ee9bc5,12px 12px 0 #171022}.item:nth-child(3) .art:before{background:#ffd76b;transform:rotate(45deg)}.primary{box-shadow:5px 5px 0 #171022}.note{border:2px dashed #745b91}.gate-emblem{border-radius:10px}@media(max-width:620px){.hero{min-height:765px}.sculpture{top:375px;right:calc(50% - 180px);transform:scale(.85) rotate(5deg)}}
#gate-dialog,#access-dialog{--gate-accent:var(--accent,var(--blue,var(--orange,#45654e)));width:min(430px,calc(100% - 36px));max-width:430px;border:1px solid color-mix(in srgb,var(--gate-accent) 30%,transparent);border-radius:25px;padding:0;background:var(--modal-bg,var(--paper,#fbfaf5));color:var(--modal-ink,var(--ink,#22382c));box-shadow:0 35px 100px #0004;overflow:visible;animation:gate-enter .22s ease-out}#gate-dialog::backdrop,#access-dialog::backdrop{background:#10182066;backdrop-filter:blur(7px)}.gate-surface{position:relative;padding:48px 25px 43px;text-align:center;border-radius:25px;background:radial-gradient(ellipse at 50% 0%,color-mix(in srgb,var(--gate-accent) 10%,transparent),transparent 65%)}.gate-close{position:absolute;right:15px;top:14px;width:30px;height:30px;border-radius:50%;border:1px solid color-mix(in srgb,currentColor 12%,transparent);background:transparent;color:inherit;opacity:.5;display:grid;place-items:center;font:20px/1 system-ui;cursor:pointer;transition:opacity .15s,background .15s}.gate-close:hover{opacity:1;background:color-mix(in srgb,var(--gate-accent) 10%,transparent)}.gate-emblem{display:grid;place-items:center;width:70px;height:70px;margin:0 auto 24px;border-radius:23px;background:color-mix(in srgb,var(--gate-accent) 10%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--gate-accent) 20%,transparent);color:var(--gate-accent);transform:rotate(-5deg)}.gate-emblem svg{width:29px;height:29px;transform:rotate(5deg)}#gate-dialog .gate-surface h2,#access-dialog .gate-surface h2{font:500 22px/1.6 -apple-system,BlinkMacSystemFont,"PingFang SC",sans-serif;letter-spacing:.5px;margin:0;color:inherit}.gate-rule{display:block;width:30px;height:3px;border-radius:5px;margin:25px auto 0;background:var(--gate-accent);opacity:.6}@keyframes gate-enter{from{opacity:0;transform:translateY(10px) scale(.97)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){#gate-dialog,#access-dialog{animation:none}}
