/* Scales Parfum — luxe layer: cursor lens flare, logo glint, foil cards, gold coin, marble transitions, scent burst, gold fountain */
:root{--lx-gold:#c9a96a;--lx-gold-hi:#f3dfa6;--lx-gold-deep:#8a6a2f}

/* 1 · sunlight lens flare at the cursor (desktop / fine pointer only; JS never builds it otherwise) */
.luxe-trail{position:fixed;inset:0;width:100vw;height:100vh;pointer-events:none;z-index:2147483000}
.luxe-flare{overflow:hidden;opacity:0;mix-blend-mode:screen;contain:strict}
.luxe-flare i{position:absolute;left:0;top:0;display:block;border-radius:50%;will-change:transform,opacity;pointer-events:none}
/* soft warm core: small, low alpha so text under the pointer stays legible */
.luxe-flare .lf-core{width:150px;height:150px;margin:-75px 0 0 -75px;
 background:radial-gradient(circle,rgba(255,244,214,.28) 0,rgba(255,226,160,.17) 16%,rgba(240,196,110,.08) 38%,rgba(232,186,96,0) 66%)}
/* wide gentle bloom — the light leak */
.luxe-flare .lf-bloom{width:560px;height:560px;margin:-280px 0 0 -280px;
 background:radial-gradient(circle,rgba(255,214,140,.11) 0,rgba(246,190,104,.06) 30%,rgba(236,170,90,.025) 52%,rgba(230,160,80,0) 70%)}
/* faint anamorphic streak */
.luxe-flare .lf-streak{width:720px;height:14px;margin:-7px 0 0 -360px;border-radius:50%;
 background:radial-gradient(50% 50% at 50% 50%,rgba(255,236,196,.22) 0,rgba(255,214,150,.09) 35%,rgba(255,200,130,0) 100%)}
/* ghost discs (40px base, scaled in JS) */
.luxe-flare .lf-ghost{width:40px;height:40px;margin:-20px 0 0 -20px}
.luxe-flare .lf-g1{background:radial-gradient(circle,rgba(255,220,150,.10) 0,rgba(255,210,140,.14) 62%,rgba(255,200,130,.04) 74%,rgba(255,200,130,0) 80%)}
.luxe-flare .lf-g2{background:radial-gradient(circle,rgba(255,236,190,.22) 0,rgba(255,214,150,.08) 55%,rgba(255,214,150,0) 72%)}
.luxe-flare .lf-g3{background:radial-gradient(circle,rgba(214,160,120,.04) 0,rgba(236,180,120,.07) 58%,rgba(255,206,150,.10) 68%,rgba(255,206,150,0) 76%)}
@media (prefers-reduced-motion:reduce){.luxe-flare{display:none}}

/* 2 · header logo glint */
.brand{position:relative;display:inline-block;line-height:0;transition:filter .45s ease}
.brand img{position:relative}
.brand::after{content:"";position:absolute;inset:0;pointer-events:none;
 -webkit-mask:url(logo-wordmark.svg) 0 0/100% 100% no-repeat;mask:url(logo-wordmark.svg) 0 0/100% 100% no-repeat;
 background:linear-gradient(105deg,transparent 0 36%,rgba(201,162,79,0) 38%,#c9a24f 44%,#fff1c4 48%,#e2bd68 52%,#a9832f 56%,rgba(201,162,79,0) 62%,transparent 64%) no-repeat;
 background-size:300% 100%;background-position:120% 0;opacity:.95;animation:luxe-glint 6s cubic-bezier(.45,.05,.3,1) 1.2s infinite}
@keyframes luxe-glint{0%{background-position:120% 0}18%{background-position:-20% 0}100%{background-position:-20% 0}}
.brand:hover,.brand:focus-visible{filter:drop-shadow(0 0 3px rgba(201,160,80,.9)) drop-shadow(0 0 12px rgba(201,169,106,.7)) drop-shadow(0 0 26px rgba(233,199,122,.45))}
.brand:hover::after{animation-duration:1.6s;animation-delay:0s}

/* 3 · gold-foil cards */
.luxe-tilt{transform-style:preserve-3d;will-change:transform;transition:transform .5s cubic-bezier(.2,.7,.2,1),box-shadow .5s}
.luxe-tilt.luxe-tilting{transition:transform .12s linear,box-shadow .3s;box-shadow:0 26px 50px -18px rgba(17,17,16,.35),0 0 0 1px rgba(201,169,106,.25)}
.luxe-foil{position:absolute;inset:0;pointer-events:none;z-index:3;opacity:0;transition:opacity .45s;border-radius:inherit;mix-blend-mode:soft-light;
 background:
  radial-gradient(circle at var(--lx-x,50%) var(--lx-y,50%),rgba(255,246,214,.95) 0,rgba(240,208,130,.55) 14%,rgba(201,169,106,0) 46%),
  linear-gradient(calc(110deg + var(--lx-a,0deg)),transparent 20%,rgba(201,169,106,.55) 38%,rgba(255,240,196,.85) 46%,rgba(160,120,50,.5) 54%,transparent 72%),
  repeating-linear-gradient(calc(60deg + var(--lx-a,0deg)),rgba(255,231,170,.06) 0 2px,rgba(140,100,40,.05) 2px 5px)}
.luxe-foil::after{content:"";position:absolute;inset:0;border:1px solid rgba(201,169,106,.0);transition:border-color .45s}
.luxe-tilting .luxe-foil{opacity:1}
.luxe-tilting .luxe-foil::after{border-color:rgba(214,183,118,.55)}

/* 4 · gold coin + bag pulse */
.luxe-coin{position:fixed;left:0;top:0;width:46px;height:46px;margin:-23px 0 0 -23px;z-index:2147483100;pointer-events:none;border-radius:50%;
 transform-style:preserve-3d;display:grid;place-items:center;font:600 15px/1 "Bodoni Moda",Didot,serif;letter-spacing:.04em;color:#5b4318;
 background:radial-gradient(circle at 32% 28%,#fff7d8 0,#f2d48c 22%,#c9a24f 52%,#8a6a2f 82%,#5e4518 100%);
 box-shadow:inset 0 0 0 2px #e9cd88,inset 0 0 0 4px #9a7735,inset 0 0 0 5px #f6e2a8,0 6px 18px rgba(80,56,10,.45),0 0 22px rgba(233,199,122,.55);
 text-shadow:0 1px 0 rgba(255,244,210,.7),0 -1px 0 rgba(80,56,10,.35)}
.luxe-coin::after{content:"";position:absolute;inset:0;border-radius:50%;background:linear-gradient(120deg,transparent 35%,rgba(255,255,255,.75) 48%,transparent 60%);mix-blend-mode:screen}
.luxe-bag-pulse{animation:luxe-bag 900ms cubic-bezier(.2,.8,.2,1)}
.luxe-bag-pulse #bag-count{display:inline-block;animation:luxe-count 900ms cubic-bezier(.2,.8,.2,1)}
@keyframes luxe-bag{0%{filter:none}30%{filter:drop-shadow(0 0 8px rgba(233,199,122,.95)) drop-shadow(0 0 18px rgba(201,169,106,.6))}100%{filter:none}}
@keyframes luxe-count{0%{transform:scale(1);color:inherit}30%{transform:scale(1.6);color:#d9b45f;text-shadow:0 0 10px rgba(233,199,122,.9)}100%{transform:scale(1);color:inherit}}

/* 5 · marble page transition */
.luxe-wipe,html.luxe-in::after{position:fixed;inset:0;z-index:2147483500;pointer-events:none;
 background:
  radial-gradient(ellipse 60% 40% at 22% 30%,rgba(255,255,255,.07),transparent 70%),
  linear-gradient(118deg,transparent 0 30%,rgba(201,169,106,.16) 31%,transparent 32.5%,transparent 58%,rgba(255,255,255,.08) 59%,transparent 60.5%),
  linear-gradient(64deg,transparent 0 44%,rgba(255,255,255,.06) 45%,transparent 46.5%,transparent 78%,rgba(201,169,106,.12) 79%,transparent 80%),
  radial-gradient(ellipse 80% 60% at 75% 80%,#1d1b18,transparent 70%),
  linear-gradient(160deg,#0b0b0a,#151412 45%,#060606)}
html.luxe-in::after{content:""}
.luxe-wipe::before{content:"";position:absolute;top:0;bottom:0;width:2px;right:-1px;
 background:linear-gradient(#0000,#f3dfa6 15%,#fff3cf 50%,#f3dfa6 85%,#0000);
 box-shadow:0 0 12px 3px rgba(233,199,122,.85),0 0 40px 10px rgba(201,169,106,.45)}
.luxe-wipe.luxe-rev::before{right:auto;left:-1px}
.luxe-wipe::after{content:"S";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font:500 italic 64px/1 "Bodoni Moda",Didot,serif;color:rgba(201,169,106,.5);text-shadow:0 0 30px rgba(201,169,106,.35)}

/* 6 · scent burst */
.luxe-burst-host{position:relative}
#gallery-main.luxe-clickable{cursor:zoom-in}
.luxe-notes-btn{display:inline-flex;align-items:center;gap:.6em;margin:14px 0 4px;padding:.75em 1.3em;border:1px solid var(--lx-gold);background:transparent;color:inherit;
 font:500 11px/1 Jost,sans-serif;letter-spacing:.22em;text-transform:uppercase;cursor:pointer;position:relative;overflow:hidden;transition:color .3s,background .3s}
.luxe-notes-btn svg{width:14px;height:14px;color:var(--lx-gold)}
.luxe-notes-btn:hover,.luxe-notes-btn[aria-pressed="true"]{background:#111110;color:#f3dfa6}
.luxe-burst{position:absolute;pointer-events:none;z-index:4}
.luxe-burst canvas{position:absolute;inset:-15%;width:130%;height:130%}
.luxe-note{position:absolute;left:0;top:0;display:flex;align-items:center;gap:.45em;white-space:nowrap;transform:translate(-50%,-50%);
 padding:.42em .85em .42em .6em;border-radius:999px;background:rgba(14,13,12,.82);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);
 border:1px solid rgba(201,169,106,.55);color:#f5ead0;font:italic 500 clamp(12px,1.05vw,15px)/1 "Bodoni Moda",Didot,serif;letter-spacing:.02em;
 box-shadow:0 6px 18px rgba(0,0,0,.25),0 0 14px rgba(201,169,106,.25)}
.luxe-note svg{width:15px;height:15px;flex:none;color:#e2c27c}
.luxe-burst.luxe-out .luxe-note{transition:opacity .4s;opacity:0}

/* 7 · refill gold fountain */
.luxe-fountain{position:relative;height:240vh;background:#080807;color:#f5f0e6;overflow:clip}
.luxe-fountain-stage{position:sticky;top:0;height:100vh;display:grid;grid-template-columns:1fr minmax(260px,38vh) 1fr;align-items:center;gap:4vw;padding:0 6vw;overflow:hidden;
 background:radial-gradient(ellipse 50% 60% at 50% 70%,rgba(201,169,106,.12),transparent 70%),linear-gradient(#080807,#0f0e0c)}
.luxe-fountain svg{height:92vh;width:100%;display:block;overflow:visible}
.luxe-fountain .lf-copy{max-width:360px}
.luxe-fountain .lf-copy.lf-right{justify-self:start}
.luxe-fountain .lf-copy:first-child{justify-self:end;text-align:right}
.luxe-fountain .eyebrow{color:var(--lx-gold);letter-spacing:.28em;text-transform:uppercase;font:500 11px/1.4 Jost,sans-serif}
.luxe-fountain h2{font:500 clamp(2rem,4vw,3.4rem)/1.05 "Bodoni Moda",Didot,serif;margin:.4em 0;color:#f5f0e6}
.luxe-fountain h2 em{color:#e2c27c}
.luxe-fountain p{color:#cfc6b4;line-height:1.7;font-size:.95rem}
.lf-meter{font:500 italic clamp(2.4rem,5vw,4rem)/1 "Bodoni Moda",Didot,serif;color:#e2c27c;font-variant-numeric:lining-nums tabular-nums}
.lf-meter small{display:block;font:500 10.5px/1.4 Jost,sans-serif;font-style:normal;letter-spacing:.26em;text-transform:uppercase;color:#a99d86;margin-top:.8em}
.lf-flow{animation:lf-flow .7s linear infinite}
@keyframes lf-flow{to{stroke-dashoffset:-48}}
.lf-wave{animation:lf-wave 2.4s ease-in-out infinite alternate}
@keyframes lf-wave{to{transform:translateX(-40px)}}
@media (max-width:820px){
 .luxe-fountain{height:200vh}
 .luxe-fountain-stage{grid-template-columns:1fr;grid-template-rows:auto 1fr auto;gap:10px;padding:70px 7vw 24px;text-align:center}
 .luxe-fountain .lf-copy,.luxe-fountain .lf-copy:first-child{justify-self:center;text-align:center;max-width:none}
 .luxe-fountain svg{height:58vh}
 .luxe-fountain h2{font-size:1.9rem}
 .luxe-fountain .lf-copy p{display:none}
 .lf-meter{font-size:2rem}
}
@media (prefers-reduced-motion:reduce){
 .brand::after{animation:none;opacity:0}
 .lf-flow,.lf-wave{animation:none}
 .luxe-fountain{height:auto}.luxe-fountain-stage{position:relative;min-height:100vh}
 html.luxe-in::after{content:none}
}
