/* COLOR1, 9 October 2026. Shared presentation layer for both Aspro templates. */
body {
  --c1-heading: #173b63;
  --c1-text: #334f6c;
  --c1-muted: #5d7189;
  --c1-surface: #fff;
  --c1-soft: #f3f7fc;
  --c1-tint: #edf4fc;
  --c1-mint: #edf7f5;
  --c1-line: #d9e5f1;
  --c1-link: #1963b8;
}
body.theme-light, body:not(.theme-dark) {
  --white_text_black: #173b63;
  --basic_text_black: #334f6c;
  --secondary: #5d7189;
  --secondary-color: #5d7189;
  --fill_dark_light: #334f6c;
  --fill_dark_lite_hover: #173b63;
  color: var(--c1-text);
}
body.theme-dark {
  --c1-heading: #e1edff;
  --c1-text: #c5d5e9;
  --c1-muted: #a6b8ce;
  --c1-surface: #222d3d;
  --c1-soft: #253246;
  --c1-tint: #273a52;
  --c1-mint: #213e42;
  --c1-line: #40516a;
  --c1-link: #9dc9ff;
  --white_text_black: #e1edff;
  --basic_text_black: #c5d5e9;
  --secondary: #a6b8ce;
  --secondary-color: #a6b8ce;
  --fill_dark_light: #c5d5e9;
  --fill_dark_lite_hover: #e1edff;
  color: var(--c1-text);
}
body .page-top h1, body .catalog-detail h1,
body .main :is(h2,h3,h4,h5,h6), body main :is(h2,h3,h4,h5,h6),
body .index-block__title, body .c1-product-content .c1-product-label {
  color: var(--c1-heading);
}
body .main .banners-big__title, body .main .banners-big__title a { color: #fff; }
body .main :is(h1,h2,h3,h4) a:not(.btn), body main :is(h1,h2,h3,h4) a:not(.btn) { color: inherit; }
body .color1-info { --c1-ink: var(--c1-text); --c1-blue: var(--c1-link); --c1-paper: var(--c1-surface); color: var(--c1-text); }
body .color1-info .c1-copy :is(h2,h3,h4) { color: var(--c1-heading); }
body .color1-info .c1-summary { color: var(--c1-heading); }
body .color1-info .c1-copy a:hover { color: var(--c1-link); }
body.theme-dark .color1-info { --c1-muted: #a6b8ce; --c1-line: #40516a; --c1-soft: #253246; --c1-tint: #273a52; }
body .breadcrumbs { --text-opacity: 100%; }
body .breadcrumbs__item-name { color: var(--c1-muted); }

/* The catalog tree is shared by catalog, articles and news. */
body .left_block .sidebar > .side-menu {
  --color1-side-text: var(--c1-heading);
  --color1-side-branch-bg: var(--c1-tint);
  --color1-side-hover-bg: var(--c1-tint);
  --color1-side-current-bg: #285b87;
  background: var(--c1-soft);
  border: 1px solid var(--c1-line);
  border-radius: 14px;
  padding: 8px;
}
body .left_block .side-menu .link-wrapper > a { color: var(--c1-heading); border-radius: 9px; }
body .left_block .side-menu .link-wrapper > a:is(:hover,:focus-visible) { color: var(--c1-heading); background: var(--c1-tint); }
body .left_block .side-menu li.active > .link-wrapper > a.link--active { color: var(--c1-heading); background: var(--c1-tint); }
body .left_block .side-menu li.active:not(:has(li.active)) > .link-wrapper > a.link--active { color: #fff; background: #285b87; }
body .left_block .side-menu .link-wrapper > a:focus-visible { outline: 2px solid var(--c1-link); outline-offset: 2px; }

/* A clear purchase card, a soft description card and separate technical blocks. */
body .catalog-detail__buy-block {
  background: linear-gradient(145deg,var(--c1-tint),var(--c1-surface) 70%);
  border: 1px solid var(--c1-line);
  border-top: 4px solid #357cc0;
  border-radius: 18px;
  box-shadow: 0 12px 28px -20px rgb(23 59 99 / 30%);
  padding: 24px;
}
body .catalog-detail__buy-block .price__new-val { color: var(--c1-heading); }
body .catalog-detail__previewtext { padding: 20px; border: 1px solid var(--c1-line); border-radius: 14px; background: var(--c1-soft); }
body .catalog-detail .properties { padding: 18px 20px; border: 1px solid var(--c1-line); border-radius: 14px; background: var(--c1-mint); }
body .catalog-detail .properties__title, body .catalog-detail .properties__value { color: var(--c1-text); }
body .catalog-detail .properties__title { color: var(--c1-muted); }
body .catalog-detail__bottom-info { gap: 36px; }
body .catalog-detail__bottom-info .tabs { border-bottom: 1px solid var(--c1-line); }
body .catalog-detail__bottom-info .tabs .nav > li > a { color: var(--c1-heading); }
body .c1-product-content { color: var(--c1-text); line-height: 1.75; }
body .c1-product-content > p:has(> .c1-product-label) {
  padding: 22px 24px;
  border: 1px solid var(--c1-line);
  border-radius: 14px;
  background: var(--c1-soft);
  margin: 0 0 18px;
}
body .c1-product-content > p:has(> .c1-product-label):nth-of-type(3n) { background: var(--c1-mint); }
body .c1-product-content > p:has(> .c1-product-label) + ul,
body .c1-product-content > p:has(> .c1-product-label) + ol {
  padding: 0 24px 22px 46px;
  border: 1px solid var(--c1-line);
  border-top: 0;
  border-radius: 0 0 14px 14px;
  background: var(--c1-soft);
  margin: -19px 0 18px;
}
body .c1-product-content > p:has(> .c1-product-label):has(+ ul,+ ol) {
  border-bottom: 0;
  border-radius: 14px 14px 0 0;
  background: var(--c1-soft);
}
body .c1-product-content .c1-product-label { font-weight: 700; line-height: 1.6; }
body .c1-product-section { border-color: var(--c1-line); background: var(--c1-soft); }
body .c1-product-section:nth-child(2n) { background: var(--c1-mint); }
body .c1-product-document { border-color: var(--c1-line); color: var(--c1-heading); background: var(--c1-soft); }
body .c1-product-document__type { color: var(--c1-link); background: var(--c1-tint); }
body .c1-product-content table :is(td,th) { border-color: var(--c1-line); }
body .c1-product-content table th { background: var(--c1-tint); color: var(--c1-heading); }
body .c1-product-content a { color: var(--c1-link); }
body .c1-product-content li::marker { color: var(--c1-link); }

/* Mobile contacts are a normal Bitrix editable include. */
#mobilemenu .mobilemenu__inner { padding-inline: 20px; }
#mobilemenu .mobilemenu__menu .menu-item, #mobilemenu .mobilemenu__menu a { color: var(--c1-heading); }
#mobilemenu .mobilemenu__separator { background: var(--c1-line); }
.color1-mobile-contacts { color: var(--c1-text); border: 1px solid var(--c1-line); border-radius: 20px; overflow: hidden; background: var(--c1-surface); font-size: 14px; line-height: 1.65; }
.color1-mobile-contacts__reach { padding: 22px; background: var(--c1-tint); border-bottom: 1px solid var(--c1-line); display: grid; gap: 10px; }
.color1-mobile-contacts__eyebrow { color: var(--c1-muted); font-size: 13px; }
#mobilemenu .color1-mobile-contacts__phone { color: var(--c1-heading); font-size: clamp(21px,5.7vw,28px); font-weight: 700; line-height: 1.35; white-space: nowrap; text-decoration: none; }
#mobilemenu .color1-mobile-contacts__email { color: var(--c1-link); font-size: 16px; display: flex; align-items: center; justify-content: space-between; text-decoration: none; }
.color1-mobile-contacts__visit { padding: 22px; }
#mobilemenu .color1-mobile-contacts__title { margin: 0 0 18px; font-size: 20px; line-height: 1.4; color: var(--c1-heading); }
.color1-mobile-contacts address { font-style: normal; margin: 0; display: grid; gap: 6px; }
.color1-mobile-contacts address strong { color: var(--c1-heading); font-size: 16px; }
.color1-mobile-contacts__city, .color1-mobile-contacts__directions, .color1-mobile-contacts__note { color: var(--c1-muted); }
.color1-mobile-contacts__directions { margin: 18px 0; }
.color1-mobile-contacts__hours { border-top: 1px solid var(--c1-line); padding-top: 16px; margin: 0 0 12px; display: grid; gap: 9px; }
.color1-mobile-contacts__hours > div { display: flex; justify-content: space-between; gap: 12px; }
.color1-mobile-contacts__hours dt { font-weight: 400; color: var(--c1-muted); }
.color1-mobile-contacts__hours dd { margin: 0; font-weight: 700; color: var(--c1-text); }
.color1-mobile-contacts__hours dd.color1-mobile-contacts__closed { font-weight: 400; color: var(--c1-muted); }
.color1-mobile-contacts__note { margin: 0 0 20px; font-size: 13px; }
#mobilemenu .color1-mobile-contacts__route { display: flex; align-items: center; justify-content: center; gap: 10px; min-height: 50px; padding: 12px; border-radius: 12px; background: #1963c5; color: #fff; font-size: 15px; font-weight: 700; text-decoration: none; }
#mobilemenu .color1-mobile-contacts__route:hover { background: #144f9e; }
#mobilemenu .color1-mobile-contacts__photos { display: flex; gap: 10px; align-items: center; justify-content: space-between; margin-top: 18px; color: var(--c1-link); font-size: 13px; line-height: 1.5; text-decoration: underline; text-underline-offset: 3px; }
.color1-mobile-contacts a:focus-visible { outline: 2px solid var(--c1-link); outline-offset: 3px; }
#mobilemenu .social__items { justify-content: center; gap: 12px; }
#mobilemenu .social__item.vkontakte { display: none; }
#mobilemenu .social__item { padding: 10px; background: var(--c1-soft); border: 1px solid var(--c1-line); border-radius: 15px; }
#mobilemenu .social__link { width: 40px; height: 40px; }
.social__item.max .social__link { background: url('/include/images/max1.png') center / contain no-repeat !important; aspect-ratio: 1; min-height: 24px; }
.social-top { display: flex; align-items: center; gap: 10px; }
.social-top a { display: inline-flex; align-items: center; justify-content: center; }
.social-top a img { display: block; width: 24px; height: 24px; object-fit: contain; }

/* An unchecked consent stays required. The document link opens a normal page. */
.color1-consent-error { display: none; font-size: 12px; line-height: 1.5; margin-top: 7px; color: #a62b3e; }
.color1-consent-required .color1-consent-error { display: block; }
body.theme-dark .color1-consent-error { color: #ffabb5; }
.main-user-consent-request-announce a { color: var(--c1-link); text-decoration: underline; text-underline-offset: 3px; }

/* Prevent the browser's own scroll anchoring from undoing the checkout fix. */
body:has(#bx-soa-order-form) { overflow-anchor: none; }
#bx-soa-order-form { overflow-anchor: none; }

/* Custom informational and picker blocks previously mixed fixed light backgrounds with dark theme text. */
body.theme-dark .c1-picker, body.theme-dark .c1-picker-results {
  --c1p-ink: #e1edff; --c1p-muted: #b6c9df; --c1p-blue: #9dc9ff; --c1p-line: #40516a;
}
body.theme-dark .c1-picker { background: linear-gradient(115deg,#203d3d,#25364e 38%,#433249 76%,#473e2b); border-color: #526781; }
body.theme-dark .c1-picker :is(.c1-picker-choice__trigger,.c1-picker-choice__panel,.c1-picker-choice__option,.c1-picker__search,.c1-picker__vin,input,select),
body.theme-dark .c1-picker-results :is(.c1-picker-results__group,.c1-picker-results__card,.c1-picker-results__empty) { background: var(--c1-surface); border-color: var(--c1-line); color: var(--c1-heading); }
body.theme-dark .c1-picker .c1-picker-choice__trigger:disabled { color: #afbed1; background: #253246; }
body.theme-dark .c1-picker .c1-picker-choice__option:is(:hover,.is-active,[aria-selected="true"]) { color: #e1edff; background: #314e70; }
body.theme-dark .c1-picker .c1-picker__button { background: #225fad; border-color: #4d87ce; color: #fff; }
body.theme-dark .c1-picker .c1-picker__button--outline { color: #bcd9ff; background: #273a52; }
body.theme-dark .c1-picker input::placeholder { color: #b1c1d6; }
body.theme-dark .c1-picker .c1-picker__additional { border-color: #526781; }
body.theme-dark .c1-picker .c1-picker-choice__more { color: #bcd9ff; background: #273a52; border-color: #526781; }
body.theme-dark .c1-picker-choice__option small { color: #b6c9df; }
body.theme-dark .catalog-detail .sku-props__title, body.theme-dark .catalog-detail .form-control { color: var(--c1-text); }
body.theme-dark .dropdown-menu-item { color: #c5dfff !important; }
body.theme-dark .dropdown-menu-item:hover { color: #fff !important; }
body.theme-dark .sections-list__item { --white_text_black: #e1edff; --basic_text_black: #c5d5e9; }
body.theme-dark .index-block .sections-list__item-inner { background-color: var(--c1-surface); }
body.theme-dark .sticker__item--hit { background: #973e29; color: #fff; }
body.theme-dark .sticker__item--new { background: #246b38; color: #fff; }
@media(max-width:767px) {
  body .catalog-detail__buy-block { padding: 20px; border-radius: 15px; }
  body .catalog-detail__previewtext, body .catalog-detail .properties { padding: 16px; }
  body .c1-product-content > p:has(> .c1-product-label) { padding: 18px; }
  body .c1-product-content > p:has(> .c1-product-label) + ul,
  body .c1-product-content > p:has(> .c1-product-label) + ol { padding: 0 18px 18px 38px; }
}
@media(max-width:359px) {
  #mobilemenu .mobilemenu__inner { padding-inline: 14px; }
  .color1-mobile-contacts__reach, .color1-mobile-contacts__visit { padding: 17px; }
  #mobilemenu .color1-mobile-contacts__route { font-size: 14px; gap: 6px; }
}
body.theme-dark .c1-catalog-info .c1-catalog-card,
body.theme-dark .c1-catalog-info [data-c1-source="UF_ADD_TEXT_TOP"] > .c1-catalog-card,
body.theme-dark .c1-catalog-brand-card { background: var(--c1-soft); border-color: var(--c1-line); }
body.theme-dark #bx-soa-order-form .bx-soa-customer-field.c1-manager-call,
body.theme-dark #bx-soa-order-form .bx-soa-customer-field.c1-manager-call:has(input:checked) { background: #273a52; color: #e1edff; border-color: #526781; }
body.theme-dark #bx-soa-order-form #bx-soa-pickup { --c1-tint: #443a27; --c1-accent: #e2bc79; --c1-border: #75633e; }

/* Native social icons use a sprite pseudo-element; MAX has one dedicated asset. */
body .social__item.max .social__link::before { display: none !important; background-image: none !important; }
body.theme-dark #bx-soa-order-form .bx-authform-starrequired { color: #ffabb5; }

body .catalog-detail__bottom-info .tabs .nav > li.active > a { color: #fff; }
body .sticker__item--hit { background: #973e29; color: #fff; }

/* Preserve the native light banner palette in either page theme. */
body .card-banner.theme-light:not(:hover) { color: var(--basic_text_black); }

/* Dark descriptions at rest; preserve the native white hover highlight. */
body .index-block .card-banner.theme-light:not(:hover) .card-banner__info > .font_15 { color: #071d32; }
/* MAX takes the former first position of VK in the footer. */
footer .social__item.max { order: -1; }
