/* --- 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: #c5a059 !important;
        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. 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. 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 */


/* --- MOBILE PREMIUM OPTIMIZATION --- */
@media screen and (max-width: 768px) {
    /* 1. Reduce top/bottom gaps specifically for this section */
    .about-section {
        padding: 40px 20px !important;
    }

    /* 2. Stack content and images vertically */
    .about-wrapper {
        display: flex !important;
        flex-direction: column !important;
        gap: 30px !important;
        text-align: center;
    }

    /* 3. Refine Typography for Mobile */
    .section-title {
        font-size: 26px !important; /* Prevents text from being too overwhelming */
        line-height: 1.2 !important;
        margin-bottom: 15px !important;
        font-weight: 600px !important;
    }

    .gold-line {
        margin: 0 auto 25px !important; /* Centers the decorative line */
    }

    .section-desc {
        font-family: 'DM Sans', sans-serif !important;
        text-align: justify !important; /* Better readability on phones */
        font-size: 15px !important;
        margin: 0 auto 30px !important;
        
    }

    /* 4. Thumb-friendly Buttons */
    .about-cta-group {
        flex-direction: column;
        gap: 12px !important;
        align-items: center;
    }

    .btn-primary, .btn-secondary {
        width: 100%;
        max-width: 280px; /* Elegant button width */
        padding: 14px 20px !important;
        text-align: center;
    }

    /* 5. Premium Image Overlap (Mobile Version) */
    .about-images {
        height: 380px !important; /* Shorter container to prevent massive white space */
        width: 100%;
        margin-top: 10px !important;
    }

    .img-large {
        width: 85% !important;
        height: 280px !important;
        top: 0 !important;
        right: 0 !important;
    }

    .img-small {
        display: block !important; /* Keeps the luxury look on mobile */
        width: 55% !important;
        height: 180px !important;
        left: 0 !important;
        bottom: 20px !important;
        border: 6px solid #fcfbf7 !important; /* Thinner border for small scale */
    }

    .gold-frame {
        width: 85% !important;
        height: 85% !important;
        top: -10px !important;
        right: -10px !important;
        border-width: 1px !important;
    }
   .section-badge {
        display: inline-flex;
        flex-direction: column; /* Stacks children vertically */
        align-items: center;    /* Centers the two lines */
        font-family: 'Inter', sans-serif;
        font-size: 10px !important;
        font-weight: 500;
        text-transform: uppercase;
        letter-spacing: 2px;
        color: #b38e44; /* Gold */
        line-height: 1.6;
        text-align: center;
    }

    /* This forces the line break */
    .section-badge span {
        display: block;
    }

    /* Optional: Make the second line slightly bolder or different */
    .section-badge .brand-name {
        font-weight: 700;
        font-size: 15px !important;
        letter-spacing: 3px;
        color: #197b7e;
    }
}
@media (max-width: 768px) {
    /* 1. Stack the content: Text on top, Images on bottom */
    .about-wrapper {
        grid-template-columns: 1fr;
        gap: 40px;
        text-align: center;
    }

    .about-content {
        display: flex;
        flex-direction: column;
        align-items: center; /* Centers the text and buttons */
    }

    .section-title {
        font-size: 42px; /* Shrink title slightly for mobile */
    }

    .gold-line {
        margin: 0 auto 30px auto; /* Center the gold line */
    }

    .section-desc {
        text-align: center; /* Better readability on small screens */
    }

    /* 2. Fix the Hexagon Grid Positioning */
    .about-images {
        height: 400px; /* Reduce container height for mobile */
        margin-top: 20px;
    }

    .hexagon-grid {
        /* This moves the grid left (-30px) and shrinks it to fit mobile widths */
        transform: scale(0.65) translateX(-40px);
        transform-origin: center; 
        width: 100%;
        left: 0;
    }
    
    /* Optional: Ensure buttons stack or center properly */
    .about-cta-group {
        flex-direction: column;
        width: 100%;
        gap: 15px;
    }
}
@media (max-width: 768px) {
    /* 1. Stack the layout so the grid has its own row */
    .about-wrapper {
        display: flex;
        flex-direction: column;
        gap: 30px;
    }

    /* 2. Target the image container */
    .about-images {
        width: 100%;
        height: 480px; /* Keep height so hexagons don't overlap next section */
        display: block; /* Remove flex centering */
        position: relative;
        overflow: visible; /* Ensure hexagons aren't cut off when moving left */
    }

    /* 3. Shift the actual grid left */
    .hexagon-grid {
        position: relative;
        /* Increase the -50px to move it further left as needed */
        left: -60px; 
        
        /* Ensure no scaling is applied if you want to keep original size */
        transform: scale(1); 
        margin: 0;
    }
}


/* next */

@media screen and (max-width: 768px) {
    /* 1. Overall Section & Spacing */
    section.bago-manifesto-v3 {
        padding: 25px 20px !important; /* Balanced gap top/bottom */
        background-color: #ffffff !important;
    }

    /* 2. Headline & Brand Statement */
    section.bago-manifesto-v3 .bago-v3-subtitle {
       font-family: 'DM Sans', sans-serif !important;
        /* Add this line to remove the default H3 bolding */
        font-weight: 100 !important; 
        
        text-align: justify !important;
        font-size: 15px !important;
        line-height: 1.6 !important;
        width: 90%;
        margin: 0 auto 30px !important;
        display: block !important;
        color: #ffffff; /* Explicitly set to white if it's inheriting gray */
    }

    section.bago-manifesto-v3 .brand-highlight {
        color: inherit !important;
        font-family: inherit !important;
        font-size: inherit !important;
        /* Ensure the span also inherits the normal weight */
        font-weight: inherit !important; 
        display: inline !important;
        padding: 0 !important;
        margin: 0 !important;
    }

    section.bago-manifesto-v3 .bago-v3-highlight {
font-family: 'DM Sans', sans-serif !important;
        text-align: justify !important; /* Better readability on phones */
        font-size: 15px !important;
   
        
    width: 105%;
        /* margin: 0 auto 0px !important; */
        display: block !important;
        color: #222121 !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;
    line-height: 24px !important;
    }

    /* 3. Luxury Grid (The Values Section) */
    section.bago-manifesto-v3 .bago-v3-values {
        padding: 25px 0 !important; /* Tightened height */
        margin: 20px 0 !important;
        border-top: 1px solid #f2f2f2 !important;
        border-bottom: 1px solid #f2f2f2 !important;
    }

    section.bago-manifesto-v3 .bago-v3-label {
        font-size: 14px !important;
        letter-spacing: 1px !important;
        text-transform: uppercase !important;
        color: #b38e44 !important;
        margin-bottom: 20px !important;
    }

    section.bago-manifesto-v3 .bago-v3-grid {
        grid-template-columns: 1fr 1fr !important;
        row-gap: 20px !important;
        column-gap: 10px !important;
    }

    /* Typography for Grid Items */
    section.bago-manifesto-v3 .bago-v3-top {
        font-family: 'DM Sans', sans-serif;        
         color: #363535 !important;     

        font-size: 15px !important;
        font-weight: 500 !important;
        
    }

    section.bago-manifesto-v3 .bago-v3-vs {
        font-family: 'Cormorant Garamond', serif !important;
        font-style: italic !important;
        font-size: 17px !important;
        margin: 1px 0 !important;
        color: #c5a059 !important;
        display: block !important;
    }

    section.bago-manifesto-v3 .bago-v3-bottom {
        font-size: 10px !important;
        letter-spacing: 0.8px !important;
        text-transform: uppercase !important;
        color: #504e4e !important;
    }

    /* 4. Footer & Mission statement */
    section.bago-manifesto-v3 .bago-v3-footer {
        margin-top: 10px !important;
            /* Slightly less pull for mobile screens */
            text-align: center;
            padding: 0 20px;
            
    }

    section.bago-manifesto-v3 .bago-v3-gen {
       font-family: 'DM Sans', sans-serif !important;
        text-align: justify !important; /* Better readability on phones */
        font-size: 15px !important;

        line-height: 1.3 !important;   /* Extra spacing like the screenshot */
        text-align: justify !important;
         color: #161616 !important;     
        
    width: 120%;
        /* 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: -40px !important;

    }

    section.bago-manifesto-v3 .bago-v3-mission {
        font-size: 18px !important; 
        line-height: 1.3 !important;
        font-style: italic !important;
        color: #111 !important;
        text-align: justify !important;
        margin-top: 20px !important;
         width: 110%;
        /* 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;
    }
}
@media (max-width: 768px) {
    section.bago-manifesto-v3 .bago-v3-subtitle {
        /* This uses the "System Stack" - looks like DM Sans on mobile */
font-family: 'DM Sans', sans-serif !important;
        text-align: justify !important; /* Better readability on phones */
        font-size: 15px !important;

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

    /* Force the highlight span to be identical */
    section.bago-manifesto-v3 .brand-highlight {
        font-weight: 400 !important;
        color: inherit !important;
        font-family: inherit !important;
        display: inline !important;
        /* Ensure no extra spacing is added */
    word-spacing: normal !important;
    letter-spacing: normal !important;
        
    }
}

/* next */

@media screen and (max-width: 768px) {
    
    /* 1. Global Section: Small top/bottom gap */
    section.bg-diff-v4-refined {
        padding: 25px 15px 40px 15px !important;
        background-color: #ffffff !important;
    }

    /* 2. Header: Tighten Eyebrow & Title gap */
    section.bg-diff-v4-refined .bg-diff-header {
        margin-bottom: 25px !important;
    }

    section.bg-diff-v4-refined .bg-diff-eyebrow {
        font-size: 9px !important;
        letter-spacing: 3px !important;
        margin-bottom: 5px !important; /* Overrides the 150px gap */
        display: block !important;
        color: #b38e44 !important;
    }

    section.bg-diff-v4-refined .bg-diff-main-title {
        margin-top: 0px !important;
        font-size: 21px !important; /* Elegant small scale */
        line-height: 1.2 !important;
        font-weight: 400 !important;
        color: #252525 !important;
    }

    /* 3. The Boxes: Smaller, sharper cards */
    section.bg-diff-v4-refined .bg-diff-grid {
        grid-template-columns: 1fr !important;
        gap: 12px !important; /* Tightens the vertical stack */
        margin-bottom: 30px !important;
    }

    section.bg-diff-v4-refined .bg-diff-card {
        padding: 20px !important; /* Small boxes */
        background: #fdfdfd !important;
        border: 1px solid #f2f2f2 !important;
        border-radius: 0px !important; /* Sharp corners look more premium */
    }

    /* 4. Box Content */
    section.bg-diff-v4-refined .bg-diff-num {
        font-size: 18px !important;
        margin-bottom: 4px !important;
        font-family: 'Cormorant Garamond', serif !important;
    }

    section.bg-diff-v4-refined .bg-diff-card-title {
         /* This uses the "System Stack" - looks like DM Sans on mobile */
font-family: 'DM Sans', sans-serif;        
        /* THE "MODEL" SETTINGS */
        font-weight: 400 !important;   /* Removes all bolding */
        font-size: 15px !important;    /* Exact size from your request */
        line-height: 1.3 !important;   /* Extra spacing like the screenshot */
        text-align: justify !important;
         color: #363535 !important;     
        
   
        
       

    }

    section.bg-diff-v4-refined .bg-diff-card-text {
         /* This uses the "System Stack" - looks like DM Sans on mobile */
font-family: 'DM Sans', sans-serif;        
        /* THE "MODEL" SETTINGS */
        font-weight: 400 !important;   /* Removes all bolding */
        font-size: 15px !important;    /* Exact size from your request */
        line-height: 1.3 !important;   /* Extra spacing like the screenshot */
        text-align: justify !important;
         color: #504e4e !important;     
        
   
        /* Ensure no extra spacing is added */
    word-spacing: -1.2px !important;
    letter-spacing: normal !important;

    }

    /* 5. Manifesto: Final statement tightening */
    section.bg-diff-v4-refined .bg-diff-manifesto {
        margin-top: 30px !important;
    }

    section.bg-diff-v4-refined .bg-diff-sub {
       font-family: 'DM Sans', sans-serif;        
        /* THE "MODEL" SETTINGS */
        font-weight: 400 !important;   /* Removes all bolding */
        font-size: 15px !important;    /* Exact size from your request */
        line-height: 1.3 !important;   /* Extra spacing like the screenshot */
        text-align: center !important;
         color: #161616 !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: -10px !important; 
    }

    section.bg-diff-v4-refined .bg-diff-statement {
        font-size: 17px !important;
        margin-top: 5px !important;
        font-weight: 300 !important;
    }
}

/* 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: 20px 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 */
    }

   

    
}