
:root {
  --zs-font-ui: "SF Pro Display", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --zs-color-primary: #1769c2;
  --zs-color-primary-hover: #12579f;
  --zs-color-primary-soft: #edf5fc;
  --zs-color-ink: #111318;
  --zs-color-muted: #5f6874;
  --zs-type-section: 36px;
  --zs-type-compact-heading: 24px;
  --zs-type-card-heading: 22px;
  --zs-type-body: 16px;
  --zs-type-small: 14px;
}

.elementor-kit-6 {
  --e-global-color-5b9bea7: var(--zs-color-primary);
  --e-global-typography-primary-font-family: "SF Pro Display";
  --e-global-typography-secondary-font-family: "SF Pro Display";
  --e-global-typography-text-font-family: "SF Pro Display";
  --e-global-typography-accent-font-family: "SF Pro Display";
}

body,
body button,
body input,
body select,
body textarea,
body :where(h1, h2, h3, h4, h5, h6, p, a, button, label, li, small, strong, b, em):not([class*="icon"]):not([class^="fa"]) {
  font-family: var(--zs-font-ui) !important;
}

.elementor-kit-6 a {
  color: var(--zs-color-primary);
}

/* Product names in the cart are content, not blue promotional accents. */
body.woocommerce-cart .custom-cart-wrapper .custom-item-name a {
  color: var(--zs-color-ink) !important;
  text-decoration: none;
}

body.woocommerce-cart .custom-cart-wrapper .custom-item-name a:hover,
body.woocommerce-cart .custom-cart-wrapper .custom-item-name a:focus-visible {
  color: #555 !important;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}

body h1 {
  font-weight: 700 !important;
}

body.single-product h1.elementor-heading-title {
  font-weight: 700 !important;
}

body :where(.zs-contacts, .zs-delivery, .zs-warranty, .zs-credit, .zs-tradein) h2 {
  font-weight: 700 !important;
}

body :where(.zs-contacts, .zs-delivery, .zs-warranty, .zs-credit, .zs-tradein) h3 {
  font-weight: 600 !important;
}

/* Level 2: main section headings. */
.zs-msection__head h2,
.zs-delivery__section-head h2,
.zs-warranty__section-title,
.zs-credit__section-head h2,
.zs-credit__truth-title h2,
.zs-tradein__intro h2,
.zs-tradein__section-title {
  font-size: var(--zs-type-section) !important;
  line-height: 1.1 !important;
  font-weight: 700 !important;
  letter-spacing: -0.03em !important;
}

/* Level 3: compact headings inside CTA, map, notice and partner blocks. */
.zs-contacts__map-footer h2,
.zs-delivery__contact h2,
.zs-warranty__notice h2,
.zs-warranty__intake h2,
.zs-credit__partners h2,
.zs-credit__final h2,
.zs-tradein__visit h2,
.zs-mstore h2 {
  font-size: var(--zs-type-compact-heading) !important;
  line-height: 1.2 !important;
  font-weight: 700 !important;
  letter-spacing: -0.02em !important;
}

/* Level 4: card and route headings. */
.zs-delivery__panel > h3,
.zs-delivery__pickup h3,
.zs-credit__route h3,
.zs-tradein__step h3,
.zs-tradein__detail h3 {
  font-size: var(--zs-type-card-heading) !important;
  line-height: 1.25 !important;
  font-weight: 600 !important;
  letter-spacing: -0.015em !important;
}

.zs-contacts__lead,
.zs-delivery__intro > p,
.zs-warranty__sublead,
.zs-credit__lead,
.zs-tradein__lead {
  font-size: var(--zs-type-body) !important;
  line-height: 1.5 !important;
  font-weight: 400 !important;
}

.zs-contacts,
.zs-tradein,
.zs-credit {
  --zs-blue: var(--zs-color-primary) !important;
  --zs-blue-dark: var(--zs-color-primary-hover) !important;
}

.zs-warranty {
  --zs-blue: var(--zs-color-primary) !important;
  --zs-blue-dark: var(--zs-color-primary) !important;
}

.zs-delivery,
.zs-v3-menu,
.zs-global-footer-v4 {
  --blue: var(--zs-color-primary) !important;
}

.zs-contacts__icon,
.zs-warranty__step-number,
.zs-warranty__accent,
.zs-tradein__step-number,
.zs-credit__eyebrow,
.zs-contacts__small-link {
  color: var(--zs-color-primary) !important;
}

.zs-contacts__icon,
.zs-warranty__step-number,
.zs-tradein__step-number,
.zs-delivery span:not([class]),
.zs-delivery__method__icon {
  background-color: var(--zs-color-primary-soft) !important;
}

.zs-contacts__button--primary,
.zs-credit__button--primary,
.zs-tradein__button--primary,
.zs-global-footer-v4 .zs-gf4__telegram,
.zs-cookie__button--primary,
.switcher-values:not(.as-colors) .switcher-option.active,
.elementor-93 .button.product_type_simple,
.elementor-93 .add_to_cart_button {
  border-color: var(--zs-color-primary) !important;
  background: var(--zs-color-primary) !important;
  color: #fff !important;
}

.zs-contacts__button--primary:hover,
.zs-credit__button--primary:hover,
.zs-tradein__button--primary:hover,
.zs-cookie__button--primary:hover {
  border-color: var(--zs-color-primary-hover) !important;
  background: var(--zs-color-primary-hover) !important;
}

.elementor-location-header .e-n-menu-title-container,
.elementor-location-header .elementor-item-active,
.jet-filters-pagination__item {
  color: var(--zs-color-primary) !important;
}

.elementor-location-header .elementor-item:hover,
.elementor-location-header .elementor-item:focus-visible {
  color: var(--zs-color-primary) !important;
}

/* The desktop Catalog control has a blue background, so its label must stay white. */
.elementor-location-header .elementor-element-f0f1c08 .e-n-menu-title-container,
.elementor-location-header .elementor-element-f0f1c08 .e-n-menu-title-container:hover,
.elementor-location-header .elementor-element-f0f1c08 .e-n-menu-title-container:focus-visible {
  color: #fff !important;
}

.elementor-location-footer .elementor-element-9fc199e .elementor-button,
.elementor-location-footer .elementor-element-19a1de1 .elementor-button {
  border-color: var(--zs-color-primary) !important;
}

.elementor-location-footer .elementor-element-9fc199e .elementor-button:hover,
.elementor-location-footer .elementor-element-9fc199e .elementor-button:focus,
.elementor-location-footer .elementor-element-19a1de1 .elementor-button:hover,
.elementor-location-footer .elementor-element-19a1de1 .elementor-button:focus {
  background-color: var(--zs-color-primary) !important;
}

.zs-msection__head a,
.zs-mstore a,
.zs-mservice em,
.zs-mpromo__card b,
.zs-mabout__copy > span,
.zs-mabout a b {
  color: var(--zs-color-primary) !important;
}

.zs-mpromo__card {
  color: var(--zs-color-ink) !important;
}

.zs-mpromo__card small {
  color: var(--zs-color-muted) !important;
}

.zs-mproduct,
.zs-mproduct span {
  color: var(--zs-color-ink) !important;
}

.zs-mproduct b {
  color: var(--zs-color-primary) !important;
}

.zs-mproduct i {
  background: var(--zs-color-primary) !important;
}

.zs-delivery a,
.zs-delivery em,
.zs-delivery span:not(.zs-delivery__free-note),
.zs-delivery__method__icon {
  color: var(--zs-color-primary) !important;
}

.zs-delivery :where(.zs-delivery__cta, .zs-delivery__dark, [class*="dark"]) a,
.zs-delivery :where(.zs-delivery__cta, .zs-delivery__dark, [class*="dark"]) span {
  color: inherit !important;
}

.zs-credit__button,
.zs-tradein__button,
.zs-contacts__button {
  font-size: 16px !important;
  line-height: 1.2 !important;
  font-weight: 600 !important;
}

.zs-v3-menu button,
.zs-global-footer-v4 a {
  font-weight: 600 !important;
}

.zs-credit__eyebrow,
.zs-tradein__eyebrow,
.zs-warranty__eyebrow,
.zs-v3-menu h2,
.zs-gf4__signoff {
  font-weight: 700 !important;
}

.zs-contacts__value,
.zs-warranty__lead,
.zs-product-lower h2,
.zs-specs-grid strong {
  font-weight: 600 !important;
}

@media (max-width: 767px) {
  :root {
    --zs-type-section: 28px;
    --zs-type-compact-heading: 20px;
    --zs-type-card-heading: 18px;
    --zs-type-body: 16px;
    --zs-type-small: 13px;
  }

  .zs-credit__button,
  .zs-tradein__button,
  .zs-contacts__button {
    font-size: 14px !important;
  }

  .elementor-93 .elementor-element-2eba145 .elementor-heading-title {
    font-size: 14px !important;
    line-height: 1.25 !important;
    font-weight: 500 !important;
  }
}

@media (min-width: 768px) and (max-width: 1024px) {
  :root {
    --zs-type-section: 32px;
    --zs-type-compact-heading: 22px;
    --zs-type-card-heading: 20px;
  }
}
    