.footer{background-image:linear-gradient(rgba(128,128,128,.45),rgba(128,128,128,.45)),url(../../assets/img/banner.png)!important;background-position:top;background-repeat:no-repeat;background-size:cover}
/* match slider overlay to banner tone */
.carousel-caption{background:rgba(128,128,128,.45)!important}
 
/* theme overrides: set primary to red */
:root{--primary:#dc3545;--orange:#dc3545}

/* navbar active link color */
.navbar-dark .navbar-nav .nav-link.active{color:#dc3545!important}

 /* service cards - equal height */
 .svc-card{background:#fff;border-radius:8px;box-shadow:0 8px 24px rgba(0,0,0,.08);overflow:hidden;transition:transform .2s ease,box-shadow .2s ease;display:flex;flex-direction:column}
 .svc-card:hover{transform:translateY(-4px);box-shadow:0 12px 28px rgba(0,0,0,.12)}
 .svc-card .row{height:100%;margin:0;display:flex}
 .svc-card .col-sm-5{height:150px;padding:0;display:flex;align-items:center}
 .svc-card .col-sm-7{height:150px;padding:15px;display:flex;flex-direction:column;justify-content:space-between}
 .svc-card__img{width:100%;height:150px;object-fit:cover;border-top-left-radius:8px;border-bottom-left-radius:8px}
 .svc-card__body{display:flex;flex-direction:column;height:100%;padding:0}
 .svc-card__title{display:flex;align-items:center;font-size:1.1rem;margin-bottom:.5rem;height:50px;overflow:hidden;line-height:1.2}
 .svc-card__title i{margin-right:.5rem;font-size:1.2rem;flex-shrink:0}
 .svc-card__body p{flex:1;margin-bottom:10px;overflow:hidden;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;font-size:0.9rem;line-height:1.3}
 .svc-card__cta{margin-top:auto;align-self:flex-start;flex-shrink:0;font-size:0.85rem}
 @media (max-width:575.98px){.svc-card__img{border-radius:8px 8px 0 0}}

/* offer section uses banner background with grey overlay */
.offer{background-image:linear-gradient(rgba(128,128,128,.45),rgba(128,128,128,.45)),url(../../assets/img/banner.png)!important;background-position:top;background-repeat:no-repeat;background-size:cover}
/* reservation section (30% OFF) uses banner background with grey overlay */
.reservation{background-image:linear-gradient(rgba(128,128,128,.45),rgba(128,128,128,.45)),url(../../assets/img/banner.png)!important;background-position:top;background-repeat:no-repeat;background-size:cover}

/* detail page enhancements */
.detail-hero{position:relative;overflow:hidden;border-radius:12px;box-shadow:0 12px 32px rgba(0,0,0,.15)}
.detail-hero img{width:100%;height:400px;object-fit:cover;transition:transform .3s ease}
.detail-hero:hover img{transform:scale(1.05)}
.detail-content{background:#fff;border-radius:12px;box-shadow:0 8px 24px rgba(0,0,0,.08);padding:2rem;margin-top:-2rem;position:relative;z-index:2}
.detail-sidebar .card{border:none;box-shadow:0 4px 16px rgba(0,0,0,.08);border-radius:12px;margin-bottom:1.5rem}
.detail-sidebar .card-header{background:linear-gradient(135deg,#dc3545,#b81f2c);color:#fff;border-radius:12px 12px 0 0;border:none;padding:1rem 1.5rem}
.detail-sidebar .list-group-item{border:none;padding:.75rem 1.5rem;transition:all .2s ease}
.detail-sidebar .list-group-item:hover{background:#f8f9fa;padding-left:2rem}
.detail-sidebar .list-group-item i{color:#dc3545;margin-right:.5rem}
.btn-detail{background:linear-gradient(135deg,#dc3545,#b81f2c);border:none;padding:.75rem 2rem;border-radius:25px;font-weight:600;text-transform:uppercase;letter-spacing:1px;transition:all .3s ease;box-shadow:0 4px 16px rgba(220,53,69,.3)}
.btn-detail:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(220,53,69,.4);background:linear-gradient(135deg,#b81f2c,#dc3545)}
.detail-meta{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem;padding:1rem;background:#f8f9fa;border-radius:8px;border-left:4px solid #dc3545}
.detail-meta i{color:#dc3545;font-size:1.2rem}
.detail-meta span{color:#666;font-weight:500}

/* blog cards */
.blog-card{background:#fff;border-radius:8px;box-shadow:0 8px 24px rgba(0,0,0,.08);overflow:hidden;height:100%;display:flex;flex-direction:column;transition:transform .2s ease,box-shadow .2s ease}
.blog-card:hover{transform:translateY(-4px);box-shadow:0 12px 28px rgba(0,0,0,.12)}
.blog-card img{width:100%;height:200px;object-fit:cover}
.blog-card__body{padding:16px;display:flex;flex:1;flex-direction:column}
.blog-card__title{font-size:1.1rem;margin-bottom:.5rem}
.blog-card__meta{font-size:.875rem;color:#777;margin-bottom:.5rem}
.blog-card__excerpt{flex:1;margin:0 0 .5rem 0}
.blog-card__cta{align-self:flex-start}

/* logo styling */
.logo-img {
    transition: transform 0.3s ease;
    height: 50px !important;
    width: auto !important;
    max-width: 200px;
}

.logo-img:hover {
    transform: scale(1.05);
}

/* mobile logo adjustments */
@media (max-width: 991.98px) {
    .logo-img {
        height: 60px !important;
        max-width: 180px;
    }
    
    .navbar-brand {
        padding: 0.5rem 1rem !important;
    }
}

@media (max-width: 575.98px) {
    .logo-img {
        height: 50px !important;
        max-width: 150px;
    }
    
    .navbar-brand {
        padding: 0.25rem 0.5rem !important;
    }
}

/* mobile top bar white background */
@media (max-width: 991.98px) {
    .nav-bar {
        background-color: #ffffff !important;
    }
    
    .navbar {
        background-color: #ffffff !important;
    }
    
    .navbar-dark .navbar-nav .nav-link {
        color: #333 !important;
    }
    
    .navbar-dark .navbar-nav .nav-link:hover {
        color: #dc3545 !important;
    }
    
    .navbar-dark .navbar-nav .nav-link.active {
        color: #dc3545 !important;
    }
    
    .navbar-toggler {
        border-color: #333 !important;
    }
    
    .navbar-toggler-icon {
        background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%2833, 37, 41, 1%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e") !important;
    }
}

/* mobile slider adjustments */
@media (max-width: 767.98px) {
    .carousel-item img {
        height: 300px !important;
        object-fit: cover;
    }
    
    .carousel-caption {
        padding: 20px !important;
    }
    
    .carousel-caption h1 {
        font-size: 2rem !important;
    }
    
    .carousel-caption h2 {
        font-size: 1.2rem !important;
    }
}

/* WhatsApp Button Styling */
.whatsapp-button {
    position: fixed !important;
    right: 30px !important;
    bottom: 30px !important;
    z-index: 999 !important;
    width: 60px !important;
    height: 60px !important;
    border-radius: 50% !important;
    background: linear-gradient(135deg, #25D366, #128C7E) !important;
    color: white !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-shadow: 0 4px 12px rgba(37, 211, 102, 0.4) !important;
    transition: all 0.3s ease !important;
    text-decoration: none !important;
    border: none !important;
}

/* Back to Top Button */
.back-to-top {
    z-index: 1002 !important;
    bottom: 100px !important;
}

/* WhatsApp Chat Bubble */
.whatsapp-bubble {
    position: fixed !important;
    right: 30px !important;
    bottom: 100px !important;
    z-index: 1001 !important;
    background: white !important;
    border-radius: 20px !important;
    padding: 15px 20px !important;
    box-shadow: 0 4px 20px rgba(0,0,0,0.15) !important;
    max-width: 250px !important;
    opacity: 0 !important;
    transform: translateY(20px) !important;
    transition: all 0.3s ease !important;
    pointer-events: none !important;
    border: 1px solid #e9ecef !important;
}

.whatsapp-bubble.show {
    opacity: 1 !important;
    transform: translateY(0) !important;
    pointer-events: auto !important;
}

.whatsapp-bubble::after {
    content: '' !important;
    position: absolute !important;
    bottom: -8px !important;
    right: 20px !important;
    width: 0 !important;
    height: 0 !important;
    border-left: 8px solid transparent !important;
    border-right: 8px solid transparent !important;
    border-top: 8px solid white !important;
}

.whatsapp-bubble-text {
    color: #333 !important;
    font-size: 14px !important;
    line-height: 1.4 !important;
    margin: 0 !important;
    font-weight: 500 !important;
}

.whatsapp-bubble-close {
    position: absolute !important;
    top: 5px !important;
    right: 8px !important;
    background: none !important;
    border: none !important;
    color: #999 !important;
    font-size: 16px !important;
    cursor: pointer !important;
    padding: 0 !important;
    width: 20px !important;
    height: 20px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.whatsapp-button:hover {
    background: linear-gradient(135deg, #128C7E, #25D366) !important;
    color: white !important;
    transform: translateY(-3px) !important;
    box-shadow: 0 6px 16px rgba(37, 211, 102, 0.6) !important;
}

.whatsapp-button i {
    font-size: 24px !important;
    color: white !important;
}

/* Mobile WhatsApp Button */
@media (max-width: 768px) {
    .back-to-top {
        bottom: 80px !important;
        right: 20px !important;
    }
    
    .whatsapp-button {
        right: 20px !important;
        bottom: 20px !important;
        width: 50px !important;
        height: 50px !important;
    }
    
    .whatsapp-button i {
        font-size: 20px !important;
    }
    
    .whatsapp-bubble {
        right: 20px !important;
        bottom: 80px !important;
        max-width: 200px !important;
        padding: 12px 16px !important;
    }
    
    .whatsapp-bubble-text {
        font-size: 13px !important;
    }
}

