.mmc-home { background: #f7f0e6; }
.mmc-hero { position: relative; isolation: isolate; width: 100%; aspect-ratio: 2129 / 739; color: #fffaf1; background: #21180d; overflow: hidden; }
.mmc-hero__image { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; object-position: center bottom; z-index: -2; }
.mmc-slide::before { content: ''; position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg, rgba(0,0,0,.34), transparent 35%), radial-gradient(ellipse at 46% 50%, rgba(17,10,3,.26), transparent 51%); pointer-events: none; }
.mmc-masthead { position: absolute; inset: 0 0 auto; height: 24%; z-index: 5; }
.mmc-brand { display: block; position: absolute; left: 2.5%; top: 1.2vw; width: 14%; aspect-ratio: 154 / 112; overflow: hidden; }
.mmc-brand::before { content: none; }
.mmc-brand img { display: block; position: absolute; width: 111%; max-width: none; height: auto; left: -5.5%; top: -32%; filter: none; }
.mmc-menu { position: absolute; left: 25%; top: 2.65vw; width: 54%; display: flex; align-items: center; justify-content: space-between; gap: 15px; }
.mmc-menu a { position: relative; color: #fffdf8; font: 400 clamp(12px,1.28vw,22px)/1.25 Georgia, 'Times New Roman', serif; text-transform: uppercase; white-space: nowrap; text-shadow: 0 1px 5px #000; padding-bottom: .7vw; text-decoration: none; }
.mmc-menu a:hover, .mmc-menu a:focus-visible { color: #e3b453; }
.mmc-menu a[aria-current='page']::before { content: ''; position: absolute; height: 1px; background: #c7983a; width: 100%; bottom: 0; left: 0; }
.mmc-menu a[aria-current='page']::after { content: '♥'; position: absolute; left: 50%; bottom: -.42vw; transform: translateX(-50%); color: #d3a445; font-size: clamp(9px,.85vw,16px); }
.mmc-hero__content { position: absolute; top: 30%; left: 32%; width: 36%; text-align: center; text-shadow: 0 2px 7px #160c08b3; }
.mmc-hero__content :is(h1,h2) { color: #fffaf1; font: 400 clamp(28px,4.65vw,82px)/.99 Georgia, 'Times New Roman', serif; letter-spacing: -.075vw; margin: 0; }
.mmc-heart-rule { display: flex; align-items: center; justify-content: center; gap: .55vw; width: 57%; margin: .45vw auto .55vw; color: #d6a449; font: 400 1.8vw/1 Georgia, serif; }
.mmc-heart-rule::before, .mmc-heart-rule::after { content: ''; height: 1px; flex: 1; background: linear-gradient(90deg,transparent,#c99637); }
.mmc-heart-rule::after { transform: scaleX(-1); }
.mmc-hero__content p { color: #fff9ed; font: italic 400 clamp(12px,1.62vw,28px)/1.3 Georgia, 'Times New Roman', serif; white-space: nowrap; margin: 0 0 2.1vw; }
.mmc-hero__content p span { padding: 0 .3vw; color: #d7ad55; }
.mmc-menu-cta { display: inline-flex; align-items: center; justify-content: center; min-height: 3.65vw; padding: .7vw 2.3vw; border: 1px solid #d3a550; border-radius: 999px; background: linear-gradient(#920819,#740311); box-shadow: 0 0 0 3px #bf8d4230, 0 4px 12px #0004; color: #fff4e5; font: 400 clamp(12px,1.38vw,24px)/1.2 Georgia, 'Times New Roman', serif; text-transform: uppercase; text-decoration: none; text-shadow: none; transition: background .2s, box-shadow .2s; }
.mmc-menu-cta:hover, .mmc-menu-cta:focus-visible { color: #fff; background: #a11324; box-shadow: 0 0 0 4px #d4aa5655; }
.mmc-flourish { display: flex; align-items: center; justify-content: center; color: #d5a44b; margin: .55vw auto 0; width: 24%; font: 400 1.65vw/1 Georgia, serif; }
.mmc-flourish::before, .mmc-flourish::after { content: ''; flex: 1; height: 1px; background: linear-gradient(90deg, transparent,#bd8c38); }
.mmc-flourish::after { transform: scaleX(-1); }
.mmc-flourish span:last-child { transform: scaleX(-1); }
.mmc-flourish b { font-weight: 400; }
.mmc-menu-toggle { display: none; }
.mmc-slides, .mmc-slide { position: absolute; inset: 0; }
.mmc-slide { isolation: isolate; overflow: hidden; will-change: transform; }
.mmc-slide[hidden] { display: none; }
.mmc-slides { touch-action: pan-y; }
.mmc-slider-arrow, .mmc-slider-controls { display: none; }
.mmc-hero.is-ready .mmc-slider-arrow { display: grid; place-items: center; position: absolute; top: 53%; z-index: 6; width: 38px; height: 44px; border: 1px solid #d5aa5477; border-radius: 3px; color: #fff5df; background: #1e140966; font: 32px/1 Georgia,serif; transition: background .2s; }
.mmc-slider-prev { left: 12px; }
.mmc-slider-next { right: 12px; }
.mmc-hero.is-ready .mmc-slider-controls { display: flex; position: absolute; bottom: 7px; left: 50%; transform: translateX(-50%); z-index: 6; gap: 5px; align-items: center; }
.mmc-slider-dot { display: grid; place-items: center; width: 24px; height: 24px; padding: 0; border: 0; background: transparent; }
.mmc-slider-dot::before { content: ''; width: 6px; height: 6px; border: 1px solid #ecc878; border-radius: 50%; background: #21180d80; }
.mmc-slider-dot[aria-current='true']::before { background: #ecc878; box-shadow: 0 0 0 2px #e0b56033; }
.mmc-slider-pause { border: 0; padding: 0; width: 26px; height: 24px; color: #e8c679; background: #21180d66; font: 12px/1 Arial,sans-serif; border-radius: 3px; }
.mmc-slider-arrow:hover { background: #6f0717; }
.mmc-hero.is-ready .mmc-flourish { visibility: hidden; }
.mmc-hero button:focus-visible { outline: 2px solid #ebc772; outline-offset: 2px; }
.mmc-hero a:focus-visible, .mmc-menu-toggle:focus-visible { outline: 2px solid #ebc772; outline-offset: 5px; }

@media (max-width: 767px) {
 .mmc-hero { aspect-ratio: auto; min-height: 560px; }
 .mmc-slide { background: #171008; }
 .mmc-hero__image { top: auto; bottom: 64px; height: auto; object-position: center; }
 .mmc-slide::before { background: linear-gradient(180deg,transparent 55%,#171008 63%,transparent 76%); }
 .mmc-masthead { height: 120px; }
 .mmc-brand { top: 15px; left: 18px; width: 120px; }
 .mmc-menu-toggle { position: absolute; top: 28px; right: 22px; display: flex; align-items: center; gap: 10px; border: 1px solid #bb9348; border-radius: 3px; background: #1c130dce; color: #fff7e7; padding: 11px 13px; font: 14px Georgia,serif; text-transform: uppercase; }
 .mmc-menu-toggle__icon, .mmc-menu-toggle__icon::before, .mmc-menu-toggle__icon::after { width: 17px; height: 1px; background: #e3bd70; display: block; }
 .mmc-menu-toggle__icon { position: relative; }
 .mmc-menu-toggle__icon::before, .mmc-menu-toggle__icon::after { content: ''; position: absolute; top: -5px; }
 .mmc-menu-toggle__icon::after { top: 5px; }
 .mmc-menu { display: none; top: 103px; left: 16px; width: calc(100% - 32px); padding: 20px; background: #1b140cf5; border: 1px solid #ab833f; box-shadow: 0 10px 30px #0005; grid-template-columns: 1fr 1fr; gap: 24px; }
 .mmc-menu.is-open { display: grid; }
 .mmc-menu a { justify-self: start; font-size: 14px; padding-bottom: 8px; }
 .mmc-menu a[aria-current='page']::after { bottom: -5px; font-size: 11px; }
 .mmc-hero__content { top: 150px; left: 5%; width: 90%; }
 .mmc-hero__content :is(h1,h2) { font-size: clamp(34px,8.5vw,58px); line-height: 1.04; letter-spacing: -.6px; }
 .mmc-heart-rule { font-size: 22px; gap: 8px; margin: 14px auto; width: 180px; }
 .mmc-hero__content p { font-size: clamp(13px,3.6vw,19px); white-space: normal; margin-bottom: 28px; }
 .mmc-menu-cta { min-height: 46px; padding: 12px 27px; font-size: 14px; }
 .mmc-flourish { font-size: 23px; margin-top: 14px; width: 92px; }
 .mmc-hero.is-ready .mmc-slider-arrow { top: auto; bottom: 22px; width: 44px; }
 .mmc-hero.is-ready .mmc-slider-controls { bottom: 28px; left: 50%; }
}


/* Overlay the copy on full-bleed photography on phones and tablets. */
@media (max-width: 1024px) {
 .mmc-hero { aspect-ratio: auto; min-height: 0; padding-bottom: 0; background: #171008; }
 .mmc-slides { position: relative; inset: auto; display: grid; }
 .mmc-slide { position: relative; inset: auto; grid-area: 1 / 1; display: flex; flex-direction: column; min-height: 0; box-sizing: border-box; padding: 116px 0 56px; background: #171008; }
 .mmc-slide[hidden] { display: none; }
 .mmc-hero__content { position: relative; top: auto; left: auto; width: 100%; box-sizing: border-box; min-height: clamp(170px,34.72vw,356px); display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 10px 28px; margin: 0; order: 0; text-shadow: 0 2px 12px #000b; }
 .mmc-hero__content :is(h1,h2) { font-size: clamp(22px,4.4vw,36px); line-height: 1.08; letter-spacing: -.5px; }
 .mmc-hero__content p { white-space: normal; font-size: clamp(11px,1.8vw,16px); line-height: 1.4; margin: 0 auto 10px; max-width: 480px; }
 .mmc-heart-rule { width: 110px; font-size: 15px; gap: 6px; margin: 7px auto; }
 .mmc-menu-cta { max-width: 100%; box-sizing: border-box; min-height: 34px; padding: 8px 16px; font-size: 11px; white-space: normal; }
 .mmc-flourish { display: none; }
 .mmc-hero__image { position: absolute; inset: 116px 0 56px; display: block; width: 100%; height: calc(100% - 172px); aspect-ratio: auto; object-fit: contain; object-position: center; z-index: -2; }
 .mmc-slide::before { display: block; background: radial-gradient(ellipse at center,#17100880,transparent 75%); }
 .mmc-masthead { height: 116px; }
 .mmc-brand { top: 12px; left: 20px; width: 120px; }
 .mmc-menu-toggle { position: absolute; top: 30px; right: 20px; display: flex; align-items: center; gap: 10px; min-height: 44px; border: 1px solid #bb9348; border-radius: 3px; background: #1c130d; color: #fff7e7; padding: 11px 13px; font: 14px Georgia,serif; text-transform: uppercase; }
 .mmc-menu { display: none; top: 108px; left: 16px; width: calc(100% - 32px); box-sizing: border-box; padding: 16px; background: #1b140c; border: 1px solid #ab833f; box-shadow: 0 10px 30px #0005; grid-template-columns: 1fr 1fr; gap: 8px 16px; }
 .mmc-menu.is-open { display: grid; }
 .mmc-menu a { display: flex; align-items: center; justify-self: stretch; min-height: 44px; font-size: 14px; padding: 4px 0; }
 .mmc-menu a[aria-current='page']::after { bottom: -5px; font-size: 11px; }
 .mmc-hero.is-ready .mmc-slider-arrow { top: auto; bottom: 12px; width: 44px; height: 44px; }
 .mmc-hero.is-ready .mmc-slider-controls { bottom: 12px; gap: 0; }
 .mmc-slider-dot, .mmc-slider-pause { width: 36px; height: 44px; }
}


/* Bound the desktop logo and copy just like the other text elements. */
@media (min-width: 1025px) {
 .mmc-brand { width: clamp(140px,14vw,260px); }
 .mmc-hero__content { left: 50%; width: min(36%,720px); transform: translateX(-50%); }
 .mmc-heart-rule { font-size: clamp(18px,1.8vw,32px); }
 .mmc-menu-cta { min-height: clamp(44px,3.65vw,68px); padding: clamp(10px,.7vw,14px) clamp(24px,2.3vw,44px); }
}


/* Keep the complete hero on one responsive canvas, bounded on wide viewports. */
@media (min-width: 1025px) {
 .mmc-hero { max-width: 1920px; margin-inline: auto; container-type: inline-size; aspect-ratio: 2129 / 891; }
 .mmc-brand { width: clamp(140px,14cqw,260px); top: 1.2cqw; }
 .mmc-menu { top: 2.65cqw; gap: .8cqw; }
 .mmc-menu a { font-size: clamp(12px,1.28cqw,22px); padding-bottom: .7cqw; }
 .mmc-menu a[aria-current='page']::after { bottom: -.42cqw; font-size: clamp(9px,.85cqw,16px); }
 .mmc-hero__content :is(h1,h2) { font-size: clamp(28px,4.65cqw,82px); letter-spacing: -.075cqw; }
 .mmc-hero__content p { font-size: clamp(12px,1.62cqw,28px); margin-bottom: 2.1cqw; }
 .mmc-heart-rule { font-size: clamp(18px,1.8cqw,32px); gap: .55cqw; margin: .45cqw auto .55cqw; }
 .mmc-menu-cta { min-height: clamp(44px,3.65cqw,68px); padding: clamp(10px,.7cqw,14px) clamp(24px,2.3cqw,44px); font-size: clamp(12px,1.38cqw,24px); }
}



/* Header cart: click/tap and keyboard accessible on every screen size. */
.mmc-header-cart { position: absolute; right: 5%; top: 2cqw; z-index: 10; }
.mmc-header-cart summary { position: relative; display: grid; place-items: center; width: 48px; height: 48px; border: 1px solid #d3a550; border-radius: 50%; background: #8e0718; color: #fff4e5; cursor: pointer; list-style: none; font-size: 24px; }
.mmc-header-cart summary::-webkit-details-marker { display: none; }
.mmc-header-cart summary:hover, .mmc-header-cart[open] summary { background: #ac1127; }
.mmc-header-cart summary:focus-visible { outline: 2px solid #ebc772; outline-offset: 4px; }
.mmc-header-cart__count { position: absolute; right: -5px; top: -6px; display: grid; place-items: center; min-width: 22px; height: 22px; padding: 0 4px; border-radius: 20px; border: 1px solid #fff4e5; background: #a7782c; font: 13px/1 Arial,sans-serif; }
.mmc-header-cart__panel { position: absolute; right: 0; top: 60px; width: 320px; max-width: calc(100vw - 32px); box-sizing: border-box; padding: 24px; border: 1px solid #d3a550; border-radius: 6px; background: #fffaf2; color: #3d3023; box-shadow: 0 12px 32px #0005; }
.mmc-header-cart__panel h2 { margin: 0 0 16px; color: #61421e; font: 24px/1.2 Georgia,serif; }
.mmc-header-cart__panel p { margin: 0 0 22px; color: #514231; font-size: 15px; }
.mmc-header-cart__link { display: block; padding: 12px; border-radius: 24px; background: #8e0718; color: #fff4e5; text-align: center; }
.mmc-header-cart__link:hover { color: #fff; background: #ac1127; }
.mmc-header-cart__browse { display: block; margin-top: 14px; color: #805820; text-align: center; text-decoration: underline; }
@media (max-width: 1024px) {
 .mmc-header-cart { top: 30px; right: 20px; }
 .mmc-header-cart summary { width: 44px; height: 44px; }
 .mmc-menu-toggle { right: 80px; }
}
.mmc-products-menu { position: relative; }
.mmc-products-toggle { display: flex; align-items: center; gap: 8px; padding: 0 0 .7cqw; border: 0; background: transparent; color: #fffdf8; font: 400 clamp(12px,1.28cqw,22px)/1.25 Georgia,serif; text-transform: uppercase; white-space: nowrap; text-shadow: 0 1px 5px #000; cursor: pointer; }
.mmc-products-toggle:hover, .mmc-products-toggle[aria-expanded='true'] { color: #e3b453; }
.mmc-products-toggle:focus-visible { outline: 2px solid #ebc772; outline-offset: 5px; }
.mmc-products-submenu { position: absolute; top: 100%; left: 0; z-index: 20; min-width: 180px; margin: 0; padding: 8px; list-style: none; background: #21180f; border: 1px solid #ab833f; border-radius: 4px; box-shadow: 0 10px 25px #0005; }
.mmc-products-submenu[hidden] { display: none; }
.mmc-menu .mmc-products-submenu a { display: flex; align-items: center; min-height: 44px; padding: 10px 14px; font-size: 16px; text-shadow: none; }
.mmc-menu .mmc-products-submenu a:hover, .mmc-menu .mmc-products-submenu a:focus-visible { color: #ebc772; background: #ffffff0d; }
@media (max-width: 1024px) {
 .mmc-products-toggle { min-height: 44px; padding: 4px 0; font-size: 14px; }
 .mmc-products-submenu { position: static; min-width: 0; margin-top: 6px; padding: 4px; box-shadow: none; }
 .mmc-menu .mmc-products-submenu a { font-size: 14px; padding: 8px; }
 .mmc-menu { align-items: start; }
}
/* Match the template dropdown: white panel, pointer and outlined trigger. */
.mmc-products-toggle { padding: 8px 16px; border: 2px solid transparent; border-radius: 30px; }
.mmc-products-toggle:hover, .mmc-products-toggle[aria-expanded='true'] { border-color: #d3a550; color: #e3b453; }
.mmc-products-submenu { top: calc(100% + 14px); left: 50%; transform: translateX(-50%); min-width: 240px; padding: 18px 24px; background: #fff; border: 0; border-radius: 0; }
.mmc-products-submenu::before { content: ''; position: absolute; top: -10px; left: calc(50% - 10px); border-left: 10px solid transparent; border-right: 10px solid transparent; border-bottom: 10px solid #fff; }
.mmc-products-submenu::after { content: ''; position: absolute; left: 0; right: 0; top: -16px; height: 16px; }
.mmc-menu .mmc-products-submenu a { color: #302519; font-family: Arial,sans-serif; font-size: 15px; padding: 12px; letter-spacing: .03em; }
.mmc-menu .mmc-products-submenu a:hover, .mmc-menu .mmc-products-submenu a:focus-visible { color: #8e0718; background: #f7f0e4; }
@media (max-width:1024px) {
 .mmc-products-toggle { padding: 4px 8px; }
 .mmc-products-submenu { transform: none; min-width: 0; padding: 8px; margin-top: 10px; }
 .mmc-products-submenu::before, .mmc-products-submenu::after { display: none; }
}
/* Give each top-level navigation item the same outlined hover treatment. */
.mmc-menu > a { display: inline-flex; align-items: center; justify-content: center; padding: 8px 16px; border: 2px solid transparent; border-radius: 30px; transition: color .2s, border-color .2s; }
.mmc-menu > a:hover, .mmc-menu > a:focus-visible { border-color: #d3a550; color: #e3b453; }
.mmc-menu > a[aria-current='page']::before, .mmc-menu > a[aria-current='page']::after { display: none; }
.mmc-menu > a[aria-current='page'] { color: #e3b453; border-color: #d3a550; }
@media (max-width:1024px) {
 .mmc-menu > a { justify-content: flex-start; padding: 4px 8px; }
}
.mmc-products-toggle > span { display: inline-block; transform: translateY(-3px); }

.mmc-mini-cart-items { max-height:230px; overflow-y:auto; margin-bottom:16px; }
.mmc-mini-cart-items:empty { display:none; }
.mmc-mini-cart-item { display:flex; align-items:center; gap:12px; padding:12px 0; border-bottom:1px solid #e3d3b7; text-decoration:none; color:#514231; }
.mmc-mini-cart-item img { width:72px; height:64px; object-fit:contain; flex:0 0 72px; }
.mmc-mini-cart-info { min-width:0; }
.mmc-mini-cart-info strong { display:block; font:16px/1.3 Georgia,serif; color:#61421e; }
.mmc-mini-cart-info > span { display:block; font:13px/1.5 Arial,sans-serif; color:#8b704c; margin-top:6px; }
.mmc-mini-cart-item:hover strong { color:#8e0718; }
.mmc-hero.mmc-hero--empty { aspect-ratio:auto; min-height:150px; padding-bottom:0; overflow:visible; }

.mmc-floating-cart {position:fixed;right:30px;bottom:calc(90px + env(safe-area-inset-bottom, 0px));z-index:9999;display:grid;place-items:center;width:52px;height:52px;border:2px solid #d3a550;border-radius:50%;background:#8e0718;color:#fff4e5;box-shadow:0 4px 16px #0003;text-decoration:none;}
.mmc-floating-cart[hidden] {display:none;}
.mmc-floating-cart:hover {background:#ac1127;color:#fff4e5;border-color:#ebc772;}
.mmc-floating-cart:focus-visible {outline:3px solid #d3a550;outline-offset:4px;}
.mmc-floating-cart .mmc-header-cart__count {color:#fff4e5;}

.mmc-mini-cart-info {flex:1;}
.mmc-mini-cart-quantity {display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-top:8px;}
.mmc-mini-cart-quantity label {display:flex;align-items:center;gap:6px;margin:0;font:13px Arial,sans-serif;}
.mmc-mini-cart-quantity input {width:58px;height:34px;padding:4px;border:1px solid #d3a550;border-radius:3px;background:#fff;color:#514231;}
.mmc-mini-cart-quantity button {padding:6px 9px;border:1px solid #d3a550;border-radius:3px;background:#8e0718;color:#fffaf2;font:13px Arial,sans-serif;cursor:pointer;}
.mmc-mini-cart-remove {padding:5px 0;border:0;background:transparent;color:#8e0718;text-decoration:underline;font:13px Arial,sans-serif;cursor:pointer;}
.mmc-header-cart__panel [data-mini-cart-feedback] {margin:12px 0 0;font-size:13px;}
.mmc-header-cart__panel [data-mini-cart-feedback]:empty {display:none;}
.mmc-mini-cart-item button:disabled {opacity:.65;cursor:wait;}

.mmc-cart-placeholder {display:grid;place-items:center;width:100%;height:80px;padding:8px;box-sizing:border-box;background:#f1e8d8;color:#8b704c;text-align:center;font:12px/1.35 Arial,sans-serif;text-decoration:none;}
.mmc-cart-placeholder--mini {width:72px;height:64px;flex:0 0 72px;}

.mmc-mini-cart-actions {display:flex;align-items:center;gap:10px;margin-top:10px;}
.mmc-mini-cart-stepper {display:flex;align-items:center;border:1px solid #d3a550;border-radius:4px;overflow:hidden;}
.mmc-mini-cart-stepper button,.mmc-mini-cart-delete {display:grid;place-items:center;width:32px;height:34px;padding:0;border:0;background:#fffaf2;color:#8e0718;cursor:pointer;}
.mmc-mini-cart-stepper button {font:20px/1 Arial,sans-serif;}
.mmc-mini-cart-stepper output {min-width:28px;padding:0 4px;text-align:center;color:#514231;font:14px/1 Arial,sans-serif;}
.mmc-mini-cart-delete {border:1px solid #d3a550;border-radius:4px;}
.mmc-mini-cart-actions button:hover:not(:disabled) {background:#8e0718;color:#fffaf2;}
.mmc-mini-cart-actions button:focus-visible {outline:2px solid #8e0718;outline-offset:-3px;}

.mmc-header-track{position:absolute;right:calc(5% + 62px);top:calc(2cqw + 5px);display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:8px 12px;border:1px solid #d3a550;border-radius:24px;background:#8e0718;color:#fff4e5;font:14px/1.2 Georgia,serif;white-space:nowrap;z-index:10;text-decoration:none}.mmc-header-track:hover,.mmc-header-track:focus-visible{background:#ac1127;color:#fff4e5;border-color:#ebc772}.mmc-header-track:focus-visible{outline:2px solid #ebc772;outline-offset:3px}
@media(min-width:1025px){.mmc-home .mmc-masthead .mmc-menu{width:min(54%,calc(70% - 190px))}}
@media(max-width:1024px){.mmc-header-track{right:76px;top:33px;min-height:38px;font-size:13px;padding:8px 10px}}

/* A quieter companion action to the cart. */
.mmc-header-track{gap:8px;min-height:40px;padding:9px 13px;border-radius:8px;border-color:#a98243;background:linear-gradient(135deg,#d3a55014,#d3a55005);color:#e4c181;font:500 12px/1.2 Arial,sans-serif;letter-spacing:.025em;box-shadow:inset 0 1px 0 #f3d99a10;transition:background .18s,color .18s,border-color .18s;}
.mmc-header-track svg{flex-shrink:0;color:#d3a550;}
.mmc-header-track:hover,.mmc-header-track:focus-visible{background:#d3a550;color:#21170b;border-color:#e4c181;}
.mmc-header-track:hover svg,.mmc-header-track:focus-visible svg{color:inherit;}
@media(min-width:1025px){.mmc-home .mmc-masthead .mmc-menu{width:min(54%,calc(70% - 220px))}}
@media(max-width:1024px){.mmc-header-track{min-height:38px;padding:8px 10px;font-size:11px;gap:6px;}}

/* Keep long category menus above the carousel and inside the viewport. */
.mmc-masthead { z-index:30; }
.mmc-hero:has(.mmc-products-toggle[aria-expanded="true"]),
.mmc-hero:has(.mmc-menu.is-open) { overflow:visible; z-index:30; }
.mmc-inner-header:has(.mmc-products-toggle[aria-expanded="true"]),
.mmc-inner-header:has(.mmc-menu.is-open) { z-index:30; }
.mmc-products-submenu {
 top:calc(100% + 8px); width:340px; min-width:0; max-width:calc(100vw - 32px);
 max-height:min(360px,calc(100dvh - 160px)); overflow-y:auto; overflow-x:hidden;
 box-sizing:border-box; padding:8px; border:1px solid #dfc89f; border-radius:10px;
 background:#fffaf2; box-shadow:0 12px 30px #0003;
 overscroll-behavior:contain; scrollbar-width:thin; scrollbar-color:#b58d49 #f4ecde;
}
.mmc-products-submenu::before,.mmc-products-submenu::after { display:none; }
.mmc-products-menu:has(.mmc-products-toggle[aria-expanded="true"])::after {
 content:""; position:absolute; top:100%; left:0; right:0; height:9px;
}
.mmc-masthead .mmc-menu .mmc-products-submenu a {
 min-height:42px; padding:10px 12px; box-sizing:border-box; border-radius:6px;
 white-space:normal; overflow-wrap:anywhere; font:14px/1.4 Arial,sans-serif; letter-spacing:.015em;
}
.mmc-products-submenu::-webkit-scrollbar { width:6px; }
.mmc-products-submenu::-webkit-scrollbar-thumb { background:#b58d49; border-radius:6px; }
@media(max-width:1024px) {
 .mmc-menu.is-open { max-height:calc(100dvh - 124px); overflow-y:auto; overscroll-behavior:contain; }
 .mmc-products-menu { min-width:0; }
 .mmc-products-submenu { width:100%; max-width:100%; max-height:min(260px,45dvh); margin-top:6px; }
 .mmc-products-menu:has(.mmc-products-toggle[aria-expanded="true"])::after { display:none; }
}
@media(max-width:1024px) {
 .mmc-masthead .mmc-menu-toggle { right:204px; }
}
@media(max-width:600px) {
 .mmc-masthead .mmc-menu-toggle { right:126px; width:44px; height:44px; padding:0; justify-content:center; }
 .mmc-menu-toggle > span:last-child,.mmc-header-track > span { display:none; }
 .mmc-masthead .mmc-header-track { right:76px; width:40px; height:40px; padding:0; }
}@media(min-width:1025px){
 .mmc-home .mmc-masthead .mmc-menu{left:20%;width:calc(78% - 260px);gap:4px}
 .mmc-masthead .mmc-menu>a,.mmc-masthead .mmc-products-toggle{font-size:clamp(12px,1.25vw,22px);padding:7px 9px;white-space:nowrap}
}

@media(min-width:1025px){
 .mmc-home .mmc-masthead .mmc-menu>a,.mmc-home .mmc-masthead .mmc-products-toggle{font-size:clamp(12px,1.2vw,20px);padding:7px 7px;white-space:nowrap}
}
.mmc-contact-details p{margin-bottom:8px!important;line-height:1.6;overflow-wrap:anywhere}
.mmc-contact-details i{width:18px;text-align:center;margin-right:4px}
.mmc-contact-socials{display:flex;flex-wrap:wrap;gap:8px 16px;margin:12px 0 16px}
.mmc-contact-socials a{font-size:13px;line-height:1.7}

/* Keep homepage sections on the same centered canvas on wide screens. */
.mmc-home:not(.mmc-inner) :is(.mmc-hero,.mmc-tradition,.mmc-categories,.mmc-loved,.mmc-arrivals,.mmc-baking,.mmc-about-video){max-width:1920px;width:100%;margin-inline:auto;box-sizing:border-box}
.mmc-home .mmc-categories__grid{max-width:1768px;margin-inline:auto}
@media(min-width:1025px){
 .mmc-home .mmc-hero{aspect-ratio:auto;height:clamp(480px,42vw,806px)}
 .mmc-home .mmc-hero__image{object-fit:cover}
 .mmc-home .mmc-masthead{height:130px;background:#191209;display:flex;align-items:center;gap:24px;padding:0 max(24px,calc((100% - 1800px)/2));box-sizing:border-box}
 .mmc-home .mmc-masthead .mmc-brand{position:relative;left:auto;top:20px;width:180px;flex:0 0 180px}
 .mmc-home .mmc-masthead .mmc-menu{position:static;width:auto;flex:1;min-width:0;gap:4px;justify-content:space-evenly}
 .mmc-home .mmc-masthead .mmc-header-track{position:static;flex-shrink:0}
 .mmc-home .mmc-masthead .mmc-header-cart{position:relative;top:auto;right:auto;flex-shrink:0}
 .mmc-home .mmc-masthead .mmc-menu>a,.mmc-home .mmc-masthead .mmc-products-toggle{font-size:clamp(12px,1.15vw,20px)}
 .mmc-home .mmc-hero__content{top:32%;left:50%;transform:translateX(-50%);width:min(52%,820px)}
 .mmc-home .mmc-tradition{background-size:cover}
 .mmc-home .mmc-tradition__copy{left:max(5%,calc((100% - 1600px)/2));width:min(30%,480px)}
 .mmc-home .mmc-baking__copy{left:max(5%,calc((100% - 1600px)/2));width:min(32%,560px)}
}
@media(min-width:1025px) and (max-width:1250px){
 .mmc-home .mmc-masthead{gap:12px;padding-inline:18px;height:110px}
 .mmc-home .mmc-masthead .mmc-brand{width:140px;flex-basis:140px}
 .mmc-home .mmc-masthead .mmc-menu>a,.mmc-home .mmc-masthead .mmc-products-toggle{padding-inline:4px}
}

/* Use the same content width and image scale across homepage sections. */
.mmc-home .mmc-arrivals__grid{max-width:1768px;margin-inline:auto}
.mmc-home .mmc-arrival__image-link{aspect-ratio:1.8}
.mmc-home .mmc-loved{background-size:cover}
@media(min-width:1025px){
 .mmc-home :is(.mmc-tradition,.mmc-baking){height:auto;min-height:520px;padding:48px max(5%,calc((100% - 1768px)/2));background:#faf2e5;display:flex;align-items:center}
 .mmc-home :is(.mmc-tradition__copy,.mmc-baking__copy){position:relative;left:auto;top:auto;transform:none;width:42%;max-width:620px;margin:0;box-sizing:border-box;padding-right:28px}
 .mmc-home :is(.mmc-tradition,.mmc-baking)::after{content:"";position:absolute;top:0;bottom:0;right:max(0px,calc((100% - 1920px)/2));width:min(52%,1000px);height:auto;max-height:none;aspect-ratio:auto;z-index:-1;background-position:right center;background-size:auto 100%;background-repeat:no-repeat}
 .mmc-home .mmc-tradition::after{background-image:url('../images/mmc/tradition-caprese.png')}
 .mmc-home .mmc-baking::after{background-image:url('../images/mmc/baking-background.png')}
}

/* Keep the scroll effect on the photo layer after separating it from the copy. */
@media(min-width:1025px){
 .mmc-home .mmc-tradition::after{background-size:auto calc(100% + 180px);background-position:right calc(50% + var(--tradition-parallax,0px))}
 .mmc-home .mmc-baking::after{background-size:auto calc(100% + 180px);background-position:right calc(50% + var(--baking-parallax,0px))}
}

/* Keep desktop links grouped centrally instead of distributing spare space. */
@media(min-width:1025px){
 .mmc-home .mmc-masthead .mmc-menu{justify-content:center;gap:clamp(4px,.65vw,12px)}
}
@media(min-width:1025px) and (max-width:1250px){
 .mmc-home .mmc-masthead .mmc-menu{gap:6px}
}

/* Tradition artwork spans the entire section, including behind the text. */
@media(min-width:1025px){
 .mmc-home .mmc-tradition::after{left:0;right:0;width:100%;background-size:auto max(calc(100% + 180px),min(33.34vw,640px));background-position:center calc(50% + var(--tradition-parallax,0px))}
 .mmc-home .mmc-tradition__copy{width:30%;max-width:560px;padding-right:0}
}
@media(min-width:1025px){.mmc-home .mmc-tradition{padding-inline:8.5%}}

/* Baking artwork also belongs to the whole section, not a separate image column. */
@media(min-width:1025px){
 .mmc-home .mmc-baking{padding-inline:5%}
 .mmc-home .mmc-baking::after{left:0;right:0;width:100%;background-size:auto max(calc(100% + 180px),min(33.34vw,640px));background-position:center calc(50% + var(--baking-parallax,0px))}
 .mmc-home .mmc-baking__copy{width:35%;max-width:620px;padding-right:0}
}

/* The logo overlaps the banner; it must not determine the header height. */
@media(min-width:1025px){
 .mmc-home .mmc-masthead{height:80px}
 .mmc-home .mmc-masthead .mmc-brand{top:0;transform:translateY(40px)}
 .mmc-inner .mmc-inner-header{height:80px}
}

/* Match the reference header: larger crest with a natural lower overlap. */
@media(min-width:1025px){
 .mmc-home .mmc-masthead{height:clamp(90px,6.5vw,124px)}
 .mmc-home .mmc-masthead .mmc-brand{align-self:flex-start;top:16px;transform:none;width:clamp(160px,14vw,260px);flex-basis:clamp(160px,14vw,260px)}
}
.mmc-header-account{display:grid;place-items:center;width:42px;height:42px;flex:0 0 42px;border:1px solid #c99d4c;border-radius:50%;color:#e4c181;background:#24190e;text-decoration:none;font:20px Georgia,serif;z-index:10}
.mmc-header-account:hover{background:#8e0718;color:#fff}
@media(max-width:1024px){.mmc-header-account{position:absolute;right:126px;top:32px}.mmc-masthead .mmc-menu-toggle{right:258px}}
@media(max-width:600px){.mmc-header-account{right:126px;width:38px;height:38px;top:33px}.mmc-masthead .mmc-menu-toggle{right:174px}.mmc-masthead .mmc-brand{left:10px;width:92px}}
@media(min-width:1025px) and (max-width:1250px){.mmc-home .mmc-masthead{gap:8px}.mmc-home .mmc-masthead .mmc-menu{gap:2px}.mmc-header-track>span{display:none}.mmc-home .mmc-masthead .mmc-brand{flex-basis:145px;width:145px}}

/* Prominent validation errors across customer forms. */
.mmc-home .mmc-error-alert {
 background:#fff0f0;
 color:#a11624;
 border:1px solid #e4a0a7;
 border-left:5px solid #b51e30;
 border-radius:6px;
 padding:16px 20px;
 margin:0 0 24px;
 text-align:left;
}
.mmc-home .mmc-error-alert strong,
.mmc-home .mmc-error-alert p,
.mmc-home .mmc-error-alert li,
.mmc-home .mmc-error-alert a {color:#a11624}
.mmc-home .mmc-error-alert ul {list-style:disc;padding-left:22px;margin:8px 0 0}
.mmc-home .mmc-error-alert a {text-decoration:underline}

/* Full-width header and footer bands around the centered homepage content. */
.mmc-home:not(.mmc-inner) .ps-footer{max-width:none;width:100%;box-sizing:border-box}
@media(min-width:1921px){
 .mmc-home:not(.mmc-inner) .mmc-hero{overflow:visible}
 .mmc-home:not(.mmc-inner) .mmc-masthead::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:#191209;box-shadow:0 0 0 100vmax #191209;clip-path:inset(0 -100vmax)}
}

/* Keep the original mobile header layout; adjust only the logo. */
@media(max-width:600px){
 .mmc-home .mmc-masthead .mmc-brand{top:26px;left:10px;width:110px}
}
@media(max-width:350px){
 .mmc-home .mmc-masthead .mmc-brand{width:88px}
}
