/* Snuifbuis :: product page refinements */

/* layout breathing */
body.sb-nisarg.single-product .sb-shopwrap{max-width:1180px;padding-top:26px}
body.sb-nisarg .single-product div.product{gap:52px}
body.sb-nisarg .single-product div.product .product_title{margin:2px 0 10px;letter-spacing:-.025em}
body.sb-nisarg .single-product div.product p.price,body.sb-nisarg .single-product div.product span.price{font-size:26px;margin:0 0 16px}
body.sb-nisarg .single-product .woocommerce-product-rating{margin-bottom:12px}

/* gallery */
body.sb-nisarg .single-product .woocommerce-product-gallery__wrapper img{border-radius:14px;border:1px solid var(--sb-line)}
body.sb-nisarg .single-product .flex-control-thumbs{display:grid;grid-template-columns:repeat(5,1fr);gap:9px;margin-top:12px;padding:0;list-style:none}
body.sb-nisarg .single-product .flex-control-thumbs li{width:auto!important;margin:0!important;float:none!important}
body.sb-nisarg .single-product .flex-control-thumbs img{border-radius:9px;border:1px solid var(--sb-line);opacity:.65;transition:.15s;width:100%;aspect-ratio:1;object-fit:cover}
body.sb-nisarg .single-product .flex-control-thumbs img:hover,body.sb-nisarg .single-product .flex-control-thumbs img.flex-active{opacity:1;border-color:var(--sb-accent)}

/* short description + read more */
body.sb-nisarg .sb-excerpt{color:#42424c;font-size:15px;line-height:1.65;margin-bottom:16px}
body.sb-nisarg .sb-excerpt p{margin:0 0 10px}
body.sb-nisarg .sb-exc-full{display:none}
body.sb-nisarg .sb-excerpt.is-open .sb-exc-short{display:none}
body.sb-nisarg .sb-excerpt.is-open .sb-exc-full{display:block}
body.sb-nisarg .sb-readmore{background:none;border:0;padding:0;font-family:inherit;font-size:14px;font-weight:600;color:var(--sb-accent-dark);cursor:pointer;display:inline-flex;align-items:center;gap:5px}
body.sb-nisarg .sb-readmore::after{content:"\25be";font-size:11px;transition:transform .18s}
body.sb-nisarg .sb-excerpt.is-open .sb-readmore::after{transform:rotate(180deg)}
body.sb-nisarg .sb-readmore:hover{color:var(--sb-accent)}

/* variation swatches */
body.sb-nisarg .sb-swatch-native{display:none}
body.sb-nisarg .woocommerce div.product form.cart .variations{display:block;margin-bottom:6px}
body.sb-nisarg .woocommerce div.product form.cart .variations table,
body.sb-nisarg .woocommerce div.product form.cart .variations tbody,
body.sb-nisarg .woocommerce div.product form.cart .variations tr,
body.sb-nisarg .woocommerce div.product form.cart .variations td,
body.sb-nisarg .woocommerce div.product form.cart .variations th{display:block;width:auto;border:0;padding:0;background:transparent}
body.sb-nisarg .woocommerce div.product form.cart .variations label{font-size:13px;font-weight:600;color:var(--sb-ink);margin:0 0 9px;display:block;text-transform:none}
body.sb-nisarg .sb-swatches{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:16px}
body.sb-nisarg .sb-swatch{display:inline-flex;align-items:center;gap:8px;background:#fff;border:1.5px solid var(--sb-line);border-radius:10px;padding:8px 13px 8px 9px;font-family:inherit;font-size:13.5px;font-weight:500;color:var(--sb-ink);cursor:pointer;transition:.15s}
body.sb-nisarg .sb-swatch:hover{border-color:var(--sb-ink)}
body.sb-nisarg .sb-swatch.is-active{border-color:var(--sb-accent);background:rgba(31,166,174,.07);box-shadow:0 0 0 3px rgba(31,166,174,.13)}
body.sb-nisarg .sb-swatch-dot{width:20px;height:20px;border-radius:50%;border:1px solid rgba(0,0,0,.14);flex:0 0 auto;display:block}
body.sb-nisarg .sb-swatches:not(.sb-swatches--colour) .sb-swatch{padding:9px 15px}
body.sb-nisarg .woocommerce div.product form.cart .reset_variations{display:inline-block;font-size:12.5px;color:var(--sb-muted);margin-bottom:12px}
body.sb-nisarg .woocommerce-variation-price{margin-bottom:10px}
body.sb-nisarg .woocommerce-variation-add-to-cart{display:flex;gap:10px;align-items:stretch;flex-wrap:wrap}

/* add to cart row */
body.sb-nisarg .woocommerce div.product form.cart{display:flex;flex-wrap:wrap;gap:10px;align-items:stretch;margin-bottom:6px}
body.sb-nisarg .woocommerce div.product form.cart .variations,
body.sb-nisarg .woocommerce div.product form.cart .woocommerce-variation{flex-basis:100%}
body.sb-nisarg .woocommerce div.product form.cart .quantity input.qty{height:52px;width:74px;border-radius:10px;font-size:15px;font-weight:600}
body.sb-nisarg .woocommerce div.product form.cart .single_add_to_cart_button{flex:1;min-width:220px;height:52px;font-size:15.5px;border-radius:10px!important}

/* trust list */
body.sb-nisarg .sb-ptrust{list-style:none;margin:20px 0 0;padding:18px 0 0;border-top:1px solid var(--sb-line);display:grid;gap:10px}
body.sb-nisarg .sb-ptrust li{display:flex;align-items:center;gap:10px;font-size:13.5px;color:#43434d}
body.sb-nisarg .sb-ptrust .ic{font-size:15px}
body.sb-nisarg .sb-ptrust strong{color:var(--sb-accent-dark)}

/* tabs */
body.sb-nisarg .woocommerce-tabs{margin-top:56px}
body.sb-nisarg .woocommerce-tabs ul.tabs{padding:0;margin:0 0 22px;display:flex;flex-wrap:wrap;gap:4px;border-bottom:1px solid var(--sb-line)}
body.sb-nisarg .woocommerce-tabs ul.tabs::before,body.sb-nisarg .woocommerce-tabs ul.tabs::after{display:none!important;border:0!important}
body.sb-nisarg .woocommerce-tabs ul.tabs li{background:transparent!important;border:0!important;border-radius:0!important;margin:0!important;padding:0!important;box-shadow:none!important}
body.sb-nisarg .woocommerce-tabs ul.tabs li::before,body.sb-nisarg .woocommerce-tabs ul.tabs li::after{display:none!important;border:0!important;box-shadow:none!important}
body.sb-nisarg .woocommerce-tabs ul.tabs li a{display:block;padding:13px 18px;font-weight:600;font-size:14.5px;color:var(--sb-muted);border-bottom:2px solid transparent;margin-bottom:-1px}
body.sb-nisarg .woocommerce-tabs ul.tabs li a:hover{color:var(--sb-ink)}
body.sb-nisarg .woocommerce-tabs ul.tabs li.active a{color:var(--sb-ink);border-bottom-color:var(--sb-accent)}
body.sb-nisarg .woocommerce-tabs .panel{max-width:820px}
body.sb-nisarg .woocommerce-tabs .panel h2{font-size:20px;margin-bottom:12px;letter-spacing:-.01em}
body.sb-nisarg .woocommerce-tabs .panel p{color:#43434d;line-height:1.7;margin-bottom:12px}
body.sb-nisarg .sb-tablist{list-style:none;margin:0 0 16px;padding:0;display:grid;gap:9px}
body.sb-nisarg .sb-tablist li{position:relative;padding-left:26px;color:#43434d;line-height:1.6}
body.sb-nisarg .sb-tablist li::before{content:"\2713";position:absolute;left:0;top:0;color:var(--sb-accent);font-weight:800}

/* related */
body.sb-nisarg .related.products{margin-top:56px}
body.sb-nisarg .related.products>h2{font-size:22px;margin-bottom:20px;letter-spacing:-.02em}

@media(max-width:860px){
  body.sb-nisarg .single-product div.product{gap:22px}
  body.sb-nisarg .woocommerce div.product form.cart .single_add_to_cart_button{min-width:0}
  body.sb-nisarg .woocommerce-tabs{margin-top:36px}
  body.sb-nisarg .woocommerce-tabs ul.tabs li a{padding:11px 13px;font-size:13.5px}
}

/* fix: collapsed by default + no justified text on product pages */
body.sb-nisarg .sb-excerpt .sb-exc-full{display:none!important}
body.sb-nisarg .sb-excerpt.is-open .sb-exc-full{display:block!important}
body.sb-nisarg .sb-excerpt.is-open .sb-exc-short{display:none!important}
body.sb-nisarg.single-product,body.sb-nisarg.single-product p,body.sb-nisarg.single-product li,
body.sb-nisarg .sb-excerpt,body.sb-nisarg .sb-excerpt p,body.sb-nisarg .woocommerce-tabs .panel,
body.sb-nisarg .woocommerce-tabs .panel p,body.sb-nisarg .sb-ptrust li,body.sb-nisarg .sb-tablist li{text-align:left!important}
body.sb-nisarg .sb-ptrust li{align-items:flex-start;line-height:1.5}
body.sb-nisarg .sb-ptrust li strong{white-space:nowrap}

/* tabs: force our padding/spacing over theme + Woo defaults */
body.sb-nisarg .woocommerce div.product .woocommerce-tabs ul.tabs{gap:6px!important;padding-left:0!important;margin-bottom:24px!important}
body.sb-nisarg .woocommerce div.product .woocommerce-tabs ul.tabs li a,
body.sb-nisarg .woocommerce-tabs ul.tabs li a{display:inline-block!important;padding:13px 18px!important;font-weight:600!important;font-size:14.5px!important;line-height:1.2!important;text-decoration:none!important;border-bottom:2px solid transparent!important;margin-bottom:-1px!important;color:var(--sb-muted)!important;white-space:nowrap}
body.sb-nisarg .woocommerce div.product .woocommerce-tabs ul.tabs li.active a,
body.sb-nisarg .woocommerce-tabs ul.tabs li.active a{color:var(--sb-ink)!important;border-bottom-color:var(--sb-accent)!important}
body.sb-nisarg .woocommerce div.product .woocommerce-tabs ul.tabs li a:hover{color:var(--sb-ink)!important}
body.sb-nisarg .woocommerce-tabs .panel{padding-top:6px}
@media(max-width:700px){body.sb-nisarg .woocommerce-tabs ul.tabs{overflow-x:auto;flex-wrap:nowrap;-webkit-overflow-scrolling:touch}}

/* ===================== mobile product page fixes ===================== */

/* 1. USP list: never let the bold delivery date push out of the column */
body.sb-nisarg .sb-ptrust li{display:flex;align-items:flex-start;gap:10px;flex-wrap:wrap}
body.sb-nisarg .sb-ptrust li strong{white-space:normal!important}
body.sb-nisarg .sb-ptrust li>span.ic{flex:0 0 auto;width:20px;display:inline-flex;align-items:center;justify-content:center;line-height:1}
body.sb-nisarg .sb-ptrust li img.emoji,body.sb-nisarg .sb-ptrust .ic img{width:16px;height:16px;vertical-align:-2px;margin:0}
body.sb-nisarg .sb-ptrust li>*:not(.ic){min-width:0}

/* 2. product meta: no justified gaps */
body.sb-nisarg .woocommerce div.product .product_meta{text-align:left!important;font-size:13px;color:var(--sb-muted);margin-top:16px;padding-top:14px;border-top:1px solid var(--sb-line);word-spacing:normal}
body.sb-nisarg .woocommerce div.product .product_meta>span{display:block;margin-bottom:4px}

/* 3. add-to-cart button: fit on one line where it can */
body.sb-nisarg .woocommerce div.product form.cart .single_add_to_cart_button{line-height:1.25}

@media(max-width:860px){
  /* 4. ALIGNMENT: the summary column carried 24px extra padding while the tabs and
        related-products sections sat flush at the wrapper edge. Strip it so every
        section shares one left edge. */
  body.sb-nisarg .woocommerce div.product .summary,
  body.sb-nisarg .woocommerce div.product .entry-summary{padding-left:0!important;padding-right:0!important;margin-left:0!important;margin-right:0!important}
  body.sb-nisarg .single-product div.product{gap:20px}

  /* gallery + thumbs full width, no stray inset */
  body.sb-nisarg .single-product .woocommerce-product-gallery{margin-left:0!important;margin-right:0!important}
  body.sb-nisarg .single-product .flex-control-thumbs{grid-template-columns:repeat(4,1fr);gap:8px}

  /* buy row: quantity + button side by side, button fills the rest */
  body.sb-nisarg .woocommerce div.product form.cart{gap:8px}
  body.sb-nisarg .woocommerce div.product form.cart .quantity input.qty{width:62px;height:50px}
  body.sb-nisarg .woocommerce div.product form.cart .single_add_to_cart_button{min-width:0;flex:1 1 0;height:50px;padding:12px 10px!important;font-size:14.5px}

  /* swatches a touch tighter */
  body.sb-nisarg .sb-swatch{padding:7px 12px 7px 8px;font-size:13px}
  body.sb-nisarg .sb-swatch-dot{width:18px;height:18px}

  /* USP text size */
  body.sb-nisarg .sb-ptrust{margin-top:16px;padding-top:14px;gap:9px}
  body.sb-nisarg .sb-ptrust li{font-size:13px;line-height:1.45}

  /* related products heading aligns with the cards */
  body.sb-nisarg .related.products>h2,body.sb-nisarg .up-sells>h2{font-size:19px;margin-bottom:16px}
}

/* USP rows: icon in its own column, text wraps as one block beside it */
body.sb-nisarg .sb-ptrust li{flex-wrap:nowrap!important;align-items:flex-start}
body.sb-nisarg .sb-ptrust li .tx{flex:1 1 auto;min-width:0}
body.sb-nisarg .sb-ptrust li .tx strong{white-space:normal;display:inline}
