/* Сброс стилей и общие настройки */
:root {
    --header-info-font: 14px;
    --header-info-gap: 8px;
    --header-icon-size: 20px;
    --header-gap: 15px;
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html {
    overflow-x: hidden;
}

body {
    font-family: 'Montserrat', Arial, sans-serif;
    line-height: 1.6;
    background: #ffffff;
    overflow-x: hidden;
    max-width: 100vw;
}

/* Базовые стили - фиксированная ширина с центрированием */
.container {
    max-width: 1416px !important;
    width: 1416px !important;
    margin: 0 auto !important;
    padding: 0 !important;
}

/* Липкое меню */
.header {
    position: sticky;
    top: 0;
    background: #ffffff;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
    z-index: 1000;
}

.header-top {
    padding: 20px 0;
}

.header-top .container {
    display: grid;
    grid-template-columns: auto 1fr;
    align-items: center;
    gap: 40px;
}

.logo img {
    height: 45px;
    width: auto;
}

.header-info {
    display: grid;
    grid-template-columns: repeat(4, auto) 1fr;
    gap: var(--header-gap);
    align-items: center;
}

.info-item {
    display: flex;
    align-items: center;
    gap: var(--header-info-gap);
    color: rgba(102, 102, 102, 1);
    font-family: Montserrat;
    font-size: var(--header-info-font);
    font-weight: 700;
    line-height: 1.2;
    white-space: nowrap;
    flex-shrink: 0;
}

.info-item img {
    width: var(--header-icon-size);
    height: var(--header-icon-size);
    flex-shrink: 0;
}

.info-link {
    text-decoration: none;
    color: rgba(102, 102, 102, 1);
    transition: color 0.3s ease;
}

.info-link:hover {
    color: rgba(50, 150, 255, 1);
}

.social-icons {
    display: flex;
    align-items: center;
    gap: 12px;
    justify-content: flex-end;
    margin-left: auto;
    flex-shrink: 0;
}

.social-icons a {
    display: flex;
    align-items: center;
}

.social-icons img {
    width: 24px;
    height: 24px;
    transition: transform 0.3s ease;
}

.social-icons img:hover {
    transform: scale(1.1);
}

/* Разделитель */
.divider {
    height: 2px;
    background: linear-gradient(to right, rgba(178, 178, 178, 0), rgba(178, 178, 178, 1), rgba(178, 178, 178, 0));
    width: 100%;
}

/* Навигация */
.nav {
    padding: 20px 0;
    position: relative;
}

.nav-menu {
    display: flex;
    list-style: none;
    gap: 25px;
    flex-wrap: nowrap;
    align-items: center;
}

/* Гамбургер меню */
.hamburger {
    display: none;
    flex-direction: column;
    background: none;
    border: none;
    cursor: pointer;
    padding: 10px;
    gap: 5px;
    z-index: 1001;
}

.hamburger span {
    width: 25px;
    height: 3px;
    background: rgba(102, 102, 102, 1);
    border-radius: 3px;
    transition: all 0.3s ease;
}

.hamburger.active span:nth-child(1) {
    transform: rotate(45deg) translate(8px, 8px);
}

.hamburger.active span:nth-child(2) {
    opacity: 0;
}

.hamburger.active span:nth-child(3) {
    transform: rotate(-45deg) translate(7px, -7px);
}

/* Оверлей для мобильного меню */
.menu-overlay {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    z-index: 999;
    opacity: 0;
    transition: opacity 0.3s ease;
}

.menu-overlay.active {
    display: block;
    opacity: 1;
}

.nav-item {
    position: relative;
}

.nav-link {
    display: flex;
    align-items: center;
    gap: 5px;
    text-decoration: none;
    color: rgba(102, 102, 102, 1);
    font-family: Montserrat;
    font-size: 14px;
    font-weight: 700;
    line-height: 1;
    transition: all 0.3s ease;
    position: relative;
    padding: 0;
    white-space: nowrap;
}

.nav-link::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 0;
    height: 2px;
    background: linear-gradient(to right, rgba(50, 150, 255, 1), rgba(100, 200, 255, 1));
    transition: width 0.3s ease;
}

.nav-link:hover {
    color: rgba(50, 150, 255, 1);
}

.nav-link:hover::after {
    width: 100%;
}

/* Кнопка записи */
.nav-button-item {
    margin-left: auto;
}

.nav-button {
    display: inline-block;
    width: 216px;
    height: 30px;
    line-height: 30px;
    text-align: center;
    border-radius: 1px;
    background: rgba(94, 150, 207, 1);
    color: #ffffff;
    font-family: Montserrat;
    font-size: 14px;
    font-weight: 700;
    text-decoration: none;
    transition: background 0.3s ease;
}

.nav-button:hover {
    background: rgba(74, 130, 187, 1);
}

.arrow-down {
    transition: transform 0.3s ease;
}

.has-dropdown:hover .arrow-down {
    transform: rotate(180deg);
}

/* Выпадающее меню */
.dropdown {
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%) translateY(-10px);
    width: 400px;
    background: white;
    border-radius: 12px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.15);
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease;
    z-index: 100;
    overflow: hidden;
}

.has-dropdown:hover .dropdown {
    opacity: 1;
    visibility: visible;
    transform: translateX(-50%) translateY(0);
}

.dropdown-image {
    position: relative;
    width: 100%;
    height: 280px;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
}

.dropdown-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.dropdown-overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 18px 22px;
    background: linear-gradient(to top, 
        rgba(50, 150, 255, 0.95) 0%, 
        rgba(50, 150, 255, 0.75) 25%,
        rgba(50, 150, 255, 0.5) 50%,
        rgba(50, 150, 255, 0.25) 70%,
        rgba(50, 150, 255, 0.05) 90%,
        rgba(50, 150, 255, 0) 100%);
}

.dropdown-title {
    color: rgba(255, 255, 255, 1);
    font-family: Montserrat;
    font-size: 28px;
    font-weight: 700;
    line-height: 34px;
    letter-spacing: 0%;
    text-align: left;
    text-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
}

.dropdown-content {
    background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
    padding: 18px 22px;
}

.dropdown-menu {
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.dropdown-menu li a {
    text-decoration: none;
    color: rgba(102, 102, 102, 1);
    font-family: Montserrat;
    font-size: 13px;
    font-weight: 600;
    line-height: 18px;
    transition: all 0.3s ease;
    display: block;
    padding: 6px 10px;
    border-radius: 6px;
    background: transparent;
}

.dropdown-menu li a:hover {
    color: rgba(50, 150, 255, 1);
    background: rgba(50, 150, 255, 0.08);
    padding-left: 20px;
}

/* Основной контент */
.main-content {
    padding: 0;
    padding-top: 97px;
    min-height: 100vh;
}

/* Блок с наградами */
.awards-section {
    position: relative;
    margin-top: 30px;
    margin-bottom: 20px;
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
    padding: 0 20px;
}

.awards-medals {
    position: absolute;
    top: 5px;
    left: 0;
    z-index: 10;
    width: 163px;
    height: 112px;
}

.awards-medals img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: contain;
}

.awards-bar {
    background: #C1E36E;
    height: 96px;
    display: flex;
    align-items: center;
    position: relative;
    border-radius: 1px;
}

.awards-content {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 40px;
    flex-wrap: nowrap;
    padding-left: 180px;
    width: 100%;
}

.awards-text {
    color: #ffffff;
    font-family: 'Montserrat', sans-serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 18px;
    margin: 0;
    white-space: nowrap;
}

.awards-link {
    color: #ffffff;
    font-family: 'Montserrat', sans-serif;
    font-size: 18px;
    font-weight: 500;
    line-height: 18px;
    text-decoration: underline;
    transition: opacity 0.3s ease;
    white-space: nowrap;
}

.awards-link:hover {
    opacity: 0.8;
}

/* Секция о клинике */
.about-section {
    padding: 40px 0 80px 0;
    max-width: 1416px;
    width: 1416px;
    margin: 0 auto;
}

/* Адаптив для экранов меньше 1500px */

.about-content {
    display: flex;
    gap: 32px;
    align-items: flex-start;
}

.about-image {
    width: 579px;
    height: 710px;
    flex-shrink: 0;
}

.about-image img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}

.about-text-wrapper {
    display: flex;
    flex-direction: column;
    gap: 25px;
    flex: 1;
}

.about-text {
    position: relative;
    border-top: 1px solid #666666;
    border-bottom: 1px solid #666666;
    border-left: 1px solid #666666;
    border-right: none;
    border-radius: 0;
    padding: 26px 0;
    background: #ffffff;
    min-height: 200px;
    display: flex;
    align-items: flex-start;
    justify-content: center;
}

.about-text p {
    font-family: 'Montserrat', sans-serif;
    font-size: 18px;
    font-weight: 500;
    line-height: 20.7px;
    color: #666666;
    text-align: left;
    margin: 0;
    max-width: 651px;
}

.quote-left,
.quote-right {
    position: absolute;
    width: 32px;
    height: 25px;
    z-index: 2;
    background: #ffffff;
}

.quote-left {
    top: -2px;
    left: -2px;
    transform: rotate(180deg);
}

.quote-right {
    bottom: -2px;
    right: -2px;
}

/* Галерея */
.gallery-grid {
    display: grid;
    grid-template-columns: repeat(3, 216px);
    grid-template-rows: repeat(2, 216px);
    gap: 24px;
}

.gallery-item {
    position: relative;
    width: 216px;
    height: 216px;
    border-radius: 1px;
    overflow: hidden;
    transition: transform 0.3s ease;
}

.gallery-item:hover {
    transform: translateY(-3px);
}

.gallery-item > img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.gallery-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: flex-end;
    justify-content: center;
    padding-bottom: 20px;
}

.gradient-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 1;
}

.gallery-text {
    position: relative;
    z-index: 2;
    color: #ffffff;
    font-family: 'Montserrat', sans-serif;
    font-size: 16px;
    font-weight: 700;
    line-height: 16px;
    text-align: center;
    padding: 0 10px;
}

/* Адаптивный дизайн */

/* Планшеты */

/* Мобильные устройства */

/* Маленькие мобильные */

/* Секция специалистов */
.specialists-section {
    padding: 50px 0;
    background: #f8f9fa;
}

.specialists-section .container {
    position: relative;
}

.specialists-title {
    font-family: Montserrat;
    font-size: 56px;
    font-weight: 700;
    line-height: 68px;
    letter-spacing: 0%;
    text-align: left;
    color: rgba(102, 102, 102, 1);
    margin-bottom: 40px;
}

.specialists-title .blue-text {
    color: rgba(94, 150, 207, 1);
}

.specialists-title .gray-text {
    color: rgba(102, 102, 102, 1);
}

.carousel-wrapper {
    position: relative;
    overflow: hidden;
    margin-bottom: 40px;
    user-select: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
}

.doctors-carousel {
    display: flex;
    gap: 30px;
    will-change: transform;
}

.doctor-card {
    background: #ffffff;
    border-radius: 12px;
    overflow: hidden;
    transition: transform 0.3s ease;
    min-width: 335px;
    max-width: 335px;
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
}

.doctor-card:hover {
    transform: translateY(-5px);
}

.doctor-photo {
    width: 335px;
    height: 457px;
    overflow: hidden;
    flex-shrink: 0;
}

.doctor-photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center top;
}

.doctor-info {
    padding: 20px;
    display: flex;
    flex-direction: column;
    flex-grow: 1;
}

.doctor-surname {
    color: rgba(94, 150, 207, 1);
    font-family: Montserrat;
    font-size: 24px;
    font-weight: 700;
    line-height: 30px;
    letter-spacing: 0%;
    text-align: left;
    margin-bottom: 5px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.doctor-name {
    color: rgba(102, 102, 102, 1);
    font-family: Montserrat;
    font-size: 18px;
    font-weight: 500;
    line-height: 22px;
    letter-spacing: 0%;
    text-align: left;
    margin-bottom: 12px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.blue-line {
    height: 2px;
    width: 50px;
    background: rgba(94, 150, 207, 1);
    margin-bottom: 12px;
}

.doctor-description {
    color: rgba(102, 102, 102, 1);
    font-family: Montserrat;
    font-size: 13px;
    font-weight: 400;
    line-height: 19px;
    text-align: left;
    margin-bottom: 10px;
    min-height: 57px;
}

.doctor-description strong {
    font-weight: 700;
}

.gray-line {
    height: 1px;
    width: 100%;
    background: rgba(178, 178, 178, 0.3);
    margin: 12px 0;
}

.doctor-bio {
    color: rgba(102, 102, 102, 1);
    font-family: Montserrat;
    font-size: 12px;
    font-weight: 400;
    line-height: 18px;
    text-align: left;
    margin-bottom: 18px;
    min-height: 72px;
    overflow: hidden;
}

.doctor-btn {
    width: 100%;
    padding: 12px 24px;
    border-radius: 5px;
    background: rgba(193, 227, 110, 1);
    border: none;
    cursor: pointer;
    color: rgba(255, 255, 255, 1);
    font-family: Montserrat;
    font-size: 18px;
    font-weight: 700;
    line-height: 22px;
    letter-spacing: 0%;
    text-align: center;
    transition: all 0.3s ease;
    margin-top: auto;
}

.doctor-btn:hover {
    background: rgba(173, 207, 90, 1);
    transform: scale(1.02);
}

.doctor-btn:active {
    transform: scale(0.98);
}

.carousel-controls {
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    transform: translateY(-50%);
    display: flex;
    justify-content: space-between;
    pointer-events: none;
    padding: 0;
    z-index: 20;
}

.carousel-btn {
    width: 24px;
    height: 36px;
    border: none;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
    pointer-events: auto;
    z-index: 10;
    position: relative;
    background: transparent;
    padding: 0;
}

.carousel-btn .btn-bg {
    position: absolute;
    width: 24px;
    height: 36px;
    z-index: 1;
}

.carousel-btn .btn-icon {
    position: absolute;
    width: 24px;
    height: 24px;
    z-index: 2;
}

.carousel-btn:hover {
    opacity: 0.8;
}

.carousel-btn:active {
    opacity: 0.6;
}

/* Адаптивные стили для секции специалистов */



/* Секция достижений */
.achievements-section {
    padding: 60px 0;
    background: #ffffff;
    max-width: 1200px;
    margin: 0 auto;
}

.achievements-title {
    font-family: 'Montserrat', sans-serif;
    font-size: 82px;
    font-weight: 700;
    line-height: 94.3px;
    text-align: center;
    margin-bottom: 40px;
}

.achievements-title .gray-text {
    color: #666666;
}

.achievements-title .blue-text {
    color: #5E96CF;
}

.achievements-content {
    display: flex;
    gap: 24px;
    align-items: flex-start;
}

.achievements-gallery {
    display: grid;
    grid-template-columns: repeat(2, 216px);
    grid-template-rows: repeat(2, 154px);
    gap: 24px;
    flex-shrink: 0;
}

.achievement-item {
    position: relative;
    width: 216px;
    height: 154px;
    overflow: hidden;
    cursor: pointer;
    transition: transform 0.3s ease;
}

.achievement-item:hover {
    transform: scale(1.03);
}

.achievement-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.achievements-text {
    display: flex;
    flex-direction: column;
    gap: 24px;
    flex: 1;
}

.achievement-card {
    background: transparent;
    border: none;
    border-radius: 0;
    padding: 0;
    transition: all 0.3s ease;
}

.achievement-card:hover {
    transform: none;
}

.achievement-card p {
    font-family: 'Montserrat', sans-serif;
    font-size: 20px;
    font-weight: 700;
    line-height: 23px;
    text-align: left;
    color: #666666;
    margin: 0;
}

.achievement-card strong {
    font-weight: 700;
    color: #666666;
}

.achievements-link {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    font-family: 'Montserrat', sans-serif;
    font-size: 24px;
    font-weight: 700;
    line-height: 27.6px;
    color: #666666;
    text-decoration: underline;
    margin-top: 10px;
    transition: all 0.3s ease;
}

.achievements-link:hover {
    color: rgba(94, 150, 207, 1);
    gap: 12px;
}

.achievements-link svg {
    transition: transform 0.3s ease;
}

.achievements-link:hover svg {
    transform: rotate(90deg);
}

/* Модальное окно для галереи изображений */
.image-modal {
    display: none;
    position: fixed;
    z-index: 9999;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.95);
    animation: fadeIn 0.3s ease;
}

.image-modal.active {
    display: flex;
    align-items: center;
    justify-content: center;
}

.image-modal-content {
    max-width: 90%;
    max-height: 90%;
    object-fit: contain;
    animation: zoomIn 0.3s ease;
}

.image-modal-close {
    position: absolute;
    top: 30px;
    right: 50px;
    color: #ffffff;
    font-size: 50px;
    font-weight: 300;
    cursor: pointer;
    transition: all 0.3s ease;
    z-index: 10000;
}

.image-modal-close:hover {
    color: rgba(94, 150, 207, 1);
    transform: rotate(90deg);
}

/* Модальное окно записи на приём */
#appointmentModal.modal {
    display: none;
    position: fixed;
    z-index: 9999;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.8);
    animation: fadeIn 0.3s ease;
}

#appointmentModal.modal.active {
    display: flex;
    align-items: center;
    justify-content: center;
}

@keyframes fadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes zoomIn {
    from { transform: scale(0.8); opacity: 0; }
    to { transform: scale(1); opacity: 1; }
}

/* Адаптивные стили для достижений */
/* Для ноутбуков и средних экранов 1366px - 1600px */

/* Для ноутбуков 13-14 дюймов (1280px - 1440px) */

/* Для небольших ноутбуков */




/* Секция Акции ноября */
.promotions-section {
    padding: 60px 0;
    background: #ffffff;
    margin: 0 auto;
}

.promotions-section .container {
    position: relative;
}

.promotions-section .carousel-wrapper {
    position: relative;
    overflow: hidden;
    margin: 0 auto;
    max-width: 1200px;
    padding: 0 60px;
}

.promotions-title {
    font-family: Montserrat;
    font-size: 82px;
    font-weight: 700;
    line-height: 82px;
    margin-bottom: 40px;
}

.promotions-title .gray-text {
    color: #666666;
}

.promotions-title .blue-text {
    color: #1D5794;
}

.promotions-carousel {
    display: flex;
    gap: 36px;
    will-change: transform;
    transition: transform 0.5s ease;
}

.promotion-card {
    flex: 0 0 456px;
    position: relative;
    display: flex;
    flex-direction: column;
}

.promotion-image {
    width: 456px;
    height: 337px;
    border-radius: 5px 5px 0 0;
    object-fit: cover;
}

.promotion-badge {
    position: absolute;
    top: 310px;
    right: 0;
    width: 216px;
    height: 54px;
    background: #A7C955;
    border-radius: 5px 0 0 5px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-family: Montserrat;
    font-size: 24px;
    font-weight: 700;
    line-height: 24px;
    text-transform: lowercase;
}

.promotion-content {
    background: #E0E0DC;
    padding: 28px;
    border-radius: 0 0 5px 5px;
    height: 241px;
    display: flex;
    flex-direction: column;
}

.promotion-date {
    color: black;
    font-family: Montserrat;
    font-size: 15px;
    font-weight: 700;
    line-height: 15px;
    margin-bottom: 13px;
    position: relative;
    padding-bottom: 10px;
}

.promotion-date::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 80px;
    height: 3px;
    background: #1D5794;
}

.promotion-title-text {
    color: black;
    font-family: Montserrat;
    font-size: 26px;
    font-weight: 700;
    line-height: 26px;
    margin-bottom: 10px;
}

.promotion-subtitle {
    color: black;
    font-family: Montserrat;
    font-size: 26px;
    font-weight: 700;
    line-height: 26px;
    margin-bottom: 20px;
}

.promotion-prices {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 15px;
}

.old-price {
    color: black;
    font-family: Montserrat;
    font-size: 24px;
    font-weight: 700;
    line-height: 24px;
    text-decoration: line-through;
}

.new-price {
    color: black;
    font-family: Montserrat;
    font-size: 36px;
    font-weight: 700;
    line-height: 36px;
}

.promotion-details {
    color: black;
    font-family: Montserrat;
    font-size: 14px;
    font-weight: 700;
    line-height: 14px;
    text-decoration: underline;
    transition: opacity 0.3s;
}

.promotion-details:hover {
    opacity: 0.7;
}

/* Адаптивные стили для акций */






/* Адаптивные стили для карусели акций */






/* Секция Наша клиника */
.clinic-section {
    padding: 80px 0;
    background: #ffffff;
}

.clinic-section .container {
    position: relative;
}

.clinic-content {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 60px;
    align-items: stretch;
    margin-bottom: 60px;
}

.clinic-text-block {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
}

.clinic-title {
    font-family: Montserrat;
    font-size: 82px;
    font-weight: 700;
    line-height: 100px;
    letter-spacing: 0%;
    text-align: left;
    margin-bottom: 30px;
}

.clinic-title .gray-text {
    color: rgba(162, 162, 162, 1);
}

.clinic-title .blue-text {
    color: rgba(94, 150, 207, 1);
}

.clinic-description {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.clinic-description p {
    font-family: Montserrat;
    font-size: 24px;
    font-weight: 700;
    line-height: 29px;
    letter-spacing: 0;
    color: rgba(102, 102, 102, 1);
    text-align: left;
    margin: 0;
    margin-bottom: 15px;
}

.clinic-description p:last-child {
    margin-bottom: 0;
}


.clinic-photo {
    width: 100%;
    height: 577px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    border-radius: 5px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
}

.clinic-photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* Карусель фотографий клиники */
.clinic-carousel-wrapper {
    margin-bottom: 40px;
    position: relative;
}

.clinic-photos-carousel {
    display: flex;
    gap: 30px;
    will-change: transform;
}

.clinic-section .carousel-controls {
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    transform: translateY(-50%);
    display: flex;
    justify-content: space-between;
    pointer-events: none;
    padding: 0;
    z-index: 20;
}

.clinic-photo-card {
    min-width: 456px;
    max-width: 456px;
    height: 304px;
    flex-shrink: 0;
    border-radius: 5px;
    overflow: hidden;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.clinic-photo-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.15);
}

.clinic-photo-card img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* Адаптивные стили для секции клиники */






/* Секция отзывов */
.reviews-section {
    padding: 80px 0;
    background: #f8f9fa;
}

.reviews-section .container {
    position: relative;
    padding-left: 20px;
    padding-right: 40px;
}

.reviews-title {
    font-family: Montserrat;
    font-size: 56px;
    font-weight: 700;
    line-height: 68px;
    letter-spacing: 0%;
    text-align: left;
    margin-bottom: 40px;
}

.reviews-title .blue-text {
    color: rgba(94, 150, 207, 1);
}

.reviews-title .gray-text {
    color: rgba(162, 162, 162, 1);
}

.reviews-carousel-wrapper {
    position: relative;
    overflow: hidden;
    max-width: 100%;
    padding: 0 40px;
}

.reviews-carousel {
    display: flex;
    gap: 36px;
    transition: transform 0.5s ease;
    will-change: transform;
}

.review-card {
    flex: 0 0 calc(50% - 18px);
    display: flex;
    flex-direction: column;
    gap: 20px;
    min-height: auto;
}

.review-text-block {
    background: rgba(255, 255, 255, 1);
    border: 1px solid rgba(102, 102, 102, 1);
    border-radius: 8px;
    padding: 30px;
    box-sizing: border-box;
    min-height: 280px;
    display: flex;
    flex-direction: column;
    flex: 0 0 auto;
}

.review-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 20px;
}

.review-author {
    font-family: Montserrat;
    font-size: 24px;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: 0;
    text-align: left;
    color: rgba(102, 102, 102, 1);
}

.review-date {
    font-family: Montserrat;
    font-size: 24px;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: 0;
    text-align: left;
    color: rgba(102, 102, 102, 1);
}

.review-content {
    position: relative;
    padding-left: 20px;
}

.review-line {
    position: absolute;
    left: 0;
    top: 5px;
    height: 100%;
    max-height: 150px;
    width: 1px;
    background: rgba(102, 102, 102, 1);
}

.review-content p {
    font-family: Montserrat;
    font-size: 24px;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: 0;
    text-align: left;
    color: rgba(102, 102, 102, 1);
    margin: 0;
    word-wrap: break-word;
    overflow-wrap: break-word;
}

.review-video {
    position: relative;
    flex: 1;
    min-height: 300px;
}

.video-placeholder {
    width: 100%;
    height: 100%;
    min-height: 400px;
    background: linear-gradient(180deg, rgba(102, 102, 102, 0) 0%, rgba(94, 150, 207, 0.7) 83%);
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
}

.video-placeholder:hover {
    background: linear-gradient(180deg, rgba(102, 102, 102, 0) 0%, rgba(94, 150, 207, 0.85) 83%);
}

.video-info {
    position: absolute;
    bottom: 20px;
    left: 30px;
    display: flex;
    flex-direction: column;
    gap: 5px;
    z-index: 2;
}

.video-author {
    font-family: Montserrat;
    font-size: 24px;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: 0;
    text-align: left;
    color: rgba(255, 255, 255, 1);
    text-transform: uppercase;
}

.video-date {
    font-family: Montserrat;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: 0;
    text-align: left;
    color: rgba(255, 255, 255, 1);
}

.play-icon {
    transition: transform 0.3s ease;
    filter: drop-shadow(0 4px 12px rgba(0, 0, 0, 0.3));
    z-index: 1;
}

.video-placeholder:hover .play-icon {
    transform: scale(1.1);
}

/* Адаптивные стили для отзывов */

/* Большие мониторы - 2 карточки */

/* Планшеты и ноутбуки - 2 карточки */

/* Мобильные - 2 карточки */

/* Маленькие экраны - 1 карточка */

/* Секция новостей */
.news-section {
    padding: 80px 0 40px 0;
    background: #ffffff;
}

.news-section .container {
    position: relative;
}

.news-title {
    font-family: Montserrat;
    font-size: 56px;
    font-weight: 700;
    line-height: 68px;
    letter-spacing: 0%;
    text-align: left;
    margin-bottom: 40px;
}

.news-title .blue-text {
    color: rgba(94, 150, 207, 1);
}

.news-title .gray-text {
    color: rgba(162, 162, 162, 1);
}

.news-carousel-wrapper {
    position: relative;
}

.news-carousel {
    display: flex;
    gap: 30px;
    will-change: transform;
}

.news-card {
    background: #ffffff;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    min-width: 350px;
    max-width: 350px;
    flex-shrink: 0;
}

.news-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.15);
}

.news-photo {
    width: 100%;
    height: 220px;
    overflow: hidden;
}

.news-photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    transition: transform 0.3s ease;
}

.news-card:hover .news-photo img {
    transform: scale(1.05);
}

.news-info {
    padding: 20px;
}

.news-date {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 12px;
}

.news-date span {
    font-family: Montserrat;
    font-size: 13px;
    font-weight: 400;
    line-height: 18px;
    color: rgba(162, 162, 162, 1);
}

.news-heading {
    font-family: Montserrat;
    font-size: 20px;
    font-weight: 700;
    line-height: 26px;
    color: rgba(94, 150, 207, 1);
    margin-bottom: 12px;
}

.news-description {
    font-family: Montserrat;
    font-size: 14px;
    font-weight: 400;
    line-height: 22px;
    color: rgba(60, 60, 60, 1);
    margin-bottom: 15px;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.news-link {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-family: Montserrat;
    font-size: 14px;
    font-weight: 600;
    line-height: 20px;
    color: rgba(94, 150, 207, 1);
    text-decoration: underline;
    transition: all 0.3s ease;
}

.news-link:hover {
    color: rgba(74, 130, 187, 1);
    gap: 10px;
}

.news-link svg {
    transition: transform 0.3s ease;
}

.news-link:hover svg {
    transform: translateX(3px);
}

/* Адаптивные стили для новостей */



/* Секция с картой */
.map-section {
    padding: 0;
    background: #ffffff;
}

.map-container {
    width: 100%;
    height: 500px;
    position: relative;
}

.map-container iframe {
    width: 100%;
    height: 100%;
    border: 0;
    display: block;
}

/* Адаптивность для карты */


/* Секция 4 шага */
.steps-section {
    padding: 80px 0;
    background: #ffffff;
}

.steps-content {
    display: flex;
    flex-direction: column;
    gap: 50px;
}

.steps-top {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 60px;
    align-items: center;
}

/* Левый блок */
.steps-left {
    display: flex;
    flex-direction: column;
    gap: 30px;
}

.steps-title {
    font-family: Montserrat;
    font-size: 48px;
    font-weight: 700;
    line-height: 58px;
    color: rgba(102, 102, 102, 1);
}

.steps-title .blue-text {
    color: rgba(94, 150, 207, 1);
}

.steps-title .green-dot {
    color: rgba(167, 201, 85, 1);
    font-size: 48px;
}

/* Слайдер До/После */
.before-after-slider {
    position: relative;
    width: 100%;
    max-width: 250px;
    aspect-ratio: 3/4;
    overflow: hidden;
    border-radius: 12px;
    cursor: ew-resize;
    user-select: none;
}

.image-after,
.image-before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.image-after {
    z-index: 1;
}

.image-before {
    z-index: 2;
    clip-path: polygon(0 0, 50% 0, 50% 100%, 0 100%);
}

.image-after img,
.image-before img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.slider-line {
    position: absolute;
    top: 0;
    left: 50%;
    width: 2px;
    height: 100%;
    background: rgba(255, 255, 255, 0.8);
    transform: translateX(-50%);
    z-index: 3;
    pointer-events: none;
}

.slider-button {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 50px;
    height: 50px;
    background: rgba(255, 255, 255, 0.9);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2);
    z-index: 4;
    cursor: ew-resize;
}

.slider-button .arrow-left,
.slider-button .arrow-right {
    font-size: 24px;
    color: rgba(94, 150, 207, 1);
    font-weight: bold;
}

.slider-button .arrow-left {
    margin-right: 2px;
}

.slider-button .arrow-right {
    margin-left: 2px;
}

.slider-labels {
    position: absolute;
    top: 20px;
    left: 0;
    right: 0;
    display: flex;
    justify-content: space-between;
    padding: 0 20px;
    pointer-events: none;
    z-index: 5;
}

.label-before {
    background: rgba(94, 150, 207, 1);
    padding: 8px 16px;
    border-radius: 20px;
    font-family: Montserrat;
    font-size: 14px;
    font-weight: 600;
    color: #ffffff;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
    transition: opacity 0.2s ease;
}

.label-after {
    background: rgba(167, 201, 85, 1);
    padding: 8px 16px;
    border-radius: 20px;
    font-family: Montserrat;
    font-size: 14px;
    font-weight: 600;
    color: #ffffff;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
    transition: opacity 0.2s ease;
}

/* Правый блок - слайдер */
.steps-right {
    display: flex;
    justify-content: center;
    padding-right: 15%;
}

/* Горизонтальные этапы */
.steps-horizontal {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 40px;
}

.step-item {
    display: grid;
    grid-template-columns: auto 1fr;
    grid-template-rows: auto auto;
    column-gap: 40px;
    row-gap: 0;
    align-items: start;
}

.step-number {
    font-family: Montserrat;
    font-size: 56px;
    font-weight: 700;
    color: rgba(94, 150, 207, 1);
    line-height: 68px;
    letter-spacing: 0%;
    text-align: left;
    transform: rotate(-90deg);
    white-space: nowrap;
    width: auto;
    height: 56px;
    grid-column: 1;
    grid-row: 1;
}

.step-divider {
    width: 7px;
    height: 49px;
    background: rgba(94, 150, 207, 1);
    grid-column: 1;
    grid-row: 2;
    justify-self: center;
    flex-shrink: 0;
}

.step-content {
    display: flex;
    flex-direction: column;
    gap: 10px;
    grid-column: 2;
    grid-row: 1 / 3;
    min-width: 0;
}

.step-title {
    font-family: Montserrat;
    font-size: 18px;
    font-weight: 700;
    line-height: 24px;
    color: rgba(102, 102, 102, 1);
    margin: 0;
}

.step-description {
    font-family: Montserrat;
    font-size: 14px;
    font-weight: 400;
    line-height: 20px;
    color: rgba(102, 102, 102, 1);
    margin: 0;
}

.step-phone {
    font-family: Montserrat;
    font-size: 16px;
    font-weight: 700;
    color: rgba(167, 201, 85, 1);
    text-decoration: none;
    transition: color 0.3s ease;
    margin-top: 5px;
}

.step-phone:hover {
    color: rgba(147, 181, 65, 1);
}

/* Адаптивность */




/* Блок преимуществ */
.features-section {
    padding: 30px 0 20px 0;
    background: #ffffff;
}

.features-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    max-width: 700px;
    margin: 0 auto;
}

.feature-item {
    display: flex;
    align-items: center;
    gap: 10px;
}

.feature-icon {
    width: 28px;
    height: 28px;
    flex-shrink: 0;
    object-fit: contain;
}

.feature-text {
    font-family: Montserrat;
    font-size: 13px;
    font-weight: 600;
    line-height: 1.23;
    color: rgba(102, 102, 102, 1);
    white-space: nowrap;
}

/* Адаптивность преимуществ */


/* Блок Когда стоит записаться */
.when-visit-section {
    padding: 0;
    background: #ffffff;
    overflow: hidden;
}

.when-visit-container {
    position: relative;
    display: flex;
    min-height: 475px;
    max-width: 100%;
    margin: 0;
}

.when-visit-bg-left {
    background-image: url('photo/klinik.webp');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: relative;
    width: 44%;
    z-index: 1;
}

.when-visit-bg-right {
    background-image: url('photo/Rectangle 25.svg');
    background-size: cover;
    background-position: center right;
    background-repeat: no-repeat;
    position: absolute;
    right: 0;
    top: 0;
    width: 57%;
    height: 100%;
    z-index: 2;
}

.when-visit-bg-right::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 80px;
    height: 100%;
    background: linear-gradient(to right, rgba(255, 255, 255, 0.4), transparent);
    z-index: 1;
}

.when-visit-content {
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 50%;
    padding: 60px 80px 60px 60px;
    z-index: 3;
}

.when-visit-title {
    font-family: Montserrat;
    font-size: 36px;
    font-weight: 700;
    line-height: 1.22;
    color: rgba(29, 87, 148, 1);
    margin-bottom: 25px;
}

.when-visit-text {
    font-family: Montserrat;
    font-size: 15px;
    font-weight: 400;
    line-height: 1.6;
    color: rgba(102, 102, 102, 1);
    margin-bottom: 15px;
}

.when-visit-list {
    list-style: none;
    padding-left: 0;
    margin: 20px 0;
}

.when-visit-list li {
    font-family: Montserrat;
    font-size: 15px;
    font-weight: 400;
    line-height: 1.6;
    color: rgba(102, 102, 102, 1);
    padding-left: 20px;
    position: relative;
    margin-bottom: 10px;
}

.when-visit-list li::before {
    content: '-';
    position: absolute;
    left: 0;
}

.when-visit-highlight {
    font-family: Montserrat;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.6;
    color: rgba(102, 102, 102, 1);
    margin-top: 20px;
    margin-bottom: 0;
}

/* Адаптивность */



/* --- Блок Флебологии (Pixel Perfect) --- */
.flebology-block {
    position: relative;
    width: 1416px;
    height: 457px;
    margin: 0 auto;
    border-radius: 5px;
    background-color: #E0E0DC;
    overflow: hidden;
}

.flebology-img {
    position: absolute;
    left: 0;
    top: 0;
    width: 696px;
    height: 457px;
    object-fit: cover;
    z-index: 1;
}

.flebology-gradient {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    width: 100%;
    z-index: 2;
    background: linear-gradient(90deg, rgba(224, 224, 220, 0) 0%, rgba(224, 224, 220, 0.5) 25%, #E0E0DC 50%);
}

.flebology-content {
    position: relative;
    z-index: 3;
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    padding-left: 600px;
    padding-top: 24px;
    padding-right: 20px;
}

.fleb-title {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 54px;
    line-height: 66px;
    color: #1D5794;
    margin: 0;
    margin-bottom: 24px;
    width: 696px;
    height: 111px;
    letter-spacing: 0%;
    text-align: left;
}

.fleb-text-group {
    color: #666666;
    font-family: 'Montserrat', sans-serif;
    width: 696px;
}

.fleb-subtitle {
    font-weight: 700;
    font-size: 18px;
    line-height: 110%;
    margin: 0 0 10px 0;
    letter-spacing: 0%;
    text-align: left;
}

.fleb-list {
    margin: 0 0 20px 0;
    padding: 0;
    list-style: none;
}

.fleb-list li {
    font-weight: 500;
    font-size: 18px;
    line-height: 110%;
    position: relative;
    padding-left: 15px;
    letter-spacing: 0%;
    text-align: left;
}

.fleb-list li::before {
    content: "-";
    position: absolute;
    left: 0;
}

.fleb-desc {
    font-weight: 500;
    font-size: 18px;
    line-height: 110%;
    margin-bottom: 20px;
    letter-spacing: 0%;
    text-align: left;
}

.fleb-footer {
    font-weight: 700;
    font-size: 18px;
    line-height: 110%;
    margin: 0;
    letter-spacing: 0%;
    text-align: left;
}

/* Информационный блок */
.info-section {
    padding: 40px 0 80px 0;
    background: #ffffff;
}

.info-box {
    position: relative;
    background: rgba(94, 150, 207, 1);
    border-radius: 5px;
    padding: 40px 50px 40px 450px;
    display: flex;
    align-items: center;
    min-height: 373px;
    margin-top: 50px;
}

.info-image {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 408px;
    height: 457px;
}

.info-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center top;
    display: block;
}

.info-text {
    color: #ffffff;
    font-family: Montserrat;
}

.info-text p {
    font-size: 15px;
    font-weight: 400;
    line-height: 1.6;
    margin-bottom: 15px;
}

.info-text p:last-child {
    margin-bottom: 0;
}

.info-text strong {
    font-weight: 700;
}

/* Адаптивность информационного блока */



/* Подвал сайта */
.footer {
    background: rgba(94, 150, 207, 1);
    border-radius: 5px 5px 0 0;
    padding: 40px 0 30px 0;
    margin-top: 0;
}

.footer-logo {
    margin-bottom: 30px;
}

.footer-logo img {
    height: 50px;
    width: auto;
}

.footer-content {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 40px;
}

.footer-column {
    display: flex;
    flex-direction: column;
}

.footer-links {
    list-style: none;
    padding: 0;
    margin: 0 0 20px 0;
}

.footer-links li {
    margin-bottom: 10px;
}

.footer-links a {
    font-family: Montserrat;
    font-size: 13px;
    font-weight: 400;
    line-height: 18px;
    color: rgba(255, 255, 255, 1);
    text-decoration: none;
    transition: opacity 0.3s ease;
}

.footer-links a:hover {
    opacity: 0.8;
    text-decoration: underline;
}

.footer-bottom-text {
    margin-top: auto;
}

.footer-year {
    font-family: Montserrat;
    font-size: 24px;
    font-weight: 700;
    line-height: 30px;
    color: rgba(255, 255, 255, 1);
    margin: 0 0 10px 0;
}

.footer-disclaimer,
.footer-info,
.footer-address {
    font-family: Montserrat;
    font-size: 11px;
    font-weight: 400;
    line-height: 16px;
    color: rgba(255, 255, 255, 0.9);
    margin: 0;
}

.footer-company {
    font-family: Montserrat;
    font-size: 13px;
    font-weight: 700;
    line-height: 18px;
    color: rgba(255, 255, 255, 1);
    margin: 0 0 10px 0;
}

.footer-address {
    margin-top: 5px;
}

.footer-developer {
    font-family: Montserrat;
    font-size: 12px;
    font-weight: 400;
    line-height: 18px;
    color: rgba(255, 255, 255, 0.9);
    margin: 15px 0 0 0;
}

.footer-developer a {
    color: rgba(255, 255, 255, 1);
    text-decoration: underline;
    transition: opacity 0.3s ease;
    font-weight: 600;
}

.footer-developer a:hover {
    opacity: 0.8;
}

/* Адаптивность для футера */



/* Hero-секция страницы консультации */
.consultation-hero {
    padding: 0;
    margin: 0;
}

.main-content {
    padding-top: 97px !important;
}

.hero-background {
    background-color: #ffffff;
    min-height: 700px;
    display: flex;
    align-items: center;
    padding: 0 0 80px 0;
    position: relative;
}

.hero-bg-image {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    max-width: 90%;
    max-height: 100%;
    width: auto;
    height: auto;
    border-radius: 20px;
    object-fit: contain;
    z-index: 0;
}

.hero-background .container {
    display: flex;
    justify-content: flex-end;
    width: 100%;
    position: relative;
    z-index: 2;
}

.hero-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 22px;
    width: 440px;
    margin-right: 0;
}

.hero-card {
    position: relative;
    aspect-ratio: 1;
    overflow: hidden;
    border-radius: 20px;
    cursor: pointer;
    transition: all 0.4s ease;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
}

.hero-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(29, 87, 148, 0.2);
    z-index: 1;
    transition: background 0.4s ease;
    pointer-events: none;
}

.hero-card:hover {
    transform: scale(1.08);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.3);
}

.hero-card:hover::before {
    background: rgba(29, 87, 148, 0);
}

.hero-card img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    position: relative;
    z-index: 0;
}

/* Адаптивность для hero-секции */





/* Секция о венах */
.veins-section {
    padding: 30px 0 30px 0;
    background: #ffffff;
}

.veins-content {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 70px;
    align-items: center;
}

.veins-text {
    max-width: 936px;
}

.veins-title {
    font-family: Montserrat;
    font-size: 64px;
    font-weight: 700;
    line-height: 78px;
    letter-spacing: 0%;
    text-align: left;
    color: rgba(94, 150, 207, 1);
    margin: 0 0 30px 0;
}

.veins-description {
    font-family: Montserrat;
    font-size: 24px;
    font-weight: 500;
    line-height: 29px;
    letter-spacing: 0%;
    text-align: left;
    color: rgba(102, 102, 102, 1);
    margin: 0 0 30px 0;
}

.veins-conclusion {
    font-family: Montserrat;
    font-size: 36px;
    font-weight: 700;
    line-height: 44px;
    letter-spacing: 0%;
    text-align: left;
    color: rgba(94, 150, 207, 1);
    margin: 0;
}

.veins-image {
    width: 387px;
    height: 577px;
    flex-shrink: 0;
}

.veins-image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    display: block;
}

/* Адаптивность секции о венах */



/* Секция осложнений */
.complications-section {
    padding: 23px 0 0 0;
    background: #fff;
}

.complications-content {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 60px;
    position: relative;
}

.complications-left {
    flex: 1;
    max-width: 700px;
}

.complications-title {
    font-family: 'Montserrat', sans-serif;
    font-size: 64px;
    font-weight: 700;
    line-height: 78px;
    margin-bottom: 45px;
}

.complications-title .blue-text {
    color: rgba(94, 150, 207, 1);
}

.complications-title .gray-text {
    color: rgba(102, 102, 102, 1);
}

.complications-buttons {
    display: flex;
    flex-direction: column;
    gap: 16px;
    margin-bottom: 40px;
}

.complications-divider {
    width: 680px;
    height: 0;
    border: none;
    border-top: 2px dashed rgba(29, 87, 148, 1);
    margin: 0;
}

.complications-row {
    display: flex;
    gap: 16px;
    flex-wrap: nowrap;
    justify-content: flex-start;
}

.complication-btn {
    flex: 0 0 auto;
    min-width: 190px;
    height: 42px;
    padding: 0 12px;
    border-radius: 5px;
    font-family: 'Montserrat', sans-serif;
    font-size: 16px;
    font-weight: 700;
    line-height: 20px;
    cursor: pointer;
    transition: all 0.3s ease;
    border: 2px solid rgba(94, 150, 207, 1);
    background: rgba(255, 255, 255, 1);
    color: rgba(94, 150, 207, 1);
    white-space: nowrap;
    text-align: center;
}

.complication-btn.active {
    background: rgba(94, 150, 207, 1);
    color: rgba(255, 255, 255, 1);
    border: 2px solid rgba(94, 150, 207, 1);
}

.complication-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 8px rgba(94, 150, 207, 0.2);
}

.complications-right {
    flex: 0 0 500px;
    position: sticky;
    top: 100px;
    margin-left: 40px;
}

.complication-image-wrapper {
    position: relative;
    width: 500px;
    height: 500px;
    border-radius: 5px;
    overflow: hidden;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
}

.complication-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 5px;
    transition: opacity 0.3s ease;
}

.complication-gradient {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 220px;
    background: linear-gradient(180deg, rgba(29, 87, 148, 0) 0%, rgba(94, 150, 207, 1) 100%);
    border-radius: 0 0 5px 5px;
    pointer-events: none;
}

.complication-description {
    position: absolute;
    bottom: 28px;
    left: 28px;
    right: 28px;
    max-width: 450px;
    color: rgba(255, 255, 255, 1);
    font-family: 'Montserrat', sans-serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 22px;
    z-index: 2;
    transition: opacity 0.3s ease;
}

/* Адаптация для средних экранов */


/* Адаптация для планшетов */

/* Адаптация для мобильных */

/* Адаптация для маленьких мобильных */

/* Секция результаты лечения */
.results-section {
    padding: 23px 0 0 0;
    background: #fff;
    overflow-x: hidden;
    width: 100%;
}

.results-section .container {
    overflow-x: hidden;
    width: 100%;
    max-width: 1200px;
}

.results-title {
    font-family: 'Montserrat', sans-serif;
    font-size: 64px;
    font-weight: 700;
    line-height: 78px;
    color: rgba(102, 102, 102, 1);
    margin-bottom: 80px;
    text-align: left;
}

.results-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 60px;
}

.result-item {
    display: flex;
    align-items: flex-start;
    gap: 25px;
}

.result-icon {
    flex: 0 0 94px;
    width: 94px;
    height: 94px;
}

.result-icon img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.result-text {
    flex: 1;
}

.result-heading {
    font-family: 'Montserrat', sans-serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 22px;
    color: rgba(94, 150, 207, 1);
    margin-bottom: 12px;
}

.result-description {
    font-family: 'Montserrat', sans-serif;
    font-size: 18px;
    font-weight: 500;
    line-height: 22px;
    color: rgba(102, 102, 102, 1);
    margin: 0;
}

/* Адаптация для средних экранов */


/* Адаптация для планшетов */

/* Адаптация для мобильных */

/* Адаптация для маленьких мобильных */

/* Пунктирная линия в результатах */
.results-divider {
    width: 100%;
    max-width: 1416px;
    height: 0;
    border: none;
    border-top: 2px dashed rgba(29, 87, 148, 1);
    margin: 24px 0;
}

/* Кнопки методов лечения */
.treatment-methods {
    display: flex;
    gap: 20px;
    flex-wrap: wrap;
    justify-content: center;
    margin: 0 auto;
    max-width: 1200px;
}

.treatment-btn {
    flex: 0 0 auto;
    min-width: 190px;
    height: 42px;
    padding: 0 25px;
    border-radius: 5px;
    font-family: 'Montserrat', sans-serif;
    font-size: 16px;
    font-weight: 700;
    line-height: 20px;
    cursor: pointer;
    transition: all 0.3s ease;
    border: 2px solid rgba(94, 150, 207, 1);
    background: rgba(255, 255, 255, 1);
    color: rgba(94, 150, 207, 1);
    white-space: nowrap;
    text-align: center;
}

.treatment-btn.active {
    background: rgba(94, 150, 207, 1);
    color: rgba(255, 255, 255, 1);
}

.treatment-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 8px rgba(94, 150, 207, 0.2);
}

/* --- Блок с результатом (До/После + Текст) --- */
.result-block {
    width: 1416px;
    min-height: 578px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}

/* Настройки картинок */
.result-img-wrapper {
    width: 456px;
    height: 578px;
    flex-shrink: 0;
}

.result-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: opacity 0.3s ease;
}

/* Правая колонка с текстом */
.result-info {
    width: 456px;
    min-height: 578px;
    display: flex;
    flex-direction: column;
    position: relative;
    overflow: visible;
}

/* Типографика заголовков */
.res-title {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 32px;
    line-height: 1.2;
    color: #5E96CF;
    margin: 0 0 10px 0;
    transition: opacity 0.3s ease;
}

.res-doctor {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 24px;
    line-height: 1.2;
    color: #666666;
    margin: 0 0 30px 0;
    transition: opacity 0.3s ease;
}

/* Основной текст */
.res-body {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 16px;
    line-height: 1.4;
    color: #666666;
    margin-bottom: auto;
    transition: opacity 0.3s ease;
}

.res-body p {
    margin: 0 0 15px 0;
}

/* Кнопка */
.res-button {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 48px;
    border: 2px solid #5E96CF;
    border-radius: 5px;
    background-color: transparent;
    color: #5E96CF;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 18px;
    text-decoration: none;
    cursor: pointer;
    box-sizing: border-box;
    transition: all 0.3s ease;
    margin-top: 20px;
}

.res-button:hover {
    background-color: #5E96CF;
    color: white;
}

/* Адаптация для средних экранов */


/* Адаптация для планшетов */

/* Адаптация для мобильных */

/* Адаптация для маленьких мобильных */

/* Секция когда обратиться в клинику */
.contact-clinic-section {
    padding: 50px 0 0 0;
    background: #fff;
}

.contact-clinic-content {
    display: flex;
    gap: 60px;
    align-items: center;
}

.contact-clinic-image {
    flex: 0 0 620px;
}

.contact-clinic-image img {
    width: 100%;
    height: auto;
    max-height: 410px;
    object-fit: cover;
    border-radius: 5px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
}

.contact-clinic-text {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 25px;
}

.contact-clinic-title {
    font-family: 'Montserrat', sans-serif;
    font-size: 32px;
    font-weight: 700;
    line-height: 40px;
    margin: 0;
}

.contact-clinic-title .blue-text {
    color: rgba(94, 150, 207, 1);
}

.contact-clinic-title .gray-text {
    color: rgba(102, 102, 102, 1);
}

.contact-clinic-description {
    font-family: 'Montserrat', sans-serif;
    font-size: 16px;
    font-weight: 500;
    line-height: 20px;
    color: rgba(102, 102, 102, 1);
    margin: 0;
}

.contact-clinic-description p {
    margin: 0 0 16px 0;
}

.contact-clinic-description p:last-child {
    margin-bottom: 0;
}

.contact-clinic-btn {
    align-self: flex-start;
    width: 520px;
    height: 46px;
    border-radius: 5px;
    background: rgba(167, 201, 85, 1);
    border: none;
    font-family: 'Montserrat', sans-serif;
    font-size: 16px;
    font-weight: 700;
    line-height: 20px;
    color: rgba(255, 255, 255, 1);
    cursor: pointer;
    transition: all 0.3s ease;
}

.contact-clinic-btn:hover {
    background: rgba(147, 181, 65, 1);
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(167, 201, 85, 0.4);
}

/* Адаптация для средних экранов */


/* Адаптация для планшетов */

/* Адаптация для мобильных */

/* Адаптация для маленьких мобильных */

/* Секция основные направления */
.services-section-wrapper {
    padding: 24px 0 100px 0;
    background: #fff;
}

.services-main-title {
    font-family: 'Montserrat', sans-serif;
    font-size: 64px;
    font-weight: 700;
    line-height: 78px;
    margin-bottom: 60px;
    text-align: left;
}

.services-main-title .blue-text {
    color: rgba(94, 150, 207, 1);
}

.services-main-title .gray-text {
    color: rgba(102, 102, 102, 1);
}

/* Основной контейнер карточек */
.services-section {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 25px;
    grid-auto-rows: 1fr;
}

/* Карточка сервиса */
.service-card {
    position: relative;
    background: white;
    border: 1px solid rgba(102, 102, 102, 1);
    border-radius: 5px;
    padding: 24px;
    min-height: 300px;
    display: flex;
    flex-direction: column;
    transition: all 0.3s ease;
    height: 100%;
}

.service-card:hover {
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
    transform: translateY(-2px);
}

/* Иконка карточки */
.services-section .card-icon {
    position: absolute;
    width: 66px;
    height: 66px;
    top: 24px;
    left: 24px;
    flex-shrink: 0;
}

.services-section .card-icon svg {
    width: 100%;
    height: 100%;
}

.services-section .card-icon-image {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 70%;
    height: 70%;
    object-fit: contain;
    z-index: 1;
}

/* Цветной акцент */
.color-accent {
    position: absolute;
    width: 4px;
    height: 54px;
    left: 0;
    top: 20px;
    border-radius: 0 2px 2px 0;
}

.color-accent.blue {
    background: rgba(94, 150, 207, 1);
}

.color-accent.green {
    background: rgba(167, 201, 85, 1);
}

/* Заголовок карточки */
.services-section .card-title {
    color: rgba(102, 102, 102, 1);
    font-size: 24px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    line-height: 1.3;
    margin: 0 0 12px 0;
    padding-left: 80px;
    min-height: 66px;
    display: flex;
    align-items: flex-start;
}

/* Текст карточки */
.card-text {
    color: rgba(102, 102, 102, 1);
    font-size: 14px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    line-height: 1.5;
    margin: 0;
    flex-grow: 1;
}

.card-text strong {
    font-weight: 700;
}

/* Адаптация для средних экранов */


/* Адаптация для планшетов */

/* Адаптация для мобильных */

/* Адаптация для маленьких мобильных */

/* Секция отзывов */
.reviews-section-wrapper {
    padding: 100px 0;
    background: #fff;
}

.reviews-section {
    max-width: 100%;
}

.reviews-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 40px;
    flex-wrap: wrap;
    gap: 20px;
}

.reviews-title {
    font-family: 'Montserrat', sans-serif;
    font-size: 64px;
    font-weight: 700;
    line-height: 1.15;
    margin: 0;
}

.text-blue {
    color: #5E96CF;
}

.text-gray {
    color: #666666;
}

.reviews-counter {
    color: #666666;
    font-size: 24px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    line-height: 1.15;
}

/* Обертка текстовых отзывов */
.reviews-text-wrapper {
    position: relative;
    margin-bottom: 24px;
    overflow: hidden;
}

.reviews-text-carousel {
    display: flex;
    gap: 36px;
    transition: transform 0.5s ease;
}

/* Карточка отзыва */
.review-card {
    flex: 0 0 calc(50% - 18px);
    background: white;
    border: 1px solid #666666;
    border-radius: 2px;
    padding: 24px;
    min-height: 337px;
    display: flex;
    flex-direction: column;
}

.review-header {
    display: flex;
    align-items: center;
    gap: 20px;
    margin-bottom: 38px;
    flex-wrap: wrap;
}

.reviewer-name {
    color: #666666;
    font-size: 20px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    line-height: 1.15;
    margin: 0;
}

.review-line {
    width: 225px;
    height: 1px;
    background: #666666;
    flex-shrink: 0;
}

.review-date {
    color: #666666;
    font-size: 20px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 300;
    line-height: 1.15;
    margin-left: auto;
}

.review-text {
    color: #666666;
    font-size: 20px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 300;
    line-height: 1.4;
    margin: 0;
    flex-grow: 1;
}

.read-more {
    color: #666666;
    font-size: 20px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 300;
    text-decoration: underline;
    margin-top: 15px;
    align-self: flex-start;
    cursor: pointer;
    transition: color 0.3s;
}

.read-more:hover {
    color: #5E96CF;
}

/* Обертка медиа отзывов */
.reviews-media-wrapper {
    position: relative;
    overflow: hidden;
}

.reviews-media-carousel {
    display: flex;
    gap: 36px;
    transition: transform 0.5s ease;
}

/* Медиа карточка */
.review-media-card {
    flex: 0 0 calc(50% - 18px);
    position: relative;
    border-radius: 2px;
    overflow: hidden;
    aspect-ratio: 696 / 457;
}

.review-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.media-overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(180deg, rgba(102, 102, 102, 0) 0%, rgba(94, 150, 207, 0.70) 83%);
    pointer-events: none;
}

.play-button {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: transparent;
    border: none;
    cursor: pointer;
    transition: transform 0.3s;
    padding: 0;
}

.play-button:hover {
    transform: translate(-50%, -50%) scale(1.1);
}

/* Кнопки управления каруселью отзывов */
.reviews-text-controls,
.reviews-media-controls {
    margin-top: 20px;
}

/* Адаптация для планшетов */

/* Адаптация для мобильных */

/* Секция косметологии */
.cosmetics-section-wrapper {
    padding: 0;
    background: #fff;
}

.cosmetics-section {
    position: relative;
    max-width: 1416px;
    width: 1416px;
    height: 750px;
    overflow: hidden;
    margin: 0 auto;
}

/* Адаптив для экранов меньше 1920px */

/* Фоновое изображение */
.background-image-wrapper {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 650px;
    z-index: 0;
}

.background-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 1;
    border-bottom-right-radius: 5px;
}

/* Сетка услуг */
.services-grid-cosm {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: repeat(2, 216px);
    grid-template-rows: repeat(2, auto);
    gap: 26px;
    padding: 130px 0 0 100px;
}

/* Карточка услуги */
.service-item-cosm {
    width: 216px;
    height: 216px;
    background: rgba(162, 162, 162, 0.80);
    border-radius: 5px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 26px;
    padding: 22px;
    transition: all 0.3s ease;
    cursor: pointer;
}

.service-item-cosm:hover {
    background: rgba(162, 162, 162, 0.95);
    transform: translateY(-5px);
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2);
}

/* Иконка услуги */
.service-icon-cosm {
    max-width: 58px;
    max-height: 58px;
    object-fit: contain;
}

/* Название услуги */
.service-name-cosm {
    color: white;
    font-size: 17px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    line-height: 1.2;
    text-align: center;
    margin: 0;
}

/* Нижний баннер с наградой */
.award-banner {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 96px;
    background: #A2A2A2;
    border-radius: 5px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 36px;
    gap: 36px;
    z-index: 2;
}

.alma-logo {
    height: 90px;
    width: auto;
    object-fit: contain;
}

.award-text {
    color: white;
    font-size: 22px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    line-height: 1.2;
    margin: 0;
    text-align: center;
}

.award-link {
    color: white;
    font-size: 22px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    text-decoration: underline;
    line-height: 1;
    white-space: nowrap;
    transition: opacity 0.3s;
}

.award-link:hover {
    opacity: 0.8;
}

/* Адаптив для планшетов */

/* Адаптив для мобильных */

/* Адаптив для маленьких экранов */

/* Секция современная косметология */
.modern-cosmetics-wrapper {
    padding: 60px 0;
    background: #fff;
}

.modern-cosmetics-section {
    display: grid;
    grid-template-columns: 580px 1fr;
    gap: 28px;
    align-items: start;
    min-height: 500px;
    max-width: 1416px;
    width: 1416px;
    margin-left: 252px;
    margin-right: auto;
}

/* Адаптив для экранов меньше 1920px */

/* Левая часть - изображение */
.cosmetics-image-wrapper {
    width: 100%;
    margin-top: 20px;
}

.cosmetics-image {
    width: 100%;
    height: auto;
    max-height: 480px;
    object-fit: cover;
    border-radius: 5px;
    display: block;
}

/* Правая часть - контент */
.cosmetics-content {
    position: relative;
    padding-left: 25px;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

/* Синяя линия-акцент */
.content-accent-line {
    position: absolute;
    left: 0;
    top: 0;
    width: 5px;
    height: 350px;
    background: #5E96CF;
    border-radius: 2px;
}

/* Заголовок */
.cosmetics-title {
    margin: 0;
    font-family: 'Montserrat', sans-serif;
    font-size: 50px;
    font-weight: 700;
    text-transform: uppercase;
    line-height: 1;
    margin-bottom: 16px;
}

.title-gray {
    color: #A2A2A2;
}

.title-blue {
    color: #5E96CF;
}

/* Описание */
.cosmetics-description {
    display: flex;
    flex-direction: column;
    justify-content: center;
    color: #666666;
    font-size: 17px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    line-height: 1.3;
    max-width: 620px;
}

.cosmetics-description p {
    margin: 0 0 10px 0;
}

.cosmetics-description br {
    display: block;
    content: "";
    margin: 10px 0;
}

/* Адаптив для средних экранов */

/* Адаптив для планшетов */

/* Адаптив для мобильных */

/* Адаптив для маленьких экранов */

/* Секция акций косметологии */
.promotions-section-wrapper {
    padding: 50px 0;
    background: #fff;
}

/* Карточка акции */
.promotion-card {
    position: relative;
    display: flex;
    flex-direction: column;
    border-radius: 5px;
    overflow: visible;
    height: 560px;
}

/* Обёртка изображения */
.promotion-image-wrapper {
    position: relative;
    width: 100%;
    height: 280px;
    overflow: visible;
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
}

.promotion-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
}

/* Бейдж со скидкой */
.discount-badge {
    position: absolute;
    bottom: -10px;
    right: 0;
    width: 180px;
    height: 48px;
    background: #5E96CF;
    border-top-right-radius: 5px;
    border-bottom-right-radius: 5px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 18px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    line-height: 1;
    z-index: 10;
}

/* Контент карточки */
.promotion-content {
    position: relative;
    flex: 1;
    background: #E0E0DC;
    padding: 24px;
    display: flex;
    flex-direction: column;
    gap: 9px;
    z-index: 1;
}

/* Акцентная линия - удалена */
.promotion-accent-line {
    display: none;
}

/* Дата акции */
.promotion-date {
    color: black;
    font-size: 12px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 300;
    line-height: 1;
    margin: 0;
}

/* Заголовок акции */
.promotion-title {
    color: black;
    font-size: 19px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    line-height: 1.1;
    margin: 0;
}

/* Подзаголовок */
.promotion-subtitle {
    color: black;
    font-size: 19px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 300;
    line-height: 1.1;
    margin: 0;
}

/* Цены */
.promotion-price {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-top: auto;
}

.old-price {
    color: black;
    font-size: 17px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 300;
    line-height: 1;
    text-decoration: line-through;
}

.new-price {
    color: black;
    font-size: 26px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    line-height: 1;
}

.new-price.free {
    color: #5E96CF;
}

/* Ссылка на подробности */
.promotion-details {
    color: black;
    font-size: 12px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 300;
    text-decoration: underline;
    line-height: 1;
    transition: color 0.3s;
}

.promotion-details:hover {
    color: #5E96CF;
}

/* Кнопка записи */
.promotion-button {
    width: 100%;
    height: 44px;
    background: #5E96CF;
    border: none;
    border-radius: 5px;
    color: white;
    font-size: 17px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    line-height: 1;
    cursor: pointer;
    transition: all 0.3s ease;
}

.promotion-button:hover {
    background: #4a7aad;
    transform: translateY(-2px);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
}

.promotion-button:active {
    transform: translateY(0);
}

/* Адаптив для планшетов */

/* Адаптив для мобильных */

/* Адаптив для маленьких экранов */

/* Секция аппаратная косметология */
.apparatus-cosmetics-wrapper {
    padding: 60px 0 0 0;
    background: #fff;
}

.apparatus-cosmetics-section {
    max-width: 1416px;
    width: 1416px;
    margin-left: 252px;
    margin-right: auto;
}

/* Адаптив для экранов меньше 1920px */

/* Заголовок секции */
.apparatus-title {
    width: 100%;
    margin: 0 0 28px 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    font-family: 'Montserrat', sans-serif;
    font-size: 64px;
    font-weight: 700;
    line-height: 1.1;
}

/* Блок описания */
.apparatus-description-block {
    position: relative;
    display: grid;
    grid-template-columns: 1fr 576px;
    gap: 28px;
    margin-bottom: 40px;
    align-items: center;
}

.description-accent-line {
    position: absolute;
    left: 0;
    top: 0;
    width: 5px;
    height: 337px;
    background: #5E96CF;
}

.apparatus-description {
    padding-left: 28px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 16px;
}

.apparatus-description p {
    color: #666666;
    font-size: 19px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    line-height: 1.2;
    margin: 0;
}

.description-image {
    width: 100%;
    height: auto;
    max-height: 337px;
    object-fit: cover;
    border-radius: 5px;
}

/* Сетка процедур */
.procedures-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}

/* Карточка процедуры */
.procedure-card {
    position: relative;
    border-radius: 5px;
    overflow: hidden;
    transition: transform 0.3s ease;
    cursor: pointer;
}

.procedure-card:hover {
    transform: translateY(-5px);
}

/* Обёртка изображения */
.procedure-image-wrapper {
    position: relative;
    width: 100%;
    aspect-ratio: 456 / 337;
    overflow: hidden;
}

.procedure-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    border-radius: 5px;
    transition: transform 0.3s ease;
}

.procedure-card:hover .procedure-image {
    transform: scale(1.05);
}

/* Градиент поверх изображения */
.image-overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 168px;
    background: linear-gradient(180deg, rgba(29, 87, 148, 0) 0%, #5E96CF 100%);
    border-radius: 5px;
    pointer-events: none;
}

/* Бейдж с ценой */
.procedure-badge {
    position: absolute;
    top: 29px;
    left: 0;
    width: 216px;
    height: 38px;
    background: #5E96CF;
    border-top-left-radius: 5px;
    border-bottom-left-radius: 5px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 14px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    line-height: 1;
    z-index: 2;
    transition: background 0.3s ease;
}

.procedure-card:hover .procedure-badge {
    background: #4a7aad;
}

/* Информация о процедуре */
.procedure-info {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 20px;
    z-index: 1;
}

.procedure-name {
    color: white;
    font-size: 20px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    line-height: 1.1;
    margin: 0 0 8px 0;
}

.procedure-device {
    color: white;
    font-size: 14px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 300;
    line-height: 1;
    margin: 0;
}

/* Адаптив для средних экранов */

/* Адаптив для планшетов */

/* Адаптив для мобильных */

/* Адаптив для маленьких экранов */

/* ========================================
   Блок консультация врача-косметолога
   ======================================== */

/* Основной контейнер */
.consultation-section {
    max-width: 1416px;
    width: 1416px;
    margin-left: 252px;
    margin-right: auto;
    padding: 40px 24px;
}

/* Адаптив для экранов меньше 1920px */

/* Заголовок секции */
.consultation-title {
    width: 100%;
    max-width: 936px;
    margin: 0 0 32px 0;
    font-family: 'Montserrat', sans-serif;
    font-size: 82px;
    font-weight: 700;
    line-height: 1.05;
}

.title-gray {
    color: #A2A2A2;
}

/* Основной контент */
.consultation-content {
    display: grid;
    grid-template-columns: 690px 726px;
    gap: 32px;
    margin-bottom: 40px;
    align-items: start;
}

/* Текстовая часть */
.consultation-text {
    padding: 0 22px;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.consultation-text p {
    color: #666666;
    font-size: 20px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    line-height: 1.2;
    margin: 0;
}

/* Изображение */
.consultation-image-wrapper {
    position: relative;
    width: 100%;
    max-width: 822px;
    height: 548px;
    border-radius: 5px;
    overflow: hidden;
    margin-left: auto;
}

.consultation-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 5px;
}

.image-gradient {
    position: absolute;
    top: 0;
    right: 0;
    width: 742px;
    height: 100%;
    background: linear-gradient(90deg, #E0E0DC 0%, rgba(228, 228, 226, 0) 100%);
    pointer-events: none;
}

/* Секция проблем */
.problems-section {
    margin-bottom: 40px;
}

.problems-title {
    color: #666666;
    font-size: 30px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    line-height: 1.05;
    margin: 0 0 50px 22px;
}

/* Список проблем */
.problems-list {
    display: grid;
    grid-template-columns: repeat(4, 240px);
    gap: 32px;
    padding: 0 22px;
    justify-content: space-between;
}

/* Элемент проблемы */
.problem-item {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
}

.problem-icon {
    width: 64px;
    height: 65px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.problem-icon svg {
    width: 100%;
    height: 100%;
}

.problem-name {
    color: #666666;
    font-size: 18px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    line-height: 1.05;
    margin: 0;
}

/* Призыв к действию */
.consultation-cta {
    width: 100%;
    height: 120px;
    background: #5E96CF;
    border-radius: 5px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 32px;
    gap: 32px;
}

.cta-button {
    width: 456px;
    height: 48px;
    background: transparent;
    border: 2px solid white;
    border-radius: 5px;
    color: white;
    font-size: 24px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    line-height: 1.05;
    cursor: pointer;
    transition: all 0.35s ease;
}

.cta-button:hover {
    background: white;
    color: #5E96CF;
    transform: translateY(-2px);
    box-shadow: 0 6px 10px rgba(0, 0, 0, 0.2);
}

.cta-button:active {
    transform: translateY(0);
}

.cta-text {
    color: white;
    font-size: 20px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    line-height: 1.25;
    margin: 0;
    flex: 1;
    text-align: center;
}

/* Адаптив для планшетов */

/* Адаптив для мобильных */

/* Адаптив для маленьких экранов */

/* ========================================
   Блок специалисты
   ======================================== */

.specialists-section {
    padding: 45px 0 0 0;
    background: #fff;
}

.specialists-carousel-wrapper {
    position: relative;
    width: 1440px;
    height: 813px;
    margin: 0 auto;
    overflow: hidden;
}

.specialists-carousel {
    display: flex;
    gap: 37px;
    transition: transform 0.5s ease;
    will-change: transform;
}

/* Карточка специалиста */
.specialist-card {
    position: relative;
    width: 335px;
    min-width: 335px;
    flex-shrink: 0;
}

.specialist-image {
    width: 335px;
    height: 457px;
    object-fit: cover;
    border-radius: 5px;
    display: block;
}

.specialist-lastname {
    margin: 24px 0 0 0;
    color: #5E96CF;
    font-size: 32px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    line-height: 32px;
}

.specialist-fullname {
    margin: 5px 0 0 0;
    color: #666666;
    font-size: 24px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    line-height: 24px;
}

.specialist-blue-line {
    width: 80px;
    height: 3px;
    background: #5E96CF;
    margin: 21px 0;
}

.specialist-title {
    width: 335px;
    color: #666666;
    font-size: 18px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    line-height: 18px;
    margin: 0;
}

.specialist-separator {
    width: 96px;
    border: none;
    height: 0;
    border-top: 1px solid #666666;
    margin: 15px auto;
}

.specialist-description {
    width: 335px;
    color: #666666;
    font-size: 18px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    line-height: 18px;
    margin: 0 0 15px 0;
}

.specialist-book-button {
    width: 335px;
    height: 48px;
    background: #5E96CF;
    border: none;
    border-radius: 5px;
    color: white;
    font-size: 24px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    line-height: 24px;
    cursor: pointer;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
}

.specialist-book-button:hover {
    background: #4a7fb8;
    transform: translateY(-2px);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
}

.specialist-book-button:active {
    transform: translateY(0);
}

/* Стрелки навигации */
.specialists-arrow {
    position: absolute;
    top: 228px;
    width: 24px;
    height: 36px;
    background: white;
    border: 1px solid #666666;
    border-radius: 2px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 10;
    transition: all 0.3s ease;
}

.specialists-arrow:hover {
    background: #f5f5f5;
    transform: scale(1.1);
}

.specialists-arrow-left {
    left: 24px;
}

.specialists-arrow-right {
    right: 24px;
}

.specialists-arrow svg {
    width: 100%;
    height: 100%;
}

/* Адаптив для планшетов */

/* Адаптив для мобильных */

/* Адаптив для маленьких экранов */

/* ========================================
   Блок инъекционная косметология
   ======================================== */

/* Секция инъекционной косметологии */
.injection-cosmetology-section {
    width: 1416px;
    margin: 0 auto;
    padding: 12px 0 50px 0;
    position: relative;
}

.section-title {
    font-family: 'Montserrat', sans-serif;
    font-size: 82px;
    font-weight: 700;
    line-height: 82px;
    color: #A2A2A2;
    margin: 0 0 24px 0;
    padding: 0;
}

.content-wrapper {
    display: flex;
    gap: 24px;
    position: relative;
    align-items: flex-start;
}

.blue-accent-line {
    width: 5px;
    min-height: 337px;
    background: #5E96CF;
    flex-shrink: 0;
}

.text-content {
    width: 784px;
    padding-left: 27px;
    flex-shrink: 0;
}

.text-content p {
    font-family: 'Montserrat', sans-serif;
    font-size: 24px;
    font-weight: 500;
    line-height: 26.4px;
    color: #666666;
    margin: 0 0 24px 0;
}

.text-content p:last-child {
    margin-bottom: 0;
}

.image-wrapper {
    width: 576px;
    height: 337px;
    flex-shrink: 0;
    border-radius: 5px;
    overflow: hidden;
}

.image-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* Сетка процедур */
.injection-procedures-grid {
    display: grid;
    grid-template-columns: repeat(3, 456px);
    gap: 24px;
    justify-content: space-between;
    margin-top: 50px;
}

/* Карточка процедуры */
.injection-card {
    position: relative;
    border-radius: 5px;
    overflow: hidden;
    transition: transform 0.3s ease;
    cursor: pointer;
}

.injection-card:hover {
    transform: translateY(-5px);
}

/* Обёртка изображения */
.injection-image-wrapper {
    position: relative;
    width: 100%;
    aspect-ratio: 456 / 337;
    overflow: hidden;
}

.injection-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    border-radius: 5px;
    transition: transform 0.3s ease;
}

.injection-card:hover .injection-image {
    transform: scale(1.05);
}

/* Градиент поверх изображения */
.image-overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 168px;
    background: linear-gradient(180deg, rgba(29, 87, 148, 0) 0%, #5E96CF 100%);
    border-radius: 5px;
    pointer-events: none;
}

/* Бейдж с ценой */
.injection-badge {
    position: absolute;
    top: 29px;
    left: 0;
    width: 216px;
    height: 38px;
    background: #5E96CF;
    border-top-left-radius: 5px;
    border-bottom-left-radius: 5px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 16px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    line-height: 1;
    z-index: 2;
    transition: background 0.3s ease;
}

.injection-card:hover .injection-badge {
    background: #4a7aad;
}

/* Информация о процедуре */
.injection-info {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 22px;
    z-index: 1;
}

.injection-name {
    color: white;
    font-size: 24px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    line-height: 1.05;
    margin: 0 0 10px 0;
}

.injection-device {
    color: white;
    font-size: 16px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 300;
    line-height: 1.05;
    margin: 0;
}

/* Адаптив для планшетов */

/* Адаптив для мобильных */

/* Адаптив для маленьких экранов */

/* ========================================
   Блок эстетическая косметология
   ======================================== */

/* Секция эстетической косметологии */
.aesthetic-cosmetology-section {
    width: 1416px;
    max-width: 100%;
    margin: 23px auto 60px auto;
    padding: 0;
    box-sizing: border-box;
}

.aesthetic-cosmetology-section * {
    box-sizing: border-box;
}

/* Заголовок */
.aesthetic-cosmetology-section .section-title {
    font-family: 'Montserrat', sans-serif;
    font-size: 82px;
    font-weight: 700;
    line-height: 82px;
    margin: 0 0 24px 0;
    padding: 0;
}

.aesthetic-cosmetology-section .title-blue {
    color: #5E96CF;
}

.aesthetic-cosmetology-section .title-gray {
    color: #A2A2A2;
}

/* Верхний контент блок */
.aesthetic-cosmetology-section .content-wrapper {
    display: flex;
    gap: 24px;
    margin-bottom: 24px;
    align-items: flex-start;
}

.aesthetic-cosmetology-section .blue-accent-line {
    width: 5px;
    min-height: 337px;
    background: #5E96CF;
    flex-shrink: 0;
    border-radius: 0;
}

.aesthetic-cosmetology-section .text-content {
    width: 784px;
    height: 338px;
    padding-left: 27px;
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
}

.aesthetic-cosmetology-section .text-content p {
    font-family: 'Montserrat', sans-serif;
    font-size: 24px;
    font-weight: 500;
    line-height: 29px;
    color: rgba(102, 102, 102, 1);
    margin: 0 0 24px 0;
    padding: 0;
    text-align: left;
    letter-spacing: 0%;
}

.aesthetic-cosmetology-section .text-content p:last-child {
    margin-bottom: 0;
}

.aesthetic-cosmetology-section .main-image {
    width: 575px;
    height: 337px;
    border-radius: 5px;
    overflow: hidden;
    flex-shrink: 0;
}

.aesthetic-cosmetology-section .main-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    border: none;
}

/* Сетка услуг */
.aesthetic-cosmetology-section .services-grid {
    display: grid;
    grid-template-columns: repeat(3, 456px);
    gap: 24px;
    margin: 0;
    padding: 0;
}

/* Карточка услуги */
.aesthetic-cosmetology-section .service-card {
    position: relative;
    width: 456px !important;
    height: 337px !important;
    border-radius: 5px;
    overflow: hidden;
    cursor: pointer;
    border: none !important;
    box-shadow: none !important;
    background: transparent !important;
    padding: 0 !important;
    min-height: auto !important;
    display: block !important;
    flex-direction: initial !important;
    transform: none !important;
}

.aesthetic-cosmetology-section .service-card img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
    border: none !important;
    border-radius: 5px !important;
    max-width: none !important;
    max-height: none !important;
}

/* Градиентный оверлей */
.aesthetic-cosmetology-section .card-overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 168px;
    background: linear-gradient(180deg, rgba(94, 150, 207, 0) 0%, rgba(94, 150, 207, 1) 100%);
    pointer-events: none;
    z-index: 1;
}

/* Кнопка с ценой */
.aesthetic-cosmetology-section .price-btn {
    position: absolute;
    top: 29px;
    right: 0;
    width: 216px;
    height: 38px;
    background: #5E96CF;
    border: none;
    border-top-left-radius: 5px;
    border-bottom-left-radius: 5px;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    font-family: 'Montserrat', sans-serif;
    font-size: 16px;
    font-weight: 700;
    line-height: 16px;
    color: white;
    cursor: pointer;
    transition: background 0.3s ease;
    z-index: 3;
    padding: 0;
    box-shadow: none;
    outline: none;
}

.aesthetic-cosmetology-section .price-btn:hover {
    background: #4a7ab8;
}

/* Информация о услуге */
.aesthetic-cosmetology-section .card-info {
    position: absolute;
    bottom: 24px;
    left: 22px;
    right: 22px;
    z-index: 2;
}

.aesthetic-cosmetology-section .card-info h3 {
    font-family: 'Montserrat', sans-serif;
    font-size: 24px;
    font-weight: 700;
    line-height: 24px;
    color: white;
    margin: 0 0 6px 0;
    padding: 0;
}

.aesthetic-cosmetology-section .card-info p {
    font-family: 'Montserrat', sans-serif;
    font-size: 16px;
    font-weight: 300;
    line-height: 16px;
    color: white;
    margin: 0;
    padding: 0;
}

/* Старые медиа-запросы удалены */

/* ========================================
   Блок оборудование
   ======================================== */

/* Основной контейнер */
.equipment-section {
    width: 1416px;
    margin: 80px auto;
    padding: 0;
}

.equipment-section * {
    box-sizing: border-box;
}

/* Главный заголовок */
.main-heading {
    font-family: 'Montserrat', sans-serif;
    font-size: 82px;
    font-weight: 700;
    line-height: 82px;
    margin: 0 0 40px 0;
    padding: 0;
}

.heading-blue {
    color: #5E96CF;
}

.heading-gray {
    color: #A2A2A2;
}

/* Блок оборудования */
.equipment-item {
    margin-bottom: 24px;
    position: relative;
}

/* Левый layout (линия слева) */
.equipment-content-left {
    display: flex;
    align-items: flex-start;
    gap: 27px;
    margin-bottom: 24px;
    min-height: 576px;
}

.blue-line-left {
    width: 5px;
    min-height: 576px;
    background: #5E96CF;
    flex-shrink: 0;
}

.text-block-left {
    flex: 1;
    max-width: 784px;
}

.equipment-image-right {
    width: 598.57px;
    height: 576px;
    flex-shrink: 0;
}

.equipment-image-right img {
    width: 100%;
    height: 100%;
    display: block;
    border: none;
    object-fit: cover;
}

/* Правый layout (линия справа) */
.equipment-content-right {
    display: flex;
    align-items: flex-start;
    gap: 27px;
    margin-bottom: 24px;
    min-height: 576px;
    justify-content: flex-end;
}

.equipment-image-left {
    width: 598.57px;
    height: 576px;
    flex-shrink: 0;
}

.equipment-image-left img {
    width: 100%;
    height: 100%;
    display: block;
    border: none;
    object-fit: cover;
}

.text-block-right {
    flex: 1;
    max-width: 784px;
    text-align: right;
}

.blue-line-right {
    width: 5px;
    min-height: 576px;
    background: #5E96CF;
    flex-shrink: 0;
}

/* Название оборудования */
.equipment-name {
    font-family: 'Montserrat', sans-serif;
    font-size: 48px;
    font-weight: 700;
    line-height: 57.6px;
    color: #A2A2A2;
    margin: 0 0 20px 0;
    padding: 0;
}

/* Описание */
.equipment-description {
    font-family: 'Montserrat', sans-serif;
    font-size: 24px;
    font-weight: 500;
    line-height: 28.8px;
    color: #666666;
    margin: 0;
    padding: 0;
}

/* Синяя полоса с преимуществами */
.benefits-bar {
    width: 1415px;
    min-height: 216px;
    background: #5E96CF;
    border-radius: 5px;
    padding: 30px 40px;
    color: white;
    margin-bottom: 24px;
}

.benefits-bar.full-width {
    width: 100%;
}

/* Одна колонка */
.benefits-list-full {
    list-style: none;
    padding: 0;
    margin: 0;
}

.benefits-list-full li {
    font-family: 'Montserrat', sans-serif;
    font-size: 18px;
    font-weight: 500;
    line-height: 21.6px;
    margin-bottom: 8px;
}

.benefits-list-full li:last-child {
    margin-bottom: 0;
}

/* Две колонки */
.benefits-bar.two-cols {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
}

.benefits-bar.split {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
}

.benefits-column ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.benefits-column ul li {
    font-family: 'Montserrat', sans-serif;
    font-size: 18px;
    font-weight: 500;
    line-height: 21.6px;
    margin-bottom: 8px;
}

.benefits-column p {
    font-family: 'Montserrat', sans-serif;
    font-size: 18px;
    font-weight: 500;
    line-height: 18px;
    margin: 0 0 15px 0;
}

.benefits-column p:last-child {
    margin-bottom: 0;
}

/* Три колонки */
.benefits-bar.three-cols {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 40px;
}

.benefits-bar.three-cols .benefits-column p {
    font-size: 18px;
    line-height: 21.6px;
    margin-bottom: 10px;
}

/* Старые классы для совместимости */
.equipment-title {
    font-family: 'Montserrat', sans-serif;
    font-size: 82px;
    font-weight: 700;
    line-height: 82px;
    margin: 0 0 40px 0;
    padding: 0;
}

.title-blue {
    color: #5E96CF;
}

.title-gray {
    color: #A2A2A2;
}

.equipment-block {
    margin-bottom: 24px;
}

.equipment-text {
    max-width: 784px;
}

.equipment-benefits {
    width: 100%;
    background: #5E96CF;
    border-radius: 5px;
    padding: 30px 40px;
    color: white;
}

.equipment-benefits ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.equipment-benefits li {
    font-family: 'Montserrat', sans-serif;
    font-size: 18px;
    font-weight: 500;
    line-height: 21.6px;
    margin-bottom: 8px;
}

.equipment-benefits.two-columns {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
}

.equipment-benefits.three-columns {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 40px;
}

/* ========================================
   УЗИ ДОПЛЕРОГРАФИЯ - СЕКЦИЯ
   ======================================== */

/* Основной контейнер */
.uzi-doppler-section {
    position: relative;
    max-width: 1200px;
    width: 100%;
    height: 698px;
    margin: 0 auto;
    overflow: hidden;
}

/* Фоновые изображения */
.background-images {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
}

.bg-image {
    position: absolute;
    width: 1047px;
    height: 100%;
    object-fit: cover;
}

.bg-image-1 {
    right: 0;
    top: 0;
}

.bg-image-2 {
    left: 0;
    top: 0;
    opacity: 0.3;
}

/* Градиентные оверлеи */
.gradient-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
}

.gradient-white {
    background: linear-gradient(90deg, white 28%, rgba(217, 217, 217, 0) 100%);
    z-index: 1;
}

.gradient-blue {
    background: linear-gradient(90deg, #1D5794 0%, rgba(217, 217, 217, 0) 100%);
    width: 1055px;
    z-index: 2;
}

/* Контент */
.uzi-content {
    position: relative;
    z-index: 3;
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100%;
    padding: 120px 120px;
    gap: 52px;
}

/* Метка процедуры */
.procedure-label {
    color: white;
    font-size: 24px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    text-transform: capitalize;
    line-height: 1;
    margin: 0;
}

/* Заголовок */
.uzi-title {
    max-width: 853px;
    margin: 0;
    font-family: 'Montserrat', sans-serif;
    font-size: 76px;
    line-height: 1.1;
    color: white;
}

.title-bold {
    font-weight: 700;
}

.title-regular {
    font-weight: 400;
}

/* Кнопка */
.uzi-button {
    width: 100%;
    max-width: 456px;
    height: 48px;
    background: #A7C955;
    border: none;
    border-radius: 5px;
    color: white;
    font-size: 24px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    line-height: 1;
    cursor: pointer;
    transition: all 0.3s ease;
}

.uzi-button:hover {
    background: #98b84a;
    transform: translateY(-2px);
    box-shadow: 0 6px 12px rgba(0, 0, 0, 0.3);
}

.uzi-button:active {
    transform: translateY(0);
}

/* Адаптив для ноутбуков 1600px */

/* Адаптив для ноутбуков 1440px */

/* Адаптив для ноутбуков 1280px */

/* Адаптив для планшетов */

/* Адаптив для мобильных */

/* Адаптив для маленьких экранов */

/* ========================================
   РЕЗУЛЬТАТЫ ИССЛЕДОВАНИЯ - СЕКЦИЯ УЗИ
   ======================================== */

/* Основной контейнер */
.research-results-section {
    width: 100%;
    padding: 23px 0 80px 0;
}

/* Верхний блок */
.research-intro {
    display: grid;
    grid-template-columns: 576px 1fr;
    gap: 25px;
    align-items: start;
    margin-bottom: 80px;
}

.intro-image-wrapper {
    width: 100%;
    aspect-ratio: 576 / 337;
    border-radius: 3px;
    overflow: hidden;
}

.intro-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 3px;
    transition: transform 0.5s ease;
}

.intro-image:hover {
    transform: scale(1.05);
}

.intro-description {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.intro-description p {
    color: #666666;
    font-size: 22px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    line-height: 1.15;
    margin: 0;
}

/* Заголовок секции */
.results-main-title {
    width: 100%;
    margin: 0 0 40px 0;
    font-family: 'Montserrat', sans-serif;
    font-size: 82px;
    font-weight: 700;
    line-height: 1;
}

/* Основной контент */
.results-main-content {
    position: relative;
    display: grid;
    grid-template-columns: 1fr 456px;
    gap: 80px;
    align-items: start;
}

/* Акцентная линия */
.content-accent-line {
    position: absolute;
    left: 0;
    top: 0;
    width: 5px;
    height: 100%;
    background: #A7C955;
}

/* Возможности метода */
.method-capabilities {
    padding-left: 31px;
}

.capabilities-title {
    color: #666666;
    font-size: 24px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    line-height: 1.15;
    margin: 0 0 24px 0;
}

.capabilities-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 18px;
}

.capabilities-list li {
    color: #666666;
    font-size: 24px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    line-height: 1.15;
    padding-left: 20px;
    position: relative;
}

.capabilities-list li::before {
    content: '';
    position: absolute;
    left: 0;
    top: 8px;
    width: 6px;
    height: 6px;
    background: #A7C955;
    border-radius: 50%;
}

/* Карточка акции УЗИ */
.uzi-promotion-wrapper {
    width: 100%;
}

.uzi-promotion-card {
    position: relative;
    display: flex;
    flex-direction: column;
    background: #E0E0DC;
    border-radius: 5px;
    overflow: visible;
    height: 578px;
}

.uzi-promotion-image-wrapper {
    position: relative;
    width: 100%;
    height: 337px;
    overflow: visible;
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
}

.uzi-promotion-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.uzi-discount-badge {
    position: absolute;
    top: 307px;
    left: 0;
    width: 216px;
    height: 54px;
    background: #A7C955;
    border-top-left-radius: 5px;
    border-bottom-left-radius: 5px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 24px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    line-height: 1;
    z-index: 10;
}

/* Информация об акции УЗИ */
.uzi-promotion-info {
    position: relative;
    flex: 1;
    padding: 50px 28px 28px 28px;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.uzi-promotion-accent-line {
    position: absolute;
    top: 25px;
    left: 28px;
    width: 80px;
    height: 3px;
    background: #1D5794;
}

.uzi-promotion-date {
    color: black;
    font-size: 15px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 300;
    line-height: 1;
    margin: 0;
}

.uzi-promotion-title {
    color: black;
    font-size: 26px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    line-height: 1;
    margin: 0;
}

.uzi-promotion-subtitle {
    color: black;
    font-size: 26px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 300;
    line-height: 1;
    margin: 0;
}

.uzi-promotion-price {
    display: flex;
    align-items: center;
    gap: 20px;
    margin-top: auto;
}

.uzi-old-price {
    color: black;
    font-size: 24px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 300;
    line-height: 1;
    text-decoration: line-through;
}

.uzi-new-price {
    color: black;
    font-size: 36px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    line-height: 1;
}

.uzi-promotion-link {
    color: black;
    font-size: 14px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 300;
    text-decoration: underline;
    line-height: 1;
    transition: color 0.3s;
}

.uzi-promotion-link:hover {
    color: #1D5794;
}

/* Адаптив для ноутбуков 1600px */

/* Адаптив для ноутбуков 1440px */

/* Адаптив для ноутбуков 1280px */

/* Адаптив для планшетов */

/* Адаптив для мобильных */

/* Адаптив для маленьких экранов */

/* ========================================
   КАК ПРОХОДИТ ПРОЦЕДУРА - СЕКЦИЯ УЗИ
   ======================================== */

/* Основной контейнер */
.procedure-process-section {
    width: 100%;
    padding: 10px 0 80px 0;
}

/* Заголовок секции */
.procedure-title {
    width: 100%;
    margin: 0 0 18px 0;
    font-family: 'Montserrat', sans-serif;
    font-size: 82px;
    font-weight: 700;
    line-height: 1;
}

/* Видео обёртка */
.procedure-video-wrapper {
    position: relative;
    width: 100%;
    height: 698px;
    border-radius: 5px;
    overflow: hidden;
    margin-bottom: 22px;
    cursor: pointer;
}

.procedure-video-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 5px;
    transition: transform 0.5s ease;
}

.procedure-video-wrapper:hover .procedure-video-image {
    transform: scale(1.02);
}

/* Кнопка Play */
.video-play-button {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 86px;
    height: 86px;
    background: transparent;
    border: none;
    cursor: pointer;
    transition: all 0.3s ease;
    padding: 0;
    z-index: 2;
}

.video-play-button:hover {
    transform: translate(-50%, -50%) scale(1.15);
}

.video-play-button svg {
    width: 100%;
    height: 100%;
    filter: drop-shadow(0 4px 8px rgba(0, 0, 0, 0.3));
}

/* Информационные карточки */
.procedure-info-cards {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 25px;
}

/* Карточка */
.info-card {
    position: relative;
    background: white;
    border: 1px solid #666666;
    border-radius: 5px;
    padding: 30px;
    min-height: 457px;
    display: flex;
    flex-direction: column;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.info-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 16px rgba(0, 0, 0, 0.1);
}

/* Акцентная линия карточки */
.card-accent-line {
    position: absolute;
    top: 0;
    left: 0;
    width: 4px;
    height: 64px;
    border-top-left-radius: 5px;
}

.card-accent-line.blue {
    background: #1D5794;
}

.card-accent-line.green {
    background: #A7C955;
}

/* Заголовок карточки */
.card-title {
    margin: 0 0 81px 0;
    color: #666666;
    font-size: 32px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    line-height: 1.1;
    padding-left: 31px;
}

/* Контент карточки */
.card-content {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 16px;
    padding-left: 30px;
}

.card-content p {
    color: #666666;
    font-size: 18px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    line-height: 1.2;
    margin: 0;
}

.card-content p strong {
    font-weight: 700;
}

/* Адаптив для ноутбуков 1600px */

/* Адаптив для ноутбуков 1440px */

/* Адаптив для ноутбуков 1280px */

/* Адаптив для планшетов */

/* Адаптив для мобильных */

/* Адаптив для маленьких экранов */

/* ========================================
   ФОТО ДО И ПОСЛЕ - СЕКЦИЯ УЗИ
   ======================================== */

/* Основной контейнер */
.before-after-photos-section {
    width: 100%;
    padding: 0 0 80px 0;
}

/* Заголовок секции */
.photos-title {
    width: 100%;
    margin: 0 0 24px 0;
    font-family: 'Montserrat', sans-serif;
    font-size: 82px;
    font-weight: 700;
    line-height: 1;
}

/* Карусель фотографий */
.photos-carousel-wrapper {
    position: relative;
    overflow: hidden;
    width: 100%;
}

.photos-carousel {
    display: flex;
    gap: 30px;
    transition: transform 0.5s ease;
}

/* Карточка фото */
.photo-card {
    flex: 0 0 456px;
    aspect-ratio: 456 / 453;
    overflow: hidden;
    border-radius: 3px;
    position: relative;
    cursor: pointer;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.photo-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 16px rgba(0, 0, 0, 0.15);
}

.photo-card img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.photo-card:hover img {
    transform: scale(1.05);
}

/* Адаптив для ноутбуков 1600px */

/* Адаптив для ноутбуков 1440px */

/* Адаптив для ноутбуков 1280px */

/* Адаптив для планшетов */

/* Адаптив для мобильных */

/* Адаптив для маленьких экранов */

/* ========================================
   ОТЗЫВЫ О ПРОЦЕДУРЕ - СЕКЦИЯ УЗИ
   ======================================== */

/* Основной контейнер */
.procedure-reviews-section {
    width: 100%;
    padding: 10px 0 80px 0;
}

/* Шапка с заголовком и счётчиком */
.reviews-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 24px;
}

/* Заголовок */
.reviews-procedure-title {
    margin: 0;
    font-family: 'Montserrat', sans-serif;
    font-size: 82px;
    font-weight: 700;
    line-height: 1;
}

/* Счётчик отзывов */
.reviews-counter {
    color: #666666;
    font-size: 24px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    line-height: 1.15;
    margin-top: 14px;
}

/* Карусель отзывов */
.procedure-reviews-wrapper {
    position: relative;
    overflow: hidden;
    width: 100%;
}

.procedure-reviews-carousel {
    display: flex;
    gap: 36px;
    transition: transform 0.5s ease;
}

/* Карточка отзыва */
.procedure-review-card {
    flex: 0 0 696px;
    min-height: 337px;
    background: white;
    border: 1px solid #666666;
    border-radius: 2px;
    padding: 15px 27px;
    display: flex;
    flex-direction: column;
    gap: 30px;
    position: relative;
}

/* Шапка отзыва */
.review-header-info {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.review-author-name {
    color: #666666;
    font-size: 24px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    line-height: 1.15;
}

.review-date-time {
    color: #666666;
    font-size: 24px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 300;
    line-height: 1.15;
}

/* Разделитель */
.review-divider {
    width: 1px;
    height: 225px;
    background: #666666;
    position: absolute;
    left: 51px;
    top: 60px;
}

/* Текст отзыва */
.review-text {
    color: #666666;
    font-size: 24px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 300;
    line-height: 1.15;
    margin: 0;
    padding-left: 62px;
}

/* Ссылка "читать полностью" */
.read-more-link {
    color: #666666;
    font-size: 24px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 300;
    text-decoration: underline;
    line-height: 1.15;
    padding-left: 62px;
    transition: color 0.3s;
}

.read-more-link:hover {
    color: #1D5794;
}

/* Адаптив для ноутбуков 1600px */

/* Адаптив для ноутбуков 1440px */

/* Адаптив для ноутбуков 1280px */

/* Адаптив для планшетов */

/* Адаптив для мобильных */

/* Адаптив для маленьких экранов */

/* ========================================
   СТОИМОСТЬ - СЕКЦИЯ УЗИ
   ======================================== */

/* Основной контейнер */
.pricing-section {
    width: 100%;
    padding: 10px 0 80px 0;
}

/* Заголовок */
.pricing-title {
    width: 100%;
    margin: 0 0 24px 0;
    color: #666666;
    font-family: 'Montserrat', sans-serif;
    font-size: 82px;
    font-weight: 700;
    line-height: 1;
}

/* Таблица цен */
.pricing-table {
    display: flex;
    flex-direction: column;
    gap: 30px;
}

/* Строка таблицы */
.pricing-row {
    display: grid;
    grid-template-columns: 336px 1fr 336px;
    gap: 24px;
    align-items: center;
}

/* Код услуги */
.pricing-code {
    color: #666666;
    font-size: 32px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    line-height: 1;
    text-align: center;
}

/* Название услуги */
.pricing-name {
    color: #666666;
    font-size: 24px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    line-height: 1;
}

/* Стоимость */
.pricing-cost {
    color: #666666;
    font-size: 32px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    line-height: 1;
    text-align: center;
}

/* Адаптив для ноутбуков 1600px */

/* Адаптив для ноутбуков 1440px */

/* Адаптив для ноутбуков 1280px */

/* Адаптив для планшетов */

/* Адаптив для мобильных */

/* Адаптив для маленьких экранов */

/* ========================================
   ЭВЛК ГЕРОЙ - СЕКЦИЯ
   ======================================== */

/* Основной контейнер */
.evlk-hero-section {
    position: relative;
    max-width: 1417px;
    width: 100%;
    height: 698px;
    margin: 0 auto;
    overflow: hidden;
}

/* Контент */
.evlk-content {
    position: relative;
    z-index: 3;
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100%;
    padding: 120px 120px;
    gap: 52px;
}

/* Заголовок */
.evlk-title {
    max-width: 853px;
    margin: 0;
    font-family: 'Montserrat', sans-serif;
    font-size: 76px;
    line-height: 1.1;
    color: white;
}

/* Кнопка */
.evlk-button {
    width: 100%;
    max-width: 456px;
    height: 48px;
    background: #A7C955;
    border: none;
    border-radius: 5px;
    color: white;
    font-size: 24px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    line-height: 1;
    cursor: pointer;
    transition: all 0.3s ease;
}

.evlk-button:hover {
    background: #98b84a;
    transform: translateY(-2px);
    box-shadow: 0 6px 12px rgba(0, 0, 0, 0.3);
}

.evlk-button:active {
    transform: translateY(0);
}

/* Адаптив для ноутбуков 1600px */

/* Адаптив для ноутбуков 1440px */

/* Адаптив для ноутбуков 1280px */

/* Адаптив для планшетов */

/* Адаптив для мобильных */

/* Адаптив для маленьких экранов */

/* ========================================
   РЕЗУЛЬТАТЫ ЛЕЧЕНИЯ ЭВЛК - СЕКЦИЯ
   ======================================== */

/* Основной контейнер */
.evlk-results-section {
    width: 100%;
    padding: 80px 0;
}

/* Верхний блок */
.evlk-intro {
    display: grid;
    grid-template-columns: 576px 1fr;
    gap: 25px;
    align-items: start;
    margin-bottom: 80px;
}

.evlk-intro-image-wrapper {
    width: 100%;
    aspect-ratio: 576 / 337;
    border-radius: 3px;
    overflow: hidden;
}

.evlk-intro-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 3px;
    transition: transform 0.5s ease;
}

.evlk-intro-image:hover {
    transform: scale(1.05);
}

.evlk-intro-description {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.evlk-intro-description p {
    color: #666666;
    font-size: 22px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    line-height: 1.15;
    margin: 0;
}

/* Заголовок секции */
.evlk-results-title {
    width: 100%;
    margin: 0 0 24px 0;
    font-family: 'Montserrat', sans-serif;
    font-size: 82px;
    font-weight: 700;
    line-height: 1;
}

/* Основной контент */
.evlk-results-content {
    position: relative;
    display: grid;
    grid-template-columns: 1fr 456px;
    gap: 80px;
    align-items: start;
}

/* Акцентная линия */
.evlk-accent-line {
    position: absolute;
    left: 0;
    top: 0;
    width: 5px;
    height: 100%;
    background: #A7C955;
}

/* Результаты лечения */
.evlk-results-list {
    padding-left: 31px;
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.evlk-results-list p {
    color: #666666;
    font-size: 24px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    line-height: 1.15;
    margin: 0;
}

/* Карточка акции ЭВЛК */
.evlk-promotion-wrapper {
    width: 100%;
}

.evlk-promotion-card {
    position: relative;
    display: flex;
    flex-direction: column;
    background: #E0E0DC;
    border-radius: 5px;
    overflow: hidden;
    height: 578px;
}

.evlk-promotion-image-wrapper {
    position: relative;
    width: 100%;
    height: 337px;
    overflow: hidden;
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
}

.evlk-promotion-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.evlk-discount-badge {
    position: absolute;
    top: 307px;
    left: 0;
    width: 216px;
    height: 54px;
    background: #A7C955;
    border-top-left-radius: 5px;
    border-bottom-left-radius: 5px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 24px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    line-height: 1;
    z-index: 2;
}

/* Информация об акции ЭВЛК */
.evlk-promotion-info {
    position: relative;
    flex: 1;
    padding: 28px;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.evlk-promotion-accent-line {
    position: absolute;
    top: 25px;
    left: 28px;
    width: 80px;
    height: 3px;
    background: #1D5794;
}

.evlk-promotion-date {
    color: black;
    font-size: 15px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 300;
    line-height: 1;
    margin: 0;
}

.evlk-promotion-title {
    color: black;
    font-size: 26px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    line-height: 1;
    margin: 0;
}

.evlk-promotion-subtitle {
    color: black;
    font-size: 26px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 300;
    line-height: 1;
    margin: 0;
}

.evlk-promotion-price {
    display: flex;
    align-items: center;
    gap: 20px;
    margin-top: auto;
}

.evlk-old-price {
    color: black;
    font-size: 24px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 300;
    line-height: 1;
    text-decoration: line-through;
}

.evlk-new-price {
    color: black;
    font-size: 36px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    line-height: 1;
}

.evlk-promotion-link {
    color: black;
    font-size: 14px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 300;
    text-decoration: underline;
    line-height: 1;
    transition: color 0.3s;
}

.evlk-promotion-link:hover {
    color: #1D5794;
}

/* Адаптив для ноутбуков 1600px */

/* Адаптив для ноутбуков 1440px */

/* Адаптив для ноутбуков 1280px */

/* Адаптив для планшетов */

/* Адаптив для мобильных */

/* Адаптив для маленьких экранов */

/* ========================================
   CLACS ГЕРОЙ - СЕКЦИЯ
   ======================================== */

/* Основной контейнер */
.clacs-hero-section {
    position: relative;
    max-width: 1417px;
    width: 100%;
    height: 698px;
    margin: 0 auto;
    overflow: hidden;
}

/* Контент */
.clacs-content {
    position: relative;
    z-index: 3;
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100%;
    padding: 120px 120px;
    gap: 52px;
}

/* Заголовок */
.clacs-title {
    max-width: 816px;
    margin: 0;
    font-family: 'Montserrat', sans-serif;
    font-size: 76px;
    line-height: 1.1;
    color: white;
}

/* Кнопка */
.clacs-button {
    width: 100%;
    max-width: 456px;
    height: 48px;
    background: #A7C955;
    border: none;
    border-radius: 5px;
    color: white;
    font-size: 24px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    line-height: 1;
    cursor: pointer;
    transition: all 0.3s ease;
}

.clacs-button:hover {
    background: #98b84a;
    transform: translateY(-2px);
    box-shadow: 0 6px 12px rgba(0, 0, 0, 0.3);
}

.clacs-button:active {
    transform: translateY(0);
}

/* Адаптив для ноутбуков 1600px */

/* Адаптив для ноутбуков 1440px */

/* Адаптив для ноутбуков 1280px */

/* Адаптив для планшетов */

/* Адаптив для мобильных */

/* Адаптив для маленьких экранов */

/* ========================================
   РЕЗУЛЬТАТЫ ЛЕЧЕНИЯ CLACS - СЕКЦИЯ
   ======================================== */

/* Основной контейнер */
.clacs-results-section {
    width: 100%;
    padding: 80px 0;
}

/* Верхний блок */
.clacs-intro {
    display: grid;
    grid-template-columns: 576px 1fr;
    gap: 25px;
    align-items: start;
    margin-bottom: 80px;
}

.clacs-intro-image-wrapper {
    width: 100%;
    aspect-ratio: 576 / 337;
    border-radius: 3px;
    overflow: hidden;
}

.clacs-intro-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 3px;
    transition: transform 0.5s ease;
}

.clacs-intro-image:hover {
    transform: scale(1.05);
}

.clacs-intro-description {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.clacs-intro-description p {
    color: #666666;
    font-size: 22px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    line-height: 1.15;
    margin: 0;
}

/* Заголовок секции */
.clacs-results-title {
    width: 100%;
    margin: 0 0 24px 0;
    font-family: 'Montserrat', sans-serif;
    font-size: 82px;
    font-weight: 700;
    line-height: 1;
}

/* Основной контент */
.clacs-results-content {
    position: relative;
    display: grid;
    grid-template-columns: 1fr 456px;
    gap: 80px;
    align-items: start;
}

/* Акцентная линия */
.clacs-accent-line {
    position: absolute;
    left: 0;
    top: 0;
    width: 5px;
    height: 100%;
    background: #A7C955;
}

/* Результаты лечения */
.clacs-results-list {
    padding-left: 31px;
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.clacs-results-list p {
    color: #666666;
    font-size: 24px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    line-height: 1.15;
    margin: 0;
}

/* Карточка акции CLaCS */
.clacs-promotion-wrapper {
    width: 100%;
}

.clacs-promotion-card {
    position: relative;
    display: flex;
    flex-direction: column;
    background: #E0E0DC;
    border-radius: 5px;
    overflow: visible;
    height: 578px;
}

.clacs-promotion-image-wrapper {
    position: relative;
    width: 100%;
    height: 337px;
    overflow: visible;
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
}

.clacs-promotion-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.clacs-discount-badge {
    position: absolute;
    top: 307px;
    left: 0;
    width: 216px;
    height: 54px;
    background: #A7C955;
    border-top-left-radius: 5px;
    border-bottom-left-radius: 5px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 24px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    line-height: 1;
    z-index: 10;
}

/* Информация об акции CLaCS */
.clacs-promotion-info {
    position: relative;
    flex: 1;
    padding: 28px;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.clacs-promotion-accent-line {
    position: absolute;
    top: 25px;
    left: 28px;
    width: 80px;
    height: 3px;
    background: #1D5794;
}

.clacs-promotion-date {
    color: black;
    font-size: 15px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 300;
    line-height: 1;
    margin: 0;
}

.clacs-promotion-title {
    color: black;
    font-size: 26px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    line-height: 1;
    margin: 0;
}

.clacs-promotion-subtitle {
    color: black;
    font-size: 26px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 300;
    line-height: 1;
    margin: 0;
}

.clacs-promotion-price {
    display: flex;
    align-items: center;
    gap: 20px;
    margin-top: auto;
}

.clacs-old-price {
    color: black;
    font-size: 24px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 300;
    line-height: 1;
    text-decoration: line-through;
}

.clacs-new-price {
    color: black;
    font-size: 36px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    line-height: 1;
}

/* Адаптив для ноутбуков 1600px */

/* Адаптив для ноутбуков 1440px */

/* Адаптив для ноутбуков 1280px */

/* Адаптив для планшетов */

/* Адаптив для мобильных */

/* Адаптив для маленьких экранов */


/* ===== СТРАНИЦА ВРАЧЕЙ ===== */

/* Секция заголовка */
.doctors-hero {
    padding: 60px 0 40px;
    text-align: center;
}

.doctors-main-title {
    font-family: 'Montserrat', sans-serif;
    font-size: 48px;
    font-weight: 700;
    line-height: 1.2;
    margin: 0 0 20px;
}

.doctors-subtitle {
    font-family: 'Montserrat', sans-serif;
    font-size: 18px;
    font-weight: 400;
    color: #666666;
    line-height: 1.5;
    margin: 0;
}

/* Секция сетки врачей */
.doctors-grid-section {
    padding: 40px 0 80px;
}

.doctors-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 40px;
    max-width: 1200px;
    margin: 0 auto;
}

/* Карточка врача */
.doctor-card {
    background: #FFFFFF;
    border-radius: 10px;
    overflow: hidden;
    transition: transform 0.3s ease;
}

.doctor-card:hover {
    transform: translateY(-5px);
}

.doctor-image {
    width: 100%;
    height: 350px;
    overflow: hidden;
    background: #F5F5F5;
}

.doctor-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.doctor-info {
    padding: 30px;
    text-align: center;
}

.doctor-name {
    font-family: 'Montserrat', sans-serif;
    font-size: 18px;
    font-weight: 700;
    color: #333333;
    margin: 0 0 10px;
    line-height: 1.3;
}

.doctor-specialty {
    font-family: 'Montserrat', sans-serif;
    font-size: 16px;
    font-weight: 500;
    color: #5E96CF;
    margin: 0 0 8px;
    line-height: 1.4;
}

.doctor-experience {
    font-family: 'Montserrat', sans-serif;
    font-size: 14px;
    font-weight: 400;
    color: #666666;
    margin: 0 0 20px;
    line-height: 1.4;
}

.doctor-btn {
    background: #5E96CF;
    color: white;
    font-family: 'Montserrat', sans-serif;
    font-size: 14px;
    font-weight: 600;
    padding: 12px 30px;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    transition: background 0.3s ease;
}

.doctor-btn:hover {
    background: #4a7ab8;
}

/* Адаптив для планшетов */

/* Адаптив для мобильных */

/* Адаптив для маленьких экранов */


/* ===== ВЫПАДАЮЩЕЕ МЕНЮ ВРАЧЕЙ ===== */

.dropdown-doctors {
    position: absolute;
    top: 100%;
    left: 0;
    background: white;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
    border-radius: 5px;
    opacity: 0;
    visibility: hidden;
    transform: translateY(-10px);
    transition: all 0.3s ease;
    z-index: 1000;
    min-width: 300px;
}

.nav-item.has-dropdown:hover .dropdown-doctors {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.dropdown-content-doctors {
    padding: 20px;
}

.dropdown-menu-doctors {
    list-style: none;
    padding: 0;
    margin: 0;
}

.dropdown-menu-doctors li {
    margin-bottom: 12px;
}

.dropdown-menu-doctors li:last-child {
    margin-bottom: 0;
}

.dropdown-menu-doctors a {
    color: #666666;
    font-family: 'Montserrat', sans-serif;
    font-size: 14px;
    font-weight: 500;
    text-decoration: none;
    display: block;
    padding: 8px 12px;
    border-radius: 3px;
    transition: all 0.3s ease;
}

.dropdown-menu-doctors a:hover {
    background: #F5F5F5;
    color: #5E96CF;
}

/* ===== СТРАНИЦА ПРОФИЛЯ ВРАЧА ===== */

.doctor-profile-section {
    padding: 60px 0 40px;
}

.doctor-profile-card {
    max-width: 1416px;
    margin: 0 auto;
    display: flex;
    gap: 24px;
    border-radius: 5px;
    align-items: flex-start;
}

.doctor-profile-image {
    width: 576px;
    height: 818px;
    flex-shrink: 0;
    border-radius: 5px;
    overflow: hidden;
}

.doctor-profile-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.doctor-profile-info {
    flex: 1;
    display: flex;
    flex-direction: column;
    height: 818px;
}

.doctor-profile-name {
    margin: 0 0 24px;
    line-height: 76px;
    flex-shrink: 0;
}

.doctor-profile-name .name-first {
    color: #1D5794;
    font-size: 76px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    text-transform: capitalize;
}

.doctor-profile-name .name-last {
    color: #666666;
    font-size: 76px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    text-transform: capitalize;
}

.doctor-profile-specialty {
    color: #666666;
    font-size: 24px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    text-transform: capitalize;
    line-height: 24px;
    margin: 0 0 22px;
    flex-shrink: 0;
}

.doctor-profile-experience {
    margin-bottom: 11px;
    flex-shrink: 0;
}

.doctor-profile-experience .experience-label {
    color: #666666;
    font-size: 24px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    line-height: 24px;
}

.doctor-profile-experience .experience-value {
    color: #666666;
    font-size: 24px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    text-transform: lowercase;
    line-height: 24px;
}

.doctor-profile-subtitle {
    color: #666666;
    font-size: 24px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    line-height: 24px;
    margin: 0 0 11px;
    flex-shrink: 0;
}

.doctor-profile-description {
    color: #666666;
    font-size: 18px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    line-height: 19.8px;
    margin-bottom: 20px;
    flex: 1;
}

.doctor-profile-description p {
    margin: 0 0 16px;
}

.doctor-profile-description p:last-child {
    margin-bottom: 0;
}

.doctor-profile-btn {
    width: 456px;
    height: 48px;
    background: #A7C955;
    border-radius: 5px;
    border: none;
    color: white;
    font-size: 24px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    line-height: 24px;
    cursor: pointer;
    transition: background 0.3s ease;
    flex-shrink: 0;
}

.doctor-profile-btn:hover {
    background: #98b84a;
}

/* Адаптив для ноутбуков 1600px */

/* Адаптив для ноутбуков 1440px */

/* Адаптив для планшетов */

/* Адаптив для мобильных */

/* Адаптив для маленьких экранов */


/* ===== СЕКЦИЯ РЕКОМЕНДАЦИЙ ВРАЧА ===== */

.doctor-recommendations-section {
    padding: 80px 0;
    background: #FFFFFF;
}

.recommendations-title {
    font-family: 'Montserrat', sans-serif;
    font-size: 82px;
    font-weight: 700;
    line-height: 94.3px;
    margin: 0 0 60px;
}

.recommendations-title .title-blue {
    color: #1D5794;
}

.recommendations-title .title-gray {
    color: #666666;
}

.recommendations-grid {
    display: grid;
    grid-template-columns: repeat(4, 336px);
    gap: 24px;
    max-width: 1416px;
    margin: 0 auto;
}

.recommendation-card {
    display: flex;
    flex-direction: column;
}

.recommendation-image {
    width: 336px;
    height: 216px;
    margin-bottom: 25px;
    overflow: hidden;
}

.recommendation-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
}

.recommendation-card:hover .recommendation-image img {
    transform: scale(1.05);
}

.recommendation-meta {
    display: flex;
    align-items: center;
    gap: 6px;
    margin-bottom: 8px;
}

.news-icon {
    width: 24px;
    height: 24px;
    flex-shrink: 0;
}

.recommendation-date {
    color: #666666;
    font-size: 18px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 300;
    line-height: 18px;
}

.recommendation-title {
    color: #1D5794;
    font-size: 24px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    line-height: 24px;
    margin: 0 0 22px;
}

.recommendation-text {
    color: #666666;
    font-size: 18px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    line-height: 18px;
    margin: 0 0 20px;
    flex-grow: 1;
}

.recommendation-link {
    display: flex;
    align-items: center;
    gap: 5px;
    color: #666666;
    font-size: 18px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 300;
    line-height: 18px;
    text-decoration: underline;
    transition: color 0.3s ease;
}

.recommendation-link:hover {
    color: #1D5794;
}

.recommendation-link svg {
    width: 20px;
    height: 20px;
    transition: transform 0.3s ease;
}

.recommendation-link:hover svg {
    transform: translateX(3px);
}

.recommendation-link:hover svg path {
    stroke: #1D5794;
}

/* Адаптив для ноутбуков 1600px */

/* Адаптив для ноутбуков 1440px */

/* Адаптив для ноутбуков 1280px */

/* Адаптив для планшетов */

/* Адаптив для мобильных */

/* Адаптив для маленьких экранов */


/* ===== СТИЛИ ДЛЯ АДМИН-ПАНЕЛИ ===== */

/* Скрытие блоков на публичном сайте */
.admin-hidden {
    display: none !important;
}


/* ===== ФИКС ГОРИЗОНТАЛЬНОГО СКРОЛЛА НА МОБИЛЬНЫХ ===== */


/* Дополнительный фикс для очень маленьких экранов */


/* Для планшетов и мобильных */


/* Блок направлений */
.directions-section {
    padding: 40px 0;
    background: #fff;
}

.directions-section .container {
    max-width: 1416px !important;
    width: 1416px !important;
    padding: 0 !important;
    margin: 0 auto !important;
}

/* Фиксированная ширина для directions-section */
.directions-section .container {
    max-width: 1416px !important;
    width: 1416px !important;
    margin: 0 auto !important;
    padding: 0 !important;
}

.directions-grid {
    display: grid;
    grid-template-columns: 456px 456px 456px;
    gap: 24px;
    width: 1416px;
    margin: 0 auto;
}

.direction-card {
    position: relative;
    display: flex;
    flex-direction: column;
    overflow: visible;
    width: 100%;
    height: 840px;
    transition: transform 0.3s ease;
}

.direction-card:hover {
    transform: translateY(-5px);
}

.direction-image {
    width: 100%;
    height: 520px;
    object-fit: cover;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
}

/* Увеличиваем среднюю карточку (Косметология) */
.direction-card:nth-child(2) .direction-image {
    height: 550px;
}

.direction-card:nth-child(2) .direction-overlay {
    top: 365px;
}

.direction-card:nth-child(2) .direction-title {
    top: 462px;
}

.direction-card:nth-child(2) .direction-content {
    top: 520px;
}

.direction-overlay {
    position: absolute;
    top: 324px;
    left: 0;
    width: 100%;
    height: 155px;
    background: linear-gradient(180deg, rgba(29, 87, 148, 0) 0%, #5E96CF 100%);
    pointer-events: none;
}

.direction-title {
    position: absolute;
    top: 421px;
    left: 24px;
    color: white;
    font-family: 'Montserrat', sans-serif;
    font-size: 40px;
    font-weight: 700;
    line-height: 46px;
    z-index: 2;
}

.direction-content {
    position: absolute;
    top: 479px;
    left: 0;
    width: 100%;
    height: 361px;
    background: linear-gradient(180deg, #D9D9D9 0%, white 100%);
    padding: 24px;
}

.direction-menu {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 23px;
}

.direction-menu li {
    margin: 0;
}

.direction-menu a {
    color: #666666;
    font-family: 'Montserrat', sans-serif;
    font-size: 20px;
    font-weight: 700;
    line-height: 23px;
    text-decoration: none;
    transition: color 0.3s ease;
    display: block;
}

.direction-menu a:hover {
    color: #1D5794;
}

/* Адаптив для планшетов */

/* Адаптив для мобильных */

/* Адаптив для маленьких экранов */


/* Упрощенное выпадающее меню */
.dropdown-simple {
    background: white;
    border-radius: 8px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
    padding: 20px;
    min-width: 300px;
}

.dropdown-simple .dropdown-menu {
    list-style: none;
    padding: 0;
    margin: 0;
}

.dropdown-simple .dropdown-menu li {
    margin-bottom: 12px;
}

.dropdown-simple .dropdown-menu li:last-child {
    margin-bottom: 0;
}

.dropdown-simple .dropdown-menu a {
    color: #666666;
    font-family: Montserrat;
    font-size: 16px;
    font-weight: 600;
    text-decoration: none;
    transition: color 0.3s;
    display: block;
    padding: 8px 0;
}

.dropdown-simple .dropdown-menu a:hover {
    color: #1D5794;
}


/* Скрытые достижения */
.achievement-hidden {
    display: none;
}

.achievements-gallery.expanded .achievement-hidden {
    display: block;
}

/* Галерея достижений с absolute positioning */
.achievements-gallery {
    position: relative;
    transition: height 0.3s ease;
}

/* Расширение контейнера секции при раскрытии */
.achievements-section .achievements-gallery.expanded ~ * {
    transition: top 0.3s ease;
}

/* Увеличиваем высоту родительского контейнера при раскрытии */
.achievements-section:has(.achievements-gallery.expanded) > div {
    min-height: 950px !important;
}


/* Страница новостей */
.news-hero {
    padding: 60px 0 40px;
    background: #f8f9fa;
}

.news-main-title {
    font-family: Montserrat;
    font-size: 56px;
    font-weight: 700;
    line-height: 68px;
    margin-bottom: 16px;
}

.news-subtitle {
    font-family: Montserrat;
    font-size: 20px;
    font-weight: 400;
    line-height: 28px;
    color: #666666;
}

.news-grid-section {
    padding: 60px 0;
    background: #fff;
}

.news-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
}




/* Кнопка "Все новости" */
.all-news-btn {
    display: inline-block;
    padding: 16px 40px;
    background: #5E96CF;
    color: white;
    font-family: Montserrat;
    font-size: 18px;
    font-weight: 700;
    text-decoration: none;
    border-radius: 8px;
    transition: background 0.3s;
}

.all-news-btn:hover {
    background: #1D5794;
}


/* Модальное окно записи онлайн */
.modal-appointment-content {
    background: white;
    padding: 40px;
    border-radius: 12px;
    max-width: 600px;
    width: 90%;
    max-height: 90vh;
    overflow-y: auto;
    position: relative;
}

.appointment-title {
    font-family: Montserrat;
    font-size: 32px;
    font-weight: 700;
    color: #1D5794;
    margin-bottom: 30px;
    text-align: center;
}

.appointment-form {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.form-group {
    display: flex;
    flex-direction: column;
}

.form-group label {
    font-family: Montserrat;
    font-size: 14px;
    font-weight: 600;
    color: #333;
    margin-bottom: 8px;
}

.form-group input,
.form-group textarea {
    font-family: Montserrat;
    font-size: 16px;
    padding: 12px 16px;
    border: 2px solid #E0E0E0;
    border-radius: 8px;
    transition: border-color 0.3s;
}

.form-group input:focus,
.form-group textarea:focus {
    outline: none;
    border-color: #5E96CF;
}

.form-group textarea {
    resize: vertical;
}

.appointment-submit-btn {
    background: #5E96CF;
    color: white;
    font-family: Montserrat;
    font-size: 18px;
    font-weight: 700;
    padding: 16px;
    border: none;
    border-radius: 8px;
    cursor: pointer;
    transition: background 0.3s;
    margin-top: 10px;
}

.appointment-submit-btn:hover {
    background: #1D5794;
}

.appointment-note {
    font-family: Montserrat;
    font-size: 12px;
    color: #666;
    text-align: center;
    margin-top: 10px;
}

.appointment-note a {
    color: #5E96CF;
    text-decoration: underline;
}

/* Крестик закрытия модального окна */
.modal-close {
    position: absolute;
    top: 15px;
    right: 20px;
    font-size: 42px;
    font-weight: 300;
    color: #666;
    cursor: pointer;
    transition: all 0.3s ease;
    line-height: 1;
    width: 42px;
    height: 42px;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 10;
}

.modal-close:hover {
    color: #1D5794;
    transform: rotate(90deg);
}

/* Секция акций на странице консультации */
.consultation-promotions-section {
    padding: 60px 0;
    background: #fff;
}

.consultation-promotions-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    max-width: 1416px;
    margin: 0 auto;
}

.consultation-promo-card {
    position: relative;
    display: flex;
    flex-direction: column;
    min-width: 456px;
    max-width: 456px;
    width: 456px;
    height: 767px;
    flex-shrink: 0;
}

.consultation-promo-image {
    width: 100%;
    height: 337px;
    object-fit: cover;
    border-radius: 5px 5px 0 0;
}

.consultation-promo-badge {
    position: absolute;
    top: 307px;
    right: 0;
    width: 216px;
    height: 54px;
    background: #A7C955;
    border-radius: 5px 0 0 5px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-family: Montserrat;
    font-size: 24px;
    font-weight: 700;
    text-transform: lowercase;
}

.consultation-promo-content {
    background: #E0E0DC;
    padding: 24px 28px;
    border-radius: 0 0 5px 5px;
    height: 578px;
    display: flex;
    flex-direction: column;
}

.consultation-promo-date {
    color: #000000;
    font-family: 'Montserrat', sans-serif;
    font-size: 15px;
    font-weight: 700;
    line-height: 15px;
    margin-bottom: 10px;
}

.consultation-promo-line {
    width: 80px;
    height: 3px;
    background: #1D5794;
    margin-bottom: 10px;
}

.consultation-promo-title {
    color: #000000;
    font-family: 'Montserrat', sans-serif;
    font-size: 26px;
    font-weight: 700;
    line-height: 26px;
    margin-bottom: 10px;
}

.consultation-promo-subtitle {
    color: #000000;
    font-family: 'Montserrat', sans-serif;
    font-size: 26px;
    font-weight: 700;
    line-height: 26px;
    margin-bottom: 20px;
}

.consultation-promo-prices {
    display: flex;
    align-items: baseline;
    gap: 12px;
    margin-bottom: 15px;
}

.consultation-old-price {
    color: #000000;
    font-family: 'Montserrat', sans-serif;
    font-size: 24px;
    font-weight: 700;
    text-decoration: line-through;
    line-height: 24px;
}

.consultation-new-price {
    color: #000000;
    font-family: 'Montserrat', sans-serif;
    font-size: 36px;
    font-weight: 700;
    line-height: 36px;
}

.consultation-promo-details {
    color: #000000;
    font-family: 'Montserrat', sans-serif;
    font-size: 14px;
    font-weight: 700;
    text-decoration: underline;
    line-height: 14px;
    transition: opacity 0.3s;
}

.consultation-promo-details:hover {
    opacity: 0.7;
}

.consultation-promo-btn {
    width: 100%;
    height: 48px;
    background: #A7C955;
    border: none;
    border-radius: 5px;
    color: white;
    font-family: Montserrat;
    font-size: 24px;
    font-weight: 700;
    cursor: pointer;
    transition: background 0.3s;
}

.consultation-promo-btn:hover {
    background: #8fb03d;
}


/* Блог врача */
.doctor-blog-section {
    padding: 60px 0;
    background: #f8f9fa;
}

.blog-title {
    text-align: center;
    font-size: 42px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    margin-bottom: 50px;
}

.blog-title .blue-text {
    color: #5E96CF;
}

.blog-title .gray-text {
    color: #666666;
}

.blog-posts {
    display: grid;
    gap: 40px;
    max-width: 1200px;
    margin: 0 auto;
}

.blog-post {
    background: white;
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
    display: grid;
    grid-template-columns: 350px 1fr;
    gap: 30px;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.blog-post:hover {
    transform: translateY(-5px);
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.15);
}

.blog-post-image {
    width: 100%;
    height: 100%;
    min-height: 200px;
}

.blog-post-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.blog-post-content {
    padding: 30px;
    display: flex;
    flex-direction: column;
}

.blog-post-date {
    color: #999;
    font-size: 14px;
    margin-bottom: 10px;
}

.blog-post-title {
    color: #1D5794;
    font-size: 28px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    margin: 0 0 15px 0;
}

.blog-post-excerpt {
    color: #666;
    font-size: 18px;
    line-height: 1.6;
    margin: 0 0 20px 0;
    flex: 1;
}

.blog-post-link {
    color: #5E96CF;
    font-size: 16px;
    font-weight: 600;
    text-decoration: none;
    transition: color 0.3s ease;
    align-self: flex-start;
}

.blog-post-link:hover {
    color: #1D5794;
}

/* Адаптив для планшетов */

/* Адаптив для мобильных */

/* Общая сетка для 3-х колонок акций */
.offers-grid {
    width: 1416px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    align-items: stretch;
}

/* Колонна одной акции */
.offer-column {
    display: flex;
    flex-direction: column;
}

/* Колонна одной акции */
.offer-column {
    display: flex;
    flex-direction: column;
}

/* --- 1. Блок картинки --- */
.offer-img-wrapper {
    position: relative;
    width: 100%;
    height: 337px;
}

.offer-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    border-radius: 5px 5px 0 0;
}

/* Синий ярлык скидки */
.discount-badge {
    position: absolute;
    right: 0;
    bottom: -27px;
    width: 216px;
    height: 54px;
    background-color: #5E96CF;
    color: white;
    font-family: 'Montserrat', sans-serif;
    font-size: 24px;
    font-weight: 700;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 5px 0 0 5px;
    z-index: 10;
}

/* --- 2. Серый блок с текстом --- */
.offer-content {
    padding: 25px 28px;
    flex-grow: 1;
    border-radius: 0 0 5px 5px;
    display: flex;
    flex-direction: column;
}

/* Разные цвета фона */
.bg-light {
    background-color: #E0E0DC;
}

.bg-dark {
    background-color: #D9D9D9;
}

/* Текстовые стили */
.offer-date {
    font-family: 'Montserrat', sans-serif;
    font-size: 15px;
    color: #000;
    margin: 0 0 10px 0;
}

.offer-line {
    width: 80px;
    height: 3px;
    background-color: #1D5794;
    margin-bottom: 20px;
}

.offer-title {
    font-family: 'Montserrat', sans-serif;
    font-size: 24px;
    font-weight: 700;
    line-height: 1.2;
    margin: 0 0 5px 0;
    color: #000;
}

.offer-subtitle {
    font-family: 'Montserrat', sans-serif;
    font-size: 24px;
    font-weight: 300;
    line-height: 1.2;
    margin: 0 0 30px 0;
    color: #000;
}

/* Цена */
.price-box {
    margin-top: auto;
    margin-bottom: 15px;
    display: flex;
    align-items: center;
    gap: 15px;
}

.old-price {
    font-family: 'Montserrat', sans-serif;
    font-size: 24px;
    text-decoration: line-through;
    color: #666;
}

.new-price {
    font-family: 'Montserrat', sans-serif;
    font-size: 32px;
    font-weight: 700;
    color: #000;
}

/* Ссылка "Подробнее" */
.details-link {
    font-family: 'Montserrat', sans-serif;
    font-size: 14px;
    text-decoration: underline;
    color: #666;
    margin-bottom: 5px;
}

/* --- 3. Кнопка снизу --- */
.offer-btn {
    display: block;
    width: 100%;
    height: 60px;
    margin-top: 15px;
    background-color: #5E96CF;
    color: white;
    font-family: 'Montserrat', sans-serif;
    font-size: 22px;
    font-weight: 700;
    text-align: center;
    line-height: 60px;
    text-decoration: none;
    border-radius: 5px;
    transition: background 0.3s;
}

.offer-btn:hover {
    background-color: #4a82b8;
}

/* --- Основной контейнер --- */
.hardware-container {
    width: 1416px;
    margin: 40px auto;
    padding-bottom: 50px;
    box-sizing: border-box;
}

/* --- Заголовок --- */
.main-heading {
    font-size: 82px;
    font-weight: 700;
    line-height: 1;
    margin: 0 0 40px 0;
    text-transform: uppercase;
}

.text-gray {
    color: #A2A2A2;
}

.text-blue {
    color: #1D5794;
}

/* --- Блок описания --- */
.intro-section {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 60px;
}

.intro-text-wrapper {
    display: flex;
    width: 784px;
}

.blue-border {
    width: 5px;
    background-color: #5E96CF;
    flex-shrink: 0;
    margin-right: 30px;
}

.intro-text {
    margin: 0;
    color: #666666;
    font-size: 24px;
    font-weight: 500;
    line-height: 1.2;
}

.intro-image {
    width: 576px;
    height: 337px;
    object-fit: cover;
    border-radius: 5px;
    border: none !important;
    outline: none !important;
}

/* --- СЕТКА УСЛУГ --- */
.hardware-container .services-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}

/* --- КАРТОЧКА --- */
.hardware-container .service-card {
    position: relative;
    width: 100%;
    height: 337px;
    border-radius: 5px;
    overflow: hidden;
    background: transparent !important;
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Картинка внутри карточки */
.hardware-container .service-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    border: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* --- КНОПКА (Справа Сверху) --- */
.hardware-container .price-btn {
    position: absolute;
    top: 24px;
    right: 0;
    z-index: 10;
    background-color: #5E96CF;
    color: white;
    font-size: 14px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    text-decoration: none;
    width: 216px;
    height: 38px;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    padding-right: 15px;
    box-sizing: border-box;
    border-top-left-radius: 5px;
    border-bottom-left-radius: 5px;
    transition: background 0.3s;
    border: none !important;
    line-height: normal !important;
    white-space: nowrap;
    overflow: hidden;
}

.hardware-container .price-btn:hover {
    background-color: #4a82b8;
}

/* --- ТЕКСТ (Снизу) --- */
.hardware-container .card-overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 168px;
    background: linear-gradient(180deg, rgba(29, 87, 148, 0) 0%, #5E96CF 100%);
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 0 0 25px 25px;
    box-sizing: border-box;
    pointer-events: none;
}

/* Заголовок карточки */
.hardware-container .card-title {
    color: white;
    font-family: 'Montserrat', sans-serif;
    font-size: 24px;
    font-weight: 700;
    line-height: 1.1;
    margin: 0 0 5px 0 !important;
    padding: 0 !important;
    text-shadow: 0 1px 2px rgba(0,0,0,0.2);
}

/* Подзаголовок карточки */
.hardware-container .card-subtitle {
    color: white;
    font-family: 'Montserrat', sans-serif;
    font-size: 16px;
    font-weight: 300;
    line-height: 1;
    margin: 0 !important;
    padding: 0 !important;
}

/* --- Блок консультации врача-косметолога --- */
.consultation-wrapper {
    width: 1416px;
    margin: 19px auto 60px auto;
    font-family: 'Montserrat', sans-serif;
}

.consult-title {
    font-size: 82px;
    font-weight: 700;
    line-height: 1;
    margin: 0 0 40px 0;
    text-transform: uppercase;
}

.text-gray { 
    color: #A2A2A2; 
}

.consult-card {
    position: relative;
    width: 100%;
    min-height: 842px;
    border-radius: 5px;
    background-color: #E0E0DC;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.consult-bg-image {
    position: absolute;
    top: 0;
    right: 0;
    width: 60%;
    height: calc(100% - 120px);
    z-index: 1;
}

.consult-bg-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.consult-gradient-overlay {
    position: absolute;
    top: 0;
    right: 0;
    width: 60%;
    height: calc(100% - 120px);
    z-index: 2;
    background: linear-gradient(90deg, #E0E0DC 10%, rgba(224, 224, 220, 0) 100%);
}

.consult-content {
    position: relative;
    z-index: 3;
    width: 55%;
    padding: 60px 0 0 40px;
}

.consult-text p {
    color: #666666;
    font-size: 20px;
    font-weight: 500;
    line-height: 1.4;
    margin-bottom: 20px;
}

.problems-section {
    margin-top: 50px;
    margin-bottom: 40px;
}

.problems-heading {
    color: #666666;
    font-size: 32px;
    font-weight: 700;
    line-height: 1.2;
    margin-bottom: 40px;
}

.problems-grid {
    display: flex;
    gap: 40px;
}

.problem-item {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 15px;
}

.problem-item span {
    color: #666666;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.2;
}

.icon-circle {
    width: 64px;
    height: 64px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.icon-circle svg {
    width: 64px;
    height: 64px;
}

.consult-footer {
    position: relative;
    z-index: 4;
    height: 120px;
    background-color: #5E96CF;
    display: flex;
    align-items: center;
    padding: 0 40px;
    gap: 40px;
}

.consult-btn {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 48px;
    padding: 0 30px;
    border: 2px solid white;
    border-radius: 5px;
    color: white;
    font-size: 20px;
    font-weight: 700;
    text-decoration: none;
    transition: background 0.3s, color 0.3s;
    white-space: nowrap;
}

.consult-btn:hover {
    background-color: white;
    color: #5E96CF;
}

.footer-tagline {
    color: white;
    font-size: 20px;
    font-weight: 500;
    line-height: 1.2;
    margin: 0;
}

/* Дублирующиеся стили удалены - используются стили выше */

/* ========================================
   Блок лимфологии - новый дизайн
   ======================================== */

/* --- БЛОК ЛИМФОДРЕНАЖ --- */
.lymph-block {
    position: relative;
    width: 1416px;
    height: 731px;
    margin: 0 auto 25px auto;
    overflow: hidden;
}

/* Фон на всю ширину */
.lymph-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.lymph-bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* Контейнер для 4-х карточек */
.lymph-cards-container {
    position: absolute;
    z-index: 2;
    top: 154px;
    left: 133px;
    display: grid;
    grid-template-columns: repeat(2, 216px);
    gap: 24px;
}

/* Сама зеленая карточка */
.lymph-card {
    width: 216px;
    height: 216px;
    background-color: #A7C955;
    border-radius: 1px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 15px;
    transition: background 0.3s;
}

.lymph-card:hover {
    background-color: #96b845;
}

/* Белая рамка вокруг иконки */
.card-icon-border {
    width: 94px;
    height: 94px;
    border: 2px solid white;
    border-radius: 5px;
    display: flex;
    justify-content: center;
    align-items: center;
}

/* Сама иконка внутри */
.card-icon {
    width: 60px;
    height: 60px;
    object-fit: contain;
}

/* Текст карточки */
.card-label {
    font-family: 'Montserrat', sans-serif;
    color: white;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.2;
    text-align: center;
}


