/*
 * Standalone /groups/ pages share the site chrome.  This file intentionally
 * scopes only their content and is loaded after the legacy group styles.
 */
.group-landing-page .variant-row.is-backorder .stock-chip--backorder {
  border-color: rgba(17, 133, 177, .30);
  background: linear-gradient(135deg, rgba(230, 248, 255, .95), rgba(245, 252, 255, .92));
  color: #096f9d;
}

.group-landing-page .variant-row.is-backorder .stock-chip--backorder::before {
  background: #1193c9;
}

.group-landing-page .variant-row.is-supplier .stock-chip--supplier {
  border-color: rgba(13, 139, 102, .28);
  background: linear-gradient(135deg, rgba(234, 251, 244, .96), rgba(247, 253, 250, .92));
  color: #08784d;
}

@media (max-width: 800px) {
  .group-landing-page .group-landing-main {
    width: min(100%, 680px);
    padding: 12px 12px 36px;
  }

  .group-landing-page .category-group-rail {
    position: relative;
    top: auto;
    right: auto;
    left: auto;
    z-index: 1;
    height: auto;
    min-height: 0;
    margin: 0 0 12px;
  }

  .group-landing-page .category-group-rail__handle {
    display: none;
  }

  .group-landing-page .category-group-rail__drawer {
    position: relative;
    transform: none;
    padding: 10px 10px 8px;
    border: 1px solid rgba(201, 225, 234, .9);
    border-radius: 16px;
    box-shadow: 0 8px 18px rgba(23, 61, 83, .07);
  }

  .group-landing-page .category-group-rail__context {
    margin: 0 3px 7px;
  }

  .group-landing-page .category-group-rail__viewport {
    gap: 8px;
    padding: 2px 1px 4px;
    scroll-snap-type: x proximity;
  }

  .group-landing-page .category-group-rail__item {
    flex-basis: 48px;
    width: 48px;
    height: 48px;
    border-radius: 12px;
    scroll-snap-align: start;
  }

  .group-landing-page .category-group-rail__image img {
    padding: 5px;
  }

  .group-landing-page .category-group-rail__control {
    display: none;
  }

  .group-landing-page .group-page-intro {
    position: relative;
    top: auto;
    z-index: 1;
    margin-bottom: 12px;
  }

  .group-landing-page .group-landing-titlebar {
    padding: 15px 16px 16px;
    border-radius: 18px;
    box-shadow: 0 8px 22px rgba(15, 49, 66, .08);
  }

  .group-landing-page .group-landing-titlebar h1 {
    padding-right: 0;
    font-size: clamp(22px, 6.1vw, 29px);
    font-weight: 700;
    line-height: 1.16;
  }

  .group-landing-page .group-landing-titlebar__label {
    margin-bottom: 7px;
    font-size: 10px;
    letter-spacing: .11em;
  }

  .group-landing-page .group-page-intro > .group-breadcrumbs {
    position: relative !important;
    top: auto !important;
    min-height: 0;
    margin-top: 8px;
    overflow-x: auto;
    scrollbar-width: none;
  }

  .group-landing-page .group-page-intro > .group-breadcrumbs::-webkit-scrollbar {
    display: none;
  }

  .group-landing-page .group-breadcrumbs__full {
    display: none;
  }

  .group-landing-page .group-breadcrumbs__compact {
    display: flex;
    min-width: max-content;
  }

  .group-landing-page .is-product-group-page .group-series__summary.landing-premium-hero {
    display: flex;
    flex-direction: column;
    gap: 16px;
    min-height: 0;
    padding: 18px;
    border: 1px solid #cfe6ed !important;
    border-radius: 20px 20px 0 0 !important;
    background:
      radial-gradient(circle at 94% 2%, rgba(108, 223, 204, .25), transparent 38%),
      linear-gradient(145deg, #fbfeff, #edf9fb 62%, #f5fdf9) !important;
    box-shadow: 0 13px 30px rgba(26, 88, 111, .08) !important;
  }

  .group-landing-page .landing-premium-hero__visual {
    order: -1;
    width: 100%;
    min-height: 190px;
    margin: 0;
    opacity: 1;
  }

  .group-landing-page .landing-premium-hero__image {
    width: min(100%, 310px) !important;
    height: 188px;
    max-height: none;
    object-fit: contain !important;
    background: transparent !important;
  }

  .group-landing-page .landing-hero-gallery {
    bottom: 0;
  }

  .group-landing-page .landing-premium-hero__copy {
    display: block;
    width: 100%;
  }

  .group-landing-page .landing-technical-brief {
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 14px;
    border-radius: 14px;
    background: rgba(255, 255, 255, .76);
  }

  .group-landing-page .landing-technical-brief dl {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .group-landing-page .is-product-group-page .group-landing-series .group-series__footer {
    min-height: 58px;
    margin-top: 0;
    padding: 12px 16px;
    border-color: #cfe6ed;
    border-radius: 0 0 20px 20px;
  }

  .group-landing-page .group-series__footer h2 {
    font-size: 18px;
    line-height: 1.2;
  }

  .group-landing-page .group-series__toggle {
    min-width: 42px;
    min-height: 42px;
  }

  .group-landing-page .group-landing-series .variant-list {
    contain: none;
    overflow: visible;
    padding: 10px 0 0;
    background: transparent;
  }

  .group-landing-page .is-product-group-page .variant-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 12px;
    align-items: center;
    margin: 0 0 10px;
    padding: 16px;
    border: 1px solid rgba(207, 230, 237, .96);
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 8px 20px rgba(23, 73, 93, .06);
  }

  .group-landing-page .is-product-group-page .variant-info {
    grid-column: 1 / -1;
    gap: 7px;
  }

  .group-landing-page .is-product-group-page .variant-info .variant-title {
    -webkit-line-clamp: 3;
    font-size: 14px;
    line-height: 1.35;
  }

  .group-landing-page .is-product-group-page .variant-price {
    grid-column: 1;
    min-width: 0;
  }

  .group-landing-page .is-product-group-page .variant-price strong {
    font-size: 18px;
  }

  .group-landing-page .is-product-group-page .variant-stock {
    grid-column: 2;
    justify-self: end;
    min-width: 0;
  }

  .group-landing-page .is-product-group-page .variant-stock:has(> .stock-chip),
  .group-landing-page .is-product-group-page .variant-stock .stock-list,
  .group-landing-page .is-product-group-page .variant-stock .stock-empty {
    width: auto;
    max-width: 46vw;
  }

  .group-landing-page .is-product-group-page .variant-stock .stock-list {
    border: 0;
    background: transparent;
  }

  .group-landing-page .is-product-group-page .stock-chip {
    min-height: 0;
    padding: 8px 10px;
    border-radius: 13px;
    text-align: right;
    white-space: normal;
  }

  .group-landing-page .is-product-group-page .stock-chip span,
  .group-landing-page .is-product-group-page .stock-chip small {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .group-landing-page .is-product-group-page .variant-actions {
    grid-column: 1 / -1;
    grid-template-columns: minmax(112px, .86fr) minmax(148px, 1.14fr);
    gap: 10px;
    width: 100%;
  }

  .group-landing-page .is-product-group-page .variant-qty,
  .group-landing-page .is-product-group-page .variant-cart {
    min-height: 48px;
  }

  .group-landing-page .is-product-group-page .variant-qty__label {
    display: none;
  }

  .group-landing-page .is-product-group-page .variant-qty__control {
    width: 100%;
    min-height: 48px;
  }

  .group-landing-page .is-product-group-page .variant-cart {
    width: 100%;
    font-size: 14px;
  }

  .group-landing-page .is-product-group-page .variant-row.has-personal-preview {
    grid-template-columns: 72px minmax(0, 1fr);
  }

  .group-landing-page .is-product-group-page .variant-row.has-personal-preview .variant-personal-preview {
    grid-column: 1;
    grid-row: 1;
    width: 68px;
    height: 68px;
  }

  .group-landing-page .is-product-group-page .variant-row.has-personal-preview .variant-info {
    grid-column: 2;
    grid-row: 1;
  }

  .group-landing-page .is-product-group-page .variant-row.has-personal-preview .variant-price {
    grid-column: 1;
  }

  .group-landing-page .is-product-group-page .variant-row.has-personal-preview .variant-stock {
    grid-column: 2;
  }

  .group-landing-page .landing-variant-empty {
    margin: 0;
    padding: 20px 16px;
    border: 1px dashed #c6dfe8;
    border-radius: 16px;
    background: #fbfeff;
    color: #496879;
    line-height: 1.5;
  }

  .group-landing-page .landing-detail {
    margin-top: 24px;
    padding: 18px;
    border-radius: 18px;
  }
}

@media (max-width: 380px) {
  .group-landing-page .group-landing-main {
    padding-right: 9px;
    padding-left: 9px;
  }

  .group-landing-page .is-product-group-page .variant-row {
    padding: 14px;
  }

  .group-landing-page .is-product-group-page .variant-actions {
    grid-template-columns: 1fr;
  }

  .group-landing-page .is-product-group-page .variant-qty__label {
    display: inline;
  }
}
