/* WordPress/WooCommerce integration layer for CFS Storefront v0.1.0. */
body.admin-bar header.site{top:32px}
@media(max-width:782px){body.admin-bar header.site{top:46px}}
.cfs-skip-link:focus{position:fixed!important;top:8px;left:8px;z-index:99999;width:auto;height:auto;clip:auto;padding:10px 14px;background:#fff;color:#1B1916}
.language-choice .is-active{font-weight:700;color:var(--ink)}
.language-choice a{color:var(--ink2)}
.mobnav[hidden]{display:none!important}.mobnav.open{display:block!important}
.nav .dd.is-open>.menu{display:grid}
.cfs-content-main,.cfs-guide-main{padding:56px 0 72px}.cfs-content-wrap,.cfs-guide-wrap{max-width:1040px}.cfs-entry-header{margin-bottom:28px}.cfs-entry-header .sub,.cfs-guide-header .sub{font-size:1.08rem;max-width:780px}.cfs-entry-content>*:last-child{margin-bottom:0}.cfs-page-hero-media,.cfs-guide-hero{margin:0 0 32px;overflow:hidden;border:1px solid var(--line)}.cfs-page-hero-media img,.cfs-guide-hero img{width:100%;height:auto}
.cfs-guide-header{max-width:920px;margin-bottom:28px}.guide-prose{max-width:820px}.guide-prose h2,.guide-prose h3{margin-top:1.6em}.guide-prose ul,.guide-prose ol,.prose ul,.prose ol{padding-left:1.25rem;margin:0 0 1em}.guide-prose li,.prose li{margin:.35em 0}
.cfs-industry-hero{background:#F7F6F2}.cfs-industry-hero-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:48px;align-items:center}.cfs-industry-hero figure{overflow:hidden;border-radius:var(--r)}.cfs-industry-hero figure img{width:100%;height:auto}@media(max-width:820px){.cfs-industry-hero-grid{grid-template-columns:1fr}}
.cfs-quote-only-card{margin-top:36px}.cfs-empty-state{min-height:50vh;display:grid;align-content:center;justify-items:start;max-width:760px}
.cfs-shop-main{padding:40px 0 72px}.cfs-shop-header{margin-bottom:26px}.cfs-shop-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:0 0 22px}.cfs-shop-toolbar .woocommerce-result-count,.cfs-shop-toolbar .woocommerce-ordering{margin:0}
ul.products{list-style:none;padding:0;margin:0}.woocommerce ul.products{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.woocommerce ul.products:before,.woocommerce ul.products:after{display:none}.woocommerce ul.products li.product{float:none!important;width:auto!important;margin:0!important}.woocommerce ul.products li.product .price{color:var(--ink);margin:0}.woocommerce-pagination{margin-top:34px}.woocommerce-pagination ul.page-numbers{border:0!important;display:flex!important;gap:6px}.woocommerce-pagination ul.page-numbers li{border:0!important}.woocommerce-pagination .page-numbers a,.woocommerce-pagination .page-numbers span{display:grid;place-items:center;min-width:40px;height:40px;border:1px solid var(--line);padding:0 10px}
@media(max-width:980px){.woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.woocommerce ul.products{grid-template-columns:1fr}}
.cfs-product-main{padding:32px 0 72px}.cfs-pdp-crumbs{margin-bottom:18px}.cfs-wc-gallery .woocommerce-product-gallery{width:100%!important;float:none!important;margin:0!important}.cfs-wc-gallery .woocommerce-product-gallery__wrapper{margin:0}.cfs-wc-gallery .woocommerce-product-gallery__image{border:1px solid var(--line);background:#F1EEE8;overflow:hidden}.cfs-wc-gallery .flex-control-thumbs{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-top:9px!important}.cfs-wc-gallery .flex-control-thumbs li{width:auto!important;float:none!important}.pdp-purchase-sticky .product_title{font-size:clamp(1.7rem,2.5vw,2.35rem);margin:4px 0 8px}.pdp-purchase-sticky{position:sticky;top:180px}.pdp-spec-section{margin-top:24px}.pdp-spec-list{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line)}.pdp-spec-list>div{padding:12px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;gap:3px}.pdp-spec-list>div:nth-child(even){border-right:0}.pdp-spec-list span{font:600 .58rem "JetBrains Mono";letter-spacing:.05em;text-transform:uppercase;color:var(--steel)}.pdp-spec-list b{font-size:.84rem}.pdp-buy-input-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.pdp-buy-input-grid label{display:grid;gap:5px;font-size:.75rem;font-weight:700}.pdp-buy-input-grid input,.pdp-buy-input-grid select{width:100%;min-height:46px;border:1px solid var(--line);background:#fff;padding:9px 11px;font:inherit}.cfs-carton-calculator{display:grid;gap:12px;margin:15px 0}.cfs-native-add-to-cart form.cart{margin:0!important;display:flex;gap:8px;align-items:stretch}.cfs-native-add-to-cart .quantity .qty{height:48px;width:76px;border:1px solid var(--line)}.cfs-native-add-to-cart .single_add_to_cart_button{min-height:48px;background:var(--amber)!important;border-radius:var(--r)!important;padding:12px 22px!important;font-weight:700!important}.cfs-native-add-to-cart .single_add_to_cart_button:hover{background:var(--amber2)!important}.cfs-pdp-short-description{margin-top:14px}.cfs-accessories-slot{margin-top:44px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:34px 0}.cfs-pdp-content{max-width:900px;padding:42px 0}.cfs-pdp-content h2,.cfs-pdp-content h3{margin-top:1.5em}.related.products{padding-top:30px}.related.products>h2{margin-bottom:22px}
@media(max-width:920px){.pdp-purchase-sticky{position:static;top:auto}.pdp-spec-list{grid-template-columns:1fr}.pdp-spec-list>div{border-right:0}.pdp-buy-input-grid{grid-template-columns:1fr}}
.woocommerce-cart .woocommerce,.woocommerce-checkout .woocommerce{max-width:1180px;margin:0 auto;padding:48px 20px 72px}.woocommerce-cart table.shop_table,.woocommerce-checkout .woocommerce-checkout-review-order-table{border:1px solid var(--line);border-radius:0}.woocommerce-cart table.shop_table th,.woocommerce-cart table.shop_table td,.woocommerce-checkout table.shop_table th,.woocommerce-checkout table.shop_table td{padding:14px}.woocommerce a.button,.woocommerce button.button,.woocommerce input.button{border-radius:var(--r);font-family:"Inter",sans-serif;font-weight:700}.woocommerce a.button.alt,.woocommerce button.button.alt,.woocommerce input.button.alt{background:var(--amber)}.woocommerce a.button.alt:hover,.woocommerce button.button.alt:hover,.woocommerce input.button.alt:hover{background:var(--amber2)}.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select{min-height:46px;border:1px solid var(--line);padding:9px 11px}
.cfs-footer-summary{font-size:.9rem;max-width:30em}.cfs-footer-contact{font-size:.9rem;margin:.2rem 0}.cfs-footer-location{font-size:.74rem;color:#7E7A72}

/* v0.1.4: server-rendered product grids used inside ordinary WordPress page content.
 * These grids are not descendants of .woocommerce, so Woo archive selectors do not apply.
 * Match the locked v26.78 .prodgrid behavior: 4 desktop, 2 tablet, 1 mobile. */
ul.cfs-seeded-product-grid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;align-items:stretch}
ul.cfs-seeded-product-grid>li.product{float:none!important;width:auto!important;margin:0!important;min-width:0}
@media(max-width:900px){ul.cfs-seeded-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){ul.cfs-seeded-product-grid{grid-template-columns:1fr}}

/* v0.1.5 — accepted v26.78 Shop parity on the native WooCommerce shop archive. */
.cfs-shop-parity{padding:0 0 72px}.cfs-shop-parity .tight:first-child{padding-top:48px}.cfs-shop-intro{max-width:46em}.cfs-shop-grid{margin:0!important}.cfs-shop-grid.products{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;align-items:stretch}.cfs-shop-grid.products:before,.cfs-shop-grid.products:after{display:none!important}.cfs-shop-grid.products>li{float:none!important;width:auto!important;margin:0!important;min-width:0}.cfs-shop-grid .shop-promo{list-style:none}.cfs-shop-faq{max-width:860px}.cfs-shop-grid .prod[hidden]{display:none!important}
@media(max-width:980px){.cfs-shop-grid.products{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.cfs-shop-grid.products{grid-template-columns:1fr}}

/* v0.1.6 — acceptance-page isolation/hardening.
 * Seeded v26.78 pages render raw trusted HTML (no wpautop/block wrappers). These
 * targeted declarations defend accepted component geometry against late plugin/core
 * article rules without globally styling arbitrary WordPress content. */
.cfs-acceptance-page .cfs-static-acceptance-content{display:contents}
.cfs-acceptance-page .pricing-ladder-grid article{
  display:grid!important;
  grid-template-columns:38px minmax(0,1fr)!important;
  gap:10px!important;
  align-items:start!important;
}
.cfs-acceptance-page .pricing-ladder-grid article>div{min-width:0!important;width:auto!important}
@media(max-width:920px){
  .cfs-acceptance-page .pricing-ladder-grid{grid-template-columns:1fr 1fr!important}
}
@media(max-width:620px){
  .cfs-acceptance-page .pricing-ladder-grid{grid-template-columns:1fr!important}
}


/* v0.1.7 — Woo product-card CTA alignment/hover hardening.
 * Keep homepage/shop CFS card actions centered and readable even when
 * WooCommerce/core/plugin anchor hover rules load later in the cascade. */
.prod .prod-buy,
.prod .prod-sample,
.prod .prod-project{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
}
.prod .prod-buy:hover,
.prod .prod-buy:focus,
.prod .prod-buy:focus-visible{
  color:#fff!important;
}
.prod .prod-buy.prod-quote:hover,
.prod .prod-buy.prod-quote:focus,
.prod .prod-buy.prod-quote:focus-visible{
  color:#fff!important;
}

/* v0.1.14 — consistent primary button contract only. No Shop layout changes. */
a.btn:not(.ghost):not(.dark),
button.btn:not(.ghost):not(.dark),
input.btn:not(.ghost):not(.dark),
.accessory-option-qty button.btn,
.cfs-accessory-action button.btn,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt,
.woocommerce .single_add_to_cart_button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  background:var(--amber)!important;
  border-color:var(--amber)!important;
  color:#fff!important;
}
a.btn:not(.ghost):not(.dark):hover,
a.btn:not(.ghost):not(.dark):focus,
a.btn:not(.ghost):not(.dark):focus-visible,
button.btn:not(.ghost):not(.dark):hover,
button.btn:not(.ghost):not(.dark):focus,
button.btn:not(.ghost):not(.dark):focus-visible,
input.btn:not(.ghost):not(.dark):hover,
input.btn:not(.ghost):not(.dark):focus,
.accessory-option-qty button.btn:hover,
.accessory-option-qty button.btn:focus,
.cfs-accessory-action button.btn:hover,
.cfs-accessory-action button.btn:focus,
.woocommerce a.button.alt:hover,
.woocommerce a.button.alt:focus,
.woocommerce button.button.alt:hover,
.woocommerce button.button.alt:focus,
.woocommerce input.button.alt:hover,
.woocommerce input.button.alt:focus,
.woocommerce .single_add_to_cart_button:hover,
.woocommerce .single_add_to_cart_button:focus{
  background:var(--amber2)!important;
  border-color:var(--amber2)!important;
  color:#fff!important;
}
