

/* Start:/local/templates/2waystore.ru/assets/css/design-tokens.css?17939957722037*/
/* Approved component values. See DESIGN.md. */
:root {
  --tw-white: #fff;
  --tw-orange-red-500: #ff4429;
  --tw-orange-red-from: #ff4e2e;
  --tw-orange-red-to: #ff3e25;
  --tw-orange-red-hover: #ed361e;
  --tw-gray-900: #111213;
  --tw-gray-500: #737780;
  --tw-gray-400: #818895;
  --tw-gray-300: #cfd3d9;
  --tw-gray-200: #e7e9ed;
  --tw-gray-50: #f3f4f6;
  --tw-red-error: #b42318;
  --tw-font-family: Onest, Arial, sans-serif;
  --tw-font-weight-regular: 400;
  --tw-font-weight-semibold: 600;
  --tw-font-weight-bold: 700;
  --tw-control-height: 44px;
  --tw-control-font-size: 14px;
  --tw-control-font-size-mobile: 16px;
  --tw-control-radius: 6px;
  --tw-card-radius: 8px;
  --tw-banner-radius: 12px;
  --tw-media-radius: 6px;
  --tw-checkbox-size: 14px;

  --tw-color-accent: var(--tw-orange-red-500);
  --tw-color-text: var(--tw-gray-900);
  --tw-color-muted: var(--tw-gray-500);
  --tw-color-border: var(--tw-gray-200);
  --tw-color-border-hover: var(--tw-gray-300);
  --tw-color-surface: var(--tw-gray-50);
  --tw-color-error: var(--tw-red-error);
  --tw-color-focus: var(--tw-gray-400);
  --tw-color-field-focus: var(--tw-orange-red-500);

  --tw-button-background: linear-gradient(110deg, var(--tw-orange-red-from), var(--tw-orange-red-to));
  --tw-button-hover-background: var(--tw-orange-red-hover);
  --tw-button-text: var(--tw-white);
  --tw-button-border: #ff381d;
  --tw-field-background: var(--tw-white);
  --tw-focus-width: 2px;
  --tw-focus-offset: 2px;
  --tw-space-1: .25rem;
  --tw-space-2: .5rem;
  --tw-space-3: .75rem;
  --tw-space-4: 1rem;
  --tw-space-5: 1.25rem;
  --tw-space-6: 1.5rem;
  --tw-space-8: 2rem;
  --tw-space-10: 2.5rem;
  --tw-space-12: 3rem;
  --tw-space-16: 4rem;
  --tw-type-small: .875rem;
  --tw-type-body: 1rem;
  --tw-type-lead: 1.125rem;
  --tw-leading-body: 1.6;
  --tw-leading-heading: 1.15;
  --tw-page-gutter: 1.5rem;
  --tw-section-gap: 2rem;
  --tw-content-width: 100rem;
  --tw-heading-size: clamp(1.5rem, 2vw, 1.75rem);
  --tw-hero-title-size: clamp(2rem, 4vw, 3.5rem);
}

/* End */


/* Start:/local/templates/2waystore.ru/assets/css/reference.css?179400180557045*/


@font-face {
  font-family: Onest;
  src: url("/local/templates/2waystore.ru/assets/css/../fonts/onest-regular.ttf") format("truetype");
  font-weight: 400;
  font-display: swap;
}
@font-face {
  font-family: Onest;
  src: url("/local/templates/2waystore.ru/assets/css/../fonts/onest-semibold.ttf") format("truetype");
  font-weight: 600;
  font-display: swap;
}
@font-face {
  font-family: Onest;
  src: url("/local/templates/2waystore.ru/assets/css/../fonts/onest-bold.ttf") format("truetype");
  font-weight: 700;
  font-display: swap;
}

:root {
  --accent: #ff4429;
  --ink: #111213;
  --muted: #737780;
  --line: #e7e9ed;
  --surface: #f3f4f6;
  --radius: 7px;
  color-scheme: light;
  font-family: Onest, Arial, sans-serif;
  color: var(--ink);
  font-synthesis: none;
}
* {
  box-sizing: border-box;
}
html {
  scroll-behavior: smooth;
  scroll-padding-top: 14px;
}
body {
  position: relative;
  margin: 0;
  background: #fff;
  font-size: 12px;
  line-height: 1.4;
}
button,
input,
select {
  font: inherit;
  color: inherit;
}
button,
a,
input,
select {
  -webkit-tap-highlight-color: transparent;
}
button {
  cursor: pointer;
  border: 0;
  background: none;
  padding: 0;
}
a {
  color: inherit;
  text-decoration: none;
}
button:focus-visible,
a:focus-visible,
input:focus-visible,
select:focus-visible {
  outline: var(--tw-focus-width) solid var(--tw-color-focus);
  outline-offset: var(--tw-focus-offset);
}
input:focus,
select:focus {
  outline: none;
  border-color: var(--tw-color-field-focus);
  box-shadow: 0 0 0 1px var(--tw-color-field-focus);
}
h1,
h2,
h3,
p {
  margin: 0;
}
h2 {
  font-size: 22px;
  line-height: 1.15;
  letter-spacing: -0.7px;
  font-weight: 700;
}
h3 {
  font-size: 12px;
  line-height: 1.25;
  font-weight: 700;
}
button .icon,
a .icon {
  flex-shrink: 0;
}
.container {
  width: calc(100% - 96px);
  max-width: 1240px;
  margin-inline: auto;
}
.wide {
  width: calc(100% - 32px);
  max-width: 1320px;
  margin-inline: auto;
}
.icon {
  display: inline-block;
  flex-shrink: 0;
  width: 20px;
  height: 20px;
  background-color: currentColor;
  mask: var(--icon) center/contain no-repeat;
  -webkit-mask: var(--icon) center/contain no-repeat;
  vertical-align: middle;
}
[data-icon="map-pin"] {
  --icon: url("/local/templates/2waystore.ru/assets/css/../icons/map-pin.svg");
}
[data-icon="truck-delivery"] {
  --icon: url("/local/templates/2waystore.ru/assets/css/../icons/truck-delivery.svg");
}
[data-icon="tools"] {
  --icon: url("/local/templates/2waystore.ru/assets/css/../icons/tools.svg");
}
[data-icon="credit-card"] {
  --icon: url("/local/templates/2waystore.ru/assets/css/../icons/credit-card.svg");
}
[data-icon="phone"] {
  --icon: url("/local/templates/2waystore.ru/assets/css/../icons/phone.svg");
}
[data-icon="chevron-down"] {
  --icon: url("/local/templates/2waystore.ru/assets/css/../icons/chevron-down.svg");
}
[data-icon="menu-2"] {
  --icon: url("/local/templates/2waystore.ru/assets/css/../icons/menu-2.svg");
}
[data-icon="search"] {
  --icon: url("/local/templates/2waystore.ru/assets/css/../icons/search.svg");
}
[data-icon="heart"] {
  --icon: url("/local/templates/2waystore.ru/assets/css/../icons/heart.svg");
}
[data-icon="arrows-shuffle"] {
  --icon: url("/local/templates/2waystore.ru/assets/css/../icons/arrows-shuffle.svg");
}
[data-icon="shopping-cart"] {
  --icon: url("/local/templates/2waystore.ru/assets/css/../icons/shopping-cart.svg");
}
[data-icon="user"] {
  --icon: url("/local/templates/2waystore.ru/assets/css/../icons/user.svg");
}
[data-icon="arrow-right"] {
  --icon: url("/local/templates/2waystore.ru/assets/css/../icons/arrow-right.svg");
}
[data-icon="calculator"] {
  --icon: url("/local/templates/2waystore.ru/assets/css/../icons/calculator.svg");
}
[data-icon="cube"] {
  --icon: url("/local/templates/2waystore.ru/assets/css/../icons/cube.svg");
}
[data-icon="robot"] {
  --icon: url("/local/templates/2waystore.ru/assets/css/../icons/robot.svg");
}
[data-icon="coins"] {
  --icon: url("/local/templates/2waystore.ru/assets/css/../icons/coins.svg");
}
[data-icon="bolt"] {
  --icon: url("/local/templates/2waystore.ru/assets/css/../icons/bolt.svg");
}
[data-icon="settings"] {
  --icon: url("/local/templates/2waystore.ru/assets/css/../icons/settings.svg");
}
[data-icon="shield-check"] {
  --icon: url("/local/templates/2waystore.ru/assets/css/../icons/shield-check.svg");
}
[data-icon="chevron-left"] {
  --icon: url("/local/templates/2waystore.ru/assets/css/../icons/chevron-left.svg");
}
[data-icon="chevron-right"] {
  --icon: url("/local/templates/2waystore.ru/assets/css/../icons/chevron-right.svg");
}
[data-icon="message-circle"] {
  --icon: url("/local/templates/2waystore.ru/assets/css/../icons/message-circle.svg");
}
[data-icon="x"] {
  --icon: url("/local/templates/2waystore.ru/assets/css/../icons/x.svg");
}
[data-icon="brand-telegram"] {
  --icon: url("/local/templates/2waystore.ru/assets/css/../icons/brand-telegram.svg?v=20261107");
}
[data-icon="brand-vk"] {
  --icon: url("/local/templates/2waystore.ru/assets/css/../icons/brand-vk.svg?v=20261107");
}
[data-icon="brand-youtube"] {
  --icon: url("/local/templates/2waystore.ru/assets/css/../icons/brand-youtube.svg");
}
[data-icon="snowflake"] {
  --icon: url("/local/templates/2waystore.ru/assets/css/../icons/snowflake.svg");
}
.accent {
  color: var(--accent);
}
.button {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: 12px;
  min-height: 38px;
  border: 1px solid #ff381d;
  border-radius: 6px;
  padding: 0 19px;
  background: linear-gradient(110deg, #ff4e2e, #ff3e25);
  color: white;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.2;
  white-space: nowrap;
}
.button:hover {
  background: #ed361e;
}
.button .icon {
  width: 18px;
  height: 18px;
}
.button.small {
  min-height: 30px;
  padding: 0 13px;
  font-size: 10px;
  gap: 6px;
}
.button.small .icon {
  width: 15px;
  height: 15px;
}
.button-light {
  background: #fff;
  color: #111;
  border-color: #ececef;
}
.button-light:hover {
  background: #f0f1f2;
}
.button-dark {
  background: #252525;
  border-color: #252525;
}
.button-dark:hover {
  background: #111;
}
.text-button {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  color: #fc341b;
  font-weight: 600;
  font-size: 10px;
  white-space: nowrap;
}
.text-button .icon {
  width: 14px;
  height: 14px;
}
.topbar {
  background: #202020;
  color: #f8f8f8;
  height: 29px;
}
.topbar-inner {
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  white-space: nowrap;
  font-size: 9px;
}
.topbar .icon {
  width: 14px;
  height: 14px;
}
.city-button,
.topbar-benefit,
.topbar-phone {
  display: inline-flex;
  align-items: center;
  gap: 5px;
}
.city-button .tiny {
  width: 9px;
  height: 9px;
}
.topbar-phone {
  margin-left: auto;
  font-size: 11px;
}
.topbar-benefit {
  margin-left: auto;
  letter-spacing: -0.35px;
}
.hours {
  color: #c9c9c9;
  font-size: 9px;
}
.header-main {
  display: flex;
  align-items: center;
  gap: 14px;
  height: 60px;
}
.brand {
  flex-shrink: 0;
  display: inline-flex;
  flex-direction: column;
  justify-content: center;
  white-space: nowrap;
}
.brand > span {
  font-size: 31.5px;
  font-weight: 900;
  letter-spacing: -1.8px;
  line-height: 1.12;
}
.brand em {
  color: var(--accent);
  font-style: normal;
}
.brand small {
  font-size: 7.2px;
  letter-spacing: -0.1px;
  color: #62656a;
  font-weight: 600;
  margin-top: 4px;
}
.catalog-button {
  min-height: 36px;
  margin-left: 8px;
  gap: 8px;
  padding: 0 13px;
  font-size: 11px;
}
.catalog-button .icon {
  width: 17px;
}
.header-search {
  display: flex;
  align-items: center;
  flex: 1;
  min-width: 130px;
  height: 36px;
  background: #f0f2f5;
  border: 1px solid #e5e8ee;
  border-radius: 6px;
  overflow: hidden;
}
.header-search input {
  flex: 1;
  width: 100%;
  min-width: 0;
  border: 0;
  outline-offset: -3px;
  background: none;
  padding: 9px 12px;
  font-size: 9px;
}
.header-search input::placeholder {
  color: #717784;
  opacity: 1;
}
.header-search button {
  width: 38px;
  height: 34px;
  flex-shrink: 0;
}
.header-search .icon {
  width: 19px;
  height: 19px;
}
.header-actions {
  display: flex;
  justify-content: space-between;
  gap: 23px;
  align-items: center;
  margin-left: 7px;
}
.header-actions button {
  position: relative;
  min-width: 45px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 5px;
  padding-top: 4px;
}
.header-actions .icon {
  width: 21px;
  height: 21px;
}
.header-actions button > span {
  font-size: 8px;
  color: #676d76;
}
.counter {
  position: absolute;
  top: 0;
  right: -1px;
  border-radius: 50%;
  background: var(--accent);
  color: white;
  min-width: 14px;
  height: 14px;
  line-height: 14px;
  text-align: center;
  font-size: 8px;
}
.navigation {
  height: 31px;
  display: flex;
  align-items: center;
  gap: 34px;
  font-size: 11px;
  font-weight: 700;
}
.navigation a,
.navigation button {
  white-space: nowrap;
}
.navigation a:hover,
.navigation button:hover {
  color: var(--accent);
}
.hero {
  height: auto;
  aspect-ratio: 1054/317;
  position: relative;
  border-radius: 5px;
  overflow: hidden;
  isolation: isolate;
  background: #0b0e0f;
  color: #fff;
}
.photo {
  background-image: url("/local/templates/2waystore.ru/assets/css/../reference/source.png");
  background-repeat: no-repeat;
  overflow: hidden;
}
.hero-photo {
  position: absolute;
  inset: 0 0 0 auto;
  width: 54.1746%;
  background-size: 190.1926% auto;
  background-position: 96.699% 10.6101%;
}
.hero-photo::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 20%;
  height: 20px;
  background: linear-gradient(90deg, #0b0e0f 65%, transparent);
}
.hero::after {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  background:
    radial-gradient(ellipse at 35% 10%, #26303555, transparent 43%),
    linear-gradient(90deg, #080c0d 8%, #0e1416 40%, transparent 54%);
}
.hero-photo::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, #0d1214, transparent 16%);
}
.hero-copy {
  position: relative;
  z-index: 1;
  padding: 37px 36px;
  width: 57%;
}
.hero h1 {
  font-size: 41.5px;
  line-height: 0.86;
  letter-spacing: -1.25px;
  font-weight: 900;
  white-space: nowrap;
}
.hero h1 span {
  color: #ff4d31;
}
.hero-copy > p {
  font-size: 13px;
  line-height: 1.42;
  margin-top: 12px;
  color: #f5f5f5;
  letter-spacing: 0.02px;
}
.hero-buttons {
  display: flex;
  gap: 10px;
  margin-top: 15px;
}
.hero-buttons .button {
  width: 179px;
  height: 40px;
  font-size: 12px;
  gap: 12px;
}
.hero-benefits {
  display: flex;
  gap: 27px;
  margin-top: 18px;
}
.hero-benefits > div {
  display: flex;
  align-items: center;
  gap: 11px;
  font-size: 10px;
  line-height: 1.5;
  white-space: nowrap;
}
.hero-benefits .icon {
  width: 27px;
  height: 27px;
  color: #ff4429;
}
.slider-dots {
  position: absolute;
  left: 50%;
  bottom: 11px;
  display: flex;
  gap: 6px;
  transform: translateX(-50%);
  z-index: 1;
}
.slider-dots span {
  width: 13px;
  height: 5px;
  border-radius: 5px;
  background: #757a7d;
}
.slider-dots .active {
  background: var(--accent);
}
.fitment {
  width: calc(100% - 48px);
  max-width: 1300px;
  margin: 12px auto 10px;
  padding: 15px 10px 8px 18px;
  background: linear-gradient(110deg, #eceef1, #f3f4f6);
  border-radius: 11px;
  min-height: 159px;
}
.fitment-top {
  display: flex;
  align-items: center;
  gap: 17px;
  padding-right: 10px;
}
.fitment-intro {
  display: flex;
  align-items: center;
  gap: 16px;
  flex: 0 0 345px;
}
.ai-mark {
  background: #0c0e0e;
  box-shadow: inset 0 0 17px #fff1;
  width: 47px;
  height: 48px;
  border-radius: 10px;
  display: grid;
  place-content: center;
  font-size: 26px;
  font-weight: 700;
  position: relative;
  color: white;
  font-family: Georgia, serif;
}
.ai-mark span {
  position: absolute;
  top: 3px;
  right: 8px;
  font-size: 13px;
}
.fitment h2 {
  font-size: 18px;
  letter-spacing: -0.5px;
}
.fitment-intro p {
  font-size: 10px;
  color: #686d75;
  margin-top: 3px;
  line-height: 1.45;
}
.vehicle-form {
  flex: 1;
  min-width: 0;
  display: grid;
  grid-template-columns: 1fr 1fr 0.9fr 1fr 1.02fr;
  align-items: end;
  gap: 12px;
}
.vehicle-form label {
  font-size: 9px;
  color: #6d727b;
  min-width: 0;
}
select {
  border: 1px solid #dfe2e8;
  border-radius: 5px;
  background: #fff;
  cursor: pointer;
}
.vehicle-form select {
  display: block;
  margin-top: 4px;
  width: 100%;
  height: 35px;
  padding: 0 9px;
  font-size: 10px;
  color: #17191b;
}
.vehicle-form .button {
  min-height: 38px;
  margin-bottom: 2px;
  font-size: 11px;
  padding: 0 12px;
}
.fitment-bottom {
  display: flex;
  align-items: center;
  gap: 11px;
  margin-top: 16px;
}
.manual-form {
  height: 62px;
  display: flex;
  align-items: center;
  gap: 7px;
  background: #ffffff8c;
  border-radius: 7px;
  padding: 10px 12px;
  flex: 1;
  min-width: 0;
}
.manual-caption {
  font-size: 9px;
  white-space: nowrap;
  margin-right: 4px;
}
.parameter-tabs {
  display: flex;
  gap: 18px;
  align-items: center;
  padding-right: 14px;
  font-size: 10px;
  font-weight: 600;
}
.parameter-tabs button {
  height: 27px;
  position: relative;
}
.parameter-tabs .selected::after {
  position: absolute;
  content: "";
  height: 2px;
  bottom: 1px;
  left: 0;
  right: 0;
  background: var(--accent);
}
.manual-form label {
  position: relative;
  flex: 1;
  min-width: 0;
  padding: 3px 6px 0;
  height: 37px;
  background: #fff;
  border: 1px solid #e4e7ec;
  border-radius: 5px;
  font-size: 8px;
  line-height: 1.1;
  color: #6d727b;
}
.manual-form select {
  display: block;
  width: 100%;
  height: 20px;
  padding: 0;
  border: 0;
  border-radius: 0;
  font-size: 10px;
  color: #111;
}
.manual-form .button {
  margin-left: 4px;
  min-width: 81px;
  min-height: 35px;
  font-size: 10px;
}
.fitment-car {
  display: flex;
  align-items: center;
  gap: 8px;
  flex: 0 0 280px;
}
.car-photo {
  width: 153px;
  aspect-ratio: 157/68;
  background-size: 691.72% auto;
  background-position: 82.562% 38.623%;
  mask-image: linear-gradient(
    90deg,
    transparent,
    #000 5%,
    #000 95%,
    transparent
  );
}
.fitment-car > span {
  font-family: "Segoe Print", "Comic Sans MS", cursive;
  font-style: italic;
  font-size: 14px;
  line-height: 1.2;
  transform: rotate(-9deg);
  white-space: nowrap;
}
.categories {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}
.category {
  height: 136px;
  position: relative;
  isolation: isolate;
  overflow: hidden;
  border-radius: 8px;
  background: #f3f4f6;
}
.category-copy {
  position: relative;
  z-index: 1;
  padding: 10px 16px;
}
.category h2 {
  font-size: 22px;
  letter-spacing: -0.6px;
}
.category p {
  font-size: 11px;
  line-height: 1.38;
  margin: 3px 0 10px;
  color: #676b73;
}
.category .button {
  position: relative;
}
.category .photo {
  position: absolute;
  right: 0;
  bottom: 0;
  mask-image: linear-gradient(
    90deg,
    transparent,
    #000 5%,
    #000 96%,
    transparent
  );
}
.category-tyre {
  width: 151px;
  aspect-ratio: 151/136;
  background-size: 719.205% auto;
  background-position: 23.3155% 47.1037%;
}
.category-wheel {
  width: 160px;
  aspect-ratio: 160/134;
  background-size: 678.75% auto;
  background-position: 58.8553% 47.1842%;
}
.category-bolts {
  width: 151px;
  aspect-ratio: 151/112;
  background-size: 719.205% auto;
  background-position: 94.5455% 47.2305%;
  bottom: 8px !important;
  right: 5px !important;
  clip-path: polygon(24% 0, 100% 0, 100% 100%, 0 100%, 0 24%, 24% 24%);
}
.services {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 12px;
  margin-top: 13px;
}
.service {
  min-height: 121px;
  border: 1px solid var(--line);
  background: linear-gradient(#fff, #fcfcfd);
  border-radius: 8px;
  padding: 12px 17px;
  display: flex;
  flex-direction: column;
}
.service-heading {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 35px;
}
.service-heading > .icon {
  width: 33px;
  height: 33px;
  color: #ff381e;
}
.service h3 {
  font-size: 10px;
  letter-spacing: -0.15px;
  white-space: nowrap;
}
.service p {
  color: #757982;
  font-size: 11px;
  line-height: 1.3;
  margin: 4px 0 9px;
}
.service .text-button {
  margin-top: auto;
}
.service:last-child {
  padding-right: 10px;
}
.service:last-child .service-heading {
  gap: 6px;
}
.service:last-child .service-heading > .icon {
  width: 31px;
}
.service .badge {
  font-size: 8px;
  padding: 2px 6px;
}
.service:last-child p {
  margin-top: 0;
  margin-bottom: 4px;
}
.bestsellers {
  margin-top: 8px;
}
.section-heading {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 5px;
  min-height: 40px;
  gap: 10px;
}
.section-heading p,
.about-subtitle {
  font-size: 12px;
  color: #777b83;
  line-height: 1.4;
}
.products-controls {
  display: flex;
  gap: 7px;
  align-items: center;
}
.round-button {
  width: 30px;
  height: 30px;
  display: grid;
  place-items: center;
  border: 1px solid var(--line);
  border-radius: 50%;
  background: #fbfbfc;
}
.round-button .icon {
  width: 17px;
  height: 17px;
}
.round-button:first-of-type {
  color: #8a8d93;
}
.products {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}
.product {
  height: 194px;
  border: 1px solid var(--line);
  border-radius: 7px;
  padding: 7px 12px 11px;
  display: flex;
  flex-direction: column;
  min-width: 0;
  background: #fff;
}
.product-badges {
  height: 19px;
  display: flex;
  gap: 5px;
  align-items: flex-start;
}
.badge {
  display: inline-block;
  border-radius: 4px;
  padding: 2px 6px;
  font-size: 9px;
  line-height: 1.35;
  font-weight: 600;
  white-space: nowrap;
}
.orange {
  background: #ff9b00;
  color: white;
}
.red {
  background: #ff3826;
  color: white;
}
.solid-green {
  background: #079c23;
  color: white;
}
.green {
  background: #d9f3df;
  color: #08852b;
}
.gray {
  background: #eeeff1;
  color: #737780;
}
.blue {
  background: #e1efff;
  color: #277fcb;
}
.snowflake {
  width: 18px;
  height: 17px;
  display: grid;
  place-items: center;
  color: #119fea;
  background: #e5f5ff;
  border-radius: 3px;
}
.snowflake .icon {
  width: 15px;
  height: 15px;
}
.product-body {
  display: grid;
  grid-template-columns: 46% 54%;
  align-items: start;
  flex: 1;
  min-height: 0;
  gap: 0;
}
.product-body > .photo {
  mix-blend-mode: multiply;
  align-self: start;
  max-width: 100%;
}
.product-michelin {
  width: 92px;
  aspect-ratio: 92/122;
  background-size: 1180.435% auto;
  background-position: 6.2374% 73.1523%;
  margin-left: 1px;
}
.product-kk {
  width: 107px;
  aspect-ratio: 107/97;
  background-size: 1014.9533% auto;
  background-position: 31.5628% 71.6506%;
}
.product-nokian {
  width: 106px;
  aspect-ratio: 106/123;
  background-size: 1024.5283% auto;
  background-position: 56.7347% 73.1321%;
}
.product-mcgard {
  width: 101px;
  aspect-ratio: 101/102;
  background-size: 1075.2475% auto;
  background-position: 81.6244% 71.9168%;
}
.product-info {
  padding: 0 0 0 8px;
  min-width: 0;
}
.product h3 {
  font-size: 12px;
  line-height: 1.22;
  letter-spacing: -0.1px;
}
.product-info > p {
  color: #767b85;
  font-size: 11px;
  white-space: nowrap;
  margin-top: 1px;
}
.rating {
  font-size: 11px;
  color: #717a88;
  margin-top: 3px;
  white-space: nowrap;
}
.rating > span {
  font-size: 15px;
  color: #ffa300;
  vertical-align: -1px;
}
.price {
  font-size: 16px;
  font-weight: 700;
  letter-spacing: -0.45px;
  white-space: nowrap;
  margin-top: 6px;
}
.price del {
  font-size: 9px;
  font-weight: 400;
  color: #969ca5;
  margin-left: 3px;
}
.product-tags {
  display: flex;
  gap: 6px;
  align-items: center;
  margin-top: 7px;
  white-space: nowrap;
}
.product-tags .badge {
  font-size: 8px;
  padding: 2px 6px;
}
.product:last-child .product-tags {
  margin-left: -4px;
  gap: 5px;
}
.product:last-child .product-tags .badge {
  padding-inline: 5px;
  font-size: 7px;
}
.product-actions {
  display: grid;
  grid-template-columns: 1fr 46px;
  gap: 11px;
  margin-top: 5px;
}
.product-actions .button {
  min-height: 30px;
  font-size: 11px;
}
.favorite {
  border: 1px solid #e0e4e9;
  border-radius: 6px;
  display: grid;
  place-content: center;
}
.favorite .icon {
  width: 20px;
  height: 20px;
}
.about {
  display: grid;
  grid-template-columns: 1.27fr 1fr;
  gap: 12px;
  min-height: 164px;
  margin: 9px 0 7px;
}
.about-copy {
  padding-top: 2px;
}
.about-subtitle {
  font-size: 11px;
  margin-top: 2px;
  white-space: nowrap;
}
.reasons {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-top: 14px;
}
.reasons article {
  padding-right: 10px;
}
.reasons article + article {
  border-left: 1px solid #eef0f3;
  padding-left: 16px;
}
.reasons .icon {
  width: 34px;
  height: 34px;
  color: #ff4229;
  margin-bottom: 3px;
}
.reasons h3 {
  font-size: 10px;
  line-height: 1.3;
  white-space: nowrap;
}
.reasons p {
  font-size: 8px;
  line-height: 1.6;
  color: #757982;
  margin-top: 4px;
  letter-spacing: -0.1px;
}
.visualizer {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  border-radius: 6px;
  background: #363c3e;
  min-height: 164px;
  color: white;
}
.visualizer-scene {
  position: absolute;
  inset: 0;
  background-size: 251.9722% auto;
  background-position: 92.5191% 88.7549%;
}
.visualizer-heading {
  position: absolute;
  left: 17px;
  top: 10px;
  background: linear-gradient(90deg, #222b, #2220);
  padding: 0 12px 4px 0;
}
.visualizer-heading h3 {
  font-size: 15px;
  margin-bottom: 8px;
  letter-spacing: -0.3px;
}
.visualizer-heading .button {
  min-height: 28px;
  font-size: 9px;
}
.visualizer-select {
  position: absolute;
  right: 11px;
  top: 15px;
  width: 111px;
  padding: 6px;
  border-radius: 5px;
  background: #fff;
  box-shadow: 0 0 8px #0003;
  color: #60656d;
  font-size: 6px;
}
.visualizer-select select {
  display: block;
  width: 100%;
  font-size: 7px;
  background: #eef0f3;
  border: 1px solid #e3e4e7;
  margin-top: 4px;
  height: 17px;
  padding: 0 4px;
  color: #41464b;
}
.footer {
  background: #1d1e1d;
  color: #fff;
  min-height: 133px;
  padding: 14px 0 15px;
}
.footer-grid {
  position: relative;
  display: grid;
  grid-template-columns: 165px 110px 127px 163px 1fr;
  gap: 18px;
}
.footer-brand {
  border-right: 1px solid #333;
  padding-right: 18px;
}
.footer-brand .brand > span {
  font-size: 22px;
  letter-spacing: -1.2px;
}
.footer-brand .brand small {
  font-size: 5px;
  color: #a8a8a8;
  letter-spacing: -0.1px;
}
.footer-brand > p {
  margin-top: 23px;
  font-size: 8px;
  color: #b0b0b0;
  line-height: 1.7;
}
.footer-column {
  display: flex;
  align-items: flex-start;
  flex-direction: column;
  gap: 2px;
}
.footer-column h3 {
  font-size: 9px;
  line-height: 1.4;
  margin-bottom: 1px;
}
.footer-column a,
.footer-column button {
  font-size: 8px;
  line-height: 1.6;
  color: #bfc0c0;
  text-align: left;
}
.footer-column a:hover,
.footer-column button:hover {
  color: white;
}
.footer-contacts {
  font-size: 8px;
  color: #c4c4c4;
  position: relative;
}
.footer-phone {
  display: flex;
  gap: 8px;
  text-align: left;
  color: white;
}
.footer-phone .icon {
  width: 15px;
  height: 15px;
}
.footer-phone b {
  font-size: 11px;
  font-weight: 600;
}
.footer-phone small {
  display: block;
  font-size: 7px;
  font-weight: 400;
  color: #a7a7a7;
}
.address {
  display: flex;
  gap: 9px;
  margin-top: 8px;
  font-size: 8px;
  line-height: 1.6;
}
.address .icon {
  width: 14px;
  height: 14px;
}
.socials {
  display: flex;
  gap: 10px;
  margin-top: 8px;
}
.socials button {
  color: #d3d3d3;
}
.socials .icon {
  width: 18px;
  height: 18px;
}
.footer-signature {
  position: absolute;
  right: 46px;
  bottom: -2px;
  font-family: "Segoe Print", "Comic Sans MS", cursive;
  font-style: italic;
  transform: rotate(-10deg);
  font-size: 14px;
  line-height: 1.25;
}
.footer-signature::after {
  content: "";
  display: block;
  margin: 6px 0 0 39px;
  width: 66px;
  height: 1px;
  background: var(--accent);
  transform: rotate(-3deg);
}
.chat-widget {
  position: absolute;
  z-index: 10;
  bottom: 25px;
  right: 20px;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 5px;
}
.chat-launcher {
  height: 44px;
  width: 44px;
  display: grid;
  place-content: center;
  background: var(--accent);
  border-radius: 50%;
  color: #fff;
  box-shadow: 0 4px 13px #0002;
  border: 1px solid #ff765f;
}
.chat-launcher .icon {
  width: 27px;
  height: 27px;
}
.chat-greeting {
  position: relative;
  background: #fff;
  color: #303236;
  box-shadow:
    0 0 0 1px #e1e3e5,
    0 4px 10px #0002;
  border-radius: 6px;
  margin-right: 20px;
  padding: 8px 9px;
  font-size: 7px;
  line-height: 1.6;
  width: 138px;
}
.chat-greeting::after {
  content: "";
  position: absolute;
  bottom: -6px;
  right: 9px;
  border-top: 7px solid #fff;
  border-left: 7px solid transparent;
}
.greeting-close {
  position: absolute;
  right: 3px;
  top: 3px;
  color: #999;
}
.greeting-close .icon {
  width: 9px;
  height: 9px;
}
.skip-link {
  position: fixed;
  top: -60px;
  left: 12px;
  background: #fff;
  color: #111;
  padding: 10px;
  z-index: 20;
}
.skip-link:focus {
  top: 8px;
}
.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
@media (min-width: 1250px) {
  body {
    font-size: 15px;
  }
  h2 {
    font-size: 28px;
  }
  .container {
    width: calc(100% - 80px);
    max-width: 1320px;
  }
  .wide {
    width: calc(100% - 40px);
    max-width: 1400px;
  }
  .topbar {
    height: 36px;
  }
  .topbar-inner, .topbar-benefit, .hours {
    font-size: 11px;
  }
  .topbar-phone {
    font-size: 13px;
  }
  .topbar .icon {
    width: 17px;
    height: 17px;
  }
  .header-main {
    height: 90px;
    gap: 18px;
  }
  .brand > span {
    font-size: 36px;
  }
  .brand small {
    font-size: 9px;
  }
  .catalog-button {
    height: 46px;
    font-size: 14px;
    padding-inline: 18px;
  }
  .header-search {
    height: 46px;
  }
  .header-search input {
    font-size: 12px;
  }
  .header-search button {
    height: 44px;
    width: 44px;
  }
  .header-actions {
    gap: 22px;
  }
  .header-actions .icon {
    width: 26px;
    height: 26px;
  }
  .header-actions button > span {
    font-size: 10px;
  }
  .counter {
    min-width: 17px;
    height: 17px;
    line-height: 17px;
    font-size: 10px;
  }
  .navigation {
    height: 42px;
    font-size: 14px;
    gap: 38px;
  }
  .hero-copy {
    padding: 32px 40px;
    width: 60%;
  }
  .hero h1 {
    font-size: clamp(48px, 3.9vw, 56px);
    line-height: 0.98;
  }
  .hero-copy > p {
    font-size: 17px;
    margin-top: 16px;
  }
  .hero-buttons {
    margin-top: 22px;
  }
  .hero-buttons .button {
    width: 214px;
    height: 48px;
    font-size: 15px;
  }
  .hero-benefits {
    margin-top: 22px;
    gap: 30px;
  }
  .hero-benefits > div {
    font-size: 13px;
  }
  .hero-benefits .icon {
    width: 31px;
    height: 31px;
  }
  .fitment {
    width: calc(100% - 64px);
    max-width: 1380px;
    margin-top: 18px;
    margin-bottom: 16px;
    padding: 22px 18px 16px 22px;
  }
  .fitment-intro {
    flex-basis: 400px;
  }
  .fitment h2 {
    font-size: 22px;
  }
  .fitment-intro p {
    font-size: 13px;
    margin-top: 6px;
  }
  .ai-mark {
    width: 56px;
    height: 56px;
    flex-shrink: 0;
    font-size: 32px;
  }
  .vehicle-form label {
    font-size: 12px;
  }
  .vehicle-form select {
    font-size: 14px;
    height: 46px;
    padding-inline: 10px;
  }
  .vehicle-form .button {
    min-height: 46px;
    margin: 0;
    font-size: 14px;
  }
  .fitment-bottom {
    margin-top: 18px;
  }
  .manual-form {
    height: 76px;
    padding: 12px;
  }
  .manual-caption {
    font-size: 12px;
  }
  .manual-form label {
    font-size: 11px;
    height: 48px;
    padding: 5px 7px 0;
  }
  .manual-form select {
    font-size: 14px;
    height: 27px;
  }
  .manual-form .button {
    min-height: 46px;
    min-width: 92px;
    font-size: 14px;
  }
  .parameter-tabs {
    font-size: 13px;
    gap: 14px;
    padding-right: 8px;
  }
  .fitment-car {
    flex-basis: 290px;
  }
  .car-photo {
    width: 165px;
  }
  .fitment-car > span {
    font-size: 15px;
  }
  .categories {
    gap: 16px;
  }
  .category {
    height: 192px;
  }
  .category-copy {
    padding: 16px 20px;
  }
  .category h2 {
    font-size: 28px;
  }
  .category p {
    font-size: 14px;
    line-height: 1.4;
    margin: 6px 0 14px;
  }
  .button.small {
    min-height: 40px;
    font-size: 13px;
    padding-inline: 16px;
  }
  .button.small .icon {
    width: 17px;
    height: 17px;
  }
  .category-tyre {
    width: 210px;
  }
  .category-wheel {
    width: 220px;
  }
  .category-bolts {
    width: 192px;
  }
  .services {
    margin-top: 18px;
    gap: 14px;
  }
  .service {
    padding: 18px 16px;
    min-height: 176px;
  }
  .service h3 {
    font-size: 14px;
    white-space: normal;
  }
  .service p {
    font-size: 14px;
    line-height: 1.45;
    margin: 10px 0 12px;
  }
  .service .text-button {
    font-size: 13px;
    min-height: 24px;
  }
  .service-heading {
    gap: 9px;
    min-height: 40px;
  }
  .service-heading > .icon {
    width: 36px;
    height: 36px;
  }
  .service:last-child .service-heading {
    gap: 6px;
    flex-wrap: wrap;
  }
  .service:last-child p {
    margin-top: 10px;
    margin-bottom: 12px;
  }
  .service .badge {
    font-size: 10px;
  }
  .bestsellers {
    margin-top: 20px;
  }
  .section-heading {
    margin-bottom: 12px;
    min-height: 56px;
  }
  .section-heading p {
    font-size: 14px;
    margin-top: 4px;
  }
  .products-controls .text-button {
    font-size: 13px;
  }
  .round-button {
    width: 36px;
    height: 36px;
  }
  .products {
    gap: 14px;
  }
  .product {
    height: 282px;
    padding: 12px 14px 14px;
  }
  .product-badges {
    height: 28px;
  }
  .product-badges .badge {
    font-size: 11px;
  }
  .product-body {
    grid-template-columns: 44% 56%;
  }
  .product-michelin {
    width: 126px;
  }
  .product-kk {
    width: 140px;
  }
  .product-nokian {
    width: 140px;
  }
  .product-mcgard {
    width: 130px;
  }
  .product h3 {
    font-size: 15px;
    line-height: 1.3;
  }
  .product-info > p {
    font-size: 13px;
    white-space: normal;
    margin-top: 4px;
  }
  .rating {
    font-size: 13px;
    margin-top: 6px;
  }
  .price {
    font-size: 22px;
    margin-top: 8px;
  }
  .price del {
    font-size: 11px;
  }
  .product-tags {
    flex-wrap: wrap;
    margin-top: 9px;
  }
  .product-tags .badge {
    font-size: 11px;
  }
  .product:last-child .product-tags .badge {
    font-size: 10px;
  }
  .product-actions {
    grid-template-columns: 1fr 44px;
    gap: 8px;
    margin-top: 10px;
  }
  .product-actions .button {
    height: 44px;
    font-size: 14px;
  }
  .about {
    min-height: 246px;
    margin: 20px 0 16px;
    gap: 22px;
    grid-template-columns: 1.45fr 1fr;
  }
  .about-subtitle {
    font-size: 14px;
    white-space: normal;
    margin-top: 6px;
  }
  .visualizer {
    min-height: 0;
    aspect-ratio: 431 / 163;
    align-self: start;
  }
  .reasons {
    margin-top: 24px;
  }
  .reasons .icon {
    width: 40px;
    height: 40px;
    margin-bottom: 8px;
  }
  .reasons h3 {
    font-size: 14px;
    white-space: normal;
  }
  .reasons p {
    font-size: 12px;
    line-height: 1.6;
    margin-top: 7px;
  }
  .reasons p br {
    display: none;
  }
  .visualizer-heading h3 {
    font-size: 18px;
  }
  .visualizer-heading .button {
    font-size: 10px;
    height: 32px;
  }
  .visualizer-select {
    width: 130px;
  }
  .visualizer-select select {
    height: 20px;
    font-size: 8px;
  }
  .footer-grid {
    grid-template-columns: 195px 145px 175px 205px 1fr;
    gap: 22px;
  }
  .footer-brand .brand > span {
    font-size: 28px;
  }
  .footer-brand .brand small {
    font-size: 7px;
  }
  .footer-column h3 {
    font-size: 14px;
    margin-bottom: 5px;
  }
  .footer-column a,
  .footer-column button {
    font-size: 12px;
    line-height: 1.7;
  }
  .footer {
    padding-block: 26px;
  }
  .footer-brand > p {
    font-size: 11px;
  }
  .footer-phone b {
    font-size: 16px;
  }
  .footer-phone small {
    font-size: 10px;
  }
  .address {
    font-size: 12px;
  }
  .footer-signature {
    right: 60px;
    font-size: 17px;
  }
  .socials .icon {
    width: 24px;
    height: 24px;
  }
  .chat-greeting {
    width: 170px;
    font-size: 9px;
    padding: 10px 12px;
  }
  .chat-launcher {
    width: 52px;
    height: 52px;
  }
}
@media (min-width: 1250px) and (max-width: 1350px) {
  .hero-copy {
    padding: 26px 32px;
  }
  .hero-copy > p {
    font-size: 16px;
  }
  .hero-buttons, .hero-benefits {
    margin-top: 16px;
  }
  .hero-benefits {
    gap: 22px;
  }
  .hero-benefits > div {
    font-size: 12px;
  }
  .fitment-top {
    gap: 12px;
  }
  .fitment-intro {
    flex-basis: 365px;
    gap: 12px;
  }
  .fitment h2 {
    font-size: 20px;
  }
  .fitment-intro p {
    font-size: 12px;
  }
  .vehicle-form {
    gap: 8px;
  }
  .vehicle-form select {
    font-size: 13px;
  }
  .fitment-car {
    flex-basis: 210px;
  }
  .fitment-car > span {
    display: none;
  }
  .category h2 {
    font-size: 25px;
  }
  .service h3 {
    font-size: 13px;
  }
  .service p {
    font-size: 13px;
  }
  .product h3 {
    font-size: 14px;
  }
  .product-info > p {
    font-size: 12px;
  }
  .price {
    font-size: 20px;
  }
  .price del {
    font-size: 10px;
  }
  .footer-grid {
    grid-template-columns: 190px 130px 160px 180px 1fr;
    gap: 18px;
  }
}
@media (max-width: 1050px) and (min-width: 769px) {
  .container {
    width: calc(100% - 56px);
  }
  .header-actions {
    gap: 13px;
    margin-left: 0;
  }
  .header-main {
    gap: 11px;
  }
  .brand > span {
    font-size: 27px;
  }
  .catalog-button {
    margin-left: 0;
  }
  .topbar-benefit {
    font-size: 8px;
  }
  .topbar-inner {
    gap: 7px;
  }
  .topbar-phone {
    font-size: 10px;
  }
  .hours {
    font-size: 8px;
  }
  .hero h1 {
    font-size: 37px;
  }
  .hero-copy {
    padding: 29px 30px;
  }
  .hero-benefits {
    gap: 20px;
  }
  .hero-benefits > div {
    font-size: 9px;
  }
  .hero-copy > p {
    font-size: 12px;
  }
  .fitment-intro {
    flex-basis: 320px;
    gap: 10px;
  }
  .fitment h2 {
    font-size: 17px;
  }
  .vehicle-form {
    gap: 8px;
  }
  .fitment-car {
    flex-basis: 245px;
  }
  .car-photo {
    width: 135px;
  }
  .fitment-car > span {
    font-size: 12px;
  }
  .manual-caption {
    font-size: 8px;
  }
  .parameter-tabs {
    gap: 12px;
    padding-right: 6px;
  }
  .service {
    padding-inline: 12px;
  }
  .service-heading {
    gap: 7px;
  }
  .service h3 {
    font-size: 9px;
  }
  .category h2 {
    font-size: 21px;
  }
  .footer-grid {
    grid-template-columns: 155px 105px 118px 153px 1fr;
    gap: 15px;
  }
  .product {
    padding-inline: 10px;
  }
}
@media (max-width: 900px) and (min-width: 769px) {
  .topbar-benefit:nth-of-type(2) {
    display: none;
  }
  .header-actions {
    gap: 7px;
  }
  .header-actions button {
    min-width: 37px;
  }
  .header-actions button > span {
    font-size: 7px;
  }
  .brand > span {
    font-size: 25px;
  }
  .brand small {
    font-size: 6.2px;
  }
  .navigation {
    gap: 27px;
  }
  .hero {
    aspect-ratio: auto;
    height: 300px;
  }
  .hero-photo {
    width: 56%;
    background-size: auto 456.78%;
    background-position: right 10.6101%;
  }
  .hero h1 {
    font-size: 33px;
  }
  .hero-copy {
    padding: 29px 25px;
    width: 60%;
  }
  .hero-copy > p {
    font-size: 11px;
  }
  .hero-buttons .button {
    width: 155px;
    font-size: 11px;
  }
  .hero-benefits {
    gap: 15px;
  }
  .hero-benefits .icon {
    width: 24px;
    height: 24px;
  }
  .hero-benefits > div {
    gap: 6px;
    font-size: 8px;
  }
  .fitment-top {
    gap: 12px;
  }
  .fitment-intro {
    flex-basis: 270px;
  }
  .fitment h2 {
    font-size: 15px;
  }
  .fitment-intro p {
    font-size: 9px;
  }
  .ai-mark {
    width: 39px;
    height: 43px;
  }
  .vehicle-form {
    gap: 6px;
  }
  .vehicle-form select {
    padding-inline: 5px;
    font-size: 9px;
  }
  .vehicle-form .button {
    font-size: 10px;
    padding-inline: 7px;
  }
  .fitment-car {
    flex-basis: 170px;
  }
  .fitment-car > span {
    display: none;
  }
  .manual-caption {
    font-size: 9px;
  }
  .services {
    gap: 8px;
  }
  .service {
    padding: 10px;
  }
  .service-heading {
    gap: 5px;
  }
  .service-heading > .icon {
    width: 28px;
  }
  .service h3 {
    font-size: 8px;
  }
  .service p {
    font-size: 10px;
  }
  .service .badge {
    font-size: 6px;
    padding: 2px 3px;
  }
  .category h2 {
    font-size: 18px;
  }
  .category-copy {
    padding-left: 12px;
  }
  .category p {
    font-size: 10px;
  }
  .category .button {
    padding-inline: 8px;
    font-size: 9px;
  }
  .category .photo {
    right: -20px;
    width: 135px;
  }
  .product {
    height: 195px;
    padding-inline: 8px;
  }
  .product-info {
    padding-left: 4px;
  }
  .product h3 {
    font-size: 10px;
  }
  .product-info > p {
    font-size: 8px;
  }
  .price {
    font-size: 13px;
  }
  .price del {
    font-size: 7px;
    margin-left: 1px;
  }
  .product-tags {
    gap: 3px;
  }
  .product-tags .badge {
    font-size: 7px;
    padding: 2px 3px;
  }
  .product:last-child .product-tags {
    flex-wrap: wrap;
  }
  .product:last-child .product-tags .badge {
    font-size: 6px;
  }
  .about {
    grid-template-columns: 1.25fr 1fr;
  }
  .about-subtitle {
    font-size: 9px;
  }
  .reasons h3 {
    font-size: 9px;
  }
  .reasons p {
    font-size: 7px;
  }
  .reasons article + article {
    padding-left: 10px;
  }
  .visualizer-heading {
    left: 10px;
  }
  .visualizer-heading h3 {
    font-size: 12px;
  }
  .visualizer-select {
    right: 8px;
    width: 90px;
    top: 45px;
  }
  .visualizer-heading .button {
    font-size: 8px;
    padding-inline: 8px;
  }
  .footer-grid {
    grid-template-columns: 140px 91px 105px 138px 1fr;
    gap: 12px;
  }
  .footer-brand .brand > span {
    font-size: 20px;
  }
  .footer-column a,
  .footer-column button {
    font-size: 7px;
  }
  .footer-signature {
    right: 0;
    font-size: 12px;
  }
  .footer-phone b {
    font-size: 10px;
  }
  .address {
    font-size: 7px;
  }
}
@media (max-width: 768px) {
  body {
    font-size: 14px;
  }
  .container {
    width: calc(100% - 32px);
  }
  .wide {
    width: calc(100% - 24px);
  }
  .topbar {
    height: 30px;
  }
  .topbar-inner {
    font-size: 10px;
  }
  .topbar .icon {
    width: 14px;
    height: 14px;
  }
  .topbar-benefit,
  .hours {
    display: none;
  }
  .topbar-phone {
    font-size: 10px;
  }
  .topbar-phone .icon {
    width: 13px;
    height: 13px;
  }
  .header-main {
    height: auto;
    min-height: 114px;
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 12px 10px;
    padding-block: 13px;
  }
  .brand > span {
    font-size: 27px;
  }
  .brand small {
    font-size: 6.5px;
  }
  .catalog-button {
    grid-column: 2;
    grid-row: 2;
    margin: 0;
    min-height: 39px;
    padding-inline: 11px;
  }
  .header-search {
    grid-column: 1;
    grid-row: 2;
    height: 39px;
    width: 100%;
    min-width: 0;
  }
  .header-search input {
    font-size: 10px;
    padding-left: 10px;
  }
  .header-actions {
    grid-column: 2;
    grid-row: 1;
    margin: 0;
    gap: 12px;
  }
  .header-actions button {
    min-width: 26px;
    padding: 0;
    gap: 0;
  }
  .header-actions button > span {
    display: none;
  }
  .header-actions .icon {
    width: 22px;
    height: 22px;
  }
  .counter {
    right: -4px;
    top: -5px;
  }
  .header-actions button:nth-child(2) {
    display: none;
  }
  .navigation {
    height: 37px;
    gap: 25px;
    overflow-x: auto;
    scrollbar-width: none;
    font-size: 11px;
    margin-bottom: 3px;
  }
  .navigation::-webkit-scrollbar {
    display: none;
  }
  .navigation a,
  .navigation button {
    flex-shrink: 0;
    min-height: 36px;
    display: flex;
    align-items: center;
  }
  .hero {
    aspect-ratio: auto;
    height: 510px;
    border-radius: 8px;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
  }
  .hero-photo {
    top: auto;
    bottom: 0;
    left: auto;
    right: 0;
    width: 100%;
    height: auto;
    aspect-ratio: 589/317;
    background-size: 184.38% auto;
    background-position: 96.5795% 10.6101%;
  }
  .hero-photo::after {
    background: linear-gradient(#0b0e0f, transparent 24%);
  }
  .hero::after {
    background: linear-gradient(#11181b, #0b0e0f);
    inset: 0 0 40%;
  }
  .hero-copy {
    padding: 25px 22px;
    width: 100%;
  }
  .hero h1 {
    font-size: clamp(27px, 7.3vw, 44px);
    letter-spacing: -0.9px;
    line-height: 1.01;
    white-space: normal;
  }
  .hero h1 span {
    white-space: nowrap;
  }
  .hero-copy > p {
    font-size: 12px;
    line-height: 1.5;
    margin-top: 16px;
    max-width: 360px;
  }
  .desktop-break {
    display: none;
  }
  .hero-buttons {
    gap: 9px;
    margin-top: 17px;
  }
  .hero-buttons .button {
    flex: 1;
    width: auto;
    padding: 0 10px;
    max-width: 195px;
    min-height: 42px;
    height: auto;
    font-size: 11px;
    gap: 8px;
  }
  .hero-benefits {
    gap: 16px;
    margin-top: 19px;
  }
  .hero-benefits > div {
    font-size: 8px;
    gap: 6px;
    line-height: 1.5;
  }
  .hero-benefits .icon {
    width: 22px;
    height: 22px;
  }
  .slider-dots {
    bottom: 10px;
  }
  .slider-dots span {
    width: 16px;
    height: 5px;
  }
  .fitment {
    width: calc(100% - 24px);
    margin: 12px auto 14px;
    padding: 17px 14px 13px;
    min-height: 0;
  }
  .fitment-top {
    display: block;
    padding: 0;
  }
  .fitment-intro {
    gap: 12px;
  }
  .fitment h2 {
    font-size: 17px;
    letter-spacing: -0.5px;
  }
  .fitment-intro p {
    font-size: 10px;
    margin-top: 5px;
  }
  .ai-mark {
    width: 42px;
    height: 45px;
    flex-shrink: 0;
  }
  .vehicle-form {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    margin-top: 17px;
  }
  .vehicle-form label {
    font-size: 11px;
  }
  .vehicle-form select {
    height: 42px;
    font-size: 12px;
    padding-inline: 10px;
    margin-top: 5px;
  }
  .vehicle-form .button {
    grid-column: 1/-1;
    height: 42px;
    font-size: 13px;
    margin: 0;
  }
  .fitment-bottom {
    margin-top: 13px;
    display: block;
  }
  .manual-form {
    height: auto;
    padding: 12px 10px;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 9px;
    background: #ffffffa6;
  }
  .manual-caption {
    grid-column: 1/-1;
    font-size: 10px;
    white-space: normal;
  }
  .parameter-tabs {
    grid-column: 1/-1;
    gap: 25px;
    font-size: 12px;
    padding: 0;
    margin-bottom: 3px;
  }
  .parameter-tabs button {
    height: 31px;
  }
  .manual-form label {
    height: 44px;
    font-size: 9px;
    padding: 5px 6px 0;
  }
  .manual-form select {
    height: 25px;
    font-size: 12px;
  }
  .manual-form .button {
    grid-column: 1/-1;
    margin: 2px 0 0;
    height: 40px;
    font-size: 12px;
  }
  .fitment-car {
    justify-content: center;
    gap: 13px;
    margin-top: 8px;
  }
  .car-photo {
    width: 142px;
  }
  .fitment-car > span {
    font-size: 14px;
  }
  .categories {
    grid-template-columns: 1fr;
    gap: 10px;
  }
  .category {
    height: 155px;
  }
  .category-copy {
    padding: 15px 17px;
  }
  .category h2 {
    font-size: 23px;
  }
  .category p {
    font-size: 12px;
    line-height: 1.4;
    margin: 6px 0 11px;
  }
  .category .button {
    height: 32px;
    font-size: 10px;
  }
  .category-tyre {
    width: 172px;
  }
  .category-wheel {
    width: 178px;
  }
  .category-bolts {
    width: 166px;
    right: 10px !important;
    bottom: 10px !important;
  }
  .services {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin-top: 14px;
  }
  .service {
    min-height: 148px;
    padding: 12px;
  }
  .service-heading {
    gap: 8px;
    min-height: 34px;
  }
  .service-heading > .icon {
    width: 30px;
    height: 30px;
  }
  .service h3 {
    font-size: 10px;
    white-space: normal;
  }
  .service p {
    font-size: 11px;
    margin: 8px 0 11px;
    line-height: 1.45;
  }
  .service .text-button {
    font-size: 11px;
    min-height: 26px;
  }
  .service:last-child {
    grid-column: 1/-1;
    min-height: 118px;
    position: relative;
    padding: 14px;
  }
  .service:last-child .service-heading {
    gap: 10px;
  }
  .service:last-child p {
    margin: 7px 0 0;
    font-size: 11px;
  }
  .service:last-child p br {
    display: none;
  }
  .service:last-child .text-button {
    margin-top: 5px;
  }
  .service .badge {
    font-size: 9px;
  }
  .bestsellers {
    margin-top: 19px;
  }
  .section-heading {
    align-items: flex-start;
    flex-direction: column;
    gap: 8px;
    margin-bottom: 11px;
  }
  .section-heading h2 {
    font-size: 24px;
  }
  .section-heading p {
    font-size: 11px;
    margin-top: 3px;
  }
  .products-controls {
    width: 100%;
    justify-content: flex-end;
  }
  .products-controls > .text-button {
    margin-right: auto;
    font-size: 11px;
  }
  .round-button {
    width: 29px;
    height: 29px;
  }
  .products {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
  }
  .product {
    height: auto;
    min-height: 315px;
    padding: 9px 10px 11px;
  }
  .product-badges {
    height: 21px;
  }
  .product-body {
    display: flex;
    flex-direction: column;
    align-items: stretch;
  }
  .product-body > .photo {
    align-self: center;
    margin: 0;
    height: 108px;
    width: auto;
    margin-bottom: 7px;
  }
  .product-info {
    padding: 0;
  }
  .product h3 {
    font-size: 12px;
    line-height: 1.3;
  }
  .product h3 br {
    display: none;
  }
  .product h3 br::after {
    content: " ";
  }
  .product h3 {
    min-height: 31px;
  }
  .product-info > p {
    font-size: 10px;
    margin-top: 2px;
  }
  .rating {
    font-size: 10px;
    margin-top: 3px;
  }
  .price {
    font-size: 17px;
    margin-top: 4px;
    letter-spacing: -0.4px;
  }
  .price del {
    font-size: 8px;
    margin-left: 2px;
  }
  .product-tags {
    gap: 5px;
    margin-top: 6px;
    min-height: 16px;
  }
  .product-tags .badge {
    font-size: 8px;
    padding-inline: 4px;
  }
  .product:last-child .product-tags {
    margin: 6px 0 0;
    gap: 3px;
    flex-wrap: wrap;
  }
  .product:last-child .product-tags .badge {
    font-size: 6px;
    padding-inline: 3px;
  }
  .product-actions {
    grid-template-columns: 1fr 30px;
    gap: 5px;
    margin-top: 10px;
  }
  .product-actions .button {
    font-size: 10px;
    min-height: 36px;
    padding-inline: 5px;
  }
  .favorite .icon {
    width: 18px;
    height: 18px;
  }
  .about {
    display: flex;
    flex-direction: column;
    margin: 20px 0 15px;
    gap: 18px;
  }
  .about h2 {
    font-size: 23px;
  }
  .about-subtitle {
    white-space: normal;
    font-size: 11px;
    margin-top: 6px;
  }
  .reasons {
    grid-template-columns: 1fr;
    margin-top: 17px;
    gap: 18px;
  }
  .reasons article {
    display: grid;
    grid-template-columns: 40px 1fr;
    column-gap: 12px;
    padding: 0;
  }
  .reasons article + article {
    padding: 0;
    border: 0;
  }
  .reasons .icon {
    grid-column: 1;
    grid-row: 1/3;
    width: 33px;
    height: 33px;
    margin-top: 2px;
  }
  .reasons h3 {
    grid-column: 2;
    font-size: 13px;
  }
  .reasons p {
    grid-column: 2;
    font-size: 11px;
    line-height: 1.6;
    margin-top: 4px;
  }
  .reasons p br {
    display: none;
  }
  .visualizer {
    min-height: 0;
    height: auto;
    aspect-ratio: 431/163;
  }
  .visualizer-heading {
    top: 9px;
    left: 10px;
  }
  .visualizer-heading h3 {
    font-size: 12px;
    margin-bottom: 7px;
  }
  .visualizer-heading .button {
    font-size: 8px;
    padding-inline: 8px;
    min-height: 25px;
  }
  .visualizer-select {
    top: 12px;
    right: 9px;
    width: 92px;
    font-size: 5px;
    padding: 5px;
  }
  .visualizer-select select {
    height: 14px;
    font-size: 6px;
    margin-top: 3px;
  }
  .footer {
    padding: 24px 0 28px;
  }
  .footer-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 23px 20px;
  }
  .footer-brand {
    grid-column: 1/-1;
    border: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0;
  }
  .footer-brand .brand > span {
    font-size: 25px;
  }
  .footer-brand .brand small {
    font-size: 6px;
  }
  .footer-brand > p {
    margin: 0;
    font-size: 8px;
  }
  .footer-column {
    gap: 4px;
  }
  .footer-column h3 {
    font-size: 12px;
    margin-bottom: 4px;
  }
  .footer-column a,
  .footer-column button {
    font-size: 10px;
    line-height: 1.6;
  }
  .footer-contacts {
    padding-top: 0;
  }
  .footer-phone {
    gap: 6px;
  }
  .footer-phone b {
    font-size: 10px;
  }
  .footer-phone small {
    font-size: 8px;
    margin-top: 3px;
  }
  .address {
    font-size: 9px;
    gap: 6px;
  }
  .socials {
    gap: 15px;
    margin-top: 14px;
  }
  .socials .icon {
    width: 22px;
    height: 22px;
  }
  .footer-signature {
    display: none;
  }
  .chat-widget {
    right: 12px;
    bottom: 16px;
  }
  .chat-launcher {
    width: 47px;
    height: 47px;
  }
  .chat-greeting {
    display: none;
  }
}
@media (min-width: 540px) and (max-width: 768px) {
  .hero {
    height: 500px;
  }
  .hero-copy {
    padding: 27px 30px;
  }
  .hero h1 {
    font-size: 42px;
  }
  .hero-photo {
    width: 75%;
    max-height: 270px;
  }
  .hero-copy > p {
    font-size: 14px;
  }
  .hero-benefits > div {
    font-size: 10px;
  }
  .hero-benefits {
    gap: 26px;
  }
  .fitment-top {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 18px;
  }
  .fitment-intro {
    flex-direction: column;
    align-items: flex-start;
  }
  .vehicle-form {
    margin-top: 0;
  }
  .fitment-bottom {
    display: flex;
  }
  .manual-form {
    flex: 1;
  }
  .fitment-car {
    flex: 0 0 150px;
    display: flex;
    flex-direction: column;
  }
  .fitment-car > span {
    font-size: 14px;
  }
  .categories {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .category {
    height: 230px;
  }
  .category-copy {
    padding: 12px;
  }
  .category h2 {
    font-size: 20px;
  }
  .category p {
    font-size: 10px;
  }
  .category .button {
    font-size: 8px;
    padding-inline: 7px;
    gap: 3px;
  }
  .category .photo {
    width: 130px;
  }
  .category-bolts {
    bottom: 0 !important;
    right: 0 !important;
  }
  .service:last-child {
    grid-column: auto;
    min-height: 148px;
  }
  .services {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .product {
    min-height: 290px;
  }
  .product-body {
    display: grid;
    grid-template-columns: 43% 57%;
    align-items: center;
  }
  .product-body > .photo {
    height: 112px;
    margin-bottom: 0;
  }
  .product h3 {
    min-height: 0;
  }
  .product-info {
    padding-left: 7px;
  }
  .product-actions {
    grid-template-columns: 1fr 42px;
  }
  .product {
    min-height: 198px;
  }
  .reasons {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
  }
  .reasons article {
    display: block;
  }
  .reasons h3 {
    white-space: normal;
    margin-top: 5px;
  }
  .reasons p {
    font-size: 10px;
  }
  .visualizer {
    max-width: 520px;
    width: 100%;
    align-self: center;
  }
  .visualizer-heading h3 {
    font-size: 17px;
  }
  .visualizer-select {
    width: 120px;
    font-size: 7px;
  }
  .visualizer-select select {
    height: 19px;
    font-size: 8px;
  }
  .visualizer-heading .button {
    font-size: 10px;
    height: 31px;
  }
}
@media (max-width: 359px) {
  .container {
    width: calc(100% - 24px);
  }
  .header-main {
    column-gap: 6px;
  }
  .header-actions {
    gap: 8px;
  }
  .brand > span {
    font-size: 24px;
  }
  .brand small {
    font-size: 5.7px;
  }
  .catalog-button {
    padding-inline: 8px;
    font-size: 10px;
  }
  .hero {
    height: 493px;
  }
  .hero-copy {
    padding: 23px 16px;
  }
  .hero h1 {
    font-size: 26px;
    letter-spacing: -1px;
  }
  .hero-copy > p {
    font-size: 11px;
  }
  .hero-buttons .button {
    font-size: 10px;
    gap: 4px;
    padding-inline: 7px;
  }
  .hero-benefits {
    gap: 9px;
  }
  .hero-benefits > div {
    font-size: 7px;
    gap: 5px;
  }
  .hero-benefits .icon {
    width: 19px;
    height: 19px;
  }
  .fitment {
    padding-inline: 11px;
  }
  .fitment-intro {
    gap: 9px;
  }
  .fitment h2 {
    font-size: 14px;
  }
  .fitment-intro p {
    font-size: 9px;
  }
  .ai-mark {
    width: 37px;
    height: 41px;
  }
  .category-bolts {
    right: -7px !important;
    width: 151px;
  }
  .category-copy {
    padding-left: 13px;
  }
  .category h2 {
    font-size: 22px;
  }
  .category p {
    font-size: 11px;
  }
  .service {
    padding: 11px 9px;
  }
  .service h3 {
    font-size: 9px;
  }
  .service-heading {
    gap: 6px;
  }
  .service-heading > .icon {
    width: 26px;
    height: 26px;
  }
  .service p {
    font-size: 10px;
  }
  .service .text-button {
    font-size: 10px;
  }
  .product {
    padding-inline: 8px;
  }
  .product h3 {
    font-size: 11px;
  }
  .product-info > p {
    font-size: 9px;
  }
  .price {
    font-size: 15px;
  }
  .price del {
    font-size: 7px;
  }
  .product-tags {
    gap: 3px;
  }
  .product-tags .badge {
    font-size: 7px;
    padding-inline: 3px;
  }
  .product-actions {
    grid-template-columns: 1fr 27px;
    gap: 4px;
  }
  .product-actions .button {
    font-size: 9px;
  }
  .visualizer-heading h3 {
    font-size: 10px;
  }
  .visualizer-select {
    width: 79px;
    font-size: 4.5px;
    top: 9px;
  }
  .visualizer-select select {
    height: 12px;
    font-size: 5px;
  }
  .visualizer-heading .button {
    font-size: 7px;
    min-height: 22px;
  }
  .footer-brand .brand > span {
    font-size: 22px;
  }
  .footer-brand .brand small {
    font-size: 5px;
  }
  .footer-brand > p {
    font-size: 7px;
  }
  .footer-grid {
    gap: 21px 13px;
  }
  .footer-column button {
    font-size: 9px;
  }
  .footer-phone b {
    font-size: 9px;
  }
}
@media (max-width: 768px) {
  .hero-photo {
    aspect-ratio: 571/317;
    background-size: 190.1926% auto;
    background-position: 96.699% 10.6101%;
  }
}
@media (max-width: 359px) {
  .hero {
    height: 460px;
  }
}
@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }
  *,
  *::before,
  *::after {
    transition: none !important;
    animation: none !important;
  }
}

[data-icon="brand-instagram"] { --icon: url("/local/templates/2waystore.ru/assets/css/../icons/brand-instagram.svg?v=20261107"); }
.contact-socials .contact-social, .tw-contact-card-socials a { width: 44px; height: 44px; padding: 0; justify-content: center; }
.tw-footer-socials .icon, .contact-socials .contact-social .icon, .tw-contact-card-socials .icon { width: 22px; height: 22px; }

/* End */


/* Start:/local/templates/2waystore.ru/assets/css/integration.css?1792135178519*/
.stage-notice { padding: 10px 16px; text-align: center; background: var(--tw-color-surface); color: var(--tw-color-text); font: 14px/1.5 Onest, Arial, sans-serif; }
.stage-section { min-height: 40vh; padding-top: 36px; padding-bottom: 48px; }
button:disabled, input:disabled, select:disabled { cursor: not-allowed; opacity: .6; }
.navigation { flex-wrap: wrap; }
.header-actions button:disabled { opacity: .65; }
@media (max-width: 768px) { .stage-notice { font-size: 12px; } input, select { font-size: 16px; } }

/* End */


/* Start:/local/templates/2waystore.ru/assets/css/storefront.css?179400015323450*/
/* Typography and layout of the Bitrix storefront. Values: design-tokens.css. */
html { scrollbar-gutter: stable; scroll-padding-top: var(--tw-header-clearance, 16px); }
body { font-size: var(--tw-type-body); line-height: var(--tw-leading-body); min-height: 100vh; min-height: 100dvh; display: flex; flex-direction: column; }
body > header, body > #panel, .tw-footer { flex-shrink: 0; }
body > #main { flex: 1 0 auto; }
#tw-home-products-title { scroll-margin-top: max(104px, calc(var(--tw-header-clearance, 72px) + 24px)); }
.customer-auth-form .customer-remember input { width: var(--tw-checkbox-size); height: var(--tw-checkbox-size); }
.tw-breadcrumbs { display: flex; align-items: center; flex-wrap: wrap; gap: 8px 12px; margin: 0 0 24px; color: var(--tw-color-muted); font-size: 13px; line-height: 1.5; }
.tw-breadcrumbs a { display: inline-flex; align-items: center; min-height: 32px; color: inherit; text-decoration: none; }
.tw-breadcrumbs a:hover { color: var(--tw-color-text); text-decoration: none; }
.tw-breadcrumbs a:focus-visible { outline: 2px solid var(--tw-color-focus); outline-offset: 2px; }
@media (max-width: 768px) { .tw-breadcrumbs { margin-bottom: 20px; font-size: 12px; } }
.container, .wide, .fitment {
  width: calc(100% - 2 * var(--tw-page-gutter));
  max-width: var(--tw-content-width);
  margin-inline: auto;
}
.brand > span, .hero h1 { font-weight: var(--tw-font-weight-bold); }
.brand { flex-shrink: 0; }
.brand .brand-logo { display: block; width: 156px; height: auto; max-width: 100%; }
.header-main .brand-logo { transform: translateX(-6.1327%); }
.header-main { min-height: 100px; height: auto; padding-block: 6px; gap: 24px; }
.header-main, .navigation { padding-inline: 16px; }
.header-search { min-width: 0; height: 48px; background: var(--tw-color-surface); border-color: var(--tw-color-border); border-radius: var(--tw-control-radius); }
.header-search:focus-within { border-color: var(--tw-color-field-focus); box-shadow: 0 0 0 1px var(--tw-color-field-focus); }
.header-search input { min-width: 0; height: 100%; font-size: var(--tw-type-small); padding-inline: 16px; color: var(--tw-color-text); border: 0; border-radius: 0; }
.header-search input::placeholder { color: var(--tw-color-muted); }
.header-search input:focus, .header-search input:focus-visible { outline: none; box-shadow: none; }
.header-search button { display: flex; align-items: center; justify-content: center; flex: 0 0 44px; height: 100%; color: var(--tw-color-text); }
.header-search button:hover { color: var(--tw-color-accent); background: var(--tw-white); }
.header-search button:focus-visible { outline-offset: -4px; }
.header-search button, .header-actions button { min-width: 44px; min-height: 44px; }
.header-actions { gap: 16px; margin-left: 0; }
.header-actions button { min-width: 64px; min-height: 48px; padding: 4px; gap: 6px; border-radius: var(--tw-control-radius); }
.header-actions .icon { width: 24px; height: 24px; flex-shrink: 0; }
.header-actions button > span { font-size: .75rem; line-height: 1.4; white-space: nowrap; }
.header-actions button:not(:disabled) > span { color: var(--tw-color-text); }
.header-actions button:not(:disabled):hover { background: var(--tw-color-surface); }
.header-actions button:not(:disabled):active { color: var(--tw-color-accent); }
.header-actions .counter[hidden] { display: none; }
.topbar { height: auto; min-height: 44px; }
.topbar-inner { height: auto; min-height: 44px; padding-inline: 16px; gap: 16px; font-size: var(--tw-type-small); }
.topbar-benefit, .city-button { font-size: var(--tw-type-small); }
a.topbar-benefit, a.topbar-benefit:is(:hover,:focus,:active) { color: inherit; text-decoration: none; }
a.topbar-benefit { min-height: 44px; }
a.topbar-benefit:focus-visible { outline: 2px solid var(--tw-white); outline-offset: -2px; }
.service[id] { scroll-margin-top: max(104px, calc(var(--tw-header-clearance, 72px) + 16px)); }
.city-button { min-height: 40px; min-width: 0; }
.city-button #current-city { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.topbar-contacts { display: flex; align-items: center; gap: 16px; margin-left: auto; flex-shrink: 0; }
.topbar-contacts .topbar-phone { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; font-size: .875rem; line-height: 1.4; color: inherit; text-decoration: none; white-space: nowrap; }
.topbar-contacts .hours { display: inline; font-size: .75rem; line-height: 1.4; white-space: nowrap; }
.navigation { height: auto; min-height: 48px; gap: 8px 36px; font-size: var(--tw-type-small); line-height: 1.4; padding-block: 0; justify-content: flex-start; }
.navigation a { position: relative; display: flex; align-items: center; min-height: 44px; }
.navigation .navigation-group-start::before {
  content: ''; position: absolute; left: -18px; top: 50%;
  width: 1px; height: 20px; background: var(--tw-color-border); transform: translateY(-50%);
}
.navigation a[aria-current] { color: var(--tw-color-accent); }
.navigation a:hover { color: var(--tw-color-accent); }
.navigation a:focus-visible { outline: var(--tw-focus-width) solid var(--tw-color-focus); outline-offset: -2px; }
.button, .button.small, .catalog-button, .hero-buttons .button,
.vehicle-form .button, .manual-form .button, .category .button {
  height: auto; min-height: var(--tw-control-height); padding: 10px 16px;
  font-size: var(--tw-control-font-size); font-weight: 700; line-height: 1.3;
  border-radius: var(--tw-control-radius); white-space: normal; text-align: center;
}
.button:not(.button-light):not(.button-dark) { background: var(--tw-button-background); color: var(--tw-button-text); }
.button:not(.button-light):not(.button-dark):not(:disabled):hover { background: var(--tw-button-hover-background); color: var(--tw-button-text); }
.catalog-button {
  min-height: var(--tw-space-12);
  padding-inline: var(--tw-space-5);
  gap: 10px;
  flex-shrink: 0;
  white-space: nowrap;
}
.catalog-button .icon { width: var(--tw-space-5); height: var(--tw-space-5); flex-shrink: 0; }
.catalog-button:active { background: var(--tw-button-hover-background); }
.hero { height: auto; min-height: 420px; aspect-ratio: auto; border-radius: var(--tw-banner-radius); }
.hero-slide { border-radius: inherit; }
.fitment { border-radius: var(--tw-banner-radius); }
.category, .service { border-radius: var(--tw-card-radius); }
.hero-photo { background-size: auto 456.7823%; }
.hero-copy { width: 61%; padding: 36px 32px; }
.hero h1 { font-size: var(--tw-hero-title-size); line-height: 1.08; letter-spacing: -.035em; white-space: normal; }
.hero h1 span { white-space: normal; }
.hero-copy > p { font-size: var(--tw-type-body); line-height: 1.6; max-width: 42ch; margin-top: 20px; }
.hero-copy p br { display: none; }
.hero-buttons { flex-wrap: wrap; gap: 12px; margin-top: 24px; }
.hero-buttons .button { width: auto; min-width: 180px; min-height: 48px; max-width: none; gap: 12px; }
.hero-benefits { flex-wrap: wrap; gap: 16px 24px; margin-top: 24px; }
.hero-benefits > div { font-size: .875rem; line-height: 1.5; gap: 10px; white-space: normal; }
.hero-benefits .icon { width: 28px; height: 28px; flex-shrink: 0; }
.fitment { min-height: 0; padding: 24px; margin-block: var(--tw-section-gap); }
.fitment-mobile-links { display: none; }
.fitment-top { display: grid; grid-template-columns: minmax(220px, .8fr) minmax(0, 2fr); gap: 24px; padding: 0; align-items: end; }
.fitment-intro { min-width: 0; display: block; }
.fitment h2, .category h2 { font-size: var(--tw-heading-size); line-height: var(--tw-leading-heading); letter-spacing: -.025em; }
.fitment-intro p { font-size: var(--tw-type-small); line-height: 1.6; margin-top: 12px; color: #5c616a; }
.vehicle-form { gap: 12px; }
.vehicle-form label { font-size: var(--tw-type-small); line-height: 1.4; color: #545963; }
.vehicle-form select { height: 44px; font-size: var(--tw-type-small); border-radius: 6px; margin-top: 8px; padding-inline: 12px; }
.vehicle-form .button { margin: 0; }
.fitment-bottom { margin-top: 24px; gap: 24px; align-items: center; }
.manual-form { height: auto; padding: 16px; gap: 12px; flex-wrap: wrap; }
.manual-caption { width: 100%; font-size: var(--tw-type-small); white-space: normal; margin: 0; }
.parameter-tabs { font-size: var(--tw-type-small); gap: 16px; padding-right: 0; }
.parameter-tabs button { min-height: 44px; height: auto; }
.manual-form label { height: auto; min-width: 76px; font-size: .75rem; line-height: 1.5; padding: 6px 10px; }
.manual-form select { min-height: 30px; height: auto; font-size: var(--tw-type-small); }
.manual-form .button { margin: 0; min-width: 100px; }
.fitment-car { flex-basis: 230px; gap: 12px; }
.fitment-car > span { font-family: Onest, Arial, sans-serif; font-size: var(--tw-type-small); font-style: normal; transform: none; white-space: normal; }
.car-photo { flex-shrink: 0; width: 120px; }
.categories { gap: 24px; }
.category { height: auto; min-height: 248px; }
.category-copy { padding: 24px; display: flex; flex-direction: column; align-items: flex-start; min-height: 248px; }
.category h2 { max-width: 100%; }
.category p { font-size: var(--tw-type-body); line-height: 1.5; margin: 12px 0 20px; max-width: 65%; color: #5c616a; }
.category p br { display: none; }
.category .button { margin-top: auto; }
.category .photo { width: 42%; max-width: 180px; }
.services { gap: 16px; margin-top: var(--tw-section-gap); margin-bottom: 48px; }
.service, .service:last-child { min-height: 196px; padding: 20px; }
.service-heading, .service:last-child .service-heading { min-height: 44px; gap: 12px; align-items: flex-start; }
.service-heading > .icon, .service:last-child .service-heading > .icon { width: 28px; height: 28px; flex-shrink: 0; }
.service h3 { font-size: 1rem; line-height: 1.35; letter-spacing: -.015em; white-space: normal; overflow-wrap: anywhere; }
.service p, .service:last-child p { font-size: .875rem; line-height: 1.6; margin: 12px 0; color: #5c616a; overflow-wrap: anywhere; hyphens: auto; }
.service p br { display: none; }
.service .text-button, .service:last-child .text-button { font-size: .875rem; line-height: 1.4; min-height: 44px; margin-top: auto; gap: 8px; text-align: left; }
.service a.text-button { white-space: normal; text-decoration: none; }
.service a.text-button:hover { color: var(--tw-color-text); }
.service a.text-button:focus-visible { outline: var(--tw-focus-width) solid var(--tw-color-focus); outline-offset: var(--tw-focus-offset); }
.service-status { display: flex; align-items: center; min-height: 44px; margin-top: auto; color: var(--tw-color-muted); font-size: var(--tw-type-small); line-height: 1.4; }
.footer { padding-block: 40px; }
.footer-grid { grid-template-columns: 1.1fr 1fr 1fr 1fr 1.2fr; gap: 24px; }
.footer-brand { min-width: 0; padding: 0; border: 0; }
.footer-brand .brand-logo { width: 156px; }
.footer-brand > p { font-size: .875rem; line-height: 1.6; margin-top: 20px; }
.footer-column h3 { font-size: 1rem; line-height: 1.4; margin-bottom: 12px; }
.footer-column { gap: 4px; }
.footer-column a, .footer-column button { font-size: .875rem; line-height: 1.5; min-height: 36px; padding-block: 6px; }
.footer-contacts { font-size: .875rem; line-height: 1.6; }
.footer-signature { display: none; }
.stage-section { padding-block: 48px; }
.stage-section h1 { font-size: clamp(2rem, 4vw, 3rem); line-height: 1.15; font-weight: 700; letter-spacing: -.03em; margin-bottom: 24px; }
.stage-section p { font-size: 1rem; line-height: 1.75; max-width: 65ch; margin-bottom: 24px; }
@media (max-width: 1199px) {
  .topbar-benefit:nth-of-type(2) { display: none; }
  .topbar-benefit { font-size: .75rem; }
  .hero-copy { width: 65%; }
  .hero h1 { font-size: clamp(2rem, 4vw, 3rem); }
  .fitment-top { grid-template-columns: 1fr; }
  .fitment-intro p br { display: none; }
  .services { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .footer-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .category-copy { padding: 20px; }
  .category h2 { font-size: 1.5rem; }
}
@media (max-width: 1023px) {
  .topbar-benefit { display: none; }
  .header-main { flex-wrap: wrap; gap: 16px; }
  .header-search { order: 4; flex-basis: 100%; }
  .header-actions { margin-left: auto; }
}
@media (max-width: 768px) {
  :root { --tw-page-gutter: 1rem; --tw-section-gap: 1.5rem; }
  .topbar-inner { padding-inline: 8px; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 12px; }
  .topbar-inner .city-button { max-width: 100%; justify-self: start; }
  .topbar-contacts { flex-direction: column; align-items: flex-end; gap: 0; padding-block: 8px; }
  .topbar-contacts .topbar-phone { min-height: 28px; font-size: .875rem; }
  .topbar-contacts .hours { font-size: .75rem; }
  .header-main { display: grid; grid-template-columns: minmax(0, 1fr) auto; min-height: 0; gap: 16px 12px; padding-block: 16px; }
  .header-main, .navigation { padding-inline: 8px; }
  .brand .brand-logo { width: 128px; }
  .header-actions { gap: 4px; margin-left: 0; }
  .header-actions button { min-width: 44px; min-height: 44px; }
  .header-actions .icon { width: 24px; height: 24px; }
  .header-search { grid-column: 1; grid-row: 2; height: 44px; }
  .header-search input { font-size: 1rem; padding-left: 12px; }
  .catalog-button { grid-column: 2; grid-row: 2; margin: 0; min-height: var(--tw-control-height); }
  .navigation { flex-wrap: nowrap; min-height: 48px; height: auto; gap: 24px; font-size: .875rem; padding-block: 0; margin-bottom: 12px; }
  .navigation a { min-height: 44px; }
  .navigation .navigation-group-start::before { display: none; }
  .hero { display: flex; height: auto; min-height: 0; }
  .hero-copy { width: 100%; padding: 24px 20px 16px; order: 1; }
  .hero h1 { font-size: clamp(1.875rem, 7.2vw, 2.75rem); line-height: 1.12; letter-spacing: -.03em; }
  .hero h1 span { white-space: normal; }
  .hero-copy > p { font-size: 1rem; line-height: 1.6; margin-top: 20px; }
  .hero-buttons { gap: 12px; margin-top: 24px; }
  .hero-buttons .button { flex: 1 1 180px; min-width: 0; min-height: 48px; padding: 12px; font-size: .875rem; gap: 8px; }
  .hero-benefits { gap: 12px; margin-top: 24px; display: grid; grid-template-columns: 1fr; }
  .hero-benefits > div { font-size: .875rem; gap: 12px; line-height: 1.5; }
  .hero-benefits br { display: none; }
  .hero-benefits .icon { width: 24px; height: 24px; }
  .hero-photo { position: relative; inset: auto; width: 100%; max-height: none; flex-shrink: 0; aspect-ratio: 571 / 317; background-size: 190.1926% auto; order: 2; }
  .fitment { padding: 20px 16px; margin-block: 24px; }
  .fitment-top { display: grid; grid-template-columns: 1fr; gap: 20px; }
  .fitment h2 { font-size: 1.5rem; }
  .fitment-intro p { font-size: .875rem; }
  .fitment .vehicle-form, .fitment .fitment-bottom { display: none; }
  .fitment-mobile-links { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; }
  .fitment-mobile-links a { display: flex; align-items: center; justify-content: center; gap: 8px; min-height: 44px; padding: 8px; background: var(--tw-white); border: 1px solid var(--tw-color-border); border-radius: var(--tw-control-radius); font-size: 14px; color: var(--tw-color-text); text-decoration: none; }
  .fitment-mobile-links a:hover { border-color: var(--tw-color-border-hover); color: var(--tw-color-accent); }
  .fitment-mobile-links a:focus-visible { outline: 2px solid var(--tw-color-focus); outline-offset: 2px; }
  .vehicle-form { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px 12px; margin: 0; }
  .vehicle-form label { font-size: .875rem; }
  .vehicle-form select, .manual-form select { font-size: 1rem; }
  .vehicle-form select { height: 44px; margin-top: 8px; }
  .vehicle-form .button { grid-column: 1 / -1; font-size: .875rem; }
  .fitment-bottom { display: block; margin-top: 24px; }
  .manual-form { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px 8px; padding: 16px 12px; }
  .manual-caption, .parameter-tabs { grid-column: 1 / -1; font-size: .875rem; }
  .parameter-tabs { gap: 20px; margin: 0; }
  .manual-form label { min-width: 0; height: auto; min-height: 60px; padding: 6px; font-size: .75rem; }
  .manual-form .button { grid-column: 1 / -1; font-size: .875rem; }
  .fitment-car { display: flex; flex-direction: row; margin-top: 16px; gap: 16px; }
  .fitment-car > span { font-size: .875rem; }
  .categories { grid-template-columns: 1fr; gap: 16px; }
  .category, .category-copy { min-height: 240px; height: auto; }
  .category-copy { padding: 20px; }
  .category h2 { font-size: 1.5rem; }
  .category p { font-size: 1rem; max-width: 66%; margin: 12px 0 20px; }
  .category .button { font-size: .875rem; min-height: 44px; }
  .category .photo { width: 42%; }
  .services { grid-template-columns: minmax(0,1fr); gap: 10px; margin-block: 24px 32px; }
  .services .service, .services .service:last-child { position: relative; display: grid; grid-template-columns: 28px minmax(0,1fr) 24px; gap: 6px 12px; min-height: 0; padding: 16px; }
  .services .service-heading, .services .service:last-child .service-heading { display: contents; }
  .services .service-heading > .icon { grid-column: 1; grid-row: 1 / span 2; }
  .services .service h3 { grid-column: 2; margin: 0; font-size: 1rem; line-height: 1.35; }
  .services .service p { grid-column: 2; margin: 0; font-size: .8125rem; line-height: 1.5; hyphens: none; }
  .services .service .text-button { grid-column: 3; grid-row: 1 / span 2; align-self: center; justify-content: center; width: 24px; min-height: 44px; margin: 0; font-size: 0; line-height: 0; gap: 0; }
  .services .service .text-button .icon { width: 18px; height: 18px; }
  .services .service .text-button::after { content: ''; position: absolute; inset: 0; border-radius: var(--tw-card-radius); }
  .services .service:has(a:hover) { border-color: var(--tw-color-border-hover); }
  .services .service:has(a:focus-visible) { outline: 2px solid var(--tw-color-focus); outline-offset: 2px; }
  .services .service a:focus-visible { outline: none; }
  .services .service-status { grid-column: 2; min-height: 0; margin: 2px 0 0; font-size: .75rem; }
  .footer { padding-block: 32px; }
  .footer-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 32px 20px; }
  .footer-brand { grid-column: 1 / -1; display: block; }
  .footer-brand .brand-logo { width: 144px; }
  .footer-brand > p { font-size: .875rem; margin-top: 16px; }
  .footer-column h3 { font-size: 1rem; margin-bottom: 12px; }
  .footer-column a, .footer-column button { font-size: .875rem; line-height: 1.5; min-height: 44px; padding-block: 10px; }
  .footer-contacts { font-size: .875rem; grid-column: 1 / -1; }
  .stage-section { padding-block: 32px; }
}
@media (max-width: 359px) {
  .topbar-contacts .topbar-phone .icon { display: none; }
  .header-main .brand-logo { width: 108px; }
  .header-actions { gap: 0; }
  .header-actions button { min-width: 44px; }
  .hero-copy { padding-inline: 16px; }
  .hero-buttons { flex-direction: column; }
  .hero-buttons .button { flex: auto; width: 100%; }
  .services { grid-template-columns: 1fr; }
  .service, .service:last-child { min-height: 0; }
  .service-heading { flex-direction: row; }
  .category-copy { padding-inline: 16px; }
}

@media (min-width: 769px) {
  .navigation {
    border-bottom: 1px solid var(--tw-color-border);
    margin-bottom: var(--tw-space-4);
    justify-content: center;
    font-size: 1rem;
  }

  .navigation .navigation-group-start { margin-left: 0; }
  .navigation .navigation-group-start::before { display: none; }
}
@media (min-width: 769px) and (max-width: 1199px) {
  .navigation { font-size: .875rem; gap: 24px; }
}

.tw-header-slot { position: relative; }
.tw-header-marker { position: absolute; top: 0; left: 0; width: 1px; height: 1px; pointer-events: none; }
@media (min-width: 1024px) {
  .tw-header-bar.is-compact { position: fixed; inset: var(--tw-header-offset, 0px) 0 auto; z-index: 100; background: var(--tw-white); border-bottom: 1px solid var(--tw-color-border); box-shadow: 0 4px 16px rgb(17 18 19 / .05); }
  .tw-header-bar.is-compact .header-main { min-height: 72px; padding-block: 4px; }
  .tw-header-bar.is-compact .brand-logo { width: 112px; }
  .tw-header-bar.is-compact .header-search { height: 44px; }
  .tw-header-bar.is-compact .catalog-button { min-height: 44px; }
}
@media print {
  .tw-header-slot { height: auto !important; }
  .tw-header-bar.is-compact { position: static; box-shadow: none; }
}

.tw-basket-notice { position: fixed; right: 24px; bottom: 24px; z-index: 150; width: min(400px, calc(100% - 48px)); padding: 16px 20px 18px; border: 1px solid var(--tw-color-border); border-radius: 12px; background: var(--tw-white); color: var(--tw-color-text); box-shadow: 0 12px 40px rgb(17 18 19 / .14); }
.tw-basket-notice[hidden] { display: none; }
.tw-basket-notice-heading { display: flex; align-items: center; gap: 10px; }
.tw-basket-notice-heading > .icon { width: 22px; height: 22px; color: var(--tw-color-accent); flex-shrink: 0; }
.tw-basket-notice-heading strong { font-size: 14px; line-height: 1.4; font-weight: 600; }
.tw-basket-notice-close { display: grid; place-items: center; flex: 0 0 44px; width: 44px; height: 44px; margin: -8px -12px -8px auto; border: 0; border-radius: 6px; background: transparent; color: var(--tw-color-muted); cursor: pointer; }
.tw-basket-notice-close:hover { color: var(--tw-color-text); background: var(--tw-color-surface); }
.tw-basket-notice-close .icon { width: 18px; height: 18px; }
.tw-basket-notice-product { display: flex; align-items: center; gap: 12px; margin-block: 16px 8px; }
.tw-basket-notice-product img { flex-shrink: 0; width: 64px; height: 64px; object-fit: contain; border-radius: 6px; }
.tw-basket-notice-product p { margin: 0; font-size: 13px; line-height: 1.5; overflow-wrap: anywhere; }
.tw-basket-notice > a { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 44px; margin-top: 12px; padding-top: 12px; border-top: 1px solid var(--tw-color-border); font-size: 14px; font-weight: 600; }
.tw-basket-notice > a:hover { color: var(--tw-color-accent); }
.tw-basket-status { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.tw-basket-error { margin-top: 12px; color: var(--tw-color-error); font-size: 13px; line-height: 1.5; }
.tw-basket-error a { text-decoration: underline; }
@media (max-width: 768px) {
  .tw-basket-notice { right: 12px; bottom: calc(88px + env(safe-area-inset-bottom)); width: calc(100% - 24px); padding: 12px; }
  .tw-basket-notice-heading { gap: 8px; }
  .tw-basket-notice-heading > .icon { width: 18px; height: 18px; }
  .tw-basket-notice-heading strong { font-size: 13px; }
  .tw-basket-notice-close { margin: -8px -8px -8px auto; }
  .tw-basket-notice-product { gap: 10px; margin-block: 8px 4px; }
  .tw-basket-notice-product img { width: 40px; height: 40px; }
  .tw-basket-notice-product p { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; font-size: 12px; line-height: 1.4; }
  .tw-basket-notice > a { min-height: 44px; margin-top: 4px; padding-top: 4px; font-size: 13px; }
}
@media (prefers-reduced-motion: no-preference) {
  .tw-basket-notice:not([hidden]) { animation: tw-basket-appear .18s ease-out; }
  @keyframes tw-basket-appear { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: translateY(0); } }
}

/* End */


/* Start:/local/templates/2waystore.ru/assets/css/catalog-menu.css?17930545489766*/
.tw-catalog-menu[hidden] { display: none; }
.tw-catalog-menu { position: fixed; z-index: 130; background: var(--tw-white); color: var(--tw-color-text); border: 1px solid var(--tw-color-border); border-radius: var(--tw-control-radius); box-shadow: 0 16px 40px rgb(17 18 19 / .12); overflow: auto; overscroll-behavior: contain; font-family: var(--tw-font-family); font-size: var(--tw-type-small); line-height: 1.4; }
.tw-catalog-menu a { text-decoration: none; color: inherit; }
.tw-catalog-menu a:hover { color: var(--tw-color-accent); }
.tw-catalog-menu :is(a, button, summary):focus-visible { outline: var(--tw-focus-width) solid var(--tw-color-focus); outline-offset: -2px; border-radius: var(--tw-control-radius); }
.tw-catalog-menu-top { position: absolute; top: 8px; right: 8px; z-index: 1; }
.tw-catalog-menu-top > span { display: none; }
.tw-catalog-menu-top button { display: grid; place-items: center; width: 44px; height: 44px; padding: 0; border: 0; border-radius: var(--tw-control-radius); background: transparent; color: var(--tw-color-muted); font: inherit; font-size: 28px; cursor: pointer; }
.tw-catalog-menu-top button:hover { background: var(--tw-color-surface); color: var(--tw-color-text); }
.tw-catalog-menu-layout { display: grid; grid-template-columns: 240px minmax(0, 1fr); }
.tw-catalog-menu-sections { padding: 16px; border-right: 1px solid var(--tw-color-border); }
.tw-catalog-menu ul { margin: 0; padding: 0; list-style: none; }
.tw-catalog-menu-sections a, .tw-catalog-menu-other summary { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 44px; padding: 10px 12px; border-radius: var(--tw-control-radius); }
.tw-catalog-menu-sections > ul > li > a { font-weight: 600; }
.tw-catalog-menu-sections a:hover { background: var(--tw-color-surface); }
.tw-catalog-menu-sections a[aria-expanded="true"] { background: var(--tw-color-surface); color: var(--tw-color-accent); }
.tw-catalog-menu-all { margin-bottom: 8px; font-weight: 600; }
.tw-catalog-menu-other { margin-top: 12px; padding-top: 12px; border-top: 1px solid var(--tw-color-border); }
.tw-catalog-menu-other summary { display: list-item; list-style-position: inside; cursor: pointer; color: var(--tw-color-muted); }
.tw-catalog-menu-other a { min-height: 40px; font-size: 13px; }
.tw-catalog-menu-content { min-width: 0; min-height: 420px; padding: 24px 32px 16px; }
.tw-catalog-menu-heading { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 20px; padding-right: 40px; }
.tw-catalog-menu h2 { margin: 0; font-size: var(--tw-type-lead); line-height: 1.4; font-weight: 700; }
.tw-catalog-menu-heading > a { min-height: 44px; display: flex; align-items: center; gap: 12px; color: var(--tw-color-accent); }
.tw-catalog-menu-parameters { display: grid; grid-template-columns: minmax(170px, 1fr) minmax(100px, .65fr) minmax(300px, 2fr); gap: 24px; }
.tw-catalog-menu h3 { margin: 0 0 12px; font-size: var(--tw-type-small); line-height: 1.4; font-weight: 600; }
.tw-catalog-menu-parameter a { display: flex; align-items: center; min-height: 36px; padding: 6px 8px; margin-left: -8px; border-radius: var(--tw-control-radius); overflow-wrap: anywhere; }
.tw-catalog-menu-parameter a:hover { background: var(--tw-color-surface); }
.tw-catalog-menu-parameter a[aria-current="true"] { color: var(--tw-color-accent); font-weight: 600; text-decoration: underline; text-underline-offset: 4px; }
.tw-catalog-menu-parameter a[data-fitment-selected="true"] { color: var(--tw-color-accent); font-weight: 600; text-decoration: underline; text-underline-offset: 4px; }
.tw-catalog-menu-diameter ul { display: grid; grid-template-columns: repeat(4, 44px); gap: 6px; }
.tw-catalog-menu-diameter a { justify-content: center; margin: 0; min-height: 32px; padding: 5px 4px; border: 1px solid var(--tw-color-border); font-weight: 600; }
.tw-catalog-menu-diameter a[aria-current="true"] { border-color: var(--tw-color-accent); box-shadow: inset 0 0 0 1px var(--tw-color-accent); text-decoration: none; }
.tw-catalog-menu-diameter a[data-fitment-selected="true"] { border-color: var(--tw-color-accent); box-shadow: inset 0 0 0 1px var(--tw-color-accent); text-decoration: none; }
.tw-catalog-menu-pcd ul { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 24px; }
.tw-catalog-menu-footer { margin-top: 20px; padding-top: 12px; border-top: 1px solid var(--tw-color-border); }
.tw-catalog-menu-footer a { display: inline-flex; align-items: center; gap: 16px; min-height: 44px; font-weight: 600; }
.catalog-button[aria-expanded="true"] { background: var(--tw-button-hover-background); }
.tw-catalog-menu-pane[hidden], .tw-catalog-menu-current[hidden] { display: none; }
.tw-catalog-menu .icon { width: 18px; height: 18px; flex: 0 0 18px; }
.tw-catalog-menu [data-icon="x"] { --icon: url('/local/templates/2waystore.ru/assets/css/../icons/x.svg'); }
.tw-catalog-menu [data-icon="arrow-right"] { --icon: url('/local/templates/2waystore.ru/assets/css/../icons/arrow-right.svg'); }
.tw-catalog-menu [data-icon="chevron-right"] { --icon: url('/local/templates/2waystore.ru/assets/css/../icons/chevron-right.svg'); }
.tw-catalog-menu-current { margin: -4px 0 20px; padding: 10px 12px; background: var(--tw-color-surface); border-radius: var(--tw-control-radius); color: var(--tw-color-text); font-size: var(--tw-type-small); }
.tw-catalog-menu-search { margin: 0 0 16px; max-width: 400px; }
.tw-catalog-menu-search label { display: block; margin-bottom: 6px; font-weight: 600; }
.tw-catalog-menu-search > div { display: flex; gap: 8px; }
.tw-catalog-menu-search input { min-width: 0; flex: 1; min-height: 36px; padding: 6px 10px; border: 1px solid var(--tw-color-border); border-radius: var(--tw-control-radius); background: var(--tw-white); color: inherit; font: inherit; }
.tw-catalog-menu-search .button { min-height: 36px; padding: 6px 12px; }
.tw-catalog-menu-search input:focus-visible { outline: 2px solid var(--tw-color-field-focus); outline-offset: 1px; }
.tw-catalog-menu-subsections, .tw-catalog-menu-products { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 32px; }
.tw-catalog-menu-subsections { margin-bottom: 24px !important; }
.tw-catalog-menu-products a, .tw-catalog-menu-subsections a { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 56px; height: 100%; padding: 12px 8px; border-bottom: 1px solid var(--tw-color-border); overflow-wrap: anywhere; }
.tw-catalog-menu-products a:hover, .tw-catalog-menu-subsections a:hover { background: var(--tw-color-surface); }
@media (max-width: 1100px) {
  .tw-catalog-menu-layout { grid-template-columns: 200px minmax(0, 1fr); }
  .tw-catalog-menu-content { padding-inline: 20px; }
  .tw-catalog-menu-parameters { gap: 16px; grid-template-columns: 1fr .7fr 1.5fr; }
  .tw-catalog-menu-diameter ul { grid-template-columns: repeat(2, 44px); }
  .tw-catalog-menu-pcd ul { grid-template-columns: 1fr; }
}
@media (max-width: 767px) {
  .tw-catalog-menu-layout { display: block; }
  .tw-catalog-menu-sections { border-right: 0; border-bottom: 1px solid var(--tw-color-border); padding: 12px; }
  .tw-catalog-menu-content { min-height: 0; padding: 16px; }
  .tw-catalog-menu-heading { margin-bottom: 16px; padding-right: 0; }
  .tw-catalog-menu-parameters { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px 16px; }
  .tw-catalog-menu-pcd { grid-column: 1 / -1; }
  .tw-catalog-menu-pcd ul { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .tw-catalog-menu-parameter a { min-height: 44px; }
  .tw-catalog-menu-parameter a { margin-left: 0; }
  .tw-catalog-menu-products, .tw-catalog-menu-subsections { grid-template-columns: 1fr; }
  .tw-catalog-menu-search input { min-height: 44px; font-size: 16px; }
  .tw-catalog-menu-search .button { min-height: 44px; }
  .tw-catalog-menu-other a { min-height: 44px; }
  .tw-catalog-menu-top { position: sticky; top: 0; right: auto; display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 8px 12px 8px 16px; border-bottom: 1px solid var(--tw-color-border); background: var(--tw-white); z-index: 1; font-weight: 600; }
  .tw-catalog-menu-top > span { display: inline; }
}
@media print { .tw-catalog-menu { display: none !important; } }
@media (min-width: 1024px) {
  .tw-catalog-menu-cities:not([hidden]) { min-width: 0; margin: 16px 0 0; padding: 0; border: 0; }
  .tw-catalog-menu-cities legend { padding: 0; margin-bottom: 8px; font-size: var(--tw-type-small); font-weight: 600; }
  .tw-catalog-menu-cities > div { display: flex; flex-wrap: wrap; gap: 8px 24px; }
  .tw-catalog-menu-cities label { display: inline-flex; align-items: center; gap: 8px; min-height: 32px; cursor: pointer; }
  .tw-catalog-menu-cities input { width: 14px; height: 14px; margin: 0; accent-color: var(--tw-color-accent); }
  .tw-catalog-menu-cities input:focus-visible { outline: 2px solid var(--tw-color-focus); outline-offset: 3px; }
  .tw-catalog-menu-cities label:has(input:disabled) { color: var(--tw-color-muted); opacity: .45; cursor: default; }
  [data-catalog-fitment-fields] { display: none; }
  .tw-catalog-menu-fitment:not([hidden]) { display: flex; align-items: center; flex-wrap: wrap; gap: 12px 16px; margin-top: 20px; }
  .tw-catalog-menu-fitment .button { min-height: 36px; padding: 6px 14px; }
  .tw-catalog-menu-fitment .button:disabled { opacity: .5; cursor: default; }
  .tw-catalog-menu-reset { min-height: 36px; padding: 6px 0; border: 0; background: none; color: var(--tw-color-muted); font: inherit; cursor: pointer; }
  .tw-catalog-menu-reset:disabled { opacity: .5; cursor: default; }
  .tw-catalog-menu-fitment p { margin: 0; font-size: var(--tw-type-small); color: var(--tw-color-muted); }
  .tw-catalog-menu-parameter a[aria-disabled="true"] { color: var(--tw-color-muted); opacity: .45; cursor: default; }
}

/* End */


/* Start:/local/templates/2waystore.ru/assets/css/mobile-header.css?17940328784675*/
.tw-mobile-header { display: none; }

@media (max-width: 768px) {
  .tw-mobile-header-ready .topbar,
  .tw-mobile-header-ready .header-main,
  .tw-mobile-header-ready .navigation { display: none; }

  .tw-mobile-header-ready .tw-mobile-header {
    display: grid;
    grid-template-columns: 88px minmax(0, 1fr) 88px;
    align-items: center;
    padding: 6px 12px;
    min-height: 64px;
    background: var(--tw-white);
  }
  .tw-mobile-brand { min-width: 0; }
  .tw-mobile-brand .brand { display: grid; place-items: center; min-height: 44px; }
  .tw-mobile-brand .brand-logo { width: 108px; }
  .tw-mobile-header-actions { display: flex; justify-content: flex-end; }
  .tw-mobile-header-control {
    display: grid;
    place-items: center;
    flex: 0 0 44px;
    width: 44px;
    height: 44px;
    border-radius: var(--tw-control-radius);
    color: var(--tw-color-text);
    text-decoration: none;
  }
  .tw-mobile-header-control[hidden] { display: none; }
  .tw-mobile-header-control .icon { width: 22px; height: 22px; }
  .tw-mobile-header-control:hover { background: var(--tw-color-surface); }
  .tw-mobile-phone { color: var(--tw-color-accent); }
  .tw-mobile-header-control:focus-visible,
  .tw-mobile-brand .brand:focus-visible { outline: 2px solid var(--tw-color-focus); outline-offset: -2px; }

  html:has(.tw-mobile-menu[open]) { overflow: hidden; }
  .tw-mobile-menu {
    position: fixed;
    inset: 0 auto 0 0;
    box-sizing: border-box;
    width: min(100%, 384px);
    height: 100%;
    height: 100dvh;
    max-width: none;
    max-height: none;
    margin: 0;
    padding: max(12px, env(safe-area-inset-top)) 16px max(20px, env(safe-area-inset-bottom));
    border: 0;
    border-radius: 0 var(--tw-banner-radius) var(--tw-banner-radius) 0;
    background: var(--tw-white);
    color: var(--tw-color-text);
    overflow-y: auto;
    overscroll-behavior: contain;
  }
  .tw-mobile-menu::backdrop { background: rgb(17 18 19 / .5); }
  .tw-mobile-menu-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 12px; }
  .tw-mobile-menu-heading h2 { margin: 0; font-size: 1.25rem; line-height: 1.3; }
  .tw-mobile-menu .header-search { width: 100%; }
  .tw-mobile-menu .city-button { min-height: 44px; max-width: 100%; color: var(--tw-color-text); }
  .tw-mobile-menu .header-actions {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 4px;
    margin: 4px 0 16px;
  }
  .tw-mobile-header-ready .tw-mobile-menu .header-actions .header-action {
    display: flex;
    width: 100%;
    min-width: 0;
    height: auto;
    min-height: 56px;
    padding: 6px 2px;
    gap: 2px;
    background: var(--tw-color-surface);
  }
  .tw-mobile-menu .header-actions .header-action-label {
    display: block;
    max-width: 100%;
    font-size: .75rem;
    white-space: normal;
    overflow-wrap: anywhere;
    text-align: center;
  }
  @media (max-width: 359px) {
    .tw-mobile-menu .header-actions .header-action-label { font-size: .6875rem; white-space: nowrap; overflow-wrap: normal; }
  }
  .tw-mobile-header-ready .tw-mobile-menu .header-actions .counter { top: 0; right: 4px; }
  .tw-mobile-menu .tw-mini-basket-panel { display: none; }
  .tw-mobile-menu .tw-mobile-catalog-link { display: flex; justify-content: flex-start; gap: 10px; min-height: 44px; padding-inline: 12px; }
  .tw-mobile-menu-group { margin-top: 24px; }
  .tw-mobile-menu-group h3 { margin: 0 0 12px; font-size: 14px; line-height: 1.4; font-weight: 600; }
  .tw-mobile-menu-group ul { list-style: none; margin: 0; padding: 0; }
  .tw-mobile-menu-group a { display: flex; align-items: center; justify-content: space-between; gap: 8px; min-height: 44px; padding: 10px 12px; box-sizing: border-box; color: var(--tw-color-text); font-size: 14px; line-height: 1.4; text-decoration: none; }
  .tw-mobile-menu-group a .icon { flex: 0 0 16px; width: 16px; height: 16px; color: var(--tw-color-muted); }
  .tw-mobile-menu-group a:focus-visible { outline: 2px solid var(--tw-color-focus); outline-offset: -2px; }
  .tw-mobile-menu-group a[aria-current="page"] { font-weight: 600; text-decoration: underline; text-underline-offset: 4px; }
  .tw-mobile-menu-group-catalog ul { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
  .tw-mobile-menu-group-catalog a { min-height: 56px; background: var(--tw-color-surface); border-radius: var(--tw-card-radius); font-weight: 600; }
  .tw-mobile-menu-group-info { padding-top: 20px; border-top: 1px solid var(--tw-color-border); }
  .tw-mobile-menu-group-info a { padding-inline: 0; }
  .tw-mobile-menu-group-info a:hover { color: var(--tw-color-accent); }
}

/* End */


/* Start:/local/templates/2waystore.ru/assets/css/basket-state.css?17940012962809*/
.tw-bottom-nav { display: none; }
.tw-in-basket { display: flex; align-items: center; justify-content: center; min-height: 44px; padding: 8px; box-sizing: border-box; background: var(--tw-color-surface); color: var(--tw-color-text); border-radius: var(--tw-control-radius); font-size: 14px; font-weight: 600; text-decoration: underline; text-underline-offset: 3px; }
.tw-in-basket[hidden] { display: none; }
.tw-has-basket-item { flex-wrap: wrap; }
.tw-has-basket-item > .tw-in-basket { width: 100%; margin-bottom: 8px; }
.tw-has-basket-item button[type="submit"] { background: var(--tw-white); color: var(--tw-color-text); border: 1px solid var(--tw-color-border); }
.tw-in-basket:focus-visible, .tw-bottom-nav a:focus-visible { outline: 2px solid var(--tw-color-focus); outline-offset: -2px; }
@media (max-width: 768px) {
  :root { --tw-bottom-nav-height: calc(64px + env(safe-area-inset-bottom)); }
  html { scroll-padding-bottom: calc(var(--tw-bottom-nav-height) + 16px); }
  body { padding-bottom: var(--tw-bottom-nav-height); }
  .tw-bottom-nav { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); position: fixed; inset: auto 0 0; z-index: 90; min-height: var(--tw-bottom-nav-height); box-sizing: border-box; padding: 4px max(8px, env(safe-area-inset-right)) calc(4px + env(safe-area-inset-bottom)) max(8px, env(safe-area-inset-left)); border-top: 1px solid var(--tw-color-border); background: var(--tw-white); }
  .tw-bottom-nav a { position: relative; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 4px; min-height: 56px; color: var(--tw-color-text); border-radius: var(--tw-control-radius); font-size: 12px; line-height: 16px; text-decoration: none; }
  .tw-bottom-nav a[aria-current="page"] { background: var(--tw-color-surface); font-weight: 600; }
  .tw-bottom-nav a[aria-current="page"] .icon { color: var(--tw-color-accent); }
  .tw-bottom-nav .icon, .tw-bottom-nav img { width: 22px; height: 22px; object-fit: contain; }
  .tw-bottom-nav .counter { position: absolute; top: 0; left: calc(50% + 7px); min-width: 18px; height: 18px; padding: 0 4px; border-radius: 999px; background: var(--tw-color-accent); color: var(--tw-white); font-size: 11px; line-height: 18px; text-align: center; }
  .tw-bottom-nav .counter[hidden] { display: none; }
  body .lvov-chat-widget.lvov-chat-right, body .lvov-chat-widget.lvov-chat-left { bottom: calc(var(--tw-bottom-nav-height) + 16px) !important; }
  .tw-basket-notice { bottom: calc(var(--tw-bottom-nav-height) + 88px); }
  body:has(dialog[open]) .tw-bottom-nav, body:has(dialog[open]) .lvov-chat-widget,
  .tw-keyboard-open .tw-bottom-nav, .tw-keyboard-open .lvov-chat-widget { visibility: hidden; pointer-events: none; }
}

.tw-bottom-nav [data-icon="home"] { --icon: url("/local/templates/2waystore.ru/assets/css/../icons/home.svg"); }

/* End */


/* Start:/local/components/twoway/region.selector/templates/.default/style.css?17921704823374*/
.region-dialog {
  width: min(480px, calc(100% - 32px)); max-height: calc(100dvh - 32px);
  margin: auto; padding: 32px; border: 1px solid var(--tw-color-border);
  border-radius: 12px; background: var(--tw-white); color: var(--tw-color-text);
  box-shadow: 0 24px 80px #11121326; overflow-y: auto; font-family: var(--tw-font-family);
}
.region-dialog::backdrop { background: #11121380; }
.region-dialog-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; margin-bottom: 28px; }
.region-dialog h2 { font-size: 1.5rem; font-weight: var(--tw-font-weight-bold); line-height: 1.25; letter-spacing: -.025em; margin: 6px 0 10px; }
.region-caption { max-width: 30ch; margin: 0; color: var(--tw-color-muted); font-size: var(--tw-type-small); line-height: 1.5; }
.region-close { display: grid; place-items: center; width: 44px; height: 44px; margin: -8px -8px 0 0; border-radius: var(--tw-control-radius); color: var(--tw-color-muted); flex-shrink: 0; }
.region-close .icon { width: 20px; height: 20px; }
.region-close:hover { background: var(--tw-color-surface); color: var(--tw-color-text); }
.region-form fieldset { margin: 0 0 24px; padding: 0; border: 0; display: grid; gap: 10px; }
.region-option { min-height: 76px; display: grid; grid-template-columns: 40px minmax(0, 1fr) 20px; align-items: center; gap: 14px; padding: 14px 16px; border: 1px solid var(--tw-color-border); border-radius: var(--tw-control-radius); background: var(--tw-white); cursor: pointer; transition: border-color 160ms ease, background-color 160ms ease; }
.region-option-icon { width: 40px; height: 40px; display: grid; place-items: center; border-radius: var(--tw-control-radius); background: var(--tw-color-surface); color: var(--tw-color-muted); }
.region-option-icon .icon { width: 22px; height: 22px; }
.region-option-name { min-width: 0; font-size: 1rem; font-weight: var(--tw-font-weight-semibold); line-height: 1.4; overflow-wrap: anywhere; }
.region-option:hover { background: var(--tw-color-surface); }
.region-option:has(input:checked) { border-color: var(--tw-color-accent); background: color-mix(in srgb, var(--tw-color-accent) 4%, var(--tw-white)); }
.region-option:has(input:checked) .region-option-icon { background: var(--tw-white); color: var(--tw-color-accent); }
.region-option:has(input:focus-visible) { outline: 2px solid var(--tw-color-accent); outline-offset: 3px; }
.region-option input { width: 20px; height: 20px; margin: 0; accent-color: var(--tw-color-accent); cursor: pointer; }
.region-option input:focus { outline: none; box-shadow: none; }
.region-apply { width: 100%; }
.tw-region-open { overflow: hidden; }
.visually-hidden { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
@media (max-width: 600px) {
  .region-dialog { padding: 24px 20px; }
  .region-dialog-heading { margin-bottom: 24px; }
  .region-option { gap: 12px; padding: 12px; min-height: 72px; }
}
@media (max-width: 359px) {
  .region-dialog { padding: 20px 16px; }
  .region-dialog h2 { font-size: 1.25rem; }
  .region-option { grid-template-columns: 32px minmax(0, 1fr) 20px; gap: 10px; }
  .region-option-icon { width: 32px; height: 36px; }
}
@media (prefers-reduced-motion: reduce) { .region-option { transition: none; } }

/* End */


/* Start:/local/components/twoway/region.contacts/templates/.default/style.css?17939957732682*/
.topbar-contacts[data-region-contacts] { position: relative; }
@media (min-width: 769px) {
  .topbar-contacts[data-region-contacts] { margin-right: 28px; }
}
.contact-panel[hidden] { display: none; }
.contact-panel { position: absolute; right: 0; top: 100%; z-index: 150; width: 320px; max-width: calc(100vw - 32px); padding: 24px; border: 1px solid var(--tw-color-border); border-radius: var(--tw-control-radius); background: var(--tw-white); color: var(--tw-color-text); box-shadow: 0 12px 32px rgb(17 18 19 / .14); font-size: .875rem; line-height: 1.5; max-height: calc(100dvh - 100px); overflow-y: auto; }
.contact-panel-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 16px; }
.contact-panel-heading h2 { margin: 0; font-size: 1rem; font-weight: 700; line-height: 1.4; }
.contact-close { display: flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; margin: -12px -12px -12px 0; border-radius: 6px; }
.contact-close .icon { width: 18px; height: 18px; }
.contact-close:hover { background: var(--tw-color-surface); }
.contact-phones { display: grid; }
.contact-phone { display: inline-flex; align-items: center; min-height: 44px; font-size: 1.125rem; line-height: 1.5; font-weight: 700; padding-block: 6px; }
.contact-panel .contact-caption { margin: 0; color: var(--tw-color-muted); font-size: .75rem; line-height: 1.5; }
.contact-callback { width: 100%; margin: 20px 0 6px; }
.contact-details { padding-top: 20px; margin: 20px 0; border-top: 1px solid var(--tw-color-border); }
.contact-details dt { color: var(--tw-color-muted); margin-top: 14px; }
.contact-details dt:first-child { margin-top: 0; }
.contact-details dd { margin: 4px 0 0; overflow-wrap: anywhere; white-space: pre-line; }
.contact-placeholder { color: var(--tw-color-muted); }
.contact-label { margin: 0 0 8px; }
.contact-socials { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.contact-social { display: inline-flex; min-height: 44px; padding: 8px 12px; align-items: center; justify-content: center; background: var(--tw-color-surface); border-radius: var(--tw-control-radius); }
.contact-panel a { color: inherit; text-decoration: none; }
.contact-all { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; margin-top: 16px; }
.contact-panel a:hover { color: var(--tw-color-accent); text-decoration: none; }
.contact-social .icon { width: 24px; height: 24px; }
.contact-social[href]:hover { color: var(--tw-color-accent); }
.contact-panel a:focus-visible, .topbar-phone:focus-visible, .contact-close:focus-visible { outline: 2px solid var(--tw-color-focus); outline-offset: 2px; }

/* End */


/* Start:/local/templates/2waystore.ru/components/bitrix/search.form/header/style.css?17939967534473*/
.header-search { position: relative; overflow: visible; }
.tw-search-panel[hidden] { display: none; }
.tw-search-panel { position: absolute; z-index: 220; top: calc(100% + 8px); left: 0; width: 100%; min-width: min(620px, calc(100vw - 48px)); display: grid; grid-template-columns: 210px minmax(0, 1fr); background: var(--tw-white); border: 1px solid var(--tw-color-border); border-radius: var(--tw-banner-radius); box-shadow: 0 12px 32px rgb(17 18 19 / .1); color: var(--tw-color-text); max-height: min(600px, calc(100dvh - 180px)); overflow-y: auto; overscroll-behavior: contain; text-align: left; }
.tw-search-panel h2 { margin: 0 0 12px; font-size: 14px; font-weight: 600; line-height: 1.4; }
.tw-search-panel a { color: inherit; text-decoration: none; }
.tw-search-panel a:hover { color: var(--tw-color-accent); text-decoration: none; }
.tw-search-panel a:focus-visible { outline: 2px solid var(--tw-color-focus); outline-offset: -2px; border-radius: var(--tw-control-radius); }
.tw-search-quick { padding: 20px 16px; background: var(--tw-color-surface); border-radius: var(--tw-banner-radius) 0 0 var(--tw-banner-radius); }
.tw-search-sections { display: grid; margin-bottom: 24px; }
.tw-search-sections a { display: flex; align-items: center; justify-content: space-between; gap: 8px; min-height: 44px; padding: 8px; font-size: 14px; line-height: 1.4; border-radius: var(--tw-control-radius); }
.tw-search-sections a:hover { background: var(--tw-white); }
.tw-search-chips { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; }
.tw-search-chips a { display: grid; place-items: center; min-height: 44px; border: 1px solid var(--tw-color-border); border-radius: var(--tw-control-radius); background: var(--tw-white); font-size: 14px; }
.tw-search-results { min-width: 0; padding: 20px 16px; }
.tw-search-status { margin: 0; color: var(--tw-color-muted); font-size: 13px; line-height: 1.5; }
.tw-search-status:empty { display: none; }
.tw-search-item { display: flex; align-items: center; gap: 12px; min-height: 80px; padding: 8px; border-radius: var(--tw-control-radius); }
.tw-search-item:hover { background: var(--tw-color-surface); }
.tw-search-item img { width: 56px; height: 56px; flex: 0 0 56px; object-fit: contain; border-radius: var(--tw-media-radius); }
.tw-search-image-empty { display: grid; place-items: center; width: 56px; height: 56px; flex: 0 0 56px; padding: 4px; border-radius: var(--tw-media-radius); background: var(--tw-color-surface); color: var(--tw-color-muted); font-size: 10px; line-height: 1.3; text-align: center; }
.tw-search-item-copy { display: grid; gap: 5px; min-width: 0; }
.tw-search-item-name { font-size: 13px; line-height: 1.4; overflow-wrap: anywhere; }
.tw-search-item-price { font-size: 15px; line-height: 1.4; font-weight: 600; }
.tw-search-all { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 44px; margin-top: 12px; border-top: 1px solid var(--tw-color-border); font-size: 14px; font-weight: 600; }
.tw-search-panel[data-searching] { grid-template-columns: minmax(0,1fr); }
.tw-search-panel[data-searching] .tw-search-quick { display: none; }
@media (max-width: 768px) {
  .tw-mobile-menu .header-search { display: grid; grid-template-columns: minmax(0,1fr) 44px; min-height: 48px; height: auto; }
  .tw-mobile-menu .header-search, .tw-mobile-menu .header-search:focus-within { border-color: transparent; box-shadow: none; }
  .tw-mobile-menu .header-search input { width: 100%; height: 48px; }
  .tw-mobile-menu .header-search input:focus-visible { box-shadow: inset 0 -2px 0 var(--tw-color-focus); }
  .tw-mobile-menu .header-search > button { height: 48px; }
  .tw-search-panel { position: static; grid-column: 1 / -1; width: 100%; min-width: 0; grid-template-columns: minmax(0,1fr); max-height: 55dvh; box-shadow: none; border: 0; border-top: 1px solid var(--tw-color-border); border-radius: 0 0 var(--tw-control-radius) var(--tw-control-radius); }
  .tw-search-quick { padding: 16px 12px; border-radius: 0; }
  .tw-search-sections { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 4px; margin-bottom: 16px; }
  .tw-search-sections a { padding: 6px; font-size: 13px; }
  .tw-search-chips { grid-template-columns: repeat(4,minmax(0,1fr)); gap: 6px; }
  .tw-search-results { padding: 16px 8px 8px; }
  .tw-search-item { gap: 10px; padding-inline: 4px; }
  .tw-search-item img, .tw-search-image-empty { width: 48px; height: 48px; flex-basis: 48px; }
}

/* End */


/* Start:/local/components/twoway/customer.tools/templates/.default/style.css?17939957737585*/
.header-main .header-actions { gap: 0; }
.header-actions .header-action { position: relative; display: flex; flex-direction: column; align-items: center; justify-content: center; flex: 0 0 80px; width: 80px; height: 60px; min-width: 80px; min-height: 60px; padding: 4px; gap: 6px; border-radius: var(--tw-control-radius); color: var(--tw-color-text); text-decoration: none; }
.header-action-symbol { display: flex; align-items: center; justify-content: center; flex-shrink: 0; width: 32px; height: 32px; }
.header-actions .header-action .icon { width: 26px; height: 26px; }
.header-actions .header-action-label { font-size: .75rem; line-height: 1.4; white-space: nowrap; }
.header-actions .header-action:hover { background: var(--tw-color-surface); }
.header-action:hover .header-action-symbol { color: var(--tw-color-accent); }
.header-actions .header-action .counter { top: 0; right: calc(50% - 26px); }
.header-actions .header-action:active, .header-actions .header-action[aria-current] { color: var(--tw-color-accent); }
.header-actions .header-action:focus-visible { outline: 2px solid var(--tw-color-focus); outline-offset: 2px; }
@media (max-width: 768px) {
  .header-main .header-actions { gap: 4px; }
  .header-actions .header-action { flex-basis: 44px; width: 44px; height: 44px; min-width: 44px; min-height: 44px; gap: 0; padding: 0; }
  .header-actions .header-action .icon { width: 24px; height: 24px; }
  .header-actions .header-action .counter { right: -4px; top: -5px; }
  .header-actions .header-action-label { display: none; }
  .header-actions .header-action:nth-child(2) { display: none; }
}
@media (max-width: 359px) {
  .header-main .header-actions { gap: 0; }
}
@media (prefers-reduced-motion: no-preference) {
  .header-action, .header-action-symbol { transition: color .15s, background-color .15s; }
}

.tw-mini-basket { position: relative; flex: 0 0 80px; }
.tw-mini-basket-panel[hidden] { display: none; }
.tw-mini-basket-panel { position: fixed; z-index: 200; display: flex; flex-direction: column; width: 420px; max-width: calc(100vw - 32px); padding: 20px; border: 1px solid var(--tw-color-border); border-radius: 12px; background: var(--tw-white); color: var(--tw-color-text); box-shadow: 0 12px 36px rgb(17 18 19 / .14); font-size: 14px; line-height: 1.5; }
.tw-mini-basket-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 12px; }
.tw-mini-basket-heading h2 { margin: 0; font-size: 18px; line-height: 1.4; font-weight: 600; }
.header-actions .tw-mini-basket-panel .tw-mini-basket-close { display: grid; place-items: center; width: 44px; height: 44px; min-width: 44px; min-height: 44px; flex: 0 0 44px; padding: 0; margin: -10px -10px -10px 0; border: 0; border-radius: 6px; background: transparent; color: var(--tw-color-muted); cursor: pointer; }
.tw-mini-basket-close .icon { width: 18px; height: 18px; }
.tw-mini-basket-close:hover { color: var(--tw-color-text); background: var(--tw-color-surface); }
.tw-mini-basket-content { min-height: 0; max-height: 360px; overflow-y: auto; overscroll-behavior: contain; }
.tw-mini-basket-list { display: grid; gap: 16px; margin: 0; padding: 4px 4px 4px 0; list-style: none; }
.tw-mini-basket-list li { display: flex; gap: 14px; align-items: flex-start; }
.tw-mini-basket-image { width: 64px; height: 64px; flex: 0 0 64px; object-fit: contain; border-radius: 6px; }
.tw-mini-basket-copy { flex: 1; min-width: 0; }
.tw-mini-basket-copy > a { display: block; font-size: 13px; font-weight: 600; line-height: 1.5; overflow-wrap: anywhere; }
.tw-mini-basket-copy > a:hover { color: var(--tw-color-accent); }
.tw-mini-basket-details { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 4px 12px; margin-top: 6px; font-size: 13px; font-variant-numeric: tabular-nums; }
.tw-mini-basket-details > span, .tw-mini-basket-state { color: var(--tw-color-muted); }
.tw-mini-basket-state { margin: 8px 0; font-size: 13px; }
.tw-mini-basket-footer { flex-shrink: 0; border-top: 1px solid var(--tw-color-border); margin-top: 16px; padding-top: 16px; }
.tw-mini-basket-total { display: flex; align-items: baseline; justify-content: space-between; flex-wrap: wrap; gap: 8px; margin-bottom: 16px; }
.tw-mini-basket-total[hidden] { display: none; }
.tw-mini-basket-total strong { font-size: 20px; font-weight: 700; font-variant-numeric: tabular-nums; }
.tw-mini-basket-footer > .button { width: 100%; }
.tw-mini-basket-empty { display: flex; align-items: center; flex-direction: column; padding: 20px 12px; text-align: center; }
.tw-mini-basket-empty > .icon { width: 36px; height: 36px; margin-bottom: 16px; color: var(--tw-color-muted); }
.tw-mini-basket-empty strong { font-size: 16px; font-weight: 600; }
.tw-mini-basket-empty p { margin: 8px 0 0; color: var(--tw-color-muted); font-size: 13px; }
.header-actions .tw-mini-basket-panel .tw-mini-basket-retry { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 8px 12px; background: var(--tw-color-surface); border: 1px solid var(--tw-color-border); border-radius: 6px; color: var(--tw-color-text); font: inherit; cursor: pointer; }
.tw-mini-basket-panel :focus-visible { outline: 2px solid var(--tw-color-focus); outline-offset: 2px; }
@media (max-width: 768px) {
  .tw-mini-basket { flex-basis: 44px; }
  .tw-mini-basket-panel { padding: 16px; }
}
@media print {
  .tw-mini-basket-panel { display: none; }
}
.tw-account-menu { position: relative; flex: 0 0 80px; }
.tw-account-menu-panel[hidden] { display: none; }
.tw-account-menu-panel { position: fixed; z-index: 210; width: 320px; max-width: calc(100vw - 32px); overflow-y: auto; padding: 20px; background: var(--tw-white); color: var(--tw-color-text); border: 1px solid var(--tw-color-border); border-radius: var(--tw-banner-radius); box-shadow: 0 12px 32px rgb(17 18 19 / .1); font-size: 14px; line-height: 1.5; }
.tw-account-menu-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 12px; }
.tw-account-menu-heading h2 { margin: 0; font-size: 18px; line-height: 1.4; }
.header-actions .tw-account-menu-heading button { display: grid; place-items: center; width: 44px; height: 44px; min-width: 44px; min-height: 44px; margin: -10px -10px -10px 0; padding: 0; background: none; }
.tw-account-menu-heading .icon { width: 18px; height: 18px; }
.tw-account-menu-panel ul { display: grid; gap: 4px; padding: 0; margin: 0; list-style: none; }
.tw-account-menu-panel li a { display: flex; align-items: center; gap: 12px; min-height: 44px; padding: 10px 8px; border-radius: var(--tw-control-radius); }
.tw-account-menu-panel li .icon { width: 20px; height: 20px; flex: 0 0 20px; color: var(--tw-color-muted); }
.tw-account-menu-panel a { color: inherit; text-decoration: none; }
.tw-account-menu-panel li a:hover { background: var(--tw-color-surface); color: var(--tw-color-accent); text-decoration: none; }
.tw-account-menu-panel small { margin-left: auto; color: var(--tw-color-muted); font-size: 11px; }
.tw-account-menu-shortcuts { display: flex; flex-wrap: wrap; gap: 4px 16px; border-top: 1px solid var(--tw-color-border); margin-top: 12px; padding-top: 12px; font-size: 12px; }
.tw-account-menu-shortcuts a { display: flex; align-items: center; min-height: 44px; }
.tw-account-menu-panel :focus-visible { outline: 2px solid var(--tw-color-focus); outline-offset: -2px; }
@media (max-width: 768px) { .tw-account-menu { flex-basis: 44px; min-width: 0; } .tw-account-menu-panel { display: none; } }
@media print { .tw-account-menu-panel { display: none; } }

/* End */


/* Start:/local/components/twoway/site.footer/templates/.default/style.css?17939950645387*/
.tw-footer {
  --tw-footer-bg: #1d1e1d;
  --tw-footer-muted: #bfc0c0;
  --tw-footer-border: rgb(255 255 255 / .16);
  margin-top: 48px;
  padding-top: 48px;
  background: var(--tw-footer-bg);
  color: var(--tw-white);
  font-size: .875rem;
  line-height: 1.5;
}
.tw-footer a { color: inherit; text-decoration: none; }
.tw-footer a:hover { color: var(--tw-white); text-decoration: none; }
.tw-footer :is(a, summary):focus-visible { outline: 2px solid var(--tw-white); outline-offset: 4px; border-radius: var(--tw-control-radius); }
.tw-footer ul { list-style: none; padding: 0; margin: 0; }
.tw-footer p { margin: 0; }
.tw-footer .icon { width: 20px; height: 20px; flex: 0 0 20px; }
.tw-footer-desktop { display: grid; grid-template-columns: 1.25fr repeat(3, minmax(0, 1fr)) 1.6fr; gap: 32px; padding-bottom: 40px; }
.tw-footer-desktop > * { min-width: 0; }
.tw-footer-logo { display: inline-flex; border-radius: var(--tw-control-radius); }
.tw-footer-logo img { display: block; width: 144px; height: auto; }
.tw-footer-brand > p { margin-top: 16px; font-size: 1rem; color: var(--tw-footer-muted); }
.tw-footer-delivery { display: flex; align-items: flex-start; gap: 8px; margin-top: 20px; max-width: 190px; min-height: 44px; }
.tw-footer-delivery .icon, .tw-footer-phone .icon { color: var(--tw-color-accent); }
.tw-footer-title { margin: 4px 0 14px; color: var(--tw-white); font-size: 1rem; line-height: 1.5; font-weight: 600; }
.tw-footer-nav a { display: block; width: fit-content; max-width: 100%; min-height: 36px; padding-block: 7px; color: var(--tw-footer-muted); }
.tw-footer-contact { margin: 0; font-style: normal; }
.tw-footer-phone { display: flex; align-items: center; gap: 10px; min-height: 44px; font-size: 1.25rem; font-weight: 600; white-space: nowrap; }
.tw-footer-location { display: flex; flex-wrap: wrap; gap: 4px 16px; color: var(--tw-footer-muted); }
.tw-footer-contact .tw-footer-address { margin-top: 12px; max-width: 28ch; color: var(--tw-footer-muted); }
.tw-footer-email { display: inline-flex; align-items: center; min-height: 44px; max-width: 100%; overflow-wrap: anywhere; }
.tw-footer-socials { display: flex; gap: 8px; margin-top: 16px; }
.tw-footer-socials a { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; border: 1px solid var(--tw-footer-border); border-radius: var(--tw-control-radius); }
.tw-footer-socials a:hover { background: rgb(255 255 255 / .08); }
.tw-footer-socials .tw-footer-social-name { width: auto; padding-inline: 12px; }
.tw-footer-bottom { display: flex; align-items: center; justify-content: space-between; gap: 24px; min-height: 80px; padding-block: 16px; border-top: 1px solid var(--tw-footer-border); color: var(--tw-footer-muted); font-size: .8125rem; }
.tw-footer-bottom p { display: flex; flex-wrap: wrap; gap: 4px 24px; }
.tw-footer-top { display: inline-flex; align-items: center; justify-content: flex-end; gap: 8px; min-height: 44px; padding: 8px 0 8px 8px; }
.tw-footer-top .icon { transform: rotate(180deg); }
.tw-footer-mobile { display: none; }
@media (min-width: 769px) and (max-width: 1199px) {
  .tw-footer-desktop { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 32px; }
  .tw-footer-brand { grid-column: 1 / 3; display: grid; grid-template-columns: 144px minmax(0, 1fr); gap: 8px 24px; align-items: center; }
  .tw-footer-brand .tw-footer-logo { grid-row: 1 / 3; }
  .tw-footer-brand > p { margin-top: 0; }
  .tw-footer-brand .tw-footer-delivery { grid-column: 2; margin-top: 0; }
  .tw-footer-contact-column { grid-column: 3; grid-row: 1; }
  .tw-footer-nav a { min-height: 44px; }
}
@media (max-width: 768px) {
  .tw-footer { margin-top: 32px; padding-top: 20px; }
  .tw-footer-desktop { display: none; }
  .tw-footer-mobile { display: block; }
  .tw-footer-mobile-heading { display: flex; align-items: center; justify-content: space-between; gap: 20px; }
  .tw-footer-mobile-heading .tw-footer-logo img { width: 104px; }
  .tw-footer-mobile-heading p { max-width: 170px; color: var(--tw-footer-muted); font-size: .8125rem; }
  .tw-footer-mobile .tw-footer-contact { margin-block: 12px 16px; }
  .tw-footer-phone { width: fit-content; font-size: 1.25rem; }
  .tw-footer-location { font-size: .8125rem; }
  .tw-footer-disclosures { border-top: 1px solid var(--tw-footer-border); }
  .tw-footer-disclosures details + details { border-top: 1px solid var(--tw-footer-border); }
  .tw-footer-disclosures summary { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 48px; padding-block: 12px; list-style: none; font-size: .9375rem; font-weight: 600; cursor: pointer; }
  .tw-footer-disclosures summary::-webkit-details-marker { display: none; }
  .tw-footer-disclosures summary .icon { color: var(--tw-footer-muted); }
  .tw-footer-disclosures details[open] summary .icon { transform: rotate(180deg); }
  .tw-footer-disclosures ul { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 20px; padding-bottom: 12px; }
  .tw-footer-disclosures li { min-width: 0; }
  .tw-footer-disclosures a { display: flex; align-items: center; min-height: 44px; padding-block: 8px; color: var(--tw-footer-muted); }
  .tw-footer-bottom { min-height: 72px; gap: 16px; padding-block: 12px; padding-bottom: max(12px, env(safe-area-inset-bottom)); font-size: .75rem; }
  .tw-footer-bottom p { display: grid; gap: 2px; }
}

/* End */


/* Start:/local/components/twoway/auth.dialog/templates/.default/style.css?17939974473883*/
.tw-auth-dialog {
  width: min(460px, calc(100% - 32px)); max-height: calc(100dvh - 32px);
  margin: auto; padding: 0; border: 1px solid var(--tw-color-border); border-radius: var(--tw-banner-radius);
  background: var(--tw-white); color: var(--tw-color-text); font-family: var(--tw-font-family);
  box-shadow: 0 24px 80px #11121326; overflow-y: auto;
}
.tw-auth-dialog::backdrop { background: #11121380; }
.tw-auth-layout { margin: 0; }
.tw-auth-content { min-width: 0; padding: 52px 32px 32px; }
.tw-auth-content h2 { margin: 0 0 12px; font-size: 26px; line-height: 1.25; font-weight: var(--tw-font-weight-bold); text-align: center; }
.tw-auth-caption { margin: 0 0 28px; color: var(--tw-color-muted); font-size: var(--tw-type-small); text-align: center; }
.tw-auth-close { position: absolute; top: 12px; right: 12px; width: 44px; height: 44px; display: grid; place-items: center; border-radius: var(--tw-control-radius); color: var(--tw-color-muted); }
.tw-auth-close .icon { width: 20px; height: 20px; }
.tw-auth-close:hover { background: var(--tw-color-surface); color: var(--tw-color-text); }
.tw-auth-field { display: grid; gap: 8px; margin-bottom: 20px; }
.tw-auth-field label { font-size: var(--tw-type-small); font-weight: var(--tw-font-weight-semibold); }
.tw-auth-field input { width: 100%; min-width: 0; height: var(--tw-control-height); padding: 10px 12px; border: 1px solid var(--tw-color-border); border-radius: var(--tw-control-radius); background: var(--tw-white); color: var(--tw-color-text); font: inherit; font-size: var(--tw-control-font-size); }
.tw-auth-field input:focus { outline: none; border-color: var(--tw-color-field-focus); box-shadow: 0 0 0 1px var(--tw-color-field-focus); }
.tw-auth-password { display: flex; border: 1px solid var(--tw-color-border); border-radius: var(--tw-control-radius); }
.tw-auth-password:focus-within { border-color: var(--tw-color-field-focus); box-shadow: 0 0 0 1px var(--tw-color-field-focus); }
.tw-auth-password input { flex: 1; border: 0; height: 42px; background: transparent; }
.tw-auth-password input:focus { box-shadow: none; }
.tw-auth-reveal { flex-shrink: 0; min-width: 80px; padding-inline: 12px; font-size: .75rem; color: var(--tw-color-muted); border-radius: var(--tw-control-radius); }
.tw-auth-reveal:hover { color: var(--tw-color-text); }
.tw-auth-options { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 16px; margin-block: -4px 20px; font-size: .75rem; }
.tw-auth-remember { display: flex; align-items: center; gap: 8px; min-height: 44px; cursor: pointer; }
.tw-auth-remember input { width: var(--tw-checkbox-size); height: var(--tw-checkbox-size); margin: 0; accent-color: var(--tw-color-accent); }
.tw-auth-options a, .tw-auth-back { padding-block: 12px; text-decoration: none; }
.tw-auth-options a:hover, .tw-auth-back:hover { color: var(--tw-color-accent); }
.tw-auth-submit { width: 100%; min-height: 48px; justify-content: center; }
.tw-auth-preview-note { margin: 20px 0 0; font-size: 12px; color: var(--tw-color-muted); text-align: center; }
.tw-auth-error { color: var(--tw-color-error); font-size: var(--tw-type-small); margin-bottom: 20px; }
.tw-auth-captcha { margin-bottom: 20px; }
.tw-auth-captcha img { display: block; margin-bottom: 12px; }
.tw-auth-back { display: inline-block; margin-top: 8px; font-size: var(--tw-type-small); }
.tw-auth-dialog :is(button,a,input):focus-visible { outline: 2px solid var(--tw-color-focus); outline-offset: 2px; }
.tw-auth-dialog .tw-auth-field input:focus-visible { outline: none; }
.tw-auth-dialog .tw-auth-reveal:focus-visible { outline-offset: -4px; }
html.tw-auth-open { overflow: hidden; }
@media (max-width: 768px) {
  .tw-auth-content { padding: 52px 24px 24px; }
  .tw-auth-content h2 { font-size: 24px; }
  .tw-auth-field input { font-size: 16px; }
}

/* End */
/* /local/templates/2waystore.ru/assets/css/design-tokens.css?17939957722037 */
/* /local/templates/2waystore.ru/assets/css/reference.css?179400180557045 */
/* /local/templates/2waystore.ru/assets/css/integration.css?1792135178519 */
/* /local/templates/2waystore.ru/assets/css/storefront.css?179400015323450 */
/* /local/templates/2waystore.ru/assets/css/catalog-menu.css?17930545489766 */
/* /local/templates/2waystore.ru/assets/css/mobile-header.css?17940328784675 */
/* /local/templates/2waystore.ru/assets/css/basket-state.css?17940012962809 */
/* /local/components/twoway/region.selector/templates/.default/style.css?17921704823374 */
/* /local/components/twoway/region.contacts/templates/.default/style.css?17939957732682 */
/* /local/templates/2waystore.ru/components/bitrix/search.form/header/style.css?17939967534473 */
/* /local/components/twoway/customer.tools/templates/.default/style.css?17939957737585 */
/* /local/components/twoway/site.footer/templates/.default/style.css?17939950645387 */
/* /local/components/twoway/auth.dialog/templates/.default/style.css?17939974473883 */
