/*
 * Reel theme — адаптивные стили (подключается после style.css).
 * Version: 1.0.1
 */

@media (max-width: 992px) {
    .reel-home .container {
        padding-left: 16px;
        padding-right: 16px;
    }

    .reel-home .header-burger {
        display: inline-flex;
    }

    .reel-home .header-wrap--logo-left {
        flex-direction: row;
        flex-wrap: wrap;
        align-items: center;
        justify-content: flex-start;
        gap: 8px 12px;
    }

    .reel-home .header-wrap--logo-left .header-burger {
        margin-left: auto;
    }

    .reel-home .header-wrap--logo-left .header-nav {
        flex: 0 0 100%;
        width: 100%;
        min-width: 0;
    }

    .reel-home .header-wrap--logo-center {
        display: grid;
        grid-template-columns: minmax(0, 48px) minmax(0, 1fr) minmax(0, 48px);
        align-items: center;
        gap: 0;
        text-align: left;
    }

    .reel-home .header-wrap--logo-center .logo {
        grid-column: 2;
        justify-self: center;
        text-align: center;
    }

    .reel-home .header-wrap--logo-center .header-burger {
        grid-column: 3;
        justify-self: end;
    }

    .reel-home .header-wrap--logo-center .header-nav {
        grid-column: 1 / -1;
        width: 100%;
    }

    .reel-home header.header--scrolled .header-wrap--logo-center > .logo {
        opacity: 1;
        max-height: 130px;
        min-height: 0;
        margin: 0;
        pointer-events: auto;
        transform: none;
    }

    .reel-home header.header--scrolled .header-wrap--logo-center {
        gap: 8px;
    }

    .reel-home .header-nav {
        position: absolute;
        left: 0;
        right: 0;
        top: 100%;
        margin-top: 0;
        background: var(--bg-white);
        border-bottom: 1px solid var(--border);
        box-shadow: 0 12px 28px rgba(15, 23, 42, 0.1);
        padding: 12px 16px 20px;
        z-index: 99;
        max-height: 0;
        overflow: hidden;
        opacity: 0;
        visibility: hidden;
        transition:
            max-height 0.35s ease,
            opacity 0.25s ease,
            visibility 0.25s ease;
    }

    .reel-home .header-nav.is-open {
        max-height: min(85vh, 520px);
        opacity: 1;
        visibility: visible;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
    }

    .reel-home .header-wrap--logo-left .header-nav {
        justify-content: stretch;
    }

    .reel-home .header-nav .menu {
        flex-direction: column;
        align-items: stretch;
        gap: 0;
        width: 100%;
    }

    .reel-home .header-nav .menu > li {
        border-bottom: 1px solid var(--border);
    }

    .reel-home .header-nav .menu > li:last-child {
        border-bottom: 0;
    }

    .reel-home .header-nav .menu a {
        display: block;
        white-space: normal;
        padding: 14px 4px;
    }

    body.reel-home.header-nav-open {
        overflow: hidden;
    }

    .reel-home .hero {
        padding: 36px 0 48px;
    }

    .reel-home .slot-title {
        font-size: clamp(22px, 5vw, 32px);
        line-height: 1.2;
    }

    .reel-home .section-title {
        font-size: clamp(22px, 4.5vw, 28px);
        margin-bottom: 28px;
    }

    .reel-home .page-main {
        padding: 28px 0 48px;
    }

    .reel-home .casino-card {
        flex-wrap: wrap;
        align-items: flex-start;
        padding: 16px 18px;
        gap: 14px 16px;
    }

    .reel-home .casino-card__logo-col .casino-logo {
        max-width: 150px;
        max-height: 64px;
    }

    .reel-home .casino-card__middle {
        flex: 1 1 min(100%, 360px);
        min-width: 0;
    }

    .reel-home .casino-card__name-row {
        flex-wrap: wrap;
        align-items: flex-start;
        gap: 10px 12px;
    }

    .reel-home .casino-card__name-row_one {
        flex: 1 1 200px;
        min-width: 0;
    }

    .reel-home .casino-card__name-row .casino-bonus {
        flex: 1 1 180px;
        max-width: 100%;
    }

    .reel-home .casino-title {
        font-size: clamp(16px, 2.5vw, 18px);
    }

    .reel-home .casino-action {
        flex: 0 0 auto;
        margin-left: auto;
        align-self: center;
    }

    .reel-home .casinos-section {
        margin-top: 40px;
        margin-bottom: 40px;
    }

    .reel-home .faq-section {
        margin-top: 36px;
        margin-bottom: 48px;
    }

    .reel-home .faq-item__trigger {
        padding: 16px 18px;
        font-size: 16px;
    }

    .reel-home .faq-item__answer {
        padding: 16px 18px 20px;
        font-size: 15px;
    }
}

@media (max-width: 768px) {
    .reel-home .casino-card {
        flex-direction: column;
        flex-wrap: nowrap;
        align-items: stretch;
        text-align: center;
        padding: 18px 16px;
        gap: 16px;
    }

    .reel-home .casino-card__logo-col {
        width: 100%;
        justify-content: center;
    }

    .reel-home .casino-card__logo-col .casino-logo {
        max-width: 200px;
        max-height: 72px;
    }

    .reel-home .casino-card__middle {
        width: 100%;
        flex: 1 1 auto;
    }

    .reel-home .casino-card__name-row {
        flex-direction: column;
        flex-wrap: nowrap;
        align-items: stretch;
        text-align: center;
        gap: 14px;
    }

    .reel-home .casino-card__name-row_one {
        align-items: center;
        width: 100%;
    }

    .reel-home .casino-title {
        text-align: center;
    }

    .reel-home .casino-card .casino-rating {
        justify-content: center;
    }

    .reel-home .casino-rating--10 .casino-rating__stars {
        justify-content: center;
    }

    .reel-home .casino-card .casino-bonus {
        max-width: none;
        width: 100%;
        min-width: 0;
        justify-content: center;
        margin-left: 0;
    }

    .reel-home .casino-card .casino-bonus__body {
        text-align: center;
    }

    .reel-home .casino-action {
        width: 100%;
        max-width: 100%;
        margin-left: 0;
        align-self: stretch;
    }

    .reel-home .casino-card .btn-small {
        width: 100%;
        max-width: 320px;
    }

    .reel-home .specs {
        grid-template-columns: repeat(2, 1fr);
    }

    .reel-home .game-wrapper {
        margin: 0 0 32px;
    }

    .reel-home .game-buttons-overlay {
        flex-direction: column;
        width: 100%;
    }

    .reel-home .btn {
        width: 100%;
    }

    .reel-home .review-content {
        padding: 25px;
    }

    .reel-home #review .alignleft,
    .reel-home #review .alignright {
        float: none;
        display: block;
        margin-left: auto;
        margin-right: auto;
    }

    .reel-home footer {
        padding: 28px 0;
        font-size: 12px;
    }

    .reel-home .casino-card__name-row_one {
        flex: unset;
    }
    .reel-home .casino-card__name-row .casino-bonus {
        flex: unset;
    }
    .reel-home .casino-bonus__body {
        display: flex;
        flex-direction: column;
        gap: 3px;
        text-align: left;
        min-width: 0;
        align-items: baseline;
    }
    .reel-home .casino-card__name-row_one{
        margin-left: 0;
    }
    .casino-bonus{
        width: max-content !important;
        margin: 0 auto !important;
    }
}

@media (max-width: 480px) {
    .reel-home .specs {
        grid-template-columns: 1fr;
    }

    .reel-home .hero {
        padding: 28px 0 40px;
    }

    .reel-home .casino-card {
        padding: 16px 14px;
        border-radius: 16px;
    }

    .reel-home .casino-card .casino-bonus {
        padding: 10px 12px;
    }

    .reel-home .casinos-wrapper {
        gap: 14px;
    }
}
