/* --- 1. HIDE MOBILE ELEMENTS ON DESKTOP --- */
.mobile-hamburger, .mobile-sidebar {
    display: none;
}

/* --- 2. MOBILE ONLY STYLES (Screen size 768px and below) --- */
@media screen and (max-width: 768px) {
    
    /* Show Hamburger on Mobile */
    .mobile-hamburger {
        display: flex;
        flex-direction: column;
        gap: 5px;
        position: fixed !important;
        top: 25px;
        right: 20px;
        z-index: 99999;
        cursor: pointer;
        
    }

    .mobile-hamburger span {
        width: 25px;
        height: 3px;
        background: #fff; /* Hamburger color */
         position: fixed !important;
    }

    /* The White Sidebar */
   

    /* List Styling */
    .mob-list { list-style: none; flex-grow: 1; }
    .mob-list li { border-bottom: 1px solid #eee; }
    .mob-list li a, .mob-drop-btn {
        display: block;
        padding: 15px 0;
        color: #333;
        text-decoration: none;
        font-size: 14px;
        font-weight: 500;
    }

    /* Sub-menu (Accordion) */
    .mob-sub { 
        list-style: none; 
        padding-left: 15px; 
        display: none; /* Controlled by JS */
        background: #fafafa;
    }
    
    .mob-drop.open .mob-sub { display: block; }

    /* The Register Button */
    .mob-reg-btn {
        background: #c5a059;
        color: white;
        border: none;
        padding: 15px;
        font-weight: bold;
        border-radius: 4px;
        margin-top: 20px;
    }

    /* HIDE THE ORIGINAL DESKTOP NAV ON MOBILE */
    nav, .reserve-wrapper {
        display: none !important;
    }
}
@media screen and (max-width: 768px) {
    /* The Hamburger icon must be on the very top layer */
    

    /* The Sidebar Menu */
    .mobile-sidebar {
        display: flex;
        position: fixed;
        top: 0;
        right: -100%; 
        width: 80%;
        height: 100vh;
        background: #ffffff;
        z-index: 999998 !important; /* Just below the hamburger */
        transition: 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
        box-shadow: -10px 0 30px rgba(0,0,0,0.5);
    }

    /* When this class is added by JS, it moves onto the screen */
    .mobile-sidebar.active {
        right: 0 !important;
    }
}
@media screen and (max-width: 768px) {
    

    /* Ensure the mobile menu doesn't exceed 100% width */
    .mobile-sidebar {
        width: 85%; /* Leave a little gap on the left */
        max-width: 300px;
        right: -320px; /* Hide it completely based on its width */
    }

    .mobile-sidebar.active {
        right: 0 !important;
    }
}
/* --- GLOBAL FIX FOR SIDE SCROLL --- */


@media screen and (max-width: 768px) {
    /* 1. HEADER CLEANUP */
    header {
        padding: 0 20px !important;
        height: 80px !important;
        justify-content: space-between !important;
        display: flex !important;
    }

    /* Logo to the Left */
    .logo-container {
        position: static !important;
        transform: none !important;
        margin: 0 !important;
    }

    .logo-container img {
        width: 150px !important; /* Smaller logo for mobile */
    }

    /* Hide Desktop Social Icons and Book Now Button */
    .social-icons, 
    .reserve-wrapper, 
    nav {
        display: none !important;
    }

    /* 2. THE HAMBURGER BUTTON (On the Right) */
    

    .mobile-hamburger span {
        width: 100%;
        height: 2px;
        background: #ffffff;
        transition: 0.3s;
    }

    /* 3. HERO CONTENT ADJUSTMENT */
    .hero-content {
        left: 0 !important; /* Reset the 2% shift from desktop */
        padding-top: 150px !important;
        width: 100% !important;
    }

    .feature-grid {
        flex-direction: column;
        gap: 20px !important;
    }

    .divider {
        width: 50px !important;
        height: 1px !important;
    }

    /* 4. DESTINATION PARTS (Stacking) */
    .side-container {
        position: relative !important;
        top: 0 !important;
        left: 0 !important;
        transform: none !important;
        padding: 40px 20px !important;
        width: 100% !important;
    }

    .side-dest-item {
        width: 100% !important;
        flex-direction: column !important; /* Text above image */
        height: auto !important;
        gap: 15px !important;
        text-align: center;
        border-bottom: 1px solid rgba(255,255,255,0.1);
        padding-bottom: 20px !important;
    }

    .side-dest-preview {
        width: 100% !important; /* Full width image */
        height: 200px !important;
        opacity: 1 !important;
        display: block !important;
        margin: 0 !important;
    }

    .side-dest-preview img {
        width: 100%;
        height: 100%;
    }

    /* 5. THE SIDEBAR MENU */
    .mobile-sidebar {
        display: flex;
        position: fixed;
        top: 0;
        right: -100%; /* Hidden off-screen */
        width: 80%;
        height: 100vh;
        background: #ffffff;
        z-index: 99999;
        transition: 0.4s ease-in-out;
        padding: 100px 30px;
        box-shadow: -10px 0 30px rgba(0,0,0,0.5);
    }

    .mobile-sidebar.active {
        right: 0 !important; /* Slides in perfectly */
    }
}
@media screen and (max-width: 768px) {
    /* 1. HIDE THE DESTINATIONS PART ON MOBILE */
    .side-container {
        display: none !important;
    }

    /* 2. REPOSITION THE BRAND CONTENT (Crafted with Experience, etc.) */
    .hero-content {
        position: absolute !important;
        top: 20% !important; /* Moves it towards the top center */
        left: 50% !important;
        transform: translateX(-50%) !important;
        padding-top: 0 !important;
        width: 100% !important;
        z-index: 15;
    }

    .feature-grid {
        flex-direction: column !important; /* Stack them vertically */
        gap: 30px !important;
    }

    .feature-item h2 {
        font-size: 24px !important; /* Slightly smaller for mobile screens */
        text-align: center;
    }

    /* 3. CLEAN UP THE HEADER */
    header {
        padding: 0 20px !important;
        height: 90px !important;
    }

    /* Hide Desktop Buttons/Icons */
    .social-icons, 
    .reserve-wrapper, 
    nav {
        display: none !important;
    }

    /* Ensure Logo is Left-Aligned */
    .logo-container {
        position: relative !important;
        left: 0 !important;
        top: 0 !important;
        transform: none !important;
    }

    .logo-container img {
        width: 160px !important;
    }

    /* 4. THE HAMBURGER (Top Right) */
    
    
}
@media screen and (max-width: 768px) {
    /* 1. INCREASE LOGO WIDTH */
    .logo-container img {
        width: 200px !important; /* Adjusted from 160px to 200px */
        height: auto;
    }

    /* 2. THE MENU BOX (SIDEBAR) */
    .mobile-sidebar {
        display: flex;
        flex-direction: column;
        position: fixed;
        top: 0;
        right: -100%; /* Hidden */
        width: 85%;
        height: 100vh;
        background: #ffffff;
        z-index: 1000000; /* Stays on top of everything */
        padding: 80px 30px 40px;
        transition: 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
        box-shadow: -10px 0 30px rgba(0,0,0,0.5);
    }

    .mobile-sidebar.active {
        right: 0 !important;
    }

    /* 3. THE CLOSE (X) ICON */
    .close-menu {
        position: absolute;
        top: 25px;
        right: 25px;
        font-size: 28px;
        color: #333;
        cursor: pointer;
        z-index: 1000001;
    }
    
    /* Hide the hamburger icon when menu is open (Optional but cleaner) */
    body.menu-open .mobile-hamburger {
        display: none !important;
    }
}

/* FORCE HAMBURGER TO STAY FIXED AT TOP */
@media screen and (max-width:768px){

#mobHam{
    position: fixed !important;
    top: 35px !important;
    right: 20px !important;
    bottom: auto !important;
    left: auto !important;

    z-index: 9999999 !important;

    display: flex;
    flex-direction: column;
    gap: 6px;
}

#mobHam span{
    width: 28px;
    height: 3px;
    background:#fff;
    display:block;
}

}@media (max-width:768px){

#mobHam{
    position: fixed;
    top: 25px;
    right: 20px;
    z-index: 999999;
}

}
@media (max-width:768px){

.heros{
    position: relative;
}

#mobHam{
    position: sticky;
    top: 25px;
    margin-left: auto;
    margin-right: 20px;
    z-index: 10;

    display: flex;
    flex-direction: column;
    gap: 6px;
}

#mobHam span{
    width: 30px;
    height: 3px;
    background:#fff;
}

}


/* --- 2. SHOW ON MOBILE ONLY (768px and below) --- */

@media screen and (max-width: 768px) {
    .mobile-only-header {
        display: flex !important;
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 75px;
        padding: 0 20px;
        justify-content: space-between;
        align-items: center;
        z-index: 9999999;

        /* --- THE GLASS EFFECT --- */
        background: rgba(255, 255, 255, 0.1); /* White with 10% opacity */
        backdrop-filter: blur(15px);        /* Blurs elements behind the header */
        -webkit-backdrop-filter: blur(15px); /* Support for Safari */
        
        /* Subtle border to define the edge */
        border-bottom: 1px solid rgba(255, 255, 255, 0.1);
        
        /* Optional: adds a soft shadow for depth */
        box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
    }

    .logo-container img {
        height: 45px;
        width: auto;
        /* Ensures logo stands out on glass */
        filter: drop-shadow(0 2px 4px rgba(0,0,0,0.2));
    }

    #mobHam span {
        background: #ffffff !important;
        box-shadow: 0 1px 3px rgba(0,0,0,0.3);
    }
}
@media screen and (max-width: 768px) {
    .mobile-only-header {
        display: flex !important;
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 75px;
        padding: 0 20px;
        justify-content: space-between;
        align-items: center;
        z-index: 9999999;
        transition: all 0.4s ease;
        
        /* 1. INITIAL STATE: Fully Transparent */
        background: rgba(0, 0, 0, 0);
        backdrop-filter: blur(0px);
        -webkit-backdrop-filter: blur(0px);
    }

    /* 2. SCROLLED STATE: High Contrast Glass */
    .mobile-only-header.scrolled {
        /* Subtle dark tint (using your resort's deep palette) */
        background: rgba(26, 60, 52, 0.4); 
        
        /* Heavy blur for clarity */
        backdrop-filter: blur(20px);
        -webkit-backdrop-filter: blur(20px);
        
        border-bottom: 1px solid rgba(255, 255, 255, 0.1);
        box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
    }

    .mobile-only-header.scrolled .logo-container img {
        /* Shrink logo slightly on scroll for a professional feel */
        transform: scale(0.9);
        filter: drop-shadow(0 4px 8px rgba(0,0,0,0.5));
    }
}
@media screen and (max-width: 768px) {
    /* THE ICON (Highest Layer) */
    #mobHam {
        display: flex !important;
        flex-direction: column;
        gap: 6px;
        position: fixed !important;
        top: 25px;
        right: 20px;
        z-index: 2000000 !important; /* Top of everything */
        cursor: pointer;
    }

    #mobHam span {
        width: 30px;
        height: 3px;
        background: #ffffff; /* White icon on glass */
        transition: 0.3s ease-in-out;
        display: block;
    }

    /* THE SIDEBAR (Below the icon) */
    .mobile-sidebar {
        position: fixed !important;
        top: 0;
        right: -100% !important; /* Hidden off-screen */
        width: 85%;
        max-width: 300px;
        height: 100vh;
        background: #ffffff !important;
        z-index: 1000000 !important;
        transition: 0.4s ease-in-out;
        display: flex;
        flex-direction: column;
        padding-top: 100px;
    }

    /* WHEN OPENED */
    .mobile-sidebar.active {
        right: 0 !important; /* Slide onto screen */
    }

    /* TRANSFORMATION: Hamburger to X and Color Change */
    body.menu-active #mobHam span {
        background: #1a3c34; /* Dark green icon on white menu */
    }

    body.menu-active #mobHam span:nth-child(1) {
        transform: translateY(9px) rotate(45deg);
    }
    body.menu-active #mobHam span:nth-child(2) {
        opacity: 0;
    }
    body.menu-active #mobHam span:nth-child(3) {
        transform: translateY(-9px) rotate(-45deg);
    }
}
@media screen and (max-width: 768px) {
    /* Ensure the sidebar allows scrolling to see the button at the bottom */
    .mobile-sidebar {
        display: flex;
        flex-direction: column;
        overflow-y: auto !important; /* Forces scroll if content is long */
        padding-bottom: 50px; /* Space at the very bottom */
    }

    /* Styling the link wrapper */
    .mob-reg-link {
        text-decoration: none !important;
        display: block;
        width: 100%;
        margin-top: 20px;
    }

    /* Your existing button style with added click feedback */
    .mob-reg-btn {
        background: #c5a059; /* Your Gold */
        color: white;
        border: none;
        padding: 15px;
        width: 100%;
        font-weight: bold;
        border-radius: 4px;
        cursor: pointer;
        transition: 0.3s;
    }

    /* Makes the button feel "pressed" when clicked */
    .mob-reg-btn:active {
        transform: scale(0.95);
        background: #a6874a;
    }
}
/* --- SUBMENU ACCORDION STYLES --- */
.mob-sub {
    display: none; /* Keep it hidden by default */
    list-style: none;
    padding-left: 20px;
    background: #f9f9f9;
}

/* Show submenu when parent has 'open' class */
.mob-drop.open .mob-sub {
    display: block;
}

/* Optional: Rotate the plus icon when open */
.mob-drop.open .fa-plus {
    transform: rotate(45deg);
    color: #c5a059; /* Your gold color */
}

.mob-drop-btn {
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
    padding: 15px 0;
}
@media screen and (max-width: 768px) {
    /* 1. Ensure the Sidebar is the top layer */
    .mobile-sidebar {
        z-index: 1000000 !important;
        position: fixed;
        background: #ffffff;
        padding-top: 100px; /* Gives space so links aren't under the notch */
    }

    /* 2. THE MAGIC FIX: Disable Header clicks when menu is open */
    body.menu-active .mobile-only-header {
        /* This allows your click to "pass through" the logo to the link below */
        pointer-events: none !important; 
        opacity: 0;
    }
    
    /* 3. Re-enable clicks ONLY for the Hamburger so you can still close it */
    body.menu-active #mobHam {
        pointer-events: auto !important;
    }

    /* 4. Make the link area larger */
    .mob-list li a {
        display: block;
        width: 100%;
        padding: 15px 0;
        position: relative;
        z-index: 1000001 !important; /* Forces the link to the front */
    }
}
@media screen and (max-width: 768px) {
    /* 1. Ensure the Sidebar is the top layer */
    .mobile-sidebar {
        z-index: 1000000 !important;
        position: fixed;
        background: #ffffff;
        padding-top: 100px; /* Gives space so links aren't under the notch */
    }

    /* 2. THE MAGIC FIX: Disable Header clicks when menu is open */
    body.menu-active .mobile-only-header {
        /* This allows your click to "pass through" the logo to the link below */
        pointer-events: none !important; 
        opacity: 0;
    }
    
    /* 3. Re-enable clicks ONLY for the Hamburger so you can still close it */
    body.menu-active #mobHam {
        pointer-events: auto !important;
    }

    /* 4. Make the link area larger */
    .mob-list li a {
        display: block;
        width: 100%;
        padding: 15px 0;
        position: relative;
        z-index: 1000001 !important; /* Forces the link to the front */
    }
}
@media screen and (max-width: 768px) {
    /* 1. This forces the lines to turn BLACK only when the menu-active class is on the body */
    body.menu-active #mobHam span {
        background-color: #000000 !important;
        background: #000000 !important; /* Double protection */
        box-shadow: none !important;    /* Removes any white glow */
    }

    /* 2. Make sure the icon is not being hidden by the header's opacity */
    body.menu-active .mobile-only-header {
        opacity: 1 !important; 
        background: transparent !important; /* Hides the green/glass bar but keeps the icon */
        pointer-events: none !important;    /* Let's you click the Home link */
    }

    /* 3. Re-enable clicking for just the icon */
    body.menu-active #mobHam {
        pointer-events: auto !important;
        z-index: 2000005 !important; /* Highest layer */
    }

    /* 4. The 'X' animation (makes it clearly a close button) */
    body.menu-active #mobHam span:nth-child(1) {
        transform: translateY(9px) rotate(45deg);
    }
    body.menu-active #mobHam span:nth-child(2) {
        opacity: 0 !important;
    }
    body.menu-active #mobHam span:nth-child(3) {
        transform: translateY(-9px) rotate(-45deg);
    }
}
@media screen and (min-width: 769px) {
    .mobile-only-header {
        display: none !important;
    }
}
@media screen and (max-width: 768px) {
    /* 1. Force the Sidebar to stay inside the viewport */
    .mobile-sidebar {
        width: 85% !important; /* Keep it slightly less than 100% so users see the page behind */
        max-width: 320px !important;
        box-sizing: border-box !important; /* Crucial: includes padding in the width calculation */
        overflow-x: hidden !important; /* Kills horizontal scroll */
        padding: 100px 20px 40px !important; /* Balanced padding */
    }

    /* 2. Force the list and buttons to 100% of the SIDEBAR width (not screen width) */
    .mob-list, 
    .mob-reg-link, 
    .mob-reg-btn {
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    /* 3. Ensure the parent container doesn't scroll horizontally */
    html, body {
        max-width: 100% !important;
        overflow-x: hidden !important;
    }
}
@media screen and (max-width: 768px) {
    /* 1. MAIN SIDEBAR - SAME TEAL AS IMAGE */
    .mobile-sidebar {
        background-color: #1a6e6e !important; 
        font-family: "Playfair Display", "Times New Roman", serif !important;
        padding: 100px 30px 40px 30px !important;
        display: flex;
        flex-direction: column;
        border: none !important;
        box-shadow: -10px 0 30px rgba(0,0,0,0.3);
    }

    /* 2. REMOVE ALL UNDERLINES & LINES */
    .mob-list, .mob-sub {
        list-style: none !important;
        padding: 0;
        margin: 0;
        border: none !important; /* Removes underlines */
        background-color: #1a6e6e !important; /* MATCHES MAIN MENU COLOR */
    }

    .mob-list li {
        border: none !important;
        text-decoration: none !important;
    }

    /* 3. MAIN LINKS - THIN & WHITE */
    .mob-list li a, 
    .mob-drop-btn {
        color: #ffffff !important; 
        font-size: 19px !important;
        padding: 12px 0 !important;
        text-decoration: none !important; 
        border: none !important; 
        display: flex;
        justify-content: space-between;
        align-items: center;
        font-weight: 300 !important; /* REDUCED WEIGHT */
        background-color: transparent !important;
    }

    /* 4. SUBMENU - SAME BACKGROUND AS MAIN MENU */
    .mob-sub {
        padding-left: 20px !important;
        /* Keep it hidden until toggled by JS */
        display: none; 
        border: none !important;
        background-color: #1a6e6e !important; /* EXACT SAME COLOR */
    }

    /* If your JS adds 'open' class to 'mob-drop' li */
    .mob-drop.open .mob-sub {
        display: block !important;
    }

    .mob-sub li a {
        color: #ffffff !important; /* VISIBLE WHITE TEXT */
        font-size: 17px !important;
        padding: 10px 0 !important;
        text-decoration: none !important;
        border: none !important;
        display: block;
        font-weight: 300 !important; /* THIN WEIGHT */
        opacity: 0.9;
    }

    /* 5. GOLD PLUS ICON (+) */
    .mob-drop-btn i, 
    .fa-plus {
        color: #c5a059 !important; 
        font-style: normal;
        font-size: 16px;
        font-weight: 300 !important;
    }

    /* 6. BOOK NOW BUTTON */
    .mob-reg-link {
        margin-top: auto !important;
        padding-top: 40px;
        text-decoration: none !important;
    }

    .mob-reg-btn {
        background: #c5a059 !important;
        color: white !important;
        width: 100%;
        padding: 15px;
        border: none !important;
        border-radius: 4px;
        font-weight: 500;
        letter-spacing: 1px;
        cursor: pointer;
        font-family: sans-serif;
    }
}
@media screen and (max-width: 768px) {
    /* This targets the spans ONLY when the menu is open/active */
    body.menu-active #mobHam span {
        background-color: #c5a059 !important; /* Your Gold Color */
        background: #c5a059 !important;
    }
}





@media screen and (max-width: 768px) {
    /* 1. Reset the link wrapper (No gap here) */
    .mob-reg-link {
        display: block; 
        width: 100%;
        text-decoration: none !important;
        pointer-events: none; 
        margin-top: 0 !important; /* Forces the link to sit tight against the one above */
    }

    /* 2. Set the exact small gap on the button */
    .mob-reg-btn {
        pointer-events: auto; 
        background: #c5a059 !important;
        color: white !important;
        width: 100%;
        padding: 15px;
        
        /* ADJUST THIS NUMBER TO CHANGE THE GAP */
        margin-top: 4px; 
        
        border: none !important;
        border-radius: 4px;
        font-weight: 500;
        letter-spacing: 1px;
        text-transform: uppercase;
        cursor: pointer;
    }
}
/* next */
@media screen and (max-width: 768px) {
    /* 1. Reset the H1 to only show the word 'GATHERING' */
    .gatherings-visual h1 {
        font-size: 32px !important;
        letter-spacing: 3px !important;
        text-transform: uppercase !important;
        margin-bottom: 10px !important;
        text-align: left !important;
        color: #1a1a1a !important;
        
        /* This hides the "THE" text node directly inside the h1 */
        font-size: 0 !important; 
    }

    /* 2. Target the word GATHERING specifically */
    /* Since "GATHERING" is raw text in your HTML, we give it size back */
    .gatherings-visual h1::after {
        content: "GATHERINGS" !important;
        font-size: 32px !important; /* Restore font size for this word */
        font-family: 'Tenor Sans', sans-serif !important;
        display: block;
    }

    /* 3. Hide the rotator and the spans */
    .gatherings-visual h1 .word-rotator,
    .gatherings-visual h1 span {
        display: none !important;
    }

    /* 4. Align the Subheading immediately below */
    

    /* 5. Clean up section padding */
    .gatherings-main {
        padding: 30px 25px !important;
    }
}
@media screen and (max-width: 768px) {
    /* 1. The Container for the Heading */
    .gatherings-visual h1 {
        font-size: 0 !important; /* Hides the original "THE" text */
        margin-left: 0px !important; /* Moves the heading slightly to the left */
        margin-bottom: 8px !important;
        text-align: left !important;
        display: block !important;
    }

    /* 2. Styling the word GATHERING */
    .gatherings-visual h1::after {
        content: "GATHERING";
        font-size: 34px !important; /* Bold, clear size */
        font-family: 'Tenor Sans', serif !important;
        color: #f5f4f3 !important; /* Your premium gold color */
        letter-spacing: 2px !important;
        display: block;
        text-transform: uppercase;
    }

    /* 3. Hide the rotator parts */
    .word-rotator, 
    .gatherings-visual h1 span {
        display: none !important;
    }

    /* 4. Subheading Alignment */
    .sub-hook {
       font-family: 'Tenor Sans', sans-serif !important; /* Brand consistency */
        font-size: 15px !important;
        
        /* Change from green to a high-contrast white */
        color: #ffffff !important; 
        
        /* Remove All-Caps for a softer, luxury feel */
        text-transform: none !important;
        /* font-style: italic !important; */
        
        letter-spacing: 0.5px !important;
        line-height: 1.3 !important;
        font-weight: 300 !important;
        
        margin-top: 55px !important;
        max-width: 160% !important;
        opacity: 0.9; /* Slight transparency for elegance */
    }

    /* 5. Minimal Section Gap */
    .gatherings-main {
        padding: 20px 20px !important;
    }
}
@media (max-width: 768px) {
    /* Targets the gold underline and hides it only on mobile */
    .gatherings-visual::after {
        display: none !important;
    }

    /* Optional: If you want to remove any extra padding left over from the line */
    .sub-hook {
        margin-bottom: 0 !important;
    }
}

/* next */

@media screen and (max-width: 850px) {
    /* Hides the "Unforgettable Gatherings" title on mobile */
    .main-title {
        display: none !important;
    }

    /* Adjusts the top row layout now that the title is gone */
    .row-one {
        margin-bottom: 20px !important;
        display: block !important;
    }

    /* Optional: Ensure the privacy tag looks good alone */
    

    /* Removes the large background ghost text to prevent horizontal scrolling */
    .ghost-text {
        display: none !important;
    }
}
@media screen and (max-width: 850px) {
    /* Target the tag with high specificity */
    .editorial-wrapper .row-one .privacy-tag {
        font-size: 17px !important; /* Small but readable */
        line-height: 1.2 !important;
        display: block !important;
        width: 100% !important;
        max-width: none !important;
        border-left: 2px solid #b59b7c !important;
        padding-left: 10px !important;
        margin-bottom: 30px !important;
        text-transform: uppercase !important;
        letter-spacing: 1px !important;
        margin-top: -10px !important;
    }

    /* Ensure the title is gone so the tag has room */
    .main-title {
        display: none !important;
    }
}
@media screen and (max-width: 850px) {
    /* 1. Reduce the massive 120px padding from the section */
    .editorial-section {
        padding: 40px 5% !important; 
    }

    /* 2. Reset the wrapper to start at the top */
    .editorial-wrapper {
        margin-top: 0 !important;
    }

    /* 3. Ensure the top row (where the tag is) has no top margin */
    .row-one {
        margin-top: 0 !important;
        margin-bottom: 20px !important;
    }

    /* 4. Completely remove the subheading gap/hidden space */
    .editorial-subheading {
      font-size: 14px !important;
        font-weight: 400;
        line-height: 1.2;
        /* margin-top: 2px !important; */
        margin-bottom: 150px !important;
        color: #1a1a1a;
        font-style: normal !important;
        margin-top: -30px !important;
        margin-left: 2px !important;
    }
    
    /* 5. Hide the title as requested previously */
    .main-title {
        display: none !important;
    }
   
}
@media screen and (max-width: 850px) {
    /* 1. Set the main paragraph style */
    .resort-intro {
        font-size: 0.95rem !important;
        line-height: 1.6 !important;
        text-align: justify !important;
        color: #444 !important; /* Standard dark grey/black */
        font-family: 'Inter', sans-serif !important; /* Or your preferred main font */
    }

    /* 2. Strip unique colors/fonts from the highlighted spans */
    .resort-intro .brand-highlight, 
    .resort-intro .waterway-link {
        color: inherit !important;        /* Forces it to match the main text color */
        font-family: inherit !important;   /* Forces it to match the main font */
        font-size: inherit !important;     /* Forces it to match the 0.95rem */
        font-weight: inherit !important;   /* Removes the bolding */
        font-style: normal !important;     /* Removes any italics */
        border-bottom: none !important;    /* Removes the gold/teal underline */
        text-transform: none !important;   /* Removes uppercase if any */
        letter-spacing: normal !important;
        padding: 0 !important;
    }

    /* 3. Handle the gap for the <br> */
    .resort-intro br {
        display: block !important;
        content: "";
        margin-top: 10px !important;
    }
}
@media screen and (max-width: 850px) {
    /* 1. Privacy Tag - Using DM Sans and Signature Gold */
    .editorial-wrapper .row-one .privacy-tag {
        font-family: 'DM Sans', sans-serif !important;
        font-weight: 500 !important;
        font-size: 14px !important; /* Refined for a tag look */
        line-height: 1.3 !important;
        color: #b38e44 !important; /* Signature Gold */
        text-transform: uppercase !important;
        letter-spacing: 1.5px !important;
        border-left: 2px solid #b38e44 !important;
        padding-left: 12px !important;
        margin-bottom: 25px !important;
        -webkit-font-smoothing: antialiased;
    }

    /* 2. Editorial Subheading (DM Sans 15px Model) */
    .editorial-subheading {
        font-family: 'DM Sans', sans-serif !important;
        font-weight: 500 !important;
        font-size: 15px !important;
        line-height: 1.4 !important;
        color: #313030 !important;
        margin-bottom: 15px !important;
        font-style: normal !important;
        -webkit-font-smoothing: antialiased;
    }

    /* 3. Resort Intro Paragraph (DM Sans 15px Model) */
    .resort-intro {
        font-family: 'DM Sans', sans-serif !important;
        font-weight: 400 !important;
        font-size: 15px !important;
        line-height: 1.6 !important;
        color: #363535 !important;
        text-align: justify !important; /* Kept your requested alignment */
        -webkit-font-smoothing: antialiased;
    }

    /* 4. Strip unique styles from links/highlights to match the model */
    .resort-intro .brand-highlight, 
    .resort-intro .waterway-link {
        font-family: inherit !important;
        font-size: inherit !important;
        font-weight: inherit !important;
        color: inherit !important;
        text-decoration: none !important;
        border: none !important;
        padding: 0 !important;
    }

    /* 5. Handle the line break spacing */
    .resort-intro br {
        content: "";
        display: block;
        margin-bottom: 10px;
    }
}
/* next */

@media (max-width: 850px) {
    /* 1. Reduce Section Gaps */
    .editorial-gallery {
        padding: 60px 0 30px 5% !important; /* Minimal top gap, padding-left for scroll start */
    }

    /* 2. Transform Grid into Horizontal Swipe */
    .gallery-grid {
        display: flex !important;
        flex-direction: row !important;
        overflow-x: auto !important; /* Enable horizontal scrolling */
        scroll-snap-type: x mandatory !important; /* Smooth "magnetic" snapping */
        gap: 15px !important;
        padding-right: 5% !important; /* Extra space at the end of scroll */
        scrollbar-width: none !important; /* Hide scrollbar for Firefox */
        -ms-overflow-style: none !important; /* Hide scrollbar for IE/Edge */
    }

    /* Hide scrollbar for Chrome/Safari */
    .gallery-grid::-webkit-scrollbar {
        display: none;
    }

    /* 3. Uniform Item Sizing for Swipe */
    .gallery-item {
        flex: 0 0 85% !important; /* Shows first image + hint of second */
        height: 280px !important; /* Taller height for a premium feel */
        scroll-snap-align: start !important;
        border-radius: 4px !important; /* Subtle rounding for luxury touch */
        border: none !important; /* Clean look */
    }

    /* Reset individual grid assignments for mobile */
    .pic-1, .pic-2, .pic-3, .pic-4 {
        grid-column: auto !important;
        grid-row: auto !important;
    }

    /* 4. Refine Image Display */
    .gallery-item img {
        transform: scale(1) !important; /* Static scale for performance on mobile */
        filter: brightness(100%) !important;
    }

    /* 5. Mobile Indicator (Optional Hint) */
    .gallery-grid::after {
        content: '';
        padding-right: 20px; /* Ensures the last image doesn't hit the edge */
    }
}

/* next */


@media screen and (max-width: 768px) {
    /* 1. Tighten Section Spacing */
    .luxury-privacy-section {
        padding: 30px 25px !important; /* Minimal top/bottom gap */
        background: #fdfdfd !important; /* Lighter for a cleaner look */
        margin-bottom: -20px !important;
    }

    /* 2. Fix the Title Box */
    .privacy-title-box {
        padding-left: 20px !important;
        margin-bottom: 30px !important;
        border-left: 2px solid #c5a059 !important; /* Gold for the main heading */
    }

    .privacy-title-box h2 {
        font-size: 22px !important; /* Balanced for phone screens */
        line-height: 1.1 !important;
        letter-spacing: 1px !important;
    }

    .privacy-title-box p {
        font-size: 14px !important;
        line-height: 1.4 !important;
        margin-top: 12px !important;
        color: #666 !important;
    }

    /* 3. Refine Feature Points for Mobile */
    .feature-points {
        grid-template-columns: 1fr !important; /* One per row */
        gap: 15px !important;
    }

    .point-card {
        padding: 25px 20px !important;
        background: #ffffff !important;
        border-bottom: 1px solid #f2f2f2 !important;
        box-shadow: 0 4px 15px rgba(0,0,0,0.03) !important;
        transform: none !important; /* Disable hover movement for stability */
    }

    .point-card::before {
        top: 15px !important;
        right: 15px !important;
        font-size: 9px !important;
        opacity: 0.6;
    }

    .point-card h4 {
        font-size: 16px !important;
        margin-bottom: 6px !important;
        color: #1a868a !important; /* Highlight titles with your Teal */
    }

    .point-card p {
        font-size: 13px !important;
        line-height: 1.4 !important;
        font-weight: 400 !important;
    }

    /* 4. Elegant Closing Statement */
    .closing-statement {
        margin-top: 40px !important;
        font-size: 1.3rem !important; /* Scaled down for mobile */
        padding: 0 10px !important;
        line-height: 1.3 !important;
    }
}
@media screen and (max-width: 850px) {
    /* 1. Target the specific parent container if they are in one */
    .row-two, .content-column {
        gap: 0 !important;
        display: block !important; /* Forces vertical stacking without gaps */
    }

    /* 2. Remove bottom space from the title box and its text */
    .privacy-title-box {
        margin-bottom: 0 !important;
        padding-bottom: 10px !important;
    }

    .privacy-title-box h2 {
        margin-bottom: 5px !important;
        line-height: 1.1 !important;
    }

    .privacy-title-box p {
        margin-bottom: 15px !important; /* Small gap before points start */
        padding-bottom: 0 !important;
    }

    /* 3. Remove top space from the points container */
    .feature-points {
        margin-top: 0 !important;
        padding-top: 0 !important;
        display: flex !important;
        flex-direction: column !important;
        gap: 10px !important; /* Adjust gap between cards here */
        margin-top: -50px !important;
    }

    /* 4. Ensure individual cards don't have large top margins */
    .point-card {
        margin-top: 0 !important;
        padding-top: 10px !important;
        padding-bottom: 10px !important;
    }
}
@media screen and (max-width: 768px) {
    /* 1. Main Section Title (Unmatched Privacy & Luxury) */
    .luxury-privacy-section .privacy-title-box h2 {
        font-family: 'DM Sans', sans-serif !important;
        font-weight: 500 !important;
        font-size: 20px !important; 
        line-height: 1.1 !important;
        /* color: #313030 !important; */
        -webkit-font-smoothing: antialiased;
    }

    /* 2. Intro Paragraph under Title */
    .luxury-privacy-section .privacy-title-box p {
        font-family: 'DM Sans', sans-serif !important;
        font-weight: 400 !important;
        font-size: 15px !important; /* Model standard */
        line-height: 1.4 !important;
        color: #363535 !important;
        -webkit-font-smoothing: antialiased;
    }

    /* 3. Feature Point Headings (No Other Guests, etc.) */
    .luxury-privacy-section .point-card h4 {
        font-family: 'DM Sans', sans-serif !important;
        font-weight: 500 !important;
        font-size: 16px !important;
        color: #1a868a !important; /* Kept your Teal highlight */
        margin-bottom: 6px !important;
        -webkit-font-smoothing: antialiased;
    }

    /* 4. Feature Point Descriptions */
    .luxury-privacy-section .point-card p {
        font-family: 'DM Sans', sans-serif !important;
        font-weight: 400 !important;
        font-size: 15px !important; /* Model standard */
        line-height: 1.4 !important;
        color: #363535 !important;
        -webkit-font-smoothing: antialiased;
    }

    /* 5. Closing Statement */
   .luxury-privacy-section .closing-statement {
        /* 1. Use a clean Serif font */
        font-family: 'Tenor Sans', serif !important;
        
        /* 2. FORCE NORMAL STYLE (Fixes the unintentional italics) */
        font-style: normal !important;
        
        /* 3. Refined Styling */
        font-weight: 400 !important;
        font-size: 18px !important; 
        color: #313030 !important;
        line-height: 1.4 !important;
        
        /* 4. Alignment & Spacing */
        text-align: center !important;
        letter-spacing: 0.5px !important;
        margin-top: 10px !important;
        display: block !important;
        
        /* 5. Clean Rendering */
        -webkit-font-smoothing: antialiased;
        text-transform: none !important;
    }

    /* 6. Card Numbers (01, 02, etc.) */
    .point-card[data-number]::before {
        font-family: 'DM Sans', sans-serif !important;
        font-weight: 500 !important;
        font-size: 10px !important;
        letter-spacing: 1px !important;
    }
}
/* next */

@media (max-width: 850px) {
    /* 1. Reduce Section Gaps */
    .architectural-section {
        padding: 20px 20px !important; /* Balanced breathing room */
        background: #ffffff;
        margin-top: -30px !important;
    }

    /* 2. Stack Layout */
    .arch-wrapper {
        display: flex !important;
        flex-direction: column !important;
        gap: 30px !important;
    }

    /* 3. Image Collage Refinement */
    .image-side {
        display: grid !important;
        grid-template-columns: 1.2fr 0.8fr !important; /* Asymmetric for premium feel */
        gap: 10px !important;
        order: 1; /* Images appear first on mobile */
    }

    .square-box {
        border-radius: 4px;
        aspect-ratio: 1 / 1 !important;
    }

    .main-img {
        grid-row: span 2 !important;
        aspect-ratio: 0.8 / 1 !important; /* Vertical focus */
    }

    /* 4. Text Content Alignment */
    .arch-content {
        order: 2;
        text-align: left !important;
    }

    /* 5. Subtitle & Line Fix */
    .subtitle-container {
        gap: 10px !important;
        margin-bottom: 15px !important;
    }

    .gold-subtitle {
        font-size: 13px !important; /* Scaled for mobile */
        white-space: nowrap;
    }

    .center-line {
        transform: translateY(-2px) !important; /* Re-aligned for smaller text */
    }

    /* 6. Typography Refinement */
    

    .gold-highlight {
        padding: 0 4px !important;
        font-size: 0.9em !important;
    }

    

    .water-name {
        font-weight: 700 !important;
        color: #111;
        border-bottom: 1px solid rgba(197, 160, 89, 0.4) !important;
    }
}

@media (max-width: 850px) {
    /* 1. Reduce section spacing */
    .architectural-section {
        padding: 25px 20px !important;
    }

    /* 2. Style ONLY the paragraph: Normal & Small */
    .luxury-heading + p {
          /* THE "MODEL" SETTINGS */
        font-weight: 400 !important;   /* Removes all bolding */
        font-size: 16px !important;    /* Exact size from your request */
        line-height: 1.3 !important;   /* Extra spacing like the screenshot */
        text-align: justify !important;
         color: #383838 !important;     
        font-family: 'DM Sans', sans-serif !important;        

    /* width: 105%; */
        /* margin: 0 auto 0px !important; */
        display: block !important;
        
        /* Smoothing for that "Retina" crisp look */
        -webkit-font-smoothing: antialiased;
        /* Ensure no extra spacing is added */
    word-spacing: -1px !important;
    letter-spacing: normal !important;
    /* margin-left: -20px !important; */
    margin-top: -10px !important;
        

    }

    /* 3. Style the place names inside that paragraph */
    .water-name {
        font-family: inherit !important;
        font-weight: 400 !important;
        text-transform: none !important; /* Removes uppercase */
        font-style: normal !important;
        border: none !important;
        color: inherit !important;
    }

    /* 4. NOTE: .luxury-heading is left alone here, 
       so it will keep your original bold/luxury font. */
}
@media (max-width: 850px) {
    /* Target the heading and its inner gold span */
    .luxury-heading, 
    .luxury-heading .gold-highlight {
        /* 1. Force a clean, standard font (Removes Tenor Sans/Desktop font) */
font-family: 'DM Sans', sans-serif !important;        
        
        /* 2. Set to "Normal" weight (Removes the bold) */
        font-weight: 300 !important; 
        
        /* 3. Set a standard mobile size */
        font-size: 19px !important;
        
        /* 4. Ensure it reads like a normal sentence, not all caps */
        text-transform: none !important;
        letter-spacing: 0 !important;
        line-height: 1.4 !important;
        color: #111 !important;
    }

    /* Optional: If the line break <br> is making it look too big, hide it */
    .luxury-heading br {
        display: inline !important;
        content: " " !important;
    }
}
@media screen and (max-width: 850px) {
    /* Target the heading and the inner gold span specifically */
    .arch-content h2.luxury-heading, 
    .arch-content h2.luxury-heading .gold-highlight {
        /* 1. Use the DM Sans "Model" Font */
        font-family: 'DM Sans', sans-serif !important;
        
        /* 2. Set to your premium heading weight (Not too bold) */
        font-weight: 500 !important; 
        
        /* 3. Set your standard heading size */
        font-size: 20px !important;
        
        /* 4. Clean layout settings */
        text-transform: none !important;
        letter-spacing: -0.5px !important;
        line-height: 1.2 !important;
        color: #313030 !important; /* Dark gray for premium look */
        
        /* 5. Rendering fix */
        -webkit-font-smoothing: antialiased;
        font-style: normal !important;
        margin-top: 0px !important;
    }

    /* Keep the gold color for the highlighted part */
    .arch-content h2.luxury-heading .gold-highlight {
        color: #b38e44 !important; /* Your signature gold */
    }

    /* Ensure the line break works for that elegant 2-line stack */
    .arch-content h2.luxury-heading br {
        display: block !important;
    }
}
   /* ------------------------------------------------------- */

/* next */

@media screen and (max-width: 768px) {
    /* 1. Tighten the overall section spacing */
    .packages-wrapper {
        padding: 10px 20px !important; /* Reduced top/bottom padding */
        background: #f9f9f9 !important;
        margin-top: -40px !important;
    }

    /* 2. Header adjustment */
    .package-header-main h3 {
        font-size: 1.2rem !important;
        margin-bottom: 40px !important;
        letter-spacing: 1.5px !important;
        margin-top: 0px !important;
        
    }

    /* 3. Card Styling */
    .package-block {
        margin-bottom: 40px !important;
        border-radius: 12px !important;
        overflow: hidden !important;
        border: none !important;
        box-shadow: 0 10px 30px rgba(0,0,0,0.05) !important;
    }

    /* 4. Identity Bar (Black/Gold bar) */
    .block-identity {
        padding: 15px 20px !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 5px !important;
    }

    .package-title {
        font-size: 10px !important;
        letter-spacing: 1px !important;
    }

    .night-tag {
        font-size: 1.2rem !important;
    }

    /* 5. Column Content Reset */
    .block-content-flex {
        display: flex !important;
        flex-direction: column !important;
    }

    .col-left, .col-right {
        padding: 30px 20px !important;
        flex: none !important;
    }

    /* 6. Schedule Styling */
    .section-label-gold {
        font-size: 12px !important;
        margin-bottom: 10px !important;
    }

    .schedule-text {
        font-size: 0.95rem !important;
        line-height: 1.5 !important;
        margin-bottom: 20px !important;
    }

    /* 7. Price Box Optimization */
    .price-box-screenshot {
        display: block !important;
        width: 100% !important;
        padding: 20px !important;
        margin-top: 10px !important;
        border-radius: 8px !important;
    }

    .price-amt-gold {
        font-size: 1.3rem !important; /* Smaller for mobile fit */
    }

    /* 8. List/Inclusions Styling */
    .incl-list li {
        font-size: 14px !important;
        margin-bottom: 12px !important;
        align-items: flex-start !important;
    }

    .col-right {
        border-top: 1px solid #eee !important;
        background: #fafafa !important; /* Subtle contrast for inclusions */
    }

    /* 9. Additional Info/Footer */
    .info-content {
        padding-top: 20px !important;
        margin-top: -10px !important;
    }

    .info-content p {
        font-size: 0.9rem !important;
        margin-bottom: 8px !important;
    }

    .note-text {
        font-size: 0.75rem !important;
    }
}
@media screen and (max-width: 768px) {
    /* 1. Remove the bottom padding of the entire section */
    .packages-wrapper {
        padding-top: 30px !important;
        padding-bottom: 0px !important; /* Forces the gap to zero */
    }

    /* 2. Remove the margin from the final card so it sits flush at the bottom */
    .package-block:last-of-type {
        margin-bottom: 0px !important;
    }

    /* 3. Tighten internal spacing for a cleaner look */
    .col-right {
        padding-bottom: 25px !important;
    }
    
    .info-content {
        padding-bottom: 10px !important;
    }
}


/* next */

@media screen and (max-width: 768px) {
    /* 1. Reduce overall section gaps */
    .authority-section {
        padding: 50px 8% !important; /* Balanced top/bottom breathing room */
        background: #ffffff !important;
    }

    /* 2. Remove rigid desktop flex and align left */
    .authority-container {
        display: block !important;
        text-align: left !important;
    }

    /* 3. The Left Intro: Remove the heavy border */
    .auth-left {
        border-right: none !important;
        border-bottom: 1px solid #f2f2f2 !important; /* Subtle separator */
        padding: 0 0 30px 0 !important;
        margin-bottom: 30px !important;
    }

    .trust-badge {
        font-size: 14px !important; /* More elegant/smaller label */
        letter-spacing: 1px !important;
        margin-bottom: 15px !important;
        margin-left: 100px !important;
    }

    /* Target the text in the intro */
    .auth-left h2 {
        font-size: 1.1rem !important;
        line-height: 1.5 !important;
        max-width: 100% !important;
    }

    /* 4. The Points List: Clean up the numbering */
    .auth-right {
        padding-left: 0 !important;
        padding-top: 0 !important;
        font-size: larger !important;
    }

    .trust-points-minimal {
        margin-bottom: 40px !important;
    }

    .point-row {
        padding: 15px 0 !important;
        border-bottom: 1px solid #f9f9f9 !important; /* Very light clean lines */
    }

    .point-num {
        font-size: 10px !important;
        margin-right: 20px !important;
        opacity: 0.6;
    }

    .point-desc {
        font-size: 15px !important;
        color: #444 !important;
        letter-spacing: 0 !important;
    }

    /* 5. The Quote Footer: Premium focus */
    .auth-footer p {
        font-size: 1.35rem !important;
        line-height: 1.3 !important;
        padding-left: 15px !important;
        border-left: 2px solid #c5a059 !important; /* Vertical gold accent line */
    }
}
@media screen and (max-width: 768px) {
    /* 1. Target the Authority Section specifically */
    section.authority-section {
        padding: 50px 8% !important;
        background: #ffffff !important;
    }

    /* 2. Intro Text (The "Decade of Excellence" Heading) */
    section.authority-section .auth-left h2,
    section.authority-section .auth-left h2 span {
        font-family: 'DM Sans', sans-serif !important;
        font-weight: 400 !important;
        font-size: 15px !important;
        line-height: 1.5 !important;
        color: #3d3d3d !important;
        -webkit-font-smoothing: antialiased;
        margin-top: 0px !important;
        text-align: justify !important;
        word-spacing: -1px !important;
    letter-spacing: normal !important;
    margin-bottom: -10px !important;

    }

    /* 3. The Brand Highlight (BaGo Retreats) */
    section.authority-section .auth-left h2 span[style*="color: #1a868a"] {
        font-family: 'DM Sans', sans-serif !important;
        font-weight: 400 !important;
        font-size: 1.1rem !important;
        line-height: 1.5 !important;
        color: #3d3d3d !important;
        -webkit-font-smoothing: antialiased;
    }

    /* 4. The Points List (DM Sans 15px Model) */
    section.authority-section .point-desc {
        font-family: 'DM Sans', sans-serif !important;
        font-weight: 400 !important;
        font-size: 15px !important; /* Model standard */
        color: #363535 !important;
        letter-spacing: 0 !important;
        -webkit-font-smoothing: antialiased;
        margin-top: -30px !important;
    }

    /* 5. The Numbering (01, 02, etc.) */
    section.authority-section .point-num {
        font-family: 'DM Sans', sans-serif !important;
        font-weight: 500 !important;
        font-size: 10px !important;
        opacity: 0.6;
        margin-right: 20px !important;
        margin-top: -30px !important;
    }

    /* 6. The Quote Footer (Premium Serif Contrast) */
    section.authority-section .auth-footer p {
        font-family: 'Tenor Sans', serif !important;
        font-weight: 400 !important;
        font-size: 1.1rem !important;
        line-height: 1.3 !important;
        color: #313030 !important;
        font-style: normal !important; /* Ensures no italics affect this */
        -webkit-font-smoothing: antialiased;
        margin-top: -40px !important;
    }

    /* Target the red "trust" span inside the quote */
    section.authority-section .auth-footer p span {
        color: #b38e44 !important; /* Changed red to Signature Gold for luxury */
        font-weight: 500 !important;
        font-family: inherit !important;
    }

    /* 7. The Trust Badge (Top Label) */
    section.authority-section .trust-badge {
        font-family: 'DM Sans', sans-serif !important;
        font-weight: 500 !important;
        font-size: 20px !important;
        text-transform: uppercase !important;
        letter-spacing: 1px !important;
        color: #b38e44 !important;
        margin-left: -60px !important;
        margin-top: -20px !important;
    }
}
/* next */

/* next */

/* next */
/* --- PREMIUM FOOTER MOBILE OPTIMIZATION --- */
/* --- THE ULTIMATE BAGO MOBILE FOOTER (CONSOLIDATED) --- */
@media screen and (max-width: 768px) {
    
    /* 1. SECTION RESET: Center & Kill Top Gaps */
    footer.premium-footer {
        padding: 10px 0 30px !important; /* Tight top space */
        text-align: center !important;
        margin-top: 0 !important;
    }

    /* 2. CONTAINER: Force Stack & Zero Gap */
    footer.premium-footer .footer-container {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        gap: 0 !important; /* Kills all mechanical gaps between blocks */
        padding: 0 25px !important;
    }

    /* 3. LOGO: Perfect Center & Overlap */
    footer.premium-footer .footer-hotel-info {
        margin-top: -55px !important; /* Overlap control */
        margin-left: 0 !important;
        margin-right: 0 !important;
        width: 100% !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
    }

    footer.premium-footer .footer-hotel-info img {
        width: 220px !important; /* Boutique logo size */
        margin-left: 0 !important;
        margin-bottom: -15px !important; /* Sucks pillars up to logo */
    }

    /* 4. BRAND PILLARS: Zero Gap Sentences */
    footer.premium-footer .brand-pillars {
        margin: 0 0 15px 0 !important; /* 15px is the ONLY gap before Explore */
        padding: 0 !important;
        width: 100% !important;
    }

    footer.premium-footer .brand-pillars p {
        margin: 0 !important;
        padding: 0 !important;
        font-size: 17px !important;
        line-height: 1.3 !important;
        text-align: center !important;
    }

    /* 5. EXPLORE SECTION: Tight Center */
    footer.premium-footer .footer-explore,
    footer.premium-footer .footer-about {
        margin-top: 10px !important;
        width: 100% !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
    }

    footer.premium-footer .footer-heading {
        font-size: 16px !important;
        margin-bottom: 15px !important;
        letter-spacing: 2px !important;
    }

    footer.premium-footer .footer-heading::after {
        left: 50% !important;
        transform: translateX(-50%) !important;
    }

    /* 6. CONTACT & SOCIALS: Alignment Fix */
    footer.premium-footer .social-icons {
        justify-content: center !important;
        margin-bottom: 20px !important;
    }

    footer.premium-footer .contact-details {
        align-items: center !important;
        gap: 10px !important;
    }

    footer.premium-footer .contact-details p {
        justify-content: center !important;
        font-size: 13px !important;
        margin: 0 !important;
    }
}
@media screen and (max-width: 768px) {
    /* 1. Neutralize the container */
    footer.premium-footer .footer-hotel-info {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important; /* Force children to center */
        justify-content: center !important;
        text-align: center !important;
        width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    /* 2. Force the Image to center */
    footer.premium-footer .footer-hotel-info img {
        display: block !important;
        margin-left: auto !important;  /* The "Magic" centering trick */
        margin-right: auto !important; /* The "Magic" centering trick */
        float: none !important;        /* Kills any left-float */
        width: 200px !important;       /* Adjust size as needed */
    }

    /* 3. Ensure Brand Pillars follow the center */
    footer.premium-footer .brand-pillars {
        width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        text-align: center !important;
    }
}
@media screen and (max-width: 768px) {

    /* 1. Pull the text UP to the logo */
    footer.premium-footer .footer-hotel-info img {
        display: block !important;
        margin-left: auto !important;
        margin-right: auto !important;
        width: 200px !important;
        
        /* AGGRESSIVE GAP KILLER */
        margin-bottom: -25px !important; /* Pulls the brand pillars up into the logo's space */
        padding-bottom: 0 !important;
    }

    /* 2. Zero out the Brand Pillars spacing */
    footer.premium-footer .brand-pillars {
        margin-top: 0 !important; 
        padding-top: 0 !important;
        margin-bottom: 20px !important; /* This is the ONLY gap before 'Explore' */
    }

    /* 3. Tighten the individual lines of text */
    footer.premium-footer .brand-pillars p {
        margin-bottom: 2px !important; 
        line-height: 1.2 !important;
    }
}
/* --- FOLLOW US MOBILE SPACING FIX --- */
@media screen and (max-width: 768px) {

    /* 1. Gap between 'Follow Us' heading and the icons */
    .premium-footer .footer-about .footer-heading {
        margin-bottom: 15px !important; /* Increase this to move underline further from text */
    }

   

    
}