/* ========================================================================
   VAPE LAB — Hero + Category Tiles (matched to home-hero.html reference)
   ======================================================================== */
.vl-hero-wrap{background:var(--ink)}
.vl-hero{max-width:var(--content-max);margin:0 auto;padding:80px 20px 60px;text-align:center}
.vl-hero h1{font-family:var(--font-h);font-size:var(--fs-hero);font-weight:700;line-height:1.1;letter-spacing:-.02em;margin-bottom:14px;color:#fff}
.vl-hero p{font-size:var(--fs-body);color:var(--muted);max-width:520px;margin:0 auto 30px;line-height:1.5}
.vl-hero .vl-btn{display:inline-block;padding:12px 28px;background:var(--accent-action);color:#fff;text-decoration:none;font-family:var(--font-h);font-size:var(--fs-btn);font-weight:700;letter-spacing:.06em;text-transform:uppercase;border:none;cursor:pointer;border-radius:var(--r-btn);transition:background .2s}
.vl-hero .vl-btn:hover{background:var(--accent-hover)}

/* Category tiles */
.vl-category-tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;max-width:var(--content-max);margin:0 auto;padding:0 20px 72px;background:var(--ink)}
.vl-category-tile{aspect-ratio:3/2;border-radius:8px;display:flex;flex-direction:column;justify-content:flex-end;padding:22px 20px;cursor:pointer;position:relative;overflow:hidden;transition:transform .3s cubic-bezier(.22,1,.36,1);text-decoration:none}
.vl-category-tile:hover{transform:scale(1.02)}
.vl-category-tile h3{font-family:var(--font-h);font-size:var(--fs-h3);font-weight:700;color:#fff;margin-bottom:2px}
.vl-category-tile span{font-size:var(--fs-small);color:rgba(255,255,255,.6);text-transform:uppercase;letter-spacing:.06em}
.vl-category-tile--diy{background:oklch(.32 .035 45)}
.vl-category-tile--liquids{background:oklch(.28 .05 25)}
.vl-category-tile--gear{background:oklch(.30 .02 65)}

/* Featured products */
.vl-featured-products{padding:60px 0;max-width:none;margin:0;background:var(--neutral)}
.vl-featured-products__container{max-width:var(--content-max);margin:0 auto;padding:0 20px}
.vl-featured-products__heading{font-family:var(--font-h);font-size:var(--fs-h1);font-weight:700;color:var(--ink);margin-bottom:28px}

/* Product grid */
/* DESIGN.md grid contract: 4 cols >1200, 3 cols 769–1200, 2 cols 390–768, 1 col <390 */
.vl-products-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
@media(max-width:1200px){.vl-products-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:768px){.vl-products-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:389px){.vl-products-grid{grid-template-columns:1fr}}

@media(max-width:700px){.vl-category-tiles{grid-template-columns:1fr}}
@media(max-width:480px){.vl-hero{padding:60px 20px 40px}}

@media(prefers-reduced-motion:reduce){
  .vl-category-tile,.vl-category-tile:hover{transition:none;transform:none}
}
