:root { --kdch-access-height: 66px; }
html { scroll-padding-bottom: calc(var(--kdch-access-height) + 16px + env(safe-area-inset-bottom,0px)); }
body { padding-bottom: calc(var(--kdch-access-height) + env(safe-area-inset-bottom,0px)); }
.kdch-footer { padding: 46px 0 24px; background: #163f36; color: #fff; }
.kdch-footer .kdch-footer__grid { display: grid; grid-template-columns: 1.1fr .85fr 1.15fr 1.2fr; gap: 34px; padding-bottom: 34px; }
.kdch-footer .kdch-footer__brand img { display: block; width: 174px; height: 69px; object-fit: contain; }
.kdch-footer .kdch-footer__brand p { margin: 20px 0 6px; color: #e0ecdf; font-size: 15px; font-weight: 600; line-height: 1.5; }
.kdch-footer .kdch-footer__brand > span { color: #a6c3b5; font-size: 12px; }
.kdch-footer h2 { margin: 0 0 18px !important; color: #a9cbbb; font-size: 11px !important; font-weight: 650; line-height: 1.5; letter-spacing: .09em; text-transform: uppercase; }
.kdch-footer ul { margin: 0; padding: 0; list-style: none; }
.kdch-footer li { margin: 0 0 10px; padding: 0; list-style: none; }
.kdch-footer a { color: #edf4ef; font-size: 13px; line-height: 1.6; text-decoration: none; }
.kdch-footer a:hover { color: #dff2cb; text-decoration: underline; text-underline-offset: 4px; }
.kdch-footer .kdch-footer__contacts .kdch-footer__phone { display: block; margin-bottom: 12px; color: #fff; font-size: 19px; font-weight: 700; letter-spacing: -.025em; white-space: nowrap; }
.kdch-footer .kdch-footer__contacts p { margin: 0 0 8px; color: #c6d9ce; font-size: 13px; line-height: 1.6; }
.kdch-footer .kdch-footer__mail, .kdch-footer .kdch-footer__vk { display: block; width: fit-content; }
.kdch-footer .kdch-footer__vk { margin-top: 14px; }
.kdch-footer .kdch-footer__bottom { display: flex; align-items: center; flex-wrap: wrap; gap: 14px 28px; padding-top: 22px; border-top: 1px solid rgba(217,239,224,.16); }
.kdch-footer .kdch-footer__bottom p { flex: 1; margin: 0; color: #a6c3b5; font-size: 11px; line-height: 1.6; }
.kdch-footer .kdch-footer__bottom a { color: #bcd2c6; font-size: 10px; }
.kdch-footer a:focus-visible, .kdch-accessbar a:focus-visible, .kdch-scroll-top:focus-visible { outline: 3px solid #aaca89; outline-offset: 4px; }
.kdch-accessbar { position: fixed; z-index: 1101; right: 0; bottom: 0; left: 0; height: calc(var(--kdch-access-height) + env(safe-area-inset-bottom,0px)); padding-bottom: env(safe-area-inset-bottom,0px); border-top: 1px solid #dfe9e1; background: #fff; box-shadow: 0 -3px 16px rgba(29,65,46,.045); }
.kdch-accessbar .container { display: flex; align-items: center; justify-content: space-between; gap: 24px; box-sizing: border-box; height: var(--kdch-access-height); padding-right: 284px; }
.kdch-accessbar .kdch-accessbar__phone { margin: 0; color: #718176; font-size: 11px; line-height: 1.5; }
.kdch-accessbar .kdch-accessbar__phone a { margin-left: 10px; color: #176f65; font-size: 13px; font-weight: 650; text-decoration: none; white-space: nowrap; }
.kdch-accessbar .kdch-accessbar__book { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 auto; gap: 12px; min-height: 46px; padding: 0 18px; border: 1px solid #176f65; border-radius: 14px; background: #176f65; color: #fff; font: 600 13px/1.4 'Inter',sans-serif; text-decoration: none; white-space: nowrap; }
.kdch-accessbar .kdch-accessbar__book:hover { background: #105b52; }
.kdch-accessbar__book > * { pointer-events: none; }
.kdch-accessbar .kdch-accessbar__mobile-label { display: none; }
.kdch-accessbar__book > span:last-child { font-size: 21px; font-weight: 400; }
.kdch-scroll-top { display: flex; align-items: center; justify-content: center; position: fixed; z-index: 1100; right: 20px; bottom: calc(var(--kdch-access-height) + 16px + env(safe-area-inset-bottom,0px)); width: 36px; height: 36px; padding: 0; border: 1px solid #cbded1; border-radius: 12px; background: #fff; color: #44745f; cursor: pointer; box-shadow: 0 3px 12px rgba(29,65,46,.05); }
.kdch-scroll-top[hidden] { display: none; }
.kdch-scroll-top > * { pointer-events: none; }
body.fancybox-active .kdch-accessbar, body.fancybox-active .kdch-scroll-top { visibility: hidden; }
body .online-chat-root-OnlineChat .top-z-index { z-index: 1103 !important; }
body .online-chat-root-OnlineChat #supportTrigger { right: max(20px,calc((100% - 1110px)/2)) !important; bottom: calc(9px + env(safe-area-inset-bottom,0px)) !important; }
body .online-chat-root-OnlineChat #supportTrigger .trigger-classic { border-radius: 14px !important; border-top: 0 !important; }
#cookie-banner { bottom: calc(var(--kdch-access-height) + env(safe-area-inset-bottom,0px)); }
@media(min-width:1024px) { body .kdch-home-promos .kdch-promo-card__media { height: clamp(120px,calc((100svh - 260px - (var(--kdch-home-promo-rows,2) - 1)*16px)/var(--kdch-home-promo-rows,2) - 72px),300px); } }
@media(max-width:1100px) { .kdch-footer .kdch-footer__grid { gap: 24px; grid-template-columns: 1fr 1fr 1.1fr; } .kdch-footer .kdch-footer__brand { grid-column: 1 / -1; display: flex; align-items: center; gap: 24px; } .kdch-footer .kdch-footer__brand p { margin: 0; } .kdch-accessbar .kdch-accessbar__phone a { display: block; margin-left: 0; } }
@media(max-width:767px) {
    :root { --kdch-access-height: 74px; }
    .kdch-accessbar .container { width: auto; max-width: none; margin: 0 16px; padding-right: 74px; }
    .kdch-accessbar .kdch-accessbar__phone, .kdch-accessbar .kdch-accessbar__desktop-label { display: none; }
    .kdch-accessbar .kdch-accessbar__mobile-label { display: inline; }
    .kdch-accessbar .kdch-accessbar__book { width: 100%; min-height: 50px; padding: 0 16px; font-size: 14px; gap: 14px; }
    .kdch-scroll-top { display: none; }
    body .online-chat-root-OnlineChat #supportTrigger { top: auto !important; right: 16px !important; bottom: calc(12px + env(safe-area-inset-bottom,0px)) !important; left: auto !important; width: 50px !important; height: 50px !important; transform: none !important; }
    body .online-chat-root-OnlineChat #supportTrigger > .trigger-background { display: flex !important; align-items: center !important; justify-content: center !important; width: 50px !important; min-width: 50px !important; height: 50px !important; padding: 0 !important; border: 0 !important; border-radius: 50% !important; }
    body .online-chat-root-OnlineChat #supportTrigger > .trigger-background > .text { display: none !important; }
    body .online-chat-root-OnlineChat #supportTrigger > .trigger-background > svg { width: 24px !important; height: 24px !important; margin: 0 !important; }
    body .online-chat-root-OnlineChat #supportTrigger .trigger-popup { max-width: calc(100vw - 32px); }
}
@media(max-width:1000px) { body .kdch-header.kdch-header--menu-open .kdch-header__navigation { max-height: calc(100vh - 116px - var(--kdch-access-height) - env(safe-area-inset-bottom,0px)); max-height: calc(100dvh - 116px - var(--kdch-access-height) - env(safe-area-inset-bottom,0px)); } }
@media(max-width:600px) { body .kdch-header.kdch-header--menu-open .kdch-header__navigation { max-height: calc(100vh - 104px - var(--kdch-access-height) - env(safe-area-inset-bottom,0px)); max-height: calc(100dvh - 104px - var(--kdch-access-height) - env(safe-area-inset-bottom,0px)); } }
@media(max-width:600px) { .kdch-footer { padding: 34px 0 24px; } .kdch-footer .kdch-footer__grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 30px 20px; padding-bottom: 26px; } .kdch-footer .kdch-footer__brand { display: block; } .kdch-footer .kdch-footer__brand img { width: 154px; height: 61px; } .kdch-footer .kdch-footer__brand p { margin: 14px 0 5px; font-size: 14px; } .kdch-footer .kdch-footer__contacts { grid-column: 1 / -1; } .kdch-footer h2 { margin-bottom: 14px !important; font-size: 10px !important; } .kdch-footer a { font-size: 12px; } .kdch-footer .kdch-footer__contacts .kdch-footer__phone { font-size: 21px; } .kdch-footer .kdch-footer__bottom { align-items: flex-start; flex-direction: column; gap: 13px; padding-top: 20px; } }
