/* REP&SWEAT Gymshark-style homepage v2
   The layout, colours and spacing are primarily stored in WPBakery modules.
   This CSS only handles cropping, WooCommerce card cleanup and responsive polish. */

.rsw-gs-page .wpb_content_element,
.rsw-gs-page .vc_btn3-container { margin-bottom: 0; }

.rsw-gs-heading h2,
.rsw-gs-card .vc_custom_heading h3 {
  font-weight: 700;
  letter-spacing: -.02em;
}

.rsw-gs-view-all p {
  margin: 4px 0 0;
  text-align: right;
}
.rsw-gs-view-all a,
.rsw-gs-card a {
  color: #111;
  font-size: 12px;
  font-weight: 700;
  text-decoration: none;
}

.rsw-gs-products { margin-top: 22px !important; }
.rsw-gs-products ul.products {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0,1fr));
  gap: 5px;
  margin: 0 !important;
}
.rsw-gs-products ul.products::before,
.rsw-gs-products ul.products::after { display:none !important; }
.rsw-gs-products ul.products li.product {
  float: none !important;
  width: auto !important;
  margin: 0 !important;
  padding: 0 0 18px !important;
}
.rsw-gs-products ul.products li.product a img {
  width: 100% !important;
  aspect-ratio: 4 / 5;
  object-fit: cover;
  margin: 0 0 14px !important;
  background: #f4f4f4;
}
.rsw-gs-products .woocommerce-loop-product__title {
  font-size: 14px !important;
  font-weight: 600 !important;
  color: #111 !important;
  padding: 0 !important;
  margin: 0 0 5px !important;
}
.rsw-gs-products .price {
  color: #111 !important;
  font-size: 13px !important;
  font-weight: 500 !important;
}
.rsw-gs-products .button { display:none !important; }

.rsw-gs-kicker p {
  margin: 0 0 12px;
  color: #F05A28;
  font-size: 11px;
  letter-spacing: 1.8px;
}
.rsw-gs-kicker-blue p { color:#27B4E7; }

.rsw-gs-hero-text,
.rsw-gs-light-copy {
  color:#fff;
  font-size: 16px;
  line-height: 1.55;
}
.rsw-gs-hero-text { margin: 16px 0 22px !important; }

.rsw-gs-card-image img {
  display:block;
  width:100%;
  height:430px;
  object-fit:cover;
}
.rsw-gs-more-image img {
  display:block;
  width:100%;
  height:300px;
  object-fit:cover;
}
.rsw-gs-card .vc_custom_heading { margin-top:14px; margin-bottom:5px; }
.rsw-gs-card .wpb_text_column {
  color:#4f4f4f;
  font-size:13px;
  line-height:1.5;
}
.rsw-gs-card .wpb_text_column p { margin:0 0 5px; }

.rsw-gs-banner { min-height:560px; }
.rsw-gs-banner > .wpb_column { min-height:560px; }

.rsw-gs-seo-copy .wpb_text_column {
  font-size:15px;
  line-height:1.7;
  color:#404040;
}

/* Keep Woo/theme default styling from adding rounded cards/shadows. */
.rsw-gs-page .vc_btn3 { border-radius:0 !important; box-shadow:none !important; }
.rsw-gs-products ul.products li.product { box-shadow:none !important; background:transparent !important; }

@media (max-width: 991px) {
  .rsw-gs-card-image img { height:320px; }
  .rsw-gs-more-image img { height:240px; }
  .rsw-gs-products ul.products { grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px 6px; }
}

@media (max-width: 767px) {
  .rsw-gs-shop,
  .rsw-gs-carousel-section,
  .rsw-gs-popular,
  .rsw-gs-train,
  .rsw-gs-more,
  .rsw-gs-seo-copy {
    padding-left:16px !important;
    padding-right:16px !important;
  }

  .rsw-gs-view-all p { text-align:left; margin:8px 0 18px; }

  .rsw-gs-hero .wpb_column { width:100% !important; }
  .rsw-gs-hero > .wpb_column:last-child { display:none; }
  .rsw-gs-hero-copy {
    padding-left:22px !important;
    padding-right:22px !important;
    background-color:rgba(0,0,0,.55) !important;
  }
  .rsw-gs-hero-space .vc_empty_space { height:260px !important; }
  .rsw-gs-hero-title h1 { font-size:40px !important; }

  .rsw-gs-banner .wpb_column { width:100% !important; min-height:0; }
  .rsw-gs-banner > .wpb_column:first-child { min-height:320px; }
  .rsw-gs-banner-copy { padding:46px 22px !important; }

  .rsw-gs-card { margin-bottom:34px; }
  .rsw-gs-card-image img { height:auto; aspect-ratio:4 / 5; }
  .rsw-gs-more-image img { height:auto; aspect-ratio:4 / 3; }

  .rsw-gs-products ul.products { grid-template-columns:repeat(2,minmax(0,1fr)); }
}