/* Responsive catalogue layout, scoped to the Shop archive. */
@media (max-width: 1199px) {
  :is(.woocommerce-shop, .tax-product_cat) .site-main > .container {
    width: 100%;
    max-width: 100% !important;
    padding-inline: clamp(16px, 3vw, 32px);
  }
  :is(.woocommerce-shop, .tax-product_cat) .shop-page-wrap .courses-page-section > .container {
    width: 100%;
    max-width: 100% !important;
    padding-inline: 0;
  }
  :is(.woocommerce-shop, .tax-product_cat) .shop-page-wrap .courses-page-section .nav-tabs {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 8px;
    overflow: visible !important;
    white-space: normal;
    padding: 0;
  }
  :is(.woocommerce-shop, .tax-product_cat) .shop-page-wrap .courses-page-section .nav-tabs::after { content: none; }
  :is(.woocommerce-shop, .tax-product_cat) .shop-page-wrap .courses-page-section .nav-tabs li a {
    width: 100%;
    min-width: 0;
    padding: 12px 8px;
    font-size: 16px;
    line-height: 1.3;
    white-space: normal;
  }
  :is(.woocommerce-shop, .tax-product_cat) .shop-page-wrap #course > .row { margin-inline: 0; }
  :is(.woocommerce-shop, .tax-product_cat) .shop-page-wrap #product-wrapper-content { gap: 24px 18px !important; }
  :is(.woocommerce-shop, .tax-product_cat) .shop-page-wrap #product-wrapper-content .card {
    flex: 0 0 calc((100% - 18px) / 2);
    min-width: 0;
  }
  :is(.woocommerce-shop, .tax-product_cat) .shop-page-wrap .folder-card .card-body { overflow-wrap: break-word; }
}
@media (max-width: 767px) {
  :is(.woocommerce-shop, .tax-product_cat) .shop-page-wrap .courses-page-section .nav-tabs {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    width: 100%;
    padding: 0;
    overflow: visible !important;
    white-space: normal;
  }
  :is(.woocommerce-shop, .tax-product_cat) .shop-page-wrap .courses-page-section .nav-tabs::after { content: none; }
  :is(.woocommerce-shop, .tax-product_cat) .shop-page-wrap .courses-page-section .nav-tabs li,
  :is(.woocommerce-shop, .tax-product_cat) .shop-page-wrap .courses-page-section .nav-tabs li a {
    width: 100%;
    min-width: 0;
  }
  :is(.woocommerce-shop, .tax-product_cat) .shop-page-wrap .courses-page-section .nav-tabs li a {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    padding: 8px 10px;
    font-size: 14px;
    line-height: 1.3;
    white-space: normal;
  }
  :is(.woocommerce-shop, .tax-product_cat) .shop-page-wrap #sidebar.col-md-3,
  :is(.woocommerce-shop, .tax-product_cat) .shop-page-wrap #course .col-md-9 {
    width: 100%;
    flex: 0 0 100%;
    max-width: 100%;
    padding-inline: 0;
  }
  :is(.woocommerce-shop, .tax-product_cat) .shop-page-wrap #product-wrapper-content { padding-top: 28px; }
}
@media (max-width: 600px) {
  :is(.woocommerce-shop, .tax-product_cat) .shop-page-wrap #product-wrapper-content .card { flex-basis: 100%; }
}

/* Product detail: prevent the fixed 500px gallery from clipping its summary. */
@media (max-width: 991px) {
  .single-product .product-page {
    flex-direction: column;
    align-items: stretch;
    gap: 28px;
  }
  .single-product .product-page > .image-gallery,
  .single-product .product-page > .entry-summary {
    width: 100%;
    max-width: 100%;
    min-width: 0;
  }
  .single-product .product-page > .image-gallery {
    max-width: 560px;
    margin-inline: auto;
  }
  .single-product .product-page > .entry-summary {
    margin: 0;
    overflow-wrap: break-word;
  }
}
