:root {
  --blue: #00a7ff;
  --blue-strong: #0878ed;
  --navy: #051b3e;
  --navy-soft: #0a3979;
  --ink: #081b38;
  --muted: #68798b;
  --line: #e2ebf4;
  --soft: #f7fbff;
  --red: #f54c42;
  --white: #fff;
  --enzo-radius: 18px;
  --enzo-max: 1360px;
  --enzo-page-gutter: 44px;
  --enzo-shadow: 0 14px 35px rgba(12, 41, 81, 0.11);
}

html { scroll-behavior: smooth; }
body.enzosport-site {
  min-width: 0;
  color: var(--ink);
  background: #fff;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 16px;
  line-height: 1.55;
  -webkit-font-smoothing: antialiased;
}
body.enzosport-site *, body.enzosport-site *::before, body.enzosport-site *::after { box-sizing: border-box; }
body.enzosport-site img { max-width: 100%; height: auto; }
body.enzosport-site a { color: inherit; text-decoration: none; }
body.enzosport-site button, body.enzosport-site input, body.enzosport-site select, body.enzosport-site textarea { font: inherit; }
body.enzosport-site .container { width: min(var(--enzo-max), calc(100% - var(--enzo-page-gutter))); max-width: none; margin-right: auto; margin-left: auto; padding-right: 0; padding-left: 0; }
body.enzosport-site .row { max-width: var(--enzo-max); }

.enzo-skip-link { position: fixed; top: 8px; left: 8px; z-index: 100; padding: 10px 14px; color: #fff; background: var(--navy); border-radius: 8px; transform: translateY(-160%); }
.enzo-skip-link:focus { transform: translateY(0); }
body.enzosport-site a:focus-visible, body.enzosport-site button:focus-visible, body.enzosport-site input:focus-visible, body.enzosport-site select:focus-visible, body.enzosport-site textarea:focus-visible { outline: 3px solid #ffb340; outline-offset: 3px; }

body.enzosport-site .topbar { height: 34px; color: #dceaff; background: #061b3b; font-size: 14px; }
body.enzosport-site .topbar .container { height: 100%; display: flex; align-items: center; justify-content: space-between; gap: 20px; }
body.enzosport-site .topbar a { color: #dceaff; }
.enzo-topbar-mobile { display: none; }
body.enzosport-site .header { position: sticky; top: 0; z-index: 40; height: 78px; color: var(--ink); background: #fff; border-bottom: 1px solid #edf2f7; box-shadow: 0 7px 24px rgba(11, 43, 82, 0.05); }
body.admin-bar.enzosport-site .header { top: 32px; }
body.enzosport-site .header .container { height: 100%; display: flex; align-items: center; gap: 20px; }
body.enzosport-site .brand { min-width: 206px; display: flex; align-items: center; gap: 10px; margin: 0; color: var(--ink); }
body.enzosport-site .enzo-header-brand { min-width: 225px; flex: 0 1 225px; }
body.enzosport-site .enzo-header-logo { width: 225px; max-width: 100%; height: auto; max-height: 48px; display: block; object-fit: contain; object-position: left center; }
body.enzosport-site .logo-mark { width: 43px; height: 43px; flex: 0 0 43px; display: grid; place-items: center; color: #fff; background: linear-gradient(145deg, #00a7ff, #0757a6); border-radius: 13px; font-size: 20px; font-weight: 900; }
body.enzosport-site .brand b { display: block; color: var(--ink); font-size: 21px; line-height: 1.1; }
body.enzosport-site .brand small { display: block; margin-top: 2px; color: #718297; font-size: 14px; line-height: 1.15; letter-spacing: 0.035em; white-space: nowrap; }
body.enzosport-site .enzo-header > .container > .nav { width: auto; min-width: 0; flex: 1; display: flex; flex-flow: row nowrap; align-items: center; justify-content: center; gap: clamp(11px, 1.25vw, 20px); font-size: 14px; font-weight: 800; }
body.enzosport-site .enzo-header > .container > .nav a { position: relative; padding: 27px 0 25px; color: var(--ink); white-space: nowrap; transition: color 0.2s ease; }
body.enzosport-site .enzo-header > .container > .nav a::after { content: ""; position: absolute; right: 0; bottom: 18px; left: 0; height: 2px; background: var(--blue-strong); transform: scaleX(0); transition: transform 0.2s ease; }
body.enzosport-site .enzo-header > .container > .nav a:hover, body.enzosport-site .enzo-header > .container > .nav a[aria-current="page"] { color: var(--blue-strong); }
body.enzosport-site .enzo-header > .container > .nav a:hover::after, body.enzosport-site .enzo-header > .container > .nav a[aria-current="page"]::after { transform: scaleX(1); }
.enzo-header-actions { flex: 0 0 auto; display: flex; align-items: center; gap: 10px; }
body.enzosport-site .btn { min-height: 48px; height: auto; display: inline-flex; align-items: center; justify-content: center; padding: 12px 24px; color: var(--ink); background: #fff; border: 1px solid transparent; border-radius: 999px; font-size: 14px; font-weight: 800; line-height: 1.2; text-transform: none; letter-spacing: 0; white-space: nowrap; transition: transform 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease; }
body.enzosport-site .btn:hover { transform: translateY(-2px); }
body.enzosport-site .btn:active { transform: translateY(0) scale(0.98); }
body.enzosport-site .btn-red { color: #fff; background: var(--red); box-shadow: 0 10px 24px rgba(245, 76, 66, 0.25); }
body.enzosport-site .btn-blue { color: #fff; background: var(--blue-strong); }
body.enzosport-site .btn-outline { color: var(--blue-strong); background: #fff; border-color: #6bbfff; }
.enzo-menu-toggle { width: 46px; height: 46px; display: none; align-items: center; justify-content: center; flex-direction: column; gap: 5px; margin: 0; padding: 0; background: #fff; border: 1px solid var(--line); border-radius: 13px; line-height: 0; }
.enzo-menu-toggle > span:not(.screen-reader-text) { width: 22px; height: 2px; display: block; margin: 0; background: var(--ink); transition: transform 0.2s ease, opacity 0.2s ease; }
.enzo-menu-toggle[aria-expanded="true"] > span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.enzo-menu-toggle[aria-expanded="true"] > span:nth-child(2) { opacity: 0; }
.enzo-menu-toggle[aria-expanded="true"] > span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }
.enzo-mobile-nav { position: absolute; top: 100%; right: 0; left: 0; color: var(--ink); background: #fff; border-top: 1px solid var(--line); box-shadow: 0 18px 36px rgba(8, 27, 56, 0.14); }
.enzo-mobile-nav[hidden] { display: none; }
.enzo-header .enzo-mobile-nav > .container { display: grid !important; grid-template-columns: 1fr; height: auto !important; padding: 14px 0 18px; }
.enzo-mobile-nav a:not(.btn) { padding: 11px 4px; border-bottom: 1px solid #eef3f8; font-size: 15px; font-weight: 700; }
.enzo-mobile-nav a[aria-current="page"] { color: var(--blue-strong); }

/* Homepage hero carousel. */
body.enzosport-homepage .hero-inner { height: 620px; min-height: 620px; display: block; position: relative; }
body.enzosport-homepage .hero-copy { position: relative; z-index: 4; width: min(58%, 780px); padding: 28px clamp(30px, 3vw, 56px) 20px; }
body.enzosport-homepage .hero-visual { position: absolute; inset: 0; z-index: 1; max-width: none; overflow: hidden; pointer-events: auto; }
body.enzosport-homepage .hero-visual::before { content: ""; position: absolute; inset: 0; z-index: 2; pointer-events: none; background: linear-gradient(90deg, rgba(6, 26, 57, 0.58) 0%, rgba(6, 26, 57, 0.42) 42%, rgba(6, 26, 57, 0.16) 58%, rgba(6, 26, 57, 0) 76%); }
body.enzosport-homepage .hero-slides { position: absolute; inset: 0; overflow: hidden; }
body.enzosport-homepage .hero-slide { position: absolute; inset: 0; width: 100%; max-width: none; height: 100%; object-fit: cover; object-position: center; border-radius: 0; box-shadow: none; opacity: 0; transform: scale(1.018); transition: opacity 0.85s ease, transform 4.8s ease; }
body.enzosport-homepage .hero-slide.is-active { z-index: 1; opacity: 1; transform: scale(1); }
body.enzosport-homepage .hero-slider-dots { position: absolute; top: 30px; right: 26px; z-index: 5; display: flex; align-items: center; gap: 8px; }
body.enzosport-homepage .hero-slider-dots button { width: 10px; height: 10px; min-height: 10px; padding: 0; border: 1px solid rgba(255, 255, 255, 0.6); border-radius: 999px; background: rgba(255, 255, 255, 0.58); box-shadow: none; cursor: pointer; transition: width 0.2s ease, background-color 0.2s ease, border-color 0.2s ease; }
body.enzosport-homepage .hero-slider-dots button.is-active { width: 34px; background: #fff; border-color: #fff; }
body.enzosport-homepage .hero-title-mobile-break { display: none; }
body.enzosport-homepage .quick-icon-speed b { color: #7fd7ff; font-size: 18px; line-height: 1.2; }
body.enzosport-homepage .quick-icon-speed small { color: #fff; font-weight: 800; }
body.enzosport-homepage .proof { margin-top: 22px; }
body.enzosport-homepage .trust-wrap { margin-top: -8px; }

/* The design must never render visible copy below 14px. */
body.enzosport-homepage .topbar,
body.enzosport-homepage .brand small,
body.enzosport-homepage .nav,
body.enzosport-homepage .eyebrow,
body.enzosport-homepage .quick-icon,
body.enzosport-homepage .quick-icon small,
body.enzosport-homepage .proof,
body.enzosport-homepage .trust-item b,
body.enzosport-homepage .trust-item span,
body.enzosport-homepage .section-head .kicker,
body.enzosport-homepage .section-head p,
body.enzosport-homepage .commit b,
body.enzosport-homepage .commit span,
body.enzosport-homepage .step b,
body.enzosport-homepage .step p,
body.enzosport-homepage .tabs,
body.enzosport-homepage .product b,
body.enzosport-homepage .product strong,
body.enzosport-homepage .review p,
body.enzosport-homepage .person b,
body.enzosport-homepage .person span,
body.enzosport-homepage .cta-copy p,
body.enzosport-homepage .checks,
body.enzosport-homepage .footer h3,
body.enzosport-homepage .footer p,
body.enzosport-homepage .footer a,
body.enzosport-homepage .footer-bottom { font-size: 14px; }

body.enzosport-homepage .tabs { align-items: center; flex-wrap: wrap; gap: 10px 18px; }
body.enzosport-homepage .tabs button { min-height: 42px; padding: 9px 16px; color: var(--ink); background: transparent; border: 1px solid transparent; border-radius: 999px; font-size: 14px; font-weight: 800; line-height: 1.2; cursor: pointer; transition: color 0.2s ease, background-color 0.2s ease, transform 0.2s ease; }
body.enzosport-homepage .tabs button:hover { color: var(--blue-strong); transform: translateY(-1px); }
body.enzosport-homepage .tabs button.active { color: #fff; background: #0a67bd; }
.enzo-product-panel[hidden] { display: none !important; }
body.enzosport-homepage .enzo-real-product a { height: 100%; display: flex; flex-direction: column; }
body.enzosport-homepage .enzo-real-product .info { flex: 1; display: flex; flex-direction: column; }
body.enzosport-homepage .enzo-real-product b { min-height: 2.7em; display: -webkit-box; overflow: hidden; line-height: 1.35; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
body.enzosport-homepage .enzo-real-product strong { display: block; margin-top: auto; padding-top: 8px; color: var(--blue-strong); font-variant-numeric: tabular-nums; }
body.enzosport-homepage .enzo-real-product del { color: #8a97a5; font-size: 14px; font-weight: 500; }
body.enzosport-homepage .enzo-real-product ins { color: var(--blue-strong); background: transparent; text-decoration: none; }
.enzo-products-empty { text-align: center; color: var(--muted); font-size: 16px; }

/* Shared footer and conversion band across every public page. */
body.enzosport-site .cta-band { padding: 38px 0; color: #fff; background: linear-gradient(120deg, #061b3b, #073a78); }
body.enzosport-site .cta-inner { display: grid; grid-template-columns: 160px 1fr 220px; gap: 28px; align-items: center; }
body.enzosport-site .cta-inner > img { width: 150px; height: 150px; object-fit: cover; border-radius: 18px; }
body.enzosport-site .cta-copy h2 { margin: 0 0 6px; color: #fff; font-size: 26px; line-height: 1.15; letter-spacing: -0.02em; }
body.enzosport-site .cta-copy p { margin: 0 0 14px; color: #cee0ed; font-size: 15px; }
body.enzosport-site .cta-actions { display: flex; flex-wrap: wrap; gap: 10px; }
body.enzosport-site .checks { color: #d5e6f2; font-size: 14px; line-height: 1.9; }
body.enzosport-site .footer { padding: 46px 0 28px; color: var(--ink); background: #fff; border-top: 1px solid #edf2f7; }
body.enzosport-site .footer-grid { display: grid; grid-template-columns: 1.3fr repeat(4, 1fr); gap: 34px; }
body.enzosport-site .footer .brand { min-width: 0; display: flex; color: var(--ink); }
body.enzosport-site .footer h3 { margin: 0 0 13px; color: var(--ink); font-size: 14px; line-height: 1.35; }
body.enzosport-site .footer p, body.enzosport-site .footer a:not(.brand) { display: block; margin: 8px 0; color: #617286; font-size: 14px; line-height: 1.5; }
body.enzosport-site .footer a:hover { color: var(--blue-strong); }
body.enzosport-site .footer-bottom { margin-top: 28px; padding-top: 18px; color: #748398; border-top: 1px solid #edf2f7; font-size: 14px; }
body.enzosport-site .float-contact { position: fixed; bottom: 26px; left: 14px; z-index: 45; display: flex; flex-direction: column; gap: 9px; }
body.enzosport-site .float-contact a { width: 42px; height: 42px; display: grid; place-items: center; color: var(--blue-strong); background: #fff; border: 1px solid #e1ebf4; border-radius: 50%; box-shadow: 0 8px 20px rgba(8, 27, 56, 0.18); font-size: 15px; font-weight: 900; transition: transform 0.2s ease; }
body.enzosport-site .float-contact a:hover { transform: translateY(-2px); }
body.enzosport-homepage .float-contact { display: none; }

/* New visual base for WordPress, WooCommerce and editorial surfaces. */
body.enzosport-site:not(.enzosport-homepage) #main { min-height: 48vh; color: var(--ink); background: var(--soft); }
body.enzosport-site:not(.enzosport-homepage) .page-wrapper,
body.enzosport-site:not(.enzosport-homepage) .shop-container,
body.enzosport-site:not(.enzosport-homepage) .product-main,
body.enzosport-site:not(.enzosport-homepage) .product-footer { padding-top: 38px; padding-bottom: 48px; }
body.enzosport-site:not(.enzosport-homepage) .page-title,
body.enzosport-site:not(.enzosport-homepage) .shop-page-title { color: var(--ink); background: #fff; border-bottom: 1px solid var(--line); }
body.enzosport-site:not(.enzosport-homepage) .page-title-inner { min-height: 76px; }
body.enzosport-site:not(.enzosport-homepage) h1 { color: var(--ink); font-size: clamp(30px, 4vw, 46px); line-height: 1.08; letter-spacing: -0.035em; text-wrap: balance; }
body.enzosport-site:not(.enzosport-homepage) h2 { color: var(--ink); font-size: clamp(24px, 3vw, 34px); line-height: 1.2; letter-spacing: -0.025em; text-wrap: balance; }
body.enzosport-site:not(.enzosport-homepage) h3 { color: var(--ink); font-size: 20px; line-height: 1.3; }
body.enzosport-site:not(.enzosport-homepage) p,
body.enzosport-site:not(.enzosport-homepage) li,
body.enzosport-site:not(.enzosport-homepage) label,
body.enzosport-site:not(.enzosport-homepage) td,
body.enzosport-site:not(.enzosport-homepage) th { font-size: max(14px, 1em); }
body.enzosport-site:not(.enzosport-homepage) .breadcrumbs,
body.enzosport-site:not(.enzosport-homepage) .woocommerce-breadcrumb,
body.enzosport-site:not(.enzosport-homepage) .nav-pagination,
body.enzosport-site:not(.enzosport-homepage) .product-summary .woocommerce-product-details__short-description { font-size: 14px; }
body.enzosport-site:not(.enzosport-homepage) .box,
body.enzosport-site:not(.enzosport-homepage) .col-inner,
body.enzosport-site:not(.enzosport-homepage) .product-info,
body.enzosport-site:not(.enzosport-homepage) .entry-content,
body.enzosport-site:not(.enzosport-homepage) .blog-wrapper article { border-radius: 16px; }
body.enzosport-site:not(.enzosport-homepage) .product-small .col-inner { height: 100%; overflow: hidden; background: #fff; border: 1px solid var(--line); border-radius: 16px; box-shadow: 0 9px 26px rgba(14, 49, 91, 0.07); transition: transform 0.2s ease, box-shadow 0.2s ease; }
body.enzosport-site:not(.enzosport-homepage) .product-small .col-inner:hover { transform: translateY(-4px); box-shadow: var(--enzo-shadow); }
body.enzosport-site:not(.enzosport-homepage) .product-small .box-image { overflow: hidden; background: #edf5fb; border-radius: 15px 15px 0 0; }
body.enzosport-site:not(.enzosport-homepage) .product-small .box-image img { aspect-ratio: 1 / 1; object-fit: cover; transition: transform 0.35s ease; }
body.enzosport-site:not(.enzosport-homepage) .product-small .col-inner:hover .box-image img { transform: scale(1.025); }
body.enzosport-site:not(.enzosport-homepage) .product-small .box-text { padding: 14px 15px 17px; }
body.enzosport-site:not(.enzosport-homepage) .product-small .product-title,
body.enzosport-site:not(.enzosport-homepage) .product-small .price,
body.enzosport-site:not(.enzosport-homepage) .product-small .price * { font-size: 14px; }
body.enzosport-site:not(.enzosport-homepage) .product-small .product-title a { color: var(--ink); font-weight: 700; line-height: 1.4; }
body.enzosport-site:not(.enzosport-homepage) .product-small .price { color: var(--blue-strong); font-weight: 800; font-variant-numeric: tabular-nums; }
body.enzosport-site:not(.enzosport-homepage) .woocommerce-result-count,
body.enzosport-site:not(.enzosport-homepage) .woocommerce-ordering,
body.enzosport-site:not(.enzosport-homepage) .category-filtering { font-size: 14px; }
body.enzosport-site:not(.enzosport-homepage) input,
body.enzosport-site:not(.enzosport-homepage) select,
body.enzosport-site:not(.enzosport-homepage) textarea { min-height: 46px; padding: 10px 13px; background: #fff; border: 1px solid #cddae7; border-radius: 10px; box-shadow: none; font-size: 14px; }
body.enzosport-site:not(.enzosport-homepage) button,
body.enzosport-site:not(.enzosport-homepage) .button,
body.enzosport-site:not(.enzosport-homepage) input[type="submit"] { min-height: 46px; display: inline-flex; align-items: center; justify-content: center; padding: 10px 20px; color: #fff; background: var(--blue-strong); border: 0; border-radius: 999px; font-size: 14px; font-weight: 800; line-height: 1.2; letter-spacing: 0; text-transform: none; transition: transform 0.2s ease, background-color 0.2s ease; }
body.enzosport-site:not(.enzosport-homepage) button:hover,
body.enzosport-site:not(.enzosport-homepage) .button:hover,
body.enzosport-site:not(.enzosport-homepage) input[type="submit"]:hover { background: #0665cb; transform: translateY(-1px); }
body.enzosport-site:not(.enzosport-homepage) .product-main .product-gallery,
body.enzosport-site:not(.enzosport-homepage) .product-main .product-info { padding: clamp(18px, 3vw, 32px); background: #fff; }
body.enzosport-site:not(.enzosport-homepage) .product-main .product-gallery { border-radius: 20px 0 0 20px; }
body.enzosport-site:not(.enzosport-homepage) .product-main .product-info { border-radius: 0 20px 20px 0; }
body.enzosport-site:not(.enzosport-homepage) .product-title { color: var(--ink); }
body.enzosport-site:not(.enzosport-homepage) .price-wrapper .price,
body.enzosport-site:not(.enzosport-homepage) .product-info .price { color: var(--blue-strong); font-variant-numeric: tabular-nums; }
body.enzosport-site:not(.enzosport-homepage) .entry-content,
body.enzosport-site:not(.enzosport-homepage) .term-description,
body.enzosport-site:not(.enzosport-homepage) .tab-panels { color: #405169; font-size: 16px; line-height: 1.72; }
body.enzosport-site:not(.enzosport-homepage) .entry-content img,
body.enzosport-site:not(.enzosport-homepage) .term-description img,
body.enzosport-site:not(.enzosport-homepage) .tab-panels img { border-radius: 16px; }

body.enzosport-site.single-product .shop-container {
  padding-top: clamp(14px, 1.5vw, 20px);
  padding-bottom: clamp(20px, 2.2vw, 28px);
}
body.enzosport-site.single-product .custom-product-page > .section {
  padding-top: clamp(10px, 1.2vw, 16px) !important;
  padding-bottom: clamp(14px, 1.8vw, 20px) !important;
}
body.enzosport-site.single-product .custom-product-page .section-content {
  width: min(var(--enzo-max), calc(100% - var(--enzo-page-gutter)));
  margin-right: auto;
  margin-left: auto;
}
body.enzosport-site.single-product .custom-product-page .row {
  width: 100%;
  max-width: none;
  margin-right: 0;
  margin-left: 0;
}
body.enzosport-site.single-product .custom-product-page .section-content > .row.row-collapse:first-child > .col.large-12:first-child .gap-element {
  padding-top: clamp(14px, 1.5vw, 18px) !important;
}
body.enzosport-site.single-product .custom-product-page .section-content > .row.row-collapse:first-child > .col.medium-2.large-2:has(.img-inner.image-cover.dark):not(:has(img)) {
  display: none !important;
}
body.enzosport-site.single-product .custom-product-page .section-content > .row.row-collapse:first-child > .col.medium-5.large-5 {
  flex-basis: 50%;
  max-width: 50%;
}
body.enzosport-site.single-product .custom-product-page .section-content > .row.row-collapse:first-child > .col.medium-5.large-5 > .col-inner {
  padding-right: clamp(20px, 2.5vw, 36px) !important;
}
body.enzosport-site.single-product .custom-product-page .section-content > .row.row-collapse:first-child > .col.medium-5.large-5 + .col.medium-5.large-5 > .col-inner {
  padding-right: clamp(6px, 1.4vw, 18px) !important;
  padding-left: clamp(4px, 1.2vw, 14px) !important;
}
body.enzosport-site.single-product .product-images {
  max-width: 620px;
}
body.enzosport-site.single-product .product-images,
body.enzosport-site.single-product .product-gallery-slider,
body.enzosport-site.single-product .product-gallery-slider .flickity-viewport,
body.enzosport-site.single-product .product-gallery-slider .flickity-slider {
  height: min(620px, calc(100vw - var(--enzo-page-gutter))) !important;
  min-height: min(620px, calc(100vw - var(--enzo-page-gutter))) !important;
}
body.enzosport-site.single-product .product-gallery-slider .woocommerce-product-gallery__image,
body.enzosport-site.single-product .product-gallery-slider .woocommerce-product-gallery__image a,
body.enzosport-site.single-product .product-gallery-slider .woocommerce-product-gallery__image img {
  width: 100%;
  height: 100%;
  display: block;
}
body.enzosport-site.single-product .product-gallery-slider .woocommerce-product-gallery__image img {
  object-fit: cover;
}
body.enzosport-site.single-product .product-breadcrumb-container { margin-bottom: clamp(10px, 1.4vw, 16px); }
body.enzosport-site.single-product .woocommerce-breadcrumb {
  width: 100%;
  padding: 11px 14px;
  color: #53667c !important;
  background: rgba(255, 255, 255, 0.88);
  border: 1px solid var(--line);
  border-radius: 14px;
  box-shadow: 0 8px 24px rgba(12, 41, 81, 0.06);
  font-size: 14px !important;
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: 0;
  text-transform: none;
  white-space: normal;
  overflow-wrap: anywhere;
}
body.enzosport-site.single-product .woocommerce-breadcrumb a {
  color: #173f74 !important;
  transition: color 0.2s ease;
}
body.enzosport-site.single-product .woocommerce-breadcrumb a:hover { color: var(--blue-strong) !important; }
body.enzosport-site.single-product .woocommerce-breadcrumb .divider {
  margin-right: 8px;
  margin-left: 8px;
  color: #9aadbf;
  opacity: 1;
}
body.enzosport-site.single-product .product-title-container,
body.enzosport-site.single-product .product-short-description,
body.enzosport-site.single-product .product-short-description p { color: var(--ink); }
body.enzosport-site.single-product h1.product-title,
body.enzosport-site.single-product .product-title {
  margin-bottom: 0;
  font-size: clamp(28px, 2.35vw, 34px);
  line-height: 1.14;
  letter-spacing: -0.018em;
}
body.enzosport-site.single-product .product-title-container + .add-to-cart-container + .gap-element.hide-for-medium,
body.enzosport-site.single-product .product-price-container + .gap-element.hide-for-medium,
body.enzosport-site.single-product .product-short-description + .gap-element.hide-for-medium {
  padding-top: clamp(12px, 1.55vw, 18px) !important;
}
body.enzosport-site.single-product .product-price-container,
body.enzosport-site.single-product .price-wrapper,
body.enzosport-site.single-product .price-wrapper .price {
  margin: 0 !important;
}
body.enzosport-site.single-product .price-wrapper .price {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 8px 14px;
  line-height: 1.15;
}
body.enzosport-site.single-product .product-price-container.is-xlarge .price,
body.enzosport-site.single-product .product-price-container.is-xlarge .amount,
body.enzosport-site.single-product .product-price-container.is-xlarge bdi,
body.enzosport-site.single-product .product-price-container.is-xlarge .woocommerce-Price-currencySymbol {
  font-size: clamp(22px, 1.8vw, 24px) !important;
  line-height: 1.2;
}
body.enzosport-site.single-product .product-short-description p {
  max-width: 62ch;
  margin: 0;
  line-height: 1.6;
}
body.enzosport-site.single-product .price-wrapper .price,
body.enzosport-site.single-product .price-wrapper .amount,
body.enzosport-site.single-product .price-wrapper bdi,
body.enzosport-site.single-product .price-wrapper .woocommerce-Price-currencySymbol {
  color: var(--blue-strong) !important;
}
body.enzosport-site.single-product .enzo-advantage-list,
body.enzosport-site.single-product .enzo-advantage-list li {
  color: #d91f1a !important;
  font-weight: 800;
}
body.enzosport-site.single-product .enzo-advantage-list {
  margin-top: 14px;
  padding-left: 22px;
}
body.enzosport-site.single-product .enzo-advantage-list li {
  margin-bottom: 8px;
  font-size: 15px !important;
  line-height: 1.45;
}
body.enzosport-site.single-product .enzo-benefit-box {
  overflow: hidden;
  background: #fff;
  border: 1px solid #bee4ff;
  border-radius: 16px;
  box-shadow: 0 14px 34px rgba(12, 41, 81, 0.1);
}
body.enzosport-site.single-product .enzo-benefit-header {
  color: #fff !important;
  background: #064c92 !important;
}
body.enzosport-site.single-product .enzo-benefit-header * { color: #fff !important; }
body.enzosport-site.single-product .enzo-benefit-list {
  color: #163857 !important;
  background: #eaf7ff !important;
}
body.enzosport-site.single-product .enzo-benefit-list li {
  color: #163857 !important;
  margin-bottom: 8px;
}
body.enzosport-site.single-product .enzo-benefit-list li::marker { color: var(--blue-strong); }
body.enzosport-site .cta-band .cta-copy h2,
body.enzosport-site .enzo-global-cta .cta-copy h2 {
  color: #fff !important;
}

body.enzosport-site .section-social,
body.enzosport-site .mobile-sidebar,
body.enzosport-site .ux-body-overlay,
body.enzosport-site #main-menu,
body.enzosport-site .mfp-bg.mfp-ready:not(.off-canvas-ready) { display: none !important; }
body.enzosport-site .enzo-cart,
body.enzosport-site .cart-icon,
body.enzosport-site .header-cart-link,
body.enzosport-site .widget_shopping_cart,
body.enzosport-site .woocommerce-mini-cart,
body.enzosport-site .add_to_cart_button,
body.enzosport-site .ajax_add_to_cart,
body.enzosport-site.single-product form.cart { display: none !important; }
body.enzosport-site small,
body.enzosport-site .is-small,
body.enzosport-site .is-smaller,
body.enzosport-site .is-xsmall,
body.enzosport-site .is-xxsmall,
body.enzosport-site .badge,
body.enzosport-site .tagcloud,
body.enzosport-site .widget > ul > li,
body.enzosport-site .widget_layered_nav_filters li,
body.enzosport-site .woocommerce-message,
body.enzosport-site .woocommerce-error,
body.enzosport-site .woocommerce-info { font-size: 14px !important; }
body.enzosport-site .quick-view,
body.enzosport-site .posted_in,
body.enzosport-site .posted_in a,
body.enzosport-site .product-tabs a,
body.enzosport-site .entry-meta,
body.enzosport-site .entry-meta a,
body.enzosport-site .entry-meta span,
body.enzosport-site .entry-meta time,
body.enzosport-site .cat-links,
body.enzosport-site .cat-links a,
body.enzosport-site .post-date-month,
body.enzosport-site .post_comments,
body.enzosport-site .post_comments span { font-size: 14px !important; }
body.enzosport-site .enzo-header .enzo-menu-toggle { display: none !important; }
body.enzosport-site .enzo-header .enzo-menu-toggle { min-height: 46px !important; margin: 0 !important; padding: 0 !important; color: var(--ink) !important; background: #fff !important; border: 1px solid var(--line) !important; border-radius: 13px !important; }

@media (max-width: 1120px) {
  body.enzosport-site .enzo-header > .container > .nav { display: none; }
  body.enzosport-site .enzo-header .enzo-menu-toggle { display: flex !important; }
}

@media (max-width: 950px) {
  body.enzosport-homepage .hero-inner { height: auto; min-height: auto; display: grid; grid-template-columns: 1fr; gap: 0; }
  body.enzosport-homepage .hero-copy { width: 100%; padding: 48px 0 24px; }
  body.enzosport-homepage .hero-visual { position: relative; inset: auto; width: 100%; height: 400px; overflow: hidden; }
  body.enzosport-homepage .hero-visual::before { background: linear-gradient(90deg, rgba(6, 26, 57, 0.34) 0%, rgba(6, 26, 57, 0.18) 44%, rgba(6, 26, 57, 0) 74%); }
  body.enzosport-homepage .hero-slide { inset: 0; width: 100%; max-width: none; height: 100%; object-fit: cover; object-position: 58% center; }
  body.enzosport-homepage .hero-slider-dots { top: 18px; right: 18px; }
  body.enzosport-site .cta-inner { grid-template-columns: 120px 1fr; }
  body.enzosport-site .checks { grid-column: 1 / -1; }
  body.enzosport-site .footer-grid { grid-template-columns: 1fr 1fr; }
  body.enzosport-site:not(.enzosport-homepage) .product-main .product-gallery,
  body.enzosport-site:not(.enzosport-homepage) .product-main .product-info { border-radius: 18px; }
}

@media (max-width: 782px) {
  body.admin-bar.enzosport-site .header { top: 46px; }
  body.enzosport-site.single-product .float-contact { display: none; }
  body.enzosport-site.single-product .custom-product-page .section-content > .row.row-collapse:first-child > .col.medium-5.large-5 {
    flex-basis: 100%;
    max-width: 100%;
  }
  body.enzosport-site.single-product .custom-product-page .section-content > .row.row-collapse:first-child > .col.medium-5.large-5 > .col-inner,
  body.enzosport-site.single-product .custom-product-page .section-content > .row.row-collapse:first-child > .col.medium-5.large-5 + .col.medium-5.large-5 > .col-inner {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
  body.enzosport-site.single-product .product-images {
    width: 100%;
    max-width: 620px;
    margin-right: auto;
    margin-left: auto;
  }
  body.enzosport-site.single-product h1.product-title,
  body.enzosport-site.single-product .product-title {
    margin-top: 16px;
    font-size: clamp(28px, 4.2vw, 32px);
    line-height: 1.14;
  }
  body.enzosport-site.single-product .product-price-container {
    margin-top: 12px !important;
  }
  body.enzosport-site.single-product .product-short-description {
    margin-top: 14px !important;
  }
  body.enzosport-site.single-product .enzo-contact-bar {
    margin-top: 18px !important;
  }
}

@media (max-width: 680px) {
  :root { --enzo-page-gutter: 28px; }
  body.enzosport-site { overflow-x: clip; }
  body.enzosport-site .container { width: calc(100% - var(--enzo-page-gutter)); }
  body.enzosport-site .topbar { height: 36px; }
  body.enzosport-site .topbar .container { justify-content: center; overflow: hidden; white-space: nowrap; }
  body.enzosport-site .topbar .container > a { display: none; }
  .enzo-topbar-desktop { display: none; }
  .enzo-topbar-mobile { display: inline; }
  body.enzosport-site .header { height: 66px; }
  body.enzosport-site .header .container { gap: 8px; }
  body.enzosport-site .brand { min-width: 0; flex: 1; }
  body.enzosport-site .enzo-header-brand { flex-basis: auto; }
  body.enzosport-site .enzo-header-logo { width: 166px; max-height: 38px; }
  body.enzosport-site .brand small { display: none; }
  body.enzosport-site .brand b { font-size: 18px; }
  .enzo-header-actions { gap: 8px; }
  .enzo-menu-toggle { width: 42px; height: 42px; min-height: 42px !important; padding: 0 !important; }
  .enzo-quote-button { display: none !important; }
  body.enzosport-homepage .hero-copy { padding: 34px 0 18px; }
  body.enzosport-homepage .eyebrow { max-width: 340px; margin-bottom: 10px; font-size: 14px; line-height: 1.45; letter-spacing: 0.08em; }
  body.enzosport-homepage .hero h1 { max-width: 100%; margin-bottom: 16px; font-size: clamp(34px, 9.4vw, 39px); line-height: 1.04; letter-spacing: 0; }
  body.enzosport-homepage .hero-title-mobile-break { display: block; }
  body.enzosport-homepage .hero-desc { max-width: 100%; margin-bottom: 18px; font-size: 15px; line-height: 1.55; }
  body.enzosport-homepage .quick-icons { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin-bottom: 20px; }
  body.enzosport-homepage .quick-icon { min-width: 0; display: grid; grid-template-columns: 38px minmax(0, 1fr); column-gap: 9px; align-items: center; color: #fff; text-align: left; line-height: 1.32; }
  body.enzosport-homepage .quick-icon i { grid-row: 1 / 3; width: 38px; height: 38px; margin: 0; font-size: 15px; }
  body.enzosport-homepage .quick-icon br { display: none; }
  body.enzosport-homepage .quick-icon b { display: block; font-size: 14px; line-height: 1.25; }
  body.enzosport-homepage .quick-icon small { display: block; color: #dcecff; font-size: 14px; line-height: 1.35; }
  body.enzosport-homepage .quick-icon-speed b { color: #7fd7ff; font-size: 16px; }
  body.enzosport-homepage .hero-actions { gap: 10px; }
  body.enzosport-homepage .hero-actions .btn { width: 100%; min-height: 46px; padding: 11px 16px; }
  body.enzosport-homepage .proof { justify-content: center; flex-wrap: wrap; gap: 8px 12px; margin-top: 18px; line-height: 1.35; }
  body.enzosport-homepage .avatars i { width: 25px; height: 25px; }
  body.enzosport-homepage .hero-visual { height: 300px; margin-top: 4px; border-radius: 22px 22px 0 0; }
  body.enzosport-homepage .hero-slide { width: 100%; object-position: 58% center; }
  body.enzosport-homepage .hero-slider-dots { top: 12px; right: 12px; gap: 7px; }
  body.enzosport-homepage .hero-slider-dots button { width: 8px; height: 8px; min-height: 8px; }
  body.enzosport-homepage .hero-slider-dots button.is-active { width: 28px; }
  body.enzosport-homepage .trust-wrap { margin-top: 0; padding-bottom: 4px; }
  body.enzosport-homepage .trust { grid-template-columns: repeat(2, minmax(0, 1fr)); border-radius: 16px; }
  body.enzosport-homepage .trust-item { min-width: 0; width: 100%; min-height: 76px; gap: 10px; padding: 13px 12px; border-right: 0; border-bottom: 1px solid var(--line); }
  body.enzosport-homepage .trust-item:nth-child(odd) { border-right: 1px solid var(--line); }
  body.enzosport-homepage .trust-item:nth-child(n+3) { border-bottom: 0; }
  body.enzosport-homepage .trust-item i { width: 38px; height: 38px; flex: 0 0 38px; }
  body.enzosport-homepage .trust-item div { min-width: 0; }
  body.enzosport-homepage .trust-item b { font-size: 14px; line-height: 1.2; }
  body.enzosport-homepage .trust-item span { font-size: 14px; line-height: 1.35; overflow-wrap: anywhere; }
  body.enzosport-homepage .section { padding: 52px 0; }
  body.enzosport-homepage .section-head { margin-bottom: 24px; }
  body.enzosport-homepage .section-head .kicker { font-size: 14px; line-height: 1.4; }
  body.enzosport-homepage .section-head h2 { font-size: 24px; line-height: 1.18; letter-spacing: 0; }
  body.enzosport-homepage .section-head p { font-size: 14px; line-height: 1.55; }
  body.enzosport-homepage .sports,
  body.enzosport-homepage .products,
  body.enzosport-homepage .teams,
  body.enzosport-homepage .reviews { gap: 14px; }
  body.enzosport-homepage .sport-card { border-radius: 14px; }
  body.enzosport-homepage .commitments { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
  body.enzosport-homepage .commit { min-height: 170px; padding: 18px 12px; }
  body.enzosport-homepage .commit b,
  body.enzosport-homepage .commit span { line-height: 1.4; }
  body.enzosport-homepage .process { grid-template-columns: 1fr; gap: 14px; }
  body.enzosport-homepage .process::before { display: none; }
  body.enzosport-homepage .step { min-height: 104px; display: grid; grid-template-columns: 46px minmax(0, 1fr); column-gap: 12px; align-items: start; padding: 15px; text-align: left; background: #fff; border: 1px solid #e3eaf3; border-radius: 14px; box-shadow: 0 8px 20px rgba(21, 54, 92, 0.04); }
  body.enzosport-homepage .step i { grid-row: 1 / 3; width: 46px; height: 46px; margin: 0; }
  body.enzosport-homepage .step b { font-size: 14px; line-height: 1.3; }
  body.enzosport-homepage .step p { font-size: 14px; line-height: 1.45; }
  body.enzosport-homepage .tabs { justify-content: flex-start; flex-wrap: nowrap; overflow-x: auto; padding: 2px 0 8px; scroll-snap-type: x proximity; }
  body.enzosport-homepage .tabs::-webkit-scrollbar { display: none; }
  body.enzosport-homepage .tabs button { flex: 0 0 auto; scroll-snap-align: start; }
  body.enzosport-homepage .product .info { padding: 10px; }
  body.enzosport-homepage .review { padding: 16px; }
  body.enzosport-site .cta-band { padding: 32px 0; }
  body.enzosport-site .cta-inner { grid-template-columns: 1fr; text-align: center; }
  body.enzosport-site .cta-inner { gap: 18px; }
  body.enzosport-site .cta-inner > img { width: 112px; height: 112px; margin: auto; border-radius: 16px; }
  body.enzosport-site .cta-copy h2 { font-size: 22px; line-height: 1.2; letter-spacing: 0; }
  body.enzosport-site .cta-copy p { margin-bottom: 12px; line-height: 1.55; }
  body.enzosport-site .cta-actions { justify-content: center; }
  body.enzosport-site .cta-actions .btn { width: 100%; }
  body.enzosport-site .checks { line-height: 1.7; }
  body.enzosport-site .footer { padding: 34px 0 22px; }
  body.enzosport-site .footer-grid { grid-template-columns: 1fr 1fr; gap: 24px 18px; }
  body.enzosport-site .footer-grid > div:first-child { grid-column: 1 / -1; }
  body.enzosport-site .footer h3 { margin-bottom: 10px; line-height: 1.3; }
  body.enzosport-site .footer p,
  body.enzosport-site .footer a:not(.brand) { line-height: 1.48; }
  body.enzosport-site .float-contact { display: none; }
  body.enzosport-site:not(.enzosport-homepage) .page-wrapper,
  body.enzosport-site:not(.enzosport-homepage) .shop-container,
  body.enzosport-site:not(.enzosport-homepage) .product-main,
  body.enzosport-site:not(.enzosport-homepage) .product-footer { padding-top: 24px; padding-bottom: 34px; }
  body.enzosport-site.single-product .shop-container {
    padding-top: 14px;
    padding-bottom: 22px;
  }
  body.enzosport-site.single-product .custom-product-page > .section {
    padding-top: 10px !important;
    padding-bottom: 14px !important;
  }
  body.enzosport-site.single-product .woocommerce-breadcrumb { padding: 10px 12px; }
  body.enzosport-site.single-product .custom-product-page .section-content > .row.row-collapse:first-child > .col.medium-5.large-5 {
    flex-basis: 100%;
    max-width: 100%;
  }
  body.enzosport-site.single-product .custom-product-page .section-content > .row.row-collapse:first-child > .col.medium-5.large-5 > .col-inner,
  body.enzosport-site.single-product .custom-product-page .section-content > .row.row-collapse:first-child > .col.medium-5.large-5 + .col.medium-5.large-5 > .col-inner {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
  body.enzosport-site.single-product .product-images {
    width: 100%;
    max-width: none;
  }
  body.enzosport-site.single-product h1.product-title,
  body.enzosport-site.single-product .product-title {
    margin-top: 14px;
    font-size: clamp(26px, 7.4vw, 28px);
    line-height: 1.13;
  }
  body.enzosport-site.single-product .product-price-container {
    margin-top: 12px !important;
  }
  body.enzosport-site.single-product .product-short-description {
    margin-top: 14px !important;
  }
  body.enzosport-site.single-product .enzo-contact-bar {
    margin-top: 18px !important;
  }
  body.enzosport-site.single-product .custom-product-page .col-inner { padding-right: 0 !important; padding-left: 0 !important; }
}

@media (max-width: 380px) {
  :root { --enzo-page-gutter: 24px; }
  body.enzosport-site .container { width: calc(100% - var(--enzo-page-gutter)); }
  body.enzosport-site .enzo-header-logo { width: 152px; }
  body.enzosport-homepage .hero-copy { padding-top: 30px; }
  body.enzosport-homepage .eyebrow { letter-spacing: 0.06em; }
  body.enzosport-homepage .hero h1 { font-size: 34px; }
  body.enzosport-homepage .quick-icon { grid-template-columns: 34px minmax(0, 1fr); column-gap: 7px; }
  body.enzosport-homepage .quick-icon i { width: 34px; height: 34px; }
  body.enzosport-homepage .hero-visual { height: 280px; }
  body.enzosport-homepage .trust { grid-template-columns: 1fr; }
  body.enzosport-homepage .trust-item,
  body.enzosport-homepage .trust-item:nth-child(odd),
  body.enzosport-homepage .trust-item:nth-child(n+3) { border-right: 0; border-bottom: 1px solid var(--line); }
  body.enzosport-homepage .trust-item:last-child { border-bottom: 0; }
  body.enzosport-homepage .section { padding: 44px 0; }
  body.enzosport-site .footer-grid { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) {
  body.enzosport-homepage .hero-slide,
  body.enzosport-homepage .hero-slider-dots button { transition: none; }
}
