/* A spacious, scrollable category directory, independent of catalog size. */
.site-header .main-nav{gap:20px}
.mega-item{height:100%;display:flex;align-items:center}
.mega-root-row{display:flex;align-items:center;gap:3px}
.mega-toggle{display:grid;place-items:center;width:14px;height:28px;padding:0;color:inherit;opacity:.65}
.mega-toggle svg{width:12px;height:12px;stroke-width:1.2;transition:rotate .2s}
.mega-toggle[aria-expanded=true] svg{rotate:180deg}
.site-header .mega-active .mega-root-row>a{color:#8c6a3e}
.site-header .mega-active .mega-root-row>a:after{transform:translateX(-50%) scaleX(1)}
.site-header.has-mega-open,.story-page .site-header.over-hero.has-mega-open{background:#fffdf9;color:#392c27;backdrop-filter:blur(18px);box-shadow:0 1px 0 #e6ddd1}
.site-header.has-mega-open:before{opacity:0}
.site-header.has-mega-open .wordmark small{color:#9b7a4e}
.mega-backdrop{position:fixed;inset:0;background:#160d1352;backdrop-filter:blur(4px);z-index:19;animation:mega-dim .22s ease both}
.mega-shell{position:absolute;top:100%;left:0;width:100%;background:#fffdf9;color:#392c27;box-shadow:0 24px 40px #21131016;border-top:1px solid #ece5db;animation:mega-reveal .22s ease both;z-index:3;max-height:calc(100svh - 110px);overflow:auto;overscroll-behavior:contain;padding:27px max(40px,calc((100vw - 1560px)/2)) 0}
.mega-top{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:25px}
.mega-kicker{font-size:8px;letter-spacing:2px;color:#a2845e}
.mega-title{font-family:var(--font-heading);font-weight:500;font-size:25px;line-height:1.3;letter-spacing:0;color:#392c27;margin:5px 0 0}
.mega-tools{display:flex;align-items:center;gap:20px}
.mega-search{display:flex;gap:9px;align-items:center;border-bottom:1px solid #d9cdbb;padding:8px 0;width:240px}
.mega-search svg{width:16px;height:16px;stroke-width:1.2;color:#876f53}
.mega-search input{width:100%;min-width:0;border:0;outline:0;background:transparent;font-family:var(--sans);font-size:11px;line-height:1.5;color:#392c27}
.mega-search:focus-within{border-color:#4a1525}
.mega-search input::placeholder{color:#978a7b}
.mega-search kbd{font:8px var(--sans);color:#a19380;letter-spacing:.5px}
.mega-close{display:grid;place-items:center;width:33px;height:33px;font-size:27px;font-weight:300;border:1px solid #e1d6c6;border-radius:50%;line-height:1;padding:0;color:#78634b}
.mega-close:hover{background:#f0e9df}
.mega-layout{display:grid;grid-template-columns:180px minmax(0,1fr) 240px;gap:30px;min-height:300px}
.mega-tabs{display:flex;flex-direction:column;gap:5px;padding:5px 22px 5px 0;border-right:1px solid #e8e0d5;max-height:340px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#b8a17f transparent}
.mega-tabs button{text-align:left;display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12px;line-height:1.5;padding:13px 14px;color:#776c61;border-radius:2px;flex-shrink:0;transition:background .2s,color .2s}
.mega-tabs button>span{font-size:15px;opacity:0}
.mega-tabs button[aria-selected=true]{color:#4a1525;background:#eee8df;font-weight:500}
.mega-tabs button[aria-selected=true]>span{opacity:1}
.mega-tabs button:hover{background:#f5f0e9;color:#4a1525}
.mega-results{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-content:start;gap:28px 22px;max-height:min(340px,calc(100svh - 295px));min-height:200px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#b8a17f #f6f0e8;padding:6px 10px 12px 0;outline-offset:4px}
.mega-column{min-width:0}
.mega-column>.mega-column-title,.mega-column>summary{font-family:var(--font-heading);font-size:10px;line-height:1.7;font-weight:500;text-transform:uppercase;letter-spacing:1.1px;list-style:none;margin-bottom:13px;cursor:pointer;color:#4a1525}
.mega-column>summary::-webkit-details-marker,.mega-nested>summary::-webkit-details-marker{display:none}
.mega-column>summary>span{display:none}
.site-header .mega-shell a.mega-link{display:block;white-space:normal;font-family:var(--sans);font-weight:400;font-size:11.5px;letter-spacing:0;line-height:1.65;padding:6px 0;border:0;color:#796e62;overflow-wrap:anywhere}
.site-header .mega-shell a.mega-link:hover,.site-header .mega-shell a.mega-link:focus-visible{color:#4a1525;text-decoration:underline;text-underline-offset:4px}
.site-header .mega-shell a:after{display:none}
.mega-nested>summary{display:flex;justify-content:space-between;gap:10px;font-size:11.5px;line-height:1.65;padding:6px 0;cursor:pointer;list-style:none;color:#796e62}
.mega-nested>summary>span{color:#a58b66;font-size:15px;line-height:1.2}
.mega-nested[open]>summary>span{rotate:45deg}
.mega-nested>div{padding-left:13px;margin:5px 0 10px;border-left:1px solid #d5c5ad}
.mega-empty{grid-column:1/-1;padding:35px 15px}
.mega-empty strong{font-size:14px;font-weight:500;color:#4a1525}
.mega-empty p{font-size:12px;margin:10px 0 0}
.site-header .mega-shell a.mega-feature{display:block;position:relative;overflow:hidden;min-height:300px;max-height:340px;padding:0;border:0;border-radius:2px;isolation:isolate}
.mega-feature>img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;transition:scale .8s}
.mega-feature:hover>img{scale:1.04}
.mega-feature:before{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#1c110ee0,transparent 80%);z-index:1}
.mega-feature-copy{position:absolute;left:23px;right:20px;bottom:22px;z-index:2;color:#fff7e9}
.mega-feature-copy small{display:block;font-size:7px;letter-spacing:1.9px;margin-bottom:9px;color:#ead5b4}
.mega-feature-copy strong{display:block;font-family:var(--font-heading);font-size:22px;line-height:1.4;font-weight:500;white-space:pre-line;letter-spacing:-.4px}
.mega-feature-copy>span{display:inline-block;font-size:9px;letter-spacing:.5px;margin-top:17px;padding-bottom:5px;border-bottom:1px solid #d9c6aa70}
.mega-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid #e8e0d5;margin-top:26px;padding:16px 0;color:#a08a6f;font-size:10px}
.site-header .mega-shell a.mega-all{display:flex;align-items:center;gap:30px;font-size:10px;font-weight:500;padding:0;border:0;color:#4a1525;letter-spacing:0;white-space:normal}
.mega-all>span{font-size:18px;color:#a4875e}
@keyframes mega-reveal{from{opacity:0;translate:0 -7px}to{opacity:1;translate:0 0}}
@keyframes mega-dim{from{opacity:0}to{opacity:1}}
@media(min-width:1101px) and (max-width:1350px){
 .site-header .main-nav{gap:14px}.site-header .main-nav .mega-root-row>a{font-size:10px;letter-spacing:.3px}
 .mega-shell{padding-inline:32px}.mega-layout{grid-template-columns:158px minmax(0,1fr) 205px;gap:24px}.mega-feature-copy strong{font-size:20px}.mega-results{gap:22px 14px}
}
@media(max-width:1100px){
 body:has(.main-nav.is-open){overflow:hidden}
 .site-header .main-nav.is-open{gap:0;overscroll-behavior:contain;padding:8px 24px 25px}
 .site-header .main-nav .mega-item{height:auto;display:block;border-bottom:1px solid #e7dfd4;flex-shrink:0}
 .mega-root-row{justify-content:space-between;min-height:58px}
 .site-header .main-nav .mega-root-row>a{padding:18px 0;border:0;flex:1;font-size:12px;white-space:normal}
 .mega-toggle{height:42px;width:36px;opacity:1}.mega-toggle svg{width:15px;height:15px}
 .site-header .mega-shell{position:static;padding:8px 0 0;max-height:none;overflow:visible;border:0;box-shadow:none;animation:none;width:100%;background:transparent}
 .mega-top{margin-bottom:17px;display:block}
 .mega-top>div:first-child,.mega-close,.mega-search kbd{display:none}
 .mega-tools{display:block}.mega-search{width:100%;padding:12px 0}.mega-search input{font-size:13px}
 .mega-layout{display:block;min-height:0}
 .mega-tabs{flex-direction:row;max-height:none;overflow-x:auto;border:0;border-bottom:1px solid #e7dfd4;gap:8px;padding:0 0 12px;margin-bottom:10px;overscroll-behavior-inline:contain;scrollbar-width:thin}
 .mega-tabs button{font-size:11px;padding:10px 12px;white-space:nowrap;border:1px solid #e6ddce;background:transparent;border-radius:2px}
 .mega-tabs button>span{display:none}.mega-tabs button[aria-selected=true]{border-color:#b69b78}
 .mega-results{display:block;max-height:none;min-height:0;padding:0;overflow:visible}
 .mega-column{border-bottom:1px solid #eee5d9;padding:0}
 .mega-column>summary{display:flex;align-items:center;justify-content:space-between;font-size:11px;letter-spacing:.5px;min-height:48px;padding:12px 3px;margin:0;cursor:pointer}
 .mega-column>summary>span{display:block;color:#a08765;font-size:17px;font-family:var(--sans);font-weight:400}
 .mega-column[open]>summary>span{rotate:45deg}
 .mega-column-links{padding:0 3px 13px 12px}
 .site-header .main-nav .mega-shell a.mega-link{font-size:13px;line-height:1.6;padding:11px 0;min-height:44px;color:#776c61;border:0;white-space:normal;letter-spacing:0}
 .mega-nested>summary{min-height:44px;padding:11px 0;font-size:13px}
 .site-header .mega-shell a.mega-feature{display:none}
 .mega-bottom{margin-top:12px;padding:12px 0 19px;border:0}.mega-bottom>span{display:none}
 .site-header .main-nav .mega-shell a.mega-all{font-size:11px;min-height:44px}
 .mega-backdrop{backdrop-filter:blur(3px)}
}
@media(prefers-reduced-motion:reduce){.mega-shell,.mega-backdrop{animation:none}.mega-toggle svg,.mega-feature>img,.mega-tabs button{transition:none}}
/* Keep the directory legible while fitting six primary headings. */
.site-header .mega-shell a.mega-link,.mega-nested>summary{font-size:13px}
.mega-tabs button{font-size:12.5px}
.mega-search input{font-size:12px}
@media(min-width:1101px) and (max-width:1350px){.site-header .main-nav .mega-root-row>a{font-size:11px}}

.mobile-category-view{display:none}
@media(max-width:1100px){
 .site-header .main-nav.is-category-view>.nav-group{display:none}
 .site-header .main-nav .mobile-category-view:not([hidden]){display:block;min-width:0;width:100%;padding-bottom:24px;animation:category-step-in .2s ease both}
 .mobile-category-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid #e7dfd4;min-height:56px;margin-bottom:28px}
 .mobile-category-toolbar>span{font-size:10px;letter-spacing:1px;text-transform:uppercase;color:#998164}
 .mobile-category-back{display:flex;align-items:center;gap:12px;font-size:13px;min-height:48px;padding:0 12px 0 0;color:#4a1525}
 .mobile-category-back>span{font-size:23px;font-weight:400}
 .mobile-category-heading{margin-bottom:23px}
 .mobile-category-heading .mega-kicker{display:block;line-height:1.7;letter-spacing:1.3px;overflow-wrap:anywhere}
 .mobile-category-heading h2{font:500 28px/1.25 var(--font-heading);letter-spacing:0;color:#392c27;margin:11px 0 0;text-transform:none;outline:none}
 .mobile-category-list{border-top:1px solid #e7dfd4}
 .site-header .main-nav .mobile-category-list>a,.mobile-category-list>button{display:flex;align-items:center;justify-content:space-between;width:100%;gap:18px;text-align:left;padding:19px 0;min-height:60px;border:0;border-bottom:1px solid #e7dfd4;font:400 14px/1.65 var(--sans);letter-spacing:0;white-space:normal;color:#392c27}
 .mobile-category-list>button>span,.mobile-category-list>a>span{font-size:22px;color:#a2845e;flex-shrink:0}
 .mobile-category-list>button:active,.mobile-category-list>a:active{background:#f4eee6}
 .site-header .main-nav a.mobile-category-all{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:28px;padding:17px 18px;background:#f1ebe2;border:1px solid #e2d6c6;font:500 11px/1.7 var(--sans);letter-spacing:0;white-space:normal;color:#4a1525}
 .mobile-category-all>span{color:#a2845e;font-size:18px}
 .site-header .main-nav .mega-toggle svg{rotate:-90deg}
}
@keyframes category-step-in{from{opacity:.4;translate:12px 0}to{opacity:1;translate:0 0}}
@media(prefers-reduced-motion:reduce){.site-header .main-nav .mobile-category-view:not([hidden]){animation:none}}

/* Fill the available mobile screen and scroll the directory, not the page. */
@media(max-width:1100px){
 .site-header .main-nav.is-open{height:calc(100svh - var(--mobile-menu-top,72px));height:calc(100dvh - var(--mobile-menu-top,72px));max-height:calc(100dvh - var(--mobile-menu-top,72px));justify-content:flex-start;overflow-y:auto;overflow-x:hidden;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;padding-bottom:calc(25px + env(safe-area-inset-bottom,0px));scrollbar-width:thin;scrollbar-color:#b8a17f transparent}
 .site-header .main-nav>.nav-group,.site-header .main-nav>.mobile-category-view{flex-shrink:0}
}
@media(max-width:1100px){
 .mobile-category-heading .mega-kicker:has(button){display:flex;align-items:center;flex-wrap:wrap;gap:0 7px;margin-top:-10px}
 .mobile-category-heading .mega-kicker button{font:inherit;color:inherit;letter-spacing:inherit;text-align:left;min-height:44px;padding:8px 0;text-decoration:underline;text-decoration-color:transparent;text-underline-offset:4px}
 .mobile-category-heading .mega-kicker button:hover,.mobile-category-heading .mega-kicker button:focus-visible{text-decoration-color:currentColor;color:#4a1525}
 .mobile-category-heading .mega-kicker:has(button)+h2{margin-top:1px}
}

.mega-column>.mega-column-title{margin-top:0;cursor:default}.mega-column-title a:hover{color:#a1855d}
