:root {
  --esp-red: #e21b23;
  --esp-red-dark: #b70f16;
  --esp-black: #07080a;
  --esp-panel: #101216;
  --esp-line: #2b2e34;
  --esp-paper: #ece9e2;
  --esp-ink: #101114;
  --esp-muted: #969aa2;
  --esp-width: 1440px;
  --esp-display: "DINCondensed", Impact, "Arial Narrow", Arial, sans-serif;
}

html { scroll-behavior: smooth; }
body.esp-v2 { margin: 0; background: var(--esp-black); color: #f5f5f6; font-family: Arial, Helvetica, sans-serif; }
body.esp-v2 *, body.esp-v2 *::before, body.esp-v2 *::after { box-sizing: border-box; }
body.esp-v2 a { color: inherit; text-decoration: none; }
body.esp-v2 img { max-width: 100%; }
body.esp-v2 #wrapper { min-width: 0; background: var(--esp-black); }
body.esp-v2 #wrapper > nav { display: none !important; }
body.esp-v2 #wrapper > aside { display: none !important; }
body.esp-v2 #wrapper > section { min-height: 50vh; padding: 0; background: var(--esp-black); }
body.esp-v2 #wrapper > section > .wrap,
body.esp-v2 #wrapper > section > .wrap > .content,
body.esp-v2 #wrapper > section .itemContainer { width: 100%; max-width: none; margin: 0; padding: 0; float: none; }
body.esp-v2 #wrapper > footer:not(.esp-v2-footer),
body.esp-v2 #wrapper > .copy { display: none !important; }
body.esp-v2 .parent { z-index: 120; }

.esp-v2-width { width: min(calc(100% - 64px), var(--esp-width)); margin-inline: auto; }
.esp-v2-kicker { margin: 0 0 18px; color: var(--esp-red); font-size: 10px; font-weight: 900; letter-spacing: .17em; text-transform: uppercase; }
.esp-v2-kicker::before { content: ""; display: inline-block; width: 28px; height: 2px; margin: 0 10px 3px 0; background: currentColor; }

.esp-v2-utility { height: 34px; border-bottom: 1px solid var(--esp-line); background: #050607; color: #a8abb2; font-size: 10px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.esp-v2-utility__inner { height: 100%; display: flex; align-items: center; justify-content: space-between; }
.esp-v2-utility p { margin: 0; }
.esp-v2-utility span { display: inline-block; width: 6px; height: 6px; margin: 0 8px 1px 0; border-radius: 50%; background: var(--esp-red); box-shadow: 0 0 12px #e21b23aa; }
.esp-v2-site-header { position: sticky; top: 0; z-index: 80; border-bottom: 1px solid var(--esp-line); background: #090a0dec; backdrop-filter: blur(16px); }
.esp-v2-site-header__inner { height: 82px; display: grid; grid-template-columns: 150px 1fr auto; align-items: center; gap: 28px; }
.esp-v2-logo img { display: block; width: 118px; max-height: 52px; object-fit: contain; filter: brightness(0) invert(1); }
.esp-v2-menu { display: flex; justify-content: center; gap: clamp(18px, 2.6vw, 40px); }
.esp-v2-menu a { position: relative; padding: 34px 0 31px; color: #d9dade; font-size: 11px; font-weight: 900; letter-spacing: .09em; text-transform: uppercase; }
.esp-v2-menu a::after { content: ""; position: absolute; left: 0; right: 100%; bottom: 20px; height: 2px; background: var(--esp-red); transition: right .22s ease; }
.esp-v2-menu a:hover::after, .esp-v2-menu a.is-active::after { right: 0; }
.esp-v2-actions { display: flex; align-items: center; gap: 10px; }
.esp-v2-search-toggle { padding: 12px 10px; border: 0; background: transparent; color: #d5d6da; font-size: 10px; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; cursor: pointer; }
.esp-v2-cart { min-width: 42px; padding: 11px 12px; border: 1px solid #3a3d43; font-size: 11px; font-weight: 900; text-align: center; }
.esp-v2-dealer { display: inline-flex; gap: 14px; align-items: center; padding: 12px 15px; border: 1px solid #3a3d43; font-size: 10px; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.esp-v2-dealer:hover, .esp-v2-cart:hover { border-color: var(--esp-red); background: var(--esp-red); }
.esp-v2-menu-toggle { display: none; width: 44px; height: 44px; padding: 11px; border: 1px solid #3a3d43; background: transparent; cursor: pointer; }
.esp-v2-menu-toggle i { display: block; height: 1px; margin: 5px 0; background: #fff; }
.esp-v2-search { display: none; padding: 26px max(32px, calc((100vw - var(--esp-width))/2)); border-top: 1px solid var(--esp-line); background: #0d0f12; }
.esp-v2-search.is-open { display: flex; }
.esp-v2-search input { flex: 1; min-width: 0; padding: 15px 17px; border: 1px solid #3a3d43; background: #15171b; color: #fff; outline: none; }
.esp-v2-search input:focus { border-color: var(--esp-red); }
.esp-v2-search button { padding: 0 25px; border: 0; background: var(--esp-red); color: #fff; font-weight: 900; text-transform: uppercase; cursor: pointer; }

.esp-v2-footer { position: relative; z-index: 2; border-top: 1px solid #25282d; background: #050607; color: #fff; }
.esp-v2-footer__top { display: grid; grid-template-columns: 1.8fr repeat(3, 1fr); gap: 64px; padding: 72px 0 58px; }
.esp-v2-footer__brand img { width: 120px; filter: brightness(0) invert(1); }
.esp-v2-footer__brand p { max-width: 360px; color: #85888f; font-size: 12px; line-height: 1.65; }
.esp-v2-footer h3 { margin: 0 0 18px; color: #c8cad0; font-size: 10px; letter-spacing: .13em; text-transform: uppercase; }
.esp-v2-footer nav, .esp-v2-footer__contact { display: flex; flex-direction: column; align-items: flex-start; gap: 11px; }
/* Legacy ESP mobile CSS makes every nav fixed; the footer navigation must stay in the grid flow. */
.esp-v2-footer nav {
  position: static !important;
  inset: auto !important;
  width: auto !important;
  max-height: none !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  overflow: visible !important;
}
.esp-v2-footer nav a, .esp-v2-footer__contact a, .esp-v2-footer__contact p { margin: 0; color: #85888f; font-size: 12px; line-height: 1.45; }
.esp-v2-footer nav a:hover, .esp-v2-footer__contact a:hover { color: #fff; }
.esp-v2-footer__bottom { display: flex; justify-content: space-between; gap: 25px; padding: 19px 0 26px; border-top: 1px solid #24272c; color: #60636a; font-size: 9px; letter-spacing: .06em; text-transform: uppercase; }
.esp-v2-footer__bottom p { margin: 0; }

.esp-v2-home { overflow: hidden; }
.esp-v2-hero { position: relative; min-height: 720px; display: flex; align-items: center; isolation: isolate; overflow: hidden; }
.esp-v2-hero > img { position: absolute; inset: 0; z-index: -2; width: 100%; height: 100%; object-fit: cover; filter: saturate(.72) contrast(1.12); }
.esp-v2-hero::after { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, #040506f7 0%, #040506c9 34%, #0405062e 72%), linear-gradient(0deg, #07080ae8, transparent 50%); }
.esp-v2-hero > div { width: min(calc(100% - 64px), var(--esp-width)); margin: auto; padding: 90px 0; }
.esp-v2-hero h1 { max-width: 900px; margin: 0; font: 900 clamp(74px, 10vw, 152px)/.82 var(--esp-display); letter-spacing: -.025em; text-transform: uppercase; }
.esp-v2-hero > div > p:not(.esp-v2-kicker) { max-width: 600px; margin: 28px 0; color: #c5c7cc; font-size: 18px; line-height: 1.65; }
.esp-v2-hero > div > a { display: inline-flex; padding: 15px 22px; background: var(--esp-red); font-size: 11px; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.esp-v2-category-strip { display: grid; grid-template-columns: repeat(4, 1fr); border-block: 1px solid var(--esp-line); background: #0d0f12; }
.esp-v2-category-strip a { padding: 30px; border-right: 1px solid var(--esp-line); font-size: 11px; font-weight: 900; letter-spacing: .1em; text-align: center; text-transform: uppercase; }
.esp-v2-category-strip a:last-child { border-right: 0; }
.esp-v2-category-strip a:hover { background: var(--esp-red); }
.esp-v2-home-section { padding: 118px max(32px, calc((100vw - var(--esp-width))/2)); background: #0d0f12; }
.esp-v2-home-section--light { background: var(--esp-paper); color: var(--esp-ink); }
.esp-v2-home-section > header { float: none !important; width: auto !important; display: flex; flex-wrap: wrap; align-items: end; justify-content: space-between; gap: 28px; margin-bottom: 54px; }
.esp-v2-home-section > header .esp-v2-kicker { width: 100%; }
.esp-v2-home-section h2, .esp-v2-home-about h2 { margin: 0; font: 900 clamp(58px, 7vw, 104px)/.86 var(--esp-display); text-transform: uppercase; }
.esp-v2-home-section > header > a { border-bottom: 1px solid #777b84; padding-bottom: 6px; font-size: 10px; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.esp-v2-series-grid { clear: both; width: 100% !important; display: grid; grid-template-columns: repeat(3, 1fr); gap: 15px; }
.esp-v2-series-grid a { position: relative; min-height: 430px; overflow: hidden; background: #111; color: #fff; }
.esp-v2-series-grid a::after { content: ""; position: absolute; inset: 0; background: linear-gradient(0deg, #050607e9, transparent 65%); }
.esp-v2-series-grid img { width: 100%; height: 100%; object-fit: cover; transition: transform .45s ease; }
.esp-v2-series-grid a:hover img { transform: scale(1.04); }
.esp-v2-series-grid strong { position: absolute; z-index: 2; left: 28px; bottom: 28px; font: 900 48px/.9 var(--esp-display); text-transform: uppercase; }
.esp-v2-home-about { display: grid; grid-template-columns: 1.1fr .9fr; gap: 100px; padding: 120px max(32px, calc((100vw - var(--esp-width))/2)); background: var(--esp-paper); color: var(--esp-ink); }
.esp-v2-home-about > div:last-child { padding-top: 30px; }
.esp-v2-home-about > div:last-child p { color: #52555a; font-size: 17px; line-height: 1.8; }
.esp-v2-home-about a { display: inline-block; margin-top: 25px; border-bottom: 1px solid #777; padding-bottom: 6px; font-size: 10px; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }

body.esp-v2:not(.esp-sub-890) #wrapper > section .itemContainer { padding: 76px max(32px, calc((100vw - var(--esp-width))/2)) 120px; }
body.esp-v2 .title_page, body.esp-v2 .catalogh1, body.esp-v2 .news.series.custom.infopage > h1 { float: none !important; width: 100% !important; margin: 0 0 58px !important; color: #fff !important; font: 900 clamp(64px, 8vw, 118px)/.84 var(--esp-display) !important; letter-spacing: -.02em; text-transform: uppercase; }
body.esp-v2.esp-sub-864 .itemContainer > .title_page,
body.esp-v2.esp-sub-864 .itemContainer > .news.list.custom.contact_page,
body.esp-v2.esp-sub-860 .itemContainer > .news.list.custom.contact_page.series,
body.esp-v2.esp-sub-872 .itemContainer > .catalog.searchblock { display: none !important; }
.esp-v2-search-query { margin: 25px 0 0; color: #a3a6ad; font-size: 15px; }
.esp-v2-empty { padding: 70px; border-top: 3px solid var(--esp-red); background: var(--esp-paper); color: var(--esp-ink); }
.esp-v2-empty h2 { margin: 0 0 18px; font: 900 52px/.95 var(--esp-display); text-transform: uppercase; }
.esp-v2-empty p { color: #5e6167; }
.esp-v2-empty a { display: inline-block; margin-top: 20px; border-bottom: 1px solid #777; padding-bottom: 5px; font-size: 10px; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
body.esp-v2 .browse { margin: 0 0 42px; color: #858991; font-size: 10px; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
body.esp-v2 .browse a:hover { color: #fff; }
body.esp-v2 .backurl { display: inline-flex; margin-bottom: 26px; color: #a2a5ac; font-size: 10px; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
body.esp-v2 .slides { background: #111318; }
body.esp-v2 .slides .slide_img { max-height: 420px; object-fit: cover; opacity: .72; }

body.esp-v2 .news.series > .left.bigcatalog,
body.esp-v2 .news.series.custom.infopage > .left.bigcatalog { width: 100%; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; float: none; }
body.esp-v2 article.category, body.esp-v2 .list_sub { position: relative; min-height: 360px; margin: 0; overflow: hidden; border: 1px solid var(--esp-line); background: #111318; }
body.esp-v2 article.category > a:first-child, body.esp-v2 .list_sub > a:first-child { display: block; height: 290px; background: #17191d; }
body.esp-v2 article.category img, body.esp-v2 .list_sub img { width: 100% !important; height: 100% !important; object-fit: cover; filter: saturate(.7) contrast(1.07); transition: transform .4s ease, filter .4s ease; }
body.esp-v2 article.category:hover img, body.esp-v2 .list_sub:hover img { transform: scale(1.035); filter: saturate(1); }
body.esp-v2 article.category h3, body.esp-v2 .list_sub h3 { margin: 0; padding: 24px; color: #fff; font: 900 30px/1 var(--esp-display); text-transform: uppercase; }
body.esp-v2 .section-info { margin-top: 70px; padding: 70px; border-top: 3px solid var(--esp-red); background: var(--esp-paper); color: var(--esp-ink); }
body.esp-v2 .section-info .news.textpage { max-width: 980px; margin: auto; color: #3e4146; font-size: 17px; line-height: 1.8; }

.esp-v2-product-grid { clear: both; width: 100% !important; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.esp-v2-product-card { min-width: 0; border: 1px solid var(--esp-line); background: #0d0f12; color: #fff; }
.esp-v2-product-card__image { position: relative; display: grid; place-items: center; aspect-ratio: 4/3; overflow: hidden; background: #e8e5df; }
.esp-v2-product-card__image img { width: 100%; height: 100%; object-fit: contain; transition: transform .4s ease; }
.esp-v2-product-card:hover .esp-v2-product-card__image img { transform: scale(1.035); }
.esp-v2-badge { position: absolute; z-index: 2; left: 16px; top: 16px; padding: 7px 9px; background: var(--esp-red); font-size: 9px; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.esp-v2-product-card__body { padding: 24px; }
.esp-v2-product-card__body > p { min-height: 12px; margin: 0 0 10px; color: #777b84; font-size: 9px; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.esp-v2-product-card h2 { min-height: 58px; margin: 0 0 20px; font: 900 30px/1 var(--esp-display); text-transform: uppercase; }
.esp-v2-product-card__meta { display: flex; justify-content: space-between; gap: 16px; padding-top: 18px; border-top: 1px solid var(--esp-line); }
.esp-v2-product-card__meta strong { font-size: 15px; }
.esp-v2-product-card__meta span { color: #a1a4ab; font-size: 10px; font-weight: 900; letter-spacing: .07em; text-transform: uppercase; }
.esp-v2-product-card__meta span.is-stock { color: #7fc790; }

.esp-v2-product-detail { background: var(--esp-paper); color: var(--esp-ink); }
.esp-v2-product-detail { display: grid; grid-template-columns: minmax(0, 1.12fr) minmax(420px, .88fr); }
.esp-v2-product-gallery { min-height: 720px; display: grid; grid-template-columns: 90px 1fr; gap: 22px; padding: 55px; border-right: 1px solid #c8c5be; }
.esp-v2-product-thumbs { display: flex; flex-direction: column; gap: 10px; }
.esp-v2-product-thumbs button { padding: 5px; border: 1px solid #c5c2ba; background: transparent; cursor: pointer; }
.esp-v2-product-thumbs button.is-active { border-color: var(--esp-red); }
.esp-v2-product-thumbs img { width: 100%; height: 66px; object-fit: contain; }
.esp-v2-product-main { display: grid; place-items: center; min-width: 0; }
.esp-v2-product-main img { width: 100%; max-height: 630px; object-fit: contain; }
.esp-v2-product-summary { display: flex; flex-direction: column; justify-content: center; padding: 70px max(44px, calc((100vw - var(--esp-width))/2)) 70px 58px; }
.esp-v2-product-summary h1 { margin: 0; font: 900 clamp(60px, 7vw, 102px)/.84 var(--esp-display); text-transform: uppercase; }
.esp-v2-product-lead { color: #51545a; font-size: 16px; line-height: 1.7; }
.esp-v2-product-facts { display: grid; grid-template-columns: repeat(3, 1fr); margin: 30px 0; border-block: 1px solid #c7c4bd; }
.esp-v2-product-facts div { padding: 18px 14px 18px 0; }
.esp-v2-product-facts span { display: block; color: #77797e; font-size: 9px; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.esp-v2-product-facts strong { display: block; margin-top: 7px; font-size: 13px; }
.esp-v2-buy { display: flex; gap: 10px; }
.esp-v2-buy button, .esp-v2-buy a { display: inline-flex; min-height: 48px; align-items: center; justify-content: center; padding: 12px 20px; border: 1px solid var(--esp-ink); background: transparent; color: var(--esp-ink); font-size: 10px; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; cursor: pointer; }
.esp-v2-buy button { border-color: var(--esp-red); background: var(--esp-red); color: #fff; }
.esp-v2-product-note { margin-top: 24px; color: #6e7075; font-size: 11px; line-height: 1.6; }
.esp-v2-product-copy { grid-column: 1/-1; padding: 90px max(32px, calc((100vw - var(--esp-width))/2)) 120px; background: #0b0d10; color: #fff; }
.esp-v2-product-copy section { display: grid; grid-template-columns: .7fr 1.3fr; gap: 80px; padding: 55px 0; border-top: 1px solid var(--esp-line); }
.esp-v2-product-copy h2 { margin: 0; font: 900 clamp(52px, 6vw, 88px)/.86 var(--esp-display); text-transform: uppercase; }
.esp-v2-product-copy section > div { color: #afb2b9; font-size: 16px; line-height: 1.78; }
.esp-v2-specs table { width: 100%; border-collapse: collapse; }
.esp-v2-specs td { padding: 13px 0; border-bottom: 1px solid var(--esp-line); }

.esp-v2-news-grid { clear: both; width: 100% !important; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.esp-v2-news-card { border: 1px solid var(--esp-line); background: #0d0f12; }
.esp-v2-news-card__image { display: block; aspect-ratio: 16/10; overflow: hidden; background: #17191d; }
.esp-v2-news-card__image img { width: 100%; height: 100%; object-fit: cover; filter: saturate(.72) contrast(1.08); transition: transform .4s ease; }
.esp-v2-news-card:hover img { transform: scale(1.04); }
.esp-v2-news-card > div { padding: 27px; }
.esp-v2-news-card time { color: #7e828a; font-size: 9px; font-weight: 900; letter-spacing: .1em; }
.esp-v2-news-card h2 { margin: 13px 0 12px; color: #fff; font: 900 clamp(29px, 3vw, 44px)/.96 var(--esp-display); text-transform: uppercase; }
.esp-v2-news-card p { color: #999ca3; font-size: 13px; line-height: 1.65; }
.esp-v2-pagination { clear: both; display: flex; align-items: center; justify-content: center; gap: 28px; width: 100%; margin-top: 48px; color: #999ca3; font-size: 10px; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.esp-v2-pagination a { padding: 13px 18px; border: 1px solid #4a4d54; color: #fff; transition: border-color .2s, background .2s; }
.esp-v2-pagination a:hover { border-color: var(--esp-red); background: var(--esp-red); }
.esp-v2-story header { padding: 76px max(32px, calc((100vw - var(--esp-width))/2)) 68px; background: #0b0d10; }
.esp-v2-story h1 { max-width: 1160px; margin: 0; font: 900 clamp(58px, 8vw, 112px)/.86 var(--esp-display); text-transform: uppercase; }
.esp-v2-story__cover { display: block; width: 100%; max-height: 720px; object-fit: cover; filter: saturate(.78) contrast(1.07); }
.esp-v2-story__body { max-width: 900px; margin: auto; padding: 86px 32px 120px; color: #25272b; background: var(--esp-paper); font-size: 18px; line-height: 1.85; }
.esp-v2-story__body img { height: auto !important; }

.esp-v2-page-head { float: none !important; width: 100% !important; padding: 75px 0 55px; }
.esp-v2-page-head h1 { margin: 0; font: 900 clamp(64px, 8vw, 118px)/.84 var(--esp-display); text-transform: uppercase; }
.esp-v2-gallery-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.esp-v2-gallery-card { min-height: 390px; overflow: hidden; border: 1px solid var(--esp-line); background: #111318; }
.esp-v2-gallery-card > a { position: relative; display: block; height: 100%; min-height: 390px; }
.esp-v2-gallery-card img { width: 100%; height: 100%; min-height: 390px; object-fit: cover; filter: saturate(.7); transition: transform .45s ease; }
.esp-v2-gallery-card:hover img { transform: scale(1.04); }
.esp-v2-gallery-card > a::after { content: ""; position: absolute; inset: 0; background: linear-gradient(0deg, #050607ee, transparent 65%); }
.esp-v2-gallery-card div { position: absolute; z-index: 2; left: 26px; right: 26px; bottom: 25px; }
.esp-v2-gallery-card h2 { margin: 0 0 12px; font: 900 38px/.95 var(--esp-display); text-transform: uppercase; }
.esp-v2-gallery-card span { color: #c5c7cd; font-size: 9px; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }

body.esp-v2 .news.list.inner.textpage, body.esp-v2 .user.custom.infopage.news.textpage { max-width: 1100px; margin: auto; padding: 0 !important; border: 0 !important; box-shadow: none !important; color: #292b30; background: var(--esp-paper) !important; }
body.esp-v2 .news.list.inner.textpage .center, body.esp-v2 .user.custom.infopage.news.textpage { width: 100%; float: none; }
body.esp-v2 .news.list.inner.textpage .cont, body.esp-v2 .user.custom.infopage.news.textpage { padding: 68px !important; border-top: 3px solid var(--esp-red); background: var(--esp-paper) !important; font-size: 16px; line-height: 1.78; }
body.esp-v2 .news.list.inner.textpage article { color: #292b30; }
body.esp-v2 .news.list.inner.textpage h2, body.esp-v2 .news.list.inner.textpage h3 { color: var(--esp-ink); font: 900 40px/1 var(--esp-display); text-transform: uppercase; }
body.esp-v2 .news.list.inner.textpage a { color: var(--esp-red-dark); text-decoration: underline; }
body.esp-v2 .contact_page { width: 100%; color: #fff; }
body.esp-v2 .contact_page iframe { display: block; width: 100%; height: min(52vw, 560px); min-height: 360px; border: 0; filter: grayscale(.25) contrast(1.04); }
body.esp-v2 .contact_page .tabs_divs { overflow-x: auto; }
body.esp-v2 .contact_page table { width: 100%; border-collapse: collapse; background: #111318; }
body.esp-v2 .contact_page th, body.esp-v2 .contact_page td { padding: 22px; border: 1px solid var(--esp-line); text-align: left; line-height: 1.55; }
body.esp-v2 .contact_page th { background: var(--esp-red-dark); font: 900 17px/1.1 var(--esp-display); letter-spacing: .02em; text-transform: uppercase; }
body.esp-v2 .contact_page td { color: #c6c8cd; font-size: 13px; }
body.esp-v2 input, body.esp-v2 textarea, body.esp-v2 select { max-width: 100%; }
body.esp-v2 .login_submit, body.esp-v2 input[type="submit"], body.esp-v2 button[type="submit"] { border: 0; background: var(--esp-red); color: #fff; }

#cookie_notification { z-index: 110 !important; border-top: 1px solid #35383e; background: #111318 !important; color: #fff !important; }
#cookie_notification a { color: #fff !important; text-decoration: underline; }

@media (max-width: 1100px) {
  .esp-v2-site-header__inner { grid-template-columns: 120px 1fr auto; }
  .esp-v2-menu { gap: 15px; }
  .esp-v2-menu a { font-size: 9px; }
  .esp-v2-dealer { display: none; }
  .esp-v2-product-grid, .esp-v2-news-grid, body.esp-v2 .news.series > .left.bigcatalog, body.esp-v2 .news.series.custom.infopage > .left.bigcatalog { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .esp-v2-footer__top { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 820px) {
  .esp-v2-site-header { z-index: 10000 !important; }
  .esp-v2-width { width: min(calc(100% - 36px), var(--esp-width)); }
  .esp-v2-utility__inner { justify-content: center; }
  .esp-v2-utility__inner > a { display: none; }
  .esp-v2-site-header__inner { height: 70px; grid-template-columns: 1fr auto; }
  .esp-v2-actions { grid-column: 2; }
  .esp-v2-menu-toggle { display: block; }
  .esp-v2-menu { position: fixed; inset: 104px 0 auto; display: none; flex-direction: column; gap: 0; padding: 22px 18px 34px; border-bottom: 1px solid #393c42; background: #0b0d10; }
  .esp-v2-menu.is-open { display: flex; }
  .esp-v2-menu a { padding: 15px 0; border-bottom: 1px solid var(--esp-line); font-size: 16px; }
  .esp-v2-menu a::after, .esp-v2-search-toggle { display: none; }
  .esp-v2-hero { min-height: 650px; align-items: end; }
  .esp-v2-hero > div { padding-bottom: 95px; }
  .esp-v2-hero h1 { font-size: clamp(62px, 15vw, 108px); }
  .esp-v2-category-strip { grid-template-columns: repeat(2, 1fr); }
  .esp-v2-category-strip a:nth-child(-n+2) { border-bottom: 1px solid var(--esp-line); }
  body.esp-v2 .news.list.inner.textpage .cont, body.esp-v2 .user.custom.infopage.news.textpage, body.esp-v2 .section-info { padding: 28px !important; }
  body.esp-v2 .contact_page th, body.esp-v2 .contact_page td { min-width: 190px; padding: 16px; }
  .esp-v2-series-grid { grid-template-columns: 1fr; }
  .esp-v2-home-about { grid-template-columns: 1fr; gap: 30px; }
  .esp-v2-product-detail { grid-template-columns: 1fr; }
  .esp-v2-product-gallery { min-height: 570px; border-right: 0; border-bottom: 1px solid #c8c5be; }
  .esp-v2-product-summary { padding: 60px 36px; }
  .esp-v2-product-copy section { grid-template-columns: 1fr; gap: 28px; }
}

@media (max-width: 560px) {
  .esp-v2-width { width: min(calc(100% - 28px), var(--esp-width)); }
  .esp-v2-utility { height: 30px; font-size: 8px; }
  .esp-v2-menu { inset: 100px 0 auto; }
  .esp-v2-cart { display: none; }
  .esp-v2-hero h1 { font-size: 56px; }
  .esp-v2-hero > div > p:not(.esp-v2-kicker) { font-size: 15px; }
  .esp-v2-home-section { padding-block: 82px; }
  .esp-v2-home-section h2, .esp-v2-home-about h2 { font-size: 56px; }
  .esp-v2-product-grid, .esp-v2-news-grid, .esp-v2-gallery-grid, body.esp-v2 .news.series > .left.bigcatalog, body.esp-v2 .news.series.custom.infopage > .left.bigcatalog { grid-template-columns: 1fr; }
  .esp-v2-footer__top { grid-template-columns: 1fr; gap: 38px; }
  .esp-v2-footer__bottom { flex-direction: column; }
  .esp-v2-product-gallery { min-height: 470px; grid-template-columns: 1fr; padding: 25px; }
  .esp-v2-product-thumbs { order: 2; flex-direction: row; overflow-x: auto; }
  .esp-v2-product-thumbs button { flex: 0 0 76px; }
  .esp-v2-product-summary h1 { font-size: 56px; }
  .esp-v2-product-facts { grid-template-columns: 1fr; }
  .esp-v2-buy { flex-direction: column; }
  body.esp-v2:not(.esp-sub-890) #wrapper > section .itemContainer { padding-inline: 18px; }
  body.esp-v2 .section-info, body.esp-v2 .news.list.inner.textpage .cont { padding: 28px; }
}

/* ESP official-site visual system */
:root {
  --esp-black: #17191c;
  --esp-panel: #30333a;
  --esp-line: #5b5f68;
  --esp-paper: #3b3e45;
  --esp-ink: #f5f6f8;
  --esp-muted: #c2c6d0;
  --esp-width: 1170px;
  --esp-display: Arial, Helvetica, sans-serif;
}

body.esp-v2 { background: #3b3e45; color: #f5f6f8; font-family: Arial, Helvetica, sans-serif; }
body.esp-v2 > .boxes { display: none !important; }
body.esp-v2 #wrapper, body.esp-v2 #wrapper > section { background: #3b3e45; }
body.esp-v2:not(.esp-sub-890) #wrapper > section .itemContainer { padding: 38px max(24px, calc((100vw - var(--esp-width))/2)) 76px; }

.esp-ref-topbar { height: 42px; border-bottom: 1px solid #657080; background: #465365; color: #fff; }
.esp-ref-topbar__inner { height: 100%; display: flex; align-items: center; justify-content: space-between; }
.esp-ref-brand-tabs { height: 100%; display: flex; align-items: center; }
.esp-ref-brand-tabs strong, .esp-ref-brand-tabs span { height: 100%; display: grid; place-items: center; padding: 0 18px; border-inline: 1px solid #637084; font-size: 13px; letter-spacing: .08em; }
.esp-ref-brand-tabs small { margin-left: 18px; color: #d8dce3; font-size: 10px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.esp-ref-top-links { display: flex; gap: 22px; font-size: 12px; }
.esp-ref-top-links a:hover { color: #fff; text-decoration: underline; }

.esp-v2-site-header { position: relative; top: auto; border: 0; background: linear-gradient(#24272a, #17191b); backdrop-filter: none; }
.esp-ref-brandbar { position: relative; height: 98px; display: grid; place-items: center; }
.esp-v2-logo img { width: 128px; max-height: 66px; }
.esp-ref-brandbar .esp-v2-actions { position: absolute; right: 0; top: 50%; transform: translateY(-50%); }
.esp-v2-search-toggle, .esp-v2-cart { min-height: 32px; padding: 8px 13px; border: 1px solid #59606a; border-radius: 2px; color: #fff; background: #252930; font-size: 11px; font-weight: 700; letter-spacing: 0; text-transform: none; }
.esp-v2-cart span { display: inline-grid; place-items: center; min-width: 20px; height: 18px; margin-left: 7px; background: #111; }
.esp-ref-navrow { border-block: 1px solid #444950; background: #191b1e; }
.esp-v2-menu { width: min(calc(100% - 48px), var(--esp-width)); min-height: 42px; margin: auto; justify-content: center; gap: 0; }
.esp-v2-menu a { padding: 14px 17px 13px; border-right: 1px solid #41454c; color: #fff; font-size: 12px; font-weight: 800; letter-spacing: 0; }
.esp-v2-menu a:first-child { border-left: 1px solid #41454c; }
.esp-v2-menu a::after { display: none; }
.esp-v2-menu a:hover, .esp-v2-menu a.is-active { background: #343840; }
.esp-v2-search { padding: 16px max(24px, calc((100vw - var(--esp-width))/2)); border-top: 0; background: #2e3238; }
.esp-v2-search input { background: #1c1f23; }

.esp-ref-page { float: none !important; clear: both; width: 100%; }
.esp-ref-page-head, .esp-v2-page-head { float: none !important; clear: both; width: 100% !important; margin: 0 0 26px; padding: 0 0 12px; border-bottom: 1px solid #858992; background: transparent !important; }
.esp-ref-page-head p, .esp-v2-page-head .esp-v2-kicker { margin: 0 0 7px; color: #cbd0d9; font-size: 10px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.esp-ref-page-head h1, .esp-v2-page-head h1,
body.esp-v2 .title_page, body.esp-v2 .catalogh1, body.esp-v2 .news.series.custom.infopage > h1 {
  margin: 0 !important; color: #fff !important; font: 800 clamp(30px, 4vw, 40px)/1.15 Arial, Helvetica, sans-serif !important; letter-spacing: 0; text-transform: none;
}
.esp-ref-page-head a { display: inline-block; margin-top: 14px; color: #d6dae2; font-size: 12px; }
.esp-v2-kicker::before { display: none; }

.esp-ref-category-grid { float: none !important; clear: both; width: 100%; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.esp-ref-category-card { min-height: 110px; border: 1px solid #676b74; background: #565962; overflow: hidden; }
.esp-ref-category-card a { position: relative; min-height: 110px; display: grid; place-items: center; isolation: isolate; }
.esp-ref-category-card img { position: absolute; inset: 0; z-index: -2; width: 100%; height: 100%; object-fit: cover; opacity: .22; filter: grayscale(.35) contrast(1.1); transition: opacity .25s, transform .35s; }
.esp-ref-category-card a::after { content: ""; position: absolute; inset: 0; z-index: -1; background: #4548519c; transition: background .25s; }
.esp-ref-category-card h2 { margin: 0; padding: 20px; color: #fff; font-size: 20px; font-weight: 800; text-align: center; text-transform: uppercase; }
.esp-ref-category-card:hover img { opacity: .42; transform: scale(1.03); }
.esp-ref-category-card:hover a::after { background: #26292f8c; }

.esp-ref-rich { float: none !important; clear: both; width: 100%; margin-top: 42px; padding: 34px 38px; border: 1px solid #5d616a; background: #30333a; color: #eef0f4; font-size: 15px; line-height: 1.72; }
.esp-ref-rich h2, .esp-ref-rich h3, .esp-ref-rich h4 { margin: 32px 0 12px; color: #fff; font: 800 22px/1.2 Arial, Helvetica, sans-serif; text-transform: none; }
.esp-ref-rich h2:first-child, .esp-ref-rich h3:first-child { margin-top: 0; }
.esp-ref-rich a { color: #fff; text-decoration: underline; }
.esp-ref-rich img { height: auto !important; }
.esp-ref-section-list { display: grid; gap: 18px; }
.esp-ref-content-section { padding: 28px 30px; border: 1px solid #555a63; background: #202327; }
.esp-ref-content-section > h3 { margin: 0 0 18px; padding-bottom: 10px; border-bottom: 1px solid #555a63; color: #fff; font-size: 19px; }
.esp-ref-content-section p, .esp-ref-content-section li { color: #e1e4ea; }

.esp-v2-product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.esp-v2-product-card { border-color: #565a62; background: #34373d; }
.esp-v2-product-card__image { aspect-ratio: 16/9; background: #3b3e45; }
.esp-v2-product-card__image img { padding: 16px; object-fit: contain; }
.esp-v2-product-card__body { padding: 18px 20px 20px; text-align: center; }
.esp-v2-product-card__body > p { min-height: 0; margin-bottom: 7px; color: #c3c7d0; }
.esp-v2-product-card h2 { min-height: 0; margin: 0 0 14px; font: 800 17px/1.25 Arial, Helvetica, sans-serif; text-transform: uppercase; }
.esp-v2-product-card__meta { font-size: 12px; }

.esp-v2-product-detail { grid-template-columns: 1fr; background: #3b3e45; color: #fff; }
.esp-v2-product-summary { order: 1; padding: 36px max(24px, calc((100vw - var(--esp-width))/2)) 26px; border-bottom: 1px solid #676b74; }
.esp-v2-product-summary h1 { font: 800 clamp(32px, 4vw, 42px)/1.1 Arial, Helvetica, sans-serif; }
.esp-v2-product-lead { max-width: 900px; color: #d2d5dc; }
.esp-v2-product-facts { max-width: 720px; margin: 22px 0; border-color: #676b74; }
.esp-v2-product-facts span { color: #b9bdc7; }
.esp-v2-buy button, .esp-v2-buy a { color: #fff; border-color: #9da1aa; }
.esp-v2-product-gallery { order: 2; min-height: 620px; width: min(calc(100% - 48px), var(--esp-width)); margin: auto; padding: 34px 0 46px; border: 0; }
.esp-v2-product-main img { max-height: 620px; }
.esp-v2-product-thumbs button { background: #5b5f67; border-color: #777b84; }
.esp-v2-product-copy { order: 3; padding: 42px max(24px, calc((100vw - var(--esp-width))/2)) 70px; background: #30333a; }
.esp-v2-product-copy section { grid-template-columns: 250px 1fr; gap: 42px; padding: 30px 0; border-color: #5a5e67; }
.esp-v2-product-copy h2 { font: 800 22px/1.2 Arial, Helvetica, sans-serif; }
.esp-v2-product-copy section > div { color: #f0f1f4; font-size: 15px; line-height: 1.7; }

.esp-v2-news-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.esp-v2-news-card { border: 0; background: transparent; }
.esp-v2-news-card__image { aspect-ratio: 16/10; border: 1px solid #636771; background: #303238; }
.esp-v2-news-card__image img { filter: none; }
.esp-v2-news-card > div { padding: 12px 0 18px; }
.esp-v2-news-card h2 { margin: 8px 0; font: 800 16px/1.3 Arial, Helvetica, sans-serif; text-transform: none; }
.esp-v2-news-card p { margin: 0; color: #d0d3da; font-size: 12px; line-height: 1.5; }
.esp-v2-pagination a { background: #17191c; }
.esp-v2-story header { padding: 38px max(24px, calc((100vw - var(--esp-width))/2)) 24px; background: #3b3e45; border-bottom: 1px solid #70747d; }
.esp-v2-story h1 { font: 800 clamp(30px, 4vw, 42px)/1.15 Arial, Helvetica, sans-serif; }
.esp-v2-story__cover { width: min(calc(100% - 48px), var(--esp-width)); max-height: 650px; margin: 28px auto; object-fit: contain; filter: none; }
.esp-v2-story__body { max-width: 970px; padding: 36px; color: #f2f3f5; background: #30333a; font-size: 16px; line-height: 1.75; }

.esp-v2-gallery-grid, .esp-ref-album-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.esp-v2-gallery-card { min-height: 260px; border-color: #636771; background: #30333a; }
.esp-v2-gallery-card > a, .esp-v2-gallery-card img { min-height: 260px; }
.esp-v2-gallery-card h2 { font: 800 19px/1.2 Arial, Helvetica, sans-serif; }
.esp-ref-album-grid { display: grid; }
.esp-ref-album-grid a { aspect-ratio: 4/3; border: 1px solid #5d616a; background: #30333a; overflow: hidden; }
.esp-ref-album-grid img { width: 100%; height: 100%; object-fit: cover; }

body.esp-v2 .contact_page iframe { filter: none; }
body.esp-v2 .contact_page table { background: #30333a; }
body.esp-v2 .contact_page th { background: #202327; font: 800 14px/1.2 Arial, Helvetica, sans-serif; }
body.esp-v2 .contact_page td { color: #eef0f4; }
.esp-ref-contact { float: none !important; clear: both; }
.esp-ref-contact__map { overflow: hidden; border: 1px solid #656a73; background: #30333a; }
.esp-ref-contact__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; margin-top: 14px; }
.esp-ref-contact__card { float: none !important; min-height: 190px; padding: 28px; border: 1px solid #5e626b; background: #292c31; }
.esp-ref-contact__card h2 { margin: 0 0 20px; color: #fff; font: 800 21px/1.2 Arial, Helvetica, sans-serif; text-transform: uppercase; }
.esp-ref-contact__card dl { display: grid; grid-template-columns: 110px 1fr; gap: 12px 18px; margin: 0; }
.esp-ref-contact__card dt { color: #aeb3bd; font-size: 10px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.esp-ref-contact__card dd { margin: 0; color: #f1f2f5; font-size: 13px; line-height: 1.5; }

.esp-ref-cart { width: 100%; }
body.esp-v2.esp-sub-853 .itemContainer > .title_page { display: none !important; }
.esp-ref-cart__head { display: grid; grid-template-columns: 1fr 150px 140px 42px; gap: 18px; padding: 12px 18px; border: 1px solid #5e626b; border-bottom: 0; background: #202327; color: #aeb3bd; font-size: 10px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.esp-ref-cart__head span:nth-child(2), .esp-ref-cart__head span:nth-child(3) { text-align: center; }
.esp-ref-cart__items { display: grid; gap: 1px; background: #5e626b; border: 1px solid #5e626b; }
.esp-ref-cart__item { float: none !important; display: grid; grid-template-columns: 190px minmax(0, 1fr) 150px 140px 42px; gap: 18px; align-items: center; min-height: 190px; padding: 18px; background: #30333a; }
.esp-ref-cart__image { display: grid; place-items: center; height: 154px; background: #e8e9eb; overflow: hidden; }
.esp-ref-cart__image img { width: 100%; height: 100%; padding: 8px; object-fit: contain; }
.esp-ref-cart__name p { margin: 0 0 6px; color: #aeb3bd; font-size: 10px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.esp-ref-cart__name h2 { margin: 0; color: #fff; font: 800 20px/1.2 Arial, Helvetica, sans-serif; text-transform: uppercase; }
.esp-ref-cart__name small { display: block; max-width: 520px; margin-top: 12px; color: #c5c9d1; line-height: 1.5; }
.esp-ref-cart__price, .esp-ref-cart__qty { text-align: center; }
.esp-ref-cart__price span, .esp-ref-cart__qty span { display: none; color: #aeb3bd; font-size: 10px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.esp-ref-cart__price strong { font-size: 17px; }
.esp-ref-cart__qty input { width: 74px; padding: 12px 8px; border: 1px solid #6c717b; background: #202327; color: #fff; text-align: center; }
.esp-ref-cart__remove { width: 38px; height: 38px; border: 1px solid #6c717b; background: transparent; color: #fff; font-size: 25px; cursor: pointer; }
.esp-ref-cart__remove:hover { border-color: var(--esp-red); background: var(--esp-red); }
.esp-ref-cart__summary { display: grid; justify-items: end; gap: 18px; padding: 26px; border: 1px solid #5e626b; border-top: 0; background: #292c31; }
.esp-ref-cart__summary > div:first-child { display: flex; align-items: baseline; gap: 30px; }
.esp-ref-cart__summary > div:first-child span { color: #b9bdc6; font-size: 12px; font-weight: 800; text-transform: uppercase; }
.esp-ref-cart__summary > div:first-child strong { font-size: 28px; }
.esp-ref-cart__summary p { margin: 0; color: #d8dbe1; }
.esp-ref-cart__actions { display: flex; gap: 10px; }
.esp-ref-cart__actions a, .esp-ref-empty-cart a { display: inline-flex; min-height: 44px; align-items: center; justify-content: center; padding: 12px 18px; border: 1px solid #777c86; color: #fff; font-size: 11px; font-weight: 800; text-transform: uppercase; }
.esp-ref-cart__actions a.is-primary, .esp-ref-empty-cart a { border-color: var(--esp-red); background: var(--esp-red); }
.esp-ref-empty-cart { padding: 54px; border: 1px solid #5e626b; background: #30333a; }
.esp-ref-empty-cart p { margin: 0 0 9px; color: #b9bec8; font-size: 10px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.esp-ref-empty-cart h2 { margin: 0 0 12px; color: #fff; font-size: 30px; }
.esp-ref-empty-cart span { display: block; margin-bottom: 26px; color: #d0d3da; }

body.esp-v2.esp-sub-868 .tpl-styled { margin: 0; padding: 0; background: transparent; color: #eef0f4; }
body.esp-v2.esp-sub-868 .page-description-wrapper { padding: 34px 38px; border: 1px solid #5d616a; background: #30333a; }
body.esp-v2.esp-sub-868 .tpl-text-default, body.esp-v2.esp-sub-868 .text-container { max-width: none; margin: 0; color: #eef0f4; font-size: 15px; line-height: 1.72; }
body.esp-v2.esp-sub-868 .text-container h2 { margin: 0 0 28px; color: #fff; font: 800 25px/1.2 Arial, Helvetica, sans-serif; }
body.esp-v2.esp-sub-868 .text-container h4 { margin: 30px 0 12px; color: #fff; font: 800 19px/1.25 Arial, Helvetica, sans-serif; }
body.esp-v2.esp-sub-868 .text-container p { color: #e0e3e8; }
body.esp-v2.esp-sub-868 .text-container a { color: #fff; text-decoration: underline; }
body.esp-v2 .news.list.inner.textpage, body.esp-v2 .user.custom.infopage.news.textpage { max-width: none; background: transparent !important; color: #fff; }
body.esp-v2 .news.list.inner.textpage .cont, body.esp-v2 .user.custom.infopage.news.textpage { padding: 0 !important; border: 0; background: transparent !important; }

.esp-v2-home-section { padding: 62px max(24px, calc((100vw - var(--esp-width))/2)); background: #3b3e45; }
.esp-v2-home-section--light, .esp-v2-home-about { background: #30333a; color: #fff; }
.esp-v2-hero { min-height: 650px; }
.esp-v2-hero > div { align-self: end; padding: 34px; margin-bottom: 36px; background: #111318d9; border: 1px solid #6c7078; }
.esp-v2-hero h1 { max-width: 760px; font: 800 clamp(38px, 5vw, 62px)/1.05 Arial, Helvetica, sans-serif; }
.esp-v2-hero > div > p:not(.esp-v2-kicker) { margin: 16px 0 22px; font-size: 16px; }
.esp-v2-home-section h2, .esp-v2-home-about h2 { font: 800 clamp(30px, 4vw, 42px)/1.1 Arial, Helvetica, sans-serif; }
.esp-v2-series-grid a { min-height: 330px; }
.esp-v2-series-grid strong { font: 800 25px/1.1 Arial, Helvetica, sans-serif; }
.esp-v2-home-about { gap: 55px; padding: 62px max(24px, calc((100vw - var(--esp-width))/2)); }
.esp-v2-home-about > div:last-child p { color: #d0d3da; }

.esp-v2-footer { background: #050607; }
.esp-v2-footer__top { gap: 44px; padding: 48px 0 38px; }

@media (max-width: 980px) {
  .esp-v2-news-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .esp-ref-brand-tabs small { display: none; }
  .esp-v2-product-copy section { grid-template-columns: 1fr; gap: 14px; }
  .esp-ref-cart__head { display: none; }
  .esp-ref-cart__item { grid-template-columns: 150px minmax(0, 1fr) 110px 90px 38px; }
}

@media (max-width: 820px) {
  .esp-ref-brandbar { height: 72px; place-items: center start; }
  .esp-ref-brandbar .esp-v2-actions { right: 0; }
  .esp-ref-navrow { border: 0; }
  .esp-v2-menu { z-index: 10001 !important; inset: 114px 0 auto; width: 100%; max-height: calc(100vh - 114px); overflow-y: auto; padding: 18px; background: #1b1e22; }
  .esp-v2-category-strip { position: relative !important; z-index: 1 !important; }
  .esp-v2-menu a, .esp-v2-menu a:first-child { border: 0; border-bottom: 1px solid #4e535c; }
  .esp-v2-search-toggle { display: none; }
  .esp-ref-top-links a:first-child { display: none; }
  .esp-v2-product-gallery { min-height: 460px; }
}

@media (max-width: 600px) {
  .esp-ref-brand-tabs span, .esp-ref-top-links { display: none; }
  .esp-ref-category-grid, .esp-v2-product-grid, .esp-v2-news-grid, .esp-v2-gallery-grid, .esp-ref-album-grid { grid-template-columns: 1fr; }
  .esp-ref-category-card, .esp-ref-category-card a { min-height: 92px; }
  .esp-ref-rich, .esp-ref-content-section { padding: 23px 20px; }
  .esp-v2-product-gallery { width: calc(100% - 28px); padding: 20px 0 32px; }
  .esp-v2-product-summary { padding-inline: 18px; }
  .esp-v2-hero > div { width: calc(100% - 28px); padding: 24px 20px; }
  .esp-v2-hero h1 { font-size: 38px; }
  .esp-ref-contact__grid { grid-template-columns: 1fr; }
  .esp-ref-contact__card dl { grid-template-columns: 1fr; gap: 5px; }
  .esp-ref-contact__card dd { margin-bottom: 10px; }
  .esp-ref-cart__item { grid-template-columns: 100px 1fr 38px; gap: 12px; min-height: 0; padding: 14px; }
  .esp-ref-cart__image { height: 105px; }
  .esp-ref-cart__name h2 { font-size: 15px; }
  .esp-ref-cart__price, .esp-ref-cart__qty { text-align: left; }
  .esp-ref-cart__price span, .esp-ref-cart__qty span { display: block; margin-bottom: 5px; }
  .esp-ref-cart__price { grid-column: 2; }
  .esp-ref-cart__qty { grid-column: 2; }
  .esp-ref-cart__remove { grid-column: 3; grid-row: 1; }
  .esp-ref-cart__summary { justify-items: stretch; padding: 20px 14px; }
  .esp-ref-cart__summary > div:first-child { justify-content: space-between; }
  .esp-ref-cart__actions { flex-direction: column; }
  .esp-ref-empty-cart { padding: 34px 24px; }
}
