/* Storefront visual upgrade — additive, loaded after style.css on the customer pages only */
:root{--gold-grad:linear-gradient(135deg,#F3DC8A 0%,#D4AF37 45%,#A8801F 100%);}
html{scroll-behavior:smooth;}
::selection{background:var(--gold);color:#111;}

/* announcement + header */
.announce-bar{background:var(--gold-grad);color:#2A1F05;font-weight:600;font-size:.78rem;letter-spacing:.04em;text-align:center;padding:9px 14px;}
.site-header{background:rgba(10,10,10,.72);backdrop-filter:blur(14px) saturate(140%);-webkit-backdrop-filter:blur(14px) saturate(140%);transition:box-shadow .3s,background .3s;}
.site-header.scrolled{background:rgba(10,10,10,.93);box-shadow:0 8px 30px rgba(0,0,0,.5);}
.site-header.scrolled .header-inner{padding-top:10px;padding-bottom:10px;}
.header-inner{transition:padding .3s;}
.logo{font-size:1.55rem;letter-spacing:.01em;}
.logo span{background:var(--gold-grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;}
.main-nav a{position:relative;padding:6px 0;letter-spacing:.04em;}
.main-nav a::after{content:"";position:absolute;left:0;bottom:0;height:2px;width:0;background:var(--gold-grad);transition:width .3s;}
.main-nav a:hover::after,.main-nav a.active-link::after{width:100%;}
.cart-btn:hover{transform:scale(1.1);}

/* buttons */
.btn{position:relative;overflow:hidden;transition:transform .2s,box-shadow .3s,filter .2s;}
.btn:hover{transform:translateY(-2px);}
.btn-gold{background:var(--gold-grad);box-shadow:0 6px 20px rgba(212,175,55,.28);}
.btn-gold:hover{box-shadow:0 10px 28px rgba(212,175,55,.45);}
.btn-gold::after{content:"";position:absolute;top:0;left:-120%;width:60%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.45),transparent);transform:skewX(-20deg);transition:left .6s;}
.btn-gold:hover::after{left:140%;}

/* hero */
.hero-slide{min-height:78vh;position:relative;}
.hero-slide::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 50% 110%,rgba(212,175,55,.22),transparent 60%);pointer-events:none;}
.hero-inner{position:relative;z-index:1;}
.eyebrow{display:inline-block;padding:6px 16px;border:1px solid rgba(212,175,55,.5);border-radius:999px;text-transform:uppercase;font-weight:600;background:rgba(0,0,0,.25);backdrop-filter:blur(4px);}
.hero h1{font-size:clamp(2.2rem,5.4vw,3.8rem);line-height:1.12;background:linear-gradient(180deg,#fff 40%,#EBD58A);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;}
.hero-inner>*{animation:fxUp .9s cubic-bezier(.22,1,.36,1) both;}
.hero-inner>*:nth-child(2){animation-delay:.12s}.hero-inner>*:nth-child(3){animation-delay:.24s}.hero-inner>*:nth-child(4){animation-delay:.36s}
.hero-dot{transition:all .3s;}.hero-dot.active{width:28px;border-radius:999px;background:var(--gold-grad);}
@keyframes fxUp{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}

/* ticker */
.fx-ticker{overflow:hidden;background:#0F0F0F;border-block:1px solid rgba(212,175,55,.25);padding:14px 0;}
.fx-ticker-track{display:flex;gap:48px;width:max-content;animation:fxScroll 32s linear infinite;}
.fx-ticker span{color:var(--gold-soft);font-family:'Playfair Display',serif;font-size:.95rem;letter-spacing:.14em;text-transform:uppercase;white-space:nowrap;}
.fx-ticker span::after{content:"◆";margin-left:48px;color:var(--gold);font-size:.6rem;vertical-align:middle;}
@keyframes fxScroll{to{transform:translateX(-50%)}}

/* section headings */
.section-head h2{font-size:clamp(1.8rem,3.4vw,2.5rem);}
.section-head::after{content:"◆";display:block;margin:12px auto 0;color:var(--gold);font-size:.7rem;letter-spacing:.5em;background:linear-gradient(90deg,transparent,var(--gold) 20%,transparent 40%) bottom/100% 1px no-repeat;padding-bottom:14px;max-width:220px;text-indent:.5em;}

/* categories */
.category-card{transition:transform .4s cubic-bezier(.22,1,.36,1),box-shadow .4s,border-color .3s;}
.category-card img{transition:transform .7s cubic-bezier(.22,1,.36,1);}
.category-card:hover{transform:translateY(-6px);border-color:var(--gold);box-shadow:0 18px 40px rgba(0,0,0,.55),0 0 0 1px rgba(212,175,55,.35);}
.category-card:hover img{transform:scale(1.1);}
.category-card .overlay-label{font-family:'Playfair Display',serif;font-size:1.05rem;background:linear-gradient(to top,rgba(0,0,0,.85),transparent 65%);}

/* product cards */
.product-card{position:relative;transition:transform .4s cubic-bezier(.22,1,.36,1),box-shadow .4s,border-color .3s;}
.product-card:hover{transform:translateY(-6px);border-color:rgba(212,175,55,.6);box-shadow:0 20px 44px rgba(0,0,0,.55),0 0 28px rgba(212,175,55,.12);}
.product-thumb{position:relative;}
.product-thumb img{transition:transform .7s cubic-bezier(.22,1,.36,1);}
.product-card:hover .product-thumb img{transform:scale(1.08);}
.product-thumb::after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 40%,rgba(255,255,255,.14) 50%,transparent 60%);transform:translateX(-100%);transition:transform .8s;}
.product-card:hover .product-thumb::after{transform:translateX(100%);}
.product-name{font-family:'Playfair Display',serif;font-size:1.02rem;}
.price-now{color:var(--gold-soft);font-size:1.05rem;}

/* promo + about + testimonials + newsletter */
.promo-card{background-size:100%;transition:background-size .8s cubic-bezier(.22,1,.36,1),transform .4s,box-shadow .4s;border:1px solid var(--border);}
.promo-card:hover{background-size:112%;transform:translateY(-4px);box-shadow:0 20px 44px rgba(0,0,0,.5);}
.about{background:radial-gradient(ellipse at 15% 0%,rgba(212,175,55,.09),transparent 55%),linear-gradient(180deg,#0E0E0E,#0A0A0A);}
.about-stats strong{font-family:'Playfair Display',serif;font-size:2.4rem;background:var(--gold-grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;}
.testimonial-card{background:linear-gradient(160deg,rgba(255,255,255,.05),rgba(255,255,255,.015));border:1px solid rgba(212,175,55,.2);transition:transform .4s,border-color .3s,box-shadow .4s;}
.testimonial-card:hover{transform:translateY(-5px);border-color:rgba(212,175,55,.55);box-shadow:0 18px 40px rgba(0,0,0,.45);}
.stars{color:var(--gold);letter-spacing:.2em;}
.newsletter{background:radial-gradient(ellipse at 50% 0%,rgba(212,175,55,.2),transparent 65%),#0C0C0C;border-block:1px solid rgba(212,175,55,.2);}
.newsletter-form input{border-radius:999px;padding-left:20px;}
.newsletter-form .btn{border-radius:999px;}
.site-footer{border-top:1px solid rgba(212,175,55,.25);}

/* scroll reveal (class added by JS, so content never hides if JS fails) */
.fx-reveal{opacity:0;transform:translateY(34px);transition:opacity .8s cubic-bezier(.22,1,.36,1),transform .8s cubic-bezier(.22,1,.36,1);transition-delay:var(--d,0s);}
.fx-reveal.in{opacity:1;transform:none;}

/* back to top */
.fx-top{position:fixed;right:20px;bottom:22px;width:46px;height:46px;border-radius:50%;border:1px solid rgba(212,175,55,.5);background:rgba(10,10,10,.85);color:var(--gold);font-size:1.1rem;cursor:pointer;opacity:0;pointer-events:none;transform:translateY(12px);transition:all .3s;z-index:35;}
.fx-top.show{opacity:1;pointer-events:auto;transform:none;}
.fx-top:hover{background:var(--gold);color:#111;}

@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;}.fx-reveal{opacity:1;transform:none;}}
