h1 .sub-heading-small {
    font-size: 1.2rem;
}

.taxonomy-page {
    color: #1e1e1e;
}

.category-cards-section {
    padding: 50px;
}


.product-header {
    display: flex;
    gap:30px;
}

.variant-details a {
    color: #1e1e1e;
}

/* Spec Tab */
.spec-variants {
    display: flex;
    flex-wrap: nowrap;
    gap: 30px;
    justify-content: space-between;
}

.tab-spec-table, .tab-variants-cards {
    width: 48%;
}

.spec-variants .variant-cards-wrapper {
    flex-direction: column;
}

.variant-card .card-actions {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    flex-direction: row;
}
.spec-table-wrapper {
  overflow: hidden;
  max-height: 0;
  opacity: 0;
  transition: max-height 0.5s ease, opacity 0.4s ease;
}

.spec-table-wrapper.is-visible {
  max-height: 2000px; /* big enough for full content */
  opacity: 1;
}

.variant-card .card {
    box-shadow: none;
    /* align-items: flex-end; */
}

.variant-details button.spec-toggle {
    border: 1px solid #d0cdcb;
    background-color: transparent;
    color: #1e1e1e;
    padding: 0.65rem 1.25rem;
    min-width: 80px;
}

.variant-details button.spec-toggle:hover {
    background-color: #21827F;
    color: #ffffff;
}

.button-column div > a {
    border: 1px solid #d0cdcb !important;
}

/* Spec Tab End */

.variant-card p {
    min-height: 48px;
}


.taxonomy-page {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
}

/* Brand logo container */
.taxonomy-page .brand-logo {
  display: flex;
  align-items: center;
  justify-content: flex-start;
}

.taxonomy-page .brand-logo img {
  max-width: 200px;
  height: auto;
  display: block;
}

.taxonomy-page .sub-heading-small {
  margin-top: 0.3rem;
}

/* Short overview paragraph */
.taxonomy-page .short-overview {
  max-width: 700px;
}

/* Key features section (WYSIWYG) */
.taxonomy-page .key-features {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  max-width: 800px;
  margin-bottom: 20px;
}

.taxonomy-page .key-features ul {
  margin: 0;
  padding-left: 1.2rem;
  list-style: disc;
}

.taxonomy-page .key-features li {
  margin-bottom: 0.3rem;
}

.taxonomy-page a img {
    height: 64px;
    max-width: 200px;    
}



/* =========================

PRODUCT HEADER LAYOUT

(two columns: gallery left, content right)

========================= */

.product-header{

display:flex;

align-items:flex-start;

gap:24px;

}

/* LEFT: constrain the gallery to the left column */

.product-header .product-gallery{

flex:0 0 54%; /* adjust 50–60% to taste */

max-width:54%;

/* prevent older rules from forcing half width / reverse flow / clipping */

overflow:visible;

}

/* RIGHT: side content */

.product-header .product-side-content{

flex:1 1 0;

min-width:0; /* prevents flex overflow in Chrome/Safari */

}

/* Stack on tablet/mobile */

@media (max-width:1024px){

.product-header{ flex-direction:column; gap:16px; }

.product-header .product-gallery,

.product-header .product-side-content{

flex:1 1 auto; max-width:100%;

}

}

/* =========================

GALLERY (Swiper) – stable, flex-friendly

========================= */

.gallery.product-gallery{

display:flex;

align-items:flex-start;

gap:16px;

flex-direction:row;

width:100%;

}

/* Thumbnails column */

.thumbs-col{

flex:0 0 18%;

max-width:180px;

display:flex;

flex-direction:column;

position:relative;

}

.thumbs-col::after{

content:"";

position:absolute;

top:0; bottom:0; right:-8px;

width:1px; background:#d0cdcb; /* divider line */

}

/* Scrollable viewport set via JS to “4 squares” height on desktop */

#thumbsViewport{

overflow-y:auto;

overflow-x:hidden;

scrollbar-width:none;

}

#thumbsViewport::-webkit-scrollbar{ display:none; }

#thumbsList{

list-style:none; margin:0; padding:0;

}

/* Thumb tiles */

.thumb{ cursor:pointer; }

.thumb img{

width:100%;

aspect-ratio:1/1;

object-fit:cover;

}

.thumb.is-active img{ border-color:#4db6ac; opacity:1; }

.thumb:not(.is-active) img{ opacity:.85; }

.thumb:hover img{ opacity:1; }

/* Main image column */

.main-col{

flex:1 1 auto;

min-width:0; /* critical for flex overflow issues */

}

.main-col picture,

.main-col img{

width:100%;

height:auto;

display:block;

border-radius:8px;

object-fit:contain;

}

/* Swiper pagination in main column */

.main-col .swiper-pagination{

position:static;

margin-top:8px;

}

/* Mobile stacking */

@media (max-width:1024px){

.gallery.product-gallery{ flex-direction:column; gap:12px; align-items: center;}

.thumbs-col{

order:2; width:100%; max-width:none; margin-top:8px;

}

.thumbs-col::after{ display:none; }

.main-col{ order:1; }

.thumb img{ border-radius:4px; }

}

/* =========================

NEUTRALIZE OLD OWL RULES

(avoid conflicts)

========================= */

.product-gallery .owl-carousel .owl-item img{ width:auto !important; } /* harmless */

.product-header div#main_images{ width:100%; border:0; }

/* Old Owl selectors – disable so they don't fight Swiper layout */

.product-gallery #thumb_images, .product-header .thumb-item,

.category-cards-section #thumb_images .owl-stage,

.product-gallery #thumb_images .thumb-item{

all:unset;

}

/* Desktop: keep left gallery in view while scrolling */

@media (min-width:1025px){

.product-header .product-gallery{

position: sticky; /* or: position: -webkit-sticky; for older iOS */

top: var(--stick-offset, 88px); /* distance from top (header height + a bit) */

height: fit-content; /* grow to its content */

align-self: flex-start; /* don’t stretch to right column’s height */

z-index: 2; /* above background stuff */

}

}

/* Ensure parent allows sticky to work */

.product-header{

overflow: visible; /* sticky breaks if parent overflows hidden/auto */

}

/* Already good: thumbs viewport scrolls independently */

#thumbsViewport{ overflow-y:auto; }

.product-gallery #thumb_images .thumb-item {
    width: 150px;
    border: 0px solid #efefef;
}


hr {
    margin: 1rem 0;
    color: inherit;
    background-color: #d0cdcb;
    border: 0;
    opacity: 1;
}


.series-icons{
    padding: 30px 10px;
}

.product-gallery .owl-nav {
    display: none;
}


/* Variant Picker */
.product-side-content a {
    color: #1e1e1e !important;
}

.product-side-content li a.selected {
    padding: 17px 10px !important;
    font-weight: 500;
}
.product-side-content .js-nav-picker.activated li:first-child a, .js-nav-picker li a {
    color: inherit;
    position: relative;
    display: block;
    width: 100%;
    background-color: #f6f4f3;
}
.product-side-content .js-nav-picker.not-activated li a:hover {
    background-color: #4db6ac;
    color: #ffffff !important;
}
.product-side-content a.btn.r-0.btn-primary1.btn-white.product-control:hover {
    background-color: #21827F;
}
.product-side-content a.btn.r-0.btn-primary1.btn-white.product-control:hover span{
    color: #ffffff;
}
.product-side-content form a.btn.btn-white.product-control.w-100.pro-js-load-modal-content:hover {
    background-color: #21827F;
}
.product-side-content form a.btn.btn-white.product-control.w-100.pro-js-load-modal-content:hover span {
    color: #ffffff;
}

.product-side-content .js-nav-picker li a:hover {
    background-color: #4db6ac;
    color: #fff !important;
}
.product-side-content li.js-nav-category-variation a:hover {
    background-color: #4db6ac !important;
}

/* .product-side-content .js-nav-picker {
    position: absolute;
} */


.product-side-content .sku-bold {
    font-weight: 500; /* bold SKU */
}

.product-side-content .sku-bold span {
    font-weight: 400; /* span stays normal */
}

.product-side-content ul.js-nav-picker {
    border: 1px solid #d0cdcb;
}

.product-side-content a.btn.r-0.btn-primary1.btn-white.product-control.w-100 {
    border: 1px solid #72b3ac;
}



    .button-column {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        gap: 15px;              /* Space between each div/button */
    }

    .button-column div {
        width: 100%;
        flex: 1 1 calc(33.333% - 10px);
    }

    .button-column a,
    .button-column button {
        display: flex;
        justify-content: center;
        align-items: center;
        width: 100%;
        /* height: 80px; */
        /* padding: 10px 0px; */
        text-decoration: none;
        border-radius: 5px;
        cursor: pointer;
        transition: all 0.3s;
    }


.key-features ul {
    padding-left: 1em;
}

.key-features ul {
    list-style-type: disc;
    list-style-position: inside;
    padding-left: 0px;
}

.key-features li {
    color: inherit;
}

.key-features ul li::marker {
    color: #4db6ac; /* Set the bullet (marker) color to green */
}



.pd-lr{
    padding-left: 50px;
    padding-right: 50px;
}






/* === Wrapper === */
.product-tabs {
  width: 100%;
}

/* === Hide radios === */
.product-tabs input[type="radio"] {
  display: none;
}

/* Active tab indicator (bottom border) */
#tab-description:checked ~ .tab-bar label[for="tab-description"],
#tab-specs:checked ~ .tab-bar label[for="tab-specs"],
#tab-variants:checked ~ .tab-bar label[for="tab-variants"] {
  background: #fff;
  color: #4db6ac;
  border-bottom:3px solid #4db6ac;
}

/* === Tab content === */
.product-tabs .tab-content {
  display: none;
  background: #fff;
  padding: 40px 20px;
  margin: 0 auto;
  border: 1px solid #ece9e8;
  border-top: none;
}

/* Show active content */
#tab-description:checked ~ #content-description,
#tab-specs:checked ~ #content-specs,
#tab-variants:checked ~ #content-variants {
  display: block;
}


/* Desktop: tab labels horizontal */
.tab-left {
  display: flex;
  /* gap: 10px; */
}

.tab-bar .tab-label:hover {
    background: #21827F;
    color: #ffffff;
}

/* Mobile styles */
@media (max-width: 767px) {
  .tab-left {
    display: block;
    width: 100%;
  }

  /* Labels full width */
  .tab-label {
    display: block;
    width: 100%;
    padding: 15px 20px;
    background: #f4f4f4;
    border: 1px solid #ddd;
    border-radius: 4px 4px 0 0;
    font-weight: 700;
    cursor: pointer;
    margin-bottom: 0;
  }

  /* Tab content styles for stacked view */
  .product-tabs .tab-content {
    padding: 20px;
    border: 1px solid #ddd;
    border-top: none;
    border-radius: 0 0 4px 4px;
    margin-bottom: 15px;
  }

  /* Show content only if it follows checked label */
  #tab-description:checked ~ .tab-bar .tab-left label[for="tab-description"] + #content-description,
  #tab-specs:checked ~ .tab-bar .tab-left label[for="tab-specs"] + #content-specs,
  #tab-variants:checked ~ .tab-bar .tab-left label[for="tab-variants"] + #content-variants {
    display: block;
  }

  .tab-bar {
        display: flex;
        gap: 30px;
        background: #ece9e8;
        border-bottom: 1px solid #ece9e8;
        padding: 0px;
        justify-content: space-between;
        flex-direction: column;
        align-items: center;
    }

    .product-side-content {
        width: 100%;
    }
}


@keyframes fadeIn {
  from { opacity: 0; }
  to { opacity: 1; }
}



/* ---------- VARIABLES ---------- */
:root {
  --tab-bg: #f6f4f3;
  --tab-border: #d0cdcb; /* outlined border color */
  --tab-text: #2f2f2f;
  --tab-hover: #ece9e8;
  --tab-active: #4db6ac; /* green accent */
  --padding-x: 24px;
}

/* ---------- ACCESSIBILITY ---------- */
.sr-only {
  position: absolute !important;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

/* ---------- BASE ---------- */
.tab-radio {
  position: absolute;
  left: -9999px;
}

/* Desktop Tab Bar */
.tab-bar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  background: var(--tab-bg);
  border: 1px solid var(--tab-border);
  white-space: nowrap;
  padding: 0px 50px;
  position: sticky;
  top: 59px;
  z-index: 1;
}

/* Only apply to .fixed-header when a .tab-bar exists anywhere on the page */
body:has(.tab-bar) .fixed-header .navbar {
  background-color: #ffffff;
  box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.05),
              0 1.5rem 2.2rem rgba(0, 0, 0, 0.0);
}


.tab-left {
  display: flex;
  flex-wrap: nowrap;
  overflow: hidden; /* keeps borders seamless */
}

.tab-label {
  position: relative;
  display: inline-block;
  padding: 12px var(--padding-x);
  cursor: pointer;
  user-select: none;
  color: var(--tab-text);
  background: #ffffff;
  border: 1px solid var(--tab-border);
  border-top: none;
  border-right: none; /* prevent double borders between tabs */
  border-bottom: 3px solid transparent; /* keeps consistent height */
  font-weight: 500;
  line-height: 1;
  transition: background 0.2s ease;
  height: 40px;
}

/* Restore right border on the last tab */
.tab-left .tab-label:last-child {
  border-right: 1px solid var(--tab-border);
}

/* Hover state */
.tab-label:hover {
  background: var(--tab-hover);
}


/* Rectangular active underline */
.tab-label::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -2px;
  height: 0;
  background: var(--tab-active);
  transform: scaleX(0);
}

/* Right-side support info */
.tab-right {
  flex: 1;
  text-align: right;
  padding-right: var(--padding-x);
  font-weight: 500;
}

.tab-right a {
  color: #3A938A;
  text-decoration: none;
}

.tab-right a:hover {
  color: #21827F;
  text-decoration: underline;
}

/* Mobile dropdown container (hidden on desktop) */
.tab-mobile {
  display: none;
  background: var(--tab-bg);
  border: 1px solid var(--tab-border);
  border-radius: var(--radius) var(--radius) 0 0;
  padding: 12px;
  gap: 12px;
}

.tab-select {
  width: 100%;
  padding: 10px 12px;
  border: 1px solid var(--tab-border);
  background: #fff;
  color: var(--tab-text);
}

.tab-right-mobile {
  margin-top: 8px;
  padding: 0 2px 2px;
  text-align: left;
}

/* Default: show text, hide icon */
.tab-phone-icon {
  display: none;
  font-size: 1.4em; /* Adjust as needed */
  text-decoration: none;
}

/* On small screens: hide text, show icon */
@media (max-width: 600px) {
  .tab-phone-text {
    display: none;
  }
  .tab-phone-icon {
    display: inline-block;
  }
}

/* Panels */
.tab-panels {
  border: 1px solid var(--tab-border);
  border-top: none;
  background: #fff;
}

.tab-panel {
  display: none;
  color: var(--tab-text);
  line-height: 1.6;
}

/* Active states (radios) */
#tab-desc:checked ~ .tab-bar .tab-left label[for="tab-desc"],
#tab-specs:checked ~ .tab-bar .tab-left label[for="tab-specs"],
#tab-variants:checked ~ .tab-bar .tab-left label[for="tab-variants"] {
  color: #21827F;
  background-color: #ffffff;
  border-bottom: 5px solid #21827F;
}

#tab-desc:checked ~ .tab-bar .tab-left label[for="tab-desc"]::after,
#tab-specs:checked ~ .tab-bar .tab-left label[for="tab-specs"]::after,
#tab-variants:checked ~ .tab-bar .tab-left label[for="tab-variants"]::after {
  transform: scaleX(1);
}

#tab-desc:checked ~ .tab-panels #panel-desc,
#tab-specs:checked ~ .tab-panels #panel-specs,
#tab-variants:checked ~ .tab-panels #panel-variants {
  display: block;
}

/* ---------- RESPONSIVE ---------- */
@media (max-width: 640px) {
  /* Hide desktop bar, show dropdown */
  .tab-bar {
    display: none;
  }

  .tab-mobile {
    display: block;
  }
}





.variant-differences-cards {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 40px;
}

.variant-differences-cards div {
    background-color: #f5f4f3;
    width: 100%;
    padding: 20px;
}

.shared-specs dl {
    display: flex;
}

.shared-specs dt {
    font-weight: bold;
    align-self: start;
    background-color: #f4f4f3;
    width: 100%;
    padding: 10px 20px;
}

.shared-specs dd {
    margin: 0;
}

/* Alternate row background color */
table tr:nth-child(odd) {
    background: #f6f4f3; /* Standard Table Light background for odd rows */
}

table tr:nth-child(even) {
    background: white; /* White background for even rows */
}

tr.fw-header {
  background: #ece9e8; /* Group Header Green */
}

tr.even-row {
  background: #f6f4f3; /* light gray */
}

tr.odd-row {
  background: #ffffff; /* white */
}

/* Ensure <th> and <td> have the same width for proper alignment */
th, td {
    width: 50%; /* Adjust width to fit the layout you need */
    padding: 10px; /* Optional for better spacing */
    text-align: left; /* Optional for consistent alignment */
}


.variant-cards-wrapper {
    display: flex;
    flex-wrap: wrap;
    gap: 20px; /* spacing between cards */
}

.variant-card {
    flex: 1 1 calc(25% - 20px);
    box-sizing: border-box;
    border: 1px solid #d0cdcb;
    background-color: #fff;
    /* box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1); */
}

.variant-card > p{
    padding: 0px 15px;
}

/* .variant-img img {
    height: 100px;
    width: 100px;
} */

.card-top {
    display: flex;
    gap: 20px;
    min-height: 175px;
    padding: 15px;
}

.card-top .variant-img {
    width: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.variant-details {
    width: 100%;
}

.variant-details .buttons-block button {
    background-color: #21827F;
    border-radius: 0px;
    padding: 0.65rem 1.25rem;
    font-size: inherit;
    line-height: inherit;
    border: 1px solid #21827F;    
}

.variant-details .buttons-block button:hover {
    background-color: transparent;
    border: 1px solid #21827F;
}

.variant-details .buttons-block button:hover span{
    color: #21827F;
}


/* Make it responsive on smaller screens */
@media (max-width: 900px) {
    .variant-card {
        flex: 1 1 calc(50% - 20px); /* 2 cards per row */
    }
}

@media (max-width: 600px) {
    .variant-card {
        flex: 1 1 100%; /* 1 card per row */
    }
}

.spec-table-series {
    width: 100%;
    border-collapse: collapse;
    margin-top: 10px;
}

.spec-table-series tr:nth-child(odd) {
    background-color: #f6f4f3; /* light grey background Spec Table*/
}

.spec-table-series tr:nth-child(even) {
    background-color: #ffffff; /* white background Spec Table */
}

table.spec-table-series, table.spec-table-variant {
    color: #1e1e1e; /* Table text color */
    font-size: 0.93rem;
    width: 100%;
}

table.spec-table-series td, table.spec-table-variant td{
    border-right: solid 1px #ffffff;
    padding: 3px 15px;
    vertical-align: baseline;
}

table.spec-table-series td{
    padding: 10px;
}

table.spec-table-variant td:last-child {
    border-right: 0px;
}

tr.spec-table-header {
    background-color: #ece9e8 !important;
}

.variant-card tr.spec-table-header th {
    padding: 4px 15px;
}

table.spec-table-series td:first-child {
    width: 15%;
}



:root { --thumb-gap: 8px; --accent:#4db6ac; }

.main-slide picture,
.main-slide img {
aspect-ratio: 1 / 1;
display: block;
}

/* Outer shell */
.gallery{
display:flex; gap:16px; align-items:flex-start;
background:#fff; border:0px solid #d0cdcb; border-radius:10px; padding:16px; flex-direction: row;
}

/* Left thumbnails (20%) + center divider */
.thumbs-col{
width:20%; min-width:140px; display:flex; flex-direction:column; position:relative;
}
.thumbs-col::after{ /* divider centered in the 16px gap */
content:""; position:absolute; top:0; bottom:0; right:-8px; width:1px; background:#d0cdcb;
}

.thumbs-viewport{
height:0; /* set via JS to show exactly 4 squares */
overflow-y:auto; overflow-x:hidden; overscroll-behavior:contain;
scrollbar-width:none; /* hide scrollbar (Firefox) */
padding-right:6px; /* keeps 1px selected border visible on right edge */
}
.thumbs-viewport::-webkit-scrollbar{ width:0; height:0; } /* hide scrollbar (WebKit) */

.thumbs-list{ display:flex; flex-direction:column; gap:var(--thumb-gap); margin:0; padding:0; list-style:none; }
.thumb{
width:100%; aspect-ratio:1/1;
display:flex; align-items:center; justify-content:center;
background:#fff; border:1px solid transparent; cursor:pointer;
}
.thumb img{ width:100%; height:100%; object-fit:contain; display:block; }

/* 1px green border for selected thumb */
.thumb.is-active{ border:1px solid var(--accent); box-shadow:none; }
.thumb:focus-visible{ outline:1px solid var(--accent); outline-offset:2px; }

/* Right/main (80%) using Owl */
.main-col{ width:80%; }

/* Square slide height via spacer so Owl can measure reliably (no CLS) */
.main-carousel .main-slide{ position:relative; background:#fff; }
.main-carousel .main-slide::before{ content:""; display:block; padding-top:100%; } /* 1:1 square */
.main-carousel .main-slide img{
position:absolute; inset:0;
max-width:100%; max-height:100%;
width:auto; height:auto; margin:auto; display:block;
object-fit:contain; /* change to 'cover' for edge-to-edge crop */
}

/* Owl “no peek” and chrome */
.main-carousel .owl-stage-outer{ overflow:hidden; }
.main-carousel .owl-item{ margin:0 !important; }
.main-carousel .owl-nav{ display:none; }
.main-carousel .owl-dots{ margin-top:10px; }

/* Prevent sideways drift while resizing */
.is-resizing .main-carousel .owl-stage{ transition:none !important; }

/* Mobile: stack, hide thumbs */
@media (max-width: 767.98px){
.gallery{ flex-direction:column; }
.thumbs-col{ display:none; }
.main-col{ width:100%; }
}


/* Prevent Swiper vertical slides from stretching infinitely */
.thumbs-swiper {
  height: 100% !important; /* keeps inside column */
}

.thumbs-swiper .swiper-wrapper {
  height: 100% !important;
}

.thumbs-swiper .swiper-slide {
  height: auto !important;
  flex-shrink: 0 !important;
}

span.swiper-pagination-bullet.swiper-pagination-bullet-active {
    background: #4db6ac;
}
span.swiper-pagination-bullet {
    background: #f6f4f3;
    opacity: 1;
}

/* --- Thumbs scroll button --- */
.thumbs-col {
  position: relative;
}

.thumbs-scroll-down {
  position: absolute;
  bottom: 4px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 10;
  background: rgba(255, 255, 255, 0.85);
  border: 1px solid #ccc;
  border-radius: 50%;
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: background 0.2s, opacity 0.2s;
}

.thumbs-scroll-down:hover {
  background: #f1f1f1;
}

.thumbs-scroll-down.hidden {
  opacity: 0;
  pointer-events: none;
}



.icon-logos {
    display: flex;
    gap: 5px;
    flex-wrap: wrap;
}

.icon-logos .logo img {
    height: 64px;
    width: 64px;
}


.spec-icons {

display: flex;

flex-wrap: wrap;

gap: 8px;

justify-content: flex-start; /* desktop left */

align-items: center;

text-align: center;

}

.spec-icons .icon {

width: 64px;

height: 64px;

flex: 0 0 auto;

display: flex;

align-items: center;

justify-content: center;

}

.spec-icons .icon img {

display: block;

width: 100%;

height: 100%;

object-fit: contain;

}

/* Tablet & Mobile: center icons */

@media (max-width: 991.98px) {

.spec-icons { justify-content: center; }

}

/* Mobile: slightly smaller */

@media (max-width: 575.98px) {

.spec-icons .icon { width: 48px; height: 48px; }

}


/* Info Boxes Below */
.info-boxes {
  display: flex;
  flex-wrap: nowrap;
  gap: 20px;
}

.info-boxes .left,
.info-boxes .right {
  flex: 1 1 45%;
  padding: 2rem;
  color: #fff;
  background: #1e2338;
  position: relative; /* Required for ::before overlay */
}

/* Background image on right box */
.info-boxes .right {
  /*background-image: url('https://staging.things-embedded.com/_cache/Compact-Jetson-AGX-Xavier-Board-1-1200x1200.webp');*/
  background-size: cover !important;
  background-position: center;
  background-repeat: no-repeat;
  color: #fff;
  position: relative;
}

/* Optional overlay for better contrast */
.info-boxes .left::before,
.info-boxes .right::before {
    content: "";
    position: absolute;
    inset: 0;
    background: #1e2338;
    opacity: 0.8;
    z-index: 1;
}

.info-boxes .left > *,
.info-boxes .right > * {
    position: relative;
    z-index: 2;
}


.info-boxes button {
  background-color: #fff;
  border: none;
  padding: 0.6rem 1.2rem;
  border-radius: 4px;
  cursor: pointer;
  color: #1e2338;
}

.info-boxes a.btn {
    background-color: #ffffff;
    color: #1e2338;
    border-radius: 0px;
    padding: 10px 15px;
}

.info-boxes * {
    color: #ffffff;
}

.info-box-btns {
    display: flex;
    gap: 10px;
}


/* Responsive */

@media (min-width: 1726px) {
    .card-top .variant-img {
        width: 200px;
    }
}

@media (max-width: 1022px) {
  .product-gallery {
        width: 50%;
        display: flex;
        flex-direction: column;
        align-items: center;
    }

   .thumbs-col{
    display: none;
  }

  .spec-variants {
    display: flex;
    flex-wrap: wrap;
  }

  .tab-spec-table, .tab-variants-cards {
    width: 100%;
  }
}
 

@media (max-width: 768px) {
    .shared-specs dl {
        grid-template-columns: 1fr;
    }

    table.spec-table-series td:first-child {
        width: 40%;
    }

    .product-header {
        flex-direction: column;
    }

    .product-gallery {
        width: 100%;
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    .product-header div#thumb_images {
        height: 80px;
        width: 100%;
        flex-direction: row;
        justify-content: space-around;
    }

    .category-cards-section #thumb_images .owl-stage {
        display: flex;
        margin: 0 auto;
        flex-direction: row;
    }

    .product-gallery .owl-nav {
        display: block;
        position: relative;
        top: 15px;
        left: -48px;
        height: 40px;
        width: 21.5rem;
    }
    .product-gallery .owl-nav {
        display: none !important;
    }


    .tab-wrap .tab-right-mobile {
        display: flex;
        margin-top: 8px;
        justify-content: center;
    }

    .button-column {
      display: flex;
      flex-direction: row;
      flex-wrap: wrap;
      gap: 15px;
    }
    .button-column.mt-3.mb-3 {
      margin-top: 1.5rem !important;
  }

  .product-side-content .brand-logo, .taxonomy-page h1 {
      text-align: center;
  }

  .button-column > div {
    flex: 1 1 calc(50% - 10px);
    width: 47%;
  }

  .button-column a,
    .button-column button {
        height: 80px;
        padding: 0px 80px;
    }

  .tab-spec-table, .tab-variants-cards {
      width: 100%;
  }  

  .series-icons .spec-icons {
      display: flex;
      flex-wrap: wrap;
      justify-content: center;
  }

  .icon-logos {
        display: flex;
        gap: 10px;
        flex-wrap: wrap;
        justify-content: space-around;
  }

  .info-boxes {
      display: flex;
      flex-wrap: nowrap;
      gap: 20px;
      flex-direction: column;
  }
  
  .taxonomy-page div {
      margin: 0 auto;
  }
}

