
:root {
    --primary: #0a4275;
    --secondary: #17a2b8;
    --warning: #f39c12; /* Gold/Sand Accent */
}

body {
    font-family: 'Poppins', sans-serif;
    color: #444;
}

.font-playfair {
    font-family: 'Playfair Display', serif;
}

.text-primary { color: var(--primary) !important; }
.bg-primary { background-color: var(--primary) !important; }
.btn-primary { background-color: var(--primary); border-color: var(--primary); }
.btn-primary:hover { background-color: #083359; border-color: #083359; }

.text-warning { color: var(--warning) !important; }
.bg-warning { background-color: var(--warning) !important; }

/* Hero Sections */
.hero-overlay {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    background: rgba(10, 66, 117, 0.4);
    z-index: 1;
}
.z-index-2 { z-index: 2; }
.bg-video {
    position: absolute;
    top: 50%; left: 50%;
    min-width: 100%; min-height: 100%;
    width: auto; height: auto;
    transform: translateX(-50%) translateY(-50%);
    object-fit: cover;
    z-index: 0;
}
.page-hero {
    height: 50vh;
    background-size: cover;
    background-position: center;
    position: relative;
}

/* UI Elements */
.divider { width: 60px; height: 3px; }
.rounded-4 { border-radius: 1rem !important; }
.rounded-tr-3 { border-top-right-radius: 0.5rem; }
.rounded-bl-3 { border-bottom-left-radius: 0.5rem; }

/* Card Animations & Image Zoom inside cards */
.hover-card {
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.hover-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 1rem 3rem rgba(0,0,0,0.15) !important;
}

.img-wrapper {
    overflow: hidden;
}
.zoom-img {
    transition: transform 0.5s ease;
}
.tour-card:hover .zoom-img, .img-wrapper:hover .zoom-img {
    transform: scale(1.1);
}

.hover-primary:hover { color: var(--primary) !important; }

/* Cookie Consent */
.cookie-consent {
    position: fixed;
    bottom: 0; left: 0; right: 0;
    background: #fff;
    border-top: 1px solid #ddd;
    z-index: 9999;
}
