/*
Theme Name: RaySpeed Child
Theme URI: https://example.local/
Author: RaySpeed
Description: Bootscore child theme for the AF Rayspeed WooCommerce build.
Version: 0.1.0
Template: bootscore
Requires at least: 6.8
Requires PHP: 8.3
Text Domain: rayspeed-child
*/

/* Global variables */
:root {
  --rs-red: #ed2f2f;
  --rs-red-dark: #d82127;
  --rs-ink: #2c3035;
  --rs-muted: #6d737a;
  --rs-line: #e8e8e8;
  --rs-soft: #f5f5f5;
  --rs-panel: #ffffff;
  --rs-container: 1290px;
}

/* Typography and base elements */
body {
  color: var(--rs-ink);
  background: #fff;
  font-size: 14px;
}

a {
  color: inherit;
}

/* Site container and shared buttons */
.rs-container {
  width: min(100% - 32px, var(--rs-container));
  margin-inline: auto;
}

.rs-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  padding: 0.65rem 1.25rem;
  border: 0;
  border-radius: 3px;
  background: var(--rs-red);
  color: #fff;
  font-weight: 700;
  line-height: 1;
  text-decoration: none;
}

.rs-btn:hover,
.rs-btn:focus {
  background: var(--rs-red-dark);
  color: #fff;
}

/* Header: top strip, utility row and basket link */
.rs-top-strip {
  border-bottom: 1px solid var(--rs-line);
  background: #fff;
  font-size: 12px;
}

.rs-top-strip__inner,
.rs-utility__inner,
.rs-nav__inner {
  min-height: 40px;
}

.rs-sale-text strong {
  color: var(--rs-red);
}

.rs-mini-links {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 1.25rem;
  color: #1f2328;
  font-size: 12px;
}

.rs-mini-links a {
  text-decoration: none;
}

.rs-utility {
  border-bottom: 1px solid var(--rs-line);
  background: #fff;
}

.rs-phone {
  display: flex;
  align-items: center;
  gap: 0.55rem;
  font-weight: 700;
}

.rs-phone__icon,
.rs-cart__icon {
  width: 27px;
  height: 27px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--rs-ink);
  font-size: 1.25rem;
}

.rs-logo img {
  width: 230px;
  max-width: 100%;
  height: auto;
}

.rs-cart {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 0.5rem;
  font-weight: 700;
  text-decoration: none;
}

/* Header: primary navigation, search and browse trigger */
.rs-nav {
  background: #f3f3f3;
  border-bottom: 1px solid var(--rs-line);
}

.rs-browse-title {
  min-height: 46px;
  width: 100%;
  display: flex;
  align-items: center;
  gap: 0.65rem;
  padding: 0 1rem;
  border: 0;
  background: var(--rs-red);
  color: #fff;
  font-weight: 800;
  text-align: left;
}

/* Mega menu: category and subcategory panels */
.rs-browse-shell {
  position: relative;
}

.rs-category-mega {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 50;
  width: min(560px, calc(100vw - 32px));
  display: grid;
  grid-template-columns: minmax(210px, 1fr) minmax(230px, 1.12fr);
  gap: 12px;
  padding-top: 12px;
  opacity: 0;
  visibility: hidden;
  transform: translateY(8px);
  transition: opacity 160ms ease, transform 160ms ease, visibility 160ms ease;
}

.rs-browse-shell:hover .rs-category-mega,
.rs-browse-shell:focus-within .rs-category-mega,
.rs-browse-shell.is-open .rs-category-mega {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.rs-main-menu {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0;
  margin: 0;
  padding: 0;
  list-style: none;
}

.rs-main-menu a {
  display: inline-flex;
  align-items: center;
  min-height: 46px;
  padding: 0 1rem;
  font-size: 13px;
  font-weight: 800;
  text-decoration: none;
}

.rs-main-menu a:hover,
.rs-main-menu a:focus {
  color: var(--rs-red);
}

.rs-search {
  display: flex;
  min-height: 38px;
  border: 1px solid var(--rs-line);
  background: #fff;
}

.rs-search input {
  min-width: 0;
  width: 100%;
  border: 0;
  padding: 0 0.9rem;
  font-size: 12px;
}

.rs-search button {
  width: 88px;
  border: 0;
  background: var(--rs-red);
  color: #fff;
  font-size: 12px;
  font-weight: 800;
}

/* Homepage hero */
.rs-home-hero {
  padding: 18px 0 20px;
}

.rs-hero-grid {
  display: grid;
  gap: 12px;
}

.rs-category-panel {
  background: #fff;
  border: 1px solid var(--rs-line);
  box-shadow: 0 10px 28px rgba(20, 23, 26, 0.08);
}

.rs-category-panel__head {
  padding: 1rem 1.05rem;
  font-size: 13px;
  font-weight: 800;
}

.rs-category-list {
  margin: 0;
  padding: 0;
  list-style: none;
}

.rs-category-list a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 37px;
  padding: 0 1.05rem;
  border-top: 1px solid var(--rs-line);
  color: var(--rs-ink);
  font-size: 12px;
  text-decoration: none;
}

.rs-category-list a:hover,
.rs-category-list a:focus,
.rs-category-list a.is-active {
  color: var(--rs-red);
}

.rs-subcategory-panel {
  background: #fff;
  border: 1px solid var(--rs-line);
  box-shadow: 0 10px 28px rgba(20, 23, 26, 0.08);
}

.rs-subcategory-panel__head {
  margin: 0;
  padding: 1rem 1.1rem 0.5rem;
  font-size: 13px;
  font-weight: 800;
}

.rs-subcategory-panel__view-all,
.rs-subcategory-list a {
  display: block;
  color: var(--rs-ink);
  font-size: 12px;
  text-decoration: none;
}

.rs-subcategory-panel__view-all {
  padding: 0.45rem 1.1rem 0.8rem;
  font-weight: 700;
}

.rs-subcategory-list {
  display: grid;
  gap: 0;
  margin: 0;
  padding: 0.1rem 0 1rem;
  list-style: none;
}

.rs-subcategory-list li {
  margin: 0;
}

.rs-subcategory-list a {
  padding: 0.4rem 1.1rem;
}

.rs-subcategory-pane {
  display: none;
}

.rs-subcategory-pane.is-active {
  display: block;
}

.rs-subcategory-panel a:hover,
.rs-subcategory-panel a:focus {
  color: var(--rs-red);
}

.rs-hero-main {
  min-height: 280px;
  display: flex;
  align-items: center;
  position: relative;
  overflow: hidden;
  background-position: center;
  background-size: cover;
}

.rs-hero-main::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(0, 0, 0, 0.42), rgba(0, 0, 0, 0.08));
}

.rs-hero-main__content {
  position: relative;
  width: min(340px, 85%);
  padding: 1.75rem;
  color: #fff;
}

.rs-hero-main h1 {
  margin: 0 0 0.65rem;
  font-size: clamp(2rem, 4vw, 3rem);
  font-weight: 800;
  line-height: 1.06;
}

.rs-hero-main p {
  max-width: 28rem;
  margin-bottom: 1.25rem;
  font-size: 1rem;
  font-weight: 600;
}

.rs-promo-stack {
  display: grid;
  gap: 12px;
}

.rs-promo-card {
  min-height: 150px;
  display: flex;
  align-items: center;
  position: relative;
  overflow: hidden;
  background-color: #f6f6f6;
  background-position: right center;
  background-repeat: no-repeat;
  background-size: auto 95%;
}

.rs-promo-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(255, 255, 255, 0.96), rgba(255, 255, 255, 0.7), rgba(255, 255, 255, 0.1));
}

.rs-promo-card__content {
  position: relative;
  width: 58%;
  padding: 1.5rem 1.25rem;
}

.rs-promo-card h2 {
  margin: 0 0 0.4rem;
  font-size: 1.7rem;
  font-weight: 800;
}

.rs-promo-card p {
  margin: 0 0 1rem;
  font-size: 1rem;
  font-weight: 600;
}

/* Homepage trust strip */
.rs-trust {
  background: var(--rs-soft);
  border-block: 1px solid var(--rs-line);
}

.rs-trust__item {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 1.4rem 0;
}

.rs-trust__icon {
  width: 72px;
  height: 72px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #111;
  flex: 0 0 72px;
  font-size: 3.35rem;
  line-height: 1;
}

.rs-trust__text strong,
.rs-section-title {
  display: block;
  font-weight: 800;
}

.rs-trust__text {
  display: block;
  color: var(--rs-muted);
  font-size: 12px;
  font-weight: 700;
}

/* Shared section headings and tabs */
.rs-section {
  padding: 48px 0 0;
}

.rs-section-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 24px;
}

.rs-section-title {
  margin: 0;
  font-size: clamp(1.6rem, 3vw, 2rem);
}

.rs-tabs {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 1.4rem;
  margin: 0;
  padding: 0;
  list-style: none;
  color: #686d72;
  font-weight: 800;
}

.rs-tabs .is-active {
  color: var(--rs-ink);
}

/* Product and vehicle cards */
.rs-product-grid,
.rs-vehicle-grid {
  display: grid;
  gap: 22px;
}

.rs-product-card,
.rs-vehicle-card {
  position: relative;
  background: #fff;
  border: 1px solid var(--rs-line);
  text-align: center;
}

.rs-product-card {
  min-height: 245px;
  padding: 1rem;
}

.rs-product-card__badge {
  position: absolute;
  top: 8px;
  left: 8px;
  padding: 0.28rem 0.4rem;
  background: var(--rs-red);
  color: #fff;
  font-size: 10px;
  font-weight: 800;
  line-height: 1;
}

.rs-product-card__image {
  height: 145px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 0.75rem;
}

.rs-product-card__image img,
.rs-vehicle-card img {
  max-width: 100%;
  height: 100%;
  object-fit: contain;
}

.rs-product-card h3,
.rs-vehicle-card h3 {
  margin: 0 0 0.3rem;
  color: #6e747a;
  font-size: 12px;
  font-weight: 700;
}

.rs-product-card h3 a {
  color: inherit;
  text-decoration: none;
}

.rs-product-card h3 a:hover,
.rs-product-card h3 a:focus {
  color: var(--rs-red);
}

.rs-stars {
  color: var(--rs-red);
  font-size: 12px;
  letter-spacing: 0.08em;
}

.rs-price {
  display: flex;
  justify-content: center;
  align-items: baseline;
  gap: 0.35rem;
  margin-top: 0.45rem;
  color: var(--rs-red);
  font-size: 18px;
  font-weight: 800;
}

.rs-price del {
  color: #aeb3b8;
  font-size: 12px;
  font-weight: 700;
}

/* WooCommerce shop/archive layout */
.rs-shop-page {
  background: #fff;
}

.rs-page,
.rs-product-page {
  background: #fff;
}

.rs-shop-hero {
  padding: 24px 0;
  border-bottom: 1px solid var(--rs-line);
  background: #f6f6f6;
}

.rs-shop-hero .woocommerce-breadcrumb {
  margin: 0 0 0.8rem;
  color: var(--rs-muted);
  font-size: 12px;
  font-weight: 700;
}

.rs-shop-hero .woocommerce-breadcrumb a {
  color: var(--rs-ink);
  text-decoration: none;
}

.rs-shop-hero .woocommerce-breadcrumb a:hover,
.rs-shop-hero .woocommerce-breadcrumb a:focus {
  color: var(--rs-red);
}

.rs-shop-hero__content {
  display: flex;
  align-items: flex-start;
  flex-direction: column;
  gap: 1.25rem;
}

.rs-shop-hero h1,
.rs-shop-hero__eyebrow {
  margin: 0 0 0.45rem;
  font-size: clamp(2rem, 4vw, 3rem);
  font-weight: 800;
  line-height: 1.05;
}

.rs-shop-hero p,
.rs-shop-hero__description {
  max-width: 650px;
  margin: 0;
  color: #545a61;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.55;
}

.rs-shop-content {
  padding: 28px 0 10px;
}

.rs-page-content,
.rs-product-content {
  padding: 32px 0 10px;
}

.rs-page-entry {
  min-width: 0;
}

.rs-shop-layout {
  display: grid;
  gap: 24px;
}

.rs-shop-sidebar {
  align-self: start;
  background: #fff;
  border: 1px solid var(--rs-line);
}

.rs-shop-sidebar__head {
  padding: 1rem 1.05rem;
  border-bottom: 1px solid var(--rs-line);
  font-size: 13px;
  font-weight: 800;
}

.rs-shop-category-nav ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.rs-shop-category-nav a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  min-height: 39px;
  padding: 0 1.05rem;
  border-bottom: 1px solid var(--rs-line);
  color: var(--rs-ink);
  font-size: 12px;
  font-weight: 700;
  text-decoration: none;
}

.rs-shop-category-nav ul ul a {
  min-height: 34px;
  padding-left: 1.65rem;
  background: #fafafa;
  color: #555b62;
}

.rs-shop-category-nav a:hover,
.rs-shop-category-nav a:focus,
.rs-shop-category-nav a.is-active {
  color: var(--rs-red);
}

.rs-shop-category-nav small {
  color: #9aa0a6;
  font-size: 11px;
  font-weight: 800;
}

.rs-shop-main {
  min-width: 0;
}

.rs-shop-toolbar {
  display: flex;
  align-items: flex-start;
  flex-direction: column;
  gap: 1rem;
  margin-bottom: 22px;
  padding-bottom: 14px;
  border-bottom: 1px solid var(--rs-line);
}

.rs-shop-toolbar .woocommerce-result-count {
  margin: 0;
  color: #60666c;
  font-size: 12px;
  font-weight: 800;
}

.rs-shop-toolbar .woocommerce-ordering {
  margin: 0;
}

.rs-shop-toolbar select {
  min-height: 40px;
  padding: 0 2.2rem 0 0.85rem;
  border: 1px solid var(--rs-line);
  background-color: #fff;
  color: var(--rs-ink);
  font-size: 12px;
  font-weight: 800;
}

.rs-shop-product-grid {
  display: grid;
  gap: 22px;
}

.rs-shop-product-col {
  min-width: 0;
}

.rs-shop-product-col .rs-product-card {
  height: 100%;
}

/* WooCommerce single product layout */
.rs-single-product__main {
  display: grid;
  gap: 28px;
  align-items: start;
}

.rs-single-product__gallery,
.rs-single-product__summary,
.rs-single-product__details,
.rs-page-entry > .wp-block-woocommerce-cart,
.rs-page-entry > .wp-block-woocommerce-checkout {
  background: #fff;
  border: 1px solid var(--rs-line);
}

.rs-single-product__gallery,
.rs-single-product__summary {
  padding: 1rem;
}

.rs-single-product__gallery {
  position: relative;
}

.rs-single-product__gallery .onsale,
.rs-single-product__summary .onsale {
  position: absolute;
  top: 12px;
  left: 12px;
  z-index: 2;
  padding: 0.35rem 0.55rem;
  background: var(--rs-red);
  color: #fff;
  font-size: 10px;
  font-weight: 800;
  line-height: 1;
  text-transform: uppercase;
}

.rs-single-product__gallery .woocommerce-product-gallery {
  width: 100%;
  float: none;
}

.rs-single-product div.images,
.rs-single-product div.summary {
  width: 100%;
  float: none;
}

.rs-single-product__gallery .woocommerce-product-gallery__wrapper {
  margin: 0;
}

.rs-single-product__gallery .woocommerce-product-gallery__image {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 320px;
  background: #fafafa;
}

.rs-single-product__gallery .woocommerce-product-gallery__image img {
  width: auto;
  max-width: 100%;
  max-height: 420px;
  object-fit: contain;
}

.rs-single-product__summary .product_title {
  margin: 0 0 0.7rem;
  font-size: clamp(1.8rem, 3vw, 2.6rem);
  font-weight: 800;
  line-height: 1.08;
}

.rs-single-product__summary .price {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 0.45rem;
  margin: 0 0 1rem;
  color: var(--rs-red);
  font-size: 1.7rem;
  font-weight: 800;
}

.rs-single-product__summary .price del {
  color: #aeb3b8;
  font-size: 1rem;
  font-weight: 700;
}

.rs-single-product__summary .woocommerce-product-details__short-description {
  margin-bottom: 1.25rem;
  color: #545a61;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.65;
}

.rs-single-product__summary form.cart {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  align-items: center;
  margin-bottom: 1.25rem;
}

.rs-single-product__summary .quantity,
.woocommerce .quantity {
  display: inline-flex;
  align-items: center;
}

.rs-single-product__summary .qty,
.woocommerce .qty,
.rs-page-entry input[type="number"],
.rs-page-entry input[type="text"],
.rs-page-entry input[type="email"],
.rs-page-entry input[type="tel"],
.rs-page-entry input[type="password"],
.rs-page-entry textarea,
.rs-page-entry select {
  min-height: 42px;
  border: 1px solid var(--rs-line);
  background: #fff;
  color: var(--rs-ink);
  font-size: 13px;
  font-weight: 700;
}

.rs-single-product__summary .qty,
.woocommerce .qty {
  width: 76px;
  padding: 0 0.55rem;
  text-align: center;
}

.single_add_to_cart_button,
.woocommerce button.button,
.woocommerce a.button,
.wc-block-cart__submit-button,
.wc-block-components-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 0.7rem 1.25rem;
  border: 0;
  border-radius: 3px;
  background: var(--rs-red);
  color: #fff;
  font-size: 13px;
  font-weight: 800;
  line-height: 1;
  text-decoration: none;
}

.single_add_to_cart_button:hover,
.single_add_to_cart_button:focus,
.woocommerce button.button:hover,
.woocommerce button.button:focus,
.woocommerce a.button:hover,
.woocommerce a.button:focus,
.wc-block-cart__submit-button:hover,
.wc-block-cart__submit-button:focus,
.wc-block-components-button:hover,
.wc-block-components-button:focus {
  background: var(--rs-red-dark);
  color: #fff;
}

.rs-single-product__summary .product_meta {
  display: grid;
  gap: 0.35rem;
  padding-top: 1rem;
  border-top: 1px solid var(--rs-line);
  color: var(--rs-muted);
  font-size: 12px;
  font-weight: 700;
}

.rs-single-product__summary .product_meta a {
  color: var(--rs-ink);
  text-decoration: none;
}

.rs-single-product__summary .product_meta a:hover,
.rs-single-product__summary .product_meta a:focus {
  color: var(--rs-red);
}

.rs-single-product__details {
  margin-top: 28px;
  padding: 1rem;
}

/* WooCommerce tabs and related product sections */
.woocommerce-tabs ul.tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin: 0 0 1.25rem;
  padding: 0;
  border-bottom: 1px solid var(--rs-line);
  list-style: none;
}

.woocommerce-tabs ul.tabs li {
  margin: 0;
}

.woocommerce-tabs ul.tabs a {
  display: inline-flex;
  min-height: 40px;
  align-items: center;
  padding: 0 1rem;
  color: #60666c;
  font-size: 13px;
  font-weight: 800;
  text-decoration: none;
}

.woocommerce-tabs ul.tabs li.active a,
.woocommerce-tabs ul.tabs a:hover,
.woocommerce-tabs ul.tabs a:focus {
  color: var(--rs-red);
}

.woocommerce-Tabs-panel h2,
.related h2,
.up-sells h2,
.cross-sells h2,
.cart_totals h2 {
  margin: 0 0 1rem;
  font-size: clamp(1.35rem, 2.5vw, 1.8rem);
  font-weight: 800;
}

.related,
.up-sells {
  margin-top: 2rem;
}

/* WooCommerce cart and checkout block surfaces */
.rs-page-entry > .wp-block-woocommerce-cart,
.rs-page-entry > .wp-block-woocommerce-checkout {
  padding: 1rem;
}

.wc-block-cart,
.wc-block-checkout {
  margin-inline: 0;
}

.wc-block-components-sidebar,
.wc-block-cart__sidebar,
.wc-block-checkout__sidebar {
  border: 1px solid var(--rs-line);
  background: #fff;
}

.wc-block-cart-items,
.wc-block-components-totals-wrapper,
.wc-block-components-order-summary,
.wc-block-components-checkout-step,
.wc-block-components-panel {
  border-color: var(--rs-line);
}

.wc-block-components-title,
.wc-block-components-checkout-step__title,
.wc-block-cart-items__header,
.wc-block-components-order-summary__title-text {
  color: var(--rs-ink);
  font-weight: 800;
}

.wc-block-components-product-name,
.wc-block-components-product-name a,
.wc-block-cart-item__wrap a {
  color: var(--rs-ink);
  font-weight: 800;
  text-decoration: none;
}

.wc-block-components-product-name:hover,
.wc-block-components-product-name:focus,
.wc-block-components-product-name a:hover,
.wc-block-components-product-name a:focus,
.wc-block-cart-item__wrap a:hover,
.wc-block-cart-item__wrap a:focus {
  color: var(--rs-red);
}

.wc-block-components-form .wc-block-components-text-input input,
.wc-block-components-text-input input,
.wc-block-components-textarea,
.wc-block-components-combobox .wc-block-components-combobox-control input {
  border: 1px solid var(--rs-line);
  border-radius: 3px;
  color: var(--rs-ink);
}

.wc-block-components-form .wc-block-components-text-input label,
.wc-block-components-text-input label,
.wc-block-components-checkbox label,
.wc-block-components-radio-control__label,
.wc-block-components-address-form__address_2-toggle {
  color: #545a61;
  font-size: 13px;
  font-weight: 700;
}

.wc-block-components-product-price,
.wc-block-components-totals-item__value,
.wc-block-components-order-summary .wc-block-components-product-price {
  color: var(--rs-red);
  font-weight: 800;
}

/* WooCommerce classic tables and notices */
.shop_table,
.woocommerce table.shop_table {
  width: 100%;
  border: 1px solid var(--rs-line);
  border-collapse: collapse;
  background: #fff;
}

.shop_table th,
.shop_table td,
.woocommerce table.shop_table th,
.woocommerce table.shop_table td {
  padding: 1rem;
  border: 1px solid var(--rs-line);
  vertical-align: middle;
}

.shop_table th,
.woocommerce table.shop_table th {
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
}

.shop_table a,
.woocommerce table.shop_table a {
  color: var(--rs-ink);
  font-weight: 800;
  text-decoration: none;
}

.shop_table a:hover,
.shop_table a:focus,
.woocommerce table.shop_table a:hover,
.woocommerce table.shop_table a:focus {
  color: var(--rs-red);
}

.woocommerce-info,
.woocommerce-message,
.woocommerce-error {
  margin: 0 0 1.25rem;
  padding: 1rem 1.15rem;
  border: 1px solid var(--rs-line);
  border-left: 4px solid var(--rs-red);
  background: #fff;
  color: var(--rs-ink);
  font-size: 13px;
  font-weight: 700;
  list-style: none;
}

.woocommerce-pagination {
  margin-top: 28px;
}

.woocommerce-pagination ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.45rem;
  margin: 0;
  padding: 0;
  border: 0;
  list-style: none;
}

.woocommerce-pagination li {
  border: 0;
}

.woocommerce-pagination a,
.woocommerce-pagination span {
  min-width: 38px;
  min-height: 38px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--rs-line);
  background: #fff;
  color: var(--rs-ink);
  font-size: 12px;
  font-weight: 800;
  text-decoration: none;
}

.woocommerce-pagination a:hover,
.woocommerce-pagination a:focus,
.woocommerce-pagination .current {
  border-color: var(--rs-red);
  background: var(--rs-red);
  color: #fff;
}

/* Promotional and view-all components */
.rs-wide-banner {
  min-height: 190px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 38px;
  overflow: hidden;
  background-color: #f7f7f7;
  background-position: center;
  background-size: cover;
  text-align: center;
}

.rs-wide-banner__inner {
  width: min(100%, 700px);
  padding: 2rem 1rem;
}

.rs-wide-banner h2 {
  margin-bottom: 0.35rem;
  font-size: clamp(1.5rem, 4vw, 2rem);
  font-weight: 800;
}

.rs-wide-banner p {
  margin-bottom: 1.25rem;
  font-size: 1rem;
  font-weight: 700;
}

.rs-view-all {
  color: #60666c;
  font-weight: 800;
  text-decoration: none;
}

.rs-vehicle-card img {
  width: 100%;
  height: 138px;
  object-fit: cover;
}

.rs-vehicle-card {
  padding-bottom: 1rem;
}

.rs-vehicle-card h3 {
  padding-top: 0.85rem;
}

.rs-news-grid {
  display: grid;
  gap: 26px;
  padding-bottom: 54px;
}

.rs-news-card {
  display: grid;
  grid-template-columns: 108px 1fr;
  align-items: center;
  gap: 1rem;
}

.rs-news-card img {
  width: 108px;
  height: 100px;
  object-fit: cover;
}

.rs-news-card time {
  display: block;
  margin-bottom: 0.35rem;
  color: var(--rs-red);
  font-size: 11px;
  font-weight: 800;
}

.rs-news-card h3 {
  margin: 0 0 0.35rem;
  font-size: 14px;
  font-weight: 800;
}

.rs-news-card p {
  margin: 0;
  color: #5b6168;
  font-size: 12px;
  line-height: 1.55;
}

/* Footer */
.rs-footer {
  margin-top: 48px;
  border-top: 1px solid var(--rs-line);
}

.rs-footer__main {
  padding: 46px 0;
}

.rs-footer-logo {
  width: 190px;
  height: auto;
  margin-bottom: 1rem;
}

.rs-footer h2,
.rs-footer h3 {
  margin-bottom: 1rem;
  font-size: 14px;
  font-weight: 800;
}

.rs-footer p,
.rs-footer a {
  color: #4f555c;
  font-size: 12px;
  line-height: 1.7;
  text-decoration: none;
}

.rs-footer a:hover,
.rs-footer a:focus {
  color: var(--rs-red);
}

.rs-footer ul {
  display: grid;
  gap: 0.4rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.rs-socials {
  display: flex;
  gap: 0.5rem;
}

.rs-socials a {
  width: 25px;
  height: 25px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: #111;
  color: #fff;
}

.rs-footer__bottom {
  padding: 18px 0 34px;
  border-top: 1px solid var(--rs-line);
  text-align: center;
}

.rs-payments {
  display: flex;
  justify-content: center;
  gap: 0.45rem;
  margin-top: 1rem;
}

.rs-payment {
  min-width: 34px;
  padding: 0.2rem 0.35rem;
  border: 1px solid #d9e0e6;
  border-radius: 3px;
  color: #1775bb;
  font-size: 9px;
  font-weight: 800;
  line-height: 1.1;
}

/* Responsive layout: small screens and up */
@media (min-width: 576px) {
  .rs-product-grid,
  .rs-vehicle-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .rs-shop-product-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* Responsive layout: tablet and up */
@media (min-width: 768px) {
  .rs-shop-hero__content,
  .rs-shop-toolbar {
    align-items: center;
    flex-direction: row;
    justify-content: space-between;
  }

  .rs-product-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .rs-vehicle-grid,
  .rs-news-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .rs-shop-product-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

/* Responsive layout: desktop and up */
@media (min-width: 992px) {
  .rs-hero-grid {
    grid-template-columns: minmax(0, 1fr) 420px;
  }

  .rs-single-product__main {
    grid-template-columns: minmax(0, 1fr) 430px;
  }

  .rs-hero-main {
    min-height: 332px;
  }

  .rs-product-grid {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }

  .rs-vehicle-grid {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }

  .rs-news-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .rs-shop-layout {
    grid-template-columns: 280px minmax(0, 1fr);
    align-items: start;
  }

  .rs-shop-sidebar {
    position: sticky;
    top: 18px;
  }
}

/* Responsive layout: wide desktop and up */
@media (min-width: 1200px) {
  .rs-hero-grid {
    grid-template-columns: minmax(0, 1fr) 418px;
  }

  .rs-shop-product-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

/* Responsive layout: navigation below desktop */
@media (max-width: 991.98px) {
  .rs-nav__inner {
    padding-block: 0.75rem;
  }

  .rs-main-menu {
    margin-top: 0.75rem;
  }

  .rs-search {
    margin-top: 0.75rem;
  }

  .rs-category-mega {
    position: static;
    width: 100%;
    grid-template-columns: 1fr;
    gap: 10px;
    padding-top: 10px;
    display: none;
    opacity: 1;
    visibility: visible;
    transform: none;
    transition: none;
  }

  .rs-browse-shell.is-open .rs-category-mega,
  .rs-browse-shell:focus-within .rs-category-mega {
    display: grid;
  }

  .rs-promo-card__content {
    width: 72%;
  }
}

/* Responsive layout: mobile adjustments */
@media (max-width: 767.98px) {
  .rs-mini-links,
  .rs-cart {
    justify-content: flex-start;
  }

  .rs-utility__inner {
    gap: 1rem;
    padding-block: 1rem;
  }

  .rs-section-header {
    align-items: flex-start;
    flex-direction: column;
  }

  .rs-tabs {
    justify-content: flex-start;
    gap: 0.9rem;
  }

  .rs-news-card {
    grid-template-columns: 92px 1fr;
  }

  .rs-news-card img {
    width: 92px;
    height: 86px;
  }
}
