/* Opt-in B2B templates. Native WooCommerce, CF7 and canonical RFQ remain in charge. */
.ittheme-b2b-ui{--ink:#172b40;--muted:#495c6e;--accent:#075b48;--line:#d5dfe5;--surface:#f3f6f8;margin:0;color:var(--ink);background:#fff;font:16px/1.6 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;overflow-wrap:anywhere}
.ittheme-b2b-ui *{box-sizing:border-box}
.ittheme-b2b-ui a{color:var(--accent)}
.ittheme-b2b-ui a:hover{text-decoration:underline}
.ittheme-b2b-ui :focus-visible{outline:3px solid #cc6800;outline-offset:4px}
.ittheme-b2b-ui img{max-width:100%;height:auto}
.ittheme-b2b-ui h1,.ittheme-b2b-ui h2,.ittheme-b2b-ui h3{line-height:1.15;letter-spacing:-.035em;color:var(--ink);margin:0 0 20px}
.ittheme-b2b-ui h1{font-size:clamp(34px,4vw,62px)}
.ittheme-b2b-ui h2{font-size:clamp(27px,2.6vw,40px)}
.ittheme-b2b-ui h3{font-size:23px}
.ittheme-b2b-ui p{margin:0 0 20px}
.b2b-shell{width:min(1320px,calc(100% - 64px));margin-inline:auto}
.b2b-visually-hidden{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.b2b-skip{position:fixed;left:16px;top:-100px;z-index:100;padding:12px;background:#fff}
.b2b-skip:focus{top:12px}
.b2b-header{border-bottom:1px solid var(--line);background:#fff}
.b2b-header__inner{min-height:100px;display:flex;align-items:center;justify-content:space-between;gap:32px}
.b2b-brand{display:flex;align-items:center;gap:12px;text-decoration:none!important;color:var(--ink)!important;font-size:25px;font-weight:750;line-height:1.2;flex-shrink:0}
.b2b-brand img{width:52px;height:52px;object-fit:contain}
.b2b-brand small{display:block;font-size:12px;font-weight:500;letter-spacing:.02em;margin-top:4px}
.b2b-navigation{display:flex;align-items:center;gap:28px}
.b2b-navigation>a{font-size:15px;font-weight:600;text-decoration:none;color:var(--ink)}
.ittheme-b2b-ui .b2b-menu-toggle{display:none}
.b2b-button,.ittheme-b2b-ui button,.ittheme-b2b-ui .button,.ittheme-b2b-ui input[type=submit]{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--accent);border-radius:7px;padding:12px 20px;min-height:46px;background:var(--accent);color:#fff;text-decoration:none;font-family:inherit;font-size:15px;font-weight:600;line-height:1.4;cursor:pointer;text-align:center;white-space:normal}
.b2b-button:hover{background:#064c3d;color:#fff;text-decoration:none!important}
.b2b-button--outline{background:#fff;color:var(--accent)}
.b2b-button--light{background:#e7f1ed;color:var(--accent)!important;border-color:#e7f1ed}
.b2b-eyebrow{text-transform:uppercase;letter-spacing:.14em;color:var(--accent);font-size:12px;font-weight:750;margin-bottom:18px!important}
.b2b-hero{background:#eef4f1;padding:72px 0 80px;border-bottom:1px solid var(--line)}
.b2b-hero__grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:80px;align-items:center}
.b2b-lead{font-size:19px;color:var(--muted);max-width:650px}
.b2b-search{display:flex;gap:10px;margin:28px 0 22px}
.ittheme-b2b-ui input:not([type=checkbox]):not([type=radio]):not([type=submit]),.ittheme-b2b-ui select,.ittheme-b2b-ui textarea{width:100%;min-width:0;background:#fff;border:1px solid #8c9ca8;border-radius:6px;padding:12px;color:var(--ink);font:inherit;min-height:46px;box-shadow:none}
.b2b-search input{flex:1}
.b2b-hero__links{display:flex;gap:24px;flex-wrap:wrap;font-size:14px;font-weight:650}
.b2b-hero__note{border:1px solid #b8d0c6;background:#fff;border-radius:14px;padding:32px;box-shadow:0 14px 32px #122d2010}
.b2b-note-mark{display:inline-block;background:#e7f1ed;color:var(--accent);font-size:15px;font-weight:750;padding:10px;border-radius:8px;margin-bottom:24px}
.b2b-hero__note h2{font-size:27px}
.b2b-hero__note ol{padding-left:22px}
.b2b-hero__note li{padding-left:4px;margin:12px 0}
.b2b-hero__note p{font-size:14px;color:var(--muted);margin-bottom:0}
.b2b-section{padding:80px 0}
.b2b-section--tint{background:var(--surface)}
.b2b-section-intro{max-width:760px;color:var(--muted)}
.b2b-directions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:36px}
.b2b-directions article{border:1px solid var(--line);border-radius:10px;padding:28px;display:flex;flex-direction:column;align-items:flex-start}
.b2b-directions article p{font-size:15px;color:var(--muted);flex:1}
.b2b-directions article a{font-size:14px;font-weight:700}
.b2b-direction-icon{font-size:27px;color:var(--accent);margin-bottom:22px}
.b2b-about,.b2b-contact{display:grid;grid-template-columns:1fr 1fr;gap:80px}
.b2b-principles>div{padding:0 0 16px;border-bottom:1px solid var(--line);margin-bottom:24px}
.b2b-principles p{margin:8px 0 0;color:var(--muted)}
.b2b-contact__form{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:30px;min-width:0}
.ittheme-b2b-ui .wpcf7-form p{margin-bottom:18px}
.ittheme-b2b-ui .wpcf7-form label{display:block}
.ittheme-b2b-ui .wpcf7-form-control-wrap{display:block;margin-top:6px}
.ittheme-b2b-ui .wpcf7 textarea{min-height:150px}
.ittheme-b2b-ui .wpcf7-list-item{margin:0}
.ittheme-b2b-ui [hidden]{display:none!important}
.ittheme-b2b-ui #ittheme-rfq-items{max-width:100%;overflow-x:auto}
.b2b-footer{padding:40px 0;border-top:1px solid var(--line);background:#f3f6f8}
.b2b-footer__grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:32px}
.b2b-footer p{font-size:14px;color:var(--muted)}
.b2b-footer nav{display:flex;flex-direction:column;align-items:flex-start;gap:12px}
.b2b-footer button{background:none;color:var(--accent);border:0;padding:0;text-decoration:underline}
.b2b-catalog-page{padding-top:28px;padding-bottom:64px}
.b2b-breadcrumbs{display:flex;flex-wrap:wrap;gap:10px;font-size:13px;color:var(--muted);margin-bottom:34px;min-width:0;overflow-wrap:anywhere;word-break:normal}
.b2b-breadcrumbs a,.b2b-breadcrumbs span{min-width:0;overflow-wrap:anywhere}
.b2b-page-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:28px}
.b2b-page-heading h1{font-size:clamp(30px,3vw,42px);margin-bottom:0}
.b2b-page-heading .b2b-eyebrow{margin-bottom:10px!important}
.b2b-catalog-layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:28px;align-items:start}
.b2b-category-panel{border:1px solid var(--line);border-radius:8px;padding:18px;font-size:14px}
.b2b-category-panel summary{font-weight:700;cursor:pointer}
.b2b-category-panel ul{list-style:none;padding-left:0;margin:16px 0}
.b2b-category-panel ul ul{padding-left:12px;margin-top:6px}
.b2b-category-panel li a{display:flex;justify-content:space-between;align-items:start;gap:8px;padding:7px 0;text-decoration:none}
.b2b-category-panel p{margin-top:14px;color:var(--muted)}
.b2b-count{font-size:12px;color:var(--muted);background:var(--surface);border-radius:4px;padding:0 5px;flex-shrink:0}
.b2b-catalog-main{min-width:0}
.ittheme-b2b-ui .ittheme-catalog-filter-toggle{display:none}
.ittheme-b2b-ui .ittheme-catalog-filter{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;background:var(--surface);border:1px solid var(--line);padding:20px;border-radius:8px;margin-bottom:22px}
.ittheme-b2b-ui .ittheme-catalog-filter__field:first-child{grid-column:span 2}
.ittheme-b2b-ui .ittheme-catalog-filter__field{min-width:0;display:flex;flex-direction:column;gap:6px;font-size:13px}
.ittheme-b2b-ui .ittheme-catalog-filter__label{font-weight:650}
.ittheme-b2b-ui .ittheme-catalog-filter__actions{display:flex;align-items:end;gap:14px;flex-wrap:wrap}
.ittheme-b2b-ui .ittheme-catalog-filter__reset{font-size:13px;align-self:center}
.ittheme-b2b-ui .ittheme-catalog-active{display:flex;gap:8px;flex-wrap:wrap;font-size:12px;margin-bottom:18px}
.ittheme-b2b-ui .ittheme-catalog-active__item{padding:4px 8px;background:#e7f1ed;border-radius:4px}
.ittheme-b2b-ui .ittheme-catalog-meta{display:flex;justify-content:space-between;margin-bottom:14px;font-size:14px;color:var(--muted)}
.ittheme-b2b-ui .ittheme-catalog-empty,.ittheme-b2b-ui .ittheme-catalog-unavailable{padding:32px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}
.ittheme-b2b-ui .ittheme-catalog-view-switcher{display:flex;justify-content:flex-end;gap:6px;align-items:center;margin-bottom:14px}
.ittheme-b2b-ui .ittheme-catalog-view-switcher span{font-size:12px;margin-right:8px}
.ittheme-b2b-ui .ittheme-catalog-view-switcher button{padding:6px 12px;min-height:36px;background:#fff;color:var(--accent)}
.ittheme-b2b-ui .ittheme-catalog-view-switcher button.is-active{background:var(--accent);color:#fff}
.ittheme-b2b-ui .ittheme-catalog-list{display:block}
.ittheme-b2b-ui .ittheme-catalog-list__head,.ittheme-b2b-ui .ittheme-catalog-list__row{display:grid;grid-template-columns:64px minmax(0,2fr) minmax(0,1fr) minmax(94px,1fr) minmax(100px,1fr) 100px;gap:14px;align-items:center;padding:20px 12px;border-bottom:1px solid var(--line);font-size:14px}
.ittheme-b2b-ui .ittheme-catalog-list__head{font-size:11px;font-weight:650;padding-block:10px;background:var(--surface);border-radius:6px}
.b2b-catalog-image{display:flex;justify-content:center;align-items:center;min-height:64px}
.b2b-catalog-image img{max-height:110px;object-fit:contain}
.b2b-image-placeholder{font-size:9px;color:var(--muted);text-align:center;background:var(--surface);border-radius:5px;padding:6px;line-height:1.4;display:block}
.b2b-image-placeholder>span{display:block;font-size:25px}
.ittheme-b2b-ui .ittheme-catalog-list__name a{font-weight:650;text-decoration:none;color:var(--ink)}
.ittheme-b2b-ui .ittheme-catalog-list__brand,.ittheme-b2b-ui .ittheme-catalog-list__sku small{display:block;font-size:11px;color:var(--muted);margin-top:6px}
.b2b-cell-label{display:none}
.ittheme-b2b-ui .ittheme-catalog-list__price{font-size:17px;font-weight:750}
.ittheme-b2b-ui .ittheme-catalog-list__stock .stock{font-size:12px;color:var(--accent);margin:0}
.ittheme-b2b-ui .ittheme-catalog-list__action .button{font-size:12px;padding:10px;min-width:0}
.ittheme-b2b-ui .ittheme-catalog-list.is-grid-view{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.ittheme-b2b-ui .is-grid-view .ittheme-catalog-list__head{display:none}
.ittheme-b2b-ui .is-grid-view .ittheme-catalog-list__row{display:flex;align-items:stretch;flex-direction:column;padding:20px;border:1px solid var(--line);border-radius:8px;gap:12px}
.ittheme-b2b-ui .is-grid-view .b2b-catalog-image{height:140px}
.ittheme-b2b-ui .is-grid-view .b2b-image-placeholder{min-width:90px}
.ittheme-b2b-ui .is-grid-view .ittheme-catalog-list__name{flex:1}
.ittheme-b2b-ui .is-grid-view .ittheme-catalog-list__action{margin-top:auto}
.ittheme-b2b-ui .is-grid-view .ittheme-catalog-list__action .button{width:100%}
.ittheme-b2b-ui .ittheme-catalog-pagination{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-top:30px}
.ittheme-b2b-ui .ittheme-catalog-pagination>a,.ittheme-b2b-ui .ittheme-catalog-pagination>span{padding:7px 12px;border:1px solid var(--line);border-radius:5px}
.ittheme-b2b-ui .ittheme-catalog-pagination .is-current{background:var(--accent);color:#fff}
.b2b-catalog-help{display:flex;justify-content:space-between;gap:32px;align-items:center;background:var(--surface);border-radius:10px;padding:30px;margin-top:48px}
.b2b-catalog-help h2{font-size:26px}
.b2b-catalog-help p{margin-bottom:0}
.b2b-product-page{padding-block:28px 64px}
.ittheme-b2b-ui .woocommerce div.product{min-width:0}
.ittheme-b2b-ui .woocommerce div.product .product_title{font-size:clamp(28px,3vw,40px)}
.ittheme-b2b-ui .woocommerce div.product .price{font-size:28px;color:var(--ink)}
.ittheme-b2b-ui .woocommerce div.product .woocommerce-tabs ul.tabs{padding-left:0}
.ittheme-b2b-ui .woocommerce table{width:100%;border-collapse:collapse}
.ittheme-b2b-ui .woocommerce th,.ittheme-b2b-ui .woocommerce td{padding:12px;border-bottom:1px solid var(--line);text-align:left}
.ittheme-b2b-ui .woocommerce .product_meta{font-size:13px;margin-top:24px}
.ittheme-b2b-ui .woocommerce .product_meta>span{display:block}
@media(max-width:1100px){.b2b-header__inner{gap:20px}
.b2b-navigation{gap:18px}
.b2b-hero__grid,.b2b-about,.b2b-contact{gap:36px}
.b2b-catalog-layout{grid-template-columns:190px minmax(0,1fr);gap:20px}
.ittheme-b2b-ui .ittheme-catalog-list__head{display:none}
.ittheme-b2b-ui .ittheme-catalog-list__row{grid-template-columns:64px minmax(0,1fr) minmax(110px,1fr);gap:14px}
.ittheme-b2b-ui .ittheme-catalog-list__sku{grid-column:2}
.ittheme-b2b-ui .ittheme-catalog-list__price{grid-column:3;grid-row:1}
.ittheme-b2b-ui .ittheme-catalog-list__stock{grid-column:3;grid-row:2}
.ittheme-b2b-ui .ittheme-catalog-list__action{grid-column:3}
.ittheme-b2b-ui .ittheme-catalog-list.is-grid-view{grid-template-columns:repeat(2,minmax(0,1fr))}
.ittheme-b2b-ui .ittheme-catalog-filter{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:850px){.b2b-shell{width:calc(100% - 40px)}
.b2b-header__inner{min-height:84px;flex-wrap:wrap;padding-block:14px}
.b2b-brand{font-size:22px}
.b2b-brand img{width:44px;height:44px}
.b2b-menu-toggle{display:inline-flex!important;background:#fff!important;color:var(--accent)!important}
.b2b-navigation{display:none;width:100%;align-items:stretch;padding:12px 0;gap:18px;flex-direction:column}
.b2b-navigation.is-open{display:flex}
.b2b-hero{padding:48px 0}
.b2b-hero__grid{grid-template-columns:1fr;gap:32px}
.b2b-hero__note{padding:24px}
.b2b-hero__note ol{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.b2b-section{padding:52px 0}
.b2b-directions{grid-template-columns:repeat(2,minmax(0,1fr))}
.b2b-directions article{padding:22px}
.b2b-about,.b2b-contact{grid-template-columns:1fr}
.b2b-catalog-layout{grid-template-columns:1fr}
.b2b-category-panel{padding:14px}
.b2b-category-panel nav>ul{display:flex;flex-wrap:wrap;gap:16px}
.b2b-category-panel nav>ul>li{flex:1;min-width:150px}
.b2b-category-panel p{margin:12px 0}
.b2b-page-heading{align-items:start}
.b2b-catalog-help{align-items:start}
.b2b-footer__grid{grid-template-columns:1fr 1fr}
.b2b-footer__grid>div:first-child{grid-column:1/-1}}
@media(max-width:540px){.b2b-shell{width:calc(100% - 32px)}
.b2b-brand{font-size:20px;gap:8px}
.b2b-brand small{font-size:10px}
.b2b-menu-toggle{padding:8px 12px!important;min-height:42px!important}
.b2b-hero{padding:38px 0}
.b2b-lead{font-size:17px}
.b2b-search{flex-direction:column}
.b2b-hero__note ol{display:block}
.b2b-directions{grid-template-columns:1fr;gap:14px}
.b2b-section{padding:42px 0}
.b2b-contact__form{padding:20px}
.b2b-page-heading{flex-direction:column;gap:16px}
.ittheme-b2b-ui .ittheme-catalog-filter{grid-template-columns:1fr;padding:16px}
.ittheme-b2b-ui .ittheme-catalog-filter__field:first-child{grid-column:auto}
.ittheme-b2b-ui .ittheme-catalog-list__row{grid-template-columns:60px minmax(0,1fr);padding:18px 0;gap:10px 14px}
.ittheme-b2b-ui .ittheme-catalog-list__name{grid-column:2}
.ittheme-b2b-ui .ittheme-catalog-list__sku{grid-column:2}
.ittheme-b2b-ui .ittheme-catalog-list__price{grid-column:2;grid-row:auto}
.ittheme-b2b-ui .ittheme-catalog-list__stock{grid-column:2;grid-row:auto}
.ittheme-b2b-ui .ittheme-catalog-list__action{grid-column:2}
.ittheme-b2b-ui .ittheme-catalog-list__action .button{width:100%}
.ittheme-b2b-ui .ittheme-catalog-list.is-grid-view{grid-template-columns:1fr}
.b2b-catalog-help{flex-direction:column;padding:24px}
.b2b-footer__grid{grid-template-columns:1fr}
.b2b-footer__grid>div:first-child{grid-column:auto}
.ittheme-b2b-ui .woocommerce div.product div.images,.ittheme-b2b-ui .woocommerce div.product div.summary{float:none;width:100%}
.ittheme-b2b-ui .woocommerce table{font-size:13px}}
/* Link specificity must match the public link rule, including empty-state CTAs. */
.ittheme-b2b-ui a.b2b-button{color:#fff}
.ittheme-b2b-ui a.b2b-button--outline,.ittheme-b2b-ui a.b2b-button--light{color:var(--accent)}
.ittheme-b2b-ui .ittheme-catalog-filter button[type=submit]{background:var(--accent);border-color:var(--accent);color:#fff}
.ittheme-b2b-ui .b2b-product-page div.product{display:flow-root}
.ittheme-b2b-ui .woocommerce .stock.in-stock{color:var(--accent)}
.ittheme-b2b-ui .woocommerce a.button{background:var(--accent);color:#fff;border-color:var(--accent)}
.ittheme-b2b-ui .b2b-product-facts{margin:24px 0;border-top:1px solid var(--line);font-size:14px}
.ittheme-b2b-ui .b2b-product-facts>div{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 20px;border-bottom:1px solid var(--line);padding:12px 0}
.ittheme-b2b-ui .b2b-product-facts dt{color:var(--muted);font-weight:400}
.ittheme-b2b-ui .b2b-product-facts dd{margin:0;font-weight:600}
.ittheme-b2b-ui a.ittheme-request-panel__send{color:#fff;background:var(--accent);border-color:var(--accent)}
.ittheme-b2b-ui .ittheme-request-panel__head-actions{flex-shrink:0;gap:8px}
.ittheme-b2b-ui .ittheme-request-panel__head button{white-space:nowrap;padding:8px 10px;min-height:40px;margin:0;font-size:13px}
.ittheme-b2b-ui .ittheme-request-panel__title{min-width:0}
/* The existing staging safety ribbon stays visible without blocking RFQ controls. */
.ittheme-b2b-ui.ittheme-b2b-test .ittheme-request-panel{bottom:48px;max-height:calc(80vh - 48px)}

.ittheme-b2b-ui .b2b-request-slot .ittheme-request-panel__toggle{position:static;bottom:auto;right:auto;margin:0;box-shadow:none;min-height:46px}
.ittheme-b2b-ui .b2b-request-slot .ittheme-request-panel__toggle:not(.is-visible){display:none}
/* Related cards can be narrower than the main product's 260px placeholder. */
.ittheme-b2b-ui .related ul.products li.product .ittheme-product-image-placeholder{min-height:0;min-width:0;width:100%;max-width:100%}

/* Existing native filter controls remain available when panels start closed on mobile. */
@media(max-width:760px){.ittheme-b2b-ui .ittheme-catalog-filter-toggle{display:flex;width:100%;justify-content:space-between;margin-bottom:16px}.b2b-category-panel summary{min-height:32px;display:list-item}}

/* Hierarchical B2B catalog: subcategories grid, cards, and direct products */
.b2b-subcategories-section{margin-bottom:36px}
.b2b-subcategories-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:20px}
.b2b-subcategory-card{border:1px solid var(--line);border-radius:10px;padding:24px;background:#fff;display:flex;flex-direction:column;justify-content:space-between;text-decoration:none!important;color:var(--ink)!important;transition:border-color .15s ease,box-shadow .15s ease;box-sizing:border-box;min-width:0;max-width:100%}
.b2b-subcategory-card:hover{border-color:var(--accent);box-shadow:0 6px 18px rgba(7,91,72,.08)}
.b2b-subcategory-card__header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;min-width:0}
.b2b-subcategory-card__title{font-size:18px;font-weight:700;margin:0;line-height:1.3;color:var(--ink);min-width:0;overflow-wrap:anywhere}
.b2b-subcategory-card__count{font-size:12px;color:var(--muted);background:var(--surface);border-radius:6px;padding:3px 8px;font-weight:600;white-space:nowrap;flex-shrink:0}
.b2b-subcategory-card__desc{font-size:14px;color:var(--muted);margin:0 0 16px;flex:1;min-width:0;overflow-wrap:anywhere}
.b2b-subcategory-card__action{font-size:14px;font-weight:650;color:var(--accent);display:inline-flex;align-items:center;gap:6px;margin-top:auto}
.b2b-direct-products-heading{font-size:22px;margin:40px 0 20px;padding-top:24px;border-top:1px solid var(--line)}
.b2b-empty-state{text-align:center;padding:56px 24px;background:var(--surface);border:1px solid var(--line);border-radius:10px;margin:24px 0;box-sizing:border-box}
.b2b-empty-state h3{font-size:22px;margin-bottom:12px}
.b2b-empty-state p{color:var(--muted);max-width:560px;margin:0 auto 24px}
@media(max-width:900px){.b2b-subcategories-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:540px){
  .b2b-breadcrumbs{margin-bottom:18px;gap:6px}
  .b2b-subcategories-grid{grid-template-columns:1fr;gap:14px;min-width:0;width:100%}
  .b2b-subcategory-card{padding:16px;min-width:0}
  .b2b-subcategory-card__header{gap:8px}
  .b2b-subcategory-card__title{font-size:16px}
  .b2b-empty-state{padding:32px 16px}
}
