/* Cinematic entrance and pointer effects; every interaction also works without motion. */
html:root .hero-modern.wrap{overflow:hidden;isolation:isolate}
.atelier-hero-light{position:absolute;inset:0;z-index:1;pointer-events:none;background:radial-gradient(ellipse 500px 420px at var(--light-x,75%) var(--light-y,25%),#ffffff18,transparent 75%);opacity:0;transition:opacity .7s}
.hero-modern:hover .atelier-hero-light{opacity:1}
.atelier-discover{position:absolute;z-index:3;right:max(48px,calc((100vw - 1280px)/2));bottom:76px;width:260px;color:#fff;border-top:1px solid #ffffff55}
.atelier-discover>a{display:grid;grid-template-columns:22px 1fr 28px;align-items:center;gap:14px;padding:19px 0;color:#fff;text-decoration:none;border-bottom:1px solid #ffffff55;font-size:14px;transition:padding .3s,background-color .3s}
.atelier-discover>a>small{font-size:9px;letter-spacing:.08em;color:#ddd}
.atelier-discover>a>span:last-child{display:grid;place-items:center;width:28px;height:28px;border:1px solid #ffffff70;transition:background-color .25s,border-color .25s,transform .3s}
.atelier-discover>a:hover>span:last-child,.atelier-discover>a:focus-visible>span:last-child{background:#cb0029;border-color:#cb0029;transform:translateX(4px)}
.atelier-discover>a:hover{padding-left:8px}
.atelier-magnet{translate:var(--magnet-x,0px) var(--magnet-y,0px)}
html:root .ref-button,html:root .hero-stock{position:relative;overflow:hidden;isolation:isolate}
html:root .ref-button:after,html:root .hero-stock:after{content:'';position:absolute;inset:-80% -50%;z-index:-1;background:linear-gradient(115deg,transparent 30%,#ffffff30 48%,transparent 66%);transform:translateX(-80%);pointer-events:none}
html:root .ref-button:hover:after,html:root .hero-stock:hover:after{transform:translateX(80%);transition:transform .8s ease}
.atelier-back-top{position:fixed;right:24px;bottom:24px;z-index:45;width:46px;height:46px;border:1px solid var(--at-line);background:var(--at-bg);color:var(--at-ink);font-size:20px;display:grid;place-items:center;cursor:pointer;box-shadow:0 4px 18px #0002}
.atelier-back-top[hidden]{display:none}
.atelier-back-top:hover{border-color:var(--at-red);color:var(--at-red)}
@keyframes atelier-cinema{from{clip-path:polygon(0 0,0 0,0 100%,0 100%);opacity:.35}to{clip-path:polygon(0 0,100% 0,100% 100%,0 100%);opacity:1}}
@keyframes atelier-title{from{clip-path:inset(0 0 100% 0);transform:translateY(22px);opacity:0}to{clip-path:inset(0);transform:translateY(0);opacity:1}}
@media(prefers-reduced-motion:no-preference){
 html:root .hero-visual{animation:atelier-cinema 1.15s cubic-bezier(.22,.8,.25,1) both;transform:translate3d(0,var(--hero-depth,0px),0) scale(1.02)}
 html:root .hero-copy h1{animation:atelier-title 1s cubic-bezier(.2,.75,.25,1) .22s both}
 html:root .atelier-discover{animation:atelier-enter .85s cubic-bezier(.2,.75,.25,1) .5s both}
 .atelier-magnet{transition:translate .25s cubic-bezier(.2,.75,.25,1)}
 .atelier-back-top{animation:atelier-enter .3s ease both}
}
@media(max-width:1100px){.atelier-discover{width:210px}.atelier-discover>a{font-size:12px;gap:10px}}
@media(max-width:900px){.atelier-discover{position:relative;right:auto;bottom:auto;width:100%;margin-top:30px;display:grid;grid-template-columns:repeat(3,1fr);border:0;gap:16px}.atelier-discover>a{display:flex;gap:10px;border-bottom:1px solid #ffffff70;border-top:0;padding:14px 0;font-size:11px}.atelier-discover>a>small{display:none}.atelier-discover>a>span:last-child{border:0;margin-left:auto;width:auto;height:auto}.atelier-discover>a:hover{padding-left:0}html:root .hero-modern.wrap{flex-direction:column;justify-content:flex-end;align-items:stretch}.atelier-hero-light{display:none}}
@media(max-width:420px){.atelier-discover{gap:12px}.atelier-discover>a{font-size:10px}.atelier-back-top{right:14px;bottom:14px;width:42px;height:42px}}
@media(prefers-reduced-motion:reduce){.atelier-hero-light{display:none}.atelier-magnet{translate:none!important}.atelier-discover>a,.atelier-discover>a>span:last-child{transition:none}.atelier-discover>a:hover>span:last-child{transform:none}html:root .ref-button:after,html:root .hero-stock:after{display:none}}
