/* Google Fonts */
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500&display=swap');

/* Typography Overrides */
h1, h2, h3, h4, h5, h6, .main_title h2, .tp-caption, .tp_m_title {
    font-family: 'Playfair Display', serif !important;
}

body, p, a, span, div, input, button, .top_menu, footer, label, .form-control {
    font-family: 'Montserrat', sans-serif;
}

/* Navbar & Header Styling */
header {
    background: rgba(237, 230, 218, 0.85) !important; /* #EDE6DA with opacity for blur */
    border-bottom: 1px solid #C8A96B !important;
    backdrop-filter: blur(10px) !important;
    -webkit-backdrop-filter: blur(10px) !important;
    box-shadow: 0 2px 12px rgba(0,0,0,0.04) !important;
}

.top_menu {
    background: #EDE6DA !important;
    border-bottom: 1px solid rgba(200, 169, 107, 0.3) !important;
}
.top_menu a, .top_menu span, .top_menu i {
    color: #1A1A1A !important;
}

/* Menu Text */
#main_menu .nav.navbar-nav > li > a {
    color: #1A1A1A !important;
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 600;
    transition: color 0.3s ease;
}

#main_menu .nav.navbar-nav > li > a:hover,
#main_menu .nav.navbar-nav > li.active > a,
#main_menu .nav.navbar-nav > li:hover > a {
    color: #C8A96B !important;
}

/* Dropdown styling */
.dropdown-menu {
    background: rgba(237, 230, 218, 0.95) !important;
    backdrop-filter: blur(10px) !important;
    border: 1px solid #C8A96B !important;
    box-shadow: 0 4px 15px rgba(0,0,0,0.05) !important;
}
.dropdown-menu > li > a {
    color: #1A1A1A !important;
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 500;
}
.dropdown-menu > li > a:hover {
    color: #C8A96B !important;
    background: transparent !important;
}

/* Buttons */
.button, .btn, .btn_blue, .btn_dark, .btn_yellow, .btn-rez, button[type="submit"] {
    background: #C8A96B !important;
    color: #FFFFFF !important;
    font-family: 'Montserrat', sans-serif !important;
    border: none !important;
    box-shadow: 0 4px 15px rgba(200, 169, 107, 0.3) !important;
    transition: all 0.3s ease !important;
}

.button:hover, .btn:hover, .btn_blue:hover, .btn_dark:hover, .btn_yellow:hover, .btn-rez:hover, button[type="submit"]:hover {
    background: #B8924F !important;
    color: #FFFFFF !important;
    box-shadow: 0 6px 20px rgba(184, 146, 79, 0.4) !important;
}

/* ======================================
   MOBİL MENÜ - TAM DÜZELTME
   ====================================== */

/* Çan butonu - masaüstünde gizli */
.mobile-bell-btn {
    display: none;
}

@media (max-width: 991px) {

    /* Sayfa taşmasını önle */
    html, body {
        overflow-x: hidden !important;
        width: 100% !important;
    }

    /* TOP MENU mobilde tamamen gizle */
    .top_menu {
        display: none !important;
    }

    /* Header tam genişlik */
    header {
        background: #EDE6DA !important;
        position: relative !important;
        width: 100% !important;
        left: 0 !important;
        right: 0 !important;
        border-bottom: 1px solid #C8A96B !important;
    }
    header .container {
        width: 100% !important;
        padding: 0 15px !important;
    }

    /* Navbar header: logo SOL | çan ORTA | hamburger SAĞ */
    header .navbar-header {
        display: flex !important;
        flex-direction: row !important;
        justify-content: space-between !important;
        align-items: center !important;
        width: 100% !important;
        padding: 8px 0 !important;
        float: none !important;
    }
    /* Logo sol (order:1) — 1/3 genişlik, sola hizalı */
    header .navbar-brand {
        order: 1 !important;
        flex: 1 !important;
        float: none !important;
        padding: 0 !important;
        margin: 0 !important;
        text-align: left !important;
        display: flex !important;
        align-items: center !important;
    }
    header .navbar-brand img {
        max-height: 44px !important;
        width: auto !important;
    }
    /* Çan ortada (order:2) — 1/3 genişlik, tam ortalı */
    .mobile-bell-btn {
        order: 2 !important;
        flex: 1 !important;
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
        width: 44px !important;
        height: 44px !important;
        margin: 0 auto !important;
        flex: 0 0 44px !important;
    }
    /* Hamburger sağda (order:3) — 1/3 genişlik, sağa hizalı */
    header .navbar-header .mobile_menu_btn,
    header .navbar-header .navbar-toggle {
        order: 3 !important;
        flex: 1 !important;
        float: none !important;
        display: flex !important;
        justify-content: flex-end !important;
        align-items: center !important;
        margin: 0 !important;
    }

    /* Çan ikonu ortada */
    .mobile-bell-btn {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 44px;
        height: 44px;
        background: #C8A96B;
        border-radius: 50%;
        color: #fff !important;
        font-size: 20px;
        text-decoration: none !important;
        box-shadow: 0 4px 12px rgba(200,169,107,0.4);
        transition: all 0.3s ease;
        animation: bell-ring 2s infinite;
    }
    .mobile-bell-btn:hover {
        background: #B8924F;
        color: #fff !important;
        transform: scale(1.1);
    }

    @keyframes bell-ring {
        0%, 90%, 100% { transform: rotate(0deg); }
        93%  { transform: rotate(15deg); }
        96%  { transform: rotate(-15deg); }
    }

    /* Hamburger butonu */
    .mobile_menu_btn, .navbar-toggle {
        border: none !important;
        border-radius: 6px !important;
        padding: 0 !important;
        background: transparent !important;
        float: none !important;
        margin: 0 !important;
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
        width: 44px !important;
        height: 44px !important;
        color: #1A1A1A !important;
        font-size: 20px !important;
    }
    
    /* İkonların açılıp kapanma durumu */
    .mobile_menu_btn.active .menu-icon {
        display: none !important;
    }
    .mobile_menu_btn.active .close-icon {
        display: inline-block !important;
    }

    /* ============================================
       jPushMenu: sağ panel → yukarıdan inen menü
       ============================================ */
    /* Kapalı durum: ekranın üstünde gizli */
    .mobile_menu,
    nav#main_menu.mobile_menu {
        position: fixed !important;
        top: -100vh !important;
        left: 0 !important;
        right: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        max-height: 90vh !important;
        overflow-y: auto !important;
        background: #EDE6DA !important;
        border-left: none !important;
        border-bottom: 2px solid #C8A96B !important;
        box-shadow: 0 8px 30px rgba(0,0,0,0.15) !important;
        padding: 0 !important;
        margin: 0 !important;
        float: none !important;
        z-index: 999999 !important;
        transition: top 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important;
        display: block !important;
        visibility: hidden !important;
    }
    /* Açık durum: jPushMenu mobile_menu_open ekliyor */
    .mobile_menu.mobile_menu_open,
    nav#main_menu.mobile_menu.mobile_menu_open {
        top: 70px !important;
        visibility: visible !important;
    }
    /* Body kaymasını iptal et */
    body.push_mobile,
    body.push_mobile header,
    body.push_mobile .navbar-fixed-top {
        left: 0 !important;
        transform: none !important;
        transition: none !important;
    }
    /* navbar-collapse override: jPushMenu ile çakışmasın */
    .navbar-collapse.collapse {
        display: none !important;
    }
    .navbar-collapse.in,
    .navbar-collapse.collapsing {
        display: block !important;
        width: 100% !important;
    }

    /* Menü listesi */
    #main_menu .nav.navbar-nav {
        width: 100% !important;
        margin: 0 !important;
        padding: 10px 0 !important;
        float: none !important;
    }
    /* ---- Menü öğeleri renk override (responsive.css beyazları sil) ---- */
    #main_menu.mobile_menu .navbar-nav li,
    #main_menu .nav.navbar-nav > li {
        background: #EDE6DA !important;
        border-bottom: 1px solid rgba(200, 169, 107, 0.25) !important;
        width: 100% !important;
        float: none !important;
        display: block !important;
    }
    #main_menu.mobile_menu .navbar-nav li:hover,
    #main_menu.mobile_menu .navbar-nav .open .dropdown-toggle {
        background: rgba(200, 169, 107, 0.12) !important;
    }
    #main_menu.mobile_menu .navbar-nav li a,
    #main_menu .nav.navbar-nav > li > a {
        width: 100% !important;
        padding: 14px 20px !important;
        color: #1A1A1A !important;
        font-family: 'Montserrat', sans-serif !important;
        font-size: 15px !important;
        font-weight: 600 !important;
        display: block !important;
        transition: all 0.2s ease !important;
        background: transparent !important;
    }
    #main_menu.mobile_menu .navbar-nav li a:hover,
    #main_menu .nav.navbar-nav > li > a:hover,
    #main_menu .nav.navbar-nav > li.active > a {
        color: #C8A96B !important;
        background: rgba(200, 169, 107, 0.08) !important;
        padding-left: 28px !important;
    }
    /* Dropdown li beyaz override */
    #main_menu.mobile_menu .navbar-nav .dropdown .dropdown-menu li {
        background: rgba(200, 169, 107, 0.05) !important;
        border-bottom: 1px solid rgba(200, 169, 107, 0.15) !important;
    }
    #main_menu.mobile_menu .navbar-nav .dropdown .dropdown-menu li:hover {
        background: rgba(200, 169, 107, 0.12) !important;
    }
    #main_menu.mobile_menu .navbar-nav .dropdown .dropdown-menu li a {
        color: #555 !important;
        padding: 10px 40px !important;
        font-size: 14px !important;
    }
    #main_menu.mobile_menu .navbar-nav .dropdown .dropdown-menu li a:hover {
        color: #C8A96B !important;
    }
    /* Menü başlığı */
    #main_menu.mobile_menu .navbar-nav li.mobile_menu_title {
        background: #EDE6DA !important;
        color: #C8A96B !important;
        font-family: 'Playfair Display', serif !important;
        letter-spacing: 2px;
        border-bottom: 1px solid #C8A96B !important;
    }

    /* Mobil menü - Online Rezervasyon butonu */
    #main_menu.mobile_menu li.menu_button {
        background: #EDE6DA !important;
        border-bottom: none !important;
        padding: 12px 15px !important;
    }
    #main_menu.mobile_menu li.menu_button .button,
    #main_menu.mobile_menu li.menu_button a {
        background: #1A1A1A !important;
        color: #FFFFFF !important;
        border: none !important;
        border-radius: 8px !important;
        text-align: center !important;
        display: block !important;
        width: 100% !important;
        padding: 14px 20px !important;
        font-size: 15px !important;
        font-weight: 600 !important;
        letter-spacing: 0.5px !important;
        transition: all 0.3s ease !important;
        box-shadow: none !important;
    }
    #main_menu.mobile_menu li.menu_button .button:hover,
    #main_menu.mobile_menu li.menu_button a:hover {
        background: #C8A96B !important;
        color: #FFFFFF !important;
    }


    /* Alt menü (dropdown) */
    .dropdown-menu {
        width: 100% !important;
        position: static !important;
        float: none !important;
        background: rgba(200, 169, 107, 0.06) !important;
        border: none !important;
        border-left: 3px solid #C8A96B !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        padding: 5px 0 5px 20px !important;
        margin: 0 !important;
        display: none !important;
    }
    .open > .dropdown-menu {
        display: block !important;
    }
    .dropdown-menu > li > a {
        color: #555 !important;
        padding: 10px 15px !important;
        font-size: 14px !important;
    }
    .dropdown-menu > li > a:hover {
        color: #C8A96B !important;
        background: transparent !important;
    }

    /* Rezervasyon butonu menü içinde */
    li.menu_button a.button {
        margin: 12px 15px !important;
        display: inline-block !important;
        width: calc(100% - 30px) !important;
        text-align: center !important;
        border-radius: 8px !important;
    }

}

/* Card Hover Effects (Rooms & Blog) */
article.room, article.blog_item {
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    background: #fff;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 5px 15px rgba(0,0,0,0.05);
}
article.room:hover, article.blog_item:hover {
    transform: translateY(-8px);
    box-shadow: 0 15px 30px rgba(200, 169, 107, 0.2);
}
article.room figure img, article.blog_item figure img {
    border-radius: 12px 12px 0 0;
    transition: transform 0.5s ease;
}
article.room:hover figure img, article.blog_item:hover figure img {
    transform: scale(1.05);
}
article.room .price {
    background: #C8A96B !important;
    color: #fff !important;
    border-radius: 0 0 0 12px;
}

/* Services Slider Active Thumb */
.owl-thumb-item.active {
    background: #C8A96B !important;
    border-color: #C8A96B !important;
    transition: all 0.3s ease;
}
.owl-thumb-item.active h5,
.owl-thumb-item.active p,
.owl-thumb-item.active i {
    color: #FFFFFF !important;
}
