/* Home opening v1.5.0 — 13 October 2026. Transparent WebP, neon and amber mist. */
.intro-gate .sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.gate.intro-gate{background:transparent;color:#f6f4ee;display:grid;grid-template-rows:auto 1fr auto;align-items:stretch;justify-content:stretch;gap:0;padding:clamp(20px,3.6vh,38px) max(24px,env(safe-area-inset-right)) max(22px,env(safe-area-inset-bottom));overflow:hidden;min-height:100svh;isolation:isolate}
.intro-gate::before{content:'';position:absolute;inset:0;background:#000;z-index:-3;transition:opacity 2.4s ease;pointer-events:none}
.intro-gate::after{content:'';position:absolute;inset:-20%;z-index:0;pointer-events:none;opacity:0;background:radial-gradient(ellipse at 50% 43%,transparent 12%,#ffb53512 23%,#ffc96c55 31%,#e679191f 42%,transparent 58%);transform:scale(.65);transition:opacity 2.3s ease,transform 2.6s cubic-bezier(.2,.65,.2,1)}
.gate.intro-gate{overflow:clip}
.intro-gate .gate-brand{margin-left:0;align-self:start;justify-self:start;gap:12px;position:relative;z-index:3;transition:opacity 1s ease}
.intro-gate .gate-brand span{font:500 20px/1.3 Poppins,system-ui,sans-serif}.intro-gate .gate-brand small{font:11px/1.5 Poppins,system-ui,sans-serif;letter-spacing:.2px;color:#9d9c98;margin-top:3px}.intro-gate .gate-brand img{width:31px;height:38px}
.intro-center{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:0;text-align:center;padding:8px 0;position:relative;z-index:2;transition:opacity 1s ease,transform 1.5s ease}
.intro-skip:focus-visible{outline:1px solid #e6be76;outline-offset:4px}
.intro-lamp{position:relative;width:min(42svh,440px,78vw);aspect-ratio:1225/1284;flex-shrink:0;isolation:isolate}
.intro-lamp img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;pointer-events:none;user-select:none;-webkit-user-drag:none}
.intro-lamp-off{opacity:1;transition:opacity 2.2s ease}
.intro-lamp-on{opacity:0;transition:opacity 2.2s cubic-bezier(.22,.6,.25,1)}
.intro-lamp-on{filter:drop-shadow(0 0 9px #ffd168bb) drop-shadow(0 0 25px #ff9b2455)}
.intro-glow{position:absolute;inset:-28%;z-index:-1;pointer-events:none;opacity:0;background:radial-gradient(ellipse at 50% 40%,#ffda9588 4%,#ffb02c44 22%,#e87b131a 40%,transparent 65%);transform:scale(.6);transition:opacity 2.2s ease,transform 2.8s ease}
.intro-switch{position:relative;display:block;width:min(210px,65vw);height:min(106px,33vw);padding:0;border:0;background:transparent;border-radius:17px;overflow:hidden;flex-shrink:0;touch-action:manipulation;-webkit-user-select:none;user-select:none;outline-offset:5px!important;transition:transform .15s,filter .4s}
.intro-switch img{position:absolute;width:128%;height:auto;max-width:none;top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none;-webkit-mask:url('intro-switch-mask.svg?v=1.4.1') center/100% 100% no-repeat;mask:url('intro-switch-mask.svg?v=1.4.1') center/100% 100% no-repeat;-webkit-user-drag:none}
.intro-switch .intro-switch-on{opacity:0}.intro-switch:hover{filter:brightness(1.08)}.intro-switch:active{transform:translateY(2px) scale(.985)}.intro-switch:focus-visible{outline:2px solid #eec77c}.intro-switch:disabled{cursor:default}
.intro-status{font:12px/1.7 Poppins,system-ui,sans-serif;color:#b5b3ad;margin:12px 0 0;min-height:21px;letter-spacing:.15px}
.intro-bottom{position:relative;z-index:4;text-align:center;padding-top:14px;transition:opacity 1s ease}.intro-skip{border:0;background:transparent;color:#e6be76;font-size:12px;padding:12px 24px;min-height:44px}.intro-skip::before{content:'';display:block;width:30px;height:1px;background:#c89c4b;margin:0 auto 10px}.intro-bottom p{font-size:10px;line-height:1.7;color:#898984;margin:0}
.intro-fog{position:absolute;inset:-25%;z-index:1;pointer-events:none;opacity:0;transform:translate3d(-4%,6%,0) scale(.65);background:radial-gradient(ellipse at 38% 54%,#ffd8a0f5,transparent 49%),radial-gradient(ellipse at 67% 42%,#ffad55e6,transparent 46%),radial-gradient(ellipse at 48% 74%,#fff0d6ee,transparent 50%),radial-gradient(ellipse at 50% 40%,#dc711e99,transparent 62%);transition:opacity 2.2s ease,transform 2.6s cubic-bezier(.2,.65,.2,1);will-change:opacity,transform}
.intro-fog::before{content:'';position:absolute;inset:5%;background:radial-gradient(ellipse at 26% 34%,#fff0d994,transparent 42%),radial-gradient(ellipse at 76% 66%,#ffc671aa,transparent 45%);transform:rotate(-12deg) scale(.9);transition:transform 2.6s ease}
.intro-gate[data-phase=warming] .intro-lamp-on,.intro-gate[data-phase=revealing] .intro-lamp-on{opacity:1}.intro-gate[data-phase=warming] .intro-glow{opacity:1;transform:scale(1.2)}
.intro-gate[data-phase=warming] .intro-lamp-off,.intro-gate[data-phase=revealing] .intro-lamp-off{opacity:0}
.intro-gate[data-phase=warming]::after{opacity:1;transform:scale(1.15)}
.intro-gate[data-phase=revealing]::after{opacity:0;transform:scale(2.3)}
.intro-gate[data-phase=warming] .intro-switch-off,.intro-gate[data-phase=revealing] .intro-switch-off{opacity:0}.intro-gate[data-phase=warming] .intro-switch-on,.intro-gate[data-phase=revealing] .intro-switch-on{opacity:1}
.intro-gate[data-phase=warming] .intro-fog{opacity:1;transform:translate3d(3%,-3%,0) scale(1.1)}
.intro-gate[data-phase=warming] .intro-fog::before{transform:rotate(6deg) scale(1.15)}
.intro-gate[data-phase=revealing]::before{opacity:0}.intro-gate[data-phase=revealing] .intro-fog{opacity:0;transform:translate3d(-2%,-7%,0) scale(1.85);transition-duration:2.4s,2.4s}
.intro-gate[data-phase=revealing] .intro-fog::before{transform:rotate(14deg) scale(1.5)}
.intro-gate[data-phase=revealing] .intro-glow{opacity:0}
.intro-gate[data-phase=revealing] .intro-center{opacity:0;transform:translateY(-8px) scale(1.18)}.intro-gate[data-phase=revealing] .gate-brand,.intro-gate[data-phase=revealing] .intro-bottom{opacity:0}
#site[data-intro-phase=revealing]{animation:home-dimension-arrival 2.4s cubic-bezier(.2,.65,.2,1) both;transform-origin:50% 20%}
@keyframes home-dimension-arrival{from{opacity:.15;transform:perspective(1200px) translateZ(34px)}to{opacity:1;transform:perspective(1200px) translateZ(0)}}
@media(max-width:600px){.gate.intro-gate{padding:22px 20px max(24px,env(safe-area-inset-bottom))}.intro-gate .gate-brand span{font-size:17px}.intro-gate .gate-brand small{font-size:10px}.intro-switch{width:min(190px,65vw);height:min(96px,33vw)}.intro-status{font-size:11px}.intro-bottom p{font-size:9px}.intro-gate .gate-brand{display:flex}}
@media(max-height:560px){.gate.intro-gate{grid-template-rows:1fr auto;padding:12px 20px}.intro-gate .gate-brand{display:none}.intro-center{padding:0}.intro-lamp{width:min(43svh,290px)}.intro-switch{width:165px;height:83px}.intro-status{font-size:10px;margin:3px 0}.intro-bottom{padding-top:0}.intro-bottom p{display:none}.intro-skip{font-size:10px;padding:5px 18px;min-height:32px}.intro-skip::before{display:none}}
@media(prefers-reduced-motion:reduce){.intro-fog,.intro-glow,.intro-gate::after{display:none}.intro-gate::before,.intro-center,.intro-lamp-on,.intro-lamp-off{transition:none!important}.intro-gate[data-phase=revealing] .intro-center{transform:none}#site[data-intro-phase=revealing]{animation:none}}
