.catalog-heading {padding: 8px 0 26px; max-width: 900px;}
.catalog-buying-guide {margin-top:36px;padding-top:24px;border-top:1px solid var(--border);max-width:900px;}
.catalog-buying-guide h2 {font-size:26px;line-height:1.25;overflow-wrap:anywhere;}
.catalog-buying-guide h3 {font-size:20px;margin-top:22px;}
.catalog-buying-guide p,.catalog-buying-guide li {font-size:15px;line-height:1.7;}
.catalog-buying-guide p {margin:0 0 16px;}
.catalog-buying-guide a {text-decoration:underline;text-underline-offset:3px;}
.catalog-heading h1 {font-size: 38px; margin-bottom: 14px;}
.catalog-heading p {margin-bottom: 0; max-width: 750px;}
.eyebrow {font-size: 11px; letter-spacing: .13em; text-transform: uppercase; font-weight: 700; color: #777; margin: 0 0 12px !important;}
.catalog-layout {display: grid; grid-template-columns: 250px minmax(0,1fr); gap: 30px; align-items: start;}
.catalog-sidebar {background: var(--soft); border: 1px solid var(--border); border-radius: 5px;}
.category-sidebar > summary {padding: 18px; font-weight: 700; color: #242222; cursor: pointer; border-bottom: 1px solid var(--border);}
.category-group {padding: 0 16px;}
.category-group > summary {padding: 16px 0 8px; cursor: pointer; font-weight: 700; color: #242222;}
.category-group a {display: flex; gap: 12px; justify-content: space-between; font-size: 13px; padding: 8px 10px; border-radius: 3px; line-height: 1.4;}
.category-group a span {color: #777; font-size: 11px;}
.category-group a[aria-current] {background: var(--amber); color: #242222; font-weight: bold;}
.category-group a[aria-current] span {color: #343232;}
.category-group .parent-category {font-weight: bold;}
.catalog-filters {padding: 20px 16px; border-top: 1px solid var(--border); display: flex; flex-direction: column; gap: 10px;}
.catalog-filters label {font-size: 12px; margin: 0;}
.catalog-filters input,.catalog-filters select {font-size: 13px; min-width: 0; width: 100%;}
.catalog-search-row {display: flex; gap: 5px;}
.catalog-search-row button {padding: 9px; font-size: 11px;}
.catalog-toolbar {display: flex; align-items: center; justify-content: space-between; gap: 15px; margin: 25px 0 18px; padding-bottom: 14px; border-bottom: 1px solid var(--border);}
.catalog-toolbar p {font-size: 13px; margin: 0;}
.catalog-toolbar .woocommerce-ordering {float: none; margin: 0;}
.catalog-toolbar select {width: auto; font-size: 13px; padding: 8px;}
.category-landing-grid {display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 13px;}
.category-landing-card {border: 1px solid var(--border); border-radius: 4px; overflow: hidden; background: #fff;}
.category-landing-card img {width: 100%; aspect-ratio: 1.7; object-fit: cover;}
.category-landing-card img[src*="mechanic-concepts"] {object-fit: contain; background: var(--soft);}
.category-landing-card > div {padding: 15px;}
.category-landing-card h2 {font-size: 17px; letter-spacing: -.02em;}
.category-landing-card p {font-size: 12px; color: #6b6b70; margin: 0;}
.category-landing-card p span {float: right; color: #343232;}
.category-card-icon {height: 80px; color: #bc7800; background: var(--soft); font-size: 36px;}
.catalog-empty {padding: 35px; border-radius: 5px;}
.catalog-empty .icon {color: #bc7800; margin-bottom: 18px;}
.catalog-empty h2 {font-size: 27px;}
.catalog-empty p {font-size: 15px; max-width: 580px;}
.woocommerce .catalog-results ul.products {display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px;}
.woocommerce .catalog-results ul.products::before,.woocommerce .catalog-results ul.products::after {display: none;}
.woocommerce .catalog-results ul.products li.product {float: none; width: 100% !important; margin: 0; border: 1px solid var(--border); border-radius: 4px; padding: 0 15px 17px; overflow: hidden;}
.woocommerce .catalog-results ul.products li.product a img {margin: 0 -15px 15px; max-width: none; width: calc(100% + 30px); aspect-ratio: 1; object-fit: contain; background: var(--soft);}
.woocommerce ul.products li.product .woocommerce-loop-product__title {font-size: 18px; color: #16151b; line-height: 1.25; padding: 0; margin: 0 0 12px;}
.catalog-sku {font-size: 11px; color: #6b6b70; overflow-wrap: anywhere;}
.woocommerce ul.products li.product .price {font-size: 13px; color: #454545;}
body.woocommerce .catalog-results a.button {padding: 11px 14px; font-size: 12px;}
.woocommerce div.product div.summary h1 {font-size: 36px;}
.woocommerce div.product .price {color: #454545 !important; font-size: 18px; font-weight: 700;}
.woocommerce div.product .product_meta {font-size: 13px; border-top: 1px solid var(--border); padding-top: 15px;}
.woocommerce div.product .product_meta > span {display: block; margin-bottom: 6px;}
.woocommerce div.product .fasa-add h2 {font-size: 23px;}
.woocommerce div.product .fasa-add p {font-size: 13px;}
.fasa-add textarea {min-height: 90px; font-size: 14px;}
.product-inquiry-actions {display: flex; flex-wrap: wrap; gap: 8px;}
.product-inquiry-actions button {background: #fff; border: 1px solid #b5b5b0; font-size: 12px; padding: 10px 12px;}
.fg-gallery-main {width: 100%; aspect-ratio: 1; object-fit: contain; background: var(--soft); border-radius: 4px;}
.fg-gallery-thumbnails {display: flex; gap: 10px; margin-top: 12px; overflow-x: auto; padding: 4px;}
.gallery-thumb {flex: 0 0 78px; width: 78px; padding: 0; background: var(--soft); border: 2px solid transparent; border-radius: 3px; overflow: hidden;}
.gallery-thumb img {width: 100%; aspect-ratio: 1; object-fit: contain;}
.fg-gallery-enlarge {display: inline-block; margin-top: 8px; text-decoration: underline;}
.gallery-thumb[aria-pressed=true] {border-color: var(--amber);}
.woocommerce div.product .woocommerce-tabs ul.tabs {padding: 0; display: flex; flex-wrap: wrap; gap: 6px;}
.woocommerce div.product .woocommerce-tabs ul.tabs li {border-radius: 3px; margin: 0; padding: 0 13px; font-size: 13px; background: var(--soft);}
.woocommerce div.product .woocommerce-tabs .panel {max-width: 900px; overflow-wrap: anywhere;}
.woocommerce div.product .woocommerce-tabs .panel h2 {font-size: 27px;}
.woocommerce table.shop_attributes th {width: 160px;}
.woocommerce .related h2 {font-size: 27px;}
@media(max-width: 1050px) {
    .catalog-layout {grid-template-columns: 225px minmax(0,1fr); gap: 20px;}
    .category-landing-grid,.woocommerce .catalog-results ul.products {grid-template-columns: repeat(2,minmax(0,1fr));}
}
@media(max-width: 800px) {
    .catalog-layout {grid-template-columns: 1fr;}
    .catalog-sidebar {margin-bottom: 4px;}
    .catalog-filters {display: grid; grid-template-columns: 1fr 1fr; align-items: center;}
    .catalog-search-row {grid-column: 1/-1;}
    .category-group {padding-bottom: 12px;}
    .catalog-heading h1 {font-size: 32px;}
}
@media(max-width: 600px) {
    .catalog-heading {padding-bottom: 20px;}
    .catalog-heading h1 {font-size: 30px;}
    .catalog-heading p {font-size: 14px;}
    .catalog-layout {gap: 20px;}
    .category-landing-grid {gap: 10px;}
    .category-landing-card > div {padding: 12px;}
    .category-landing-card h2 {font-size: 15px;}
    .category-landing-card p {font-size: 11px;}
    .catalog-toolbar {gap: 10px; align-items: flex-start;}
    .catalog-toolbar p {font-size: 12px;}
    .catalog-toolbar select {max-width: 150px; font-size: 12px;}
    .catalog-empty {padding: 25px;}
    .catalog-empty h2 {font-size: 25px;}
    .woocommerce .catalog-results ul.products {gap: 10px;}
    .woocommerce .catalog-results ul.products li.product {padding: 0 10px 14px;}
    .woocommerce .catalog-results ul.products li.product a img {margin: 0 -10px 12px; width: calc(100% + 20px);}
    .woocommerce ul.products li.product .woocommerce-loop-product__title {font-size: 16px;}
    body.woocommerce .catalog-results a.button {font-size: 11px; padding: 10px;}
    .woocommerce div.product div.summary h1 {font-size: 30px;}
    .woocommerce div.product .woocommerce-tabs ul.tabs li {font-size: 12px; padding: 0 10px;}
    .fg-gallery-thumbnails {gap: 7px;}
    .gallery-thumb {flex-basis: 65px; width: 65px;}
}

.catalog-add{padding:10px 0}.catalog-add label{display:block;font-size:12px}.catalog-add input{display:block;width:100%;padding:8px;margin:5px 0 10px}.catalog-add button{font-size:12px;padding:10px}.catalog-add [role=status]{font-size:12px;margin-top:8px}

/* PRODUCT-BATCH-02: show the complete adult top-and-shorts set in archive cards. */
.woocommerce .catalog-results ul.products li.product.post-388 a img {object-fit: contain;}

/* Shared archive navigation: natural-height sidebar and category-path accordion. */
.catalog-layout { grid-template-columns:clamp(260px,24vw,300px) minmax(0,1fr); }
.catalog-sidebar { align-self:start; min-width:0; background:#fff; border:1px solid var(--border); border-radius:6px; display:flex; flex-direction:column; }
.catalog-sidebar[hidden], .catalog-sidebar [hidden] { display:none!important; }
.catalog-sidebar { position:static; height:auto; max-height:none; overflow:visible; }
.catalog-sidebar-top { padding:18px 16px 10px; display:flex; align-items:center; gap:10px; justify-content:space-between; flex-shrink:0; }
.catalog-sidebar-top h2 { font-size:20px; letter-spacing:-.02em; margin:0; }
.catalog-sidebar-body { min-height:0; height:auto; max-height:none; overflow:visible; }
.catalog-sidebar:not(.catalog-accordion-ready) .catalog-category-toggle, .catalog-sidebar:not(.catalog-accordion-ready) .catalog-panel-close, .catalog-panel-toggle[hidden] { display:none; }
.catalog-sidebar .catalog-category-toggle:focus-visible, .catalog-sidebar .catalog-category-row a:focus-visible { outline:3px solid #a86600; outline-offset:2px; }
.catalog-filters { border:0; padding:0 14px 14px; display:block; margin:0; }
.catalog-search-row { display:flex; align-items:stretch; margin:0 0 12px; border:1px solid #d5d7db; border-radius:5px; background:#f8f8f9; }
.catalog-search-row input { border:0; background:transparent; padding:10px; width:100%; flex:1; }
.catalog-search-row button { border:0; background:transparent; color:#333; padding:7px 10px; font-size:24px; min-width:36px; }
.catalog-category-tree, .catalog-category-tree ul { list-style:none; padding:0; margin:0; }
.catalog-category-tree ul { margin:2px 0 5px 9px; padding-left:11px; border-left:1px solid #e7e7e3; }
.catalog-category-root { border-top:1px solid #e5e5e1; padding:6px 0; }
.catalog-category-row { display:flex; align-items:stretch; min-width:0; }
.catalog-category-row a { flex:1; min-width:0; display:flex; gap:8px; align-items:baseline; justify-content:space-between; padding:7px 6px; border-left:3px solid transparent; border-radius:3px; font-size:13px; line-height:1.45; overflow-wrap:anywhere; color:#25252a; font-weight:400; }
.catalog-category-root > .catalog-category-row a { font-size:15px; font-weight:700; }
.catalog-category.is-current-path > .catalog-category-row a { font-weight:700; }
.catalog-category-row a[aria-current="page"] { background:#fff3ce; border-left-color:var(--amber); color:#15151b; }
.catalog-category-count { flex-shrink:0; color:#777; font-size:10px; font-weight:400; }
.catalog-category-toggle { flex:0 0 30px; width:30px; min-height:32px; background:transparent; color:#333; border:0; padding:7px; border-radius:3px; }
.catalog-category-toggle:hover { background:#f5f5f3; }
.catalog-category-toggle span { width:7px; height:7px; border-right:1.5px solid; border-bottom:1.5px solid; transform:rotate(-45deg); display:block; }
.catalog-category-toggle[aria-expanded=true] span { transform:rotate(45deg); }
.catalog-refine { border-top:1px solid #e5e5e1; padding-top:8px; margin-top:6px; }
.catalog-refine summary { list-style:none; cursor:pointer; padding:9px 6px; display:flex; align-items:center; gap:8px; font-size:14px; font-weight:700; }
.catalog-refine summary::-webkit-details-marker { display:none; }
.catalog-refine summary:after { content:''; width:7px; height:7px; border-right:1.5px solid; border-bottom:1.5px solid; transform:rotate(-45deg); margin-left:auto; }
.catalog-refine[open] summary:after { transform:rotate(45deg); }
.catalog-facet-fields { display:grid; gap:9px; padding:8px 5px; }
.catalog-facet-fields select { padding:9px; }
.catalog-facet-fields button { padding:11px; }
.catalog-reset { display:block; margin:12px 5px 2px; font-size:12px; text-decoration:underline; }
.catalog-filter-count { display:inline-flex; align-items:center; justify-content:center; min-width:20px; height:20px; padding:0 5px; border-radius:10px; background:#fff0c5; font-size:11px; }
.catalog-panel-toggle, .catalog-panel-close { display:none; }
@media (min-width:801px) and (max-width:1050px) { .catalog-layout { grid-template-columns:260px minmax(0,1fr); } }
@media (max-width:800px) {
 .catalog-layout { grid-template-columns:minmax(0,1fr); gap:14px; }
 .catalog-panel-toggle { display:flex; flex-wrap:wrap; justify-content:flex-start; gap:8px; width:100%; background:#fff; border:1px solid #d5d5d0; padding:13px 14px; }
 .catalog-current-category { flex-basis:100%; text-align:left; font-size:12px; font-weight:400; }
 .catalog-panel-close { display:inline-flex; padding:8px 12px; background:#fff; color:#333; border:1px solid #ccc; font-size:12px; }
 .catalog-sidebar { position:static; max-height:none; }
 .catalog-sidebar-body { overflow:visible; }
 .catalog-filters { display:block; }
}
/* Archive refinement: scoped card geometry and compact introduction. */
@media(min-width:801px){.catalog-sidebar{position:sticky;top:var(--catalog-sticky-offset,12px)}}
.catalog-heading{padding:4px 0 12px;max-width:none}
.catalog-heading h1{font-size:clamp(30px,3vw,42px);line-height:1.15;margin:0 0 12px;overflow-wrap:anywhere}
.catalog-heading p{max-width:100%;font-size:16px;line-height:1.55;margin:0}
.catalog-heading .eyebrow{font-size:11px;margin-bottom:12px!important}
.catalog-toolbar{margin:12px 0 18px;padding-bottom:12px;min-height:42px}
.catalog-toolbar .woocommerce-result-count{float:none;margin:0;font-size:14px}
.catalog-layout{gap:26px;grid-template-columns:clamp(260px,24vw,320px) minmax(0,1fr)}
.catalog-results{min-width:0}
.woocommerce .catalog-results ul.products{align-items:stretch;gap:16px}
.woocommerce .catalog-results ul.products li.product{display:flex;flex-direction:column;padding:0 16px 16px;background:#fff}
.woocommerce .catalog-results ul.products li.product>a.woocommerce-LoopProduct-link{display:flex;flex-direction:column;flex:1;color:inherit;min-width:0}
.woocommerce .catalog-results ul.products li.product a img{aspect-ratio:1;object-fit:contain;background:#fff;margin:0 -16px 14px;width:calc(100% + 32px)}
.woocommerce .catalog-results ul.products li.product .woocommerce-loop-product__title{min-height:2.6em;line-height:1.3;font-size:18px;margin:0 0 6px;overflow-wrap:anywhere}
.catalog-results .catalog-sku{font-size:12px;margin:0 0 8px;line-height:1.5}
.woocommerce .catalog-results ul.products li.product .price{margin-top:auto;margin-bottom:8px;font-size:14px;line-height:1.5}
.catalog-details{font-size:14px;color:#ae6800;display:block;margin:0 0 12px;text-decoration:none}
.catalog-details:hover{text-decoration:underline}
.catalog-results .catalog-add{padding:10px;background:#f5f5f3;margin:0;border-radius:3px}
.catalog-results .catalog-add label{font-size:12px;line-height:1.4;margin:0 0 9px;display:block}
.catalog-results .catalog-add input{height:38px;padding:8px 10px;margin:5px 0 0;background:#fff;border:1px solid #c8cbd0;border-radius:3px}
.catalog-results .catalog-add button{width:100%;min-height:40px;padding:10px 8px;font-size:13px;line-height:1.4}
.catalog-results .catalog-add [role=status]:empty{display:none}
.catalog-results .catalog-add [role=status]{margin:9px 0 0;font-size:12px;overflow-wrap:anywhere}
.catalog-results .catalog-add [role=status] a{color:var(--amber);font-weight:700;text-decoration:underline}
.catalog-results .catalog-add button:disabled{opacity:.6;cursor:wait}
.catalog-helper{font-size:13px;color:#666;margin:12px 0 20px}
.catalog-layout :is(a,button,input,select,summary):focus-visible{outline:3px solid #155dad;outline-offset:3px}
.catalog-category-row a{font-size:14px}
.catalog-category-count{font-size:11px}
@media(min-width:801px) and (max-width:1150px){.catalog-layout{grid-template-columns:260px minmax(0,1fr);gap:20px}.woocommerce .catalog-results ul.products{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:800px){.catalog-layout{grid-template-columns:minmax(0,1fr);gap:16px}.catalog-heading{padding-bottom:6px}.catalog-toolbar{margin-top:10px}.catalog-sidebar-top{padding:16px}.catalog-heading h1{font-size:32px}}
@media(max-width:520px){.woocommerce .catalog-results ul.products{grid-template-columns:minmax(0,1fr);gap:18px}.catalog-toolbar{align-items:flex-start;flex-direction:column;gap:10px}.catalog-toolbar .woocommerce-ordering,.catalog-toolbar select{width:100%;max-width:none}.catalog-heading p{font-size:15px}.catalog-heading h1{font-size:30px}.catalog-results .catalog-add button{font-size:14px}.catalog-sidebar-top h2{font-size:19px}}
