/* The same native menu tree powers the desktop header and mobile drawer. */
.colmond-menu,.colmond-menu ul { list-style: none; margin: 0; padding: 0; }
.primary-menu.colmond-menu { gap: 40px; }
.primary-menu.colmond-menu > li { position: static; }
.primary-menu.colmond-menu > li > a { text-transform: uppercase; }
.site-header:has(.primary-menu.colmond-menu .menu-item-has-children:is(:hover,:focus-within,.is-open)) { background: #fff; color: var(--ink); border-color: #eee; }
.site-header:has(.primary-menu.colmond-menu .menu-item-has-children:is(:hover,:focus-within,.is-open)) .brand-light { display: none; }
.site-header:has(.primary-menu.colmond-menu .menu-item-has-children:is(:hover,:focus-within,.is-open)) .brand-dark { opacity: 1; }
.colmond-menu .nav-submenu-toggle { border: 0; background: transparent; color: inherit; cursor: pointer; }
.primary-menu.colmond-menu > li > .nav-submenu-toggle { position: absolute; width: 1px; height: 1px; clip-path: inset(50%); overflow: hidden; padding: 0; }
.primary-menu.colmond-menu > li > .nav-submenu-toggle:focus-visible { position: absolute; top: 50%; margin-left: -18px; transform: translateY(-50%); width: 24px; height: 24px; clip-path: none; }
.primary-menu.colmond-menu .sub-menu { display: none; position: absolute; top: 100%; z-index: 30; min-width: 220px; margin: 0; padding: 24px; background: #fff; color: var(--ink); box-shadow: 0 14px 20px #0000000a; border-top: 1px solid var(--line); font-family: var(--body-font); font-size: 14px; letter-spacing: normal; }
.primary-menu.colmond-menu li:hover > .sub-menu,.primary-menu.colmond-menu li:focus-within > .sub-menu,.primary-menu.colmond-menu li.is-open > .sub-menu { display: block; }
.primary-menu.colmond-menu li.nav-dismissed > .sub-menu { display: none !important; }
.primary-menu.colmond-menu .sub-menu li { position: relative; }
.primary-menu.colmond-menu .sub-menu a { display: block; padding: 10px 0; }
.primary-menu.colmond-menu .sub-menu .sub-menu { top: 0; left: 100%; }
.primary-menu.colmond-menu > li > .sub-menu:has(> .nav-featured) { left: 0; right: 0; padding: 40px var(--gutter); grid-template-columns: repeat(3,minmax(0,1fr)); grid-auto-rows: min-content; gap: 0 48px; }
.primary-menu.colmond-menu > li:is(:hover,:focus-within,.is-open) > .sub-menu:has(> .nav-featured) { display: grid; }
.primary-menu.colmond-menu > li > .sub-menu:has(> .nav-featured) > li { grid-column: 1; }
.primary-menu.colmond-menu > li > .sub-menu > .nav-featured { grid-column: 2 !important; grid-row: 1 / span 10; }
.primary-menu.colmond-menu > li > .sub-menu > .nav-featured ~ .nav-featured { grid-column: 3 !important; }
.primary-menu.colmond-menu .nav-featured img { display: block; width: 100%; height: 250px; object-fit: cover; margin-bottom: 16px; }
.primary-menu.colmond-menu .nav-featured span { font-family: var(--heading-font); font-size: 12px; letter-spacing: .18em; }
.colmond-menu a:focus-visible,.colmond-menu button:focus-visible { outline: 2px solid currentColor; outline-offset: 4px; }
.mobile-menu.colmond-menu li { position: relative; }
.mobile-menu.colmond-menu li > a { display: block; padding: 18px 44px 18px 0; }
.mobile-menu.colmond-menu .nav-submenu-toggle { position: absolute; top: 6px; right: 0; width: 44px; height: 44px; font-size: 22px; }
.mobile-menu.colmond-menu .sub-menu { display: none; padding-left: 18px; }
.mobile-menu.colmond-menu .is-open > .sub-menu { display: block; }
.mobile-menu.colmond-menu .nav-featured img { display: none; }
.mobile-menu.colmond-menu .sub-menu a { font-size: 14px; padding-block: 12px; }
.footer-shop-menu.colmond-menu .nav-submenu-toggle,.footer-info-menu.colmond-menu .nav-submenu-toggle { display: none; }
.footer-shop-menu.colmond-menu ul,.footer-info-menu.colmond-menu ul { padding-left: 16px; }
@media (max-width:1199px) { .primary-menu.colmond-menu { gap: 20px; } }

/* Editorial mega panel: heading columns plus two portrait promotions. */
.primary-menu.colmond-menu .colmond-mega { left: 0; right: 0; width: 100%; padding: 40px var(--gutter); max-height: calc(100dvh - 150px); overflow-y: auto; box-shadow: none; border-bottom: 1px solid var(--line); }
.colmond-mega-inner { display: flex; justify-content: safe center; align-items: start; gap: 40px; }
.colmond-mega-links { display: flex; flex: 0 1 auto; flex-wrap: wrap; align-content: start; align-items: start; gap: 40px; }
.colmond-mega-links > li { max-width: 280px; flex: 0 0 auto; }
.primary-menu.colmond-menu .colmond-mega-links > li > a { padding: 0; margin: 0 0 20px; font-family: var(--heading-font); font-size: 12px; line-height: 1.7; letter-spacing: .18em; text-transform: uppercase; }
.primary-menu.colmond-menu .colmond-mega .sub-menu { display: block; position: static; min-width: 0; width: auto; padding: 0; margin: 0; border: 0; box-shadow: none; background: transparent; }
.primary-menu.colmond-menu .colmond-mega .sub-menu a { padding: 0; margin: 0; color: #777; font-size: 14px; line-height: 1.65; text-transform: none; }
.primary-menu.colmond-menu .colmond-mega .sub-menu li + li { margin-top: 10px; }
.primary-menu.colmond-menu .colmond-mega a:hover { color: #1c1c1c; }
.primary-menu.colmond-menu .colmond-mega .nav-submenu-toggle { display: none; }
.colmond-mega-promos { display: flex; flex: 0 1 auto; justify-content: flex-end; align-items: start; gap: 32px; }
.colmond-mega-promos > li { flex: 1 1 var(--mega-image-width,315px); min-width: 240px; max-width: var(--mega-image-width,315px); width: var(--mega-image-width,315px); }
.primary-menu.colmond-menu .colmond-mega-promos .nav-featured { grid-column: auto !important; grid-row: auto; }
.primary-menu.colmond-menu .colmond-mega-promos a { display: flex; flex-direction: column; align-items: center; padding: 0; text-align: center; gap: 0; }
.nav-promo-image { display: block; width: 100%; overflow: hidden; }
.primary-menu.colmond-menu .colmond-mega .nav-featured img { display: block; width: 100%; height: auto; aspect-ratio: 650 / 813; object-fit: cover; margin: 0; transition: transform .5s; }
.primary-menu.colmond-menu .colmond-mega .nav-featured a:hover img { transform: scale(1.04); }
.primary-menu.colmond-menu .colmond-mega .nav-promo-title { font-family: var(--heading-font); font-size: 12px; line-height: 1.7; letter-spacing: .18em; margin-top: 20px; text-transform: uppercase; }
.primary-menu.colmond-menu .colmond-mega .nav-promo-subtitle { margin-top: 10px; font-family: var(--heading-font); font-size: 11px; line-height: 1.7; color: #777; letter-spacing: .18em; text-transform: uppercase; }
.mega-reverse .colmond-mega-inner { flex-direction: row-reverse; }
.mega-fixed-columns .colmond-mega-links { display: grid; grid-template-columns: repeat(var(--mega-columns,3),minmax(0,1fr)); flex: 1; }
.primary-menu.colmond-menu .mega-ratio-square .nav-featured img { aspect-ratio: 1; }
.primary-menu.colmond-menu .mega-ratio-landscape .nav-featured img { aspect-ratio: 4 / 3; }
.mobile-menu.colmond-menu .colmond-mega { display: none; padding-left: 18px; }
.mobile-menu.colmond-menu .is-open > .colmond-mega { display: block; }
.mobile-menu .colmond-mega-inner,.mobile-menu .colmond-mega-links { display: block; }
.mobile-menu .colmond-mega-links > li { max-width: none; }
.mobile-menu .colmond-mega-promos { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; margin-block: 24px; }
.mobile-menu .colmond-mega-promos > li { min-width: 0; width: auto; }
.mobile-menu.colmond-menu .colmond-mega-promos a { display: flex; flex-direction: column; padding: 0; font-size: 11px; text-align: center; }
.mobile-menu.colmond-menu .colmond-mega-promos .nav-featured img { display: block; width: 100%; height: auto; aspect-ratio: 650 / 813; object-fit: cover; }
.mobile-menu .nav-promo-title { margin-top: 12px; }
.mobile-menu .nav-promo-subtitle { margin-top: 8px; font-size: 10px; color: #777; }
@media(min-width:1400px) { .colmond-mega-inner { gap: 100px; } .colmond-mega-links { gap: 40px 100px; } }
@media(prefers-reduced-motion:reduce) { .primary-menu.colmond-menu .colmond-mega .nav-featured img { transition: none; } }
