/* ==========================================================
   TROPICANA — UNIFIED MAIN HEADER
   Копирует визуальную систему главной страницы
   ========================================================== */

.tph-main-header,
.tph-main-header * {
    box-sizing:
        border-box;
}


.tph-main-header {

    z-index:
        100 !important;

    position:
        sticky !important;

    top:
        0 !important;

    width:
        100% !important;

    height:
        78px !important;

    margin:
        0 !important;

    padding:
        0 !important;

    background:
        rgba(255,255,255,.95) !important;

    border:
        0 !important;

    border-bottom:
        1px solid rgba(30,63,52,.09) !important;

    -webkit-backdrop-filter:
        blur(18px) !important;

    backdrop-filter:
        blur(18px) !important;

    color:
        #24332f !important;

    font-family:
        Inter,
        "Segoe UI",
        Arial,
        sans-serif !important;
}


.tph-main-header
.tph-header-inner {

    width:
        min(
            1180px,
            calc(100% - 40px)
        ) !important;

    height:
        100% !important;

    margin:
        0 auto !important;

    padding:
        0 !important;

    display:
        flex !important;

    align-items:
        center !important;

    gap:
        30px !important;
}


/* ==========================================================
   ЛОГОТИП
   ========================================================== */

.tph-main-header
.tph-brand {

    flex:
        none !important;

    display:
        inline-flex !important;

    align-items:
        center !important;

    gap:
        11px !important;

    margin:
        0 !important;

    padding:
        0 !important;

    color:
        #24332f !important;

    text-decoration:
        none !important;

    background:
        transparent !important;
}


.tph-main-header
.tph-brand-mark {

    width:
        42px !important;

    height:
        42px !important;

    display:
        grid !important;

    place-items:
        center !important;

    flex:
        0 0 42px !important;

    color:
        #ffffff !important;

    background:
        #23483c !important;

    border-radius:
        50% 50% 47% 53% /
        54% 48% 52% 46% !important;

    font-family:
        Georgia,
        "Times New Roman",
        serif !important;

    font-size:
        22px !important;

    line-height:
        1 !important;

    transform:
        rotate(-4deg) !important;
}


.tph-main-header
.tph-brand-copy {

    display:
        grid !important;

    gap:
        1px !important;
}


.tph-main-header
.tph-brand-copy strong {

    margin:
        0 !important;

    padding:
        0 !important;

    color:
        #24332f !important;

    font-family:
        Georgia,
        "Times New Roman",
        serif !important;

    font-size:
        19px !important;

    font-weight:
        700 !important;

    line-height:
        1.1 !important;
}


.tph-main-header
.tph-brand-copy small {

    color:
        #6d7974 !important;

    font-size:
        9px !important;

    font-weight:
        700 !important;

    line-height:
        1.2 !important;

    letter-spacing:
        .16em !important;

    text-transform:
        uppercase !important;
}


/* ==========================================================
   НАВИГАЦИЯ
   ========================================================== */

.tph-main-header
.tph-main-nav {

    display:
        flex !important;

    align-items:
        center !important;

    gap:
        23px !important;

    margin:
        0 0 0 auto !important;

    padding:
        0 !important;

    background:
        transparent !important;
}


.tph-main-header
.tph-main-nav a {

    position:
        relative !important;

    display:
        inline-block !important;

    margin:
        0 !important;

    padding:
        0 !important;

    color:
        #24332f !important;

    background:
        transparent !important;

    border:
        0 !important;

    font-size:
        13px !important;

    font-weight:
        600 !important;

    line-height:
        1.3 !important;

    text-decoration:
        none !important;

    white-space:
        nowrap !important;
}


.tph-main-header
.tph-main-nav a::after {

    content:
        "" !important;

    position:
        absolute !important;

    left:
        0 !important;

    right:
        100% !important;

    bottom:
        -7px !important;

    height:
        2px !important;

    background:
        #a63735 !important;

    transition:
        right .18s ease !important;
}


.tph-main-header
.tph-main-nav a:hover::after {

    right:
        0 !important;
}


/* ==========================================================
   ТЕЛЕФОН + КНОПКА
   ========================================================== */

.tph-main-header
.tph-header-actions {

    display:
        flex !important;

    align-items:
        center !important;

    gap:
        16px !important;

    margin:
        0 !important;

    padding:
        0 !important;
}


.tph-main-header
.tph-header-phone {

    display:
        grid !important;

    gap:
        2px !important;

    margin:
        0 !important;

    padding:
        0 !important;

    color:
        #24332f !important;

    text-align:
        right !important;

    text-decoration:
        none !important;

    background:
        transparent !important;
}


.tph-main-header
.tph-header-phone small {

    color:
        #6d7974 !important;

    font-size:
        9px !important;

    font-weight:
        700 !important;

    line-height:
        1.2 !important;

    letter-spacing:
        .10em !important;

    text-transform:
        uppercase !important;
}


.tph-main-header
.tph-header-phone strong {

    color:
        #24332f !important;

    font-size:
        14px !important;

    font-weight:
        700 !important;

    line-height:
        1.2 !important;

    white-space:
        nowrap !important;
}


.tph-main-header
.tph-book-button {

    min-height:
        42px !important;

    display:
        inline-flex !important;

    align-items:
        center !important;

    justify-content:
        center !important;

    margin:
        0 !important;

    padding:
        0 16px !important;

    border:
        1px solid #a63735 !important;

    border-radius:
        11px !important;

    color:
        #ffffff !important;

    background:
        #a63735 !important;

    box-shadow:
        0 12px 30px rgba(166,55,53,.20) !important;

    font-size:
        13px !important;

    font-weight:
        700 !important;

    line-height:
        1.2 !important;

    text-decoration:
        none !important;

    white-space:
        nowrap !important;

    transition:
        all .18s ease !important;
}


.tph-main-header
.tph-book-button:hover {

    border-color:
        #842a29 !important;

    background:
        #842a29 !important;

    color:
        #ffffff !important;

    transform:
        translateY(-1px) !important;
}


/* ==========================================================
   КНОПКА МОБИЛЬНОГО МЕНЮ
   ========================================================== */

.tph-main-header
.tph-menu-button {

    display:
        none !important;

    width:
        44px !important;

    height:
        44px !important;

    margin:
        0 !important;

    padding:
        11px !important;

    border:
        0 !important;

    border-radius:
        10px !important;

    color:
        #24332f !important;

    background:
        #f3f6f3 !important;

    cursor:
        pointer !important;
}


.tph-main-header
.tph-menu-button span {

    display:
        block !important;

    width:
        100% !important;

    height:
        2px !important;

    margin:
        4px 0 !important;

    padding:
        0 !important;

    background:
        currentColor !important;

    border:
        0 !important;

    transition:
        transform .18s ease,
        opacity .18s ease !important;
}


.tph-main-header
.tph-menu-button[aria-expanded="true"]
span:nth-child(1) {

    transform:
        translateY(6px)
        rotate(45deg) !important;
}


.tph-main-header
.tph-menu-button[aria-expanded="true"]
span:nth-child(2) {

    opacity:
        0 !important;
}


.tph-main-header
.tph-menu-button[aria-expanded="true"]
span:nth-child(3) {

    transform:
        translateY(-6px)
        rotate(-45deg) !important;
}


/* ==========================================================
   ДО 1080
   ========================================================== */

@media(max-width:1080px) {

    .tph-main-header
    .tph-main-nav {

        gap:
            15px !important;
    }


    .tph-main-header
    .tph-main-nav a {

        font-size:
            11px !important;
    }


    .tph-main-header
    .tph-book-button {

        display:
            none !important;
    }

}


/* ==========================================================
   TABLET / MOBILE
   ========================================================== */

@media(max-width:820px) {

    .tph-main-header {

        height:
            68px !important;
    }


    .tph-main-header
    .tph-header-inner {

        position:
            static !important;

        width:
            min(
                calc(100% - 30px),
                680px
            ) !important;

        justify-content:
            space-between !important;

        gap:
            15px !important;
    }


    .tph-main-header
    .tph-brand-mark {

        width:
            38px !important;

        height:
            38px !important;

        flex-basis:
            38px !important;
    }


    .tph-main-header
    .tph-main-nav {

        position:
            absolute !important;

        z-index:
            101 !important;

        top:
            68px !important;

        left:
            0 !important;

        right:
            0 !important;

        display:
            none !important;

        flex-direction:
            column !important;

        align-items:
            flex-start !important;

        gap:
            18px !important;

        width:
            100% !important;

        margin:
            0 !important;

        padding:
            22px 20px 25px !important;

        border-top:
            1px solid #dfe5e1 !important;

        background:
            #ffffff !important;

        box-shadow:
            0 20px 30px rgba(35,72,60,.10) !important;
    }


    .tph-main-header
    .tph-main-nav.is-open {

        display:
            flex !important;
    }


    .tph-main-header
    .tph-main-nav a {

        width:
            100% !important;

        font-size:
            14px !important;
    }


    .tph-main-header
    .tph-main-nav a::after {

        display:
            none !important;
    }


    .tph-main-header
    .tph-menu-button {

        order:
            3 !important;

        display:
            block !important;

        flex:
            0 0 44px !important;
    }


    .tph-main-header
    .tph-header-actions {

        margin-left:
            auto !important;
    }


    .tph-main-header
    .tph-header-phone small {

        display:
            none !important;
    }

}


/* ==========================================================
   MOBILE
   ========================================================== */

@media(max-width:580px) {

    .tph-main-header
    .tph-header-inner {

        width:
            min(
                calc(100% - 24px),
                520px
            ) !important;
    }


    .tph-main-header
    .tph-header-phone {

        display:
            none !important;
    }


    .tph-main-header
    .tph-brand-copy strong {

        font-size:
            17px !important;
    }

}
