/* ========================================
   СЕКЦИЯ УСЛУГИ - точно по макету Figma
   Все размеры вычислены по координатам из Figma
   ======================================== */

.services {
    width: 100%;
    /* Вплотную с фотоальбомом - убираем gap */
    padding: 0 0 40px;
    background: #ffffff;
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 700px;
}

.services__container {
    max-width: 1728px;
    width: 100%;
    padding: 0 28.5px;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
}

/* Обёртка для позиционирования - размер всей группы из Figma */
.services__wrapper {
    position: relative;
    width: 823px;
    height: 520px;
}

/* Карточка с услугами */
.services__card {
    position: absolute;
    /* Карточка на 70px ниже начала группы */
    top: 70px;
    left: 0;
    width: 788px;
    height: 449.91px;
    /* Фон с непрозрачностью 23% из Figma (только фон полупрозрачный, текст остаётся читаемым) */
    background: rgba(234, 234, 234, 0.23);
    /* Обводка с непрозрачностью 23% (#918a8a с alpha 0.23) */
    border: 1px solid rgba(145, 138, 138, 0.23);
    border-radius: 51.61px;
    /* Padding вычислен по координатам маркеров в Figma:
       Padding left: маркер x=-6454, карточка x=-6614 → 160px
       Padding top: маркер y≈7669, карточка y=7511 → 158px */
    padding: 158px 70px 60px 160px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    box-sizing: border-box;
    /* Тень вниз для объёма */
    box-shadow: 0 8px 16px rgba(0, 0, 0, 0.1);
}

/* Заголовок "Услуги" - выровнен по правому краю плашки */
.services__title {
    position: absolute;
    top: 0;
    /* Правый край по карточке: карточка 788px, заголовок выровнен справа */
    right: 35px; /* wrapper 823px - card 788px = 35px */
    font-family: 'Coolvetica Rg', 'Coolvetica', sans-serif;
    font-weight: 400; /* Coolvetica Regular */
    font-size: 116.20px;
    line-height: 139.44px;
    color: #000000;
    margin: 0;
    text-align: right;
    z-index: 10;
}

/* Сетка услуг */
.services__grid {
    display: grid;
    /* Фиксированные ширины колонок из Figma:
       Левая: маркер(7.55) + gap(6) + текст(157) = 170.55px
       Правая: маркер(7.55) + gap(6) + текст(186) = 199.55px
       Расстояние между маркерами: 264.43px */
    grid-template-columns: 170.55px 199.55px;
    /* Gap между колонками: расстояние между маркерами минус ширина левой колонки */
    gap: 0 93.88px;
    width: 100%;
    position: relative;
    z-index: 2;
}

.services__column {
    display: flex;
    flex-direction: column;
    /* Расстояние между строками: Автостоянка y=7671, Wi-Fi y=7765.82, разница=94.82px
       Но нужно учесть высоту текста 35px: 94.82 - 35 = 59.82px */
    gap: 59.82px;
}

/* Элемент услуги */
.services__item {
    display: flex;
    align-items: center;
    /* Расстояние между маркером и текстом: маркер конец=-6446.45, текст=-6440.4, разница=6px */
    gap: 6px;
}

/* Маркер (фиолетовый прямоугольник) */
.services__marker {
    width: 7.55px;
    height: 19.64px;
    background: #958ad1;
    border-radius: 2px;
    flex-shrink: 0;
}

/* Текст услуги */
.services__text {
    font-family: 'Coolvetica', sans-serif;
    font-weight: 300; /* Coolvetica Light */
    font-size: 29.08px;
    line-height: 34.90px;
    color: #000000;
}

/* ===== КНОПКА "ВСЕ УСЛУГИ" ===== */
/* Стилизуем по аналогии с кнопкой "Узнать больше" из секции "О нас" */
.services__cta {
    /* Размеры кнопки как у about__cta, но чуть меньше */
    width: 320px;
    height: 82px;
    background-color: #2f2f2f;
    border-radius: 41px;
    border: none;
    font-family: 'Coolvetica', sans-serif;
    font-size: 30px;
    font-weight: 300; /* Coolvetica Light */
    line-height: 36px;
    color: #ffffff;
    cursor: pointer;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    /* Центрирование кнопки */
    margin: 50px auto 0;
}

.services__cta:hover {
    background-color: #1f1f1f;
    transform: scale(1.02);
}

.services__cta:active {
    transform: scale(0.98);
}

/* Вертикальный разделитель - справа ОТ плашки 
   По Figma координаты относительно группы (wrapper):
   - Wrapper: x=-6614, y=7441
   - Разделитель: x=-5809, y=7488
   - От левого края wrapper: -5809 - (-6614) = 805px
   - От верха wrapper: 7488 - 7441 = 47px
*/
.services__divider {
    position: absolute;
    /* 805px от левого края wrapper (17px правее карточки 788px) */
    left: 805px;
    /* 47px от начала группы (23px выше верха карточки) */
    top: 47px;
    width: 18px;
    height: 473px;
    background: #958ad1;
    border-radius: 2px;
}

/* ========================================
   АДАПТИВНЫЕ СТИЛИ
   ======================================== */

/* Средние экраны (между десктопом и планшетом) */
@media screen and (max-width: 1440px) {
    .services {
        padding: 0 0 40px;
        min-height: 650px;
    }
    
    .services__wrapper {
        transform: scale(0.85);
        transform-origin: center center;
    }
    
    .services__cta {
        width: 280px;
        height: 70px;
        font-size: 26px;
        margin-top: 40px;
    }
}

@media screen and (max-width: 1200px) {
    .services {
        padding: 0 0 40px;
        min-height: 650px;
    }
    
    .services__wrapper {
        transform: scale(0.75);
        transform-origin: center center;
    }
    
    .services__cta {
        width: 260px;
        height: 65px;
        font-size: 24px;
        margin-top: 35px;
    }
}

/* Планшеты */
@media screen and (max-width: 1024px) {
    .services {
        padding: 0 0 40px;
        min-height: 450px;
    }
    
    .services__wrapper {
        width: 90%;
        max-width: 700px;
        height: auto;
        transform: none;
    }
    
    .services__card {
        width: 100%;
        max-width: 650px;
        height: auto;
        padding: 70px 40px 50px;
        position: relative;
        top: 60px;
    }
    
    .services__title {
        font-size: 90px;
        line-height: 108px;
        top: 0;
        right: 0;
    }
    
    .services__grid {
        gap: 0 60px;
    }
    
    .services__column {
        gap: 35px;
    }
    
    .services__text {
        font-size: 24px;
        line-height: 29px;
    }
    
    .services__cta {
        width: 280px;
        height: 70px;
        font-size: 26px;
        margin: 40px auto 0;
    }
    
    /* Скрываем разделитель, чтобы не заползал под плашку */
    .services__divider {
        display: none;
    }
}

/* Мобильные устройства */
@media screen and (max-width: 768px) {
    .services {
        padding: 0 0 60px;
        min-height: auto;
    }
    
    .services__container {
        /* Фиксированные отступы слева и справа */
        padding: 0 20px 0 20px;
    }
    
    .services__wrapper {
        width: 100%;
    }
    
    .services__card {
        width: 100%;
        padding: 60px 30px 30px;
        border-radius: 30px;
        top: 50px;
        position: relative;
    }
    
    .services__title {
        font-size: 60px;
        line-height: 72px;
        top: 0;
        /* Отступ справа равный отступу контейнера для симметрии */
        right: 20px;
    }
    
    .services__grid {
        grid-template-columns: 1fr;
        gap: 30px 0;
    }
    
    .services__column {
        gap: 25px;
    }
    
    .services__item {
        gap: 12px;
    }
    
    .services__marker {
        width: 6px;
        height: 16px;
    }
    
    .services__text {
        font-size: 20px;
        line-height: 24px;
    }
    
    .services__cta {
        width: 100%;
        max-width: 280px;
        height: 65px;
        font-size: 24px;
        margin: 35px auto 0;
    }
    
    .services__divider {
        display: none;
    }
}

/* Маленькие мобильные */
@media screen and (max-width: 480px) {
    .services {
        padding: 0 0 50px;
        min-height: auto;
    }
    
    .services__title {
        font-size: 48px;
        line-height: 58px;
        /* Отступ справа равный отступу контейнера для симметрии */
        right: 20px;
    }
    
    .services__card {
        padding: 50px 20px 25px;
        border-radius: 25px;
        top: 40px;
    }
    
    .services__text {
        font-size: 18px;
        line-height: 22px;
    }
    
    .services__cta {
        width: 100%;
        max-width: 100%;
        height: 60px;
        font-size: 22px;
        margin: 30px 0 0;
    }
}

