/* =========================================================
   Лендинг «Групповые заезды» (/services/group/)
   CSS перенесён из тега <style> внутри текста элемента инфоблока
   «Услуги компании» (ID 2799): в <body> тег <style> невалиден.
   Подключается через <link rel="stylesheet"> в тексте элемента.
   ========================================================= */

    /* Ультра-изоляция стилей */
    .lp-wrapper-main {
        font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif !important;
        color: #1a1a2e !important;
        line-height: 1.6 !important;
        box-sizing: border-box !important;

        /* Расширяем блок на всю ширину экрана вопреки контейнеру Битрикса */
        width: 100vw !important;
        position: relative !important;
        left: 50% !important;
        margin-left: -50vw !important;

        /* Убираем горизонтальный скролл, если он появится */
        margin-right: 0 !important;
        padding: 0 !important;
    }

    .lp-wrapper-main * {
        box-sizing: border-box !important;
        margin: 0;
        padding: 0;
    }

    .lp-container {
        max-width: 1300px !important;
        margin: 0 auto !important;
        padding: 0 20px !important;
    }

    .lp-section {
        padding: 40px 0 !important;
    }

    .lp-section-title {
        font-size: 1.7rem !important;
        font-weight: 500 !important;
        text-align: left !important;
        margin-bottom: 1rem !important;
        color: #1a1a2e !important;
    }

    .lp-section-title::after {
        content: '' !important;
        display: block !important;
        width: 60px !important;
        height: 4px !important;
        background: #EB5B21 !important;
        margin: 12px 0 0 !important;
        border-radius: 2px !important;
    }

    .lp-section-subtitle {
        text-align: left !important;
        font-size: 1rem !important;
        color: #666 !important;
        max-width: 700px !important;
        margin: 0 0 32px !important;
    }

    .lp-title-small {
        font-size: 1.7rem !important;
        font-weight: 500 !important;
        margin-bottom: 20px !important;
        color: #1a1a2e !important;
        position: relative !important;
    }

    .lp-title-small::after {
        content: '' !important;
        display: block !important;
        width: 40px !important;
        height: 3px !important;
        background: #EB5B21 !important;
        margin-top: 8px !important;
        border-radius: 2px !important;
    }

    /* Hero блок */
    .lp-hero-wrapper {
        position: relative !important;
        border-radius: 24px !important;
        overflow: hidden !important;
        border: 1px solid #e0e0e4 !important;
        display: grid !important;
        grid-template-columns: 1fr 1fr !important;
        min-height: 340px !important;
    }

    .lp-hero-left {
        background: linear-gradient(135deg, #f4f4f6, #eaeaea) !important;
        padding: 44px 36px !important;
        display: flex !important;
        flex-direction: column !important;
        justify-content: center !important;
        z-index: 2 !important;
    }

    .lp-hero-left p {
        font-size: 1.15rem !important;
        color: #1a1a2e !important;
        margin-bottom: 24px !important;
        font-weight: 500 !important;
    }

    .lp-hero-right {
        position: relative !important;
        overflow: hidden !important;
    }

    .lp-hero-right img {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
        display: block !important;
    }

    .lp-hero-features {
        display: flex !important;
        gap: 10px !important;
        flex-wrap: wrap !important;
        margin-bottom: 24px !important;
    }

    .lp-hero-feature {
        display: flex !important;
        align-items: center !important;
        gap: 8px !important;
        background: #fff !important;
        padding: 8px 16px !important;
        border-radius: 50px !important;
        border: 1px solid #e0e0e4 !important;
    }

    .lp-hero-feature span {
        color: #4a4a5a !important;
        font-size: 0.88rem !important;
    }

    .lp-btn-primary {
        display: inline-flex !important;
        align-items: center !important;
        gap: 10px !important;
        background: #EB5B21 !important;
        color: #fff !important;
        font-weight: 600 !important;
        padding: 12px 30px !important;
        border-radius: 60px !important;
        text-decoration: none !important;
        border: none !important;
        cursor: pointer !important;
        font-size: 1.05rem !important;
        transition: all 0.3s ease !important;
        box-shadow: 0 6px 20px rgba(235, 91, 33, 0.2) !important;
    }

    .lp-btn-primary:hover {
        background: #d44f1c !important;
        transform: translateY(-2px) !important;
        box-shadow: 0 8px 24px rgba(235, 91, 33, 0.3) !important;
    }

    /* Сетки преимуществ */
    .lp-advantages-grid {
        display: grid !important;
        grid-template-columns: repeat(4, 1fr) !important;
        gap: 20px !important;
    }

    .lp-advantage-card {
        background: #fff !important;
        border-radius: 18px !important;
        overflow: hidden !important;
        box-shadow: 0 6px 24px rgba(0,0,0,0.04) !important;
        border: 1px solid #f0f0f0 !important;
    }

    .lp-advantage-card-img {
        width: 100% !important;
        height: 130px !important;
        object-fit: cover !important;
        display: block !important;
    }

    .lp-advantage-card-body {
        padding: 18px 16px !important;
    }

    .lp-advantage-icon {
        width: 46px !important;
        height: 46px !important;
        background: rgba(235, 91, 33, 0.1) !important;
        border-radius: 50% !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        margin-bottom: 14px !important;
    }

    .lp-advantage-card h3 {
        font-size: 1.05rem !important;
        margin-bottom: 6px !important;
        color: #1a1a2e !important;
        font-weight: 500 !important;
    }

    .lp-advantage-card p {
        font-size: 0.9rem !important;
        color: #666 !important;
    }

    /* Блок аудитории */
    .lp-audience-grid {
        display: grid !important;
        grid-template-columns: repeat(4, 1fr) !important;
        gap: 14px !important;
    }

    .lp-audience-card-small {
        background: #fff !important;
        border-radius: 14px !important;
        box-shadow: 0 4px 16px rgba(0,0,0,0.03) !important;
        border: 1px solid #f0f0f0 !important;
        text-align: center !important;
        padding: 20px 15px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        min-height: 60px !important;
    }

    .lp-audience-card-small h3 {
        font-size: 1rem !important;
        font-weight: 500 !important;
        color: #1a1a2e !important;
        margin: 0 !important;
        padding: 0 !important;
        line-height: 1.3 !important;
    }

    /* Блок условий */
    .lp-conditions-wrapper {
        background: #f4f4f6 !important;
        border-radius: 24px !important;
        padding: 36px !important;
        display: grid !important;
        grid-template-columns: 1.2fr 0.8fr !important;
        gap: 36px !important;
        align-items: center !important;
    }

    .lp-conditions-list {
        list-style: none !important;
    }

    .lp-conditions-list li {
        margin-bottom: 10px !important;
        display: flex !important;
        gap: 10px !important;
        align-items: flex-start !important;
    }

    .lp-conditions-price {
        background: #fff !important;
        border-radius: 18px !important;
        padding: 26px !important;
        text-align: center !important;
        border: 1px solid #EB5B21 !important;
    }

    .lp-conditions-price .price {
        font-size: 1.9rem !important;
        font-weight: 700 !important;
        color: #1a1a2e !important;
    }

    /* Блок кафе */
    .lp-cafe-card {
        background: #fff !important;
        border-radius: 24px !important;
        overflow: hidden !important;
        box-shadow: 0 6px 24px rgba(0,0,0,0.04) !important;
        border: 1px solid #f0f0f0 !important;
        display: grid !important;
        grid-template-columns: 1fr 1.1fr !important;
    }

    .lp-cafe-content {
        padding: 36px !important;
    }

    .lp-cafe-img {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
        display: block !important;
    }

    .lp-cafe-menu-grid {
        display: grid !important;
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 10px !important;
        margin-top: 20px !important;
    }

    .lp-cafe-menu-item {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        background: #f8f7f4 !important;
        padding: 12px !important;
        border-radius: 10px !important;
        font-size: 0.9rem !important;
        border: 1px solid #f0f0f0 !important;
        text-align: center !important;
    }

    /* Шаги */
    .lp-steps-grid {
        display: grid !important;
        grid-template-columns: repeat(3, 1fr) !important;
        gap: 20px !important;
    }

    .lp-step-card {
        background: #fff !important;
        border-radius: 18px !important;
        overflow: hidden !important;
        box-shadow: 0 6px 24px rgba(0,0,0,0.04) !important;
        border: 1px solid #f0f0f0 !important;
    }

    .lp-step-card-img {
        width: 100% !important;
        height: 120px !important;
        object-fit: cover !important;
        display: block !important;
    }

    .lp-step-card-body {
        padding: 22px 18px !important;
    }

    .lp-step-card h3 {
        font-size: 1.05rem !important;
        margin-bottom: 8px !important;
        color: #1a1a2e !important;
        font-weight: 500 !important;
    }

    .lp-step-card p {
        font-size: 0.9rem !important;
        color: #666 !important;
    }

    .lp-step-number {
        width: 42px !important;
        height: 42px !important;
        background: #EB5B21 !important;
        color: #fff !important;
        border-radius: 50% !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        font-weight: 700 !important;
        margin-bottom: 14px !important;
        font-size: 1rem !important;
    }

    /* Адаптивность */
    @media (max-width: 992px) {
        .lp-advantages-grid, .lp-steps-grid {
            grid-template-columns: 1fr 1fr !important;
        }
        .lp-audience-grid {
            grid-template-columns: repeat(2, 1fr) !important;
        }
        .lp-hero-wrapper, .lp-cafe-card, .lp-conditions-wrapper {
            grid-template-columns: 1fr !important;
        }
        .lp-hero-right { height: 220px !important; }
        .lp-cafe-img { height: 200px !important; }
    }

    @media (max-width: 576px) {
        .lp-advantages-grid, .lp-steps-grid {
            grid-template-columns: 1fr !important;
        }
        .lp-audience-grid {
            grid-template-columns: 1fr !important;
        }
    }
