/* Motion is progressive: content remains visible without JavaScript. */
:root{--luxury-ease:cubic-bezier(.22,1,.36,1)}
.reading-progress{position:fixed;inset:0 0 auto;height:2px;background:linear-gradient(90deg,#967140,#ebd6a8,#b49155);transform:scaleX(var(--reading-progress,0));transform-origin:left;z-index:19;pointer-events:none}
.hero{isolation:isolate}
.hero::after{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 76% 47%,#bb9b5912,transparent 49%),linear-gradient(120deg,#ffffff02,transparent 58%)}
.hero-chart{filter:none;perspective:1000px}
.hero-art{position:relative;isolation:isolate;overflow:hidden;border-radius:50%;transform:perspective(1000px) translateY(var(--art-shift,0px)) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));transition:transform .75s var(--luxury-ease),filter .8s ease;filter:drop-shadow(0 15px 20px #0002)}
.hero-art img{position:relative;z-index:1;display:block;width:100%;height:auto}
.hero-art::before{content:'';position:absolute;inset:0;border-radius:50%;background:radial-gradient(circle at var(--spot-x,50%) var(--spot-y,40%),#f3d59424 0,transparent 57%);z-index:2;opacity:0;transition:opacity .7s ease;pointer-events:none}
.hero-art::after{content:'';position:absolute;inset:0;z-index:3;border-radius:50%;background:linear-gradient(110deg,transparent 28%,#f9e6bf0d 41%,#fff2d729 50%,#f9e6bf0d 58%,transparent 72%);transform:translateX(-135%);pointer-events:none;mix-blend-mode:screen}
.hero-orbit{position:absolute;inset:1%;width:98%;height:98%;z-index:4;pointer-events:none;overflow:visible;fill:none;stroke:#c6aa70;stroke-width:.65;opacity:.5}
.hero-orbit circle{stroke-dasharray:1;stroke-dashoffset:0;transform:rotate(-90deg);transform-origin:center}
.hero-chart.luxury-reveal:not(.is-visible) .hero-orbit circle{stroke-dashoffset:1}
.hero-chart.is-visible .hero-orbit circle{transition:stroke-dashoffset 1.8s var(--luxury-ease) .15s}
.hero-chart.is-visible .hero-art::after{animation:luxury-light-pass 1.8s ease .55s 1 both}
.hero-chart>span{position:relative;z-index:5}
.hero-chart:hover .hero-art{filter:drop-shadow(0 18px 26px #0003)}
@keyframes luxury-light-pass{0%{transform:translateX(-135%);opacity:0}18%{opacity:.65}75%{opacity:.65}100%{transform:translateX(135%);opacity:0}}
@keyframes luxury-light-hover{0%{transform:translateX(-135%);opacity:0}18%{opacity:.45}75%{opacity:.45}100%{transform:translateX(135%);opacity:0}}
.luxury-reveal{opacity:0;translate:0 18px;transition:opacity .85s var(--luxury-ease) var(--reveal-delay,0ms),translate 1s var(--luxury-ease) var(--reveal-delay,0ms)}
.luxury-reveal.is-visible,.luxury-reveal:focus-within{opacity:1;translate:0 0}
.saju-intro-card,.article-card,.pricebox{position:relative;isolation:isolate;transition:transform .65s var(--luxury-ease),box-shadow .65s ease,border-color .5s ease}
.saju-intro-card::before,.article-card::before,.pricebox::before{content:'';position:absolute;inset:0;border-radius:inherit;background:radial-gradient(280px circle at var(--card-x,50%) var(--card-y,25%),#cfad691a,transparent 70%);opacity:0;transition:opacity .65s ease;pointer-events:none;z-index:0}
.saju-intro-card>*{position:relative;z-index:1}
.saju-intro-card::after{content:'';position:absolute;top:-2px;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,#f0d6a3,#ac884f,transparent);transform:scaleX(.3);opacity:0;transition:transform .7s var(--luxury-ease),opacity .6s ease;pointer-events:none}
.pricebox::before{background:radial-gradient(330px circle at var(--card-x,50%) var(--card-y,25%),#e8cc8c10,transparent 68%)}
.pricebox>*{position:relative;z-index:1}
.article-card .cover{position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(circle at 20% 20%,#f4ead5,transparent 66%),linear-gradient(135deg,#d5ded0,#e6dcc4)}
.article-card .cover::before{content:'';position:absolute;inset:15% 23%;border:1px solid #aa8c5252;border-radius:50%;box-shadow:0 0 0 18px #b0945b0b,0 0 0 19px #aa8c5225;transform:rotate(-12deg) scale(.94);transition:transform 1.4s var(--luxury-ease),opacity 1s ease;z-index:-1;pointer-events:none}
.article-card .cover::after{content:'';position:absolute;inset:0;background:linear-gradient(125deg,#fff8e01a,transparent 50%,#0e292317);pointer-events:none;z-index:1}
.article-card .cover>img{transition:transform 1.4s var(--luxury-ease),filter 1.2s ease;transform:scale(1.001)}
.article-card .cover>span{display:block;transition:transform 1.2s var(--luxury-ease),color .8s ease}
.article-card .read{transition:color .4s ease,text-underline-offset .4s ease}
.article-card:focus-within{border-color:#bba477;box-shadow:0 12px 32px #173c3210}
.article-card:focus-within .cover>img{transform:scale(1.04)}
.article-card:focus-within .read{color:#8d6936;text-underline-offset:9px}
.hero-actions .btn,.promo-actions .luna-start{position:relative;isolation:isolate;overflow:hidden;transition:transform .4s var(--luxury-ease),box-shadow .5s ease,background-color .5s ease}
.hero-actions .btn:first-child::after,.promo-actions .luna-start::after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(110deg,transparent 25%,#fff9e947 50%,transparent 75%);transform:translateX(-130%);transition:transform .9s var(--luxury-ease)}
.nav .links>a{position:relative;padding:5px 0}
.nav .links>a::after{content:'';position:absolute;left:0;bottom:0;height:1px;width:100%;background:#ad8b52;transform:scaleX(0);transform-origin:left;transition:transform .5s var(--luxury-ease)}
.nav .links>a:focus-visible::after{transform:scaleX(1)}
#about .seal{background:radial-gradient(ellipse at 50% 45%,#f6efd9,#e7dfca);transition:box-shadow .8s ease}
#about .seal::before,#about .seal::after{transition:transform 1.8s var(--luxury-ease),border-color 1.2s ease}
#about .seal.luxury-reveal:not(.is-visible)::before{transform:scale(.83)}
#about .seal.luxury-reveal:not(.is-visible)::after{transform:scale(1.12)}
.saju-intro-card.luxury-reveal,.article-card.luxury-reveal,.pricebox.luxury-reveal{transition:opacity .85s var(--luxury-ease) var(--reveal-delay,0ms),translate 1s var(--luxury-ease) var(--reveal-delay,0ms),transform .65s var(--luxury-ease),box-shadow .65s ease,border-color .5s ease}
#about .seal.luxury-reveal{transition:opacity .85s var(--luxury-ease) var(--reveal-delay,0ms),translate 1s var(--luxury-ease) var(--reveal-delay,0ms),box-shadow .8s ease}
@media(min-width:751px) and (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 .hero-art:hover::before{opacity:1}
 .hero-chart.is-visible .hero-art:hover::after{animation:luxury-light-hover 1.65s ease 0s 1 both}
 .saju-intro-card:hover{transform:translateY(-4px);border-color:#b6a077;box-shadow:0 16px 35px #233b2b0d}
 .saju-intro-card:hover::after{opacity:1;transform:scaleX(1)}
 .saju-intro-card.luxury-hover::before,.article-card.luxury-hover::before,.pricebox.luxury-hover::before{opacity:1}
 .article-card:hover{transform:translateY(-5px);box-shadow:0 18px 40px #173c3214;border-color:#c1aa7f}
 .article-card:hover .cover>img{transform:scale(1.055);filter:saturate(1.04)}
 .article-card:hover .cover>span{transform:scale(1.07);color:#59694c}
 .article-card:hover .cover::before{transform:rotate(0) scale(1.03)}
 .article-card:hover .read{color:#8d6936;text-underline-offset:9px}
 .pricebox:hover{transform:translateY(-3px);border-color:#c1aa70;box-shadow:0 18px 45px #071f251f}
 .hero-actions .btn:hover,.promo-actions .luna-start:hover{transform:translateY(-2px);box-shadow:0 9px 24px #0002}
 .hero-actions .btn:first-child:hover::after,.promo-actions .luna-start:hover::after{transform:translateX(130%)}
 .nav .links>a:hover::after{transform:scaleX(1)}
 #about .seal:hover{box-shadow:0 16px 35px #233b2b0d}
 #about .seal:hover::before{transform:scale(1.03);border-color:#b49660}
 #about .seal:hover::after{transform:scale(.97);border-color:#b49660}
}
@media(max-width:750px){.luxury-reveal{translate:0 12px;transition-duration:.65s,.8s}.hero-art{filter:drop-shadow(0 9px 14px #0002)}.hero-chart.is-visible .hero-art::after{animation-duration:1.4s}.reading-progress{height:2px}}
@media(prefers-reduced-motion:reduce){
 .luxury-reveal{opacity:1!important;translate:none!important;transition:none!important}
 .hero-art{transform:none!important;transition:none!important}
 .hero-art::before,.hero-art::after{display:none!important}
 .hero-orbit circle{stroke-dashoffset:0!important;transition:none!important}
 .saju-intro-card,.article-card,.pricebox,.cover img,.cover span,.hero-actions .btn,.promo-actions .luna-start,.seal,.seal::before,.seal::after{transition:none!important;transform:none!important}
 .saju-intro-card::before,.saju-intro-card::after,.article-card::before,.cover::before,.pricebox::before,.hero-actions .btn::after,.promo-actions .luna-start::after{transition:none!important}
 .hero-actions .btn::after,.promo-actions .luna-start::after{display:none}
 .article-card:focus-within .cover>img{transform:none}
}
