.elementor-11419 .elementor-element.elementor-element-e959916{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-11419 .elementor-element.elementor-element-cd5434b > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}@media(max-width:1024px){.elementor-11419 .elementor-element.elementor-element-e959916{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-11419 .elementor-element.elementor-element-cd5434b > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}}/* Start custom CSS for html, class: .elementor-element-cd5434b *//* =========================================
   VIP LUXURY LANDING PAGE STYLES
   ========================================= */

.vip-nile-landing {
    /* Premium Color Palette */
    --gold: #C5A059;
    --gold-hover: #A68545;
    --charcoal: #1A1A1A;
    --navy: #111A24;
    --sand: #FBF9F6;
    --white: #FFFFFF;
    
    /* Typography */
    --font-heading: 'Playfair Display', Georgia, serif;
    --font-body: 'Montserrat', Helvetica, sans-serif;
    
    font-family: var(--font-body);
    color: #4A4A4A;
    line-height: 1.8;
    background-color: var(--white);
    overflow-x: hidden;
}

/* Base Typo */
.vip-nile-landing h1, 
.vip-nile-landing h2, 
.vip-nile-landing h3 {
    font-family: var(--font-heading);
    color: var(--charcoal);
    font-weight: 400;
    margin-bottom: 1rem;
}

.vip-text-center { text-align: center; }
.text-white { color: var(--white) !important; }

/* Fluid Typography (Scales perfectly on mobile and desktop) */
.vip-title { font-size: clamp(2.5rem, 5vw, 4.5rem); line-height: 1.1; }
.vip-heading { font-size: clamp(2rem, 4vw, 3rem); line-height: 1.2; }
.vip-lead { font-size: clamp(1.1rem, 2vw, 1.3rem); color: #666; margin-bottom: 2rem; }

/* Layout Structure */
.vip-section { padding: clamp(4rem, 8vw, 7rem) 1.5rem; }
.vip-container { max-width: 1200px; margin: 0 auto; }
.vip-bg-sand { background-color: var(--sand); }

/* --- HERO SECTION --- */
.vip-hero {
    position: relative;
    height: 100vh;
    min-height: 600px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 2rem;
}

.vip-hero-bg {
    position: absolute;
    top: 0; left: 0; width: 100%; height: 100%;
    /* Replace URL with your stunning Dahabiya image */
    background: url('https://images.unsplash.com/photo-1539650116574-8efeb43e2750?ixlib=rb-4.0.3&auto=format&fit=crop&w=1920&q=80') center/cover no-repeat;
    z-index: 1;
}

/* Glassmorphism gradient overlay for text readability */
.vip-hero-bg::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(to bottom, rgba(17, 26, 36, 0.4), rgba(17, 26, 36, 0.8));
    backdrop-filter: blur(2px); 
}

.vip-hero-content {
    position: relative;
    z-index: 2;
    max-width: 900px;
}

.vip-kicker {
    display: block;
    color: var(--gold);
    text-transform: uppercase;
    letter-spacing: 4px;
    font-size: 0.9rem;
    margin-bottom: 1.5rem;
    font-weight: 600;
}

.vip-title { color: var(--white); margin-bottom: 1.5rem; text-shadow: 0 4px 20px rgba(0,0,0,0.3); }
.vip-subtitle { color: #E0E0E0; font-size: clamp(1.1rem, 2vw, 1.4rem); margin-bottom: 3rem; }

/* --- BUTTONS --- */
.vip-hero-actions { display: flex; gap: 1.5rem; justify-content: center; flex-wrap: wrap; }

.vip-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 1rem 2.5rem;
    font-size: 0.95rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 2px;
    text-decoration: none;
    transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.vip-btn-primary {
    background-color: var(--gold);
    color: var(--white);
    border: 1px solid var(--gold);
}

.vip-btn-primary:hover, .vip-btn-gold:hover {
    background-color: var(--gold-hover);
    border-color: var(--gold-hover);
    transform: translateY(-3px);
    box-shadow: 0 10px 20px rgba(197, 160, 89, 0.3);
}

.vip-btn-text { color: var(--white); border-bottom: 1px solid transparent; padding: 1rem 1rem;}
.vip-btn-text:hover { color: var(--gold); }

.vip-btn-gold {
    background-color: var(--gold);
    color: var(--white);
    padding: 1.2rem 3rem;
}

/* --- SPLIT MAGAZINE SECTION --- */
.vip-grid-2 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 4rem;
    align-items: center;
}

.vip-divider { width: 60px; height: 2px; background-color: var(--gold); margin: 1.5rem 0 2rem; }

.image-placeholder {
    width: 100%;
    height: 600px;
    background: url('https://images.unsplash.com/photo-1572252009286-268acec5ca0a?ixlib=rb-4.0.3&auto=format&fit=crop&w=800&q=80') center/cover;
    border-radius: 4px;
    box-shadow: -20px 20px 0px rgba(197, 160, 89, 0.1);
}

/* --- COMPARISON CARDS (Replaces the old table) --- */
.vip-comparison-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: 2rem;
    margin-top: 3rem;
}

.vip-comp-card {
    padding: 3rem 2rem;
    border-radius: 8px;
    position: relative;
    transition: transform 0.3s ease;
}

.vip-standard {
    background: var(--white);
    border: 1px solid #EBEBEB;
    opacity: 0.8;
}

.vip-premium {
    background: var(--navy);
    color: var(--white);
    box-shadow: 0 20px 40px rgba(17, 26, 36, 0.15);
    transform: scale(1.05); /* Makes it pop out */
    border: 1px solid rgba(197, 160, 89, 0.3);
}

.vip-premium h3 { color: var(--gold); }

.vip-badge-top {
    position: absolute;
    top: -15px; left: 50%;
    transform: translateX(-50%);
    background: var(--gold);
    color: var(--white);
    padding: 5px 20px;
    font-size: 0.8rem;
    text-transform: uppercase;
    letter-spacing: 2px;
    border-radius: 20px;
    font-weight: 600;
}

.vip-comp-card ul { list-style: none; padding: 0; margin-top: 2rem; }
.vip-comp-card li { margin-bottom: 1.2rem; padding-left: 30px; position: relative; font-size: 1.05rem; }

.vip-list-cross li::before { content: '✕'; position: absolute; left: 0; color: #999; }
.vip-list-check li::before { content: '✓'; position: absolute; left: 0; color: var(--gold); font-weight: bold; }

/* --- FEATURES GRID --- */
.vip-features-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 3rem;
    margin-top: 4rem;
    text-align: center;
}

.vip-icon { font-size: 2.5rem; color: var(--gold); display: block; margin-bottom: 1rem; }

/* --- FINAL CTA --- */
.vip-cta-section {
    position: relative;
    padding: 8rem 2rem;
    text-align: center;
    background: url('https://images.unsplash.com/photo-1539650116574-8efeb43e2750?ixlib=rb-4.0.3&auto=format&fit=crop&w=1920&q=80') center/cover fixed;
}

.vip-cta-overlay {
    position: absolute; inset: 0;
    background: rgba(26, 26, 26, 0.85);
    z-index: 1;
}

.vip-cta-content { position: relative; z-index: 2; max-width: 700px; margin: 0 auto; color: var(--white); }
.vip-cta-content p { font-size: 1.2rem; margin-bottom: 2.5rem; color: #CCC; }

/* --- MOBILE RESPONSIVENESS --- */
@media (max-width: 992px) {
    .vip-grid-2 { grid-template-columns: 1fr; gap: 2rem; }
    .image-placeholder { height: 400px; box-shadow: -10px 10px 0px rgba(197, 160, 89, 0.1); }
    .vip-premium { transform: scale(1); /* Reset scale on mobile so it doesn't break layout */ margin-top: 2rem; }
}

@media (max-width: 576px) {
    .vip-hero-actions { flex-direction: column; width: 100%; }
    .vip-btn { width: 100%; }
    .vip-comp-card { padding: 2rem 1.5rem; }
}
/* =========================================
   NEW SEO INFORMATIONAL SECTIONS
   ========================================= */

/* The Route Grid */
.vip-route-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 2rem;
    margin-top: 3rem;
}

.route-card {
    background: var(--white);
    padding: 2.5rem 2rem;
    border-radius: 8px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.03);
    border-top: 3px solid var(--gold);
    transition: transform 0.3s ease;
}

.route-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 40px rgba(197, 160, 89, 0.15);
}

.route-day {
    display: inline-block;
    color: var(--gold);
    font-size: 0.85rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 2px;
    margin-bottom: 1rem;
    border-bottom: 1px solid var(--gold);
    padding-bottom: 5px;
}

.route-card h3 {
    font-size: 1.4rem;
    margin-bottom: 1rem;
}

/* Info Boxes (Travel Guide) */
.vip-info-box {
    background: var(--navy);
    color: var(--white);
    padding: 3rem;
    border-radius: 8px;
    box-shadow: 0 20px 40px rgba(17, 26, 36, 0.1);
}

.vip-heading-small {
    color: var(--gold) !important;
    font-size: 1.8rem;
    margin-bottom: 1.5rem;
}

.vip-info-box p {
    color: #E0E0E0;
    font-size: 1.05rem;
}

/* Extended FAQ Styling */
.vip-faq-wrapper {
    max-width: 800px;
    margin: 3rem auto 0;
}

.vip-faq-item {
    background: var(--white);
    margin-bottom: 1rem;
    border: 1px solid #EAEAEA;
    border-radius: 4px;
}

.vip-faq-item summary {
    padding: 1.5rem 2rem;
    font-family: var(--font-heading);
    font-size: 1.3rem;
    color: var(--charcoal);
    cursor: pointer;
    font-weight: 600;
    list-style: none;
    position: relative;
    background: var(--sand);
}

.vip-faq-item summary::-webkit-details-marker { display: none; }
.vip-faq-item summary::after {
    content: '+';
    position: absolute;
    right: 2rem;
    color: var(--gold);
    font-size: 1.5rem;
}
.vip-faq-item[open] summary::after { content: '-'; }

.vip-faq-content {
    padding: 1.5rem 2rem;
    border-top: 1px solid #EAEAEA;
    color: #555;
}

/* Mobile Adjustments for New Sections */
@media (max-width: 768px) {
    .vip-info-box { padding: 2rem 1.5rem; }
    .vip-heading-small { font-size: 1.5rem; }
}/* End custom CSS */