:root{--font-inter:"Inter";--font-inter-tight:"Inter Tight";--font-manrope:"Manrope";--font-dm-serif:"DM Serif Display"}
body{padding-top:var(--site-header-height,113px)!important}
.site-header,.site-header .announcement,.site-header .main-nav{opacity:1;transform:none}
.admin-bar .site-header{top:var(--wp-admin--admin-bar--height,32px)}
.nav-cart{position:relative}
.nav-cart::before{content:none!important}
@media(max-width:782px){.admin-bar .site-header{top:var(--wp-admin--admin-bar--height,46px)}}
@media(max-width:600px){#wpadminbar{position:fixed}}
.site-header .custom-logo{width:auto;max-width:190px;max-height:56px}
.nav-links{list-style:none;margin:0;padding:0}.nav-links li{margin:0}.nav-links a:hover,.nav-links .current-menu-item>a{color:var(--red)}
.nav-quote span,.nav-cart span{margin-left:10px}.skip-link:focus{position:fixed;z-index:9999;top:8px;left:8px;padding:12px 18px;background:#fff;color:#111;clip:auto;width:auto;height:auto}
.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.wp-page-shell{min-height:60vh}.content-shell{width:min(calc(100% - 40px),960px);margin:auto;padding:90px 0}.content-shell h1{font-size:clamp(2.5rem,5vw,4.5rem);line-height:1}.content-shell img{height:auto}.entry-content>*+*{margin-top:1.2em}
.wp-products{list-style:none;margin:0;padding:0}.wp-products .product{float:none!important;width:auto!important;margin:0!important}.woocommerce .wp-products::before,.woocommerce .wp-products::after{display:none}.woocommerce ul.products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.woocommerce ul.products::before,.woocommerce ul.products::after{display:none}.woocommerce ul.products li.product{float:none;width:auto;margin:0}.woocommerce .woocommerce-result-count,.woocommerce .woocommerce-ordering{margin-bottom:28px}.woocommerce .woocommerce-ordering select{padding:12px;border:1px solid var(--line);background:#fff}
.catalog-category-tabs{display:flex;gap:8px;margin-bottom:24px;padding-bottom:16px;overflow-x:auto}.catalog-category-tabs .btn{flex:0 0 auto}.catalog-category-tabs small{margin-left:8px}.woocommerce-product-search{display:flex;max-width:720px;margin-bottom:34px}.woocommerce-product-search input{flex:1;min-width:0;padding:14px;border:1px solid var(--line)}.woocommerce-product-search button{padding:0 24px;border:0;background:var(--red);color:#fff;font-weight:700}
.wc-product-card{display:flex;flex-direction:column;border:1px solid var(--line);background:#fff;padding:14px}.wc-product-card img{width:100%;height:230px;object-fit:cover}.wc-product-card h2{margin:14px 0 8px;font-size:1.08rem;line-height:1.25}.wc-product-card .price{margin-top:auto;color:var(--ink)!important;font-weight:700}.wc-product-card .button{margin-top:12px!important;border-radius:0!important;background:var(--red)!important;color:#fff!important;text-align:center}
.woocommerce div.product{padding:80px 0}.woocommerce div.product .product_title{font-size:clamp(2.3rem,4vw,4rem);line-height:1.05}.woocommerce div.product p.price{color:var(--red);font-size:1.5rem}.woocommerce button.button.alt,.woocommerce a.button.alt,.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{background:var(--red);border-radius:0}.woocommerce button.button.alt:hover,.woocommerce a.button.alt:hover{background:#cf2026}.woocommerce-message,.woocommerce-info{border-top-color:var(--red)}.woocommerce-message::before,.woocommerce-info::before{color:var(--red)}
/* WooCommerce 11 can render catalog blocks in previews and editor-created templates. */
.woocommerce-page main,.woocommerce-page .wp-site-blocks{min-width:0}
.woocommerce-page .wp-site-blocks>.wp-block-group,.woocommerce-page .wp-site-blocks>main{width:min(calc(100% - 40px),1440px);margin-inline:auto}
.woocommerce-page ul.products,.woocommerce-page .wc-block-product-template,.woocommerce-page ul.wc-block-product-template{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;align-items:stretch!important;justify-items:stretch!important;gap:24px!important;width:100%!important;max-width:1440px!important;margin:0 auto!important;padding:0!important;list-style:none!important}
.woocommerce-page ul.products>li.product,.woocommerce-page .wc-block-product-template>.wc-block-product{float:none!important;display:flex!important;flex-direction:column!important;align-items:stretch!important;width:100%!important;min-width:0!important;max-width:none!important;height:auto!important;min-height:0!important;margin:0!important;padding:16px!important;border:1px solid var(--line)!important;background:#fff!important}
.woocommerce-page ul.products>li.product img,.woocommerce-page .wc-block-components-product-image img,.woocommerce-page .wc-block-grid__product-image img{display:block!important;width:100%!important;height:260px!important;margin:0 0 18px!important;background:#f5f5f3!important;object-fit:contain!important}
.woocommerce-page ul.products>li.product .woocommerce-loop-product__title,.woocommerce-page .wc-block-components-product-name,.woocommerce-page .wc-block-grid__product-title{margin:8px 0 12px!important;padding:0!important;color:var(--ink)!important;font-family:var(--font-inter-tight),sans-serif!important;font-size:1.18rem!important;font-weight:600!important;line-height:1.25!important;letter-spacing:-.025em!important}
.woocommerce-page .wc-block-product-category,.woocommerce-page .wc-block-components-product-metadata{color:var(--red)!important;font-size:.72rem!important}
.woocommerce-page ul.products>li.product .price,.woocommerce-page .wc-block-components-product-price,.woocommerce-page .wc-block-grid__product-price{margin-top:auto!important;color:var(--ink)!important;font-size:1.05rem!important;font-weight:700!important}
.woocommerce-page ul.products>li.product .button,.woocommerce-page .wc-block-components-product-button .wp-block-button__link,.woocommerce-page .wc-block-grid__product-add-to-cart a,.woocommerce-page .wc-block-grid__product-add-to-cart button{display:inline-flex!important;align-items:center!important;justify-content:center!important;align-self:flex-start!important;width:auto!important;min-width:125px!important;min-height:46px!important;margin:16px 0 0!important;padding:10px 18px!important;border:0!important;border-radius:0!important;background:var(--red)!important;color:#fff!important;font-size:.82rem!important;font-weight:700!important;line-height:1.2!important;white-space:normal!important}
.woocommerce-page .woocommerce-breadcrumb{margin-bottom:28px!important;color:#70747a!important;font-size:.78rem!important}
.blog-pagination{margin-top:40px}.blog-pagination .nav-links{display:flex;gap:8px}.blog-pagination a,.blog-pagination span{display:grid;place-items:center;min-width:42px;height:42px;border:1px solid var(--line)}.blog-pagination .current{background:var(--ink);color:#fff}
.legal-copy{max-width:900px}.legal-copy h2{margin-top:2em;font-size:1.8rem}.legal-copy p,.legal-copy li{color:#555;line-height:1.75}
.form-message{padding:14px;margin-bottom:20px;background:#eef9f0;color:#176b2e}.form-message.error{background:#fff0f0;color:#a31f24}.consent{display:flex;gap:12px;align-items:flex-start}.consent input{margin-top:5px}
@media(max-width:900px){body{padding-top:64px!important}.site-header .announcement{display:none}.site-header .container{padding-inline:20px}.nav-inner{gap:12px}.nav-actions{margin-left:auto}.nav-links{display:none}.nav-links.open{display:flex}.nav-cart{font-size:0;padding-inline:12px}.nav-cart::before{content:"🛒";font-size:1rem}.nav-cart .cart-count{font-size:.72rem}.wp-products.product-grid,.woocommerce ul.products,.woocommerce-page .wc-block-product-template,.woocommerce-page ul.wc-block-product-template{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:600px){.site-header .container{padding-inline:14px}.logo{font-size:1.35rem}.logo small{display:none}.nav-quote{display:none!important}.nav-cart{min-height:42px}.wp-products.product-grid,.woocommerce ul.products,.woocommerce-page .wc-block-product-template,.woocommerce-page ul.wc-block-product-template{grid-template-columns:1fr!important}.wc-product-card img,.woocommerce-page ul.products>li.product img,.woocommerce-page .wc-block-components-product-image img{height:220px!important}.content-shell{width:min(calc(100% - 28px),960px);padding:60px 0}.footer-grid{gap:28px}}

/* September release: prominent contact paths and compact service catalogue. */
:root{--site-header-height:126px}
body{padding-top:var(--site-header-height)!important}
.site-header .announcement{height:42px;font-size:.86rem;font-weight:600}
.site-header .announcement a{display:inline-flex;align-items:center;min-height:36px;font-size:1rem;font-weight:700}
.site-header .main-nav{height:84px}
.site-header .logo{min-width:245px;font-size:2.15rem;line-height:1}
.site-header .logo small{margin-top:6px;font-size:.48rem;line-height:1.35;letter-spacing:.01em}
.site-header .custom-logo{max-width:245px;max-height:66px}
.catalog-category-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px;padding-bottom:16px;overflow:visible}
.catalog-category-tabs .btn{flex:0 1 auto;white-space:normal}
.catalog-search{display:flex;max-width:820px;margin:0 0 38px}
.catalog-search input[type=search]{flex:1;min-width:0;padding:14px 16px;border:1px solid var(--line);background:#fff}
.catalog-groups{display:grid;gap:34px}
.catalog-group{scroll-margin-top:calc(var(--site-header-height) + 20px);background:#fff;border:1px solid var(--line)}
.catalog-group>header{display:flex;align-items:baseline;justify-content:space-between;gap:20px;padding:18px 22px;background:var(--ink);color:#fff}
.catalog-group>header .eyebrow{color:#d8b88e}
.catalog-group>header h2{margin:0;font-size:1.35rem}
.woocommerce ul.products.catalog-product-list,.woocommerce-page ul.products.catalog-product-list{display:block!important;width:100%!important;max-width:none!important;margin:0!important;padding:0!important;list-style:none!important}
.woocommerce ul.products.catalog-product-list li.product.wc-product-row,.woocommerce-page ul.products.catalog-product-list li.product.wc-product-row{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;gap:28px!important;width:100%!important;max-width:none!important;min-height:112px!important;margin:0!important;padding:18px 22px!important;border:0!important;border-bottom:1px solid var(--line)!important;background:#fff!important}
.woocommerce ul.products.catalog-product-list li.product.wc-product-row:last-child{border-bottom:0!important}
.wc-product-row .product-row-main{min-width:0}
.wc-product-row .kicker{display:block;margin:0 0 5px;color:var(--red);font-size:.68rem;font-weight:700}
.woocommerce .wc-product-row h2{margin:0 0 6px!important;padding:0!important;font-size:1rem!important;line-height:1.25!important}
.wc-product-row p{margin:0;color:var(--muted);font-size:.76rem}
.wc-product-row .product-row-actions{display:grid;grid-template-columns:auto auto;align-items:center;justify-items:end;gap:6px 12px;min-width:255px}
.wc-product-row .price{margin:0!important;color:var(--ink)!important;font-size:.92rem!important;font-weight:700}
.woocommerce .wc-product-row .button{min-width:116px!important;min-height:40px!important;margin:0!important;padding:9px 14px!important;border-radius:0!important;background:var(--red)!important;color:#fff!important;text-align:center}
.wc-product-row .product-detail-link{grid-column:1/-1;color:#666;font-size:.7rem;text-decoration:underline}
.scan-deliverables{margin:0;padding:16px;border:1px solid var(--line)}
.scan-deliverables legend{padding:0 6px;font-size:.76rem;font-weight:700}
.scan-deliverables label{display:inline-flex;align-items:center;gap:7px;margin:7px 16px 7px 0;font-weight:500}
.scan-deliverables input{width:18px;height:18px}

@media(max-width:900px){
  :root{--site-header-height:110px}
  body{padding-top:var(--site-header-height)!important}
  .site-header .announcement{display:flex;height:40px}
  .site-header .announcement .container{justify-content:center}
  .site-header .announcement .container>span:first-child{display:none}
  .site-header .announcement .help-phone{display:inline-flex}
  .site-header .announcement a{font-size:.92rem}
  .site-header .main-nav{height:70px}
  .site-header .logo{min-width:0;font-size:1.7rem}
  .site-header .logo small{display:block;max-width:175px;font-size:.41rem}
  .site-header .custom-logo{max-width:190px;max-height:54px}
  .nav-links{top:70px!important}
}
@media(max-width:700px){
  .woocommerce ul.products.catalog-product-list li.product.wc-product-row,.woocommerce-page ul.products.catalog-product-list li.product.wc-product-row{grid-template-columns:1fr!important;gap:14px!important}
  .wc-product-row .product-row-actions{grid-template-columns:1fr 1fr;justify-items:stretch;width:100%;min-width:0}
  .wc-product-row .product-row-actions>*{text-align:left}
  .catalog-search{flex-direction:column;gap:10px}
}
@media(max-width:430px){.site-header .logo small{display:none}.site-header .logo{font-size:1.55rem}}

/* Rev 3: configure and buy inspections without leaving the catalogue. */
.catalogue-pricing-note{margin:0 0 24px;padding:24px 28px;border-left:4px solid var(--red);background:#fff}
.catalogue-pricing-note h3{margin:7px 0 8px;font-size:1.35rem}
.catalogue-pricing-note p{max-width:850px;margin:0;color:var(--muted)}
.catalog-search{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;max-width:none;margin-bottom:28px}
.catalog-search .btn{min-width:96px}
.catalog-search-status{grid-column:1/-1;min-height:1.2em;color:var(--muted);font-size:.76rem}
.catalog-layout{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:26px;align-items:start}
.catalog-groups{min-width:0}
.catalog-category-rail{position:sticky;top:calc(var(--site-header-height) + 20px);grid-column:2;grid-row:1;padding:20px;border:1px solid var(--line);background:#fff}
.catalog-category-rail>strong{display:block;margin-bottom:12px;font-size:.85rem}
.catalog-category-rail .catalog-category-tabs{display:grid;gap:8px;margin:0;padding:0}
.catalog-category-rail .btn{justify-content:space-between;width:100%;min-height:42px;padding:8px 12px;text-align:left}
.catalog-group{overflow:hidden}
/* Match the WooCommerce layout specificity so hidden lists and search rows stay hidden. */
.catalog-group[hidden],
.woocommerce ul.products.catalog-product-list[hidden],
.woocommerce-page ul.products.catalog-product-list[hidden],
.woocommerce ul.products.catalog-product-list li.product.wc-product-row[hidden],
.woocommerce-page ul.products.catalog-product-list li.product.wc-product-row[hidden]{display:none!important}
.catalog-group>header{display:block;padding:0}
.catalog-group-toggle{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px;width:100%;min-height:72px;padding:18px 22px;border:0;background:var(--ink);color:#fff;text-align:left}
.catalog-group-toggle span{font-family:var(--font-inter-tight),sans-serif;font-size:1.2rem;font-weight:650}
.catalog-group-toggle small{display:flex;align-items:center;gap:12px;color:#d8b88e;font-size:.75rem}
.catalog-group-toggle small:after{content:"+";display:grid;place-items:center;width:28px;height:28px;border:1px solid #ffffff55;color:#fff;font-size:1.1rem}
.catalog-group-toggle[aria-expanded=true] small:after{content:"−"}
.catalog-group-common .catalog-group-toggle{background:#242830}
.inspection-inline-details{margin-top:12px;color:#40454c;font-size:.78rem}
.inspection-inline-details summary{display:inline-flex;align-items:center;min-height:38px;color:var(--ink);font-weight:700;text-decoration:underline;cursor:pointer}
.inspection-inline-details-body{max-height:280px;margin:8px 0 10px;padding:14px;overflow:auto;border-left:3px solid var(--gold);background:var(--soft)}
.inspection-inline-details-body p:first-child{margin-top:0}
.inspection-inline-details>a{color:var(--red);font-weight:700;text-decoration:underline}
.wc-product-row .product-row-actions{display:block;justify-items:stretch;width:min(100%,460px);min-width:400px}
.inspection-configurator{display:grid;gap:12px;width:100%}
.inspection-configurator-fields{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(120px,.55fr);gap:10px}
.inspection-configurator label{display:grid;gap:5px;color:#4f545b;font-size:.7rem;font-weight:700}
.inspection-configurator select,.inspection-configurator input{width:100%;min-width:0;min-height:42px;padding:8px 10px;border:1px solid #cfd1d4;border-radius:0;background:#fff;color:var(--ink)}
.inspection-configurator-actions{display:grid;grid-template-columns:minmax(110px,1fr) auto;align-items:end;gap:4px 12px}
.inspection-total-label{font-size:.68rem;color:var(--muted)}
.inspection-total{grid-column:1;display:block;font-size:1.12rem}
.woocommerce .inspection-configurator .inspection-add-to-cart{grid-column:2;grid-row:1/3;align-self:stretch!important;min-width:128px!important}
.inspection-form-status{min-height:1.3em;margin:0!important;font-size:.72rem!important}
.inspection-form-status.is-loading{color:#555}
.inspection-form-status.is-success{color:#167339}
.inspection-form-status.is-error{color:#b4232b}
.inspection-quote-only{display:grid;justify-items:start;gap:8px}
.inspection-quote-only strong{font-size:.78rem;color:var(--muted)}
.woocommerce div.product .inspection-configurator{max-width:640px;margin:28px 0}
.eztr1-fixed-quantity{display:inline-grid;place-items:center;min-width:44px;min-height:38px;border:1px solid var(--line);background:var(--soft)}

@media(max-width:960px){
  .catalog-layout{grid-template-columns:1fr}
  .catalog-category-rail{position:static;grid-column:1;grid-row:1}
  .catalog-category-rail .catalog-category-tabs{display:flex;overflow-x:auto}
  .catalog-category-rail .btn{width:auto;flex:0 0 auto}
  .catalog-groups{grid-row:2}
  .woocommerce ul.products.catalog-product-list li.product.wc-product-row,.woocommerce-page ul.products.catalog-product-list li.product.wc-product-row{grid-template-columns:minmax(0,1fr)!important;align-items:stretch!important}
  .wc-product-row .product-row-actions{width:100%;min-width:0}
}
@media(max-width:600px){
  .catalogue-pricing-note{padding:20px}
  .catalog-search{grid-template-columns:1fr auto}
  .catalog-group-toggle{grid-template-columns:1fr;gap:6px;padding:16px}
  .catalog-group-toggle small{justify-content:space-between}
  .woocommerce ul.products.catalog-product-list li.product.wc-product-row,.woocommerce-page ul.products.catalog-product-list li.product.wc-product-row{padding:16px!important}
  .inspection-configurator-fields{grid-template-columns:1fr}
  .inspection-configurator-actions{grid-template-columns:1fr auto}
  .woocommerce .inspection-configurator .inspection-add-to-cart{min-width:116px!important}
}
@media(max-width:390px){
  .catalog-search{grid-template-columns:1fr}
  .catalog-search .btn{width:100%}
  .inspection-configurator-actions{grid-template-columns:1fr}
  .woocommerce .inspection-configurator .inspection-add-to-cart{grid-column:1;grid-row:auto;min-height:48px!important}
}

/* Homepage cards render outside the WooCommerce body class, so give their
   purchase and detail links the same deliberate layout and touch targets. */
.wp-products .wc-product-row .product-row-actions{
  display:grid;
  grid-template-columns:auto minmax(150px,1fr);
  align-items:center;
  gap:10px 12px;
  width:100%;
  min-width:0;
  margin-top:auto;
}
.wp-products .wc-product-row .price{display:block;white-space:nowrap}
.wp-products .wc-product-row .button{
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  min-height:44px!important;
  margin:0!important;
  padding:10px 14px!important;
  border-radius:0!important;
  background:var(--red)!important;
  color:#fff!important;
  font-weight:700;
  line-height:1.2;
  text-align:center;
}
.wp-products .wc-product-row .product-detail-link{
  grid-column:1/-1;
  display:inline-flex;
  align-items:center;
  min-height:44px;
  color:#555;
  font-weight:700;
  line-height:1.3;
}
@media(max-width:600px){
  .wp-products .wc-product-row .product-row-actions{grid-template-columns:1fr}
  .wp-products .wc-product-row .button,.wp-products .wc-product-row .product-detail-link{grid-column:1;width:100%}
  .wp-products .wc-product-row .product-detail-link{justify-content:center}
}

/* Keep both contact links visible in the announcement bar on small screens. */
.site-header .help-phone .help-label{font-size:inherit;transform:none}
.site-header .help-email{text-decoration:underline;margin-right:12px}
/* Keep the full desktop navigation inside intermediate tablet widths. */
@media(min-width:901px) and (max-width:1200px){
  .site-header .container{padding-inline:20px}
  .site-header .logo{min-width:200px;font-size:1.8rem}
  .site-header .nav-inner{gap:16px}
  .site-header .nav-links{gap:18px}
  .site-header .nav-actions{margin-left:0}
  .site-header .nav-cart{min-width:0}
  .site-header .nav-quote{min-width:0}
}
@media(max-width:900px){
  .site-header .help-phone{gap:8px}
  .site-header .help-phone .help-label{display:none}
  .site-header .help-email{margin-right:0}
  .site-header .announcement a{font-size:clamp(.7rem,3vw,.92rem)}
}
/* Readable controls also prevent focus zoom in mobile Safari. */
@media(max-width:700px){
  .wp-page-shell input:not([type=checkbox]):not([type=radio]),
  .wp-page-shell select,.wp-page-shell textarea,
  .contact-form .field input,.contact-form .field select,.contact-form .field textarea,
  .catalog-search input[type=search],
  .inspection-configurator select,.inspection-configurator input{font-size:16px;min-height:44px}
  .inspection-inline-details summary{min-height:44px}
  .site-header .nav-links a{display:flex;align-items:center;min-height:44px}
}
