/* ======================================================================
   Mur Mur theme styles (what theme.json can't express)

   Sections, in this order:
    1  Tokens, base, accessibility
    2  Type: labels, handwriting, titles, the text font, arrow links
    3  Buttons and forms
    4  Announcement bar
    5  Header and menu (desktop, tablet, phone "necklace", phone menu)
    6  Homepage: hero, how it works, story, categories, Style your home
    7  Product page
    8  Content pages: About, Sustainability, Manifesto, FAQs, Trade, Contact, legal, Journal
    9  Checkout
   10  Footer
   11  Newsletter pop-up
   12  Day / Night

   Phones are max-width 781px, desktop min-width 782px (WordPress' own breakpoint).
   Each section keeps its phone rules next to its desktop rules.
   ====================================================================== */


/* ======================================================================
   1  Tokens, base, accessibility
   ====================================================================== */
/* Title levels, used everywhere:
   Display  (STORY, PROCESS, QUESTIONS ABOUT MUR MUR)
   Section  (EVERY PIECE LIVES TWO LIVES, THE REST OF THE FAMILY)
   Label    (small spaced capitals: tabs, eyebrows) */
:root { --mm-title-display: clamp(2.5rem, 4.6vw, 4rem); --mm-title-section: clamp(1.5rem, 2.4vw, 2rem); --mm-text: "Space Grotesk", "Helvetica Neue", sans-serif; }
@font-face { font-family: "Space Grotesk"; src: url("../fonts/space-grotesk-var.woff2") format("woff2"); font-weight: 300 500; font-style: normal; font-display: swap; unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
/* Polish and Catalan letters (ą, ł, ŀ...): a second file, only downloaded on pages that use them */
@font-face { font-family: "Space Grotesk"; src: url("../fonts/space-grotesk-var-latin-ext.woff2") format("woff2"); font-weight: 300 500; font-style: normal; font-display: swap; unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }

body { -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; }
/* Header, main and footer sit flush (no root block gap between them). */
.wp-site-blocks > * + * { margin-block-start: 0; }
main.mm-main:not(.mm-main--home) { margin-top: var(--wp--preset--spacing--30) !important; }

/* Cursor halo: a soft peach light drifts after the mouse, with a pink aura trailing further behind (murmur.js).
   It lies under the page (z-index -1: on the paper, behind text, photos and buttons), so it never covers what you click.
   Only the body may carry the page colour for this to show (night colours in section 12).
   Mouse only; never on touch screens, with reduced motion, or on checkout. */
.mm-halo { position: fixed; inset: 0; z-index: -1; overflow: hidden; pointer-events: none; opacity: 0; transition: opacity 600ms ease; }
.mm-halo.is-on { opacity: 1; }
.mm-halo__core, .mm-halo__aura { position: absolute; left: 0; top: 0; border-radius: 50%; will-change: transform; }
.mm-halo__core { width: 300px; height: 300px; margin: -150px 0 0 -150px; background: radial-gradient(closest-side, rgba(255, 176, 112, .30), rgba(255, 150, 120, .14) 55%, rgba(255, 150, 120, 0)); filter: blur(16px); }
.mm-halo__aura { width: 620px; height: 620px; margin: -310px 0 0 -310px; background: radial-gradient(closest-side, rgba(246, 130, 160, .22), rgba(255, 160, 130, .10) 50%, rgba(246, 130, 160, 0)); filter: blur(30px); }
@media (hover: none), (pointer: coarse), (prefers-reduced-motion: reduce) { .mm-halo { display: none; } }
.woocommerce-checkout .mm-halo { display: none; }

/* Keyboard focus: thin and quiet; no ring on mouse click */
:where(button, a, input, select, textarea):focus { outline: none; }
:where(button, a, input, select, textarea):focus-visible { outline: 1px solid currentColor; outline-offset: 3px; }

/* Hidden on screen, kept for Google and screen readers */
.screen-reader-text { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap; }
.mm-visually-hidden { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

/* Parts for products that are not launched yet: remove the class to bring them back. */
.mm-later { display: none !important; }

/* Two versions (wireless / hardwired): content marked mm-only-wireless / mm-only-hardwired follows the chosen
   version; products without a choice are wireless. Product kind comes from its category; wall lamps are the default. */
body:not(.mm-power-hardwired) .mm-only-hardwired { display: none !important; }
body.mm-power-hardwired .mm-only-wireless { display: none !important; }
body.mm-kind-vase .mm-not-vase,
body.mm-kind-vase .mm-only-wall,
body.mm-kind-pendant .mm-only-wall,
body:not(.mm-kind-vase) .mm-only-vase,
body:not(.mm-kind-pendant) .mm-only-pendant { display: none !important; }

/* Phones: wider, calmer side margins (the floating header icons sit inside them) */
@media (max-width: 781px) {
	body { --wp--style--root--padding-left: 2rem !important; --wp--style--root--padding-right: 2rem !important; }
}


/* ======================================================================
   2  Type
   League Spartan frames (menu, titles, buttons); Space Grotesk speaks (labels, names, prices,
   descriptions, body); Caffeine is Ola's handwriting, only for short notes. See docs/typography-spec.md.
   "html:root" rules sit above the base styles on purpose.
   ====================================================================== */
.mm-italic { font-weight: 200; }
.mm-eyebrow { margin: 0; font-size: .75rem; text-transform: uppercase; letter-spacing: var(--wp--custom--tracking--label); color: var(--wp--preset--color--muted); }
.mm-lede { max-width: 34rem; margin-inline: auto !important; color: var(--wp--preset--color--muted); }
.mm-section__title { margin-top: .5rem; }
.mm-section__title, .mm-product ~ * .mm-italic, .mm-section .mm-italic { font-size: .8125rem !important; font-weight: 400 !important; text-transform: uppercase; letter-spacing: var(--wp--custom--tracking--label) !important; }

/* Section titles: thin, larger capitals */
.mm-section .mm-display, .mm-display { margin-bottom: var(--wp--preset--spacing--20) !important; font-size: var(--mm-title-section) !important; font-weight: 200 !important; line-height: 1.15 !important; letter-spacing: .06em !important; text-transform: uppercase !important; }
/* Display titles: STORY, PROCESS, QUESTIONS ABOUT MUR MUR */
.mm-split__heading, .mm-faqs__title { margin: 0 0 var(--wp--preset--spacing--30) !important; font-size: var(--mm-title-display) !important; font-weight: 200 !important; line-height: 1 !important; letter-spacing: .01em !important; text-transform: uppercase; }

/* Ola's handwriting (Caffeine): short notes, slightly tilted */
.mm-handnote { margin: 0 !important; max-width: 16rem; font-family: var(--wp--preset--font-family--hand) !important; font-size: 1.35rem !important; font-weight: 400 !important; line-height: 1.15 !important; letter-spacing: .02em !important; text-transform: none !important; color: var(--wp--preset--color--contrast); transform: rotate(-6deg); }
.mm-handnote--top { margin: 0 0 4.75rem !important; }
.mm-handnote--center { max-width: none; margin-inline: auto !important; text-align: center; transform: rotate(-4deg); }
/* Pages that open with a handwritten note: it sits halfway between the logo and the content */
.mm-main:has(.mm-handnote--top) { padding-top: var(--wp--preset--spacing--20) !important; }
.mm-handnote--top + .mm-page-body { padding-top: 0 !important; margin-top: 0 !important; }
.mm-signature { margin-top: var(--wp--preset--spacing--30); font-family: var(--wp--preset--font-family--hand) !important; font-size: 1.35rem !important; font-weight: 400 !important; letter-spacing: .02em !important; transform: rotate(-4deg); transform-origin: left; }

/* The text font: Space Grotesk for everything you read */
html:root .mm-announcement,
html:root .mm-eyebrow,
html:root .mm-filter__btn,
html:root .mm-switch,
html:root .mm-light,
html:root .mm-lamp__name,
html:root .mm-lamp__price,
html:root .mm-cat__name,
html:root .mm-cat__cta,
html:root .mm-details summary,
html:root .mm-hero__link a,
html:root .mm-link-arrow a,
html:root .mm-reassure,
html:root .mm-product__info .wp-block-woocommerce-product-price,
html:root .wp-element-button,
html:root .wc-block-components-button,
html:root .wpcf7 label,
html:root .wpcf7 .wpcf7-acceptance,
html:root .wpcf7 input[type="submit"],
html:root .mm-footer__links,
html:root .mm-footer__base,
html:root .mm-contact-line,
html:root .mm-faq-pick__list a,
html:root .mm-header__back, html:root .mm-header__secure { font-family: var(--mm-text) !important; font-weight: 300 !important; letter-spacing: .01em !important; }
/* Labels: capitals with light tracking */
html:root .mm-eyebrow, html:root .mm-filter__btn, html:root .mm-switch, html:root .mm-details summary { font-size: .75rem !important; letter-spacing: .02em !important; }
/* Numbered points (01 02 03), short descriptions and specs */
html:root .mm-how h3, html:root .mm-how p, html:root .mm-product__summary, html:root .mm-details details > :not(summary), html:root .mm-specs { font-family: var(--mm-text) !important; font-weight: 300 !important; letter-spacing: 0 !important; }
html:root .mm-how h3 { text-transform: uppercase; font-size: .8125rem !important; letter-spacing: .02em !important; }
html:root .mm-how p:not(.mm-how__num) { font-size: .8125rem !important; line-height: 1.6; }
/* Body text (Story, About, FAQ answers...) */
html:root .mm-split__text p:not(.mm-signature):not(.mm-handnote), html:root .mm-manifesto__p, html:root .mm-page-body p:not(.mm-handnote):not(.mm-signature), html:root .mm-story p:not(.mm-eyebrow), html:root .mm-story-page__body p:not(.mm-handnote):not(.mm-signature), html:root .mm-story-page__body li { font-family: var(--mm-text) !important; font-weight: 300 !important; font-size: .875rem !important; letter-spacing: -.01em !important; line-height: 1.7 !important; }
/* Lamp names and prices, like an editorial catalogue: FLO in Pearl, price below */
html:root .mm-lamp__link { text-align: left; }
html:root .mm-lamp__name { margin-top: .75rem !important; font-size: .8125rem !important; text-align: left; text-transform: none !important; }
html:root .mm-lamp__name .mm-name-cap { text-transform: uppercase; }
html:root .mm-lamp__name .mm-name-rest { display: inline; text-transform: none; opacity: .75; }
html:root .mm-lamp__price { margin-top: .2rem !important; font-size: .8125rem !important; text-align: left; opacity: .75; }

/* Text links with an arrow ("Discover the collection", "Our story", "Try it", "Read"): no underline, just the arrow */
.mm-link-arrow a { font-size: var(--wp--preset--font-size--xs); text-transform: uppercase; letter-spacing: var(--wp--custom--tracking--label); }
.mm-link-arrow a, .mm-hero__link a, .mm-journal__excerpt .wp-block-post-excerpt__more-link { border-bottom: 0; padding-bottom: 0; text-decoration: none; transition: opacity var(--wp--custom--transition); }
.mm-link-arrow a::after, .mm-hero__link a::after, .mm-journal__excerpt .wp-block-post-excerpt__more-link::after { content: " \2192"; letter-spacing: 0; }
.mm-link-arrow a:hover, .mm-hero__link a:hover, .mm-journal__excerpt .wp-block-post-excerpt__more-link:hover { opacity: .6; }

/* Menu counts (Shop 05, Journal 01): float beside the word, so the word itself stays centred */
.mm-count { font-size: .55em; letter-spacing: .05em; margin-left: .2em; vertical-align: super; line-height: 0; opacity: .7; }
.mm-nav .wp-block-navigation-item__content { position: relative; }
.mm-nav .mm-count { position: absolute; left: 100%; top: 0; }


/* ======================================================================
   3  Buttons and forms
   ====================================================================== */
.wp-block-button__link { transition: background var(--wp--custom--transition), color var(--wp--custom--transition); }
.wp-block-button.is-style-outline .wp-block-button__link { background: transparent; color: currentColor; border: 1px solid currentColor; }
.wp-block-button.is-style-outline .wp-block-button__link:hover { background: var(--wp--preset--color--contrast); color: var(--wp--preset--color--white); }
/* Quantity box square like the buttons */
.wc-block-components-quantity-selector, .wc-block-components-quantity-selector::after, .quantity .qty { border-radius: 0 !important; }

/* Contact Form 7, styled like the site */
.wpcf7 form { display: grid; gap: 1.1rem; max-width: 36rem; }
.wpcf7 label { display: grid; gap: .3rem; font-size: .875rem; font-weight: 300; color: var(--wp--preset--color--muted); text-transform: none !important; letter-spacing: .02em !important; }
.wpcf7 input[type="text"], .wpcf7 input[type="email"], .wpcf7 select, .wpcf7 textarea { width: 100%; padding: .55rem 0; border: 0; border-bottom: 1px solid rgba(17, 17, 17, .18) !important; border-radius: 0; background: transparent; font: inherit; font-size: var(--wp--preset--font-size--m); text-transform: none; letter-spacing: .01em; color: var(--wp--preset--color--contrast); }
.wpcf7 textarea { height: 7rem; min-height: 5rem; resize: vertical; }
.wpcf7 input:focus, .wpcf7 select:focus, .wpcf7 textarea:focus { outline: none; border-bottom-color: var(--wp--preset--color--contrast); }
.wpcf7 .wpcf7-acceptance { font-size: var(--wp--preset--font-size--s); text-transform: none !important; letter-spacing: .02em !important; font-weight: 300; }
.wpcf7 .wpcf7-acceptance .wpcf7-list-item { margin: 0; }
.wpcf7 .wpcf7-acceptance label { display: flex; align-items: center; gap: .6rem; }
.wpcf7 .wpcf7-acceptance input[type="checkbox"] { flex: none; width: 1rem; height: 1rem; margin: 0; accent-color: var(--wp--preset--color--contrast); }
.wpcf7 input[type="submit"] { justify-self: start; padding: .95rem 2rem .85rem; border: 0; border-radius: 0; background: var(--wp--preset--color--contrast); color: #fff; font: inherit; font-size: .6875rem; text-transform: uppercase; letter-spacing: var(--wp--custom--tracking--label); cursor: pointer; }
.wpcf7 input[type="submit"]:hover { background: #3a3a3a; }
.wpcf7-not-valid-tip, .wpcf7-response-output { font-size: var(--wp--preset--font-size--s); }


/* ======================================================================
   4  Announcement bar
   ====================================================================== */
.mm-announcement { position: relative; border-bottom: 1px solid var(--wp--preset--color--line); text-align: center; font-size: .6875rem; text-transform: uppercase; letter-spacing: var(--wp--custom--tracking--label); }
.mm-announcement p { margin: 0; }
/* Two offers take turns (Ola, 2026-10-26): a soft slide every 5 s, paused on hover or focus; with reduced motion both
   show, one under the other. */
.mm-announcement { display: grid !important; place-items: center; overflow: hidden; }
.mm-announcement .mm-announcement__text { grid-area: 1 / 1; }
@media (prefers-reduced-motion: no-preference) {
	.mm-announcement .mm-announcement__text { animation: mm-offers 10s ease-in-out infinite; }
	.mm-announcement .mm-announcement__text--pair { animation-delay: -5s; }
	.mm-announcement:hover .mm-announcement__text, .mm-announcement:focus-within .mm-announcement__text { animation-play-state: paused; }
}
@media (prefers-reduced-motion: reduce) { .mm-announcement .mm-announcement__text--pair { grid-area: 2 / 1; } }
@keyframes mm-offers {
	0%, 44% { opacity: 1; transform: none; visibility: visible; }
	50% { opacity: 0; transform: translateY(-70%); visibility: hidden; }
	94% { opacity: 0; transform: translateY(70%); visibility: hidden; }
	100% { opacity: 1; transform: none; visibility: visible; }
}
.mm-announcement a { text-underline-offset: 3px; }
.mm-announcement__close { position: absolute; right: .75rem; top: 50%; transform: translateY(-50%); padding: .4rem; background: none; border: 0; color: inherit; font-size: 1rem; line-height: 1; cursor: pointer; opacity: .7; }
.mm-announcement.is-hidden { display: none; }


/* ======================================================================
   5  Header and menu
   ====================================================================== */
.mm-header { position: relative; z-index: 20; padding-block: .55rem 1.1rem; }
.mm-header__inner { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; max-width: var(--wp--style--global--wide-size); margin-inline: auto; }
.mm-header__side--right { justify-content: flex-end; }
.mm-header__center { align-items: center; gap: .35rem !important; }
.mm-nav a { text-decoration: none; }
.mm-nav a:hover { text-decoration: underline; text-underline-offset: 4px; }
.mm-logo { display: block; line-height: 0; }
/* Language picker next to Day / Night: "EN" with a hairline chevron opens the languages by their own names
   (native <details>, closed by a click elsewhere in murmur.js). Same small capitals as the switch. */
.mm-langpick { position: relative; margin-right: 1rem; font-size: .625rem; text-transform: uppercase; letter-spacing: .2em; }
.mm-langpick summary { display: inline-flex; align-items: center; gap: .45rem; padding: .4rem 0; list-style: none; cursor: pointer; user-select: none; }
.mm-langpick summary::-webkit-details-marker { display: none; }
.mm-langpick summary::after { content: ""; width: .32rem; height: .32rem; margin-top: -.2rem; border-right: 1px solid currentColor; border-bottom: 1px solid currentColor; transform: rotate(45deg); opacity: .7; transition: transform 300ms, margin 300ms; }
.mm-langpick[open] summary::after { margin-top: .15rem; transform: rotate(-135deg); }
.mm-langpick summary:focus { outline: none; }
.mm-langpick summary:focus-visible { outline: 1px solid currentColor; outline-offset: 3px; }
.mm-langpick .mm-lang { position: absolute; top: calc(100% + .4rem); right: -1rem; z-index: 30; display: grid; gap: 0; width: max-content; min-width: 8.5rem; margin: 0; padding: .5rem 0; border: 1px solid var(--wp--preset--color--line); background: var(--wp--preset--color--base); color: var(--wp--preset--color--contrast); font-size: .8125rem; text-transform: none; letter-spacing: .02em; animation: mm-langpick-in 250ms ease; }
.mm-langpick .mm-lang a { padding: .45rem 1.1rem; text-decoration: none; }
.mm-langpick .mm-lang a:hover, .mm-langpick .mm-lang a[aria-current] { text-decoration: underline; text-underline-offset: .3em; text-decoration-thickness: 1px; }
@keyframes mm-langpick-in { from { opacity: 0; transform: translateY(-4px); } }
@media (prefers-reduced-motion: reduce) { .mm-langpick .mm-lang { animation: none; } }
.mm-logo__img { width: 172px; height: auto; }
.mm-logo__img--light { display: none; }

/* Homepage: the header sits over the video, in light colours */
.mm-header--overlay { position: absolute; left: 0; right: 0; color: var(--wp--preset--color--glow); transition: background var(--wp--custom--transition), color var(--wp--custom--transition); }
.mm-header--overlay .mm-logo__img--dark { display: none; }
.mm-header--overlay .mm-logo__img--light { display: block; }
.mm-header--overlay .wc-block-mini-cart__button { color: inherit; }
body:not(.mm-scrolled) .mm-header--overlay .wc-block-mini-cart__badge { background: var(--wp--preset--color--glow) !important; color: var(--wp--preset--color--contrast) !important; }
body:not(.mm-scrolled) .mm-header--overlay .wp-block-navigation { font-weight: 400; }
body:not(.mm-scrolled) .mm-header--overlay .wp-block-navigation a { text-shadow: 0 1px 10px rgba(60, 30, 0, .2); }
/* Scrolled past the video: slim, solid bar; hidden while scrolling down, back when scrolling up */
body.mm-scrolled .mm-header--overlay { position: fixed; top: 0; padding-block: .45rem .5rem; background: var(--wp--preset--color--base); color: var(--wp--preset--color--contrast); box-shadow: 0 1px 0 var(--wp--preset--color--line); transition: transform 320ms cubic-bezier(.2,.7,.2,1), background var(--wp--custom--transition), color var(--wp--custom--transition); }
body.mm-scrolled .mm-header--overlay .mm-logo__img { width: 116px; }
body.mm-scrolled .mm-header--overlay .mm-header__center { gap: .2rem !important; }
body.mm-scrolled.mm-scrolling-down .mm-header--overlay { transform: translateY(-105%); }
body.mm-scrolled .mm-header--overlay .mm-logo__img--dark { display: block; }
body.mm-scrolled .mm-header--overlay .mm-logo__img--light { display: none; }

/* Header icons: comfortable to tap. The bag is drawn with a fine-line mask. */
.wc-block-mini-cart__button { justify-content: center; min-width: 44px; min-height: 44px; padding: 10px !important; }
.wc-block-mini-cart__quantity-badge { position: relative; display: inline-flex; }
.wc-block-mini-cart__icon { width: 24px !important; height: 24px !important; background: currentColor; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8.5 8V6.6a3.5 3.5 0 0 1 7 0V8'/%3E%3Cpath d='M6.2 8h11.6a1 1 0 0 1 1 .95l.6 11a1 1 0 0 1-1 1.05H5.6a1 1 0 0 1-1-1.05l.6-11A1 1 0 0 1 6.2 8z'/%3E%3Cpath d='M8.5 10.8v.4M15.5 10.8v.4'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8.5 8V6.6a3.5 3.5 0 0 1 7 0V8'/%3E%3Cpath d='M6.2 8h11.6a1 1 0 0 1 1 .95l.6 11a1 1 0 0 1-1 1.05H5.6a1 1 0 0 1-1-1.05l.6-11A1 1 0 0 1 6.2 8z'/%3E%3Cpath d='M8.5 10.8v.4M15.5 10.8v.4'/%3E%3C/svg%3E") center / contain no-repeat; }
.wc-block-mini-cart__icon path { display: none; }
/* Item count: small black dot with a white number, tucked on the bag's corner */
.wc-block-mini-cart__badge { position: absolute; top: -5px; right: -8px; left: auto !important; display: inline-flex; align-items: center; justify-content: center; min-width: 14px; height: 14px; margin: 0 !important; padding: 0 3px; border: 0 !important; border-radius: 999px; box-shadow: none !important; background: var(--wp--preset--color--contrast) !important; color: #fff !important; font-size: 9px; font-weight: 500; letter-spacing: 0; line-height: 14px; transform: none !important; }
.wp-block-navigation__responsive-container-open { min-width: 44px; min-height: 44px; padding: 10px; }
.wp-block-navigation__responsive-container-open svg { width: 28px !important; height: 28px !important; }

/* Second menu group (FAQs, Contact, Journal, Instagram): phone menu only */
.mm-nav-more { display: none !important; }
/* The menu's own Day / Night switch shows only in the open phone menu */
.mm-nav .wp-block-navigation__responsive-container:not(.is-menu-open) .mm-light { display: none; }
/* The phone menu is a full-screen layer; nothing above it may be transformed, or it gets trapped in a small box */
html.has-modal-open .mm-header, html.has-modal-open .mm-header--overlay { transform: none !important; }

/* Tablet / small laptop: the menu, the switch and the bag need tighter spacing */
@media (min-width: 782px) and (max-width: 1180px) {
	.mm-nav .wp-block-navigation__container { gap: 1.25rem !important; }
	.mm-nav .wp-block-navigation-item__content { letter-spacing: .14em; }
	.mm-header__inner { padding-inline: 1rem; }
	.mm-header__side--right { flex-wrap: nowrap; gap: 0; }
	.mm-langpick { margin-right: .75rem; }
}

/* Phones: the "necklace" from the old site. First screen: logo centred, the menu icon below it, the bag
   below that. After a small scroll (body.mm-icons-float) the two icons float to the corners, inside the
   side margins: light over the homepage video, the text colour everywhere else. */
@media (max-width: 781px) {
	.mm-header:not(.mm-header--checkout) .mm-header__inner { display: flex; flex-direction: column; align-items: center; gap: 0; padding-inline: .75rem; }
	.mm-header:not(.mm-header--checkout) .mm-header__side--left { display: none; }
	.mm-header:not(.mm-header--checkout) .mm-header__center { display: contents !important; }
	.mm-header:not(.mm-header--checkout) .mm-logo { order: 1; }
	.mm-header:not(.mm-header--checkout) .mm-logo__img { width: 160px; }
	.mm-header:not(.mm-header--checkout) .mm-nav { order: 2; margin: .25rem 0 -.35rem; }
	.mm-header:not(.mm-header--checkout) .wp-block-navigation__responsive-container-open { padding: 6px; }
	.wp-block-navigation__responsive-container-open svg { display: block; margin: 0 auto; }
	.mm-header:not(.mm-header--checkout) .mm-header__side--right { order: 3; justify-content: center; margin: 0; }
	.mm-header:not(.mm-header--checkout) .mm-header__side--right .mm-light { display: none; } /* on phones the switch lives inside the menu */
	.mm-header:not(.mm-header--checkout) .mm-langpick { margin-right: .9rem; }
	.mm-langpick .mm-lang { left: 50%; right: auto; transform: translateX(-50%); animation: none; }
	.mm-langpick .mm-lang a { padding: .6rem 1.25rem; }
	/* The homepage header stays where it is (only the icons float) */
	body.mm-scrolled .mm-header--overlay { position: absolute; padding-block: .55rem 1.1rem; background: transparent; box-shadow: none; transform: none !important; }
	body.mm-scrolled .mm-header--overlay .mm-logo__img { width: 160px; }
	body.mm-scrolled .mm-header--overlay .mm-logo__img--dark { display: none; }
	body.mm-scrolled .mm-header--overlay .mm-logo__img--light { display: block; }
	/* Floating icons */
	body.mm-icons-float .mm-header:not(.mm-header--checkout) .wp-block-navigation__responsive-container-open,
	body.mm-icons-float .mm-header:not(.mm-header--checkout) .wc-block-mini-cart__button { position: fixed; top: 16px; z-index: 40; width: 24px; min-width: 0; height: 24px; min-height: 0; padding: 0 !important; color: var(--wp--preset--color--contrast); }
	body.mm-icons-float .mm-header:not(.mm-header--checkout) .wp-block-navigation__responsive-container-open svg,
	body.mm-icons-float .mm-header:not(.mm-header--checkout) .wc-block-mini-cart__button svg,
	body.mm-icons-float .mm-header:not(.mm-header--checkout) .wc-block-mini-cart__icon { width: 24px !important; height: 24px !important; }
	body.mm-icons-float .mm-header:not(.mm-header--checkout) .wp-block-navigation__responsive-container-open { left: max(2px, calc((var(--wp--style--root--padding-left, 2rem) - 24px) / 2)); }
	/* Bag a little further in, so its count bubble stays inside the white margin (Ola, 2026-10-26). */
	body.mm-icons-float .mm-header:not(.mm-header--checkout) .wc-block-mini-cart__button { right: max(9px, calc((var(--wp--style--root--padding-right, 2rem) - 24px) / 2)); }
	body.mm-icons-float .mm-header:not(.mm-header--checkout) .wc-block-mini-cart__badge { right: -5px; }
	body.mm-icons-float:not(.mm-scrolled) .mm-header--overlay .wp-block-navigation__responsive-container-open,
	body.mm-icons-float:not(.mm-scrolled) .mm-header--overlay .wc-block-mini-cart__button { color: var(--wp--preset--color--glow); }
	html.mm-night body.mm-icons-float .mm-header .wp-block-navigation__responsive-container-open,
	html.mm-night body.mm-icons-float .mm-header .wc-block-mini-cart__button { color: #F3E9DC; }

	/* The phone menu: slides in from the left, full screen, soft see-through white. Main links centred;
	   the small links in one line at the very bottom with the Day / Night switch just above. */
	.mm-nav .wp-block-navigation__responsive-container.is-menu-open { background: rgba(255, 255, 255, .6) !important; -webkit-backdrop-filter: blur(16px); backdrop-filter: blur(16px); color: #111 !important; animation: mm-menu-in .5s cubic-bezier(.2, .7, .2, 1); }
	html.mm-night .mm-nav .wp-block-navigation__responsive-container.is-menu-open { background: rgba(22, 17, 14, .7) !important; color: #F3E9DC !important; }
	.mm-nav .is-menu-open .wp-block-navigation__responsive-container-content { position: relative; display: block !important; padding: 0 !important; }
	.mm-nav .is-menu-open .wp-block-navigation__container { display: grid !important; grid-template-columns: 1fr repeat(4, auto) 1fr; grid-template-rows: 1fr repeat(5, auto) 1fr auto; align-items: center; justify-items: center; column-gap: 1.1rem !important; row-gap: 1.6rem !important; min-height: calc(100dvh - 4.5rem); }
	.mm-nav .is-menu-open .wp-block-navigation__container > li:not(.mm-nav-more) { grid-column: 1 / -1; justify-self: center; }
	.mm-nav .is-menu-open .wp-block-navigation__container > li:nth-child(1) { grid-row: 2; }
	.mm-nav .is-menu-open .wp-block-navigation__container > li:nth-child(2) { grid-row: 3; }
	.mm-nav .is-menu-open .wp-block-navigation__container > li:nth-child(3) { grid-row: 4; }
	.mm-nav .is-menu-open .wp-block-navigation__container > li:nth-child(4) { grid-row: 5; }
	.mm-nav .is-menu-open .wp-block-navigation__container > li:nth-child(5) { grid-row: 6; }
	.mm-nav .is-menu-open .wp-block-navigation__container > li:nth-child(6) { grid-column: 2; }
	.mm-nav .is-menu-open .wp-block-navigation__container > li:nth-child(7) { grid-column: 3; }
	.mm-nav .is-menu-open .wp-block-navigation__container > li:nth-child(8) { grid-column: 4; }
	.mm-nav .is-menu-open .wp-block-navigation__container > li:nth-child(9) { grid-column: 5; }
	.mm-nav .is-menu-open .wp-block-navigation-item__content { font-size: 1.125rem; letter-spacing: .22em; text-transform: uppercase; }
	.mm-nav .is-menu-open .mm-nav-more { display: flex !important; grid-row: 8; }
	.mm-nav .is-menu-open .mm-nav-more .wp-block-navigation-item__content { font-size: .6875rem; letter-spacing: .16em; opacity: .7; }
	.mm-nav .is-menu-open .wp-block-navigation__responsive-container-close { top: 18px; right: 18px; }
	.mm-nav .is-menu-open .wp-block-navigation__responsive-container-close svg { width: 30px; height: 30px; }
	.mm-nav .is-menu-open .mm-light { position: absolute; left: 50%; bottom: 3.6rem; margin: 0; transform: translateX(-50%); }
}
@keyframes mm-menu-in { from { opacity: 0; transform: translateX(-24px); } to { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) { .mm-nav .wp-block-navigation__responsive-container.is-menu-open { animation: none; } }


/* ======================================================================
   6  Homepage
   ====================================================================== */
/* Hero video: fills the screen below the announcement bar; Ola's handwritten line under the logo */
.mm-main--home .mm-hero { min-height: calc(100svh - var(--mm-above-hero, 0px)) !important; height: auto !important; }
.mm-hero__row { justify-content: center !important; width: 100%; gap: var(--wp--preset--spacing--30); }
.mm-hero__title { margin: 0; font-size: clamp(1.25rem, 1.8vw, 1.6rem); font-weight: 200; line-height: 1.35; letter-spacing: .02em; color: var(--wp--preset--color--glow); }
.mm-hero__title--hand { position: absolute; top: var(--mm-hero-note-top, 8.5rem); left: 50%; width: max-content; max-width: 90vw; margin: 0 !important; font-family: var(--wp--preset--font-family--hand) !important; font-size: 1.35rem !important; font-weight: 400 !important; line-height: 1.15 !important; letter-spacing: .02em; text-align: center; transform: translateX(-50%) rotate(-4deg); transform-origin: center; -webkit-text-stroke: .45px currentColor; text-shadow: 0 1px 12px rgba(60, 30, 0, .25); }
.mm-hero .mm-eyebrow { color: var(--wp--preset--color--glow); opacity: .85; }
.mm-hero__link { margin: 0; }
.mm-hero__link a { color: var(--wp--preset--color--glow); font-weight: 400; font-size: .75rem; text-transform: uppercase; letter-spacing: .26em; }
@media (max-width: 781px) {
	.mm-hero__row { flex-direction: column; align-items: flex-start !important; }
}

/* How it works */
.mm-how .mm-display { margin-bottom: var(--wp--preset--spacing--40) !important; }
.mm-how__num { margin-bottom: 0; font-weight: 200; font-size: var(--wp--preset--font-size--l); color: var(--wp--preset--color--muted); }
.mm-how h3 { margin-top: .25rem; }
.mm-how p:not(.mm-how__num) { font-size: var(--wp--preset--font-size--s); color: var(--wp--preset--color--muted); }

/* Studio story: the hands photo and a handwritten line */
.mm-story__title { font-size: var(--wp--preset--font-size--xl); font-weight: 200; line-height: 1.25; }
.mm-story__title.mm-handnote { max-width: 22rem; margin: .75rem 0 1.5rem !important; transform: rotate(-4deg); transform-origin: left; }
.mm-story .wp-block-media-text__content { padding-inline: var(--wp--preset--spacing--50); }
@media (min-width: 782px) {
	.mm-story .mm-story__inner { grid-template-columns: minmax(0, 340px) minmax(0, 1fr) !important; max-width: 920px; margin-inline: auto !important; }
}
@media (max-width: 781px) {
	.mm-story .wp-block-media-text__content { padding: var(--wp--preset--spacing--30) 0 0; }
}

/* Shop by category hides itself while there is only one category (the tiles block renders nothing) */
.mm-categories:not(:has(.mm-cats)) { display: none; }

/* Style your home */
.mm-play__img img { display: block; width: 100%; height: auto; }
.mm-play__cols { gap: var(--wp--preset--spacing--50) !important; }


/* Shop on phones: the lamps start right under the header, so two full rows (four lamps) fit the first screen */
@media (max-width: 781px) {
	body.post-type-archive-product .mm-header, body.tax-product_cat .mm-header { padding-bottom: .35rem; }
	main.mm-shop { margin-top: 0 !important; padding-top: 0 !important; }
	.mm-shop .mm-lamps { margin-top: .5rem !important; }
	.mm-shop .mm-filter { margin-bottom: .75rem; }
	.mm-shop .mm-switch { margin-bottom: 1rem; }
	.mm-shop .mm-switch__btn { padding-block: .25rem; }
}


/* ======================================================================
   7  Product page
   Phones: title, one-line description, photos (swipe, 1 / N counter), price + finish, the longer
   description, then Add to cart; title, photo and price fit the first screen.
   ====================================================================== */
.mm-product__title { margin-bottom: .35rem; font-size: 1.75rem; font-weight: 200; text-transform: uppercase; letter-spacing: .28em; }
.mm-product__summary { color: var(--wp--preset--color--muted); }
.mm-product .wc-block-components-product-price { margin-block: var(--wp--preset--spacing--20); }
/* "Pearlescent": the finish, quietly after the price */
.mm-finish { margin: -.25rem 0 0 !important; font-size: .75rem; letter-spacing: .02em; text-transform: uppercase; color: var(--wp--preset--color--muted); }

/* Add to cart */
.mm-product .wp-block-woocommerce-add-to-cart-with-options form, .mm-product form.cart { display: flex; flex-wrap: wrap; align-items: stretch; gap: .75rem; margin-bottom: var(--wp--preset--spacing--20); }
.mm-product .wc-block-components-quantity-selector { border-radius: 0 !important; border-color: var(--wp--preset--color--line) !important; }
.mm-product .wc-block-components-quantity-selector::after { border-radius: 0 !important; }
.mm-product .single_add_to_cart_button, .mm-product .wp-block-woocommerce-add-to-cart-with-options button[type="submit"] { flex: 1; min-height: 3rem; border: 0; border-radius: 0 !important; background: var(--wp--preset--color--contrast) !important; color: #fff !important; font-family: var(--wp--preset--font-family--sans); font-size: .6875rem; font-weight: 400; text-transform: uppercase; letter-spacing: var(--wp--custom--tracking--label); }

/* Style your wall (lamp pages): a clear second action right under Add to cart */
.mm-try-wall { margin: 1rem 0 1.25rem !important; font-size: .75rem; color: var(--wp--preset--color--muted); text-align: center; }
.mm-try-wall a { display: block; margin-right: .5rem; padding: .9rem 1rem .8rem; border: 1px solid var(--wp--preset--color--contrast); color: var(--wp--preset--color--contrast); font-family: var(--wp--preset--font-family--sans); font-size: .6875rem; letter-spacing: .22em; text-transform: uppercase; text-decoration: none; transition: background var(--wp--custom--transition), color var(--wp--custom--transition); }
.mm-try-wall a::after { content: " \2192"; }
.mm-extra-bulb { margin: .75rem 0 0 !important; font-size: .8125rem; color: var(--wp--preset--color--muted); text-align: center; }
.mm-extra-bulb small { display: block; font-size: .75rem; }
.mm-try-wall a:hover { background: var(--wp--preset--color--contrast); color: var(--wp--preset--color--base); }
.mm-try-wall span { display: block; margin-top: .5rem; }

/* Reassurance lines under the button */
.mm-title-kind { font-family: var(--wp--preset--font-family--sans); font-size: 1rem; font-weight: 300; letter-spacing: .02em; text-transform: none; color: var(--wp--preset--color--muted); }
.mm-reassure { display: grid; gap: .3rem; margin: var(--wp--preset--spacing--20) 0 var(--wp--preset--spacing--30); padding: 0; list-style: none; font-size: var(--wp--preset--font-size--s); color: var(--wp--preset--color--muted); }
.mm-reassure strong { color: var(--wp--preset--color--contrast); font-weight: 400; }
.mm-reassure li::before { content: "·"; margin-right: .5rem; }
/* Payment marks after "Secure checkout" (2026-10-28, Ola: show at a glance how to pay; the real express buttons stay on cart and checkout) */
.mm-pay { display: inline-flex; flex-wrap: wrap; gap: 6px; align-items: center; vertical-align: middle; margin-left: .4rem; }
.mm-pay img { height: 24px; width: auto; border: 1px solid var(--wp--preset--color--line, #E3E3E3); border-radius: 4px; }
.mm-pay img[alt="Apple Pay"] { border: 0; } /* the Apple Pay mark carries its own outline */

/* Details (Design story, Size & materials...): hairlines, + / × */
.mm-details { border-top: 1px solid var(--wp--preset--color--line); }
.mm-details .wp-block-details { padding-block: .9rem; border-bottom: 1px solid var(--wp--preset--color--line); }
.mm-details summary { display: flex; justify-content: space-between; list-style: none; font-size: .75rem; text-transform: uppercase; letter-spacing: var(--wp--custom--tracking--label); cursor: pointer; }
.mm-details summary::-webkit-details-marker { display: none; }
.mm-details summary::after { content: "+"; font-size: 1rem; line-height: 1; transition: transform var(--wp--custom--transition); }
.mm-details details[open] > summary::after { transform: rotate(45deg); }
.mm-details summary:focus { outline: none; }
.mm-details summary:focus-visible { text-decoration: underline; text-underline-offset: 4px; }
.mm-details details > :not(summary) { margin-top: .75rem; font-size: var(--wp--preset--font-size--s); }
.mm-details .woocommerce-Tabs-panel h2 { display: none; }
.mm-details__img { max-width: 220px; margin: 1rem 0 .25rem; }
.mm-details__img img { width: 100%; height: auto; }

/* Version choice (WooCommerce variation pills and chips: Wireless / Hardwired) */
.mm-product .wp-block-woocommerce-add-to-cart-with-options-variation-selector-attribute-name,
.mm-product .wc-block-add-to-cart-with-options-variation-selector-attribute-name { margin-bottom: .5rem; font-size: .6875rem; text-transform: uppercase; letter-spacing: var(--wp--custom--tracking--label); }
.mm-product [class*="variation-selector-attribute-options"] { display: flex; flex-wrap: wrap; gap: .5rem; }
.mm-product [class*="variation-selector-attribute-options"] label,
.mm-product [class*="variation-selector-attribute-options__pill"] { padding: .55rem 1.1rem !important; border: 1px solid var(--wp--preset--color--line) !important; border-radius: 0 !important; background: transparent !important; font-size: .75rem !important; text-transform: uppercase; letter-spacing: var(--wp--custom--tracking--label); cursor: pointer; }
.mm-product [class*="variation-selector-attribute-options"] input:checked + label,
.mm-product [class*="variation-selector-attribute-options__pill"]:has(input:checked),
.mm-product [class*="variation-selector-attribute-options__pill"][aria-checked="true"],
.mm-product [class*="variation-selector-attribute-options__pill--selected"] { border-color: var(--wp--preset--color--contrast) !important; color: var(--wp--preset--color--contrast); }
.mm-product .wc-block-product-filter-chips, .mm-product .wc-block-product-filter-chips__items { gap: 1.75rem !important; }
.mm-product .wc-block-product-filter-chips__item { padding: .3rem 0 !important; border: 0 !important; border-bottom: 1px solid transparent !important; border-radius: 0 !important; background: transparent !important; box-shadow: none !important; color: var(--wp--preset--color--muted) !important; font-family: var(--wp--preset--font-family--sans) !important; font-size: .9375rem !important; font-weight: 300 !important; text-transform: none; letter-spacing: .03em; transition: color var(--wp--custom--transition), border-color var(--wp--custom--transition); }
.mm-product .wc-block-product-filter-chips__item:hover { color: var(--wp--preset--color--contrast) !important; }
.mm-product .wc-block-product-filter-chips__item[aria-checked="true"] { border-bottom-color: currentColor !important; color: var(--wp--preset--color--contrast) !important; }

/* Gallery: thumbnails in a column on the left of the main photo (desktop); no hover zoom anywhere */
.mm-product__gallery .wp-block-woocommerce-product-image-gallery { width: 100%; max-width: none; }
.mm-product__gallery .flex-control-thumbs img { aspect-ratio: 3 / 4; object-fit: cover; opacity: .55; cursor: pointer; transition: opacity var(--wp--custom--transition); }
.mm-product__gallery .flex-control-thumbs img.flex-active, .mm-product__gallery .flex-control-thumbs img:hover { opacity: 1; }
.woocommerce-product-gallery .zoomImg { display: none !important; }
.mm-gallery-count { display: none; }
@media (min-width: 782px) {
	.mm-product__gallery .woocommerce-product-gallery { display: grid; grid-template-columns: 76px minmax(0, 1fr); align-items: start; gap: .75rem; width: 100% !important; max-width: none !important; float: none !important; }
	.mm-product__gallery .woocommerce-product-gallery .flex-viewport,
	.mm-product__gallery .woocommerce-product-gallery__wrapper { grid-column: 2; grid-row: 1; }
	.mm-product__gallery .woocommerce-product-gallery__trigger { grid-column: 2; grid-row: 1; justify-self: end; z-index: 5; margin: .75rem; }
	.mm-product__gallery .woocommerce-product-gallery .flex-control-thumbs { grid-column: 1; grid-row: 1; display: flex; flex-direction: column; gap: .5rem; margin: 0; padding: 0; }
	.mm-product__gallery .woocommerce-product-gallery .flex-control-thumbs li { width: 100% !important; margin: 0 !important; float: none !important; list-style: none; }
}

/* Shop grids: price for two under a lamp's price (inc/bundles.php) */
.mm-kind-line { display: block; margin: -.6rem 0 .55rem; line-height: 1.2; font-size: .75rem; letter-spacing: .02em; color: var(--wp--preset--color--muted); opacity: .8; }
.mm-pair-price { display: block; margin-top: 0; line-height: 1.2; font-size: .75rem; letter-spacing: .02em; color: var(--wp--preset--color--muted); opacity: .8; }

/* Cart drawer: pair offer note above the subtotal (murmur.js) */
.mm-cart-note { display: flex; flex-wrap: wrap; justify-content: space-between; gap: .25rem 1rem; margin: .4rem 0 .9rem; font-size: .8125rem; }
.mm-cart-note:empty { display: none; }
.mm-cart-note small { flex-basis: 100%; font-size: .75rem; letter-spacing: .02em; opacity: .75; }
.mm-cart-note strong { margin-top: .5rem; font-size: .9375rem; }
.mm-cart-note .mm-cart-bulb { margin-top: .35rem; }
/* One discount per row (pair, 2 bulbs for 40): the label takes the room, the amount sits right. */
.mm-cart-note span:nth-of-type(odd) { flex: 1 0 60%; }
.mm-cart-bulb a, .mm-extra-bulb a { margin-left: .4rem; color: inherit; text-decoration: underline; text-underline-offset: .2em; }

/* Sticky add to cart. On desktop a small card at the left edge, clear of the cookie banner in the right corner. */
.mm-sticky-atc { position: fixed; left: 0; right: 0; bottom: 0; z-index: 30; display: flex; align-items: center; gap: .75rem; padding: .65rem 1rem calc(.65rem + env(safe-area-inset-bottom)); border-top: 1px solid var(--wp--preset--color--line); background: rgba(250, 250, 250, .97); backdrop-filter: blur(10px); transform: translateY(110%); transition: transform var(--wp--custom--transition); }
.mm-sticky-atc.is-visible { transform: none; }
.mm-sticky-atc__info { flex: 1; min-width: 0; line-height: 1.3; }
.mm-sticky-atc__name { display: block; font-size: .75rem; text-transform: uppercase; letter-spacing: var(--wp--custom--tracking--label); }
.mm-sticky-atc__price { font-size: .8125rem; color: var(--wp--preset--color--muted); }
.mm-sticky-atc__btn { padding: .85rem 1.4rem; border: 0; border-radius: 0; background: var(--wp--preset--color--contrast); color: #fff; font: inherit; font-size: .6875rem; text-transform: uppercase; letter-spacing: var(--wp--custom--tracking--label); cursor: pointer; }
/* Bag reminder: same place as the sticky add to cart; the sticky one wins when both could show. */
.mm-bagnote { position: fixed; left: 0; right: 0; bottom: 0; z-index: 30; padding: .95rem 1rem calc(.85rem + env(safe-area-inset-bottom)); border: 0; border-top: 1px solid var(--wp--preset--color--line); border-radius: 0; background: rgba(250, 250, 250, .97); backdrop-filter: blur(10px); color: inherit; font: inherit; font-size: .75rem; text-align: center; text-transform: uppercase; letter-spacing: var(--wp--custom--tracking--label); cursor: pointer; }
.mm-bagnote[hidden], body:has(.mm-sticky-atc.is-visible) .mm-bagnote { display: none; }
@media (min-width: 782px) {
	.mm-sticky-atc { left: 1.5rem; right: auto; bottom: 1.5rem; flex-direction: column; align-items: stretch; width: 15rem; padding: 1rem; border: 1px solid var(--wp--preset--color--line); transform: translateY(calc(100% + 2rem)); }
	.mm-sticky-atc__info { flex: none; display: flex; align-items: baseline; justify-content: space-between; gap: 1rem; }
	.mm-bagnote { left: 1.5rem; right: auto; bottom: 1.5rem; padding: .85rem 1.1rem .75rem; border: 1px solid var(--wp--preset--color--line); text-align: left; }
}

@media (max-width: 781px) {
	body.single-product .mm-header { padding-bottom: .35rem; }
	body.single-product .wp-site-blocks > main, body.single-product main.mm-product { margin-top: 0 !important; padding-top: .5rem !important; }
	/* One column; the info column's parts are reordered around the photos */
	.mm-product__top { display: flex !important; flex-direction: column; gap: 0 !important; }
	.mm-product__info { display: contents; }
	.mm-product__info > * { order: 5; }
	.mm-product__title, .mm-product__info > .mm-eyebrow { order: 1; }
	.mm-product__gallery { order: 2; width: 100%; flex-basis: auto !important; margin-bottom: .6rem !important; }
	.mm-product__info > .wp-block-woocommerce-product-price, .mm-product__info > .mm-finish { order: 3; }
	.mm-product__summary { order: 4; margin: .75rem 0 1.5rem !important; }
	.mm-product__title { margin-bottom: .2rem !important; }
	.mm-product__info > .mm-eyebrow { margin: 0 0 .75rem !important; }
	.mm-product__info > .wp-block-woocommerce-product-price { margin: 0 !important; line-height: 1.3; }
	.mm-finish { margin: .1rem 0 0 !important; }
	.mm-product__title, .mm-product__info > .mm-eyebrow, .mm-product__summary, .mm-product__info > .wp-block-woocommerce-product-price, .mm-finish, .mm-product__info > .mm-try-wall { text-align: center; }
	.mm-product__info > .mm-reassure, .mm-product__info > .mm-faq-more { text-align: left; }
	.mm-product__info .wc-block-add-to-cart-with-options, .mm-product__info form.cart { justify-content: center; }
	/* Photos: swipe, every photo the same height, a quiet 1 / N on the photo; the small squares stay on desktop */
	.mm-product__gallery .woocommerce-product-gallery { position: relative; margin: 0 !important; }
	.mm-product__gallery .woocommerce-product-gallery__image img { width: 100%; height: min(calc(100svh - 21rem), 133vw); object-fit: cover; }
	.mm-product__gallery .flex-control-thumbs { display: none !important; }
	.mm-gallery-count { display: block; margin: .6rem 0 0; text-align: right; font-size: .6875rem; letter-spacing: .08em; color: var(--wp--preset--color--muted); }
	.mm-product__gallery .mm-gallery-count { position: absolute; right: .6rem; bottom: .5rem; z-index: 2; margin: 0; color: #111; opacity: .6; }
}


/* ======================================================================
   8  Content pages
   ====================================================================== */
/* Page intro (Manifesto, plain pages) */
.mm-page-title { font-size: var(--wp--preset--font-size--l); font-weight: 300; line-height: 1.5; text-transform: uppercase; letter-spacing: .24em; }
.mm-page-intro .mm-lede { margin-top: 1rem; font-size: var(--wp--preset--font-size--s); text-transform: uppercase; letter-spacing: var(--wp--custom--tracking--label); }
.mm-page-img { margin-top: var(--wp--preset--spacing--30); }
.mm-page-img img { width: 100%; height: auto; max-height: 80vh; object-fit: cover; }
/* Small line under a photo (Contact, Trade & Collab, Newsletter) */
.mm-contact-line { margin-top: .75rem !important; font-size: .75rem; line-height: 1.6; letter-spacing: .01em; text-align: left; color: var(--wp--preset--color--muted); }
.mm-contact-line a { color: inherit; text-underline-offset: 3px; }

/* Label on the left (small caps), text on the right (FAQs) */
.mm-row { gap: var(--wp--preset--spacing--40) !important; margin: 0 !important; padding-block: var(--wp--preset--spacing--40); border-top: 1px solid var(--wp--preset--color--line); }
.mm-row:first-child { border-top: 0; }
.mm-row__label { padding-top: .3rem; color: var(--wp--preset--color--contrast); opacity: 1; }
.mm-row p { max-width: 38rem; }
@media (max-width: 781px) { .mm-row { gap: .75rem !important; } }

/* About, Sustainability: one screen per section, text and photo or video side by side (desktop);
   on phones the photo, the title and the text, centred, with the first screen holding note, photo and title */
.mm-split { gap: var(--wp--preset--spacing--50) !important; margin: 0 !important; }
.mm-split__text > * + * { margin-top: 1rem; }
.mm-split__text > :last-child { margin-bottom: 0 !important; }
.mm-split__text p { max-width: 30rem; }
.mm-split__media .mm-page-img, .mm-split__media .mm-page-video { margin: 0; }
.mm-split__media img, .mm-split__media video { display: block; width: 100%; height: calc(100svh - 12vh - 6rem); min-height: 360px; max-height: 680px; object-fit: cover; }
.mm-screens .mm-split { min-height: 100svh; padding-block: 2rem 12vh; align-items: flex-end !important; }
.mm-screens .mm-split > .wp-block-column { align-self: flex-end !important; }
.mm-screens .mm-split:first-child { min-height: calc(100svh - var(--mm-top, 150px)); padding-top: 0; padding-bottom: 6vh; }
.mm-screens .mm-split:first-child .mm-split__media img, .mm-screens .mm-split:first-child .mm-split__media video { height: calc(100svh - var(--mm-top, 150px) - 6vh - 1rem); }
/* Scroll snapping on wide screens: one flick moves to the next section */
@media (min-width: 782px) and (min-height: 560px) and (prefers-reduced-motion: no-preference) {
	html:has(.mm-screens) { scroll-snap-type: y mandatory; }
	html:has(.mm-screens) .wp-site-blocks > :first-child { scroll-snap-align: start; }
	.mm-screens .mm-split:not(:first-child) { scroll-snap-align: start; }
	html:has(.mm-screens) .wp-site-blocks > footer, html:has(.mm-screens) .wp-site-blocks > :last-child { scroll-snap-align: end; }
}
@media (max-width: 781px) {
	.mm-screens .mm-split, .mm-screens .mm-split:first-child { display: flex !important; flex-direction: column; gap: 0 !important; align-items: stretch !important; min-height: 0; padding-block: var(--wp--preset--spacing--30); }
	.mm-screens .mm-split__text { display: contents; }
	.mm-screens .mm-split__media { order: 1; width: 100%; flex-basis: auto !important; }
	.mm-screens .mm-split__heading { order: 2; margin: 1.75rem 0 1.75rem !important; text-align: center; }
	.mm-screens .mm-split__text > :not(.mm-split__heading) { order: 3; margin-top: 0 !important; margin-bottom: 1rem !important; }
	.mm-screens .mm-split__text > p { max-width: 30rem; margin-inline: auto !important; text-align: center; line-height: 1.65; }
	.mm-screens .mm-split .mm-signature { text-align: center; transform: rotate(-3deg); transform-origin: center; }
	.mm-split__media img, .mm-split__media video { height: auto; min-height: 0; aspect-ratio: 4 / 5; }
	.mm-screens .mm-split__media img, .mm-screens .mm-split__media video { aspect-ratio: auto !important; height: 58svh !important; min-height: 240px; }
	.mm-screens .mm-split:first-child .mm-split__media img, .mm-screens .mm-split:first-child .mm-split__media video { height: calc(100svh - var(--mm-top, 260px) - 7rem) !important; }
}

/* Trade & Collab, Contact, Newsletter: photo or text on one side, the form on the other */
.mm-split--form { align-items: flex-start !important; padding-top: 0; }
.mm-split--form .mm-split__text { position: sticky; top: 2rem; }
.mm-split--form .wpcf7 form { max-width: none; gap: .85rem; }
.mm-split--form .wpcf7 input[type="text"], .mm-split--form .wpcf7 input[type="email"], .mm-split--form .wpcf7 select { padding: .15rem 0 .4rem; line-height: 1.4; }
.mm-split--form .wpcf7 label { gap: .1rem; }
.mm-split--form .wpcf7 .wpcf7-acceptance label { gap: .6rem; }
.mm-split--form .wpcf7 textarea { height: 4.5rem; padding-top: .3rem; }
.mm-split--photo { align-items: flex-start !important; }
.mm-split__photo .mm-page-img { margin: 0; }
.mm-split__photo img { display: block; width: 100%; height: calc(100svh - 21rem); min-height: 300px; object-fit: cover; }
.mm-split--photo .wpcf7 form { gap: .6rem; }
.mm-split--form.mm-split--photo .wpcf7 textarea { height: 3.75rem; min-height: 3.5rem; }
.mm-split--photo .mm-split__form > p:first-child { margin-top: 0; margin-bottom: var(--wp--preset--spacing--20) !important; }
.mm-split--photo .mm-split__form > p:not(.wpcf7 p) { max-width: 34rem; }
.mm-main:has(.mm-split--photo) .mm-handnote--top { margin-bottom: 3rem !important; }
/* Short fields two per row (three beside a photo); the message, the privacy tick and Send take the full width */
@media (min-width: 782px) {
	.mm-split--form .wpcf7 form > p { display: grid; grid-template-columns: 1fr 1fr; gap: 1.9rem 2rem; margin: 0; }
	.mm-split--form .wpcf7 form > p > br { display: none; }
	.mm-split--photo .wpcf7 form > p { grid-template-columns: repeat(3, 1fr); }
	.mm-split--photo .wpcf7 form > p:has(select) { grid-template-columns: repeat(2, 1fr); row-gap: 1.4rem; }
	.mm-split--form .wpcf7 form > p > label:has(textarea), .mm-split--form .wpcf7 form > p > .wpcf7-acceptance, .mm-split--form .wpcf7 form > p > span:has(.wpcf7-acceptance), .mm-split--form .wpcf7 form > p > input[type="submit"], .mm-split--form .wpcf7 form > p > .wpcf7-spinner { grid-column: 1 / -1; }
}

/* Manifesto: one calm column, photos between paragraphs */
.mm-manifesto__p { margin-block: var(--wp--preset--spacing--30); font-size: 1.0625rem; line-height: 1.75; }
.mm-manifesto .mm-page-img { margin-block: var(--wp--preset--spacing--40); }
.mm-manifesto .mm-manifesto__opening { width: min(1100px, 92vw); max-width: none !important; margin-left: 50% !important; transform: translateX(-50%); }
.mm-manifesto__opening img { width: 100%; height: auto; max-height: 80vh; object-fit: cover; }
.mm-manifesto__close { margin-top: var(--wp--preset--spacing--50); font-size: var(--wp--preset--font-size--xl) !important; font-weight: 200 !important; text-transform: none !important; letter-spacing: .02em !important; }
.mm-manifesto .mm-signature { text-align: center; }

/* FAQs: title on the left, a dropdown that reads as part of the title, questions grouped by topic */
.mm-faqs__title { text-align: left; margin-bottom: var(--wp--preset--spacing--30) !important; }
.mm-faqs.has-picker .mm-faqs__title { margin-bottom: var(--wp--preset--spacing--20) !important; }
.mm-faqs.has-picker .mm-faq-tabs, .mm-faqs.has-picker .mm-faq-subnav { display: none !important; }
.mm-faq-pick { position: relative; display: block; margin: 0 0 var(--wp--preset--spacing--40); }
.mm-faq-pick__btn { position: relative; display: inline-block; padding: 0 1.75rem .2rem 0; border-bottom: 1px solid currentColor; list-style: none; font-size: 1.375rem; font-weight: 300; letter-spacing: .02em; color: var(--wp--preset--color--contrast); cursor: pointer; user-select: none; }
.mm-faq-pick__btn::-webkit-details-marker { display: none; }
.mm-faq-pick__btn::after { content: ""; position: absolute; right: .3rem; top: 50%; width: .45rem; height: .45rem; border-right: 1px solid currentColor; border-bottom: 1px solid currentColor; transform: translateY(-75%) rotate(45deg); transition: transform var(--wp--custom--transition); }
.mm-faq-pick[open] > .mm-faq-pick__btn::after { transform: translateY(-25%) rotate(-135deg); }
.mm-faq-pick__btn:focus { outline: none; }
.mm-faq-pick__btn:focus-visible { border-bottom-width: 2px; }
.mm-faq-pick__list { display: grid; gap: .15rem; margin: .9rem 0 0; padding: 0; list-style: none; }
.mm-faq-pick__list a { position: relative; display: inline-block; padding: .2rem 0 .2rem 1.1rem; font-size: 1.0625rem; font-weight: 300; letter-spacing: .02em; color: var(--wp--preset--color--muted); text-decoration: none; transition: color var(--wp--custom--transition); }
.mm-faq-pick__list a:hover, .mm-faq-pick__list a:focus-visible, .mm-faq-pick__list a[aria-current] { color: var(--wp--preset--color--contrast); outline: none; }
.mm-faq-pick__list a[aria-current]::before { content: ""; position: absolute; left: .2rem; top: 50%; width: 4px; height: 4px; border-radius: 50%; background: currentColor; transform: translateY(-50%); }
/* Tabs (the fallback without JavaScript), styled like the shop filter */
.mm-faq-tabs, .mm-faq-subnav { display: flex; flex-wrap: wrap; justify-content: flex-start; gap: .5rem 1.75rem; margin: 0 0 var(--wp--preset--spacing--30) !important; }
.mm-faq-tabs a, .mm-faq-subnav a { padding: .3rem 0; border-bottom: 1px solid transparent; font-size: .75rem; text-transform: uppercase; letter-spacing: .22em; color: var(--wp--preset--color--muted); text-decoration: none; }
.mm-faq-tabs a[aria-current], .mm-faq-subnav a[aria-current] { color: var(--wp--preset--color--contrast); border-bottom-color: currentColor; }
.mm-faq-subnav { gap: 1.75rem; }
.mm-faq-subnav a { font-size: .9375rem; font-weight: 300; text-transform: none; letter-spacing: .03em; transition: color var(--wp--custom--transition), border-color var(--wp--custom--transition); }
.mm-faq-subnav a:hover { color: var(--wp--preset--color--contrast); }
.mm-faq-tabs a:focus, .mm-faq-subnav a:focus { outline: none; }
.mm-faq-tabs a:focus-visible, .mm-faq-subnav a:focus-visible { outline: 1px solid currentColor; outline-offset: 4px; }
.mm-faq-panel[hidden], .mm-faq-sub[hidden] { display: none; }
.mm-faq-panel .mm-row:first-of-type, .mm-faq-sub .mm-row:first-child { border-top: 0; }
.mm-faq { border-top: 0; }
.mm-faq .wp-block-details { padding-block: .75rem; border-bottom: 0; }
.mm-faq .wp-block-details summary { align-items: center; gap: 1rem; font-size: var(--wp--preset--font-size--s); }
.mm-faq-more { margin-top: var(--wp--preset--spacing--20) !important; font-size: .6875rem; text-transform: uppercase; letter-spacing: var(--wp--custom--tracking--label); color: var(--wp--preset--color--muted); }

/* Legal pages: a readable text column */
.mm-legal h3 { margin-top: var(--wp--preset--spacing--40); font-size: .75rem !important; }
.mm-legal p { font-size: var(--wp--preset--font-size--s); line-height: 1.7; }

/* Journal list: one story per row, a tall photo with the text beside it */
.mm-journal > h1.wp-block-heading { margin-left: auto !important; margin-right: auto !important; }
.mm-journal__list .wp-block-post-template { display: flex; flex-direction: column; gap: var(--wp--preset--spacing--60); }
.mm-journal__item { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 4fr); gap: var(--wp--preset--spacing--50); align-items: start; }
.mm-journal__img { margin: 0; }
.mm-journal__img img { width: 100%; height: 100%; object-fit: cover; }
.mm-journal__text { max-width: 20rem; }
.mm-journal__title { margin: .4rem 0 .8rem !important; font-size: 1.125rem !important; font-weight: 300 !important; line-height: 1.3 !important; text-transform: uppercase; letter-spacing: .06em; }
.mm-journal__title a { text-decoration: none; }
.mm-journal__excerpt { font-size: .875rem; color: var(--wp--preset--color--muted); }
.mm-journal__excerpt .wp-block-post-excerpt__more-link { display: inline-block; margin-top: .5rem; color: var(--wp--preset--color--contrast); font-size: .75rem; text-transform: uppercase; letter-spacing: .04em; }
@media (max-width: 781px) {
	.mm-journal__item { grid-template-columns: 1fr; gap: var(--wp--preset--spacing--20); }
	.mm-journal__text { max-width: none; }
}

/* Journal story: the story on the left, the other stories in a quiet column on the right */
.mm-story-layout { display: grid; grid-template-columns: minmax(0, 1fr) 15rem; gap: var(--wp--preset--spacing--60); align-items: start; }
.mm-story-page__img { margin: 0 0 var(--wp--preset--spacing--40) !important; }
.mm-story-page .mm-eyebrow + .mm-story-page__title { margin-bottom: var(--wp--preset--spacing--30) !important; }
.mm-story-page__img { max-width: 40rem; }
.mm-story-page__img img { width: 100%; height: auto; aspect-ratio: 4 / 5; object-fit: cover; }
.mm-story-page__title { margin: .4rem 0 var(--wp--preset--spacing--40) !important; font-size: var(--mm-title-section) !important; font-weight: 200 !important; line-height: 1.15 !important; letter-spacing: .06em; text-transform: uppercase; }
.mm-story-page__body { max-width: 40rem; }
.mm-story-page__body h2 { margin-top: var(--wp--preset--spacing--40); font-size: 1rem; font-weight: 400; text-transform: uppercase; letter-spacing: .06em; }
.mm-story-page__body .wp-block-image, .mm-story-page__body .wp-block-gallery { max-width: none; margin-block: var(--wp--preset--spacing--40); }
.mm-story-page__body .wp-block-image img { width: 100%; height: auto; }
.mm-story-more { position: sticky; top: 6rem; }
.mm-story-more__label a { text-decoration: none; color: inherit; }
.mm-story-more__list .wp-block-post-template { display: flex; flex-direction: column; gap: var(--wp--preset--spacing--40); margin-top: var(--wp--preset--spacing--20); }
.mm-story-more__list .wp-block-post { opacity: .55; transition: opacity var(--wp--custom--transition); }
.mm-story-more__list .wp-block-post:hover { opacity: 1; }
.mm-story-more__img { margin: 0 0 .6rem; }
.mm-story-more__img img { width: 100%; height: 100%; object-fit: cover; }
.mm-story-more__title { margin: .3rem 0 .4rem !important; font-size: .8125rem !important; font-weight: 400 !important; line-height: 1.35 !important; text-transform: uppercase; letter-spacing: .06em; }
.mm-story-more__title a { text-decoration: none; }
.mm-story-more__excerpt { font-size: .8125rem; line-height: 1.55; }
@media (max-width: 781px) {
	.mm-story-layout { grid-template-columns: 1fr; gap: var(--wp--preset--spacing--50); }
	.mm-story-more { position: static; padding-top: var(--wp--preset--spacing--40); border-top: 1px solid var(--wp--preset--color--line); }
	.mm-story-more__list .wp-block-post-template { display: grid; grid-template-columns: 1fr 1fr; gap: var(--wp--preset--spacing--30); }
	.mm-story-more__list .wp-block-post { opacity: 1; }
	.mm-story-more__excerpt { display: none; }
}


/* ======================================================================
   9  Checkout: white page, hairline fields, a warm sand panel for the order summary
   ====================================================================== */
.mm-header--checkout { padding-block: 1.1rem; border-bottom: 1px solid var(--wp--preset--color--line); }
.mm-header--checkout .mm-header__side { margin: 0; }
.mm-header__back a { font-size: .6875rem; text-transform: uppercase; letter-spacing: var(--wp--custom--tracking--label); text-decoration: none; }
.mm-header__secure { font-size: .6875rem; text-align: right; text-transform: uppercase; letter-spacing: var(--wp--custom--tracking--label); color: var(--wp--preset--color--muted); }
@media (max-width: 781px) {
	.mm-header--checkout .mm-header__inner { grid-template-columns: 1fr auto 1fr; }
	/* Back arrow: bigger and on the same left edge as the checkout content (Ola, 2026-10-26). */
	.mm-header--checkout .mm-header__back { padding-left: var(--wp--style--root--padding-left, 2rem); }
	.mm-header__back a { display: inline-block; padding: .4rem .6rem .4rem 0; font-size: 0; }
	.mm-header__back a::before { content: "←"; font-size: 1.6rem; line-height: 1; font-style: normal; }
	.mm-header__secure { font-size: 0 !important; }
}
body.woocommerce-checkout, body.woocommerce-checkout .wp-site-blocks { background: #fff; }
.mm-checkout { --mm-sand: #F7F6F3; --mm-hair: rgba(17, 17, 17, .16); }
.mm-checkout .wc-block-components-title.wc-block-components-title { font-family: var(--wp--preset--font-family--sans); font-weight: 400; font-size: .75rem; text-transform: uppercase; letter-spacing: var(--wp--custom--tracking--label); }
.mm-checkout .wc-block-components-checkout-place-order-button { min-height: 3.25rem; border-radius: 0; font-family: var(--wp--preset--font-family--sans); font-size: .75rem; text-transform: uppercase; letter-spacing: var(--wp--custom--tracking--label); }
/* Fields: hairline boxes */
.mm-checkout .wc-block-components-text-input input, .mm-checkout .wc-blocks-components-select__select, .mm-checkout .wc-block-components-combobox .components-combobox-control__input, .mm-checkout .wc-block-components-radio-control__option { border-radius: 0 !important; }
.mm-checkout .wc-block-components-text-input input, .mm-checkout .wc-blocks-components-select__select, .mm-checkout .wc-block-components-combobox .components-combobox-control__input, .mm-checkout .wc-block-components-textarea { border: 1px solid var(--mm-hair) !important; box-shadow: none !important; background: #fff !important; font-weight: 300; }
.mm-checkout .wc-block-components-text-input input:focus, .mm-checkout .wc-blocks-components-select__select:focus, .mm-checkout .wc-block-components-combobox .components-combobox-control__input:focus { border-color: var(--wp--preset--color--contrast) !important; outline: none !important; }
.mm-checkout .wc-block-components-text-input label, .mm-checkout .wc-blocks-components-select__label, .mm-checkout .wc-block-components-combobox label { color: var(--wp--preset--color--muted); font-weight: 300; }
/* Choices (shipping, payment): hairline boxes, the chosen one slightly darker, no heavy black frame */
.mm-checkout .wc-block-components-radio-control--highlight-checked, .mm-checkout .wc-block-components-radio-control-accordion-option, .mm-checkout .wc-block-components-radio-control__option { box-shadow: none !important; }
.mm-checkout .wc-block-components-radio-control--highlight-checked::after, .mm-checkout .wc-block-components-radio-control--highlight-checked .wc-block-components-radio-control__option-checked::after, .mm-checkout .wc-block-components-radio-control-accordion-option--checked-option-highlighted::after, .mm-checkout .wc-block-components-radio-control__option-checked--highlighted::after { border-color: var(--mm-hair) !important; border-width: 1px !important; box-shadow: none !important; }
.mm-checkout .wc-block-components-radio-control--highlight-checked { border: 1px solid var(--mm-hair) !important; }
.mm-checkout .wc-block-components-radio-control__option-checked, .mm-checkout .wc-block-components-radio-control-accordion-option--checked-option-highlighted { background: var(--mm-sand); }
.mm-checkout .wc-block-components-radio-control__input { width: 16px !important; height: 16px !important; min-width: 16px !important; min-height: 16px !important; border: 1px solid rgba(17, 17, 17, .45) !important; }
.mm-checkout .wc-block-components-radio-control__input:checked::before { width: 8px !important; height: 8px !important; background: var(--wp--preset--color--contrast) !important; }
.mm-checkout .wc-block-components-radio-control__label, .mm-checkout .wc-block-components-radio-control__option .wc-block-components-radio-control__label { font-weight: 300 !important; }
.mm-checkout .wc-block-components-checkbox__input { border: 1px solid rgba(17, 17, 17, .45) !important; border-radius: 0 !important; box-shadow: none !important; }
/* Order summary: warm sand panel, light type */
.mm-checkout .wp-block-woocommerce-checkout-order-summary-block { padding: .5rem 1rem 1rem; border: 0 !important; background: var(--mm-sand); }
.mm-checkout .wp-block-woocommerce-checkout-order-summary-block .wc-block-components-checkout-order-summary__title-text, .mm-checkout .wc-block-components-checkout-order-summary__title { font-size: .75rem !important; font-weight: 400 !important; text-transform: uppercase; letter-spacing: var(--wp--custom--tracking--label); }
.mm-checkout .wp-block-woocommerce-checkout-order-summary-block .wc-block-components-totals-wrapper, .mm-checkout .wp-block-woocommerce-checkout-order-summary-block .wc-block-components-panel { border-color: rgba(17, 17, 17, .1) !important; }
.mm-checkout .wc-block-components-totals-footer-item .wc-block-components-totals-item__label, .mm-checkout .wc-block-components-totals-footer-item .wc-block-components-totals-item__value { font-size: 1.125rem !important; font-weight: 400 !important; }
.mm-checkout .wc-block-components-order-summary-item__quantity { min-width: 18px; height: 18px; border: 0 !important; box-shadow: none !important; background: var(--wp--preset--color--contrast) !important; color: #fff !important; font-size: 10px; }
.mm-checkout .wc-block-components-order-summary-item__image img { background: #fff; }
.mm-checkout .wc-block-components-product-metadata__description { display: none; }
.mm-reassure--row { display: flex; flex-wrap: wrap; justify-content: center; gap: .5rem 1.75rem; margin-top: var(--wp--preset--spacing--40); }
.mm-reassure--row li::before { content: none; }


/* ======================================================================
   10  Footer
   ====================================================================== */
.mm-footer { border-top: 1px solid var(--wp--preset--color--line); }
.mm-footer__newsletter { margin-bottom: var(--wp--preset--spacing--60); text-align: center; }
.mm-footer__newsletter p { margin-block: .75rem 1.5rem; }
.mm-footer .mm-eyebrow { color: var(--wp--preset--color--contrast); }
.mm-footer__links { display: grid; gap: .35rem; margin: .75rem 0 0; padding: 0; list-style: none; font-size: var(--wp--preset--font-size--s); }
.mm-footer__links a { text-decoration: none; }
.mm-footer__links a:hover { text-decoration: underline; }
.mm-ig { display: inline-flex; align-items: center; padding: .15rem 0; }
.mm-ig__icon { flex: none; width: 20px; height: 20px; color: currentColor; }
.mm-footer__base { margin-top: var(--wp--preset--spacing--50); padding-top: var(--wp--preset--spacing--20); border-top: 1px solid var(--wp--preset--color--line); color: var(--wp--preset--color--muted); }
.mm-footer__base p { margin: 0; }
/* Language switcher: EN PL FR IT CA as quiet small capitals, the current one underlined */
.mm-lang { display: flex; gap: .15rem; font-family: var(--mm-text); letter-spacing: .08em; }
.mm-lang a { padding: .2rem .35rem; color: inherit; text-decoration: none; }
.mm-lang a:hover, .mm-lang a[aria-current] { color: var(--wp--preset--color--contrast); text-decoration: underline; text-underline-offset: .3em; text-decoration-thickness: 1px; }
/* Desktop: link columns pushed right so the last one ends with the bottom line */
@media (min-width: 782px) {
	.mm-footer__cols { justify-content: space-between; }
	.mm-footer__cols > .wp-block-column:first-child { flex: 1 1 auto !important; }
	.mm-footer__cols > .wp-block-column:not(:first-child) { flex: 0 0 auto !important; min-width: 11rem; }
	.mm-footer__cols > .wp-block-column:last-child { min-width: 0; }
}
/* Phones: the three link columns side by side; everything above the dividing line centred */
@media (max-width: 781px) {
	.mm-footer__newsletter { margin-bottom: var(--wp--preset--spacing--50); }
	.mm-footer__cols { display: grid !important; grid-template-columns: repeat(3, 1fr); gap: 2rem .75rem; text-align: center; }
	.mm-footer__cols > .wp-block-column { margin: 0 !important; }
	.mm-footer__cols > .wp-block-column:first-child { grid-column: 1 / -1; }
	.mm-footer__cols p, .mm-footer__cols .mm-eyebrow { text-align: center; }
	.mm-footer__cols .mm-logo { display: block; width: max-content; margin-inline: auto; }
	.mm-footer__cols .mm-logo__img { width: 120px; }
	.mm-footer__links { justify-items: center; gap: .2rem; margin-top: .5rem; font-size: .75rem; }
	.mm-footer__base { margin-top: var(--wp--preset--spacing--40); }
	.mm-lang { order: -1; width: 100%; justify-content: center; margin-bottom: .5rem; }
	.mm-lang a { padding: .6rem .5rem; }
}


/* ======================================================================
   11  Newsletter pop-up (opens only from a "Join the list" / "Get 10% off" link)
   ====================================================================== */
.mm-signup { box-sizing: border-box; width: min(420px, calc(100vw - 2rem)); max-width: calc(100vw - 2rem); padding: 2.75rem 2rem 2rem; border: 1px solid var(--wp--preset--color--line, #e3e3e3); border-radius: 0; background: var(--wp--preset--color--base, #fafafa); color: var(--wp--preset--color--contrast, #111); text-align: center; }
.mm-signup::backdrop { background: rgba(17, 17, 17, .35); backdrop-filter: blur(3px); }
.mm-signup__close { position: absolute; top: .6rem; right: .9rem; background: none; border: 0; color: inherit; font-size: 1.4rem; line-height: 1; cursor: pointer; opacity: .6; }
.mm-signup__close:hover { opacity: 1; }
.mm-signup__title { margin: 0 0 .75rem; font-size: var(--mm-title-section) !important; }
.mm-signup__text { max-width: 30ch; margin: 0 auto 1.5rem; font-size: .875rem; line-height: 1.6; }
.mm-signup__text, .mm-signup__small, .mm-signup__thanks { font-family: var(--mm-text) !important; }
.mm-signup .wpcf7-form { text-align: left; }
.mm-signup .wpcf7-form p { margin: 0 0 .9rem; }
.mm-signup .wpcf7-form label { display: block; font-size: .75rem; letter-spacing: .02em; }
.mm-signup .wpcf7-form label:has([name="your-name"]) { display: none; } /* email only in the pop-up */
.mm-signup .wpcf7-acceptance, .mm-signup .wpcf7-acceptance a { font-size: .6875rem; line-height: 1.5; }
.mm-signup .wpcf7-submit { width: 100%; }
.mm-signup .wpcf7-spinner { position: absolute; }
.mm-signup .wpcf7-response-output:empty, .mm-signup .wpcf7-form.init .wpcf7-response-output { display: none; }
.mm-signup .wpcf7-response-output { margin: .75rem 0 0 !important; font-size: .75rem; }
.mm-signup__small { margin: 1rem 0 0; font-size: .75rem; color: var(--wp--preset--color--muted, #4f4f4f); }
.mm-signup__xo.mm-handnote { max-width: none; margin: .6rem auto 0 !important; transform: rotate(-4deg); }
.mm-signup__thanks { margin: 1rem 0 0; font-size: .875rem; }


/* ======================================================================
   12  Day / Night for the whole site
   Night: the site dims to a warm dusk; lamps glow, the logo and handwriting turn to light.
   Text goes one step heavier at night, because light text on dark looks thinner. Never on checkout.
   ====================================================================== */
.mm-light { display: inline-flex; align-items: center; gap: .55rem; margin-right: .6rem; padding: .4rem 0; background: none; border: 0; color: inherit; font: inherit; font-size: .625rem; text-transform: uppercase; letter-spacing: .2em; cursor: pointer; }
.mm-light__label { opacity: .45; transition: opacity 600ms; }
.mm-light[aria-pressed="false"] .mm-light__label--day, .mm-light[aria-pressed="true"] .mm-light__label--night { opacity: 1; }
.mm-light__track { position: relative; width: 2rem; height: 1rem; border-radius: 999px; box-shadow: inset 0 0 0 1px currentColor; opacity: .7; }
.mm-light__thumb { position: absolute; top: .2rem; left: .25rem; width: .6rem; height: .6rem; border-radius: 50%; box-shadow: inset 0 0 0 1px currentColor; transition: transform 600ms, background 600ms, box-shadow 600ms; }
.mm-light[aria-pressed="true"] .mm-light__thumb { background: radial-gradient(circle at 45% 45%, #fff3dc 0%, #ffc98f 28%, rgba(255, 150, 120, .85) 52%, rgba(246, 130, 160, .45) 72%, rgba(246, 130, 160, 0) 100%); box-shadow: 0 0 8px 2px rgba(255, 160, 110, .4), 0 0 16px 5px rgba(240, 130, 165, .22); transform: translateX(.9rem) scale(1.2); }
.mm-light:focus { outline: none; }
.mm-light:focus-visible .mm-light__track { outline: 1px solid currentColor; outline-offset: 3px; }
/* Narrow screens: the switch without its Day / Night words (the open phone menu shows them again) */
@media (max-width: 1180px) { .mm-light__label { display: none; } .mm-light { margin-right: .25rem; } }
@media (max-width: 781px) { .mm-nav .is-menu-open .mm-light__label { display: inline; } }

body, .wp-site-blocks, .mm-header, .mm-footer, .mm-announcement { transition: background-color 700ms ease, color 700ms ease; }
html.mm-night body:not(.woocommerce-checkout) {
	--wp--preset--color--base: #16110E;
	--wp--preset--color--mist: #211A15;
	--wp--preset--color--line: rgba(243, 233, 220, .14);
	--wp--preset--color--muted: #B8AA9B;
	--wp--preset--color--contrast: #F3E9DC;
	--wp--preset--color--white: #16110E;
	background: #16110E;
	color: #F3E9DC;
}
html.mm-night body:not(.woocommerce-checkout) .mm-logo__img--dark { display: none; }
html.mm-night body:not(.woocommerce-checkout) .mm-logo__img--light { display: block; }
html.mm-night body:not(.woocommerce-checkout) .mm-footer .mm-logo__img { filter: invert(1) sepia(.25) brightness(.96); }
html.mm-night body:not(.woocommerce-checkout) .mm-handnote, html.mm-night body:not(.woocommerce-checkout) .mm-signature { color: #F7E3C2; text-shadow: 0 0 14px rgba(255, 196, 110, .45); }
html.mm-night body:not(.woocommerce-checkout) .mm-split__media img, html.mm-night body:not(.woocommerce-checkout) .mm-split__photo img, html.mm-night body:not(.woocommerce-checkout) .mm-page-img img { filter: brightness(.82) saturate(.95); transition: filter 700ms; }
html.mm-night body:not(.woocommerce-checkout) .mm-cat__img { filter: brightness(.8); transition: filter 700ms; }
html.mm-night body:not(.woocommerce-checkout) .mm-switch__track, html.mm-night body:not(.woocommerce-checkout) .mm-switch__thumb { box-shadow: inset 0 0 0 1px rgba(243, 233, 220, .5); }
html.mm-night body:not(.woocommerce-checkout) .wc-block-mini-cart__badge { background: #F3E9DC !important; color: #16110E !important; }
html.mm-night body:not(.woocommerce-checkout) .wp-element-button, html.mm-night body:not(.woocommerce-checkout) .wc-block-components-button:not(.is-link), html.mm-night body:not(.woocommerce-checkout) .wpcf7 input[type="submit"] { color: #16110E !important; }
html.mm-night body:not(.woocommerce-checkout) .wc-block-components-drawer, html.mm-night body:not(.woocommerce-checkout) .wc-block-mini-cart__drawer .wc-block-components-drawer__content, html.mm-night body:not(.woocommerce-checkout) .wp-block-woocommerce-mini-cart-contents, html.mm-night body:not(.woocommerce-checkout) .wc-block-mini-cart__footer { background: #16110E !important; color: #F3E9DC; }
/* Cart drawer follows Day / Night both ways, whatever colour WooCommerce stamped on it at load (2026-10-25) */
html:not(.mm-night) body:not(.woocommerce-checkout) .wc-block-components-drawer, html:not(.mm-night) body:not(.woocommerce-checkout) .wc-block-mini-cart__drawer .wc-block-components-drawer__content, html:not(.mm-night) body:not(.woocommerce-checkout) .wp-block-woocommerce-mini-cart-contents, html:not(.mm-night) body:not(.woocommerce-checkout) .wc-block-mini-cart__footer { background: #FFFFFF !important; color: #111111 !important; }
html.mm-night body:not(.woocommerce-checkout) .wc-block-mini-cart__drawer :is(h2, .wc-block-mini-cart__title, .wc-block-components-product-name, .wc-block-components-product-price, .wc-block-components-formatted-money-amount, .wc-block-components-totals-item__label, .wc-block-components-totals-item__value, .wc-block-components-quantity-selector__input, .wc-block-components-quantity-selector__button) { color: #F3E9DC !important; }
html.mm-night body:not(.woocommerce-checkout) .wc-block-components-drawer .wc-block-components-drawer__close, html.mm-night body:not(.woocommerce-checkout) .wc-block-components-drawer .wc-block-components-button.wc-block-components-drawer__close { color: #F3E9DC !important; background: transparent !important; }
html.mm-night body:not(.woocommerce-checkout) .wc-block-components-drawer__close svg { fill: currentColor !important; }
/* The cookie banner never covers the open cart: it waits below the drawer until the cart closes */
body:has(.wc-block-components-drawer__screen-overlay:not(.wc-block-components-drawer__screen-overlay--is-hidden)) .cmplz-cookiebanner { z-index: 9 !important; }

/* Cookie banner (Complianz, WEB-45): a small quiet note, Accept and Deny with equal weight. Bottom bar on phones;
   on desktop in the middle, clear of the bag card on the left and Add to bag on the right. */
.cmplz-cookiebanner.cmplz-show { left: 0 !important; right: 0 !important; bottom: 0 !important; width: 100% !important; min-width: 0 !important; max-width: none !important; margin: 0 !important; padding: .9rem 1rem calc(.8rem + env(safe-area-inset-bottom)) !important; gap: .6rem !important; border-top: 1px solid var(--wp--preset--color--line); border-radius: 0 !important; box-shadow: none !important; background: var(--wp--preset--color--base, #fafafa) !important; color: inherit !important; }
.cmplz-cookiebanner .cmplz-header, .cmplz-cookiebanner .cmplz-divider { display: none !important; }
.cmplz-cookiebanner .cmplz-body, .cmplz-cookiebanner .cmplz-message { margin: 0 !important; }
.cmplz-cookiebanner .cmplz-message { font-size: .75rem !important; line-height: 1.4 !important; color: inherit !important; }
/* Complianz sets these to its own banner width, which pushed the View preferences text out on the left. */
.cmplz-cookiebanner.cmplz-show { grid-template-columns: minmax(0, 1fr) !important; }
.cmplz-cookiebanner .cmplz-body { width: 100% !important; max-width: 100% !important; min-width: 0 !important; overflow-x: hidden !important; }
.cmplz-cookiebanner .cmplz-message, .cmplz-cookiebanner .cmplz-categories { width: 100% !important; max-width: 100% !important; min-width: 0 !important; }
.cmplz-cookiebanner .cmplz-category-header { width: auto !important; }
.cmplz-cookiebanner .cmplz-buttons { display: grid !important; grid-template-columns: 1fr 1fr; gap: .5rem !important; margin: 0 !important; }
.cmplz-cookiebanner .cmplz-btn { width: 100% !important; height: auto !important; min-height: 0 !important; margin: 0 !important; padding: .65rem .5rem .55rem !important; border: 1px solid currentColor !important; border-radius: 0 !important; background: none !important; color: inherit !important; font-size: .6875rem !important; font-weight: 400 !important; text-transform: uppercase; letter-spacing: .08em; }
.cmplz-cookiebanner .cmplz-btn.cmplz-view-preferences, .cmplz-cookiebanner .cmplz-btn.cmplz-manage-options { grid-column: 1 / -1; padding: .1rem 0 !important; border: 0 !important; text-transform: none; letter-spacing: 0; text-decoration: underline; text-underline-offset: .2em; }
.cmplz-cookiebanner .cmplz-btn.cmplz-save-preferences { grid-column: 1 / -1; }
.cmplz-cookiebanner .cmplz-links, .cmplz-cookiebanner .cmplz-links a { margin: 0 !important; font-size: .6875rem !important; color: inherit !important; }
.cmplz-cookiebanner .cmplz-documents { justify-content: center; margin: 0 !important; }
@media (min-width: 782px) {
	.cmplz-cookiebanner.cmplz-show { left: 50% !important; right: auto !important; bottom: 1.5rem !important; width: 26rem !important; max-width: 26rem !important; padding: 1rem !important; border: 1px solid var(--wp--preset--color--line); transform: translateX(-50%); }
}
html.mm-night .cmplz-cookiebanner.cmplz-show { border-color: rgba(243, 233, 220, .2) !important; background: #16110E !important; color: #F3E9DC !important; }
html.mm-night .mm-halo__core { background: radial-gradient(closest-side, rgba(255, 178, 110, .42), rgba(255, 140, 110, .18) 55%, rgba(255, 150, 110, 0)); }
html.mm-night .mm-halo__aura { background: radial-gradient(closest-side, rgba(240, 110, 160, .28), rgba(255, 130, 120, .12) 50%, rgba(240, 120, 160, 0)); }
html.mm-night :is(.mm-sticky-atc, .mm-bagnote) { border-color: rgba(243, 233, 220, .2); background: rgba(22, 17, 14, .97); color: #F3E9DC; }
html.mm-night .mm-sticky-atc__price { color: inherit; opacity: .75; }
html.mm-night .mm-sticky-atc__btn { background: #F3E9DC; color: #16110E; }
html.mm-night .mm-try-wall a { border-color: #F3E9DC; color: #F3E9DC; }
html.mm-night .mm-try-wall a:hover { background: #F3E9DC; color: #16110E; }
html.mm-night .mm-signup { border-color: rgba(243, 233, 220, .2); background: #16110E; color: #F3E9DC; }
html.mm-night:root body:not(.woocommerce-checkout) :is(.mm-eyebrow, .mm-filter__btn, .mm-switch, .mm-light, .mm-lamp__name, .mm-lamp__price, .mm-cat__name, .mm-cat__cta, .mm-details summary, .mm-hero__link a, .mm-reassure, .mm-footer__links, .mm-footer__base, .mm-contact-line, .mm-faq-pick__list a, .mm-how h3, .mm-how p, .mm-product__summary, .mm-specs, .mm-details details > :not(summary)),
html.mm-night:root body:not(.woocommerce-checkout) :is(.mm-split__text p:not(.mm-signature), .mm-manifesto__p, .mm-page-body p:not(.mm-signature):not(.mm-handnote), .mm-story p, .mm-story-page__body p:not(.mm-signature):not(.mm-handnote), .mm-story-page__body li) { font-weight: 400 !important; }

/* Phones (2026-10-26, Ola): the stacked header stays (logo, menu, bag; to the sides on scroll). The language choice
   leaves the header: the current code alone just under the menu's close button, and again in the bottom left corner (on the
   home page just under "Discover the collection", same left edge); a tap on either unfolds the row. No box on menu links. */
@media (max-width: 781px) {
	.mm-header .mm-header__side--right .mm-langpick:not(.mm-langpick--menu) { display: none; }
	.mm-nav .wp-block-navigation__responsive-container:not(.is-menu-open) .mm-langpick--menu { display: none; }
	.mm-nav .is-menu-open .mm-langpick--menu { position: absolute; top: 3.9rem; left: 50%; margin: 0; transform: translateX(-50%); font-size: .7rem; }
	.mm-langpick--menu summary { padding: .4rem 0; letter-spacing: .2em; }
	/* Hidden but kept in place when open: removing it would drop focus, and the menu closes when focus leaves it. */
	.mm-langpick--menu[open] summary { position: absolute; inset: 0; opacity: 0; pointer-events: none; }
	.mm-nav .is-menu-open a:focus { outline: none !important; }
	.mm-nav .is-menu-open a:focus-visible { text-decoration: underline; text-underline-offset: .35em; text-decoration-thickness: 1px; }
	.mm-nav .mm-langpick--menu .mm-lang, .mm-langpick--corner .mm-lang { position: static; display: flex; gap: 1.1rem; width: auto; min-width: 0; padding: 0; border: 0; background: none; box-shadow: none; transform: none; animation: none; order: 0; margin: 0; justify-content: flex-start; font-size: inherit; letter-spacing: .2em; }
	.mm-nav .mm-langpick--menu .mm-lang a, .mm-langpick--corner .mm-lang a { padding: .3rem 0; color: inherit; opacity: .55; text-decoration: none; }
	.mm-nav .mm-langpick--menu .mm-lang a[aria-current], .mm-langpick--corner .mm-lang a[aria-current] { opacity: 1; text-decoration: underline; text-underline-offset: .3em; text-decoration-thickness: 1px; }
	.mm-langpick--corner { position: fixed; left: 9px; bottom: 1.1rem; z-index: 40; display: flex; align-items: center; gap: 1.1rem; margin: 0; font-size: .7rem; color: var(--wp--preset--color--contrast); opacity: .45; transition: opacity 300ms, bottom 300ms; }
	.mm-langpick--corner[open] { opacity: .9; padding: .35rem .7rem; margin: -.35rem -.7rem; background: var(--wp--preset--color--base); }
	.mm-langpick--corner summary { padding: .3rem 0; }
	/* In the left margin, in line with the menu icon (Ola, 2026-10-26); on the home photo under "Discover the collection". */
	body:not(.mm-scrolled):has(.mm-header--overlay) .mm-langpick--corner { left: 24px; color: #fff; opacity: .7; background: none; }
	/* Above the sticky Add to cart bar on lamp pages when it shows. */
	body:has(.mm-sticky-atc.is-visible, .mm-bagnote:not([hidden])) .mm-langpick--corner { bottom: calc(4.4rem + env(safe-area-inset-bottom)); }
	body:not(.mm-scrolled):has(.mm-header--overlay) .mm-langpick--corner a { color: #fff !important; }
	.mm-langpick--corner summary::after { display: none; }
	.mm-langpick--corner[open] summary { display: none; }
	html.has-modal-open .mm-langpick--corner, body.woocommerce-checkout .mm-langpick--corner, body.woocommerce-cart .mm-langpick--corner { display: none; }
}
@media (min-width: 782px) { .mm-langpick--corner, .mm-langpick--menu { display: none !important; } }
}
