/* InSyncPetz v3.5.24.43 — final customer commerce presentation.
   Loaded after the live v42 brand layer. It does not change product, cart,
   subscription or payment logic. */
:root{
  --isp43-ink:#24150d;
  --isp43-muted:#716357;
  --isp43-navy:#0a315d;
  --isp43-gold:#bd7418;
  --isp43-gold-soft:#f3dfbd;
  --isp43-cream:#fffaf1;
  --isp43-paper:#fffdf9;
  --isp43-line:#e6d7c2;
  --isp43-line-strong:#d3b996;
  --isp43-shadow:0 12px 30px rgba(63,38,17,.055);
}

/* ---------- Plans: price first, detail second ---------- */
.isp43-price-strip{
  width:100%;
  margin:0 0 24px;
  padding:18px 20px;
  display:grid;
  grid-template-columns:minmax(230px,.9fr) minmax(0,1.55fr);
  gap:18px;
  align-items:center;
  border:1px solid var(--isp43-line);
  border-radius:18px;
  background:linear-gradient(135deg,#fffdf8,#fbf0df);
  box-shadow:none;
}
.isp43-price-intro>span{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:5px 10px;
  border-radius:999px;
  background:#2f6d48;
  color:#fff;
  font-size:12px;
  line-height:1;
  font-weight:950;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.isp43-price-intro strong{display:block;margin-top:9px;color:var(--isp43-ink);font-size:19px;line-height:1.18;font-weight:950}
.isp43-price-intro small{display:block;margin-top:5px;color:var(--isp43-muted);font-size:12px;line-height:1.45;font-weight:650}
.isp43-price-items{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.isp43-price-item{padding:12px 13px;border:1px solid var(--isp43-line);border-radius:13px;background:#fff;min-width:0}
.isp43-price-item>span{display:block;color:#70553f;font-size:12px;font-weight:900}
.isp43-price-item strong{display:inline-block;margin-top:3px;color:var(--isp43-ink);font-size:21px;line-height:1;font-weight:950}
.isp43-price-item small{margin-left:3px;color:#796c60;font-size:11px;font-weight:800}

/* ---------- Product page: one obvious vertical builder ---------- */
body.single-product .isp27-single-product-flow,
body.single-product .woocommerce div.product,
body.single-product .woocommerce div.product div.summary{
  min-width:0!important;
}
body.single-product .woocommerce div.product div.summary{
  width:100%!important;
  max-width:880px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
body.single-product .woocommerce div.product form.cart{
  display:flex!important;
  flex-direction:column!important;
  width:100%!important;
  max-width:none!important;
  gap:14px!important;
  overflow:visible!important;
}
body.single-product .woocommerce div.product form.cart *,
body.single-product .woocommerce div.product form.cart *::before,
body.single-product .woocommerce div.product form.cart *::after{box-sizing:border-box}

/* Text-detected wrapper applied by commerce-clean-v43.js. This is the key fix
   for the narrow Tag technology / preview columns shown on the live product. */
body.single-product form.cart .isp43-builder-layout{
  display:flex!important;
  flex-direction:column!important;
  grid-template-columns:1fr!important;
  grid-template-areas:none!important;
  align-items:stretch!important;
  gap:14px!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
}
body.single-product form.cart .isp43-builder-layout>*{
  flex:0 0 auto!important;
  float:none!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  margin-left:0!important;
  margin-right:0!important;
}
body.single-product form.cart .isp43-tag-tech,
body.single-product form.cart .isp43-preview,
body.single-product form.cart .isp43-reverse{
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  margin:0!important;
  padding:18px!important;
  border:1px solid var(--isp43-line)!important;
  border-radius:16px!important;
  background:#fff!important;
  box-shadow:none!important;
  overflow:visible!important;
}
body.single-product form.cart .isp43-tag-tech{
  display:grid!important;
  grid-template-columns:minmax(160px,210px) minmax(0,1fr)!important;
  gap:10px 18px!important;
  align-items:center!important;
}
body.single-product form.cart .isp43-tag-tech :is(h2,h3,h4){margin:0!important;font-size:20px!important;line-height:1.15!important}
body.single-product form.cart .isp43-tag-tech :is(select,input[type="text"],input[type="number"]){width:100%!important;max-width:none!important;margin:0!important}
body.single-product form.cart .isp43-preview{padding:20px!important;background:linear-gradient(145deg,#fff,#fffaf2)!important}
body.single-product form.cart .isp43-preview :is(h2,h3,h4){margin:0 0 4px!important;color:var(--isp43-ink)!important;font-size:22px!important;line-height:1.12!important}
body.single-product form.cart .isp43-preview :is(img,canvas,svg){max-width:100%!important;height:auto!important}
body.single-product form.cart .isp43-preview [style*="width"]{max-width:100%!important}
body.single-product form.cart .isp43-preview p{max-width:700px!important;margin:9px 0 0!important;color:var(--isp43-muted)!important;font-size:14px!important;line-height:1.48!important}
body.single-product form.cart .isp43-choice-status{
  display:inline-flex!important;
  width:auto!important;
  min-height:34px!important;
  align-items:center!important;
  justify-content:center!important;
  padding:6px 11px!important;
  border:1px solid var(--isp43-line)!important;
  border-radius:999px!important;
  background:#f5eee4!important;
  color:#715d4c!important;
  font-size:12px!important;
  line-height:1!important;
  font-weight:850!important;
}
body.single-product form.cart .isp43-reverse{background:var(--isp43-cream)!important}
body.single-product form.cart .isp43-reverse label{display:flex!important;align-items:flex-start!important;gap:12px!important;margin:0!important}
body.single-product form.cart .isp43-reverse input[type="checkbox"]{flex:0 0 22px!important;width:22px!important;height:22px!important;min-height:22px!important;margin:2px 0 0!important}
body.single-product form.cart .isp43-reverse strong{display:block!important;color:var(--isp43-ink)!important}
body.single-product form.cart .isp43-hidden-tech{display:none!important}

/* Third-party personalisation/add-on wrappers must not establish their own
   narrow max-width columns inside the product form. */
body.single-product form.cart :is(.wc-pao-addons-container,.product-addons,.wapf,.tm-extra-product-options,[class*="tag-builder"],[class*="tag-config"],[class*="personalisation"],[class*="personalization"]){
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
}
body.single-product form.cart :is(.wc-pao-addon,.product-addon,.wapf-field-group,.tm-extra-product-options-field){max-width:none!important}

/* ---------- Shop: consistent catalogue cards ---------- */
body.woocommerce-shop #insyncpet-shop-products,
body.tax-product_cat #insyncpet-shop-products,
body.tax-product_tag #insyncpet-shop-products{width:min(1180px,calc(100% - 36px))!important;max-width:1180px!important}
body.woocommerce-shop ul.products,
body.tax-product_cat ul.products,
body.tax-product_tag ul.products{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:18px!important;
  margin:22px 0!important;
}
body.woocommerce-shop ul.products li.product,
body.tax-product_cat ul.products li.product,
body.tax-product_tag ul.products li.product{
  display:flex!important;
  flex-direction:column!important;
  width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:16px!important;
  border:1px solid var(--isp43-line)!important;
  border-radius:17px!important;
  background:#fff!important;
  box-shadow:none!important;
}
body.woocommerce-shop ul.products li.product a.woocommerce-LoopProduct-link,
body.tax-product_cat ul.products li.product a.woocommerce-LoopProduct-link,
body.tax-product_tag ul.products li.product a.woocommerce-LoopProduct-link{display:block!important;min-width:0!important}
body.woocommerce-shop ul.products li.product img,
body.tax-product_cat ul.products li.product img,
body.tax-product_tag ul.products li.product img{
  width:100%!important;
  aspect-ratio:1/1!important;
  object-fit:contain!important;
  margin:0 0 13px!important;
  border-radius:12px!important;
  background:#fffaf2!important;
}
body.woocommerce-shop ul.products li.product .woocommerce-loop-product__title,
body.tax-product_cat ul.products li.product .woocommerce-loop-product__title,
body.tax-product_tag ul.products li.product .woocommerce-loop-product__title{font-size:17px!important;line-height:1.25!important;margin:0 0 7px!important;color:var(--isp43-ink)!important}
body.woocommerce-shop ul.products li.product .price,
body.tax-product_cat ul.products li.product .price,
body.tax-product_tag ul.products li.product .price{margin:0 0 12px!important;color:#8b5018!important;font-size:17px!important;font-weight:900!important}
body.woocommerce-shop ul.products li.product .button,
body.tax-product_cat ul.products li.product .button,
body.tax-product_tag ul.products li.product .button{margin-top:auto!important;width:100%!important;text-align:center!important}

/* ---------- Basket: one list and one summary; no cards inside cards ---------- */
body.woocommerce-cart :is(.isp-commerce-system-page,.isp-commerce-system-shell,.entry-content,.page-content,.commerce-content,.woo-content,.woocommerce,.wp-block-woocommerce-cart,.wc-block-cart){
  border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;
}
body.woocommerce-cart :is(.wp-block-woocommerce-cart,.wc-block-cart){width:min(1120px,100%)!important;max-width:1120px!important;margin:0 auto!important;padding:0!important}
body.woocommerce-cart .wc-block-components-sidebar-layout{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(300px,360px)!important;gap:30px!important;align-items:start!important}
body.woocommerce-cart :is(.wc-block-cart__main,.wc-block-cart__sidebar,.wc-block-components-main,.wc-block-components-sidebar){min-width:0!important;background:transparent!important;box-shadow:none!important;border-radius:0!important}
body.woocommerce-cart :is(.wc-block-cart__sidebar,.wc-block-components-sidebar){padding:0 0 0 26px!important;border:0!important;border-left:1px solid var(--isp43-line)!important}
body.woocommerce-cart :is(.wc-block-cart-items,.wc-block-cart-items table,.wc-block-cart-items tbody){width:100%!important;margin:0!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}
body.woocommerce-cart .wc-block-cart-items__header{border-bottom:1px solid var(--isp43-line)!important}
body.woocommerce-cart .wc-block-cart-items__row{padding:0!important;border:0!important;border-bottom:1px solid var(--isp43-line)!important;background:transparent!important}
body.woocommerce-cart .wc-block-cart-item__wrap{padding:18px 0!important;background:transparent!important;border:0!important;box-shadow:none!important}
body.woocommerce-cart :is(.wc-block-cart-item__image img,.wc-block-components-product-image img){width:86px!important;height:86px!important;object-fit:contain!important;border-radius:11px!important;background:#fffaf2!important}
body.woocommerce-cart .wc-block-components-product-name{font-size:16px!important;line-height:1.3!important;font-weight:900!important;color:var(--isp43-ink)!important}
body.woocommerce-cart .wc-block-components-product-metadata{margin-top:5px!important;font-size:12px!important;line-height:1.48!important;color:var(--isp43-muted)!important}
body.woocommerce-cart .wc-block-components-quantity-selector{border:1px solid var(--isp43-line)!important;border-radius:10px!important;box-shadow:none!important}
body.woocommerce-cart .wc-block-cart__totals-title{margin:0 0 13px!important;padding:0!important;font-size:25px!important;line-height:1.1!important;text-align:left!important;text-transform:none!important;color:var(--isp43-ink)!important}
body.woocommerce-cart :is(.wc-block-components-totals-wrapper,.wc-block-components-totals-coupon,.wc-block-components-panel){margin:0!important;padding:13px 0!important;border:0!important;border-top:1px solid var(--isp43-line)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
body.woocommerce-cart .wc-block-components-totals-footer-item{margin:12px 0 0!important;padding:14px!important;border:0!important;border-radius:12px!important;background:var(--isp43-gold-soft)!important}
body.woocommerce-cart .wc-block-cart__submit-button{width:100%!important;min-height:54px!important;margin-top:14px!important;border-radius:12px!important}

/* Classic basket fallback. */
body.woocommerce-cart .woocommerce-cart-form{width:100%!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
body.woocommerce-cart table.shop_table{border:0!important;border-collapse:collapse!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
body.woocommerce-cart table.shop_table th{padding:12px 10px!important;border-bottom:1px solid var(--isp43-line)!important;background:transparent!important}
body.woocommerce-cart table.shop_table td{padding:16px 10px!important;border-bottom:1px solid var(--isp43-line)!important;background:transparent!important;vertical-align:middle!important}
body.woocommerce-cart table.shop_table img{width:82px!important;height:82px!important;object-fit:contain!important;border-radius:10px!important;background:#fffaf2!important}
body.woocommerce-cart .cart-collaterals .cart_totals{padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}

/* ---------- Checkout: clear form + summary ---------- */
body.woocommerce-checkout :is(.entry-content,.page-content,.commerce-content,.woo-content,.woocommerce,.wp-block-woocommerce-checkout,.wc-block-checkout){border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
body.woocommerce-checkout .wc-block-checkout{width:min(1120px,100%)!important;max-width:1120px!important;margin:0 auto!important}
body.woocommerce-checkout .wc-block-components-sidebar-layout{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(300px,360px)!important;gap:30px!important;align-items:start!important}
body.woocommerce-checkout .wc-block-checkout__main{min-width:0!important;padding-right:0!important}
body.woocommerce-checkout .wc-block-checkout__sidebar{min-width:0!important;padding:0 0 0 26px!important;border-left:1px solid var(--isp43-line)!important;background:transparent!important}
body.woocommerce-checkout .wc-block-components-checkout-step{margin:0!important;padding:21px 0!important;border:0!important;border-bottom:1px solid var(--isp43-line)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
body.woocommerce-checkout .wc-block-components-checkout-step:first-child{padding-top:0!important}
body.woocommerce-checkout .wc-block-components-checkout-step__title{font-size:24px!important;line-height:1.12!important;color:var(--isp43-ink)!important}
body.woocommerce-checkout :is(.wc-block-components-address-card,.wc-block-components-radio-control__option,.wc-block-components-radio-control-accordion-option){box-shadow:none!important}
body.woocommerce-checkout .wc-block-components-address-card{padding:13px 15px!important;border:1px solid var(--isp43-line)!important;border-radius:11px!important;background:#fffdf9!important}
body.woocommerce-checkout .wc-block-components-radio-control__option,
body.woocommerce-checkout .wc-block-components-radio-control-accordion-option{position:relative!important;min-height:54px!important;margin:8px 0!important;padding:14px 14px 14px 48px!important;border:1px solid var(--isp43-line)!important;border-radius:11px!important;background:#fff!important}
body.woocommerce-checkout .wc-block-components-radio-control__input,
body.woocommerce-checkout .wc-block-components-radio-control-accordion-option input[type="radio"]{position:absolute!important;left:15px!important;top:50%!important;transform:translateY(-50%)!important;width:20px!important;height:20px!important;margin:0!important;padding:0!important;accent-color:var(--isp43-navy)!important}
body.woocommerce-checkout :is(.wc-block-components-radio-control__label,.wc-block-components-radio-control__description,.wc-block-components-radio-control__secondary-label){margin:0!important;padding:0!important}
body.woocommerce-checkout .wc-block-components-checkout-order-summary,
body.woocommerce-checkout .wc-block-components-order-summary{padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
body.woocommerce-checkout .wc-block-components-order-summary-item{padding:13px 0!important;border-bottom:1px solid #eee4d6!important;background:transparent!important}
body.woocommerce-checkout .wc-block-components-order-summary-item__image img{width:54px!important;height:54px!important;object-fit:contain!important;border-radius:9px!important;background:#fffaf2!important}
body.woocommerce-checkout .wc-block-components-totals-footer-item{margin-top:12px!important;padding:14px!important;border-radius:12px!important;background:var(--isp43-gold-soft)!important}
body.woocommerce-checkout .wc-block-components-checkout-place-order-button{width:100%!important;min-height:55px!important;border-radius:12px!important}

/* Keep express wallet shortcuts out of the three-step purchase journey. */
body.woocommerce-cart :is(.wc-block-components-express-payment,[class*="express-payment"],.ppcp-messages,.paypal-messages),
body.woocommerce-checkout :is(.wc-block-components-express-payment,[class*="express-payment"],.ppcp-messages,.paypal-messages){display:none!important}

.isp43-platform-reference{display:none!important}

@media(max-width:980px){
  .isp43-price-strip{grid-template-columns:1fr}
  .isp43-price-items{grid-template-columns:repeat(3,minmax(0,1fr))}
  body.woocommerce-shop ul.products,body.tax-product_cat ul.products,body.tax-product_tag ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  body.woocommerce-cart .wc-block-components-sidebar-layout,
  body.woocommerce-checkout .wc-block-components-sidebar-layout{grid-template-columns:1fr!important;gap:24px!important}
  body.woocommerce-cart :is(.wc-block-cart__sidebar,.wc-block-components-sidebar),
  body.woocommerce-checkout .wc-block-checkout__sidebar{padding-left:0!important;border-left:0!important;border-top:1px solid var(--isp43-line)!important;padding-top:20px!important;position:static!important}
}
@media(max-width:700px){
  .isp43-price-strip{padding:15px;border-radius:15px}
  .isp43-price-items{grid-template-columns:1fr;gap:7px}
  .isp43-price-item{display:grid;grid-template-columns:1fr auto auto;align-items:baseline;gap:4px}
  body.single-product .woocommerce div.product div.summary{max-width:none!important}
  body.single-product form.cart .isp43-tag-tech{grid-template-columns:1fr!important;padding:15px!important}
  body.single-product form.cart .isp43-preview,body.single-product form.cart .isp43-reverse{padding:15px!important}
  body.woocommerce-shop ul.products,body.tax-product_cat ul.products,body.tax-product_tag ul.products{grid-template-columns:1fr!important}
  body.woocommerce-cart :is(.wc-block-cart-item__image img,.wc-block-components-product-image img){width:68px!important;height:68px!important}
  body.woocommerce-cart .wc-block-components-sidebar-layout,body.woocommerce-checkout .wc-block-components-sidebar-layout{display:block!important}
  body.woocommerce-checkout .wc-block-components-radio-control__option,
  body.woocommerce-checkout .wc-block-components-radio-control-accordion-option{padding-left:44px!important}
  body.woocommerce-checkout .wc-block-components-radio-control__input,
  body.woocommerce-checkout .wc-block-components-radio-control-accordion-option input[type="radio"]{left:13px!important}
}
