:root {
  --ml-ink: #202629;
  --ml-ink-soft: #3d4548;
  --ml-muted: #697276;
  --ml-line: rgba(32,38,41,.14);
  --ml-paper: #fffdfa;
  --ml-cream: #f6f2ec;
  --ml-ice: #e4f5f6;
  --ml-aqua: #78dbe0;
  --ml-aqua-deep: #278f96;
  --ml-lavender: #e9e2f2;
  --ml-purple: #78689e;
  --ml-white: #fff;
  --ml-shadow: 0 24px 70px rgba(45,52,56,.09);
  --ml-radius: 20px;
  --ml-radius-lg: 32px;
  --ml-pill: 999px;
  --ml-shell: 1360px;
  --ml-serif: "Iowan Old Style", "Palatino Linotype", Palatino, Georgia, serif;
  --ml-sans: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 100px; }
body { margin: 0; background: var(--ml-paper); color: var(--ml-ink); font-family: var(--ml-sans); line-height: 1.6; -webkit-font-smoothing: antialiased; }
body.ml-locked { overflow: hidden; }
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; height: auto; }
button, input, select, textarea { font: inherit; }
svg { width: 1.35em; height: 1.35em; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.ml-shell { width: min(calc(100% - 40px), var(--ml-shell)); margin-inline: auto; }
.ml-section { padding: 110px 0; }
.ml-eyebrow { margin: 0 0 15px; color: var(--ml-muted); font-size: .74rem; font-weight: 750; letter-spacing: .15em; text-transform: uppercase; }
h1, h2 { font-family: var(--ml-serif); font-weight: 500; letter-spacing: -.035em; line-height: 1.04; }
h1 { font-size: clamp(3rem,5.4vw,6.2rem); }
h2 { font-size: clamp(2.2rem,3.6vw,4.3rem); }
p { color: var(--ml-ink-soft); }
.screen-reader-text { position: absolute; width: 1px; height: 1px; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); }
.screen-reader-text:focus { position: fixed; z-index: 9999; left: 15px; top: 15px; width: auto; height: auto; clip: auto; padding: 10px 15px; background: var(--ml-ink); color: #fff; }

.ml-button, .woocommerce a.button, .woocommerce button.button, .woocommerce input.button, .woocommerce #respond input#submit, .wp-block-button__link {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  min-height: 50px;
  padding: 13px 24px !important;
  border: 1px solid var(--ml-ink) !important;
  border-radius: var(--ml-pill) !important;
  background: var(--ml-ink) !important;
  color: #fff !important;
  font-size: .88rem !important;
  font-weight: 720 !important;
  line-height: 1.2 !important;
  cursor: pointer;
  transition: transform .2s, box-shadow .2s, background .2s !important;
}
.ml-button:hover, .woocommerce a.button:hover, .woocommerce button.button:hover, .woocommerce input.button:hover { transform: translateY(-2px); box-shadow: 0 10px 25px rgba(32,38,41,.18); background: #111617 !important; }
.ml-button--ghost { background: transparent !important; color: var(--ml-ink) !important; border-color: rgba(32,38,41,.3) !important; }
.ml-text-link { border-bottom: 1px solid currentColor; font-size: .8rem; font-weight: 720; }
.ml-button-row { display: flex; flex-wrap: wrap; gap: 11px; }

.ml-announcement { min-height: 35px; display: grid; place-items: center; background: var(--ml-ink); color: #fff; font-size: .7rem; letter-spacing: .08em; text-align: center; text-transform: uppercase; }
.ml-header { position: sticky; top: 0; z-index: 100; background: rgba(255,253,250,.9); border-bottom: 1px solid transparent; backdrop-filter: blur(18px); transition: border-color .2s, box-shadow .2s; }
.ml-header.is-scrolled { border-color: var(--ml-line); box-shadow: 0 5px 25px rgba(32,38,41,.045); }
.ml-header__inner { min-height: 78px; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 30px; }
.ml-brand { display: inline-flex; align-items: center; gap: 10px; }
.ml-brand__mark { width: 35px; height: 35px; display: grid; place-items: center; }
.ml-brand__mark svg { width: 100%; height: 100%; }
.ml-brand__word { font-family: var(--ml-serif); font-size: 1.05rem; font-weight: 700; letter-spacing: .12em; }
.custom-logo-link img { max-height: 52px; width: auto; }
.ml-primary-nav { justify-self: center; }
.ml-primary-nav ul { display: flex; align-items: center; gap: 32px; margin: 0; padding: 0; list-style: none; }
.ml-primary-nav li { position: relative; }
.ml-primary-nav a { font-size: .84rem; font-weight: 650; }
.ml-primary-nav .sub-menu { position: absolute; top: 100%; left: -20px; min-width: 210px; display: none; flex-direction: column; align-items: stretch; gap: 0; padding: 12px; border: 1px solid var(--ml-line); border-radius: 12px; background: var(--ml-white); box-shadow: var(--ml-shadow); }
.ml-primary-nav li:hover > .sub-menu, .ml-primary-nav li:focus-within > .sub-menu { display: flex; }
.ml-primary-nav .sub-menu a { display: block; padding: 8px 10px; }
.ml-header-actions { justify-self: end; display: flex; align-items: center; gap: 1px; }
.ml-icon-button { position: relative; width: 44px; height: 44px; display: inline-grid; place-items: center; padding: 0; border: 0; border-radius: 50%; background: transparent; color: var(--ml-ink); cursor: pointer; }
.ml-icon-button:hover { background: rgba(32,38,41,.06); }
.ml-cart-count { position: absolute; right: 0; top: 0; min-width: 19px; height: 19px; display: grid; place-items: center; padding: 0 4px; border: 2px solid var(--ml-paper); border-radius: 50%; background: var(--ml-purple); color: #fff; font-size: .61rem; font-weight: 800; }
.ml-menu-toggle { display: none; justify-self: start; }
.ml-mobile-menu { position: fixed; z-index: 600; inset: 0 auto 0 0; width: min(92vw,420px); padding: 24px; background: var(--ml-paper); box-shadow: 15px 0 60px rgba(16,20,22,.19); transform: translateX(-105%); transition: transform .35s cubic-bezier(.2,.7,.2,1); }
.ml-mobile-menu.is-open { transform: translateX(0); }
.ml-mobile-menu__head { display: flex; align-items: center; justify-content: space-between; padding-bottom: 22px; border-bottom: 1px solid var(--ml-line); }
.ml-mobile-menu ul { margin: 0; padding: 0; list-style: none; }
.ml-mobile-menu a { display: block; padding: 18px 0; border-bottom: 1px solid var(--ml-line); font-family: var(--ml-serif); font-size: 1.45rem; }
.ml-scrim { position: fixed; z-index: 500; inset: 0; background: rgba(15,18,20,.45); backdrop-filter: blur(3px); }

.ml-hero { overflow: hidden; background: radial-gradient(circle at 10% 8%,rgba(211,168,82,.18),transparent 32%), radial-gradient(circle at 93% 78%,rgba(224,197,159,.38),transparent 38%), linear-gradient(135deg,#fffaf3,#f2e6d6 72%); border-bottom: 1px solid var(--ml-line); }
.ml-hero__grid { min-height: min(800px,calc(100vh - 113px)); display: grid; grid-template-columns: .95fr 1.05fr; align-items: center; gap: 65px; padding-top: 65px; padding-bottom: 70px; }
.ml-hero__copy { max-width: 680px; }
.ml-hero__copy h1 { margin: 0 0 27px; }
.ml-hero__text { max-width: 600px; margin: 0 0 30px; font-size: clamp(1rem,1.4vw,1.2rem); }
.ml-proof { display: flex; flex-wrap: wrap; gap: 15px 24px; margin-top: 34px; color: var(--ml-muted); font-size: .72rem; font-weight: 650; }
.ml-hero__visual { position: relative; min-height: 610px; }
.ml-hero__visual::before { content: ""; position: absolute; width: 500px; height: 500px; right: 4%; top: 2%; border-radius: 50%; background: linear-gradient(145deg,rgba(120,219,224,.3),rgba(233,226,242,.25)); }
.ml-hero-product { position: absolute; overflow: hidden; display: block; border: 1px solid rgba(255,255,255,.9); border-radius: 30px; background: #fff; box-shadow: var(--ml-shadow); }
.ml-hero-product img { width: 100%; height: 100%; object-fit: cover; }
.ml-hero-product > span { position: absolute; left: 15px; right: 15px; bottom: 15px; display: flex; justify-content: space-between; gap: 12px; padding: 12px 14px; border-radius: 12px; background: rgba(255,255,255,.88); backdrop-filter: blur(8px); font-size: .72rem; }
.ml-hero-product > span strong { max-width: 70%; }
.ml-hero-product--one { z-index: 2; width: 51%; aspect-ratio: .8; right: 6%; top: 5%; transform: rotate(5deg); }
.ml-hero-product--two { width: 44%; aspect-ratio: .8; left: 5%; top: 14%; transform: rotate(-7deg); }
.ml-hero-product--queen { z-index: 2; inset: 1% 0 1% 1%; }
.ml-hero-placeholder { position: absolute; inset: 19% 10%; display: grid; place-items: center; align-content: center; gap: 7px; border: 1px dashed rgba(32,38,41,.28); border-radius: var(--ml-radius-lg); background: rgba(255,255,255,.56); color: var(--ml-muted); text-align: center; }
.ml-hero-placeholder strong { color: var(--ml-ink); }

.ml-principles { border-bottom: 1px solid var(--ml-line); background: #fff; }
.ml-principles__grid { display: grid; grid-template-columns: repeat(3,1fr); }
.ml-principles article { display: flex; align-items: flex-start; gap: 20px; padding: 28px 42px; border-right: 1px solid var(--ml-line); }
.ml-principles article:first-child { padding-left: 0; }
.ml-principles article:last-child { padding-right: 0; border-right: 0; }
.ml-principles article > span { color: var(--ml-purple); font-family: var(--ml-serif); font-size: 1.35rem; font-style: italic; }
.ml-principles h2 { margin: 0 0 3px; font-family: var(--ml-sans); font-size: .9rem; font-weight: 750; letter-spacing: 0; }
.ml-principles p { margin: 0; color: var(--ml-muted); font-size: .76rem; }
.ml-section-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 40px; margin-bottom: 45px; }
.ml-section-heading h2 { margin: 0; }

.ml-queen-showcase { background: #f7efe5; }
.ml-queen-showcase__intro { display: grid; grid-template-columns: .82fr 1.18fr; align-items: stretch; gap: 0; margin-bottom: 18px; }
.ml-queen-showcase__intro > div { display: flex; flex-direction: column; justify-content: center; padding: clamp(45px,6vw,90px); border-radius: var(--ml-radius-lg) 0 0 var(--ml-radius-lg); background: #fffaf3; }
.ml-queen-showcase__intro h2 { margin: 0 0 22px; }
.ml-queen-showcase__intro img { width: 100%; height: 100%; min-height: 570px; border-radius: 0 var(--ml-radius-lg) var(--ml-radius-lg) 0; object-fit: cover; }
.ml-queen-showcase__gallery { display: grid; grid-template-columns: repeat(3,1fr); gap: 18px; }
.ml-queen-showcase__gallery img { width: 100%; aspect-ratio: 1; border-radius: var(--ml-radius); object-fit: cover; box-shadow: 0 16px 45px rgba(77,49,25,.08); }

.ml-ritual { background: var(--ml-ice); }
.ml-ritual__grid { display: grid; grid-template-columns: .8fr 1.2fr; align-items: center; gap: 70px; }
.ml-ritual__grid h2 { margin: 0 0 22px; }
.ml-ritual__grid > div:first-child > p:not(.ml-eyebrow) { max-width: 520px; margin-bottom: 28px; }
.ml-ritual__cards { display: grid; grid-template-columns: repeat(3,1fr); gap: 13px; }
.ml-ritual__cards article { min-height: 275px; padding: 25px; border: 1px solid rgba(255,255,255,.9); border-radius: 23px; background: rgba(255,255,255,.72); box-shadow: 0 14px 45px rgba(39,99,105,.07); }
.ml-ritual__cards article:nth-child(2) { transform: translateY(40px); }
.ml-ritual__cards span { display: inline-grid; place-items: center; width: 42px; height: 42px; margin-bottom: 90px; border: 1px solid rgba(39,143,150,.25); border-radius: 50%; color: var(--ml-aqua-deep); font-family: var(--ml-serif); font-style: italic; }
.ml-ritual__cards h3 { margin: 0 0 7px; }
.ml-ritual__cards p { margin: 0; color: var(--ml-muted); font-size: .78rem; }

.ml-approach { background: var(--ml-ink); color: #fff; }
.ml-approach .ml-eyebrow, .ml-approach p { color: rgba(255,255,255,.62); }
.ml-approach > .ml-shell > h2 { max-width: 820px; margin: 0 0 60px; }
.ml-approach__grid { display: grid; grid-template-columns: repeat(3,1fr); border-top: 1px solid rgba(255,255,255,.14); }
.ml-approach__grid article { min-height: 300px; padding: 34px 38px 34px 0; border-right: 1px solid rgba(255,255,255,.14); }
.ml-approach__grid article + article { padding-left: 38px; }
.ml-approach__grid article:last-child { border-right: 0; }
.ml-approach__grid span { display: grid; place-items: center; width: 42px; height: 42px; margin-bottom: 75px; border: 1px solid rgba(255,255,255,.25); border-radius: 50%; color: var(--ml-aqua); font-family: var(--ml-serif); font-style: italic; }
.ml-approach__grid h3 { color: #fff; }
.ml-approach__grid p { font-size: .84rem; }
.ml-page-content { background: #fff; }

.ml-footer { padding: 72px 0 30px; background: var(--ml-ink); color: #fff; }
.ml-footer__grid { display: grid; grid-template-columns: 1.4fr repeat(3,.8fr); gap: 60px; padding-bottom: 55px; }
.ml-brand--footer { color: #fff; }
.ml-footer p { color: rgba(255,255,255,.58); font-size: .78rem; }
.ml-footer h2 { margin: 0 0 15px; color: rgba(255,255,255,.52); font-family: var(--ml-sans); font-size: .67rem; font-weight: 750; letter-spacing: .12em; text-transform: uppercase; }
.ml-footer ul { margin: 0; padding: 0; list-style: none; }
.ml-footer li { margin-bottom: 8px; }
.ml-footer a:not(.ml-brand) { color: rgba(255,255,255,.82); font-size: .79rem; }
.ml-footer a:hover { color: var(--ml-aqua); }
.ml-footer__bottom { display: flex; justify-content: space-between; gap: 25px; padding-top: 25px; border-top: 1px solid rgba(255,255,255,.13); }
.ml-footer__bottom p { margin: 0; }

.ml-shop-shell { padding-top: 75px; padding-bottom: 100px; }
.woocommerce .woocommerce-breadcrumb { margin: 0 0 25px; color: var(--ml-muted); font-size: .7rem; }
.woocommerce .woocommerce-breadcrumb a { color: var(--ml-ink); }
.woocommerce-products-header { margin-bottom: 35px; }
.woocommerce-products-header__title.page-title { margin: 0; font-family: var(--ml-serif); font-size: clamp(2.8rem,5vw,5rem); font-weight: 500; letter-spacing: -.04em; }
.woocommerce .woocommerce-result-count, .woocommerce .woocommerce-ordering { margin-bottom: 27px; color: var(--ml-muted); font-size: .76rem; }
.woocommerce .woocommerce-ordering select { padding: 9px 34px 9px 12px; border: 1px solid var(--ml-line); border-radius: var(--ml-pill); background: #fff; }
.woocommerce ul.products { display: grid !important; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 38px 20px; margin: 0 !important; }
.woocommerce ul.products::before, .woocommerce ul.products::after { display: none !important; }
.woocommerce ul.products li.product { float: none !important; width: auto !important; margin: 0 !important; }
.woocommerce ul.products li.product a img { aspect-ratio: 1/1.06; width: 100%; margin: 0 0 15px !important; border-radius: var(--ml-radius); object-fit: cover; background: var(--ml-cream); transition: transform .5s; }
.woocommerce ul.products li.product:hover a img { transform: translateY(-3px); }
.woocommerce ul.products li.product .woocommerce-loop-product__title { padding: 0 !important; margin: 0 0 4px !important; font-size: .94rem !important; font-weight: 720; }
.woocommerce ul.products li.product .price { margin: 0 0 10px !important; color: var(--ml-ink) !important; font-size: .82rem !important; font-weight: 720 !important; }
.woocommerce ul.products li.product .price del { color: var(--ml-muted); }
.woocommerce ul.products li.product .button { width: 100%; min-height: 43px; padding: 10px 15px !important; font-size: .72rem !important; }
.woocommerce span.onsale { z-index: 2; min-width: 0; min-height: 0; line-height: 1; left: 12px !important; top: 12px !important; margin: 0 !important; padding: 8px 10px; border-radius: var(--ml-pill); background: rgba(255,255,255,.9); color: var(--ml-ink); font-size: .61rem; font-weight: 800; text-transform: uppercase; }
.ml-product-badge { position: absolute; z-index: 3; left: 12px; top: 12px; padding: 8px 10px; border-radius: var(--ml-pill); background: rgba(255,255,255,.9); border: 1px solid rgba(32,38,41,.07); font-size: .6rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.ml-product-subtitle { margin: -1px 0 8px; color: var(--ml-muted); font-size: .7rem; }
.woocommerce nav.woocommerce-pagination ul { border: 0; }
.woocommerce nav.woocommerce-pagination ul li { border: 0; margin: 0 3px; }
.woocommerce nav.woocommerce-pagination ul li a, .woocommerce nav.woocommerce-pagination ul li span { min-width: 38px; height: 38px; display: grid; place-items: center; padding: 0; border: 1px solid var(--ml-line); border-radius: 50%; }
.woocommerce nav.woocommerce-pagination ul li span.current { background: var(--ml-ink); color: #fff; }

.woocommerce div.product { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(40px,6vw,90px); }
.woocommerce div.product div.images, .woocommerce div.product div.summary { float: none; width: auto; margin: 0; }
.woocommerce div.product div.images img { border-radius: var(--ml-radius-lg); background: var(--ml-cream); }
.woocommerce div.product .product_title { margin: 0 0 12px; font-family: var(--ml-serif); font-size: clamp(2.7rem,4.7vw,5rem); font-weight: 500; letter-spacing: -.04em; line-height: 1.02; }
.woocommerce div.product p.price, .woocommerce div.product span.price { color: var(--ml-ink); font-size: 1rem; font-weight: 720; }
.woocommerce-product-details__short-description { margin: 24px 0; color: var(--ml-muted); }
.woocommerce div.product form.cart { display: flex; gap: 10px; margin: 28px 0; }
.woocommerce .quantity .qty { min-height: 50px; width: 78px; border: 1px solid var(--ml-line); border-radius: var(--ml-pill); }
.woocommerce div.product .woocommerce-tabs { grid-column: 1/-1; padding-top: 40px; }
.woocommerce div.product .woocommerce-tabs ul.tabs { padding: 0; border-bottom: 1px solid var(--ml-line); }
.woocommerce div.product .woocommerce-tabs ul.tabs::before { display: none; }
.woocommerce div.product .woocommerce-tabs ul.tabs li { margin: 0 22px 0 0; padding: 0; border: 0; background: transparent; }
.woocommerce div.product .woocommerce-tabs ul.tabs li::before, .woocommerce div.product .woocommerce-tabs ul.tabs li::after { display: none; }
.woocommerce div.product .woocommerce-tabs ul.tabs li a { padding: 13px 0; font-size: .8rem; }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a { border-bottom: 2px solid var(--ml-ink); }
.ml-product-benefits { display: grid; grid-template-columns: repeat(3,1fr); gap: 8px; margin: 22px 0; }
.ml-product-benefits span { padding: 11px; border-radius: 11px; background: var(--ml-cream); text-align: center; color: var(--ml-ink-soft); font-size: .67rem; font-weight: 650; }
.related.products { grid-column: 1/-1; padding-top: 60px; }
.related.products > h2 { font-size: 2.6rem; }

.woocommerce table.shop_table { border: 1px solid var(--ml-line); border-radius: var(--ml-radius); overflow: hidden; }
.woocommerce table.shop_table th, .woocommerce table.shop_table td { padding: 15px; border-color: var(--ml-line); }
.woocommerce-cart table.cart img { width: 80px; border-radius: 10px; }
.woocommerce-cart .cart-collaterals .cart_totals { float: none; width: min(100%,520px); margin-left: auto; }
.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea, .woocommerce form .form-row select, .select2-container--default .select2-selection--single { min-height: 48px; padding: 10px 13px; border: 1px solid var(--ml-line); border-radius: 10px; background: #fff; }
.woocommerce form.checkout { display: grid; grid-template-columns: 1.2fr .8fr; gap: 50px; }
.woocommerce form.checkout #customer_details, .woocommerce form.checkout #order_review_heading, .woocommerce form.checkout #order_review { float: none; width: auto; }
.woocommerce form.checkout #order_review_heading, .woocommerce form.checkout #order_review { grid-column: 2; }
.woocommerce form.checkout #order_review_heading { grid-row: 1; align-self: end; margin: 0; }
.woocommerce form.checkout #order_review { grid-row: 2; padding: 25px; border-radius: var(--ml-radius); background: var(--ml-cream); }
.woocommerce form.checkout #customer_details { grid-row: 1/3; }
.woocommerce-checkout #payment { background: #fff; border: 1px solid var(--ml-line); border-radius: 15px; }
.woocommerce-info, .woocommerce-message, .woocommerce-error { border: 0; border-radius: 12px; background: var(--ml-ice); color: var(--ml-ink); }
.woocommerce-message { border-left: 4px solid var(--ml-aqua-deep); }
.woocommerce-error { border-left: 4px solid #a83e42; background: #fff0f0; }

.ml-page-header { max-width: 950px; margin-bottom: 50px; }
.ml-page-header h1 { margin: 0; }
.ml-narrow { max-width: 900px; }
.entry-content { color: var(--ml-ink-soft); }
.entry-content > * { margin-top: 0; margin-bottom: 1.35em; }
.entry-content h2 { margin-top: 1.3em; font-size: 2.3rem; }
.entry-content h3 { margin-top: 1.5em; }
.entry-content a { border-bottom: 1px solid currentColor; }
.entry-content img { border-radius: var(--ml-radius); }
.ml-content-grid { display: grid; grid-template-columns: 1fr 300px; gap: 70px; }
.ml-post-card { margin-bottom: 70px; }
.ml-post-card img { margin-bottom: 25px; border-radius: var(--ml-radius); }
.ml-post-card h2 { margin: 0 0 13px; font-size: 2.7rem; }
.ml-featured-image { margin-bottom: 45px; }
.ml-empty-page { max-width: 900px; text-align: center; }
.ml-empty-page h1 { margin-bottom: 20px; }

@media (max-width: 1050px) {
  .ml-primary-nav ul { gap: 18px; }
  .ml-hero__grid { gap: 30px; }
  .woocommerce ul.products { grid-template-columns: repeat(3,1fr); }
  .ml-ritual__grid { grid-template-columns: 1fr; }
}
@media (max-width: 850px) {
  .ml-shell { width: min(calc(100% - 28px),var(--ml-shell)); }
  .ml-section { padding: 82px 0; }
  .ml-menu-toggle { display: inline-grid; }
  .ml-primary-nav, .ml-account-link { display: none; }
  .ml-header__inner { min-height: 68px; grid-template-columns: 1fr auto 1fr; gap: 10px; }
  .ml-brand { justify-self: center; }
  .ml-hero__grid { min-height: auto; grid-template-columns: 1fr; padding-top: 60px; }
  .ml-hero__visual { min-height: 620px; }
  .ml-hero-product--queen { inset: 0; }
  .ml-principles__grid { grid-template-columns: 1fr; }
  .ml-principles article, .ml-principles article:first-child, .ml-principles article:last-child { padding: 22px 0; border-right: 0; border-bottom: 1px solid var(--ml-line); }
  .ml-principles article:last-child { border-bottom: 0; }
  .ml-approach__grid { grid-template-columns: 1fr; }
  .ml-approach__grid article, .ml-approach__grid article + article { min-height: auto; padding: 30px 0; border-right: 0; border-bottom: 1px solid rgba(255,255,255,.14); }
  .ml-approach__grid span { margin-bottom: 35px; }
  .ml-footer__grid { grid-template-columns: 1.2fr repeat(3,.8fr); gap: 28px; }
  .woocommerce div.product { grid-template-columns: 1fr; }
  .woocommerce div.product .woocommerce-tabs, .related.products { grid-column: 1; }
  .woocommerce form.checkout { grid-template-columns: 1fr; }
  .woocommerce form.checkout #customer_details, .woocommerce form.checkout #order_review_heading, .woocommerce form.checkout #order_review { grid-column: 1; grid-row: auto; }
  .ml-content-grid { grid-template-columns: 1fr; }
  .ml-queen-showcase__intro { grid-template-columns: 1fr; }
  .ml-queen-showcase__intro > div { border-radius: var(--ml-radius-lg) var(--ml-radius-lg) 0 0; }
  .ml-queen-showcase__intro img { min-height: 500px; border-radius: 0 0 var(--ml-radius-lg) var(--ml-radius-lg); }
}
@media (max-width: 620px) {
  .ml-announcement { display: none; }
  .ml-shell { width: min(calc(100% - 22px),var(--ml-shell)); }
  .ml-section { padding: 66px 0; }
  .ml-brand__mark { display: none; }
  .ml-brand__word { font-size: .9rem; }
  .ml-hero__grid { padding-top: 45px; }
  .ml-hero__copy h1 { font-size: clamp(2.7rem,13vw,4.5rem); }
  .ml-button-row .ml-button { width: 100%; }
  .ml-hero__visual { min-height: 450px; }
  .ml-hero__visual::before { width: 350px; height: 350px; }
  .ml-hero-product--one { width: 55%; right: 1%; }
  .ml-hero-product--two { width: 48%; left: 1%; }
  .ml-hero-product--queen { inset: 0; }
  .ml-section-heading { align-items: flex-start; flex-direction: column; gap: 15px; }
  .woocommerce ul.products { grid-template-columns: repeat(2,1fr); gap: 28px 10px; }
  .woocommerce ul.products li.product a img { border-radius: 14px; }
  .woocommerce ul.products li.product .woocommerce-loop-product__title { font-size: .82rem !important; }
  .woocommerce ul.products li.product .button { padding-inline: 7px !important; font-size: .63rem !important; }
  .ml-ritual__cards { grid-template-columns: 1fr; }
  .ml-ritual__cards article:nth-child(2) { transform: none; }
  .ml-ritual__cards article { min-height: auto; }
  .ml-ritual__cards span { margin-bottom: 35px; }
  .ml-footer__grid { grid-template-columns: 1fr 1fr; }
  .ml-footer__about { grid-column: 1/-1; }
  .ml-footer__bottom { align-items: flex-start; flex-direction: column; }
  .ml-product-benefits { grid-template-columns: 1fr; }
  .ml-queen-showcase__intro > div { padding: 38px 24px; }
  .ml-queen-showcase__intro img { min-height: 360px; }
  .ml-queen-showcase__gallery { grid-template-columns: 1fr; gap: 12px; }
}
