/* Shared storefront shell. Colors are resolved exclusively from Appearance tokens. */
.site-header-wrap.shared-header{position:relative;z-index:30;background:var(--color-header);color:var(--header-fg);border-block-end:1px solid var(--color-border);}
.shared-header .site-header{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:20px;min-block-size:82px;max-inline-size:none;padding:12px clamp(20px,3.8vw,56px);}
.shared-header .global-brand{grid-column:2;grid-row:1;justify-self:center;display:flex;align-items:center;gap:8px;font:400 34px/1.2 var(--font-display);color:inherit;text-decoration:none;}
.shared-header .global-logo{inline-size:140px;max-block-size:48px;}
.shared-header .global-logo figure{margin:0;max-block-size:48px;aspect-ratio:auto;}
.shared-header .global-logo img{inline-size:100%;block-size:44px;object-fit:contain;transform:none;}
.shared-header .shared-desktop-nav{grid-column:1;grid-row:1;display:flex;align-items:center;flex-wrap:wrap;gap:4px 24px;font:400 11px/1.4 var(--font-sans);letter-spacing:.09em;text-transform:uppercase;}
.nav-entry{display:flex;align-items:center;min-inline-size:0;}
.nav-top-link,.mega-toggle{min-block-size:44px;display:flex;align-items:center;cursor:pointer;list-style:none;text-decoration:none;}
.mega-toggle{padding:0 4px;gap:4px;}
.mega-toggle::-webkit-details-marker,.shared-mobile-nav summary::-webkit-details-marker{display:none;}
.mega-toggle:focus-visible,.nav-top-link:focus-visible{outline:2px solid currentColor;outline-offset:3px;}
.nav-top-link[aria-current],.shared-header a[aria-current]{text-decoration:underline;text-underline-offset:5px;}
.mega-panel{position:absolute;inset-inline:0;inset-block-start:100%;padding-block:24px 32px;background:var(--color-header);color:var(--header-fg);border-block-end:1px solid var(--color-border);box-shadow:0 12px 18px #0000000a;text-transform:none;letter-spacing:0;}
.mega-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,200px));align-items:start;justify-content:start;gap:24px;max-inline-size:none;padding-inline:clamp(20px,3.8vw,56px);}
.mega-column{min-inline-size:0;}
.mega-heading{display:block;font:500 13px/1.4 var(--font-sans);margin:0 0 12px;text-decoration:none;}
.navigation-links,.mobile-menu-links{list-style:none;margin:0;padding:0;}
.navigation-links a{display:block;text-decoration:none;overflow-wrap:anywhere;}
.mega-column .navigation-links a{min-block-size:36px;font:400 13px/1.5 var(--font-sans);padding-block:6px;}
.navigation-links .cms-editorial__media{margin:0 0 12px;}
.mega-card .cms-editorial__media{margin:0;inline-size:100%;}
.mega-column .cms-editorial__media img{max-block-size:none;}
.shared-header .header-utility-group{grid-column:3;grid-row:1;justify-self:end;display:flex;align-items:center;gap:4px;}
.shared-header .boutique-utilities{display:flex;align-items:center;gap:0;}
.shared-header .boutique-utilities>a{display:grid;place-items:center;inline-size:40px;block-size:44px;position:relative;}
.shared-mobile-nav{grid-column:1;grid-row:1;display:none;}
.drawer-toolbar{display:none;}
.drawer-viewport{font:400 16px/1.5 var(--font-sans);}
.mobile-menu-links summary,.mobile-menu-links a{display:flex;align-items:center;justify-content:space-between;gap:12px;min-block-size:52px;text-decoration:none;border-block-end:1px solid var(--color-border);}
.mobile-menu-links ul{padding-inline-start:16px;}
.menu-view-all{display:block;min-block-size:44px;padding-block:12px;text-decoration:underline;}
.mobile-menu-links .cms-editorial__media{inline-size:100px;flex-shrink:0;margin:12px 0;}
.shared-header.nav-enhanced .drawer-toolbar{display:grid;grid-template-columns:70px minmax(0,1fr) 70px;align-items:center;gap:8px;padding-block:12px;border-block-end:1px solid var(--color-border);}
.drawer-toolbar h2{font:400 18px/1.4 var(--font-sans);text-align:center;margin:0;grid-column:2;grid-row:1;}
.drawer-toolbar button{font:400 13px var(--font-sans);background:transparent;color:inherit;border:0;padding:8px;min-block-size:44px;}
.drawer-toolbar [data-menu-back]{grid-column:1;grid-row:1;}
.drawer-toolbar [data-menu-close]{grid-column:3;grid-row:1;}
.shared-header.nav-enhanced .drawer-shell{position:fixed;inset-block:0;inset-inline-start:0;inline-size:min(100%,28rem);padding:0 20px;background:var(--color-header);color:var(--header-fg);box-shadow:0 0 0 100vmax #0005;display:flex;flex-direction:column;z-index:60;}
.shared-header.nav-enhanced .drawer-viewport{overflow-y:auto;overscroll-behavior:contain;min-block-size:0;flex:1;padding-block:12px 32px;}
[data-menu-level][hidden]{display:none;}
.site-footer-wrap.shared-footer{margin-block-start:48px;padding-block:36px 28px;background:var(--color-footer);color:var(--footer-fg);border:0;min-block-size:0;}
.shared-footer>.container{max-inline-size:none;padding-inline:clamp(20px,3.8vw,56px);}
.footer-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:24px 40px;align-items:start;}
.shared-footer .global-footer-brand{font:400 32px/1.2 var(--font-display);letter-spacing:0;display:inline-block;text-decoration:none;margin:0 0 12px;}
.shared-footer .global-copy{font:400 13px/1.6 var(--font-sans);max-inline-size:24rem;margin:0;}
.footer-column{font:400 13px/1.6 var(--font-sans);font-style:normal;min-inline-size:0;}
.footer-column summary,.footer-column h2{font:500 13px/1.4 var(--font-sans);margin:0 0 8px;cursor:pointer;}
.footer-column a{display:block;min-block-size:32px;padding-block:4px;color:inherit;text-decoration:none;}
.footer-bottom{display:flex;align-items:center;flex-wrap:wrap;gap:12px 28px;margin-block-start:24px;padding-block-start:16px;border-block-start:1px solid color-mix(in srgb,var(--footer-fg) 20%,transparent);font:400 12px/1.5 var(--font-sans);}
.footer-bottom .navigation-links{display:flex;flex-wrap:wrap;gap:12px 24px;}
.footer-bottom a{display:flex;align-items:center;min-block-size:44px;color:inherit;}
.footer-support{margin-inline-start:auto;}
/* Shared form/account hierarchy, without changing editorial hero typography. */
.staff-page>h1,.account-shell .dashboard-main h1,.account-shell .dashboard-main h2,.auth-shell>h1,.address-editor>h1,.checkout-shell>h1,.compact-checkout h1,.journey-heading h1{font-size:clamp(1.5rem,2.3vw,2rem);line-height:1.25;letter-spacing:-.015em;}
.account-shell .dashboard-main h2{font-size:1.3rem;}
.account-shell .dashboard-main > :is(.auth-shell,.address-editor){padding:clamp(20px,3vw,36px);margin:0;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--card-radius);}
.boutique-preview :is(.auth-shell,.address-editor) > h1{margin-block:0 16px;}
.boutique-preview :is(.auth-shell,.address-editor) form{margin-block:20px;}
.boutique-preview :is(.auth-shell,.address-editor) form > p{margin:0;}
.boutique-preview :is(.auth-shell,.address-editor) label{display:block;margin-block-end:6px;}
.boutique-preview :is(.auth-shell,.address-editor) .helptext{display:block;margin-block-start:6px;}
.account-actions{display:flex;flex-wrap:wrap;gap:16px;}
.account-actions .button-secondary,.auth-shell .button-secondary{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border);text-decoration:none;}
.boutique-preview .auth-shell p.email-verified{color:#2f652f;font-weight:600;}
.auth-help{margin-block-start:24px;}
@media(min-width:65.01rem){.footer-column>summary{list-style:none;}.footer-column>summary::-webkit-details-marker{display:none;}}
@media(max-width:65rem){
 .shared-header .shared-desktop-nav{display:none;}.shared-header .shared-mobile-nav{display:block;}
 .shared-header .site-header{min-block-size:72px;gap:6px;padding-inline:16px;}
 .shared-header .global-brand{font-size:28px;}.shared-header .global-logo{inline-size:105px;}
 .shared-header .header-utility-group{gap:0;}.shared-header .boutique-utilities>a{inline-size:32px;}
 .shared-header .language-picker,.shared-header .language-picker summary{font-size:11px;}
 .shared-header .nav-toggle{min-block-size:44px;display:flex;align-items:center;gap:6px;font:400 12px var(--font-sans);cursor:pointer;}
 .shared-mobile-nav:not([open]) .drawer-shell{display:none;}
 .shared-header:not(.nav-enhanced) .shared-mobile-nav[open]{grid-column:1/-1;grid-row:2;}
 .shared-header:not(.nav-enhanced) .drawer-shell{padding-block:16px;}
}
@media(max-width:47.99rem){
 .shared-header .global-brand{font-size:24px;}.shared-header .boutique-utilities>a{inline-size:30px;}
 .shared-header .boutique-utilities>a svg{inline-size:19px;}.shared-header .language-picker summary{padding-inline:2px;}
 .footer-columns{grid-template-columns:minmax(0,1fr);gap:12px;}.footer-brand{margin-block-end:12px;}
 .footer-column{border-block-end:1px solid color-mix(in srgb,var(--footer-fg) 18%,transparent);padding-block:4px;}
 .footer-column summary{min-block-size:44px;display:list-item;margin:0;}.footer-column a{min-block-size:44px;}
 .footer-bottom{gap:8px 16px;}.footer-support{margin-inline-start:0;}
}

.nav-entry.is-active > .nav-top-link,.nav-entry.is-active > details > summary{text-decoration:underline;text-underline-offset:5px;}

.shared-header .nav-toggle{justify-content:flex-start;padding-inline:0;}
.shared-header .shared-mobile-nav .nav-toggle::after{content:none;}
.shared-header .nav-toggle>span{font-size:16px;}
.shared-header .boutique-utilities svg{inline-size:21px;block-size:21px;}
.shared-header .drawer-toolbar [hidden]{display:none;}

.shared-header .site-header,.shared-header .mega-content,.shared-footer>.container{inline-size:100%;max-inline-size:none;margin-inline:0;}
.shared-header .nav-toggle{border:0;border-radius:0;background:transparent;min-inline-size:0;}
.shared-header .nav-top-link{background:transparent;border-radius:0;padding-inline:0;}
@media(min-width:65.01rem){.shared-footer .footer-column>summary{min-block-size:0;}}

.shared-header .mega-heading{display:block;min-block-size:0;padding:0;font:500 13px/1.4 var(--font-sans);}
.shared-header .mega-card .mega-heading{display:flex;flex-direction:column;gap:8px;margin:0;}
.shared-header .mega-column .navigation-links a{display:block;background:transparent;padding-inline:0;}
.shared-header .nav-top-link:hover{background:transparent;}

/* The existing navigation tree controls both desktop menu layouts. */
.nav-entry:has(.compact-menu){position:relative;}
.compact-menu .mega-panel{inset-inline:0 auto;min-inline-size:220px;max-inline-size:min(320px,90vw);padding:16px;border:1px solid var(--color-border);}
.compact-menu .mega-content{display:block;padding:0;}
.compact-menu .mega-column+.mega-column{margin-block-start:12px;}
.compact-menu .mega-heading{margin:0;padding:8px;min-block-size:40px;}
.mega-content:has(>.mega-card){grid-template-columns:minmax(150px,.8fr) repeat(3,minmax(0,1fr));}
.mega-card__label{display:block;padding-block:12px;}

/* Editorial navigation: link taxonomies on the left, portrait stories on the right. */
.shared-header{--nav-line:color-mix(in srgb,var(--header-fg) 13%,transparent);}
.site-header-wrap.shared-header{border-block-end-color:var(--nav-line);}
.shared-header .site-header{min-block-size:104px;padding-inline:clamp(24px,3.6vw,70px);}
.shared-header .shared-desktop-nav{font-size:13px;letter-spacing:.12em;gap:clamp(22px,2.5vw,48px);flex-wrap:nowrap;}
.shared-header .mega-toggle{padding:0;font:inherit;}
.shared-header .mega-menu:not(.compact-menu) .mega-toggle::after{display:none;}
.shared-header .global-brand{font-size:38px;}
.shared-header .mega-panel{padding-block:38px 44px;border-color:var(--nav-line);box-shadow:none;max-block-size:calc(100dvh - 104px);overflow-y:auto;}
.shared-header .mega-content{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:36px;padding-inline:clamp(24px,2.6vw,50px);}
.shared-header .mega-link-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:64px 40px;}
.shared-header .mega-heading{font:500 13px/1.5 var(--font-sans);text-transform:uppercase;letter-spacing:.11em;margin:0 0 12px;}
.shared-header .mega-column .navigation-links a{font:400 14px/1.6 var(--font-sans);text-transform:uppercase;letter-spacing:.08em;color:color-mix(in srgb,var(--header-fg) 72%,var(--color-header));padding:6px 0;min-block-size:38px;}
.shared-header .mega-column a:hover,.shared-header .mega-column a:focus-visible{color:var(--header-fg);text-decoration:underline;text-underline-offset:5px;}
.shared-header .mega-link-groups:has(>.mega-column:nth-child(4))>.mega-column:first-child>h2{visibility:hidden;position:absolute;}
.shared-header .mega-image-cards{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);align-content:start;gap:clamp(18px,2vw,40px);}
.shared-header .mega-image-cards:empty{display:none;}
.shared-header .mega-content:has(>.mega-image-cards:empty){grid-template-columns:1fr;}
.shared-header .mega-image-cards .cms-editorial__media{aspect-ratio:7/10;inline-size:100%;overflow:hidden;}
.shared-header .mega-image-cards .cms-editorial__media img{inline-size:100%;block-size:100%;object-fit:cover;}
.shared-header .mega-content:has(>.mega-image-cards>.mega-card:nth-child(2)):not(:has(>.mega-image-cards>.mega-card:nth-child(3))){grid-template-columns:minmax(0,2.1fr) minmax(0,1fr);}
.shared-header .mega-image-cards:has(>.mega-card:nth-child(2)):not(:has(>.mega-card:nth-child(3))) .cms-editorial__media{aspect-ratio:5/6;}
.shared-header .mega-card__label{padding-block:6px 0;text-align:start;font:400 13px/1.5 var(--font-sans);letter-spacing:.11em;}
.shared-header .mega-image-cards .mega-heading{align-items:stretch;text-align:start;}
.shared-header .compact-menu .mega-panel{min-inline-size:210px;padding:18px 22px;border:1px solid var(--nav-line);border-block-start:0;max-inline-size:340px;}
.shared-header .compact-menu .mega-content,.shared-header .compact-menu .mega-link-groups{display:block;padding:0;}
.shared-header .compact-menu .mega-column+.mega-column{margin-block-start:2px;}
.shared-header .compact-menu .mega-heading{font-weight:400;font-size:13px;letter-spacing:.08em;padding:7px 0;min-block-size:32px;margin:0;color:color-mix(in srgb,var(--header-fg) 72%,var(--color-header));}
.utility-label{display:none;}
@media(min-width:65.01rem){
 .shared-header .shared-desktop-nav{align-self:stretch;align-items:stretch;margin-block:-12px;}
 .shared-header .boutique-utilities>a{display:flex;inline-size:auto;gap:4px;padding-inline:clamp(8px,1vw,20px);font:400 12px/1.5 var(--font-sans);text-transform:uppercase;letter-spacing:.11em;text-decoration:none;}
 .shared-header .boutique-utilities>a svg{display:none;}
 .shared-header .utility-label{display:inline;}
 .shared-header .boutique-bag-count{position:static;display:inline;min-inline-size:0;block-size:auto;padding:0;background:transparent;color:inherit;font:inherit;line-height:inherit;}
}
@media(max-width:65rem){.shared-header .site-header{min-block-size:72px;padding-inline:16px;}.shared-header .global-brand{font-size:28px;}.shared-header .utility-label{display:none;}}
@media(max-width:47.99rem){.shared-header .global-brand{font-size:24px;}}
