body {
    background-color: #f4f6fb; /* светлый голубовато-серый */
    color: #343a40;
}

.container {
    background: #ffffff;
    border-radius: 14px;
    box-shadow: 0 4px 24px rgba(79, 140, 255, 0.06);
    padding: 28px 18px;
}

.card {
    background: #f0f4fa; /* светлый голубой */
    border: 1px solid #dbeafe; /* светло-голубая граница */
    border-radius: 12px;
}

.sticky-top {
    background: #e8f0fe; /* очень светлый голубой для сайдбара */
}

#map {
    background: #e3eaf6 !important; /* голубой фон для карты */
    border-radius: 10px;
}

.form-select{
    background: #f8fbff;
    border: 1px solid #b6d4fe;
    color: #495057;
}

.card-title, .h5, h1, h2, h3, h4, h5, h6 {
    color: #23272b;
}

.card-text, .lead, p, small, option, select, label {
    color: #495057;
}

:root {
    --accent-color: #4f8cff;
}

.accent,
.btn-accent,
.card-title.accent,
.badge-accent {
    color: #fff !important;
    background: var(--accent-color) !important;
    border-color: var(--accent-color) !important;
}

.btn-accent {
    background: var(--accent-color);
    color: #fff;
    border: none;
}

.btn-accent:hover,
.btn-accent:focus {
    background: #2563c9;
    color: #fff;
}

.badge-accent {
    display: inline-block;
    padding: 0.35em 0.65em;
    font-size: 0.85em;
    font-weight: 600;
    border-radius: 0.35rem;
    background: var(--accent-color);
    color: #fff;
}

a,
a:visited {
    color: var(--accent-color);
}

a:hover,
a:focus {
    color: #2563c9;
    text-decoration: underline;
}

.select2-container .select2-selection{
    display: flex;
    align-items: center;
    height: 38px;
}

.select2.select2-container{
    height: 100%;
    background: #f8fbff;
    border: 1px solid #b6d4fe;
    border-radius: var(--bs-border-radius);
}

.select2.select2-container--disabled{
    background: #eee;
}

.select2-selection__clear{
    padding: 0.6em 0.5em 0.4em;
}

.select2-selection__clear span{
    vertical-align: text-top;
}

.list-group{
    margin-left: 0;
}

.dots li{
    margin: 0 15px;
    list-style: none;
    width: 16px;
    height: 16px;
    border-radius: 1000px;
    background: #2563c9;
}

.dots li.active{
    width: 20px;
    height: 20px;
}

input.form-control{
    height: 38px;
    background: #f8fbff;
    border: 1px solid #b6d4fe;
    color: #495057;
    border-radius: var(--bs-border-radius) !important;
}

select.is-invalid + .select2-container{
    border-color: var(--bs-form-invalid-border-color);
}

.nav {
    list-style: none; /* убираем маркеры */
    padding-left: 0;
    display: flex; /* делаем ссылки в ряд */
    gap: 15px; /* расстояние между ссылками */
}
.nav li a {
    text-decoration: none; /* убираем подчеркивание */
    color: #000; /* цвет ссылок */
}
.nav li a:hover {
    color: #007bff; /* цвет при наведении */
}
.burger{
    padding: 10px;
    width: 30px;
    height: 30px;
}
.burger__inner{
    top: 50%;
    transform: translate(0, -50%);
    left: 0;
    width: 100%;
    height: 2px;
    background: #000;
}
.burger::before{
    content: '';
    width: 100%;
    top: 5px;
    left: 0;
    height: 2px;
    background: #000;
    position: absolute;
}
.burger::after{
    content: '';
    width: 100%;
    bottom: 5px;
    left: 0;
    height: 2px;
    background: #000;
    position: absolute;
}
.select2-container{
    max-height: fit-content;
}
.site-branding{
    max-width: 200px;
}
@media (max-width: 767.98px) {
    .container {
        padding: 12px 4px;
    }
    .card {
        border-radius: 6px;
    }
    .mobile-menu{
        position: absolute;
        background: #fff;
        display: flex;
        align-items: center;
        flex-direction: column;
        width: 100%;
        left: 0;
        gap: 20px;
        padding: 20px;
        top: 62px;
        z-index: 5;
    }
    #wpadminbar + #page .mobile-menu{
        top: 108px;
    }
    .mobile-menu ul{
        margin: 0;
    }
}