/* Velmora layout variants: hero types, product card styles, category styles and heading alignment.
   Loaded after store-demos.css on the niche home template. Uses logical properties so the RTL twin stays correct. */

/* ---------- Section headings: centered in boutique / minimal / luxury / showcase ---------- */
.vm-family-boutique .section-head,.vm-family-minimal .section-head,.vm-family-luxury .section-head,.vm-family-showcase .section-head{flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:10px}
.vm-family-boutique .section-head p,.vm-family-minimal .section-head p,.vm-family-luxury .section-head p,.vm-family-showcase .section-head p{margin-inline:auto;max-width:640px}

/* ---------- Hero: split (flip for magazine) ---------- */
.hero-split.hero-flip .hero-product-stage{order:-1}

/* ---------- Hero: centered ---------- */
.hero-centered{padding:64px 0 48px;text-align:center}
.hero-centered .hv-copy{max-width:880px;margin-inline:auto}
.hero-centered .hv-copy h1,.hero-centered .hv-copy p{margin-inline:auto}
.hero-centered .hv-copy h1{font-size:clamp(38px,4.6vw,62px);line-height:1.02;margin-block:18px}
.hero-centered .hv-copy p{font-size:17px}
.hero-centered .hero-actions,.hero-centered .store-trust{justify-content:center}
.hero-centered .hv-row{display:grid;grid-template-columns:1.6fr 1fr;gap:16px;margin-top:34px;text-align:start}
.hv-media{margin:0;border-radius:30px;overflow:hidden;min-height:320px;max-height:400px;background:linear-gradient(145deg,var(--demo-accent),#fff);box-shadow:0 30px 80px rgba(0,0,0,.08)}
.hv-media img{display:block;width:100%;height:100%;min-height:320px;max-height:400px;object-fit:cover}
.hv-cards{display:grid;gap:20px;grid-template-rows:1fr 1fr}
.hv-card{background:#fff;border:1px solid rgba(0,0,0,.07);border-radius:24px;padding:26px;display:flex;flex-direction:column;justify-content:flex-end;box-shadow:0 18px 50px rgba(0,0,0,.07)}
.hv-card span{font-size:12px;text-transform:uppercase;letter-spacing:.12em;font-weight:800;opacity:.6}
.hv-card strong{font-size:26px;line-height:1.1;margin:8px 0}
.hv-card small{color:#777}

/* ---------- Hero: overlay (full-bleed image with a floating copy card) ---------- */
.hero-overlay{position:relative;padding:0;min-height:600px;display:flex;align-items:center;background:var(--demo-accent)}
.hero-overlay .hv-bg{position:absolute;inset:0}
.hero-overlay .hv-bg img{display:block;width:100%;height:100%;object-fit:cover}
.hero-overlay .hv-bg:after{content:"";position:absolute;inset:0;background:linear-gradient(to right,rgba(0,0,0,.42),rgba(0,0,0,.04) 70%)}
.hero-overlay .hv-overlay-inner{position:relative;z-index:2;padding-block:72px;display:flex;flex-direction:column;gap:26px;align-items:flex-start}
.hero-overlay .hv-panel{max-width:600px;background:rgba(255,255,255,.93);border-radius:28px;padding:44px;box-shadow:0 30px 80px rgba(0,0,0,.22)}
.hero-overlay .hv-panel h1{font-size:clamp(38px,4.6vw,62px);margin:18px 0}
.hv-chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px}
.hv-chips li{padding:9px 14px;border-radius:999px;background:rgba(255,255,255,.93);font-size:12px;font-weight:800}

/* ---------- Hero: mega (category rail + feature + promo cards) ---------- */
.hero-mega{padding:36px 0 44px}
.hv-mega{display:grid;grid-template-columns:230px minmax(0,1fr) 250px;gap:18px;align-items:stretch}
.hv-cats{background:#fff;border:1px solid #e6e6e6;border-radius:22px;padding:18px;display:flex;flex-direction:column}
.hv-cats strong{font-size:12px;letter-spacing:.12em;text-transform:uppercase;opacity:.55;margin:4px 8px 10px}
.hv-cats a{padding:11px 10px;border-radius:12px;font-weight:700;font-size:14px;display:flex;justify-content:space-between;gap:10px}
.hv-cats a:after{content:"\203A";opacity:.4}
.rtl .hv-cats a:after{display:inline-block;transform:scaleX(-1)}
.hv-cats a:hover{background:var(--demo-soft)}
.hv-main{position:relative;border-radius:26px;overflow:hidden;min-height:440px;background:linear-gradient(145deg,var(--demo-accent),#fff);display:flex;align-items:flex-end}
.hv-main-bg,.hv-main-bg img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hv-main-bg:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.66),rgba(0,0,0,.02) 65%)}
.hv-main-copy{position:relative;z-index:2;padding:34px;color:#fff}
.hv-main-copy h1{font-size:clamp(32px,3.6vw,50px);margin:14px 0;color:#fff}
.hv-main-copy p{color:rgba(255,255,255,.88);font-size:16px}
.hv-main-copy .eyebrow{background:rgba(255,255,255,.16);color:#fff;border-color:rgba(255,255,255,.3)}
.hv-main-copy .btn-secondary{background:#fff;color:#171717}
.hv-side{display:grid;gap:18px;grid-template-rows:1fr 1fr}

/* ---------- Categories: pills and rows ---------- */
.category-pills{display:flex;flex-wrap:wrap;gap:12px}
.category-pill{display:inline-flex;flex-direction:column;padding:16px 26px;border-radius:999px;border:1px solid #e3e3e3;background:#fff;min-width:170px;transition:.2s}
.category-pill:hover{background:var(--demo-soft);transform:translateY(-2px)}
.category-pill span{font-weight:850;font-size:17px}
.category-pill small{color:#888;font-size:12px}
.category-rows{display:grid;border-top:1px solid #e5e5e5}
.category-row{display:grid;grid-template-columns:54px 1fr auto;align-items:center;gap:16px;padding:22px 6px;border-bottom:1px solid #e5e5e5;transition:.2s}
.category-row:hover{background:var(--demo-soft);padding-inline:18px}
.category-row b{font-size:12px;opacity:.45}
.category-row span{font-size:26px;font-weight:850;letter-spacing:-.03em}
.category-row em{font-style:normal;opacity:.5;font-size:20px}
.rtl .category-row em{display:inline-block;transform:scaleX(-1)}

/* ---------- Product cards ----------
   Grid columns are scoped with the article class (.store-demo.vm-card-*) so they outrank the per-family grid rules in
   store-demos.css, and the breakpoints are repeated here for the same reason. */
.store-demo.vm-card-compact .product-placeholder-grid{grid-template-columns:repeat(5,1fr);gap:12px}
.store-demo.vm-card-minimal .product-placeholder-grid{grid-template-columns:repeat(3,1fr);gap:28px}
.store-demo.vm-card-list .product-placeholder-grid{grid-template-columns:repeat(2,1fr)}
.store-demo.vm-card-overlay .product-placeholder-grid{grid-template-columns:repeat(4,1fr);gap:16px}
.pc-compact .product-placeholder{padding:10px;border-radius:14px}
.pc-compact .product-placeholder h3{font-size:14px;margin-bottom:10px}
.pc-compact .product-art{aspect-ratio:1/1;margin-bottom:10px;padding:10px}
.pc-minimal .product-placeholder{border:0;background:transparent;padding:0}
.pc-minimal .product-art{aspect-ratio:3/4;border-radius:4px}
.pc-minimal .product-placeholder h3{font-size:15px;font-weight:600}
.pc-list .product-placeholder,.pc-list .product-placeholder>a{display:grid;grid-template-columns:140px 1fr;column-gap:18px;align-content:center;align-items:center}
.pc-list .product-placeholder.real-product{display:block}
.pc-list .product-art{grid-row:1/span 3;margin:0;aspect-ratio:1/1}
.pc-list .product-placeholder h3{margin:4px 0 10px}
.pc-overlay .product-placeholder{padding:0;overflow:hidden;border:0;border-radius:22px;background:#111}
.pc-overlay .product-art{position:relative;aspect-ratio:3/4;margin:0;border-radius:0}
.pc-overlay .product-art:after{content:"";position:absolute;inset:auto 0 0 0;height:60%;background:linear-gradient(to top,rgba(0,0,0,.78),transparent);pointer-events:none}
.pc-overlay .product-art img{width:100%;height:100%;object-fit:cover}
.pc-overlay .product-placeholder small{position:relative;z-index:1;display:block;margin-top:-84px;padding:0 16px;color:rgba(255,255,255,.78)}
.pc-overlay .product-placeholder h3{position:relative;z-index:1;padding:0 16px;color:#fff;margin:4px 0 8px}
.pc-overlay .price-line{position:relative;z-index:1;padding:0 16px 16px;color:#fff}
.pc-overlay .price-line *{color:#fff}
/* ---------- Responsive ---------- */
@media(max-width:1024px){
	.hv-mega{grid-template-columns:1fr 1fr}
	.hv-mega .hv-main{grid-column:1/-1;order:-1}
	.store-demo.vm-card-compact .product-placeholder-grid,.store-demo.vm-card-overlay .product-placeholder-grid,.store-demo.vm-card-minimal .product-placeholder-grid{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:800px){
	.hero-centered .hv-row{grid-template-columns:1fr}
	.hero-centered{padding:56px 0 44px}
	.hero-overlay{min-height:0}
	.hero-overlay .hv-overlay-inner{padding-block:40px}
	.hero-overlay .hv-panel{padding:28px}
	.hv-mega{grid-template-columns:1fr}
	.hv-side{grid-template-rows:auto}
	.hv-cats{flex-direction:row;flex-wrap:wrap;gap:6px}
	.hv-cats strong{width:100%}
	.store-demo[class*="vm-card-"] .product-placeholder-grid{grid-template-columns:repeat(2,1fr)}
	.pc-list .product-placeholder,.pc-list .product-placeholder>a{grid-template-columns:1fr}
	.pc-list .product-art{grid-row:auto;margin-bottom:12px}
	.category-row span{font-size:20px}
	.hero-centered .hv-copy h1{font-size:34px}
}
@media(max-width:520px){
	.store-demo[class*="vm-card-"] .product-placeholder-grid{grid-template-columns:1fr}
	.store-demo.vm-card-compact .product-placeholder-grid{grid-template-columns:repeat(2,1fr)}
}

/* The (hidden) header mega-menu panel extends past the right edge; keep the page from scrolling sideways. */
body[class*="vm-layout-"]{overflow-x:clip}

/* contrast */
.store-demo .category-pill small,.store-demo .category-tile small,.store-demo .product-placeholder small,.store-demo .category-row b{color:#6b6b6b}
/* contrast 2 */
.store-demo .service-grid>div strong,.store-demo .promo-grid article strong,.store-demo .testimonial-grid cite,.store-demo .hv-cats strong{color:#6b6b6b}
.store-demo .service-grid>div p,.store-demo .promo-grid article p,.store-demo .hv-card small{color:#666}
