/*
 * BGT 2026.81 – Clean single-product redesign.
 * Scoped to WooCommerce single product pages. No product copy/images are rewritten.
 */

body.single-product.bgt-product-detail-refresh {
  --bgt-pd-navy: #071f34;
  --bgt-pd-navy-2: #0a3a59;
  --bgt-pd-blue: #087fc4;
  --bgt-pd-cyan: #20a7df;
  --bgt-pd-green: #7bc62d;
  --bgt-pd-ink: #17354a;
  --bgt-pd-copy: #405a6b;
  --bgt-pd-muted: #718695;
  --bgt-pd-line: #dce7ed;
  --bgt-pd-page: #f4f7f9;
  --bgt-pd-soft: #eef6f9;
  background: var(--bgt-pd-page);
  color: var(--bgt-pd-copy);
}

body.single-product.bgt-product-detail-refresh .bgt-pd-root,
body.single-product.bgt-product-detail-refresh #content,
body.single-product.bgt-product-detail-refresh .site-content,
body.single-product.bgt-product-detail-refresh .content-area,
body.single-product.bgt-product-detail-refresh main.site-main,
body.single-product.bgt-product-detail-refresh main#primary {
  width: 100% !important;
  max-width: none !important;
}

/* Compact, clean title banner. No oversized decorative shapes. */
body.single-product.bgt-product-detail-refresh .bgt-pd-hero {
  position: relative;
  overflow: hidden;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 58px 0 60px !important;
  background:
    radial-gradient(circle at 87% 18%, rgba(32,167,223,.16), transparent 29%),
    linear-gradient(108deg, #071f34 0%, #0a3a59 62%, #0a5b7f 100%) !important;
  border: 0 !important;
  border-bottom: 3px solid var(--bgt-pd-green) !important;
  box-shadow: none !important;
}

body.single-product.bgt-product-detail-refresh .bgt-pd-hero::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 1px;
  background: linear-gradient(90deg, var(--bgt-pd-green), var(--bgt-pd-cyan), transparent 78%);
  opacity: .9;
}

body.single-product.bgt-product-detail-refresh .bgt-pd-title,
body.single-product.bgt-product-detail-refresh .bgt-pd-hero h1,
body.single-product.bgt-product-detail-refresh .bgt-pd-hero .elementor-heading-title {
  width: min(var(--bgt-site-header-width, 1340px), calc(100% - 48px)) !important;
  max-width: 980px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  color: #ffffff !important;
  font-family: Poppins, Arial, sans-serif !important;
  font-size: clamp(32px, 3.2vw, 46px) !important;
  line-height: 1.2 !important;
  font-weight: 700 !important;
  letter-spacing: -.025em !important;
  text-align: left !important;
  text-wrap: balance;
}

body.single-product.bgt-product-detail-refresh .bgt-pd-title::before,
body.single-product.bgt-product-detail-refresh .bgt-pd-hero h1::before,
body.single-product.bgt-product-detail-refresh .bgt-pd-hero .elementor-heading-title::before {
  content: "";
  display: block;
  width: 64px;
  height: 4px;
  margin: 0 0 18px;
  border-radius: 99px;
  background: linear-gradient(90deg, var(--bgt-pd-green), var(--bgt-pd-cyan));
}

/* Main reading region */
body.single-product.bgt-product-detail-refresh .bgt-pd-layout {
  width: min(var(--bgt-site-header-width, 1340px), calc(100% - 48px)) !important;
  max-width: var(--bgt-site-header-width, 1340px) !important;
  margin: 0 auto !important;
  padding: 48px 0 72px !important;
  display: grid !important;
  grid-template-columns: minmax(270px, 318px) minmax(0, 1fr) !important;
  gap: 34px !important;
  align-items: start !important;
  background: transparent !important;
}

body.single-product.bgt-product-detail-refresh .bgt-pd-layout > .bgt-pd-sidebar,
body.single-product.bgt-product-detail-refresh .bgt-pd-layout > .bgt-pd-article-column {
  width: auto !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}

/* Sidebar */
body.single-product.bgt-product-detail-refresh .bgt-pd-sidebar {
  position: sticky !important;
  top: 112px;
  align-self: start;
}

body.single-product.bgt-product-detail-refresh .bgt-pd-sidebar > * {
  margin: 0 0 18px !important;
}

body.single-product.bgt-product-detail-refresh .bgt-pd-sidebar > *:last-child {
  margin-bottom: 0 !important;
}

body.single-product.bgt-product-detail-refresh .bgt-pd-media {
  padding: 9px !important;
  overflow: hidden;
  border: 1px solid #d6e5ec !important;
  border-radius: 18px !important;
  background: #ffffff !important;
  box-shadow: 0 10px 30px rgba(12,55,80,.08) !important;
}

body.single-product.bgt-product-detail-refresh .bgt-pd-media img,
body.single-product.bgt-product-detail-refresh .bgt-pd-sidebar img {
  display: block;
  width: 100% !important;
  height: auto !important;
  border: 0 !important;
  outline: 0 !important;
  border-radius: 12px !important;
  box-shadow: none !important;
}

body.single-product.bgt-product-detail-refresh .bgt-pd-cta-card {
  overflow: hidden;
  border: 0 !important;
  border-radius: 18px !important;
  box-shadow: 0 14px 34px rgba(7,31,52,.14) !important;
}

/* Article surface */
body.single-product.bgt-product-detail-refresh .bgt-pd-article-column {
  min-width: 0;
}

body.single-product.bgt-product-detail-refresh .bgt-pd-article,
body.single-product.bgt-product-detail-refresh .bgt-pd-reading-root {
  min-width: 0;
}

body.single-product.bgt-product-detail-refresh .bgt-pd-article > .elementor-widget-container,
body.single-product.bgt-product-detail-refresh .bgt-pd-article.bgt-pd-reading-root,
body.single-product.bgt-product-detail-refresh .bgt-pd-article .bgt-pd-reading-root,
body.single-product.bgt-product-detail-refresh .bgt-pd-reading-root.elementor-text-editor,
body.single-product.bgt-product-detail-refresh .bgt-pd-reading-root.woocommerce-Tabs-panel--description {
  padding: clamp(30px, 3.4vw, 46px) !important;
  border: 1px solid var(--bgt-pd-line) !important;
  border-radius: 20px !important;
  background: #ffffff !important;
  box-shadow: 0 14px 40px rgba(12,55,80,.07) !important;
}

/* Keep nested widget wrappers transparent so there is only one clean reading card. */
body.single-product.bgt-product-detail-refresh .bgt-pd-article .elementor-widget-container .elementor-widget-container {
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

/* Typography */
body.single-product.bgt-product-detail-refresh .bgt-pd-reading-root p,
body.single-product.bgt-product-detail-refresh .bgt-pd-reading-root li,
body.single-product.bgt-product-detail-refresh .bgt-pd-article p,
body.single-product.bgt-product-detail-refresh .bgt-pd-article li {
  color: var(--bgt-pd-copy) !important;
  font-family: Inter, Arial, sans-serif !important;
  font-size: 16px !important;
  line-height: 1.78 !important;
  font-weight: 400 !important;
}

body.single-product.bgt-product-detail-refresh .bgt-pd-reading-root p,
body.single-product.bgt-product-detail-refresh .bgt-pd-article p {
  margin: 0 0 17px !important;
}

body.single-product.bgt-product-detail-refresh .bgt-pd-reading-root strong,
body.single-product.bgt-product-detail-refresh .bgt-pd-article strong {
  color: #17394f !important;
  font-weight: 700 !important;
}

body.single-product.bgt-product-detail-refresh .bgt-pd-section-heading,
body.single-product.bgt-product-detail-refresh .bgt-pd-reading-root h2,
body.single-product.bgt-product-detail-refresh .bgt-pd-reading-root h3,
body.single-product.bgt-product-detail-refresh .bgt-pd-article h2,
body.single-product.bgt-product-detail-refresh .bgt-pd-article h3 {
  position: relative;
  margin: 34px 0 15px !important;
  padding: 0 0 0 16px !important;
  color: var(--bgt-pd-navy) !important;
  font-family: Poppins, Arial, sans-serif !important;
  font-weight: 700 !important;
  line-height: 1.34 !important;
  letter-spacing: -.012em !important;
}

body.single-product.bgt-product-detail-refresh .bgt-pd-reading-root h2,
body.single-product.bgt-product-detail-refresh .bgt-pd-article h2 {
  font-size: clamp(22px, 1.8vw, 27px) !important;
}

body.single-product.bgt-product-detail-refresh .bgt-pd-reading-root h3,
body.single-product.bgt-product-detail-refresh .bgt-pd-article h3 {
  font-size: clamp(19px, 1.55vw, 23px) !important;
}

body.single-product.bgt-product-detail-refresh .bgt-pd-section-heading::before,
body.single-product.bgt-product-detail-refresh .bgt-pd-reading-root h2::before,
body.single-product.bgt-product-detail-refresh .bgt-pd-reading-root h3::before,
body.single-product.bgt-product-detail-refresh .bgt-pd-article h2::before,
body.single-product.bgt-product-detail-refresh .bgt-pd-article h3::before {
  content: "";
  position: absolute;
  left: 0;
  top: .12em;
  bottom: .12em;
  width: 4px;
  border-radius: 99px;
  background: linear-gradient(180deg, var(--bgt-pd-green), var(--bgt-pd-cyan));
}

body.single-product.bgt-product-detail-refresh .bgt-pd-reading-root h2:first-child,
body.single-product.bgt-product-detail-refresh .bgt-pd-reading-root h3:first-child,
body.single-product.bgt-product-detail-refresh .bgt-pd-article h2:first-child,
body.single-product.bgt-product-detail-refresh .bgt-pd-article h3:first-child {
  margin-top: 0 !important;
}

body.single-product.bgt-product-detail-refresh .bgt-pd-reading-root ul,
body.single-product.bgt-product-detail-refresh .bgt-pd-reading-root ol,
body.single-product.bgt-product-detail-refresh .bgt-pd-article ul,
body.single-product.bgt-product-detail-refresh .bgt-pd-article ol {
  margin: 0 0 20px 21px !important;
  padding: 0 !important;
}

body.single-product.bgt-product-detail-refresh .bgt-pd-reading-root li,
body.single-product.bgt-product-detail-refresh .bgt-pd-article li {
  margin-bottom: 8px !important;
}

body.single-product.bgt-product-detail-refresh .bgt-pd-reading-root a,
body.single-product.bgt-product-detail-refresh .bgt-pd-article a {
  color: var(--bgt-pd-blue) !important;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}

body.single-product.bgt-product-detail-refresh .bgt-pd-reading-root blockquote,
body.single-product.bgt-product-detail-refresh .bgt-pd-article blockquote {
  margin: 26px 0 !important;
  padding: 18px 22px !important;
  border: 0 !important;
  border-left: 4px solid var(--bgt-pd-green) !important;
  border-radius: 0 12px 12px 0;
  background: var(--bgt-pd-soft) !important;
  color: var(--bgt-pd-ink) !important;
}

body.single-product.bgt-product-detail-refresh .bgt-pd-table,
body.single-product.bgt-product-detail-refresh .bgt-pd-reading-root table,
body.single-product.bgt-product-detail-refresh .bgt-pd-article table {
  width: 100%;
  margin: 24px 0 !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  overflow: hidden;
  border: 1px solid var(--bgt-pd-line) !important;
  border-radius: 12px;
  background: #fff;
}

body.single-product.bgt-product-detail-refresh .bgt-pd-reading-root th,
body.single-product.bgt-product-detail-refresh .bgt-pd-article th {
  padding: 12px 14px !important;
  background: #edf6fa !important;
  color: var(--bgt-pd-navy) !important;
  font-weight: 700 !important;
  text-align: left;
}

body.single-product.bgt-product-detail-refresh .bgt-pd-reading-root td,
body.single-product.bgt-product-detail-refresh .bgt-pd-article td {
  padding: 12px 14px !important;
  border-top: 1px solid var(--bgt-pd-line) !important;
  color: var(--bgt-pd-copy) !important;
}

/* Standard WooCommerce product blocks, when present. */
body.single-product.bgt-product-detail-refresh div.product .woocommerce-product-gallery,
body.single-product.bgt-product-detail-refresh div.product .summary {
  border-radius: 18px;
}

body.single-product.bgt-product-detail-refresh div.product .summary .price {
  color: var(--bgt-pd-navy) !important;
  font-size: 24px !important;
  font-weight: 700 !important;
}

body.single-product.bgt-product-detail-refresh div.product form.cart .button,
body.single-product.bgt-product-detail-refresh div.product .single_add_to_cart_button {
  min-height: 46px;
  padding: 0 22px !important;
  border-radius: 10px !important;
  background: var(--bgt-pd-blue) !important;
  color: #fff !important;
  font-weight: 700 !important;
}

body.single-product.bgt-product-detail-refresh div.product form.cart .button:hover,
body.single-product.bgt-product-detail-refresh div.product .single_add_to_cart_button:hover {
  background: #066fae !important;
}

@media (max-width: 1024px) {
  body.single-product.bgt-product-detail-refresh .bgt-pd-hero {
    padding: 46px 0 48px !important;
  }

  body.single-product.bgt-product-detail-refresh .bgt-pd-layout {
    grid-template-columns: minmax(230px, 285px) minmax(0, 1fr) !important;
    gap: 26px !important;
    padding-top: 38px !important;
  }

  body.single-product.bgt-product-detail-refresh .bgt-pd-sidebar {
    top: 92px;
  }

  body.single-product.bgt-product-detail-refresh .bgt-pd-reading-root p,
  body.single-product.bgt-product-detail-refresh .bgt-pd-reading-root li,
  body.single-product.bgt-product-detail-refresh .bgt-pd-article p,
  body.single-product.bgt-product-detail-refresh .bgt-pd-article li {
    font-size: 15.5px !important;
  }
}

@media (max-width: 767px) {
  body.single-product.bgt-product-detail-refresh .bgt-pd-hero {
    padding: 34px 0 36px !important;
  }

  body.single-product.bgt-product-detail-refresh .bgt-pd-title,
  body.single-product.bgt-product-detail-refresh .bgt-pd-hero h1,
  body.single-product.bgt-product-detail-refresh .bgt-pd-hero .elementor-heading-title {
    width: calc(100% - 28px) !important;
    font-size: clamp(27px, 8vw, 34px) !important;
  }

  body.single-product.bgt-product-detail-refresh .bgt-pd-title::before,
  body.single-product.bgt-product-detail-refresh .bgt-pd-hero h1::before,
  body.single-product.bgt-product-detail-refresh .bgt-pd-hero .elementor-heading-title::before {
    width: 48px;
    margin-bottom: 14px;
  }

  body.single-product.bgt-product-detail-refresh .bgt-pd-layout {
    width: calc(100% - 28px) !important;
    display: block !important;
    padding: 28px 0 48px !important;
  }

  body.single-product.bgt-product-detail-refresh .bgt-pd-sidebar {
    position: static !important;
    margin-bottom: 22px !important;
  }

  body.single-product.bgt-product-detail-refresh .bgt-pd-article > .elementor-widget-container,
  body.single-product.bgt-product-detail-refresh .bgt-pd-article.bgt-pd-reading-root,
  body.single-product.bgt-product-detail-refresh .bgt-pd-article .bgt-pd-reading-root,
  body.single-product.bgt-product-detail-refresh .bgt-pd-reading-root.elementor-text-editor,
  body.single-product.bgt-product-detail-refresh .bgt-pd-reading-root.woocommerce-Tabs-panel--description {
    padding: 23px 20px !important;
    border-radius: 16px !important;
  }

  body.single-product.bgt-product-detail-refresh .bgt-pd-reading-root p,
  body.single-product.bgt-product-detail-refresh .bgt-pd-reading-root li,
  body.single-product.bgt-product-detail-refresh .bgt-pd-article p,
  body.single-product.bgt-product-detail-refresh .bgt-pd-article li {
    font-size: 15px !important;
    line-height: 1.72 !important;
  }

  body.single-product.bgt-product-detail-refresh .bgt-pd-reading-root h2,
  body.single-product.bgt-product-detail-refresh .bgt-pd-article h2 {
    font-size: 21px !important;
  }
}
