/* ============================================================ LUXORA — homepage ============================================================ */
.hero{position:relative;height:min(88vh,760px);overflow:hidden;background:var(--raise)}
.hero-slide{position:absolute;inset:0;opacity:0;transition:opacity 1.1s ease;display:grid;place-items:center}
.hero-slide.on{opacity:1}
.hero-slide img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero-slide::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.5),rgba(0,0,0,.15) 60%,transparent)}
.hero-content{position:relative;z-index:2;max-width:var(--wrap);width:100%;margin:0 auto;padding:0 28px;color:#fff}
.hero-content .eyebrow{color:#f0e4cf}
.hero-content h1{font-size:clamp(2.6rem,6vw,5rem);color:#fff;margin:14px 0 18px;max-width:16ch}
.hero-content p{font-size:1.1rem;max-width:42ch;margin-bottom:30px;color:#f2f2f2}
.hero-dots{position:absolute;bottom:26px;left:50%;transform:translateX(-50%);display:flex;gap:10px;z-index:3}
.hero-dots button{width:34px;height:4px;border-radius:2px;background:rgba(255,255,255,.4)}
.hero-dots button.on{background:#fff}
.hero-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:3;width:52px;height:52px;border-radius:50%;background:rgba(255,255,255,.14);display:grid;place-items:center;backdrop-filter:blur(4px)}
.hero-arrow:hover{background:rgba(255,255,255,.28)}
.hero-arrow svg{width:22px;height:22px;stroke:#fff;fill:none;stroke-width:2}
.hero-arrow.prev{left:22px}.hero-arrow.next{right:22px}
@media(max-width:700px){.hero-arrow{display:none}}

/* category strip */
.cat-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
@media(max-width:820px){.cat-strip{grid-template-columns:repeat(2,1fr)}}
.cat-tile{position:relative;border-radius:var(--radius-lg);overflow:hidden;aspect-ratio:3/4;display:grid;place-items:end;cursor:pointer}
.cat-tile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s}
.cat-tile:hover img{transform:scale(1.06)}
.cat-tile::after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 40%,rgba(0,0,0,.6))}
.cat-tile b{position:relative;z-index:2;color:#fff;font-family:var(--serif);font-size:1.4rem;padding:20px;width:100%}
.cat-tile b small{display:block;font-family:var(--sans);font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;opacity:.85;margin-top:4px}

/* sale banner */
.sale-banner{position:relative;border-radius:var(--radius-lg);overflow:hidden;min-height:340px;display:grid;place-items:center;text-align:center}
.sale-banner img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.sale-banner::after{content:"";position:absolute;inset:0;background:rgba(0,0,0,.42)}
.sale-inner{position:relative;z-index:2;color:#fff;padding:40px}
.sale-inner h2{font-size:clamp(2rem,5vw,3.4rem);color:#fff;margin-bottom:14px}
.sale-inner p{margin-bottom:24px;font-size:1.05rem}

/* values row */
.val-row{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;max-width:900px;margin:0 auto}
@media(max-width:820px){.val-row{grid-template-columns:1fr;max-width:420px}}
.val{text-align:center;padding:26px 18px}
.val svg{width:34px;height:34px;stroke:var(--gold);fill:none;stroke-width:1.5;margin:0 auto 14px}
.val b{display:block;font-family:var(--serif);font-size:1.1rem;margin-bottom:6px}
.val p{font-size:.85rem;color:var(--ink-soft)}

/* instagram */
.ig-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}
@media(max-width:820px){.ig-grid{grid-template-columns:repeat(3,1fr)}}
.ig-grid a{position:relative;aspect-ratio:1;border-radius:12px;overflow:hidden}
.ig-grid img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.ig-grid a:hover img{transform:scale(1.1)}
