.site-catalog{--mc-navy:var(--site-navy);--mc-blue:var(--site-blue);--mc-cyan:#12aeea;--mc-line:#e4ebf3;--mc-muted:#61738a;--site-content-max:1560px;--site-gutter:3rem;box-sizing:border-box;width:min(calc(100% - var(--site-gutter) - var(--site-gutter)),var(--site-content-max));margin:0 auto;padding:34px 0 76px;color:var(--mc-navy)}
.site-catalog *{box-sizing:border-box}
.site-catalog__intro{margin:0 0 27px;padding:0 0 20px;border-bottom:1px solid var(--mc-line)}
.site-catalog__eyebrow{margin:0 0 7px;color:#0785d6;font-size:12px;font-weight:750;letter-spacing:.09em;text-transform:uppercase}
.site-catalog__intro h1{margin:0;color:var(--mc-navy);font-size:clamp(27px,3vw,40px);font-weight:760;letter-spacing:-.025em;line-height:1.13}
.site-catalog__description{max-width:780px;margin-top:9px;color:var(--mc-muted);font-size:15px;line-height:1.55}
.site-catalog__description p{margin:0}
.site-catalog__layout{display:grid;grid-template-columns:minmax(0,1fr);gap:28px;align-items:start}
.site-catalog__layout.has-filters{grid-template-columns:220px minmax(0,1fr)}
.site-catalog__filter-details>summary{margin-bottom:16px;color:var(--mc-navy);font-size:15px;font-weight:750;cursor:pointer;list-style:none}
.site-catalog__filter-details>summary::-webkit-details-marker{display:none}
.site-catalog__filter-details>summary:after{content:"";display:inline-block;width:8px;height:8px;margin:0 0 2px 9px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg)}
.site-catalog__filter-details[open]>summary:after{transform:rotate(225deg)}
.site-catalog__widget{margin:0 0 23px;padding:0 0 19px;border-bottom:1px solid var(--mc-line)}
.site-catalog__widget-title{margin:0 0 12px;color:var(--mc-navy);font-size:14px;font-weight:750}
.site-catalog__widget ul{margin:0;padding:0;list-style:none}
.site-catalog__widget li{margin:0 0 8px;color:var(--mc-muted);font-size:13px}
.site-catalog__widget a{color:inherit;text-decoration:none}
.site-catalog__widget a:hover{color:var(--mc-blue)}
.site-catalog__widget input[type=checkbox],.site-catalog__widget input[type=radio]{accent-color:var(--mc-blue)}
.site-catalog__widget button,.site-catalog__widget input[type=submit],.site-catalog__widget .button{min-height:38px;padding:8px 13px;border:0;border-radius:5px;background:var(--mc-blue);color:#fff;box-shadow:none;text-transform:none}
.site-catalog__results .woocommerce-notices-wrapper:empty{display:none}
.site-catalog__results .woocommerce-result-count{margin:0;color:var(--mc-muted);font-size:13px}
.site-catalog__results .woocommerce-ordering{margin:0 0 18px}
.site-catalog__results .woocommerce-ordering select{min-height:40px;padding:7px 32px 7px 12px;border:1px solid #dce5ef;border-radius:5px;background-color:#fff;color:var(--mc-navy);font:inherit;font-size:13px}
.site-catalog__results .woocommerce-result-count+.woocommerce-ordering{float:right}
.site-catalog__results ul.products{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px 18px;margin:0!important;padding:0!important;list-style:none}
.site-catalog__results ul.products:before,.site-catalog__results ul.products:after{display:none!important}
.site-catalog__results ul.products li.product{float:none!important;width:auto!important;margin:0!important;padding:0!important;clear:none!important}
.site-product-card{position:relative;overflow:hidden;border:1px solid #e8edf4;border-radius:9px;background:#fff;box-shadow:0 3px 12px #12375c0a;transition:border-color .18s ease,box-shadow .18s ease}
.site-product-card:hover{border-color:#c5d9ec;background:#fff!important;box-shadow:0 8px 22px #12375c14;transform:none!important}
.site-product-card__image{position:relative;display:block;overflow:hidden;aspect-ratio:1/1;background:#f5f7fa}
.site-catalog__results ul.products li.product .site-product-card__image>img{display:block;width:100%;height:100%;margin:0!important;object-fit:cover;transition:transform .22s ease}
.site-product-card:hover .site-product-card__image>img{transform:scale(1.025)}
.site-product-card__badge{position:absolute;top:11px;left:11px;padding:5px 8px;border-radius:4px;background:#0b3e82;color:#fff;font-size:10px;font-weight:750;letter-spacing:.04em;text-transform:uppercase}
.site-product-card__body{padding:13px 13px 15px}
.site-product-card__body h2{margin:0 0 7px;font-size:14px;font-weight:700;line-height:1.38}
.site-product-card__body h2 a{color:var(--mc-navy);text-decoration:none}
.site-product-card__body h2 a:hover{color:var(--mc-blue)}
.site-product-card__description{min-height:34px;margin:0 0 8px;color:var(--mc-muted);font-size:11px;line-height:1.5}
.site-product-card__price{min-height:22px;margin:0 0 10px;color:#183b68;font-size:14px;font-weight:750}
.site-product-card__price del{color:#7b8999;font-size:12px;font-weight:450}
.site-product-card__price ins{text-decoration:none}
.site-product-card__action .button,.site-product-card__action a.button,.site-product-card__action a.added_to_cart{display:inline-flex;min-height:42px;align-items:center;justify-content:center;margin:0;padding:10px 14px;border:1px solid var(--site-blue-bright);border-radius:7px;background:var(--site-blue-bright);color:#fff;box-shadow:0 3px 8px var(--site-blue)1a;text-align:center;text-decoration:none;font-size:13px;font-weight:700;line-height:1.2}
.site-product-card__action .button:hover,.site-product-card__action a.button:hover{border-color:var(--site-blue);background:var(--site-blue);color:#fff;transform:translateY(-1px)}
.site-catalog__results nav.woocommerce-pagination{margin-top:32px}
.site-catalog__results nav.woocommerce-pagination ul{display:flex;gap:6px;border:0}
.site-catalog__results nav.woocommerce-pagination li{border:0}
.site-catalog__results nav.woocommerce-pagination a,.site-catalog__results nav.woocommerce-pagination span{display:grid;min-width:37px;height:37px;place-items:center;border:1px solid #dce5ef;border-radius:5px;background:#fff;color:var(--mc-navy);text-decoration:none}
.site-catalog__results nav.woocommerce-pagination span.current{border-color:var(--mc-blue);background:var(--mc-blue);color:#fff}
.site-catalog__results .woocommerce-info{border-top-color:var(--mc-blue)}
@media(min-width:1500px){.site-catalog__layout:not(.has-filters) .site-catalog__results ul.products{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(max-width:1200px){.site-catalog{--site-gutter:2rem}.site-catalog__results ul.products{grid-template-columns:repeat(3,minmax(0,1fr))!important}.site-catalog__layout.has-filters{grid-template-columns:190px minmax(0,1fr);gap:22px}}
@media(max-width:820px){.site-catalog{padding:27px 0 54px}.site-catalog__layout,.site-catalog__layout.has-filters{grid-template-columns:minmax(0,1fr);gap:12px}.site-catalog__filters{padding:11px 13px;border:1px solid var(--mc-line);border-radius:6px}.site-catalog__filter-details>summary{margin:0}.site-catalog__filter-details[open]>summary{margin-bottom:16px}.site-catalog__results ul.products{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:16px 12px}}
@media(max-width:560px){.site-catalog{--site-gutter:1rem;padding-top:22px}.site-catalog__intro{margin-bottom:18px;padding-bottom:15px}.site-catalog__results ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px 9px}.site-product-card__body{padding:10px}.site-product-card__body h2{font-size:12px}.site-product-card__description{font-size:10px}.site-product-card__action .button,.site-product-card__action a.button{width:100%;padding-inline:6px;font-size:11px}.site-catalog__results .woocommerce-result-count{float:none!important;margin:0 0 9px!important}.site-catalog__results .woocommerce-ordering{float:none!important;margin-bottom:15px!important}.site-catalog__results .woocommerce-ordering select{width:100%}}
@media(prefers-reduced-motion:reduce){.site-product-card,.site-product-card__image>img{transition:none}}

/* Keep WooCommerce archives full width, with a restrained category feature. */
body.woocommerce-shop main.site-main,body.tax-product_cat main.site-main,body.tax-product_tag main.site-main,body.post-type-archive-product main.site-main,body.search-results main.site-main{width:100%;max-width:none;margin:0;padding-inline:0}
body.woocommerce-shop .site-catalog,body.tax-product_cat .site-catalog,body.tax-product_tag .site-catalog,body.post-type-archive-product .site-catalog,body.search-results .site-catalog{width:min(calc(100% - var(--site-gutter) - var(--site-gutter)),var(--site-content-max));max-width:var(--site-content-max)}
.site-catalog__intro--category{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,.7fr);gap:28px;align-items:center;min-height:220px;padding:24px 28px;border:1px solid #e3edf8;border-radius:14px;background:linear-gradient(110deg,#f3f8ff 0%,#eaf4ff 58%,#f8fbff 100%)}
.site-catalog__intro--category .site-catalog__intro-copy{max-width:760px}
.site-catalog__intro--category .site-catalog__intro-image{display:flex;min-width:0;height:210px;align-items:center;justify-content:center;overflow:hidden;border-radius:10px;background:#fff}
.site-catalog__intro--category .site-catalog__intro-image img{display:block;width:100%;height:100%;object-fit:contain}
.site-catalog__intro--category .site-catalog__description{max-width:680px}
.site-catalog__category-nav{position:sticky;top:22px;margin:0 0 24px;padding:0 0 18px;border-bottom:1px solid var(--mc-line)}
.site-catalog__category-nav h2{margin:0 0 12px;color:var(--mc-navy);font-size:16px;font-weight:750}
.site-catalog__category-nav ul{display:grid;gap:4px;margin:0;padding:0;list-style:none}
.site-catalog__category-nav li{margin:0}
.site-catalog__category-nav a{display:flex;min-height:36px;align-items:center;justify-content:space-between;gap:10px;padding:7px 10px;border-radius:6px;color:#53677e;font-size:13px;text-decoration:none}
.site-catalog__category-nav a:hover,.site-catalog__category-nav .is-current>a{background:#edf6ff;color:var(--mc-blue)}
.site-catalog__category-nav a span{color:#8292a5;font-size:11px}
.site-catalog__filter-details{padding-top:1px}
.site-catalog__filter-details>summary{margin-bottom:14px}
.site-catalog__results .woocommerce-ordering select{max-width:100%}
.site-catalog__results ul.products{grid-auto-rows:1fr}
.site-product-card{display:flex;flex-direction:column;height:100%}
.site-product-card__image{flex:none}
.site-product-card__body{display:flex;flex:1;flex-direction:column;align-items:stretch}
.site-product-card__description{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3}
.site-product-card__action{margin-top:auto}
@media(max-width:820px){.site-catalog__intro--category{grid-template-columns:minmax(0,1fr) minmax(180px,.55fr);gap:18px;min-height:180px;padding:20px}.site-catalog__intro--category .site-catalog__intro-image{height:170px}.site-catalog__category-nav{position:static}}
@media(max-width:560px){.site-catalog__intro--category{grid-template-columns:minmax(0,1fr);padding:18px}.site-catalog__intro--category .site-catalog__intro-image{height:150px;grid-row:1}.site-catalog__intro--category .site-catalog__intro-copy{grid-row:2}}

/* Catalog banner controls, working list/grid switch and real WooCommerce widgets. */
.site-catalog__intro--banner{display:flex;min-height:280px;flex-direction:column;align-items:flex-start;justify-content:center;gap:18px;padding:34px 40px;border:1px solid #dce9f7;background-color:#eef6ff;background-position:center right;background-repeat:no-repeat;background-size:cover}
.site-catalog__intro--banner .site-catalog__intro-copy{max-width:min(62%,700px)}
.site-catalog__intro--banner .site-catalog__description{max-width:620px}
.site-catalog__cta{display:inline-flex;min-height:44px;align-items:center;justify-content:center;gap:10px;padding:11px 17px;border:1px solid var(--site-blue-bright);border-radius:7px;background:var(--site-blue-bright);color:#fff;font-size:13px;font-weight:750;text-decoration:none}
.site-catalog__cta:hover{border-color:var(--site-blue);background:var(--site-blue);color:#fff}
.site-catalog__cta svg{width:18px;height:18px}
.site-catalog__toolbar{display:flex;min-height:42px;align-items:center;justify-content:space-between;gap:14px;margin:0 0 17px}
.site-catalog__results .site-catalog__toolbar .woocommerce-result-count{float:none;margin:0;color:var(--mc-muted);font-size:13px}
.site-catalog__results .site-catalog__toolbar .woocommerce-ordering{float:none;margin:0 0 0 auto}
.site-catalog__view-switch{display:flex;align-items:center;gap:4px}
.site-catalog__view-switch button{display:grid;width:40px;height:40px;place-items:center;border:1px solid #dce5ef;border-radius:6px;background:#fff;color:#536b83;cursor:pointer}
.site-catalog__view-switch button[aria-pressed=true]{border-color:#b9d9fa;background:#edf6ff;color:var(--site-blue)}
.site-catalog__view-switch svg{width:19px;height:19px}
.site-catalog__filter-widgets .widget,.site-catalog__filter-widgets .wp-block-woocommerce-filter-wrapper{margin:0 0 20px;padding:0 0 17px;border:0;border-bottom:1px solid var(--mc-line);border-radius:0;background:transparent;box-shadow:none}
.site-catalog__filter-widgets .wp-block-heading,.site-catalog__filter-widgets .wc-block-components-filter-reset-button{color:var(--mc-navy)}
.site-catalog__filter-widgets button,.site-catalog__filter-widgets .wc-block-components-filter-reset-button{font-size:13px}
.site-catalog.is-list-view .site-catalog__results ul.products{grid-template-columns:minmax(0,1fr)!important;gap:12px}
.site-catalog.is-list-view .site-product-card{display:grid;grid-template-columns:minmax(150px,240px) minmax(0,1fr);align-items:stretch}
.site-catalog.is-list-view .site-product-card__image{height:100%;min-height:190px;aspect-ratio:auto}
.site-catalog.is-list-view .site-product-card__body{display:grid;grid-template-columns:minmax(0,1fr) auto;align-content:center;align-items:center;gap:8px 18px;padding:20px 23px}
.site-catalog.is-list-view .site-product-card__body h2{margin:0}
.site-catalog.is-list-view .site-product-card__price{margin:0;text-align:right}
.site-catalog.is-list-view .site-product-card__action{grid-column:1/-1;margin-top:5px}
.site-catalog.is-list-view .site-product-card__action .button{min-width:180px}
@media(max-width:820px){.site-catalog__intro--banner{min-height:230px;padding:25px}.site-catalog__intro--banner .site-catalog__intro-copy{max-width:76%}}
@media(max-width:560px){.site-catalog__intro--banner{min-height:245px;padding:20px;background-position:center}.site-catalog__intro--banner .site-catalog__intro-copy{max-width:100%}.site-catalog__toolbar{flex-wrap:wrap}.site-catalog__results .site-catalog__toolbar .woocommerce-ordering{order:2;flex:1 1 100%;margin:0}.site-catalog.is-list-view .site-product-card{grid-template-columns:105px minmax(0,1fr)}.site-catalog.is-list-view .site-product-card__image{min-height:130px}.site-catalog.is-list-view .site-product-card__body{grid-template-columns:minmax(0,1fr);gap:7px;padding:11px}.site-catalog.is-list-view .site-product-card__price{text-align:left}.site-catalog.is-list-view .site-product-card__action{grid-column:auto;margin-top:0}.site-catalog.is-list-view .site-product-card__action .button{width:100%;min-width:0}}

/* Full-bleed archive hero with a centered content rail. */
body.woocommerce-shop .site-catalog,body.tax-product_cat .site-catalog,body.tax-product_tag .site-catalog,body.post-type-archive-product .site-catalog,body.search-results .site-catalog{padding-top:0}
.site-catalog__intro{position:relative;left:50%;display:block;width:100vw;max-width:none;min-height:0;margin:0 0 34px;padding:0;transform:translateX(-50%);border:0;background:transparent}
.site-catalog__intro:before{position:absolute;inset:0;z-index:0;background-image:linear-gradient(90deg,rgba(242,248,255,.97) 0%,rgba(233,244,255,.94) 58%,rgba(224,239,255,.84) 100%),var(--site-archive-bg-image,none);background-position:center;background-repeat:no-repeat;background-size:cover;content:""}
.site-catalog__intro-inner{position:relative;z-index:1;display:grid;width:min(calc(100% - 6rem),1560px);min-height:240px;grid-template-columns:minmax(0,1fr) minmax(230px,.55fr);align-items:center;gap:34px;box-sizing:border-box;margin:0 auto;padding:34px 0}
.site-catalog__intro-copy{max-width:850px}
.site-catalog__intro-copy .woocommerce-breadcrumb{margin:0 0 24px;padding:0;color:var(--site-text);font-size:12px}
.site-catalog__intro-copy .woocommerce-breadcrumb a{color:var(--site-blue)}
.site-catalog__intro h1{font-weight:600}
.site-catalog__intro-image{display:flex;min-width:0;height:190px;align-items:center;justify-content:center;overflow:hidden;border:1px solid #dce8f5;border-radius:9px;background:#fff}
.site-catalog__intro-image img{display:block;width:100%;height:100%;object-fit:contain}
.site-catalog__cta{justify-self:start}
.site-catalog__intro--banner:before{background-image:linear-gradient(90deg,rgba(242,248,255,.97) 0%,rgba(233,244,255,.91) 53%,rgba(224,239,255,.45) 100%),var(--site-archive-bg-image,none)}
.site-catalog__intro:not(.site-catalog__intro--category) .site-catalog__intro-inner{grid-template-columns:minmax(0,1fr);min-height:185px}
@media(max-width:1100px){.site-catalog__intro-inner{width:min(calc(100% - 4rem),1560px);min-height:220px}}
@media(max-width:680px){.site-catalog__intro-inner{width:calc(100% - 2rem);grid-template-columns:minmax(0,1fr);gap:18px;padding:25px 0}.site-catalog__intro-copy .woocommerce-breadcrumb{margin-bottom:17px}.site-catalog__intro-image{height:170px}.site-catalog__intro:not(.site-catalog__intro--category) .site-catalog__intro-inner{min-height:160px}.site-catalog__intro{margin-bottom:23px}}
/* Product catalog cards use compact, consistent titles and do not repeat the short description. */
body.woocommerce-shop .site-product-card__description,body.tax-product_cat .site-product-card__description,body.tax-product_tag .site-product-card__description,body.post-type-archive-product .site-product-card__description,body.search-results .site-product-card__description{display:none}
