@import url('https://fonts.googleapis.com/css2?family=Geologica:wght,CRSV@100..900,0&display=swap');

* {
    outline: none !important;
}

img {
    max-width: 100%;
}

button {
    transition: .5s;
    border: none;
    background: none;
    padding: 0;
    margin: 0;
    box-shadow: none;
}

body {
    --font-family-base: 'Geologica', arial, sans-serif;
    --font-family-headings: 'Geologica', arial, sans-serif;
    --accent-green-color: #00DB4D;
    --accent-yellow-color: #F2B20D;
    --text-color: #2A2A29;
    --color-grey: #D9D9D9;
    --color-grey-light: #F3F3F3;
    /*--bs-body-color: var(--color-grey);*/
    --bs-primary: var(--accent-yellow-color);
    /*--bs-info: var(--accent-base-color);*/
    --bs-link-color: #F2B20D;
    --bs-link-color-rgb: 242, 178, 13;
    --bs-font-sans-serif: var(--font-family-base);
    --bs-font-monospace: var(--font-family-base);
    --bs-border-radius: 10px;
}

.accent-color {color: var(--accent-yellow-color);}

.btn {
    --bs-btn-padding-x: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}

.btn-block {width: 100%;}

.btn-lg {
    min-height: 52px;
    display: inline-flex;
    align-items: center;
    padding: 10px 20px;
    font-size: 14px;
    line-height: normal;
    font-weight: 400;
}

.btn-xl {
    min-height: 62px;
    display: inline-flex;
    align-items: center;
    padding: 10px 20px;
    font-size: 14px;
    line-height: normal;
    font-weight: 400;
}

.btn-green {
    --bs-btn-bg: var(--accent-green-color);
    --bs-btn-border-color: var(--accent-green-color);
    --bs-btn-color: #fff;
    --bs-btn-hover-color: #fff;
}

.btn-white {
    --bs-btn-bg: #fff;
    --bs-btn-border-color: #fff;
    --bs-btn-color: var(--text-color);
    --bs-btn-hover-color: var(--text-color);
}

.btn-primary {
    --bs-btn-bg: var(--bs-primary);
    --bs-btn-border-color: var(--bs-primary);
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: var(--accent-green-color);
    --bs-btn-hover-border-color: var(--accent-green-color);
    --bs-btn-focus-shadow-rgb: 0, 0, 0;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: var(--accent-green-color);
    --bs-btn-active-border-color: var(--accent-green-color);
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #fff;
    --bs-btn-disabled-bg: #ccc;
    --bs-btn-disabled-border-color: #ccc;
    color: #fff;
}

.btn-primary-black-text {
    color: var(--text-color);
}

.btn-bordered {
    --bs-btn-bg: transparent;
    --bs-btn-border-color: #D9D9D9;
    --bs-btn-hover-color: var(--text-color);
    --bs-btn-hover-bg: transparent;
    --bs-btn-hover-border-color: var(--accent-yellow-color);
    --bs-btn-focus-shadow-rgb: 0, 0, 0;
    --bs-btn-active-color: var(--text-color);
    --bs-btn-active-bg: transparent;
    --bs-btn-active-border-color: var(--accent-yellow-color);
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #fff;
    --bs-btn-disabled-bg: #ccc;
    --bs-btn-disabled-border-color: #ccc;
}

p {
    line-height: 1.55;
}

p:last-child {
    margin-bottom: 0;
}

a {
    text-decoration: none;
}

a[href*="tel"] {
    white-space: nowrap;
}

.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {

}

h1, .h1 {
    font-size: 48px;
    font-weight: 700;
}

h2, .h2 {
    font-size: 2.35rem;
    font-weight: 700;
}

h3, .h3 {
    font-size: 1.89rem;
    font-weight: 700;
}

h4, .h4 {
    font-size: 20px;
    font-weight: 700;
}

h5, .h5 {
    font-size: 14px;
    font-weight: 700;
}

b, strong {
    font-weight: 700;
}

.font-normal {
    font-weight: 400;
}

.font-medium {
    font-weight: 500;
}

.semi-strong {
    font-weight: 600;
}

.text-uppercase {
    text-transform: uppercase;
}

.font-size-xs {
    font-size: .78rem;
}

.font-size-md {
    font-size: 1.22rem;
}

.font-size-lg {
    font-size: 1.33rem;
}

@media (max-width: 767px) {
    .font-size-lg {
        font-size: 1.1rem;
    }
}

.font-size-xl {
    font-size: 1.55rem;
}

.font-size-2xl {
    font-size: 2.9rem;
}

@media (max-width: 1199px) {
    .font-size-2xl {
        font-size: 2rem;
    }
}

html {

}

@media (max-width: 1599px) {
    html {

    }
}

@media (max-width: 991px) {
    html {

    }
}

body {
    background: #ffffff;
    color: var(--text-color);
    font-family: var(--font-family-base);
    font-optical-sizing: auto;
    font-variation-settings: "slnt" 0;
    line-height: 1.5;
    font-weight: 400;
}

.container {
    max-width: 1774px;
    padding-left: 20px;
    padding-right: 20px;
}

@media (max-width: 1599px) {
    .container {
        max-width: 1320px;
    }
}

@media (max-width: 1279px) {
    .container {
        max-width: 1200px;
    }
}

@media (max-width: 991px) {
    .container {
        max-width: 900px;
    }
}

@media (max-width: 767px) {
    .container {
        max-width: 100%;
    }
}

.page {
    position: relative;
    display: flex;
    flex-direction: column;
    overflow-x: hidden;
    width: 100%;
    min-height: 100vh;
}

.page__title {margin-bottom: 35px;}
.page__main {flex-grow: 1; padding-bottom: 40px;}
.page__main:has(.slice:last-child) {padding-bottom: 0;}

.page__main .slice + hr, .page__main > hr {
    margin: 0;
}

.page__top {
    margin-bottom: 40px;
}

.page__top .col:first-child {
    padding-top: 30px;
    padding-bottom: 30px;
}

@media (max-width: 991px) {
    .page__top .col:first-child {
        padding-top: 0;
        padding-bottom: 0;
    }
}

.menu-open {
    overflow: hidden;
}

.svg-icon-wrap {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.color-accent {
    color: var(--bs-primary);
}

.color-grey {
    color: #abb2bb;
}

.mb-3 {
    margin-bottom: 30px !important;
}

@media (min-width: 992px) {
    .mb-3 {
        margin-bottom: 1.56vw !important;
    }
}

.mb-4 {
    margin-bottom: 40px !important;
}

@media (min-width: 992px) {
    .mt-4 {
        margin-top: 2.1vw !important;
    }
    .mb-4 {
        margin-bottom: 2.1vw !important;
    }
}

.mb-5 {
    margin-bottom: 50px !important;
}

@media (min-width: 992px) {
    .mb-5 {
        margin-bottom: 2.6vw !important;
    }
}

.mb-6 {
    margin-bottom: 60px !important;
}

@media (min-width: 992px) {
    .mb-6 {
        margin-bottom: 3.125vw !important;
    }
}

.slice {
    padding-top: 40px;
    padding-bottom: 40px;
}

.slice.grey {
    border-top: 1px solid #e4e6eb;
    background: #f7f8f9;
}

.slice.grey:empty {
    padding-top: 2vw;
    padding-bottom: 2vw;
}

@media (max-width: 991px) {
    .slice {
        padding-top: 40px;
        padding-bottom: 40px;
    }
}

.slice ul,
.page__main ul {
    margin-left: 0;
    padding-left: 18px;
}

.slice ul li,
.page__main ul li {
    margin-bottom: 5px;
}

.slice ul li::marker,
.page__main ul li::marker {
    color: var(--bs-link-color);
}

.accordion {
    --bs-accordion-color: #000;
}

.city-selector {position: relative;}
.city-selector__btn {display: flex; gap: 10px; align-items: center; }


.header {border-bottom: 1px solid var(--color-grey); margin-bottom: 40px;}

.topbar {background: var(--color-grey); color: #000;}
.topbar__wrap {display: flex; align-items: center; justify-content: space-between; height: 70px; gap: 20px; padding-left: 20px; padding-right: 20px;}
.topbar__icons,
.topbar__aside {display: flex; align-items: center; gap: 20px;}
.topbar a {color: var(--text-color);}

.header__container {display: flex; align-items: center; justify-content: space-between; height: 100px; gap: 20px; padding-left: 40px; padding-right: 40px;}

.header__logo {flex-shrink: 0;}

.header__search {flex-grow: 1;}
.header .search__link {display: none;}

.search__form {display: flex; border-radius: 10px; border: 1px solid var(--color-grey); padding: 0 20px; gap: 20px;}
.search__form .search__input {flex-grow: 1; border: none; padding: 3px 0; height: 33px; background: transparent;}
.search__form .search__btn {flex-shrink: 0; color: var(--color-grey); line-height: 0; padding: 0;}


.header__auth-links {
    display: flex;
    align-items: center;
    gap: 20px;
    margin-right: 16px;
}


.footer {background: var(--color-grey-light); padding: 40px 0 70px;}
.footer__main {display: flex; align-items: flex-start; gap: 30px;}
.footer__content {flex-grow: 1;}
.footer__aside {flex-shrink: 0; width: 25%;}
.footer a {color: inherit;}
.footer a:hover {color: var(--accent-yellow-color);}
.footer .btn-primary {color: #fff;}
.footer .btn-primary:hover {color: #fff;}
.footer__top {display: flex; align-items: center; gap: 30px; flex-wrap: wrap; margin-bottom: 45px;}
.footer__city {color: inherit;}
.footer__logo {flex-shrink: 0;}
.footer__menu {margin-bottom: 40px; max-width: 800px; font-size: 14px;}
.footer__menu ul {list-style: none; padding: 0; margin: 0; font-weight: 400; column-gap: 20px; column-count: 3;}
.footer__menu li {margin-bottom: 5px; max-width: 160px;}
.footer__phone {margin-bottom: 11px;}
.footer__socials {display: flex; gap: 18px;}
.footer__socials a {width: 35px; height: 35px; border-radius: 10px; display: flex; align-items: center; justify-content: center; background: #fff;}
.footer__copyright {color: #9A9A9A; font-size: 14px;}



.breadcrumbs {color: #BDBDBD; margin-bottom: 40px; display: flex; flex-wrap: wrap; gap: 10px; font-size: 10px;}
.breadcrumbs a {color: inherit; display: flex; align-items: center; gap: 10px;}
.breadcrumbs a::after {content: ''; display: block; width: 4px; height: 7px; background: url('../img/icon-breadcrumbs.svg') no-repeat 0 0; flex-shrink: 0;}


.main-banner {position: relative; overflow: hidden; margin-bottom: 40px;}
.main-banner__items {display: flex; gap: 23px;}
.main-banner__item {aspect-ratio: 994/423; max-width: 994px; width: 90vw; background: #eee; border-radius: 10px; flex-shrink: 0;}
.main-banner__footer {margin-top: 20px; display: flex; justify-content: flex-end; align-items: center; color: #BDBDBD; font-size: 14px; line-height: 18px; font-weight: 400;}
.main-banner {}
.main-banner {}

.accum-selector {}
.accum-selector__wrapper {padding: 37px 48px; border-radius: 10px; background: var(--color-grey-light); /*min-height: 423px;*/}
.accum-selector__head {margin-bottom: 15px;}
.accum-selector__tags {gap: 28px; display: flex; align-items: flex-start; flex-wrap: wrap; margin-bottom: 25px;}
.accum-selector__head {}
.accum-selector__head {}
.accum-selector__head {}
.accum-selector .accum-selector__tags {margin: 15px 0 20px; display: flex; gap: 12px; flex-wrap: wrap; padding: 0;}
.accum-selector__tags li {margin: 0; padding: 0;}
.accum-selector__tags li::marker {content: none;}
.accum-selector__tags .nav-link {font-size: 12px; height: 28px; padding: 0 12px; border-radius: 10px; display: inline-flex; align-items: center; justify-content: center; color: var(--accent-yellow-color); border: 1px solid  var(--accent-yellow-color); background: #fff;}
.accum-selector__tags .nav-link.active {color: #fff; background: var(--accent-yellow-color);}


.accum-selector--short .accum-selector__wrapper {padding: 24px 12px;}
.accum-selector--short .accum-selector__title {margin-bottom: 15px;}
.accum-selector--short .accum-selector__tags {margin-bottom: 30px;}
.accum-selector--short .form-control,
.accum-selector--short .form-select {min-height: 62px;}



.banner-profit {background: var(--color-grey-light); }
.banner-profit__content {display: flex; align-items: center; min-height: 597px;}
.banner-profit__text {max-width: 650px; margin-left: 8.5%; margin-right: 8.5%;}
.banner-profit__text .h1 {margin-top: 30px; margin-bottom: 50px;}
.banner-profit__btns {display: flex; gap: 15px;}
.banner-profit {}

.map-wrap {height: 574px; border-radius: 10px; overflow: hidden; background: var(--color-grey-light); margin-top: 65px;}
.map-wrap .map {height: 100%;}

.form-group {margin-bottom: 20px;}
.form-group .btn {min-width: 100px; text-align: center; justify-content: center;}
.form-control, .form-select {min-height: 50px; padding: 10px 20px;}

.cabinet-grid {display: flex; gap: 24px; align-items: flex-start;}
.cabinet-grid__aside {width: 302px; flex-shrink: 0;}
.cabinet-grid__content {flex-grow: 1;}
.cabinet-grid__nav {border-radius: 10px; background: #F3F3F3; padding: 40px 10px; font-size: 12px;}
.cabinet-grid__nav li::marker {content: none;}
.cabinet-grid__nav .nav-item {margin-bottom: 3px;}
.cabinet-grid__nav .nav-link {display: flex; gap: 20px; align-items: center; padding: 10px 30px; border-radius: 10px; text-align: left; width: 100%; font-weight: 400;}
.cabinet-grid__nav .svg-icon-wrap {flex-shrink: 0; width: 20px; text-align: center; height: 15px; }
.cabinet-grid__nav .nav-link.active {background: #fff; color: var(--accent-yellow-color);}
.cabinet-grid__nav .nav-link:hover {background: rgba(255,255,255,.5);}
.cabinet-grid__title {margin-bottom: 35px;}
.cabinet-grid__nav {}

.catalog-grid {display: flex; gap: 24px; align-items: flex-start;}
.catalog-grid__content {flex-grow: 1;}
.catalog-grid__aside {flex-shrink: 0; width: 410px;}
.catalog-grid {}


.advantages h4 {margin-bottom: 35px;}
.advantages__item {padding: 30px 20px; border-radius: 10px; background: var(--color-grey-light); gap: 30px; display: flex; align-items: center;}
.advantages__icon {flex-shrink: 0; width: 80px;}
.advantages__title {font-size: 24px;}




@media (max-width: 1199px) {
    .footer {padding: 30px 0;}
}

@media (max-width: 991px) {
    .topbar__wrap {height: 40px; padding-left: 0; padding-right: 0; font-size: 12px;}
    .topbar__icons svg {width: 18px; height: 18px;}

    .header__container {padding-left: 15px; padding-right: 15px; height: 86px;}
    .header__catalog, .header .search__form {display: none;}
    .header__search {flex-grow: 0; margin-left: auto;}
    .header .search__form {display: none;}
    .header .search__link {display: block; padding: 0 5px; color: var(--text-color);}

    .footer__main, .footer__content, .footer__top {display: contents;}
    .footer__socials {display: none;}
    .footer .container {padding-left: 30px; padding-right: 30px;}
    .footer__logo {width: 100%; margin-bottom: 22px; text-align: center;}
    .footer__contacts {display: flex; gap: 30px; align-items: center; justify-content: center; margin-bottom: 18px;}
    .footer__menu {margin-bottom: 30px;}
}

@media (max-width: 767px) {

}

@media (max-width: 599px) {
    .footer__menu ul {column-count: 2;}
}
