/* =====================================================================
   B. Sirkar Johuree — WooCommerce page styling
   Single product, cart, checkout, order-received, My Account.
   Uses theme variables from style.css (--ink, --gold, --serif, etc.)
   ===================================================================== */

.woocommerce, .woocommerce-page{font-family:var(--sans);color:var(--dark-gray);}
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button,
.woocommerce #respond input#submit, .woocommerce-page a.button, .woocommerce-page button.button{
  background:var(--ink);color:var(--cream);border:1px solid var(--ink);border-radius:40px;
  font-family:var(--sans);font-size:11px;letter-spacing:.2em;text-transform:uppercase;
  padding:14px 30px;transition:all .35s;font-weight:500;
}
.woocommerce a.button:hover, .woocommerce button.button:hover, .woocommerce input.button:hover,
.woocommerce #respond input#submit:hover, .woocommerce-page button.button:hover{
  background:transparent;color:var(--ink);
}
.woocommerce a.button.alt, .woocommerce button.button.alt, .woocommerce input.button.alt{
  background:#ffc46a;color:var(--ink);border-color:#ffc46a;
}
.woocommerce a.button.alt:hover, .woocommerce button.button.alt:hover{background:var(--ink);color:var(--cream);border-color:var(--ink);}

.woocommerce .woocommerce-message, .woocommerce-info, .woocommerce-noreviews,
.woocommerce .woocommerce-error{border-top-color:var(--gold);border-radius:6px;}
.woocommerce .woocommerce-message::before,
.woocommerce-info::before{color:var(--gold);}

/* ---------- Breadcrumb ---------- */
.woocommerce .woocommerce-breadcrumb{font-size:11px;letter-spacing:.16em;text-transform:uppercase;
  color:var(--muted);padding:26px 0 0;}
.woocommerce .woocommerce-breadcrumb a{color:var(--gold);}

/* ---------- Single product ---------- */
.bsj-single-wrap{max-width:1240px;margin:0 auto;padding:30px 24px 80px;}
.single-product div.product{display:block;}
.bsj-product-top{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start;}
.bsj-product-bottom{margin-top:10px;}
.single-product div.product .woocommerce-product-gallery{margin:0;float:none;width:auto;}
.single-product div.product .woocommerce-product-gallery img{border-radius:4px;}
.single-product div.product .summary{margin:0;float:none;width:auto;padding-top:10px;}
.single-product .bsj-single-cat{font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);font-weight:600;margin:0 0 14px;}
.single-product .bsj-specs{width:100%;border-collapse:collapse;margin:18px 0 22px;border-top:1px solid var(--line-soft);}
.single-product .bsj-specs th,
.single-product .bsj-specs td{padding:11px 0;border-bottom:1px solid var(--line-soft);font-family:var(--sans);font-size:13px;text-align:left;}
.single-product .bsj-specs th{font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:11px;}
.single-product .bsj-specs td{text-align:right;color:var(--dark-gray);font-weight:500;}
.single-product .product_title{font-family:var(--serif);font-weight:300;font-size:40px;line-height:1.1;color:var(--dark-gray);margin-bottom:14px;}
.single-product .summary .bsj-purity{font-size:10px;letter-spacing:.3em;text-transform:uppercase;color:var(--gold);font-weight:600;margin-bottom:10px;display:block;}
.single-product div.product p.price,
.single-product div.product span.price{font-family:var(--sans);font-size:26px;color:var(--ink);font-weight:500;margin:8px 0 22px;}
.single-product .woocommerce-product-details__short-description{color:var(--charcoal);line-height:28px;border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);padding:22px 0;margin-bottom:26px;}
.single-product .quantity input.qty{height:52px;border:1px solid var(--line);border-radius:40px;width:80px;text-align:center;}
.single-product form.cart{display:flex;gap:14px;align-items:center;margin-bottom:24px;}
.single-product .product_meta{font-size:12px;color:var(--muted);letter-spacing:.04em;}
.single-product .product_meta a{color:var(--gold);}
.woocommerce div.product .woocommerce-tabs ul.tabs{padding:0;}
.woocommerce div.product .woocommerce-tabs ul.tabs::before{border-bottom-color:var(--line-soft);}
.woocommerce div.product .woocommerce-tabs ul.tabs li{background:transparent;border:none;border-radius:0;}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active{border-bottom:2px solid var(--gold);}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{font-family:var(--sans);font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--dark-gray);}
.woocommerce div.product .woocommerce-tabs ul.tabs li::after,
.woocommerce div.product .woocommerce-tabs ul.tabs li::before{display:none;}
.woocommerce div.product .woocommerce-tabs .panel h2{font-family:var(--serif);font-weight:300;}

/* related / upsell */
.woocommerce .related > h2, .woocommerce .upsells > h2{font-family:var(--serif);font-weight:300;font-size:30px;margin:60px 0 30px;}
.woocommerce .related ul.products, .woocommerce .upsells ul.products{grid-template-columns:repeat(4,1fr);gap:40px 28px;}

/* ---------- Cart / Checkout / Account shared shell ---------- */
.bsj-page-shell{max-width:1180px;margin:0 auto;padding:40px 24px 80px;}
.bsj-page-title{text-align:center;margin-bottom:36px;}
.bsj-page-title .kicker{font-size:10px;letter-spacing:.4em;text-transform:uppercase;color:var(--gold);}
.bsj-page-title h1{font-family:var(--serif);font-weight:300;font-size:42px;color:var(--dark-gray);margin-top:8px;}

.woocommerce table.shop_table{border:1px solid var(--line-soft);border-radius:8px;}
.woocommerce table.shop_table th{font-family:var(--sans);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--charcoal);}
.woocommerce table.cart td.actions .coupon .input-text{border:1px solid var(--line);border-radius:40px;padding:12px 18px;}
.woocommerce .cart-collaterals .cart_totals h2,
.woocommerce-checkout #order_review_heading{font-family:var(--serif);font-weight:300;font-size:24px;}
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce-page form .form-row input.input-text,
.select2-container--default .select2-selection--single{border:1px solid var(--line);border-radius:8px;padding:12px 14px;min-height:48px;}
.woocommerce #payment, .woocommerce-checkout #payment{background:#faf7f1;border-radius:10px;}
.woocommerce-checkout #payment div.payment_box{background:#fff;border:1px solid var(--line-soft);}
.woocommerce-checkout #payment ul.payment_methods{border-bottom:1px solid var(--line-soft);}

/* order received / thank you */
.woocommerce ul.order_details{background:#faf7f1;border-radius:10px;padding:26px;}
.woocommerce ul.order_details li{border-right:1px solid var(--line-soft);color:var(--muted);text-transform:uppercase;font-size:10px;letter-spacing:.12em;}
.woocommerce ul.order_details li strong{font-family:var(--serif);font-size:18px;color:var(--ink);}

/* ---------- My Account ---------- */
.woocommerce-account .woocommerce{max-width:1080px;margin:0 auto;}
.woocommerce-account .woocommerce-MyAccount-navigation{width:26%;}
.woocommerce-account .woocommerce-MyAccount-content{width:70%;}
.woocommerce-account .woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0;border:1px solid var(--line-soft);border-radius:10px;overflow:hidden;}
.woocommerce-account .woocommerce-MyAccount-navigation ul li{border-bottom:1px solid var(--line-soft);}
.woocommerce-account .woocommerce-MyAccount-navigation ul li:last-child{border-bottom:none;}
.woocommerce-account .woocommerce-MyAccount-navigation ul li a{display:block;padding:15px 22px;font-family:var(--sans);
  font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--charcoal);text-decoration:none;transition:all .25s;}
.woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active a,
.woocommerce-account .woocommerce-MyAccount-navigation ul li a:hover{background:var(--ink);color:var(--gold-light);}

/* login + registration */
.woocommerce-account .bsj-auth-grid{display:grid;grid-template-columns:1fr 1fr;gap:0;border:1px solid var(--line-soft);border-radius:14px;overflow:hidden;max-width:1000px;margin:0 auto;}
.woocommerce-account .bsj-auth-grid .col{padding:44px 40px;}
.woocommerce-account .bsj-auth-grid .col.register{background:#faf7f1;border-left:1px solid var(--line-soft);}
.woocommerce-account .bsj-auth-grid h2{font-family:var(--serif);font-weight:300;font-size:28px;margin-bottom:6px;}
.woocommerce-account .bsj-auth-grid .sub{font-size:12px;color:var(--muted);margin-bottom:22px;}
.woocommerce-account .bsj-auth-grid label{font-size:12px;letter-spacing:.06em;color:var(--charcoal);}
.woocommerce-account form.login, .woocommerce-account form.register{border:none;padding:0;margin:0;}
.woocommerce form .form-row label.inline{margin-left:8px;}

/* ---------- Responsive ---------- */
@media (max-width:991px){
  .bsj-product-top{grid-template-columns:1fr;gap:36px;}
  .woocommerce ul.products,.woocommerce-page ul.products{grid-template-columns:repeat(3,1fr)!important;gap:30px 18px;}
  .woocommerce .related ul.products,.woocommerce .upsells ul.products{grid-template-columns:repeat(3,1fr);}
  .woocommerce-account .woocommerce-MyAccount-navigation,
  .woocommerce-account .woocommerce-MyAccount-content{width:100%;float:none;}
  .woocommerce-account .bsj-auth-grid{grid-template-columns:1fr;}
  .woocommerce-account .bsj-auth-grid .col.register{border-left:none;border-top:1px solid var(--line-soft);}
}
@media (max-width:767px){
  .woocommerce ul.products,.woocommerce-page ul.products{grid-template-columns:repeat(2,1fr)!important;gap:24px 14px;}
  .woocommerce .related ul.products,.woocommerce .upsells ul.products{grid-template-columns:repeat(2,1fr);}
  .bsj-shop-hero h1{font-size:32px;}
  .single-product .product_title{font-size:30px;}
  .bsj-page-title h1{font-size:30px;}
  .single-product form.cart{flex-wrap:wrap;}

/* FIX — product gallery + summary each fill their 50% column */
.single-product .bsj-product-top{ align-items:start; }

.single-product .bsj-gallery-col,
.single-product div.product .bsj-gallery-col,
.single-product div.product .summary.entry-summary,
.single-product div.product .summary{
  width:100% !important;
  max-width:100% !important;
  float:none !important;
  margin:0 !important;
}

.single-product .bsj-gallery-col .woocommerce-product-gallery,
.single-product div.product .woocommerce-product-gallery{
  width:100% !important;
  float:none !important;
  margin:0 !important;
}

.single-product .woocommerce-product-gallery__wrapper{ width:100% !important; }
.single-product .woocommerce-product-gallery .flex-viewport{ width:100% !important; }
.single-product .woocommerce-product-gallery__image{ width:100% !important; }
.single-product .woocommerce-product-gallery__image a,
.single-product .woocommerce-product-gallery__image img,
.single-product .woocommerce-product-gallery img{
  width:100% !important;
  height:auto !important;
  display:block;
}

/* thumbnail strip under the main image */
.single-product .woocommerce-product-gallery .flex-control-thumbs{
  margin:14px 0 0 !important; padding:0; display:flex; gap:12px;
}
.single-product .woocommerce-product-gallery .flex-control-thumbs li{
  width:84px !important; margin:0 !important; list-style:none;
}
.single-product .woocommerce-product-gallery .flex-control-thumbs img{
  border-radius:3px; opacity:.7; transition:opacity .25s;
}
.single-product .woocommerce-product-gallery .flex-control-thumbs img:hover,
.single-product .woocommerce-product-gallery .flex-control-thumbs img.flex-active{ opacity:1; }

.single-product .woocommerce-product-gallery{ position:relative; }
.single-product .woocommerce-product-gallery .woocommerce-product-gallery__trigger{ top:1em; right:1em; }
}

.woocommerce-page div.product div.images{
	width: 100% !important;
}

/* Add To Cart button on each shop card */
.bsj-card .bsj-add{ margin-top:14px; }
.bsj-card .bsj-add a.button,
.bsj-card .bsj-add a.added_to_cart{
  display:inline-block;
  font-family:var(--sans);
  font-size:10.5px;
  letter-spacing:.2em;
  text-transform:uppercase;
  font-weight:600;
  color:#1c160d !important;
  background:#cda14a;
  border:1px solid #cda14a;
  border-radius:40px;
  padding:11px 24px;
  text-decoration:none;
  transition:all .3s ease;
}
.bsj-card .bsj-add a.button:hover,
.bsj-card .bsj-add a.added_to_cart:hover{
  background:transparent;
  color:#cda14a !important;
}
.bsj-card .bsj-add a.button.loading{ opacity:.7; }
.bsj-card .bsj-add a.added_to_cart{ margin-left:10px; border-color:rgba(201,168,95,.5); background:transparent; color:#cda14a !important; }


/* Collection cards: warm gold-ink fallback so a card with no photo is never flat black */
.collectionsec .col-card{
  background:
    radial-gradient(130% 90% at 50% -10%, rgba(201,168,95,.22), rgba(201,168,95,0) 55%),
    linear-gradient(155deg, #2b2218 0%, #14110e 72%);
}
.collectionsec .col-card .ph{ background-color:transparent; }
/* safety: keep the section visible even if the scroll-reveal script doesn't run */
.collectionsec .reveal{ opacity:1; transform:none; }


/* Brighter Price Breakup */
.bsjgp-breakup{
  border-top:1px solid rgba(255,255,255,.18);
  border-bottom:1px solid rgba(255,255,255,.18);
}
.bsjgp-breakup h4{ color:#e6c98a !important; }                 /* heading: soft gold */
.bsjgp-breakup li{ color:#ffffff !important; }                  /* values: white */
.bsjgp-breakup li span:first-child{ color:#cfc9bf !important; } /* labels: light grey */
.bsjgp-breakup li.bsjgp-total{
  border-top:1px solid rgba(255,255,255,.22);
  color:#ffffff !important;
}



.ss-tax-breakdown-safe {
    font-size: 0 !important;
    line-height: 0 !important;
}

.ss-tax-breakdown-safe::before {
    content: var(--ss-tax-output);
    display: block;
    white-space: pre-line;
    font-size: 16px;
    line-height: 1.45;
}
