
/* =========================================================
   MIKHAIL V13.11.18.1 — GLOBAL RESPONSIVE LAYOUT SYSTEM
   Fluid site-wide proportions. Not device-specific.
   ========================================================= */

:root{
  --mk-page-gutter:clamp(16px,3.2vw,58px);
  --mk-content-max:1680px;
  --mk-reading-max:760px;
  --mk-section-space:clamp(36px,5vw,76px);
  --mk-card-gap:clamp(10px,1.2vw,18px);
}

*,*::before,*::after{box-sizing:border-box}

html{
  -webkit-text-size-adjust:100%;
  text-size-adjust:100%;
}

body{
  overflow-x:hidden;
}

img,video{
  max-width:100%;
}

img{
  height:auto;
}

/* A single fluid content system across the whole website. */
.wrap,
.v13-shell,
.hv-wrap{
  width:min(calc(100% - (var(--mk-page-gutter) * 2)),var(--mk-content-max))!important;
  max-width:var(--mk-content-max)!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

/* Prevent wide displays from stretching editorial layouts indefinitely. */
.v13-hero,
.candle-hero,
.private-label-page .hero{
  width:min(calc(100% - (var(--mk-page-gutter) * 2)),var(--mk-content-max))!important;
  max-width:var(--mk-content-max)!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

/* Fluid base type: remains readable instead of shrinking visually on high-resolution screens. */
body{
  font-size:clamp(14px,0.18vw + 11.5px,17px);
}

p,
li,
input,
select,
textarea,
button{
  font-size:clamp(13px,0.12vw + 11.5px,16px);
}

.page-hero h1,
.v13-hero-copy h1,
.candle-copy h1,
.private-label-page .hero-copy h1{
  font-size:clamp(42px,4.4vw,76px)!important;
  line-height:.98!important;
}

.page-hero p,
.v13-hero-copy p,
.candle-copy p,
.private-label-page .hero-copy p{
  max-width:var(--mk-reading-max);
}

/* =========================================================
   HOME
   ========================================================= */
.maison-home .v13-hero{
  grid-template-columns:minmax(0,1.05fr) minmax(320px,.82fr)!important;
  gap:clamp(28px,4vw,72px)!important;
  min-height:auto!important;
}

.maison-home .v13-hero-copy{
  padding:clamp(46px,6vw,92px) 0!important;
}

.maison-home .v13-film-shell{
  min-width:0;
}

.maison-home .v13-film,
.maison-home .v13-film video,
.maison-home .v13-film img{
  width:100%!important;
  max-width:100%!important;
  height:auto!important;
  aspect-ratio:4/5;
  object-fit:cover!important;
}

.maison-home .v13-manifesto,
.maison-home .v13-close{
  padding-top:var(--mk-section-space)!important;
  padding-bottom:var(--mk-section-space)!important;
}

/* =========================================================
   COLLECTIONS
   ========================================================= */
.collections-landing .grid{
  gap:var(--mk-card-gap)!important;
}

.collections-landing .card-media{
  aspect-ratio:1/1.08;
  overflow:hidden;
}

.collections-landing .card-media img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}

.collection-future-feature{
  width:100%;
  grid-template-columns:minmax(280px,38%) minmax(0,1fr)!important;
  min-height:clamp(260px,30vw,410px)!important;
}

.collection-future-feature .future-media{
  min-height:clamp(260px,30vw,410px)!important;
}

/* =========================================================
   PERFUMES
   ========================================================= */
.collection-page .product-grid{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:var(--mk-card-gap)!important;
}

.collection-page .product-grid .card-media{
  width:100%;
  aspect-ratio:1/1.05!important;
  height:auto!important;
}

.collection-page .product-grid .card-media img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}

.collection-page .coming-grid{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:var(--mk-card-gap)!important;
}

/* =========================================================
   CANDLES
   ========================================================= */
.candle-maison .candle-hero{
  grid-template-columns:minmax(0,1.05fr) minmax(300px,.75fr)!important;
  gap:clamp(24px,3.6vw,64px)!important;
  min-height:auto!important;
}

.candle-maison .candle-copy{
  padding:clamp(42px,5vw,82px)!important;
}

.candle-maison .candle-film{
  padding:clamp(20px,3vw,38px)!important;
  max-height:none!important;
}

.candle-maison .candle-film video{
  width:min(100%,430px)!important;
  height:auto!important;
  aspect-ratio:4/5;
  object-fit:cover!important;
}

.candle-maison .candle-showcase{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:var(--mk-card-gap)!important;
}

.candle-maison .candle-showcase .visual{
  width:100%;
  height:auto!important;
  aspect-ratio:1/1.05!important;
}

.candle-maison .candle-showcase .visual img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}

.candle-maison .candle-lifestyle{
  grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr)!important;
  gap:var(--mk-card-gap)!important;
  margin-top:clamp(34px,4vw,58px)!important;
  margin-bottom:clamp(28px,4vw,52px)!important;
}

.candle-maison .candle-lifestyle figure,
.candle-maison .candle-lifestyle .copy{
  min-height:clamp(300px,31vw,430px)!important;
  height:auto!important;
}

.candle-maison .candle-lifestyle figure img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}

.candle-maison .closing{
  padding-top:clamp(38px,4vw,58px)!important;
  padding-bottom:clamp(42px,4.5vw,66px)!important;
}

/* Restored candle size/price chips. */
.candle-maison .size-prices{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:7px!important;
  margin:9px 0 10px!important;
}
.candle-maison .size-prices span{
  display:inline-flex!important;
  align-items:center;
  min-height:28px;
  border:1px solid rgba(215,179,106,.28);
  padding:6px 9px;
  color:#d9c6a5;
  font-size:clamp(9px,.6vw,11px)!important;
  letter-spacing:.05em;
}

/* =========================================================
   SIGNATURE EDITION
   ========================================================= */
.signature-page{
  width:min(calc(100% - (var(--mk-page-gutter) * 2)),var(--mk-content-max));
  margin-left:auto;
  margin-right:auto;
}

.signature-page .signature-grid{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:var(--mk-card-gap)!important;
}

.signature-page .signature-card .media{
  width:100%;
  height:auto!important;
  aspect-ratio:1/1.12!important;
}

.signature-page .signature-card .media img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}

/* =========================================================
   THE HOUSE
   ========================================================= */
.house-v12{
  overflow:hidden;
}

.house-v12 .hv-grid2,
.house-v12 .hv-love-grid{
  gap:clamp(24px,3.4vw,58px)!important;
}

.house-v12 .hv-hero{
  min-height:auto!important;
}

.house-v12 .hv-love-media{
  height:clamp(440px,48vw,610px)!important;
  max-height:610px!important;
  overflow:hidden;
}

.house-v12 .hv-love-media img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center 56%!important;
}

.house-v12 .hv-timeline,
.house-v12 .hv-pillars,
.house-v12 .hv-details{
  gap:var(--mk-card-gap)!important;
}

/* =========================================================
   PRIVATE LABEL
   ========================================================= */
.private-label-page .hero{
  grid-template-columns:minmax(0,1fr) minmax(320px,.78fr)!important;
  gap:clamp(28px,4vw,72px)!important;
  min-height:auto!important;
}

.private-label-page .hero-copy{
  padding:clamp(46px,6vw,88px)!important;
}

.private-label-page .hero-video{
  min-width:0;
}

.private-label-page .hero-video img,
.private-label-page .hero-video video{
  width:100%!important;
  height:auto!important;
  max-height:min(70vh,680px);
  object-fit:contain!important;
}

.private-label-capabilities .cap-grid{
  gap:var(--mk-card-gap)!important;
}

.private-label-concept{
  width:min(calc(100% - (var(--mk-page-gutter) * 2)),1180px)!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1.25fr)!important;
  gap:clamp(24px,3.5vw,48px)!important;
}

/* =========================================================
   CONTACT
   ========================================================= */
.contact-page .grid{
  width:min(100%,1120px)!important;
  gap:var(--mk-card-gap)!important;
}

/* =========================================================
   CHECKOUT
   ========================================================= */
.checkout-final .checkout-shell{
  width:min(calc(100% - (var(--mk-page-gutter) * 2)),var(--mk-content-max))!important;
  max-width:var(--mk-content-max)!important;
  margin-left:auto!important;
  margin-right:auto!important;
  grid-template-columns:minmax(0,1.35fr) minmax(300px,.78fr)!important;
  gap:clamp(18px,2vw,30px)!important;
}

.checkout-final .checkout-summary{
  top:clamp(92px,8vw,122px)!important;
}

/* =========================================================
   RESPONSIVE FLOW
   These are content breakpoints, not machine-specific profiles.
   ========================================================= */
@media (max-width:1380px){
  :root{--mk-content-max:1320px}

  .collection-page .product-grid,
  .candle-maison .candle-showcase{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }

  .collection-page .coming-grid{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }

  .private-label-capabilities .cap-grid{
    grid-template-columns:repeat(2,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;
  }

  .maison-home .v13-film-shell,
  .candle-maison .candle-film,
  .private-label-page .hero-video{
    max-width:720px;
    width:100%;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  .house-v12 .hv-love-media{
    height:clamp(420px,72vw,650px)!important;
  }

  .checkout-final .checkout-summary{
    position:static!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;
  }

  .collections-landing .grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }

  .collection-future-feature{
    grid-template-columns:1fr!important;
  }

  .private-label-concept .steps-mini{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

@media (max-width:620px){
  :root{
    --mk-page-gutter:14px;
    --mk-section-space:34px;
  }

  .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;
  }

  .maison-home .v13-hero-copy,
  .candle-maison .candle-copy,
  .private-label-page .hero-copy{
    padding:36px 4px!important;
  }

  .house-v12 .hv-love-media{
    height:clamp(380px,112vw,560px)!important;
  }

  .private-label-concept .steps-mini{
    grid-template-columns:1fr 1fr!important;
  }
}

/* Extra-wide displays keep scaling type/content but never stretch indefinitely. */
@media (min-width:1900px){
  :root{--mk-content-max:1740px}
  body{font-size:17px}
}

/* V13.11.18.2 — candle catalogue image display reduced by 50% */
.candle-maison .candle-showcase .visual{
 width:50%!important; max-width:50%!important; height:auto!important;
 aspect-ratio:1/1.05!important; margin-left:auto!important; margin-right:auto!important;
 overflow:hidden!important;
}
.candle-maison .candle-showcase .visual img{
 width:100%!important; height:100%!important; object-fit:cover!important;
}
@media(max-width:620px){
 .candle-maison .candle-showcase .visual{width:65%!important;max-width:65%!important;}
}
