/* Theme: Khaldoni Cafe - #ed401e / black / white */
.khaldoni-theme body {
    background: #fff;
    color: #111;
}

.khaldoni-hero {
    background: linear-gradient(180deg, #000 0%, #111 100%);
}

.khaldoni-hero h1,.khaldoni-hero h2, .khaldoni-hero h3, .khaldoni-hero h4, .khaldoni-hero h5, .khaldoni-hero h6 {
    color: #ed401e;
    text-align: initial !important;
}

.khaldoni-hero p.lead {
    color: rgba(255, 255, 255, 0.85);
}

.khaldoni-features .card {
    border: 1px solid #eee;
    background: #fff;
}

.btn-warning {
    background: #ed401e;
    border-color: #ed401e;
}

.btn-outline-light {
    color: #fff;
    border-color: rgba(255, 255, 255, 0.3);
}

/* Mobile tweaks */
@media (max-width: 575.98px) {
    .khaldoni-hero .khaldoni-hero-image {
        display: none;
    }
}

/* Small utility */
.text-white-50 {
    color: rgba(255, 255, 255, 0.7);
}

.main_menu {
    top: 0;
}

/* Khaldoni theme variables and scoped rules */
.khaldoni-theme {
    --kh-accent: #ed401e; /* #ed401e */
    --kh-dark: #000000; /* black */
    --kh-soft: #111111; /* near-black */
    --kh-white: #ffffff; /* white */
    --kh-muted: rgba(255, 255, 255, 0.78);
}

/* GLOBAL HELPERS */
.khaldoni-theme .object-fit-cover {
    object-fit: cover;
    width: 100%;
    height: 100%;
}

.khaldoni-theme img.object-fit-cover, .khaldoni-theme video.object-fit-cover {
    display: block;
}

.khaldoni-theme .btn-kh {
    background: var(--kh-accent);
    border-color: var(--kh-accent);
    color: var(--kh-dark);
}

.khaldoni-theme .btn-kh-outline {
    background: transparent;
    border: 1px solid rgba(255, 255, 255, 0.12);
    color: var(--kh-white);
}

/* HERO */
.khaldoni-theme .khaldoni-hero {
    background: linear-gradient(180deg, var(--kh-dark) 0%, var(--kh-soft) 100%);
    color: var(--kh-white);
    padding-top: 3.5rem;
    padding-bottom: 3.5rem;
}

.khaldoni-theme .khaldoni-hero .display-6 {
    color: var(--kh-accent);
    font-weight: 700;
    letter-spacing: 0.5px;
}

.khaldoni-theme .khaldoni-hero p.lead {
    color: rgba(255, 255, 255, 0.85);
}

.khaldoni-theme .khaldoni-hero .badge {
    font-weight: 700;
}

/* Vertical/tall text appearance on larger screens (keeps readable on mobile) */
@media (min-width: 768px) {
    .khaldoni-theme .khaldoni-hero .display-6 {
        font-size: clamp(2rem, 4vw, 3rem);
        line-height: 1;
    }
}

/* FEATURED CARDS */
.khaldoni-theme .khaldoni-features .card {
    border: none;
    border-radius: 0.65rem;
    background: var(--kh-white);
    transition: transform .22s ease, box-shadow .22s ease;
    height: 100%;
}

.khaldoni-theme .khaldoni-features .card:hover {
    transform: translateY(-6px);
    box-shadow: 0 18px 38px rgba(0, 0, 0, 0.18);
}

.khaldoni-theme .khaldoni-features .card-title, .navbar-brand {
    color: var(--kh-accent);
    font-weight: 700;
}

.khaldoni-theme .khaldoni-features .card-text {
    color: #444;
}

.khaldoni-theme .khaldoni-features a.card {
    text-decoration: none;
}

/* Ensure equal height columns when using card h-100 */
.khaldoni-theme .khaldoni-features .row > [class*='col-'] {
    display: flex;
}

.khaldoni-theme .khaldoni-features .card {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
}

.khaldoni-theme .khaldoni-features .card-body {
    flex: 1 1 auto;
}

/* TEXT CONTENT / ABOUT */
.khaldoni-theme .khaldoni-about h3 {
    color: #111;
    font-weight: 700;
}

.khaldoni-theme .khaldoni-about .text-muted {
    color: #444;
}

.khaldoni-theme .khaldoni-about .list-unstyled img {
    border-radius: 6px;
}

/* LIVE MEDIA */
.khaldoni-theme .khaldoni-live-media {
    background: #0b0b0b;
    color: var(--kh-white);
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
}

.khaldoni-theme .khaldoni-live-media .ratio img, .khaldoni-theme .khaldoni-live-media .ratio video {
    object-fit: cover;
}

.khaldoni-theme .khaldoni-live-media .position-absolute a.btn {
    background: rgba(0, 0, 0, 0.6);
    color: var(--kh-accent);
    border: 1px solid rgba(255, 255, 255, 0.06);
}

.khaldoni-theme .khaldoni-live-media .position-absolute a.btn:hover {
    background: var(--kh-accent);
    color: var(--kh-dark);
    border-color: var(--kh-accent);
}

/* Gallery thumbnails uniform sizing and subtle border */
.khaldoni-theme .khaldoni-live-media .ratio-4x3 {
    border-radius: 6px;
    overflow: hidden;
}

.khaldoni-theme .khaldoni-live-media .ratio-4x3 img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Footer (khaldoni pages only) - social buttons and media */
.khaldoni-theme footer {
    background: linear-gradient(180deg, #090909 0%, #111 100%);
    color: var(--kh-white);
}

.khaldoni-theme footer img {
    max-width: 100%;
}

.khaldoni-theme footer .btn {
    transition: transform .12s ease, background .12s ease;
}

.khaldoni-theme footer .btn:focus {
    outline: 3px solid rgba(255, 122, 0, 0.12);
    outline-offset: 2px;
}

.khaldoni-theme footer .btn-outline-light {
    border-radius: 50%;
    width: 48px;
    height: 48px;
    padding: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.khaldoni-theme footer .btn-outline-light i {
    color: var(--kh-white);
}

.khaldoni-theme footer .btn-outline-light:hover {
    background: var(--kh-accent);
    border-color: var(--kh-accent);
    color: var(--kh-dark);
}

.khaldoni-theme footer .small.text-muted {
    color: rgba(255, 255, 255, 0.55);
}

/* Accessibility & focus states for card links */
.khaldoni-theme a.card:focus {
    box-shadow: 0 0 0 4px rgba(255, 122, 0, 0.12);
    outline: none;
}

.khaldoni-theme a.card:hover .card-title {
    text-decoration: underline;
}

/* Khaldoni footer specific styles */
.khaldoni-theme .khaldoni-footer {
    padding-top: 2.5rem;
    padding-bottom: 2.5rem;
}

.khaldoni-theme .khaldoni-footer .media-box {
    max-width: 420px;
    margin: 0 auto;
}

.khaldoni-theme .khaldoni-footer .media-box img, .khaldoni-theme .khaldoni-footer .media-box video {
    border-radius: 8px;
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.35);
}

.khaldoni-theme .khaldoni-footer h5 {
    color: var(--kh-accent);
    font-weight: 700;
}

.khaldoni-theme .khaldoni-footer .text-muted {
    color: rgba(255, 255, 255, 0.7);
}

.khaldoni-theme .khaldoni-footer .socials a.btn {
    width: 54px;
    height: 54px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
}

.khaldoni-theme .khaldoni-footer .socials a.btn i {
    font-size: 20px;
}

.khaldoni-theme .khaldoni-footer .socials a.btn.btn-outline-light {
    border: 1px solid rgba(255, 255, 255, 0.08);
    background: transparent;
    color: var(--kh-white);
}

.khaldoni-theme .khaldoni-footer .socials a.btn.btn-outline-light:hover {
    background: var(--kh-accent);
    color: var(--kh-dark);
    transform: translateY(-4px);
    border-color: var(--kh-accent);
}

.khaldoni-theme .khaldoni-footer .footer-note {
    color: rgba(255, 255, 255, 0.55);
    margin-top: 1rem;
}

@media (max-width: 767.98px) {
    .khaldoni-theme .khaldoni-footer .socials a.btn {
        width: 48px;
        height: 48px;
    }

    .khaldoni-theme .khaldoni-footer .media-box {
        max-width: 320px;
    }
}

/* Responsive adjustments */
@media (max-width: 767.98px) {
    .khaldoni-theme .khaldoni-hero {
        padding-top: 2rem;
        padding-bottom: 2rem;
        margin-top: 90px !important;
        padding: 25px 8px 8px 17px !important;
    }

    .khaldoni-theme .khaldoni-features .card {
        border-radius: 0.5rem;
    }

    .khaldoni-theme footer .btn-outline-light {
        width: 44px;
        height: 44px;
    }
}

/* Pages: gallery, events, menu, reservation, contact */
.khaldoni-theme .card {
    border-radius: 0.6rem;
}

.khaldoni-theme .card .card-body h5 {
    color: #111;
}

.khaldoni-theme .card .card-body p.text-muted {
    color: #666;
}

/* Form styles */
.khaldoni-theme .form-control {
    border-radius: 0.45rem;
}

.khaldoni-theme .btn-kh {
    background: var(--kh-accent);
    color: var(--kh-dark);
    border: none;
    padding: .48rem .9rem;
    border-radius: 0.45rem;
}

.khaldoni-theme .btn-kh:hover {
    background: #ff8b1a;
}

/* Modal image style */
.khaldoni-theme .modal-content img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 8px;
}

/* Small utility for headings */
.khaldoni-theme h2, .khaldoni-theme h3, .khaldoni-theme h4 {
    font-weight: 700;
}

/* Gallery card overlay effect */
.khaldoni-theme .card .ratio {
    transition: transform .22s ease;
}

.khaldoni-theme .card:hover .ratio {
    transform: scale(1.02);
}

/* Events list card image fix */
.khaldoni-theme .card img.rounded-start {
    height: 100%;
    object-fit: cover;
}

/* Responsive tweaks for forms and gallery */
@media (max-width: 575.98px) {
    .khaldoni-theme .card .card-body {
        padding: 0.9rem;
    }

    .main_menu {
        height: unset !important;
    }
}

/* End page-specific Khaldoni styles */

.main_menu {
    top: 0;
}

button, .btn-dark, p.price, .btn-warning, .bg-success, .btn-secondary, .btn-kh, .common_btn {
    background-color: #ed401e !important;
    border-color: #ed401e !important;
    color: #fff !important;
}

button:hover, .btn-dark:hover, p.price:hover, .btn-warning:hover, .btn-kh:hover, .bg-success:hover, .btn-secondary:hover {
    background-color: #ed401e !important;
    border-color: #ed401e !important;
    color: #fff !important;
}

p.price span {
    color: #fff !important;
}

@media (min-width: 576px) and (max-width: 767px) {
    .main_menu {
        height: unset !important;
    }
}

.wsus__breadcrumb {
    background-image: none !important;
    background: #ed401e !important;
}
h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
    color: #ed401e !important;
}
.fancybox__container {
    z-index: 9999 !important;
}
ul,
ol,
li {
    list-style: auto;
    margin: 0;
    padding: 0;
}
ul.navbar-nav li, ul.navbar-nav ul li{
    list-style: none !important;
}