/* Pin Tiler commerce surfaces — intentionally scoped away from the homepage. */
body.woocommerce,
body.woocommerce-page { background:#f6f7f9!important; }
body.woocommerce .wp-site-blocks > .wp-block-template-part:first-child,
body.woocommerce-page .wp-site-blocks > .wp-block-template-part:first-child { padding-top:12px; }
.pintiler-commerce-main { margin:0!important;padding:46px 0 92px;background:#f6f7f9;color:var(--ink); }
.pintiler-commerce-page { max-width:1200px; }
.woocommerce .woocommerce-breadcrumb { margin:0 0 30px;color:#68727c;font-size:16px; }
.woocommerce .woocommerce-breadcrumb a { color:#3f4952; }
.woocommerce .woocommerce-breadcrumb a:hover { color:#7b6500; }
.pintiler-commerce-kicker { margin:0 0 8px;color:#6b747d;font-size:16px;font-weight:800;letter-spacing:.14em; }
.pintiler-catalog-header { display:flex;justify-content:space-between;align-items:flex-end;gap:32px;margin-bottom:34px; }
.pintiler-catalog-header h1,
.pintiler-single-main .product_title,
.pintiler-cart-main > h1 { margin:0;color:var(--ink);font-size:clamp(36px,4vw,52px);line-height:1.02;letter-spacing:-2.2px;font-weight:900; }
.pintiler-catalog-header .term-description { max-width:680px;margin-top:14px;color:var(--muted);font-size:16px; }
.pintiler-catalog-header .term-description p { margin:0; }
.pintiler-catalog-toolbar { min-height:52px;display:flex;align-items:center;justify-content:flex-end;gap:20px;margin-bottom:22px;padding-bottom:18px;border-bottom:1px solid #dce1e5; }
.pintiler-catalog-toolbar .woocommerce-notices-wrapper { display:none; }
.pintiler-catalog-toolbar .woocommerce-result-count { margin:0 auto 0 0;color:#616b74;font-size:16px; }
.pintiler-catalog-toolbar .woocommerce-ordering { margin:0; }
.pintiler-catalog-toolbar select { min-width:220px;height:46px;padding:0 38px 0 14px;border:1px solid #cfd5da;border-radius:7px;background:#fff;color:var(--ink);font-size:16px; }
.pintiler-filter-toggle { display:none;min-height:46px;padding:0 18px;border:1px solid #aeb6bd;border-radius:7px;background:#fff;color:var(--ink);font-size:16px;font-weight:800; }
.pintiler-catalog-layout { display:grid;grid-template-columns:220px minmax(0,1fr);gap:28px;align-items:start; }
.pintiler-filter-panel { position:sticky;top:98px;padding:22px;border:1px solid #dce1e5;border-radius:10px;background:#fff; }
.pintiler-filter-panel-head { display:flex;align-items:center;justify-content:space-between;margin-bottom:8px; }
.pintiler-filter-panel-head strong { font-size:22px; }
.pintiler-filter-close { display:none;width:44px;height:44px;border:0;background:transparent;font-size:32px;line-height:1; }
.pintiler-filter-section { padding:20px 0;border-bottom:1px solid #e5e8eb; }
.pintiler-filter-section h3 { margin:0 0 13px;font-size:18px; }
.pintiler-filter-section ul { margin:0;padding:0;list-style:none; }
.pintiler-filter-section li+li { margin-top:8px; }
.pintiler-filter-section a { display:flex;justify-content:space-between;gap:10px;color:#3f4952;font-size:16px; }
.pintiler-filter-section a:hover { color:#7b6500; }
.pintiler-filter-section a span { color:#79838c; }
.pintiler-price-fields { display:grid;grid-template-columns:1fr 1fr;gap:8px; }
.pintiler-price-fields label span { display:block;margin-bottom:5px;color:#64707a;font-size:16px; }
.pintiler-price-fields input { width:100%;height:44px;padding:0 10px;border:1px solid #d3d8dc;border-radius:6px;font-size:16px; }
.pintiler-stock-filter { min-height:44px;display:flex;align-items:center;gap:10px;font-size:16px;cursor:pointer; }
.pintiler-stock-filter input { width:20px;height:20px;accent-color:#9b7900; }
.pintiler-filter-submit { width:100%;min-height:48px!important;margin-top:18px!important;border:0!important;border-radius:7px!important;background:var(--brand-primary)!important;color:#111!important;font-size:18px!important;font-weight:850!important; }
.pintiler-filter-reset { min-height:44px;display:flex;align-items:center;justify-content:center;margin-top:7px;font-size:16px;font-weight:700;text-decoration:underline; }
.pintiler-filter-overlay { display:none; }

.woocommerce .pintiler-products-area ul.products,
.woocommerce .related ul.products { display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin:0!important;padding:0!important; }
.woocommerce ul.products::before,
.woocommerce ul.products::after { display:none!important; }
.woocommerce ul.products li.product.pintiler-catalog-card { width:auto!important;float:none!important;display:flex;min-width:0;flex-direction:column;margin:0!important;border:1px solid #dfe3e6;border-radius:10px;background:#fff;overflow:hidden;box-shadow:none;transition:transform .2s ease,border-color .2s ease; }
.woocommerce ul.products li.product.pintiler-catalog-card:hover { transform:translateY(-2px);border-color:#bbc3c9; }
.pintiler-card-image { position:relative;display:block;aspect-ratio:1/1;background:#fff;overflow:hidden; }
.woocommerce ul.products li.product.pintiler-catalog-card .pintiler-card-image img { width:100%;height:100%;margin:0!important;object-fit:contain;padding:16px;transition:transform .22s ease; }
.woocommerce ul.products li.product.pintiler-catalog-card:hover .pintiler-card-image img { transform:scale(1.02); }
.pintiler-demo-badge { position:absolute;top:12px;left:12px;z-index:2;padding:5px 8px;border-radius:4px;background:#111820;color:#fff;font-size:16px;font-weight:800;letter-spacing:.04em; }
.pintiler-card-body { display:flex;flex:1;flex-direction:column;padding:18px; }
.woocommerce ul.products li.product.pintiler-catalog-card .woocommerce-loop-product__title { min-height:48px;margin:0 0 8px!important;padding:0!important;font-size:18px!important;line-height:1.3;font-weight:850; }
.pintiler-card-description { min-height:48px;margin:0 0 13px;color:var(--muted);font-size:16px;line-height:1.45; }
.pintiler-card-price { margin-top:auto;color:var(--ink);font-size:20px;font-weight:900; }
.pintiler-card-price del { color:#828b92;font-size:16px;font-weight:500; }
.pintiler-card-price ins { text-decoration:none; }
.pintiler-card-unit { margin:3px 0 7px;color:#67717a;font-size:16px; }
.pintiler-card-stock { margin:0 0 14px;font-size:16px;font-weight:700; }
.pintiler-card-stock.is-in-stock { color:#137b3e; }
.pintiler-card-stock.is-out-of-stock { color:#a33a33; }
.woocommerce ul.products li.product.pintiler-catalog-card .button { min-height:48px;display:flex;align-items:center;justify-content:center;margin:0!important;padding:0 14px!important;border:0;border-radius:7px;background:var(--brand-primary);color:#111;font-size:18px;font-weight:850;line-height:1.2;text-align:center; }
.woocommerce ul.products li.product.pintiler-catalog-card .button:hover { background:var(--brand-primary-strong); }
.woocommerce ul.products li.product.pintiler-catalog-card .added_to_cart { min-height:44px;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:750; }
.woocommerce nav.woocommerce-pagination { margin-top:34px; }
.woocommerce nav.woocommerce-pagination ul { display:flex;justify-content:center;gap:8px;border:0; }
.woocommerce nav.woocommerce-pagination ul li { border:0; }
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span { min-width:44px;height:44px;display:grid;place-items:center;border:1px solid #d3d8dc;border-radius:6px;background:#fff;color:#111;font-size:16px; }
.woocommerce nav.woocommerce-pagination ul li span.current { border-color:#111;background:#111;color:#fff; }

/* Single product. */
.pintiler-single-main > .woocommerce { width:min(1200px,calc(100% - 48px));margin:0 auto; }
.pintiler-single-main div.product { display:grid;grid-template-columns:minmax(0,1.05fr) minmax(380px,.95fr);gap:58px; }
.pintiler-single-main .woocommerce-breadcrumb { grid-column:1/-1; }
.pintiler-single-main div.product .woocommerce-product-gallery,
.pintiler-single-main div.product .summary { width:auto!important;float:none!important;margin:0!important; }
.pintiler-single-main .woocommerce-product-gallery { align-self:start; }
.pintiler-single-main .woocommerce-product-gallery__wrapper { border:1px solid #dce1e5;border-radius:12px;background:#fff;overflow:hidden; }
.pintiler-single-main .woocommerce-product-gallery__image img { width:100%!important;aspect-ratio:1/1;object-fit:contain;padding:24px; }
.pintiler-single-main .flex-control-thumbs { display:grid!important;grid-template-columns:repeat(5,1fr);gap:10px;margin-top:12px!important; }
.pintiler-single-main .flex-control-thumbs li { width:auto!important;float:none!important;border:1px solid #dce1e5;border-radius:7px;background:#fff;overflow:hidden; }
.pintiler-single-main .flex-control-thumbs img { aspect-ratio:1;object-fit:cover; }
.pintiler-single-main .summary { padding-top:8px; }
.pintiler-single-main .product_title { margin-bottom:14px; }
.pintiler-single-main .summary .product_meta { margin:0 0 20px;color:#69737c;font-size:16px; }
.pintiler-single-main .summary .product_meta a { color:#3c474f;text-decoration:underline; }
.pintiler-single-main .summary .price { margin:0 0 4px!important;color:var(--ink)!important;font-size:30px!important;font-weight:900; }
.pintiler-product-unit { margin:0 0 18px;color:#65707a;font-size:16px; }
.pintiler-single-main .woocommerce-product-details__short-description { color:#4f5a63;font-size:16px;line-height:1.65; }
.pintiler-single-main .stock { margin:20px 0 12px;color:#137b3e!important;font-size:16px!important;font-weight:800; }
.pintiler-single-main form.cart { display:flex;flex-wrap:wrap;gap:10px;margin:0 0 22px!important; }
.pintiler-single-main form.cart .variations { width:100%;margin:0 0 10px; }
.pintiler-single-main form.cart .variations th,
.pintiler-single-main form.cart .variations td { padding:7px 0;vertical-align:middle; }
.pintiler-single-main form.cart .variations label { font-size:16px; }
.pintiler-single-main form.cart select { width:100%;min-height:48px;padding:0 12px;border:1px solid #ccd3d8;border-radius:6px;background:#fff;font-size:16px; }
.pintiler-single-main .quantity .qty { width:76px;min-height:52px;border:1px solid #cbd2d7;border-radius:7px;background:#fff;font-size:18px; }
.pintiler-single-main .single_add_to_cart_button { min-height:52px!important;padding:0 26px!important;border-radius:7px!important;background:var(--brand-primary)!important;color:#111!important;font-size:18px!important;font-weight:900!important; }
.pintiler-service-notes { display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:24px 0;padding-top:22px;border-top:1px solid #dce1e5; }
.pintiler-service-notes div { padding:13px;border:1px solid #dce1e5;border-radius:7px;background:#fff; }
.pintiler-service-notes strong,
.pintiler-service-notes span { display:block;font-size:16px; }
.pintiler-service-notes span { margin-top:3px;color:#68727b;line-height:1.35; }
.pintiler-single-main .woocommerce-tabs,
.pintiler-single-main .related { grid-column:1/-1;clear:both;margin-top:52px; }
.pintiler-single-main .woocommerce-tabs ul.tabs { display:flex;gap:6px;margin:0!important;padding:0!important;border-bottom:1px solid #cfd5da; }
.pintiler-single-main .woocommerce-tabs ul.tabs::before { display:none!important; }
.pintiler-single-main .woocommerce-tabs ul.tabs li { margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important; }
.pintiler-single-main .woocommerce-tabs ul.tabs li::before,
.pintiler-single-main .woocommerce-tabs ul.tabs li::after { display:none; }
.pintiler-single-main .woocommerce-tabs ul.tabs li a { min-height:48px;display:flex!important;align-items:center;padding:0 18px!important;font-size:16px; }
.pintiler-single-main .woocommerce-tabs ul.tabs li.active a { box-shadow:inset 0 -3px var(--brand-primary);color:#111!important; }
.pintiler-single-main .woocommerce-Tabs-panel { padding:26px 0;font-size:16px;line-height:1.7; }
.pintiler-single-main .related > h2 { margin:0 0 24px;font-size:31px; }

/* Cart block. */
.pintiler-cart-main { padding-inline:24px; }
.pintiler-cart-main > h1 { width:min(1200px,100%);margin:0 auto 34px; }
.pintiler-cart-main .wp-block-woocommerce-cart { width:min(1200px,100%);margin:0 auto; }
.wc-block-cart { font-size:16px; }
.wc-block-cart__main,
.wc-block-cart__sidebar { border:1px solid #dce1e5;border-radius:10px;background:#fff;padding:22px!important; }
.wc-block-cart-items { border-collapse:separate!important;border-spacing:0; }
.wc-block-cart-items__header span,
.wc-block-components-product-name,
.wc-block-components-product-price,
.wc-block-components-totals-item__label,
.wc-block-components-totals-item__value { font-size:16px!important; }
.wc-block-components-product-name { font-weight:850!important; }
.wc-block-components-quantity-selector { min-height:44px;border-radius:6px!important; }
.wc-block-components-quantity-selector button { min-width:44px!important;min-height:44px!important; }
.wc-block-cart-item__remove-link { min-height:44px;font-size:16px!important;text-decoration:underline!important; }
.wc-block-cart__submit-button { min-height:54px!important;border-radius:7px!important;background:var(--brand-primary)!important;color:#111!important;font-size:18px!important;font-weight:900!important; }

/* Native WooCommerce Mini-Cart drawer. The trigger stays visually hidden; the approved header button controls it. */
.pintiler-native-mini-cart { position:absolute!important;top:0;right:0;width:1px;height:1px;z-index:999; }
.pintiler-native-mini-cart .wc-block-mini-cart__button { position:absolute!important;width:1px!important;height:1px!important;min-width:1px!important;min-height:1px!important;margin:0!important;padding:0!important;opacity:0!important;pointer-events:none; }
.wc-block-components-drawer__screen-overlay { background:rgba(5,10,14,.58)!important;backdrop-filter:blur(2px); }
.wc-block-mini-cart__drawer { width:min(460px,calc(100vw - 24px))!important;max-width:none!important;background:#fff!important;color:var(--ink); }
.wc-block-mini-cart__drawer .wc-block-mini-cart__title { margin:0;padding:24px 68px 20px 24px;border-bottom:1px solid #e0e4e7;font-size:27px!important;font-weight:900; }
.wc-block-mini-cart__drawer .wc-block-components-drawer__close { width:44px!important;height:44px!important;top:14px!important;right:14px!important; }
.wc-block-mini-cart__items { padding:0 24px!important;overflow-y:auto; }
.wc-block-mini-cart__items .wc-block-cart-items__row { padding:18px 0!important;border-bottom:1px solid #e3e6e9; }
.wc-block-mini-cart__items img { border-radius:6px; }
.wc-block-mini-cart__footer { padding:20px 24px 24px!important;border-top:1px solid #dfe3e6;background:#f7f8f9; }
.wc-block-mini-cart__footer .wc-block-components-totals-item__label,
.wc-block-mini-cart__footer .wc-block-components-totals-item__value { font-size:18px!important;font-weight:900!important; }
.wc-block-mini-cart__footer-actions { display:grid!important;grid-template-columns:1fr 1.25fr;gap:10px; }
.wc-block-mini-cart__footer-actions .wc-block-components-button { min-height:52px!important;border-radius:7px!important;font-size:16px!important;font-weight:850!important; }
.wc-block-mini-cart__footer-actions .wc-block-mini-cart__button:last-child,
.wc-block-mini-cart__footer-actions .wc-block-mini-cart__footer-checkout { background:var(--brand-primary)!important;color:#111!important;font-size:18px!important; }

.pintiler-commerce-main :where(a,button,input,select,summary):focus-visible,
.wc-block-mini-cart__drawer :where(a,button,input,select):focus-visible { outline:3px solid #9b7900!important;outline-offset:3px; }

@media (max-width:1050px) {
  .pintiler-catalog-layout { grid-template-columns:1fr; }
  .pintiler-filter-toggle { display:inline-flex;align-items:center;justify-content:center; }
  .pintiler-filter-panel { position:fixed;top:0;left:0;bottom:0;width:min(390px,calc(100vw - 34px));z-index:1002;overflow-y:auto;border:0;border-radius:0 12px 12px 0;transform:translateX(-105%);transition:transform .22s ease; }
  .pintiler-filter-panel.is-open { transform:none;box-shadow:20px 0 45px rgba(0,0,0,.2); }
  .pintiler-filter-panel-head { margin-bottom:4px; }
  .pintiler-filter-close { display:grid;place-items:center; }
  .pintiler-filter-overlay { position:fixed;inset:0;z-index:1001;border:0;background:rgba(5,10,14,.55);opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s; }
  .pintiler-filter-overlay.is-open { display:block;opacity:1;visibility:visible; }
  body.pintiler-filters-open { overflow:hidden; }
  .woocommerce .pintiler-products-area ul.products { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .pintiler-single-main div.product { grid-template-columns:1fr 1fr;gap:34px; }
  .pintiler-service-notes { grid-template-columns:1fr; }
}

@media (max-width:760px) {
  body.woocommerce .wp-site-blocks > .wp-block-template-part:first-child,
  body.woocommerce-page .wp-site-blocks > .wp-block-template-part:first-child { padding-top:12px; }
  .pintiler-commerce-main { padding:34px 0 68px; }
  .pintiler-commerce-page,
  .pintiler-single-main > .woocommerce { width:calc(100% - 28px); }
  .woocommerce .woocommerce-breadcrumb { margin-bottom:22px; }
  .pintiler-catalog-header { margin-bottom:26px; }
  .pintiler-catalog-header h1,
  .pintiler-single-main .product_title,
  .pintiler-cart-main > h1 { font-size:36px;letter-spacing:-1.4px; }
  .pintiler-catalog-toolbar { flex-wrap:wrap;justify-content:space-between;gap:10px; }
  .pintiler-catalog-toolbar .woocommerce-result-count { width:100%; }
  .pintiler-catalog-toolbar .woocommerce-ordering { flex:1; }
  .pintiler-catalog-toolbar select { width:100%;min-width:0; }
  .woocommerce .pintiler-products-area ul.products,
  .woocommerce .related ul.products { grid-template-columns:repeat(2,minmax(0,1fr));gap:12px; }
  .pintiler-card-body { padding:14px; }
  .woocommerce ul.products li.product.pintiler-catalog-card .woocommerce-loop-product__title { min-height:63px;font-size:16px!important; }
  .pintiler-card-description { min-height:69px; }
  .pintiler-demo-badge { top:8px;left:8px;font-size:16px; }
  .pintiler-single-main div.product { display:block; }
  .pintiler-single-main .summary { margin-top:30px!important; }
  .pintiler-single-main .woocommerce-tabs,
  .pintiler-single-main .related { margin-top:42px; }
  .pintiler-single-main .woocommerce-tabs ul.tabs { overflow-x:auto; }
  .pintiler-single-main .woocommerce-tabs ul.tabs li a { white-space:nowrap; }
  .pintiler-cart-main { padding-inline:14px; }
  .wc-block-cart__main,
  .wc-block-cart__sidebar { padding:15px!important; }
  .wc-block-mini-cart__drawer { width:calc(100vw - 12px)!important; }
  .wc-block-mini-cart__footer-actions { grid-template-columns:1fr; }
}

@media (prefers-reduced-motion:reduce) {
  .pintiler-filter-panel,
  .pintiler-filter-overlay,
  .woocommerce ul.products li.product.pintiler-catalog-card,
  .woocommerce ul.products li.product.pintiler-catalog-card img { transition:none!important; }
}
