/* ME-LIPS v10.7.9 — unified editorial type system.
   Appended LAST on every page, to resolve competing legacy font rules.
   Headlines: Playfair Display / Georgia fallback. Interface and reading: DM Sans / Arial fallback.
*/
:root {
  --melips-font-editorial: 'Playfair Display', Georgia, 'Times New Roman', serif;
  --melips-font-reading: 'DM Sans', Arial, Helvetica, sans-serif;
  --melips-type-body: 1rem;
  --melips-type-body-mobile: .96875rem;
  --melips-type-h1: clamp(2.6rem, 4.6vw, 4.8rem);
  --melips-type-h2: clamp(2.05rem, 3.45vw, 3.05rem);
  --melips-type-h3: clamp(1.35rem, 2.15vw, 1.875rem);
  --melips-type-card: clamp(1.3rem, 2vw, 1.8rem);
}
html {text-size-adjust:100%; -webkit-text-size-adjust:100%;}
body.ml-v10.v3 {font-family:var(--melips-font-reading); font-size:var(--melips-type-body); line-height:1.65;}
body.ml-v10.v3 main :is(h1,h2,h3,h4,h5,h6) {
  font-family:var(--melips-font-editorial) !important;
  font-weight:400 !important;
  font-style:normal;
  letter-spacing:-.035em !important;
  overflow-wrap:break-word;
}
body.ml-v10.v3 main :is(p,li,a,button,summary,figcaption) {font-family:var(--melips-font-reading) !important;}
body.ml-v10.v3 main h1 {font-size:var(--melips-type-h1) !important;line-height:1.12 !important;}
body.ml-v10.v3 main h2 {font-size:var(--melips-type-h2) !important;line-height:1.18 !important;}
body.ml-v10.v3 main h3 {font-size:var(--melips-type-h3) !important;line-height:1.24 !important;}
body.ml-v10.v3 main :is(p,li) {line-height:1.68;}
/* Keep the intentional magazine-style homepage hero separate from article headings. */
body.ml-v10.v3 main .ml107-campaign h1 {
  font-size:clamp(2.65rem,4.15vw,4.85rem) !important;
  line-height:1.055 !important;
  color:#fffaf6;
}
body.ml-v10.v3 main .ml107-campaign h1 em {font-family:var(--melips-font-editorial) !important;}
/* Interior page banners and long editorial article headings */
body.ml-v10.v3 main .page-banner h1,
body.ml-v10.v3 main .v74-founder-intro h1,
body.ml-v10.v3 main .ml107-guide-hero h1 {
  font-size:clamp(2.5rem,4.4vw,4.3rem) !important;
  line-height:1.14 !important;
  letter-spacing:-.038em !important;
}
body.ml-v10.v3 main .page-banner .lede {font-size:1.0625rem;line-height:1.7;}
/* Homepage: primary sections share a consistent scale. */
body.ml-v10.v3 main :is(.v1075-signature-section,.ml108-editorial-shades,.v3-ritual,.v3-founder,.ml1077-story-feature) h2 {
  font-size:clamp(2.1rem,3.3vw,3.1rem) !important;
  line-height:1.16 !important;
}
body.ml-v10.v3 main :is(.v1075-signature-section,.ml108-editorial-shades,.ml1077-story-feature) :is(.v77-education-lede,.v3-section-intro p,.ml1077-story-copy p,.ml1077-media-copy p) {
  font-size:1rem !important;line-height:1.72 !important;
}
/* The image/video chapter title should be subordinate to the main 4-in-1 heading. */
body.ml-v10.v3 main .ml1077-signature-media :is(h2,h3),
body.ml-v10.v3 main .ml1077-media-copy h3,
body.ml-v10.v3 main .ml1077-story-copy h3 {
  font-family:var(--melips-font-editorial) !important;
  font-size:clamp(1.5rem,2.1vw,2.15rem) !important;
  line-height:1.23 !important;
  letter-spacing:-.03em !important;
}
body.ml-v10.v3 main .v1075-love-block h3 {
  font-size:1.2rem !important;line-height:1.35 !important;
  font-family:var(--melips-font-editorial) !important;letter-spacing:-.02em !important;
}
body.ml-v10.v3 main .v1075-love-list li {font-size:.97rem;line-height:1.62;}
body.ml-v10.v3 main .v1075-use-grid li {font-size:.91rem;line-height:1.4;font-weight:600;}
body.ml-v10.v3 main .v77-steps-detail {font-size:.96rem !important;line-height:1.76 !important;}
body.ml-v10.v3 main .v77-availability {font-size:.8125rem !important;line-height:1.62 !important;}
body.ml-v10.v3 main .ml108-shade-editorial-card h3 {font-size:var(--melips-type-card) !important;line-height:1.24 !important;}
body.ml-v10.v3 main .ml108-shade-editorial-card :is(p,li) {font-size:.95rem;line-height:1.65;}
body.ml-v10.v3 main .ml1077-story-copy h2 {margin-bottom:.65rem;}
body.ml-v10.v3 main :is(.v1075-signature-copy,.ml1077-media-copy,.ml1077-story-copy,.ml108-shade-editorial-card) p {max-width:64ch;}
/* Narrative and legal pages use readable body copy without billboard headings. */
body.ml-v10.v3 main :is(.reading,.content,.article-body,.v74-founder-body,.v77-trans-directions,.v77-trans-shop) :is(p,li) {
  font-family:var(--melips-font-reading) !important;
  font-size:1rem;
  line-height:1.78;
}
body.ml-v10.v3 main .reading h2,
body.ml-v10.v3 main .content h2 {font-size:clamp(1.85rem,3vw,2.6rem) !important;}
body.ml-v10.v3 main .reading h3,
body.ml-v10.v3 main .content h3 {font-size:clamp(1.25rem,2vw,1.75rem) !important;}
/* Buttons: consistent sans typography and enough room for French / Vietnamese. */
body.ml-v10.v3 main :is(.v3-button,.v3-text-button,.ml107-light-btn,.ml107-line-btn,.v1075-amazon-pill,.v77-amazon-text,.btn) {
  font-family:var(--melips-font-reading) !important;
  font-size:.875rem !important;line-height:1.4 !important;letter-spacing:.005em !important;
  font-weight:700 !important;text-wrap:pretty;max-width:100%;
}
/* Keep small supporting copy and footers subordinate, never serif. */
body.ml-v10.v3 :is(.v3-footer,.v72-footer,.v3-header) {font-family:var(--melips-font-reading) !important;}
body.ml-v10.v3 :is(.v3-footer,.v72-footer) h2 {font-family:var(--melips-font-reading) !important;font-size:.75rem !important;letter-spacing:.09em !important;line-height:1.4 !important;font-weight:700 !important;}
body.ml-v10.v3 main :is(.v3-eyebrow,.ml107-mini) {font-family:var(--melips-font-reading) !important;font-size:.7rem !important;line-height:1.5 !important;letter-spacing:.12em !important;}
@media(max-width:800px){
  body.ml-v10.v3 main h1 {font-size:clamp(2.2rem,6.7vw,3.4rem) !important;}
  body.ml-v10.v3 main h2 {font-size:clamp(1.8rem,4.3vw,2.35rem) !important;}
  body.ml-v10.v3 main h3 {font-size:clamp(1.35rem,3.6vw,1.7rem) !important;}
  body.ml-v10.v3 main :is(.v1075-signature-section,.ml108-editorial-shades,.v3-ritual,.v3-founder,.ml1077-story-feature) h2 {
    font-size:clamp(1.9rem,4.5vw,2.35rem) !important;
  }
  body.ml-v10.v3 main .page-banner h1,
  body.ml-v10.v3 main .v74-founder-intro h1 {font-size:clamp(2.2rem,5vw,3.25rem) !important;}
  body.ml-v10.v3 main .ml1077-media-copy h3 {font-size:clamp(1.45rem,3.8vw,1.9rem) !important;}
}
@media(max-width:640px){
  body.ml-v10.v3 {font-size:var(--melips-type-body-mobile);line-height:1.64;}
  body.ml-v10.v3 main h1 {font-size:clamp(2.2rem,8.2vw,2.8rem) !important;line-height:1.14 !important;letter-spacing:-.035em !important;}
  body.ml-v10.v3 main h2,
  body.ml-v10.v3 main :is(.v1075-signature-section,.ml108-editorial-shades,.v3-ritual,.v3-founder,.ml1077-story-feature) h2 {
    font-size:clamp(1.8rem,7.3vw,2.125rem) !important;
    line-height:1.22 !important;letter-spacing:-.03em !important;
  }
  body.ml-v10.v3 main h3 {font-size:clamp(1.3rem,5.7vw,1.55rem) !important;line-height:1.27 !important;}
  body.ml-v10.v3 main .v1075-love-block h3 {font-size:1.15rem !important;}
  body.ml-v10.v3 main .ml1077-media-copy h3,
  body.ml-v10.v3 main .ml1077-story-copy h3 {
    font-size:clamp(1.4rem,5.6vw,1.6rem) !important;line-height:1.25 !important;
  }
  body.ml-v10.v3 main .ml108-shade-editorial-card h3 {font-size:1.48rem !important;}
  body.ml-v10.v3 main .page-banner h1,
  body.ml-v10.v3 main .v74-founder-intro h1 {font-size:clamp(2.1rem,8vw,2.6rem) !important;}
  body.ml-v10.v3 main :is(.v77-education-lede,.ml1077-story-copy p,.ml1077-media-copy p,.v77-steps-detail,.v3-section-intro p){
    font-size:.96875rem !important;line-height:1.68 !important;
  }
  body.ml-v10.v3 main .v1075-love-list li {font-size:.9375rem;line-height:1.62;}
  body.ml-v10.v3 main .v1075-use-grid {gap:.6rem;margin-block:1rem;}
  body.ml-v10.v3 main .v1075-use-grid li {font-size:.875rem;padding:.84rem .85rem;}
  body.ml-v10.v3 main :is(.reading,.content,.article-body,.v74-founder-body) :is(p,li){font-size:.96875rem;line-height:1.72;}
  body.ml-v10.v3 main .v1075-signature-section {padding-block:2.8rem;}
  body.ml-v10.v3 main .v1075-love-block {padding:1rem 1.08rem;}
  body.ml-v10.v3 main .v1075-signature-grid {gap:1.6rem;}
  body.ml-v10.v3 main .ml107-campaign h1 {font-size:clamp(2.4rem,9vw,3rem) !important;line-height:1.075 !important;}
  body.ml-v10.v3 main :is(.v3-button,.v3-text-button,.ml107-light-btn,.ml107-line-btn,.v1075-amazon-pill,.btn) {font-size:.86rem !important;}
}
@media(prefers-reduced-motion:reduce){ html{scroll-behavior:auto;} }
/* Align the footer typography and use all five columns on wider desktop screens. */
@media(min-width:1024px){
  body.ml-v10.v3 .v72-footer .v91-footer-grid {
    grid-template-columns:minmax(185px,1.45fr) repeat(4,minmax(130px,1fr)) !important;
    gap:clamp(14px,1.8vw,28px) !important;
    align-items:start;
  }
  body.ml-v10.v3 .v72-footer .v91-footer-grid > .v72-brand-column {grid-column:auto !important;}
}
body.ml-v10.v3 .v72-footer .v91-footer-grid .v81-footer-nav>a,
body.ml-v10.v3 .v72-footer .v91-footer-grid .v72-footer-column>a {
  font-family:var(--melips-font-reading) !important;
  font-size:.82rem !important;line-height:1.6 !important;
}
