/* Native category links and GET filters, with one compact entry point. */
.ew-design-v2 .shop-main{padding-top:28px}
.ew-design-v2 .shop-main .page-title{font-size:clamp(32px,3.6vw,48px);line-height:1.15;margin-bottom:12px}
.ew-design-v2 .shop-main .ew-archive-intro{margin-bottom:22px;max-width:680px}
.ew-design-v2 .ew-quick-categories{position:relative;display:flex;flex-wrap:nowrap;gap:8px;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#d6c3a3 #fff;scroll-snap-type:x proximity;padding:4px 3px 12px;margin:0 -3px 14px}
.ew-design-v2 .ew-quick-categories a{flex:0 0 auto;scroll-snap-align:start;min-height:44px;padding:11px 17px;border-radius:24px;border:1px solid #dedede;background:#fff;font-size:15px;line-height:1.4;white-space:nowrap;text-transform:none;letter-spacing:0}
.ew-design-v2 .ew-quick-categories a:is([aria-current=page],.ew-category-parent){background:#000;color:#fff;border-color:#000}
.ew-design-v2 .ew-quick-categories a:focus-visible{outline:2px solid #a8782f;outline-offset:1px}
.ew-design-v2.ew-compact-catalog .ew-product-tools{padding:0 0 14px;border-top:0;margin-bottom:16px}
.ew-design-v2.ew-compact-catalog .ew-open-filters{min-height:44px;border-radius:24px;background:#fff;border-color:#d6d6d6;color:#000;gap:20px;padding:10px 16px;font-size:15px}
.ew-compact-catalog .ew-open-filters .ew-filter-count{background:#f2e5cd;color:#000}
.ew-design-v2 .woocommerce-result-count{font-size:14px;line-height:1.5}
.ew-design-v2 .woocommerce-ordering select{min-height:44px;border-radius:8px;font-size:14px}
/* Closed native details reserve a compact entry, rather than a tall panel removed by JS. */
.ew-catalog-explorer > .ew-explorer-toggle{min-height:44px;padding:10px 0;cursor:pointer;font-weight:600}
.ew-catalog-dialog .ew-catalog-explorer > .ew-explorer-toggle{display:none}
/* Without dialog support the same native details remain inline and usable. */
.ew-catalog-explorer .ew-explorer-group{display:block;margin-bottom:12px;border:1px solid #e5e5e5;border-radius:12px}
.ew-catalog-explorer .ew-explorer-group>summary{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:16px;font-size:16px;font-weight:650;list-style:none;cursor:pointer;min-height:54px}
.ew-catalog-explorer .ew-explorer-group>summary::-webkit-details-marker{display:none}
.ew-catalog-explorer .ew-explorer-group[open]>nav{margin:0 16px 16px}
.ew-catalog-open{overflow:hidden}
.ew-catalog-dialog{inset:0;margin:auto;width:min(720px,calc(100% - 48px));max-width:720px;max-height:88dvh;padding:0;border:1px solid #e5e5e5;border-radius:22px;background:#fff;color:#000;box-shadow:0 20px 90px #0003;overflow:hidden}
.ew-catalog-dialog::backdrop{background:#0007;backdrop-filter:blur(4px)}
.ew-catalog-dialog .ew-catalog-explorer{display:flex;flex-direction:column;max-height:88dvh}
.ew-catalog-dialog .ew-explorer-header{display:flex;flex:none;align-items:flex-start;justify-content:space-between;gap:16px;padding:24px 26px 20px;border-bottom:1px solid #eee}
.ew-catalog-dialog .ew-explorer-header h2{margin:0;font-family:var(--font-display);font-size:26px;font-weight:700;line-height:1.25;letter-spacing:-.03em;color:#000}
.ew-catalog-dialog .ew-explorer-header p{margin:6px 0 0;color:#666;font-size:14px;line-height:1.5}
.ew-catalog-dialog .ew-explorer-close{display:grid;place-items:center;flex:none;width:44px;height:44px;padding:0;border:1px solid #dedede;border-radius:50%;background:#fff;color:#000;font-size:26px;line-height:1;cursor:pointer}
.ew-catalog-dialog .ew-explorer-body{min-height:0;overflow:auto;overscroll-behavior:contain;padding:4px 26px 12px;max-height:calc(88dvh - 200px)}
.ew-catalog-dialog :is(.ew-explorer-group,.ew-filter-panel){display:block;margin:0;border:0;border-bottom:1px solid #e8e8e8;border-radius:0;background:#fff}
.ew-catalog-dialog :is(.ew-explorer-group,.ew-filter-panel)>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:66px;padding:18px 0;list-style:none;font-family:var(--font-body);font-size:17px;font-weight:650;line-height:1.4;cursor:pointer}
.ew-catalog-dialog summary::-webkit-details-marker{display:none}
.ew-catalog-dialog :is(.ew-explorer-group,.ew-filter-panel)>summary>span{font-size:24px;font-weight:400;transition:transform .25s}
.ew-catalog-dialog :is(.ew-explorer-group,.ew-filter-panel)[open]>summary>span{transform:rotate(45deg)}
.ew-catalog-dialog .ew-category-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0 0 20px;overflow:visible}
.ew-catalog-dialog .ew-explorer-group[open]>nav{margin-inline:0}
.ew-catalog-dialog .ew-category-nav a{display:flex;align-items:center;min-height:46px;padding:10px 12px;border-radius:8px;font-size:15px;white-space:normal}
.ew-catalog-dialog :is(.ew-subcategory-section,.ew-interest-discovery){margin:0 0 18px;padding:0;border:0}
.ew-catalog-dialog :is(.eyebrow,.ew-subcategory-index,.ew-subcategory-photo,.ew-subcategory-arrow,.ew-subcategory-selected,.ew-subcategory-hint){display:none}
.ew-catalog-dialog .section-heading{display:block;margin:0 0 12px}
.ew-catalog-dialog .section-heading p{display:none}
.ew-catalog-dialog :is(.ew-subcategory-heading,.section-heading h2){margin:0 0 12px;font-family:var(--font-body);font-size:16px;font-weight:650;letter-spacing:0;line-height:1.4}
.ew-catalog-dialog :is(.ew-subcategory-nav,.ew-discovery-grid,.ew-topic-nav){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;overflow:visible}
.ew-catalog-dialog .ew-subcategory-card{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:4px;min-height:64px;max-width:none;padding:10px 12px;border:1px solid #e5e5e5;border-radius:8px;background:#fff;transform:none;animation:none;opacity:1;translate:none;color:#000}
.ew-catalog-dialog .ew-subcategory-with-photo .ew-subcategory-name{width:auto}
.ew-catalog-dialog .ew-subcategory-name{position:static;font-family:var(--font-body);font-size:15px;font-weight:650;line-height:1.35;letter-spacing:0}
.ew-catalog-dialog .ew-discovery-count{position:static;display:block;font-size:12px;font-weight:400;color:#666}
.ew-catalog-dialog .ew-topic-link{min-height:48px;border-color:#e5e5e5;border-radius:8px;font-size:15px;transform:none;opacity:1;translate:none}
.ew-catalog-dialog :is(.ew-more-topics,.ew-type-navigation){margin-top:14px}
.ew-catalog-dialog .ew-style-collections{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:0 0 18px;margin:0}
.ew-catalog-dialog .ew-style-collections a{min-height:48px;padding:12px;border-radius:8px;font-size:15px}
.ew-catalog-dialog .ew-filter-panel .ew-catalog-filters{padding:0 0 20px;margin:0;background:#fff;grid-template-columns:1fr 1fr;gap:18px 12px}
.ew-catalog-dialog .ew-catalog-filters :is(.ew-search-field,div:has(#ew-category)){grid-column:1/-1}
.ew-catalog-dialog .ew-catalog-filters label{font-size:14px;line-height:1.4;margin-bottom:7px;color:#333}
.ew-catalog-dialog .ew-filter-panel .ew-catalog-filters .button{display:none}
.ew-catalog-dialog .ew-filter-panel .ew-stock-filter{grid-column:1/-1;font-size:15px}
.ew-catalog-dialog .ew-filter-panel .ew-stock-filter input{width:20px;height:20px;min-height:0}
.ew-catalog-dialog .ew-explorer-footer{display:block;flex:none;padding:16px 26px calc(16px + env(safe-area-inset-bottom,0px));border-top:1px solid #eee;background:#fff}
.ew-catalog-dialog .ew-explorer-footer .button{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:50px;margin:0;padding:14px 18px;border:1px solid #000;border-radius:12px;background:#000;color:#fff;font-family:var(--font-body);font-size:16px;font-weight:650;line-height:1.4}
.ew-catalog-dialog :is(button,a,summary,input,select):focus-visible{outline:2px solid #a8782f;outline-offset:2px}
.ew-motion-on .ew-catalog-dialog[open]{animation:ew-catalog-arrive .25s cubic-bezier(.2,.7,.2,1)}
.ew-motion-on .ew-quick-categories a{transition:background .2s,border-color .2s,color .2s}
@keyframes ew-catalog-arrive{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:none}}
@media(max-width:767px){
 .ew-design-v2 .shop-main{padding-top:22px}
 .ew-design-v2 .shop-main .ew-archive-intro{font-size:15px;margin-bottom:16px}
 .ew-design-v2 .ew-quick-categories{margin-bottom:12px}
 .ew-design-v2 .ew-quick-categories a{font-size:14px;padding:10px 15px}
 .ew-design-v2.ew-mobile-catalog .ew-product-tools .ew-open-filters{flex:0 0 auto;min-height:44px;font-size:14px}
 .ew-catalog-dialog{inset:auto 0 0;margin:0;width:100%;max-width:none;max-height:94dvh;border-radius:22px 22px 0 0}
 .ew-catalog-dialog .ew-catalog-explorer{max-height:94dvh}
 .ew-catalog-dialog .ew-explorer-body{max-height:calc(94dvh - 190px);padding-inline:20px}
 .ew-catalog-dialog :is(.ew-explorer-header,.ew-explorer-footer){padding-inline:20px}
 .ew-catalog-dialog .ew-explorer-header h2{font-size:23px}
 .ew-catalog-dialog .ew-category-nav{grid-template-columns:repeat(2,minmax(0,1fr))}
 .ew-design-v2 .woocommerce-ordering{margin-bottom:20px}
}
@media(prefers-reduced-motion:reduce){.ew-catalog-dialog[open],.ew-quick-categories a{animation:none!important;transition:none!important}}
.ew-motion-off .ew-catalog-dialog[open]{animation:none}


/* Catalogue component: campaign hierarchy, native Woo data and forms. */
body.ew-design-v2.ew-catalog-surface { background:var(--ew-bone); color:var(--ew-ink); }
.ew-catalog-surface .shop-main { width:min(1440px,calc(100% - 80px)); }
.ew-catalog-surface .woocommerce-products-header { position:relative; display:grid; grid-template-columns:1fr 1fr; gap:12px 48px; align-items:end; padding:28px 0 32px; margin-bottom:24px; border-bottom:1px solid var(--ew-line); }
.ew-catalog-surface .ew-catalog-signature { grid-column:1/-1; order:-1; margin:0; color:var(--ew-campaign); font-size:11px; font-weight:800; line-height:1.5; letter-spacing:.12em; }
.ew-catalog-surface .woocommerce-products-header .page-title { margin:0; font-family:var(--font-body); font-size:clamp(44px,5vw,72px); font-weight:800; line-height:1.06; letter-spacing:-.055em; text-wrap:balance; }
.ew-catalog-surface .woocommerce-products-header .ew-archive-intro { margin:0; padding-right:100px; max-width:560px; color:var(--ew-stone); font-size:17px; line-height:1.6; }
.ew-catalog-surface .woocommerce-products-header .ew-photo-peek { position:absolute; right:0; top:12px; width:76px; height:auto; margin:0; }
.ew-catalog-surface .ew-catalog-paths { grid-column:1/-1; display:flex; flex-wrap:wrap; gap:8px 24px; padding-top:12px; }
.ew-catalog-paths a { display:inline-flex; align-items:center; gap:16px; min-height:44px; border-bottom:1px solid var(--ew-line); font-size:14px; font-weight:650; }
.ew-catalog-paths a:is(:hover,[aria-current=page]) { border-color:var(--ew-campaign); color:var(--ew-campaign); }
.ew-catalog-paths a:focus-visible { outline:3px solid var(--ew-focus); outline-offset:4px; }
.ew-catalog-surface .ew-quick-categories a { border-color:var(--ew-line); background:transparent; }
.ew-catalog-surface .ew-quick-categories a:is([aria-current=page],.ew-category-parent) { background:var(--ew-ink); color:var(--ew-white); }
.ew-catalog-surface .woocommerce-ordering select { background:var(--ew-white); border-color:var(--ew-line); }
body.ew-catalog-surface ul.products { grid-template-columns:repeat(3,minmax(0,1fr)); gap:40px var(--ew-grid-gap); }
body.ew-catalog-surface ul.products li.product { width:auto; }
body.ew-catalog-surface ul.products li.product .woocommerce-loop-product__title { font-size:16px; font-weight:650; }
body.ew-catalog-surface ul.products li.product > .button { font-size:14px; min-height:48px; }
body.ew-catalog-surface ul.products li.product .woocommerce-loop-product__link { flex:0 0 auto; }
body.ew-catalog-surface ul.products li.product .woocommerce-loop-product__title { min-height:0; }
body.ew-catalog-surface ul.products li.product .price { min-height:1.4em; margin:4px 0 0; }
body.ew-catalog-surface ul.products li.product .price:not(:has(del,.ew-outfit-original))::before { display:none; }
body.ew-catalog-surface ul.products li.product > .button { margin-top:auto; padding-top:16px; }
body.ew-catalog-surface ul.products li.product .ew-card-stock { font-size:12px; color:var(--ew-stone); }
.ew-catalog-surface .woocommerce-info { background:var(--ew-white); color:var(--ew-ink); border-top-color:var(--ew-ink); }
@media(max-width:1000px) { .ew-catalog-surface .shop-main { width:calc(100% - 48px); } }
@media(max-width:767px) {
 .ew-catalog-surface .shop-main { width:calc(100% - 32px); }
 .ew-catalog-surface .woocommerce-products-header { display:grid; grid-template-columns:1fr; gap:0; padding:12px 0 24px; margin-bottom:20px; }
 .ew-catalog-surface .ew-catalog-signature { margin-bottom:12px; font-size:10px; }
 .ew-catalog-surface .woocommerce-products-header .page-title { font-size:42px; padding-right:60px; margin-bottom:12px; }
 .ew-catalog-surface .woocommerce-products-header .ew-archive-intro { padding-right:52px; font-size:15px; }
 .ew-catalog-surface .woocommerce-products-header .ew-photo-peek { width:58px; top:30px; }
 .ew-catalog-surface .ew-catalog-paths { gap:4px 20px; padding-top:14px; }
 body.ew-catalog-surface ul.products { grid-template-columns:repeat(2,minmax(0,1fr)); gap:28px 12px; }
 body.ew-catalog-surface ul.products li.product .woocommerce-loop-product__title { font-size:14px; line-height:1.5; }
 body.ew-catalog-surface ul.products li.product > .button { font-size:12px; }
}
