@media (max-width: 740px) {
    .container {
        max-width: 740px;
        padding: 0 20px;
    }

    /* Центрируем слайдер на мобилке */
    .examplesWorks .container {
        padding: 0;
    }

    header {
        padding: 23px 0 50px;
    }

    .header-container {
        gap: 49px;
    }

    .top-header {
        justify-content: center;
    }

    .top-header p {
        font-size: 16px;
    }

    .top-header p span {
        font-size: 8px;
    }

    .center-header {
        flex-direction: column;
        gap: 32px;
    }

    .center-header h1 {
        font-size: 44px;
        line-height: 51px;
        max-width: 233px;
        text-align: center;
    }

    .center-header-right {
        align-items: center;
        gap: 1px;
    }

    .center-header-right img {
        margin-top: 0px;
        width: 148px;
    }

    .center-header-right .full-price {
        font-size: 38px;
        position: relative;
        left: -9px;
    }

    .center-header-right .full-price::before {
        content: url(img/cross_3.png);
        position: absolute;
        top: 8px;
        left: 21px;
    }

    .center-header-right .discount-price {
        font-size: 40px;
    }

    .bottom-header {
        flex-direction: column;
        gap: 24px;
        margin-top: -17px;
    }

    .bottom-header button {
        padding: 0px 57px;
        font-size: 16px;
        height: 44px;
    }

    .headerContacts {
        gap: 52px;
    }

    .examplesWorks h2,
    .tariffs h2,
    .aboutMe h2,
    .chooseUs h2,
    .reviews h2,
    .leaveRequest h2 {
        font-size: 24px;
        text-align: center;
        padding: 0 20px;
    }

    .examplesWorks {
        padding: 40px 0 142px;
    }

    /* Мобильная версия - показываем только один слайд */
    .works {
        position: relative;
        max-width: 100%;
        overflow: hidden;
    }

    .works-flex {
        display: flex;
        transition: transform 0.5s cubic-bezier(0.4, 0, 0.2, 1);
    }

    .works-slide {
        flex: 0 0 100vw;
        max-width: 100vw;
        width: 100vw;
        display: flex;
        justify-content: center;
        align-items: center;
    }

    .works video {
        width: 100%;
        max-width: 350px;
        height: auto;
        border-radius: 8px;
        margin: 0;
    }

    .works video[src*="img/work2"] {
        width: 100%;
        max-width: 350px;
        height: auto;
    }

    .works video[src*="img/work3"] {
        width: 100%;
        max-width: 350px;
        height: auto;
    }

    /* Адаптируем стрелки для мобильной версии */
    .works-arrow {
        display: none;
    }

    .works-arrow-prev {
        left: 10px;
    }

    .works-arrow-next {
        right: 10px;
    }

    .works-dots {
        margin-left: 0;
        display: flex !important;
    }

    .works-dot {
        width: 12px;
        height: 12px;
        margin: 0 4px;
    }

    /* Адаптируем кнопку play */
    .play-btn {
        display: none !important;
    }

    .play-btn svg {
        width: 75px;
        height: 75px;
    }

    /* Адаптируем unmute кнопку */
    .unmute-btn {
        width: 70px;
        height: 70px;
        right: 11px;
        bottom: 12px;
    }

    .unmute-btn svg {
        width: 50px;
        height: 50px;
    }


    .tariffs-container h2 {
        margin-bottom: 32px;
    }

    .tariffs {
        padding: 40px 0 77px;
    }

    .tariff {
        width: 300px;
        max-width: 95%;
        height: 444px;
        margin: 0 auto;
    }

    .carousel {
        position: relative;
        margin-bottom: 40px;
        /* Предотвращаем конфликт с Telegram браузером */
        touch-action: pan-y pinch-zoom;
        -webkit-touch-callout: none;
        -webkit-user-select: none;
        -khtml-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        user-select: none;
    }

    .carousel-inner {
        display: block;
        /* Дополнительная защита от конфликта с Telegram */
        touch-action: pan-y pinch-zoom;
        -webkit-touch-callout: none;
        -webkit-user-select: none;
        -khtml-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        user-select: none;
    }

    .carousel-indicators {
        display: flex!important;
        position: absolute;
        right: 0;
        bottom: -42px;
        left: 0;
        z-index: 15;
        display: flex;
        justify-content: center;
        padding: 0;
        margin-right: 15%;
        margin-bottom: 1rem;
        margin-left: 15%;
        list-style: none;
    }

    .carousel-indicators [data-bs-target] {
        width: 17px;
        height: 17px;
        border-radius: 50%;
        background-color: #ccc;
        border: none;
        margin: 0 5px;
        cursor: pointer;
        transition: background-color 0.3s ease;
    }

    .carousel-indicators [data-bs-target].active {
        background-color: #cc0101cc;
    }

    /* Защита carousel-item от конфликта с Telegram */
    .carousel-item {
        touch-action: pan-y pinch-zoom;
        -webkit-touch-callout: none;
        -webkit-user-select: none;
        -khtml-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        user-select: none;
    }

    /* Защита ссылок внутри карусели от конфликта с Telegram */
    .carousel-item a {
        touch-action: pan-y pinch-zoom;
        -webkit-touch-callout: none;
        -webkit-user-select: none;
        -khtml-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        user-select: none;
    }

    /* Показываем мобильный слайдер, скрываем десктопную версию */
    .tariffsGrid {
        display: none;
    }

    .tariffs-mobile-slider {
        display: block;
        overflow: hidden;
        position: relative;
        padding: 0 20px;
    }

    .tariffs-flex {
        display: flex;
        gap: 8px;
        transition: transform 0.5s cubic-bezier(0.4, 0, 0.2, 1);
        width: fit-content;
        margin: 0 auto;
    }

    .tariffs-flex .tariff {
        width: 226px;
        flex-shrink: 0;
        margin: 0;
    }

    .tariffs-arrow {
        display: none;
    }

    .tariffs-dots {
        margin-top: 16px;
        display: flex;
        justify-content: center;
    }

    .tariffs-flex .tariff {
        min-width: auto;
    }


    .aboutMe {
        padding: 40px 0 32px;
    }

    .aboutMe h2 {
        margin-bottom: 23px;
    }

    .aboutMe .aboutMe-Desktop {
        display: none;
    }

    .aboutMe .aboutMe-Mobile {
        display: flex;
        flex-direction: column;
        align-items: center;
        position: relative;
        overflow: hidden;
        width: 304px;
        margin: 0 auto;
        padding: 0;
        border-radius: 8px;
    }

    .aboutMe-Mobile-text {
        display: flex;
        flex-direction: column;
        justify-content: left;
        padding: 12px 24px 32px;
        background: linear-gradient(180deg, #FF9898 0%, #FF6666 100%);
        border-radius: 8px;
        width: 304px;
        gap: 24px;
        color: #fff;
        font-family: 'Jost', sans-serif;
        position: absolute;
        bottom: -315px;
        cursor: pointer;
        z-index: 3;
    }

    .aboutMe-Mobile-text.expanded {
        bottom: 0;
    }

    .aboutMe-Mobile-text svg {
        margin: 0 auto;
        transition: transform 0.5s cubic-bezier(0.4, 0, 0.2, 1);
    }

    .aboutMe-Mobile-text.expanded svg {
        transform: rotate(180deg);
    }

    /* Анимация для плавного выезда блока */
    @keyframes slideUp {
        from {
            bottom: -315px;
        }

        to {
            bottom: 0;
        }
    }

    @keyframes slideDown {
        from {
            bottom: 0;
        }

        to {
            bottom: -315px;
        }
    }

    .aboutMe-Mobile-text.sliding-up {
        animation: slideUp 0.5s cubic-bezier(0.4, 0, 0.2, 1) forwards;
    }

    .aboutMe-Mobile-text.sliding-down {
        animation: slideDown 0.5s cubic-bezier(0.4, 0, 0.2, 1) forwards;
    }

    .aboutMe-Mobile-text h3 {
        color: #fff;
        font-size: 32px;
        text-align: left;
        margin-bottom: 0;
    }

    .aboutMe-Mobile-text p {
        font-size: 14px;
        color: #fff;
        line-height: 1.23;
    }

    .aboutMe-Mobile-text p:first-of-type {
        font-size: 16px;
        margin-top: -24px;
    }

    .aboutMe p:nth-of-type(2) {
        margin: 31px 0 0px;
    }


    .chooseUs {
        padding: 40px 0 91px;
    }

    .chooseUs-grid {
        grid-template-columns: repeat(1, 1fr);
    }

    .chooseUs-card {
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        border-radius: 8px;
        padding: 22px;
    }

    .chooseUs-desc {
        display: none;
    }

    .chooseUs-title {
        font-size: 16px;
        margin-bottom: 0px;
    }

    .chooseUs-num {
        font-size: 24px;
    }


    .reviews {
        padding: 40px 20px;
        /* max-width: 320px; */
    }

    .reviews h2 {
        margin-bottom: 32px;
    }

    .reviews-card {
        padding: 18px 16px 16px;
        max-width: 320px;
    }

    .reviews-slider-wrap .reviews-arrow-prev,
    .reviews-slider-wrap .reviews-arrow-next {
        display: none;
    }

    .textReview {
        font-size: 14px;
    }

    .seeReview {
        font-size: 14px;
        bottom: -28px;
    }

    .nameFotoReview p {
        font-size: 16px;
    }

    .reviews-card .nameFotoReview img {
        width: 38px;
    }

    .reviews-dot {
        width: 12px;
        height: 12px;
    }

    .nameFotoReview {
        margin-top: 48px;
    }


    .leaveRequest {
        padding: 40px 0 214px;
    }

    .leaveRequest h2 {
        margin-bottom: 131px;
    }

    .leaveRequest form input {
        min-width: auto;
        max-width: 350px;
        width: 304px;
        height: 44px;
        font-size: 16px;
        border-radius: 8px;
        padding-left: 24px;
    }

    .leaveRequest form button {
        padding: 0px 38px;
        font-size: 16px;
        height: 44px;
    }

    .leaveRequest form div {
        margin-top: -19px;
        gap: 20px;
    }


    footer.container {
        padding: 40px 0 80px;
        flex-direction: column;
        gap: 61px;
    }

    .footer-title {
        order: 2;
    }

    .footer-contacts {
        display: flex;
        flex-direction: column;
        gap: 16px;
        align-items: center;
        order: 1;
    }

    .footer-contacts p:first-of-type {
        margin-bottom: 8px;
    }

    .footer-main {
        font-size: 44px;
    }

    .footer-sub {
        font-size: 24px;
    }



    .fixed-modal-btn-wrap-wedding {
        right: 10px;
        bottom: 10px;
    }
    .fixed-modal-btn-wedding {
        font-size: 16px;
        padding: 12px 18px;
    }
    .modal-timer-wedding {
        font-size: 13px;
        padding: 2px 8px;
    }
}

@media (max-width: 600px) {
    /* Адаптив для модального окна */
    .modal-content {
        min-width: auto;
        width: 90vw;
        max-width: 320px;
        padding: 32px 24px 24px 24px;
        margin: 20px;
    }

    .modal-close {
        top: 3px;
        right: 11px;
        font-size: 36px;
    }

    .modal-form {
        gap: 24px;
    }

    .modal-form input {
        width: 100%;
        max-width: 280px;
        height: 48px;
        font-size: 16px;
        padding: 0 20px;
    }

    .modal-form input::placeholder {
        font-size: 14px;
    }

    .modal-form button {
        width: 100%;
        max-width: 280px;
        padding: 0 32px;
        font-size: 17px;
        height: 48px;
    }

    .modal-form div {
        margin-top: 16px;
        gap: 20px;
        flex-direction: column;
    }

    .modal-form a svg {
        width: 40px;
        height: 40px;
    }

    .modal-success {
        font-size: 18px;
        padding: 0 16px;
    }

    .spinner {
        width: 48px;
        height: 48px;
        border-width: 5px;
    }

    /* Адаптив для фиксированной кнопки */
    .fixed-modal-btn-wrap-wedding {
        right: 8px;
        bottom: 8px;
    }

    .fixed-modal-btn-wedding {
        font-size: 14px;
        padding: 10px 16px;
        border-radius: 20px;
    }

    .modal-timer-wedding {
        font-size: 12px;
        padding: 2px 6px;
    }
    
    .review-modal-content img {
        max-width: 90vw;
        max-height: 70vh;
    }

    .review-modal-close {
        top: 8px;
        right: 12px;
        font-size: 32px;
    }
}