/* =========================================================
   MIKHAIL V13.11.18.3 — UNIVERSAL RESPONSIVE ARCHITECTURE
   Fluid layout layer for 2160 desktop through mobile.
   Preserves V13.11.18.2 candle catalogue image reduction.
   ========================================================= */
:root{
 --mk3-max:1680px;
 --mk3-gutter:clamp(14px,3vw,56px);
 --mk3-space:clamp(30px,4.5vw,72px);
 --mk3-gap:clamp(10px,1.25vw,20px);
}
html{width:100%;overflow-x:hidden;-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{width:100%;min-width:0;overflow-x:hidden}
*,*::before,*::after{box-sizing:border-box;min-width:0}
img,video,svg,canvas,iframe{max-width:100%;height:auto}
input,select,textarea,button{max-width:100%}

/* Universal containers */
.wrap,.v13-shell,.hv-wrap,.signature-page,
.checkout-final .checkout-shell{
 width:min(calc(100% - (var(--mk3-gutter) * 2)),var(--mk3-max))!important;
 max-width:var(--mk3-max)!important;margin-inline:auto!important;
}

/* Prevent fixed-width media from forcing horizontal scrolling */
.card-media,.media,.visual,figure,.hero-video,.v13-film-shell,.candle-film{max-width:100%!important;overflow:hidden}
.card-media img,.media img,figure img{display:block;max-width:100%}

/* Fluid typography */
h1{font-size:clamp(38px,4.1vw,76px)}
h2{font-size:clamp(30px,3.1vw,56px)}
h3{font-size:clamp(19px,1.55vw,28px)}
p,li,label,input,select,textarea,button{font-size:clamp(13px,.22vw + 11px,16px)}

/* Main catalogues: 4 columns on standard desktop, 5 only when genuinely wide. */
.collection-page .product-grid,
.candle-maison .candle-showcase{
 display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:var(--mk3-gap)!important;
}
@media (min-width:1800px){
 .collection-page .product-grid,.candle-maison .candle-showcase{grid-template-columns:repeat(5,minmax(0,1fr))!important}
}

/* Candle catalogue correction retained from V13.11.18.2. */
.candle-maison .candle-showcase .visual{
 width:50%!important;max-width:50%!important;height:auto!important;aspect-ratio:1/1.05!important;
 margin-inline:auto!important;overflow:hidden!important;
}
.candle-maison .candle-showcase .visual img{width:100%!important;height:100%!important;object-fit:cover!important}
.candle-maison .size-prices{display:flex!important;flex-wrap:wrap!important;gap:7px!important}

/* Responsive grids */
@media (max-width:1500px){
 :root{--mk3-max:1400px}
}
@media (max-width:1250px){
 .collection-page .product-grid,.candle-maison .candle-showcase,.collection-page .coming-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
 .signature-page .signature-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media (max-width:1050px){
 .maison-home .v13-hero,.candle-maison .candle-hero,.private-label-page .hero,
 .house-v12 .hv-grid2,.house-v12 .hv-love-grid,.candle-maison .candle-lifestyle,
 .private-label-concept,.checkout-final .checkout-shell{grid-template-columns:1fr!important}
 .checkout-final .checkout-summary{position:static!important;top:auto!important}
 .maison-home .v13-film-shell,.candle-maison .candle-film,.private-label-page .hero-video{width:min(100%,720px)!important;margin-inline:auto!important}
 .collections-landing .grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .private-label-capabilities .cap-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media (max-width:860px){
 .collection-page .product-grid,.candle-maison .candle-showcase,.collection-page .coming-grid,.signature-page .signature-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .collection-future-feature{grid-template-columns:1fr!important}
 .candle-maison .candle-showcase .visual{width:60%!important;max-width:60%!important}
}
@media (max-width:620px){
 :root{--mk3-gutter:14px;--mk3-space:32px}
 .collection-page .product-grid,.candle-maison .candle-showcase,.collection-page .coming-grid,
 .signature-page .signature-grid,.collections-landing .grid,.private-label-capabilities .cap-grid{grid-template-columns:1fr!important}
 .candle-maison .candle-showcase .visual{width:65%!important;max-width:65%!important}
 .private-label-concept .steps-mini{grid-template-columns:1fr!important}
}

/* Header/nav safety: no page should be widened by long navigation labels. */
header,nav{max-width:100%}
nav{min-width:0}
@media (max-width:1100px){
 header nav{gap:clamp(6px,1vw,12px)!important}
 header nav a{font-size:clamp(9px,.9vw,12px)!important;white-space:nowrap}
}

/* Forms / checkout */
.checkout-final input,.checkout-final select,.checkout-final textarea,
.private-label-page input,.private-label-page select,.private-label-page textarea{width:100%;min-width:0}
.checkout-final .checkout-summary{max-width:100%}

/* House imagery stays proportional and never overflows. */
.house-v12 .hv-love-media{width:100%;max-width:100%;overflow:hidden}
.house-v12 .hv-love-media img{width:100%!important;height:100%!important;object-fit:cover!important}

/* =========================================================
   MIKHAIL V13.11.20.7 — NAVIGATION READABILITY ONLY
   Increases desktop/laptop tab text without altering header,
   logo, spacing architecture, mobile menu, or site logic.
   ========================================================= */
@media (min-width:1101px){
  .nav-side{
    font-size:12px!important;
    letter-spacing:.105em!important;
  }
}
@media (min-width:851px) and (max-width:1100px){
  .nav-side{
    font-size:11px!important;
    letter-spacing:.10em!important;
  }
}
