/* ---------------------------------------------------
   GENERAL PRODUCT CLEANUP
--------------------------------------------------- */

.am-product-description .is-divider {
  display: none;
}

.am-product-description .rank-math-breadcrumb .last {
  color: var(--tertiary-color-am);
}

.primary--button.stretch--button {
  border-radius: 15px !important;
  padding: 6px;
  font-size: 1rem;
  width: 100%;
}

/* ---------------------------------------------------
   ACCORDION STYLES
--------------------------------------------------- */

/* Accordion link styling */
a.plain {
  color: var(--brand-color-am-600);
}

.accordion a.plain {
  color: var(--brand-color-am-600);
}

/* Accordion active state */
.accordion-title.active {
  background-color: var(--tertiary-color-am-50);
  border-color: var(--tertiary-color-am-50);
  color: var(--brand-color-am-600);
}

/* Accordion inner content links */
.accordion-inner a {
  color: var(--brand-color-am-600);
}

.accordion-inner a:hover {
  color: var(--brand-color-am-600);
  text-decoration: underline;
}

/* ---------------------------------------------------
   DOWNLOAD BUTTON
--------------------------------------------------- */

.download-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  background-color: var(--primary-color-am);
  color: var(--secondary-color-am-80);
  border: 1px solid var(--secondary-color-am-60);
  border-radius: 50px;
  padding: 15px 20px;
  font-size: 16px;
  font-weight: 500;
  text-decoration: none;
  transition: all 0.3s ease;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
  text-align: center;
}

.download-button:hover {
  background-color: var(--grey-color-am);
  border-color: var(--secondary-color-am);
  color: var(--secondary-color-am);
}

/* ---------------------------------------------------
   CONTACT BUTTON
--------------------------------------------------- */

.contact--button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  background-color: var(--brand-color-am-600);
  color: var(--primary-color-am);
  border-radius: 50px;
  padding: 17px 22px;
  font-size: 16px;
  font-weight: 500;
  text-decoration: none;
  transition: all 0.3s ease;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}

.contact--button:hover {
  box-shadow: 0 3px 7px rgba(0, 0, 0, 0.15);
  color: var(--primary-color-am);
}

/* ---------------------------------------------------
   PRODUCT TABS (NO TAB BORDERS)
--------------------------------------------------- */

.tabbed-content.single-product-tabs {
  margin: 30px 0;
}

.single-product-tabs .nav-tabs {
  display: flex;
  border: none !important;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.single-product-tabs .nav-tabs li.tab a {
  font-size: 1rem;
  background-color: var(--brand-color-am-100);
  color: var(--brand-color-am-600);
  padding: 10px 20px;
  border-radius: 6px 6px 0 0;
  border: none !important;
  box-shadow: none !important;
}

.single-product-tabs .nav-tabs li.tab.active a {
  background-color: var(--brand-color-am);
  color: var(--secondary-color-am);
  border: none !important;
  box-shadow: none !important;
}

/* Kill Flatsome active borders/top line */
.nav-tabs > li > a,
.nav-tabs > li > a:focus,
.nav-tabs > li > a:hover,
.nav-tabs > li.active > a,
.nav-tabs > li.active > a:focus,
.nav-tabs > li.active > a:hover {
  border: none !important;
  border-top: none !important;
  border-bottom: none !important;
  box-shadow: none !important;
  outline: none !important;
}

/* Remove pseudo borders */
.nav-tabs > li > a::before,
.nav-tabs > li > a::after {
  display: none !important;
}

/* ---------------------------------------------------
   TAB PANELS (BORDER ONLY – NO SHADOW)
--------------------------------------------------- */

.single-product-tabs .tab-panels {
  border: 1px solid var(--secondary-color-am-20);
  background: var(--primary-color-am);
  padding: 28px;
  box-shadow: none;
}

.single-product-tabs .tab-panels .panel {
  border: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* ---------------------------------------------------
   PRODUCT DETAILS TABLE (SHADOW LIVES HERE)
--------------------------------------------------- */

.product-details-table {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

/* Table base + shadow */
.product-details-table table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  border-radius: 12px;
  overflow: hidden;
  background-color: var(--primary-color-am);
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
  transform: translateZ(0);
  border: 1px solid #e2e8f0;
}

/* Windows fallback shadow */
@supports not (-webkit-backdrop-filter: blur(1px)) {
  .product-details-table table {
    filter: drop-shadow(0 1px 3px rgba(0, 0, 0, 0.06));
  }
}

/* Cells - targeting both header and data cells without using th */
.product-details-table table tbody tr td,
.product-details-table table tbody tr > * {
  font-size: 0.9rem;
  line-height: 1.5;
  padding: 12px 20px;
  color: var(--secondary-color-am);
  text-align: left;
}

/* First column padding */
.product-details-table table tbody tr td:first-child,
.product-details-table table tbody tr > *:first-child {
  padding-left: 15px !important;
}

/* Header row (first tbody row) - more specific selector */
.product-details-table table tbody tr:first-child td,
.product-details-table table tbody tr:first-child > * {
  background: var(--secondary-color-am);
  color: #fff;
  font-weight: 600;
}

/* Ensure nested elements stay white in header */
.product-details-table table tbody tr:first-child td *,
.product-details-table table tbody tr:first-child > * * {
  color: #fff !important;
}

/* Zebra rows */
.product-details-table tbody tr:nth-child(odd) td {
  background: var(--primary-color-am);
}

.product-details-table tbody tr:nth-child(even) td {
  background: var(--light-background-am);
}

/* Horizontal dividers */
.product-details-table tbody td {
  border-bottom: 1px solid var(--secondary-color-am-10);
}

.product-details-table tbody tr:last-child td {
  border-bottom: 0;
}

/* Vertical dividers - using adjacent sibling selector */
.product-details-table table tbody tr td + td,
.product-details-table table tbody tr > * + * {
  border-left: 1px solid var(--secondary-color-am-10);
}

/* Mobile */
@media (max-width: 768px) {
  .single-product-tabs .tab-panels {
    padding: 16px;
  }

  .product-details-table table tbody tr td,
  .product-details-table table tbody tr > * {
    padding: 8px 10px;
  }

  .product-details-table table {
    min-width: 640px;
  }
}

/* ---------------------------------------------------
   RELATED PRODUCTS
--------------------------------------------------- */

/* Force border-radius on related product cards */
.related--products .product-small .box-image,
.related--products .product-small.box .box-image {
  border-radius: 10px 10px 0 0 !important;
  overflow: hidden !important;
}

.product-small.col .col-inner {
  overflow: hidden;
  background-color: var(--primary-color-am);
  border-radius: 10px;
  box-shadow: 0 3px 10px rgba(0, 0, 0, 0.08);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.product-small .image-zoom:hover img {
  transform: scale(1.05);
}

@media (max-width: 768px) {
  .product-small .image-zoom:hover img {
    transform: none;
  }
}