﻿.media-news {
			padding: 80px 0;
			background: linear-gradient(135deg, #fff 0%, var(--bg-soft) 100%);
		}

		.news-header {
			text-align: center;
			margin-bottom: 32px;
		}

		.news-header p {
			color: var(--text-light);
			max-width: 680px;
			margin: 0 auto;
		}

		.news-feed {
			max-width: 800px;
			margin: 0 auto;
			display: flex;
			flex-direction: column;
			gap: 40px;
		}

		.news-post {
			background: white;
			border-radius: 40px;
			padding: 30px;
			box-shadow: 0 20px 40px rgba(0,0,0,0.03);
			border: 1px solid rgba(43,111,151,0.1);
			transition: all 0.3s ease;
		}

		.news-post:hover {
			transform: translateY(-5px);
			box-shadow: 0 30px 60px rgba(43,111,151,0.1);
		}

		.news-post.is-preview-entry {
			border-color: rgba(217,79,79,0.35);
			box-shadow: 0 20px 40px rgba(217,79,79,0.08);
		}

		.post-header {
			display: flex;
			align-items: center;
			justify-content: space-between;
			margin-bottom: 25px;
		}

		.post-author {
			display: flex;
			align-items: center;
			gap: 15px;
		}

		.author-avatar {
			width: 60px;
			height: 60px;
			border-radius: 50%;
			display: flex;
			align-items: center;
			justify-content: center;
			font-size: 1.8rem;
			border: 3px solid white;
			box-shadow: 0 8px 16px rgba(43,111,151,0.1);
		}

		.author-info {
			display: flex;
			flex-direction: column;
		}

		.author-name {
			font-weight: 700;
			font-size: 1.2rem;
			color: var(--text-dark);
		}

		.post-date {
			font-size: 0.9rem;
			color: var(--text-light);
		}

		.post-badge {
			padding: 8px 20px;
			border-radius: 40px;
			font-weight: 700;
			font-size: 0.9rem;
			text-transform: uppercase;
			letter-spacing: 0.5px;
		}

		.post-badge.акция {
			background: #ffd7d7;
			color: var(--accent);
		}

		.post-badge.новость {
			background: var(--primary-light);
			color: var(--primary);
		}

		.post-badge.статья {
			background: #e8f0fe;
			color: #4a6fa5;
		}

		.post-title {
			font-size: 1.6rem;
			font-weight: 700;
			margin-bottom: 15px;
			color: var(--text-dark);
			line-height: 1.3;
		}

		.post-text {
			color: var(--text-light);
			margin-bottom: 0;
			line-height: 1.6;
		}

		.post-visibility-note {
			display: inline-flex;
			align-items: center;
			gap: 10px;
			margin-top: 16px;
			padding: 10px 14px;
			border-radius: 16px;
			background: rgba(217,79,79,0.08);
			color: var(--accent);
			font-size: 0.92rem;
			font-weight: 600;
		}

		.post-media {
			margin: 24px 0 0;
		}

		.media-carousel {
			position: relative;
		}

		.carousel-window {
			overflow: hidden;
			border-radius: 28px;
			border: 1px solid rgba(43,111,151,0.12);
			transition: height 0.3s ease;
		}

		.carousel-track {
			display: flex;
			align-items: flex-start;
			transition: transform 0.35s ease;
			will-change: transform;
		}

		.carousel-slide {
			min-width: 100%;
		}

		.carousel-slide img,
		.carousel-slide iframe,
		.carousel-slide video {
			display: block;
			width: 100%;
			border: 0;
		}

		.carousel-slide img {
			height: auto;
		}

		.carousel-slide iframe,
		.carousel-slide video {
			aspect-ratio: 16 / 10;
		}

		.carousel-slide--video iframe {
			aspect-ratio: 16 / 9;
		}

		.carousel-slide--video-file video {
			aspect-ratio: 16 / 9;
			background: #000;
		}

		.media-caption {
			display: block;
			text-align: center;
			font-size: 0.95rem;
			color: var(--text-light);
			margin-top: 14px;
		}

		.carousel-controls {
			display: flex;
			align-items: center;
			justify-content: space-between;
			gap: 12px;
			margin-top: 16px;
		}

		.carousel-nav {
			width: 44px;
			height: 44px;
			border: 0;
			border-radius: 50%;
			background: white;
			color: var(--primary);
			box-shadow: 0 10px 24px rgba(43,111,151,0.12);
			cursor: pointer;
			transition: transform 0.2s ease, background 0.2s ease, color 0.2s ease;
		}

		.carousel-nav:hover:not(:disabled) {
			transform: translateY(-2px);
			background: var(--primary);
			color: white;
		}

		.carousel-nav:disabled {
			opacity: 0.45;
			cursor: not-allowed;
			box-shadow: none;
		}

		.carousel-dots {
			display: flex;
			flex-wrap: wrap;
			justify-content: center;
			gap: 8px;
			flex: 1;
		}

		.carousel-dot {
			width: 10px;
			height: 10px;
			border: 0;
			border-radius: 999px;
			background: rgba(43,111,151,0.22);
			cursor: pointer;
			transition: all 0.2s ease;
		}

		.carousel-dot.is-active {
			width: 28px;
			background: var(--primary);
		}

		.news-post-footer {
			display: flex;
			align-items: center;
			justify-content: space-between;
			gap: 16px;
			margin-top: 22px;
			padding-top: 18px;
			border-top: 1px solid rgba(43,111,151,0.12);
		}

		.news-post-meta {
			display: flex;
			flex-wrap: wrap;
			gap: 12px;
			color: var(--text-light);
			font-size: 0.95rem;
		}

		.news-post-meta span {
			display: inline-flex;
			align-items: center;
			gap: 8px;
		}

		.news-post-link {
			display: inline-flex;
			align-items: center;
			gap: 8px;
			color: var(--primary);
			text-decoration: none;
			font-weight: 700;
		}

		.news-post-link:hover {
			color: #1f5678;
		}

		.news-pagination {
			max-width: 800px;
			margin: 30px auto 0;
			display: flex;
			flex-wrap: wrap;
			align-items: center;
			justify-content: space-between;
			gap: 16px;
		}

		.pagination-pages {
			display: flex;
			flex-wrap: wrap;
			gap: 10px;
		}

		.pagination-btn,
		.pagination-page {
			min-width: 46px;
			height: 46px;
			padding: 0 18px;
			border-radius: 16px;
			border: 1px solid rgba(43,111,151,0.16);
			background: white;
			color: var(--text-dark);
			font-weight: 700;
			cursor: pointer;
			transition: all 0.2s ease;
		}

		.pagination-btn:hover:not(:disabled),
		.pagination-page:hover {
			transform: translateY(-2px);
			border-color: var(--primary);
			color: var(--primary);
			box-shadow: 0 10px 24px rgba(43,111,151,0.12);
		}

		.pagination-page.is-active {
			background: var(--primary);
			border-color: var(--primary);
			color: white;
			box-shadow: 0 12px 24px rgba(43,111,151,0.2);
		}

		.pagination-btn:disabled {
			opacity: 0.45;
			cursor: not-allowed;
			box-shadow: none;
		}

		.news-empty {
			max-width: 800px;
			margin: 0 auto;
			padding: 40px 32px;
			text-align: center;
			background: white;
			border-radius: 32px;
			border: 1px dashed rgba(43,111,151,0.2);
			color: var(--text-light);
		}

		.news-empty i {
			font-size: 2.2rem;
			color: var(--primary);
			margin-bottom: 14px;
		}
		/* Блок связи во всех источниках */
		.contact-channels {
			padding: 80px 0;
			background: white;
		}

		.contact-grid {
			display: grid;
			grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
			gap: 20px;
			margin-top: 30px;
		}

		.contact-card {
			background: var(--bg-soft);
			border-radius: 30px;
			padding: 25px 20px;
			text-align: center;
			text-decoration: none;
			color: var(--text-dark);
			transition: all 0.3s ease;
			border: 1px solid rgba(43,111,151,0.1);
			display: flex;
			flex-direction: column;
			align-items: center;
			gap: 10px;
		}

		.contact-card:hover {
			transform: translateY(-5px);
			box-shadow: 0 15px 30px rgba(43,111,151,0.15);
			border-color: var(--primary);
		}

		.contact-card i {
			font-size: 2.5rem;
			transition: transform 0.3s;
		}

		.contact-card:hover i {
			transform: scale(1.1);
		}

		.contact-card span {
			font-weight: 700;
			font-size: 1.2rem;
		}

		.contact-card small {
			color: var(--text-light);
			font-size: 0.9rem;
		}

        /* Карточка Max */
        .contact-card.max .icon-container {
            background-image: url('/static/media/branding/logos/max_black.svg');
            background-size: contain;
            background-repeat: no-repeat;
            background-position: center;
            width: 40px;
            height: 40px;
            transition: all 0.3s ease;
        }

        .contact-card.max:hover .icon-container {
            background-image: url('/static/media/branding/logos/max_color.svg');
            transform: scale(1.15);
        }

        /* .contact-card.max:hover span,
        .contact-card.max:hover small {
            color: #F58A42;
        } */

        /* .contact-card.max:hover span,
        .contact-card.max:hover small {
            color: #F58A42;
        } */

		/* Цвета для каждого мессенджера при наведении */
		.contact-card.whatsapp:hover i { color: #25D366; }
		.contact-card.telegram:hover i { color: #0088cc; }
		.contact-card.instagram:hover i { color: #E4405F; }
		.contact-card.vk:hover i { color: #4C75A3; }
		.contact-card.viber:hover i { color: #665CAC; }
		.contact-card.email:hover i { color: var(--primary); }
		.contact-card.phone:hover i { color: #4CAF50; }
        .contact-card.youtube:hover i { color: #FF0000; }

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

        body {
            font-family: 'Inter', sans-serif;
            line-height: 1.5;
            color: #1f2b3a;
            background-color: #fafcff;
        }

        .container {
            max-width: 1200px;
            margin: 0 auto;
            padding: 0 24px;
        }

        /* Цветовая палитра: свежий, медицинско-спортивный оттенок */
        :root {
            --primary: #2b6f97;
            --primary-light: #e1f0f9;
            --accent: #d94f4f;
            --text-dark: #1f2b3a;
            --text-light: #5a6e7f;
            --bg-light: #ffffff;
            --bg-soft: #f2f7fb;
        }

        /* Шапка с логотипом (видео-логотип) */
        .header {
            background: var(--bg-light);
            box-shadow: 0 4px 20px rgba(0, 0, 0, 0.02);
            padding: 16px 0;
            position: sticky;
            top: 0;
            z-index: 10;
        }

        .header .container {
            display: flex;
            align-items: center;
            justify-content: space-between;
            flex-wrap: wrap;
            gap: 16px;
        }

        .logo-area {
            display: flex;
            align-items: center;
            gap: 16px;
        }

        /* Круглое место под видео-логотип (10 сек) */
        .video-logo {
            width: 100px;
            height: 100px;
            border-radius: 50%;
            background: #1a2e3b; /* тёмный фон для контраста видео */
            overflow: hidden;
            box-shadow: 0 8px 16px rgba(43,111,151,0.3);
            border: 3px solid white;
            display: flex;
            align-items: center;
            justify-content: center;
        }

        .video-logo video {
            width: 100%;
            height: 100%;
            object-fit: cover;
            border-radius: 50%;
            display: block;
        }

        /* Заглушка, если видео не добавлено */
        .video-placeholder {
            width: 100%;
            height: 100%;
            background: linear-gradient(145deg, #2b6f97, #184a66);
            display: flex;
            align-items: center;
            justify-content: center;
            color: white;
            font-weight: 700;
            font-size: 1.8rem;
            text-transform: uppercase;
        }

        .logo-text h1 {
            font-size: 1.8rem;
            font-weight: 700;
            color: var(--primary);
            letter-spacing: -0.02em;
            line-height: 1.2;
        }

        .logo-text span {
            font-size: 1rem;
            font-weight: 500;
            color: var(--text-light);
            display: block;
        }

        .cta-top {
            background: var(--primary);
            color: white;
            padding: 10px 28px;
            border-radius: 40px;
            font-weight: 600;
            text-decoration: none;
            transition: background 0.2s;
            border: 2px solid transparent;
        }

        .cta-top:hover {
            background: #1f5678;
            border-color: #c4e2f2;
        }

        /* Герой (первый экран) */
        .hero {
            padding: 60px 0 40px;
        }

        .hero .container {
            display: flex;
            align-items: center;
            gap: 40px;
            flex-wrap: wrap;
        }

        .hero-content {
            flex: 1 1 350px;
            position: relative;
            padding-right: clamp(150px, 18vw, 240px);
            min-height: 560px;
        }

        .hero-badge {
            background: var(--primary-light);
            color: var(--primary);
            font-weight: 600;
            padding: 6px 14px;
            border-radius: 40px;
            display: inline-block;
            margin-bottom: 24px;
            font-size: 0.9rem;
        }

        .hero-content h2 {
            font-size: 3.2rem;
            font-weight: 700;
            line-height: 1.2;
            margin-bottom: 24px;
            color: var(--text-dark);
        }

        .hero-content h2 span {
            color: var(--primary);
            background: var(--primary-light);
            padding: 0 8px;
            display: inline-block;
        }

        .hero-description {
            font-size: 1.2rem;
            color: var(--text-light);
            margin-bottom: 32px;
            max-width: 500px;
        }

        /* Главный слоган первого экрана */
        .slogan-block {
            position: relative;
            margin: 26px 0 22px;
            padding: 24px 28px;
            border-radius: 34px;
            background: linear-gradient(135deg, rgba(255,255,255,0.98) 0%, rgba(225,240,249,0.95) 100%);
            border: 1px solid rgba(43,111,151,0.14);
            box-shadow: 0 22px 40px rgba(43,111,151,0.08);
            overflow: hidden;
        }
        .slogan-block::before {
            content: "";
            position: absolute;
            inset: 0 auto 0 0;
            width: 10px;
            background: linear-gradient(180deg, var(--primary) 0%, #7eb6d3 100%);
        }
        .slogan-block::after {
            content: "";
            position: absolute;
            right: -18px;
            top: -18px;
            width: 120px;
            height: 120px;
            border-radius: 50%;
            background: radial-gradient(circle, rgba(217,79,79,0.14) 0%, rgba(217,79,79,0) 70%);
        }
        .slogan-line {
            display: inline-flex;
            align-items: baseline;
            flex-wrap: nowrap;
            gap: 8px 10px;
            font-size: 2.05rem;
            font-weight: 400;
            line-height: 1.08;
            position: relative;
            z-index: 1;
            white-space: nowrap;
            max-width: 100%;
        }
        .slogan-line strong {
            font-weight: 800;
            text-transform: none;
            letter-spacing: -0.03em;
        }
        .slogan-light {
            font-weight: 600;
            color: var(--text-dark);
        }
        .first-line strong {
            font-size: 2.35rem;
            color: var(--primary);
        }
        .first-line .slogan-light {
            color: var(--primary);
            font-weight: 700;
        }
        .second-line strong {
            font-size: 2.25rem;
            color: var(--text-dark);
            padding: 0 6px 4px;
            background: linear-gradient(180deg, transparent 0%, transparent 78%, rgba(43,111,151,0.16) 78%, rgba(43,111,151,0.16) 100%);
            border-radius: 10px;
        }
        .second-line {
            display: inline-flex;
            margin-top: 10px;
            padding-left: 18px;
        }
        .second-line .slogan-light {
            color: var(--text-light);
            font-weight: 600;
        }
        .slogan-accent {
            display: inline-flex;
            align-items: center;
            min-height: 48px;
            padding: 6px 16px 8px;
            border-radius: 999px;
            background: linear-gradient(135deg, #d94f4f 0%, #ef7b7b 100%);
            color: white;
            font-weight: 800;
            font-size: 1.5rem;
            line-height: 1;
            box-shadow: 0 10px 24px rgba(217,79,79,0.18);
        }

        .hero-result-figure {
            position: absolute;
            right: 0;
            bottom: -18px;
            width: min(30vw, 250px);
            pointer-events: none;
            z-index: 0;
        }

        .hero-result-figure::after {
            content: "";
            position: absolute;
            left: 50%;
            bottom: 10px;
            width: 68%;
            height: 24px;
            transform: translateX(-50%);
            border-radius: 50%;
            background: rgba(31,43,58,0.12);
            filter: blur(16px);
        }

        .hero-result-figure img {
            position: relative;
            z-index: 1;
            width: 100%;
            height: auto;
            display: block;
            object-fit: contain;
        }

        .hero-badge,
        .slogan-block,
        .hero-description,
        .hero-content > a {
            position: relative;
            z-index: 1;
        }

        .hero-description {
            max-width: 420px;
        }

        .hero-photo-placeholder {
            flex: 1 1 300px;
            background: #d3e3ee;
            border-radius: 40px 40px 40px 0;
            padding: 30px 20px;
            display: flex;
            flex-wrap: wrap;
            gap: 24px;
            justify-content: center;
            box-shadow: 0 30px 40px -20px rgba(43,111,151,0.3);
        }

        @media (min-width: 1180px) {
            .hero .container {
                max-width: 1360px;
                display: grid;
                grid-template-columns: minmax(0, 1.15fr) minmax(420px, 480px);
                align-items: start;
                gap: 36px;
            }

            .hero-content {
                min-width: 0;
            }

            .hero-photo-placeholder {
                width: 100%;
                min-height: 100%;
                align-content: start;
            }
        }

        .photo-card {
            text-align: center;
            width: 180px; /* чуть шире для списка */
        }

        .photo-frame {
            width: 160px;
            height: 160px;
            border-radius: 50%;
            background: #f0f6fb;
            border: 5px solid white;
            box-shadow: 0 8px 18px rgba(0,0,0,0.1);
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            margin: 0 auto 12px;
            color: #7b98ab;
            background: linear-gradient(145deg, #fff, #ecf5fa);
            overflow: hidden;
        }

        .photo-frame i {
            font-size: 3.5rem;
            color: var(--primary);
            opacity: 0.5;
            margin-bottom: 5px;
        }

        .photo-frame .small-note {
            font-size: 0.8rem;
            color: var(--text-light);
            background: white;
            padding: 3px 10px;
            border-radius: 40px;
            font-weight: 500;
        }

        .photo-card p {
            font-weight: 600;
            color: var(--text-dark);
            margin-top: 8px;
        }
        .photo-card p small {
            font-weight: 400;
            color: var(--primary);
            display: block;
        }

        /* Новые стили для списка функций под фото */
        .function-list {
            text-align: left;
            margin-top: 15px;
            background: rgba(255,255,255,0.7);
            backdrop-filter: blur(4px);
            border-radius: 24px;
            padding: 16px 12px;
            box-shadow: 0 8px 18px rgba(0,0,0,0.05);
            border: 1px solid white;
        }
        .function-list-item {
            display: flex;
            align-items: center;
            gap: 10px;
            margin-bottom: 12px;
            font-size: 0.95rem;
            color: var(--text-dark);
            font-weight: 500;
        }
        .function-list-item i {
            color: var(--primary);
            font-size: 1.1rem;
            width: 20px;
            text-align: center;
        }
        .function-list-item .highlight-red {
            color: var(--accent);
            font-weight: 700;
        }
        .function-list-item .small-accent {
            color: var(--primary);
            font-weight: 600;
        }
        .function-list-title {
            font-weight: 700;
            color: var(--primary);
            margin-bottom: 12px;
            font-size: 1.1rem;
            border-bottom: 2px solid var(--primary-light);
            padding-bottom: 5px;
        }

        /* Секция "Врач+Тренер = ЭТО" (список преимуществ) */
        .features {
            background: var(--bg-light);
            padding: 70px 0;
            border-radius: 60px 60px 0 0;
            margin-top: 20px;
        }

        .section-title {
            font-size: 2.8rem;
            font-weight: 700;
            color: var(--text-dark);
            margin-bottom: 16px;
            line-height: 1.2;
        }

        .section-sub {
            font-size: 1.3rem;
            color: var(--primary);
            font-weight: 500;
            margin-bottom: 50px;
            display: flex;
            align-items: center;
            gap: 10px;
        }

        .feature-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
            gap: 30px;
        }

        .feature-item {
            background: var(--bg-soft);
            padding: 32px 24px;
            border-radius: 36px;
            box-shadow: 0 4px 12px rgba(0, 0, 0, 0.02);
            transition: all 0.2s ease;
            border: 1px solid rgba(43, 111, 151, 0.1);
        }

        .feature-item:hover {
            transform: translateY(-8px);
            border-color: var(--primary);
        }

        .feature-icon {
            font-size: 2.5rem;
            color: var(--primary);
            margin-bottom: 20px;
        }

        .feature-item h3 {
            font-size: 1.6rem;
            font-weight: 700;
            margin-bottom: 12px;
            color: var(--text-dark);
        }

        .feature-item p {
            color: var(--text-light);
            font-size: 1rem;
        }

        .feature-item .highlight {
            font-weight: 700;
            color: var(--accent);
            background: #ffeae9;
            padding: 2px 10px;
            border-radius: 30px;
            display: inline-block;
            margin-top: 15px;
        }

        /* Команда (фото тренера и врача с именами) */
        .team {
            padding: 60px 0;
        }

        .team-cards {
            display: flex;
            flex-wrap: wrap;
            justify-content: center;
            gap: 50px;
            margin-top: 40px;
        }

        .team-member {
            background: white;
            border-radius: 40px;
            padding: 30px 30px 30px;
            width: 300px;
            box-shadow: 0 25px 40px -20px rgba(0,0,0,0.2);
            text-align: center;
            border: 1px solid rgba(43,111,151,0.2);
        }

        .member-photo {
            width: 180px;
            height: 180px;
            border-radius: 50%;
            background: #dbeaf2;
            margin: 0 auto 20px;
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            border: 5px solid white;
            box-shadow: 0 8px 0 var(--primary-light);
            overflow: hidden;
        }

        .member-photo i {
            font-size: 4rem;
            color: var(--primary);
            opacity: 0.6;
        }
        .member-photo span {
            font-size: 0.9rem;
            background: white;
            padding: 4px 12px;
            border-radius: 40px;
            margin-top: 5px;
            font-weight: 500;
        }

        .team-member h4 {
            font-size: 1.8rem;
            font-weight: 700;
            margin-bottom: 5px;
        }
        .team-member .role {
            color: var(--primary);
            font-weight: 600;
            margin-bottom: 15px;
            letter-spacing: 0.5px;
        }

        /* Блок коллаборации (врач+тренер) */
        .collab-highlight {
            background: var(--primary);
            color: white;
            padding: 70px 0;
            border-radius: 80px 0 80px 0;
            margin: 30px 0;
        }

        .collab-highlight .container {
            display: flex;
            flex-wrap: wrap;
            align-items: center;
            justify-content: space-between;
            gap: 40px;
        }

        .collab-text {
            flex: 2;
        }
        .collab-text h3 {
            font-size: 2.5rem;
            font-weight: 700;
            margin-bottom: 20px;
        }
        .collab-text p {
            font-size: 1.2rem;
            opacity: 0.9;
            max-width: 600px;
        }
        .collab-badge {
            background: white;
            color: var(--primary);
            padding: 16px 32px;
            border-radius: 60px;
            font-weight: 700;
            font-size: 1.3rem;
            box-shadow: 0 12px 20px rgba(0,0,0,0.1);
            flex: 1;
            text-align: center;
        }

        /* Секция "nutrition + тренировки + результат" */
        .services-detailed {
            padding: 60px 0 20px;
        }
        .detail-grid {
            display: flex;
            flex-wrap: wrap;
            gap: 30px;
            margin-top: 40px;
        }
        .detail-card {
            background: white;
            border-radius: 40px;
            padding: 36px 28px;
            flex: 1 1 250px;
            box-shadow: 0 8px 28px rgba(43,111,151,0.08);
        }
        .detail-card i {
            font-size: 2.8rem;
            color: var(--primary);
            margin-bottom: 25px;
        }
        .detail-card h4 {
            font-size: 1.7rem;
            margin-bottom: 15px;
        }
        .detail-card ul {
            list-style: none;
        }
        .detail-card li {
            margin-bottom: 12px;
            font-weight: 400;
            display: flex;
            gap: 8px;
            align-items: center;
            color: var(--text-light);
        }
        .detail-card li i {
            font-size: 1.2rem;
            color: var(--accent);
            margin: 0;
        }

        .pricing-section {
            padding: 20px 0 90px;
        }

        .pricing-header {
            max-width: 760px;
            margin: 0 auto 42px;
            text-align: center;
        }

        .pricing-header p {
            color: var(--text-light);
            font-size: 1.05rem;
            line-height: 1.7;
        }

        .pricing-grid {
            display: grid;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            gap: 24px;
            align-items: stretch;
        }

        .pricing-card {
            position: relative;
            display: grid;
            gap: 18px;
            padding: 28px;
            border-radius: 34px;
            background: linear-gradient(180deg, rgba(255,255,255,0.98) 0%, rgba(241,247,251,0.94) 100%);
            border: 1px solid rgba(43, 111, 151, 0.14);
            box-shadow: 0 24px 48px rgba(20, 45, 62, 0.08);
        }

        .pricing-card.is-featured {
            transform: translateY(-8px);
            border-color: rgba(43, 111, 151, 0.28);
            box-shadow: 0 30px 56px rgba(20, 45, 62, 0.14);
            background: linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(232,243,250,0.98) 100%);
        }

        .pricing-badge {
            justify-self: start;
            padding: 8px 14px;
            border-radius: 999px;
            background: rgba(43, 111, 151, 0.1);
            color: var(--primary);
            font-size: 0.88rem;
            font-weight: 700;
        }

        .pricing-card h3 {
            font-size: 1.7rem;
            line-height: 1.15;
            color: var(--text-dark);
        }

        .pricing-price-row {
            display: flex;
            align-items: baseline;
            gap: 10px;
            flex-wrap: wrap;
        }

        .pricing-price-row strong {
            font-size: 2.35rem;
            line-height: 1;
            color: var(--primary);
        }

        .pricing-price-row span,
        .pricing-description {
            color: var(--text-light);
        }

        .pricing-list {
            list-style: none;
            display: grid;
            gap: 12px;
        }

        .pricing-list li {
            display: flex;
            gap: 10px;
            align-items: flex-start;
            color: var(--text-light);
            line-height: 1.55;
        }

        .pricing-list li i {
            margin-top: 3px;
            color: var(--accent);
        }

        .pricing-cta {
            display: inline-flex;
            justify-content: center;
            align-items: center;
            min-height: 56px;
            margin-top: auto;
            padding: 14px 20px;
            border-radius: 999px;
            text-decoration: none;
            font-weight: 700;
            color: #fff;
            background: linear-gradient(135deg, var(--primary) 0%, #1f5978 100%);
            box-shadow: 0 18px 36px rgba(43, 111, 151, 0.22);
        }

        /* Футер */
        .footer {
            padding: 30px 0;
            background: white;
            font-size: 0.95rem;
            color: var(--text-light);
        }

        hr {
            border: none;
            border-top: 2px dashed #cde3ef;
            margin: 20px 0;
        }

        /* Адаптация шапки для мобильных */
        @media (max-width: 700px) {
            .hero-content h2 { font-size: 2.5rem; }
            .section-title { font-size: 2.2rem; }
            .logo-text h1 { font-size: 1.4rem; }
            .cta-top { padding: 8px 18px; }
            .slogan-block {
                width: 100%;
                padding: 18px 18px 18px 22px;
                border-radius: 26px;
            }
            .slogan-line { font-size: 1.6rem; }
            .first-line strong,
            .second-line strong { font-size: 1.75rem; }
            .slogan-accent {
                min-height: 40px;
                padding: 5px 12px 7px;
                font-size: 1.2rem;
            }
            .second-line { padding-left: 0; }
            .hero-description { max-width: none; }

            .post-header {
				flex-direction: column;
				align-items: flex-start;
				gap: 15px;
			}
			
            .post-title {
				font-size: 1.3rem;
			}

            .hero-content {
                display: flex;
                flex-direction: column;
                align-items: flex-start;
                min-height: auto;
                padding-right: 0;
            }
            .hero-content > a {
                width: 100%;
                text-align: center;
            }

            .hero-result-figure {
                position: relative;
                right: auto;
                bottom: auto;
                z-index: 1;
                width: min(52vw, 240px);
                margin: 4px 0 14px auto;
            }
			
				.news-post {
					padding: 20px;
				}

            .hero-photo-placeholder {
                width: 100%;
                padding: 22px 16px;
                border-radius: 28px 28px 28px 0;
                gap: 18px;
            }

            .photo-card {
                width: min(100%, 320px);
            }

            .function-list {
                padding: 14px 12px;
            }

            .contact-grid {
					grid-template-columns: repeat(2, 1fr);
					gap: 15px;
			}

            .pricing-grid {
                grid-template-columns: 1fr;
            }

            .pricing-card,
            .pricing-card.is-featured {
                transform: none;
            }
			
			.contact-card {
				padding: 20px 15px;
			}
			
			.contact-card i {
				font-size: 2rem;
			}
			
			.contact-card span {
				font-size: 1rem;
			}

            .header {
                padding: 8px 0;
            }
            
            .header .container {
                gap: 8px;
            }
            
            .logo-area {
                gap: 8px;
            }
            
            .video-logo {
                width: 50px;
                height: 50px;
            }
            
            .logo-text h1 {
                font-size: 1.2rem;
            }
            
            .logo-text span {
                font-size: 0.8rem;
            }
            
            .cta-top {
                padding: 6px 16px;
                font-size: 0.9rem;
            }
            
            /* Уменьшаем баннер */
            .subtle-banner {
                padding: 4px 0 !important;
                font-size: 0.8rem !important;
            }
            
            .subtle-banner .container {
                gap: 8px !important;
            }
            
            .subtle-banner {
                padding: 2px 0 !important;
            }
            
            .subtle-banner i {
                display: none; /* Прячем иконку на очень маленьких */
            }
            
            .subtle-banner span {
                font-size: 0.65rem !important;
                text-align: center;
            }
        }

        /* Для очень маленьких экранов */
        @media (max-width: 480px) {
            .hero-result-figure {
                width: min(56vw, 190px);
                margin-bottom: 12px;
            }

            .slogan-line {
                font-size: 1.18rem;
            }

            .first-line strong,
            .second-line strong {
                font-size: 1.28rem;
            }

            .slogan-accent {
                min-height: 34px;
                padding: 5px 10px 6px;
                font-size: 0.9rem;
            }

            .hero {
                padding: 40px 0 28px;
            }

            .hero-badge {
                margin-bottom: 16px;
            }

            .hero-description {
                font-size: 1rem;
                margin-bottom: 22px;
            }

            .contact-grid {
                grid-template-columns: 1fr;
            }

            .pricing-section {
                padding-bottom: 56px;
            }

            .pricing-card {
                padding: 22px 20px;
                border-radius: 28px;
            }

            .pricing-card h3 {
                font-size: 1.45rem;
            }

            .pricing-price-row strong {
                font-size: 2rem;
            }

            .news-post-footer,
            .news-pagination {
                justify-content: center;
            }

            .news-post-link {
                width: 100%;
                justify-content: center;
            }

            .header .container {
                flex-wrap: wrap;
                justify-content: center;
                text-align: center;
            }
            
            .logo-area {
                width: 100%;
                justify-content: center;
            }
            
            .cta-top {
                width: 100%;
                text-align: center;
                margin-top: 5px;
            }
            
            .subtle-banner {
                padding: 2px 0 !important;
            }
            
            .subtle-banner i {
                display: none; /* Прячем иконку на очень маленьких */
            }
            
            .subtle-banner span {
                font-size: 0.65rem !important;
                text-align: center;
            }
        }
