@media screen and (max-width: 768px) {

    /* 1. Prevent the entire page from scrolling horizontally */
    html,
    body {
        overflow-x: hidden !important;
        width: 100% !important;
        position: relative;
    }

    /* 2. Fix the Hamburger Icon position so it stays inside the screen */
    #mobHam {
        position: fixed !important;
        top: 20px !important;
        right: 15px !important;
        /* Keep it 15px from the edge */
        left: auto !important;
        z-index: 9999999 !important;
        display: flex !important;
    }

    /* 3. Ensure the Sidebar doesn't push the page width */
    .mobile-sidebar {
        width: 80% !important;
        max-width: 300px !important;
        position: fixed !important;
        right: -100% !important;
        /* Start off-screen */
        left: auto !important;
        transition: transform 0.4s ease-in-out !important;
        transform: translateX(0);
    }

    /* 4. Use transform instead of 'right' for smoother, non-breaking animation */
    .mobile-sidebar.active {
        right: 0 !important;
        transform: translateX(0) !important;
    }

    /* 5. Force the header to fit perfectly */
    .mobile-only-header {
        width: 100vw !important;
        left: 0 !important;
        right: 0 !important;
        box-sizing: border-box !important;
    }
}
/* --- 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. 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. Remove the small circles */
    .circle-gallery {
        display: none !important;
    }

    /* 2. Push content to the bottom */
    .about-main {
        align-items: flex-end !important; /* Pushes grid to bottom */
        padding-bottom: 100px !important; /* Adjust this to set distance from bottom */
        min-height: 80vh; /* Ensures there is space to move down */
    }

    /* 3. Align grid items */
    .about-grid {
        grid-template-columns: 1fr !important; /* Stack vertically if needed */
        text-align: left !important; /* Premium left-aligned look */
        width: 100%;
    }

    /* 4. Fine-tune Title for mobile */
    .about-visual h1 {
        font-size: 50px !important; /* Prevents overflow on small screens */
        line-height: 1.1;
    }
}

/* next */



/* --- MOBILE OPTIMIZATION FOR OUR STORY SECTION --- */
@media screen and (max-width: 768px) {
    
    /* 1. Reduce overall section spacing */
    .bago-organic-section {
        padding: 50px 20px !important; /* Tightened top/bottom gap */
    }

    /* 2. Switch Grid to Stack */
    .bago-organic-section .bago-container {
        display: flex !important;
        flex-direction: column !important;
        gap: 40px !important; /* Gap between images and text */
    }

    /* 3. Visual Cluster: Fix position and scale */
    .bago-organic-section .organic-visual-cluster {
        height: 350px !important; /* Shorter for mobile */
        transform: translateX(0) !important; /* Reset the desktop shift */
        width: 100% !important;
    }

    .bago-organic-section .decorative-ring {
        width: 250px !important;
        height: 250px !important;
        left: 10% !important;
    }

    /* Shrink the image blobs to fit mobile screens */
    .bago-organic-section .blob-1 { 
        width: 80% !important; 
        height: 280px !important; 
    }
    
    .bago-organic-section .blob-2 { 
        width: 60% !important; 
        height: 180px !important; 
        bottom: 10px !important;
        right: 0 !important;
    }

    .bago-organic-section .blob-3 { 
        width: 100px !important; 
        height: 100px !important; 
        top: 5% !important; 
        right: 5% !important; 
    }

    /* 4. Content Alignment: Center or Left? (Boutique look uses left) */
    .bago-organic-section .story-content {
        padding-right: 0 !important;
        text-align: left !important;
    }

    .bago-organic-section .header-lockup {
        margin-left: 0 !important; /* Reset the negative margin for mobile */
        align-items: flex-start !important;
    }

    .bago-organic-section .professional-title {
        font-size: 20px !important; /* Slightly smaller for mobile headers */
        margin-bottom: 0px !important;
        
    }
.bago-organic-section .section-label {
       font-family: 'DM Sans', sans-serif !important;
        text-align: justify !important; /* Better readability on phones */
        font-size: 15px !important;

        
    }
    .bago-organic-section .lead-text p{
       /* 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;     
        
    width: 100%;
    margin-top: 100px !important;
       
        /* Smoothing for that "Retina" crisp look */
        

    }

    /* 5. Clean up the list and quote */
    .bago-organic-section .clean-list li {
        font-size: 15px !important;
        margin-bottom: 10px !important;
    }

    .bago-organic-section .floating-quote {
        padding-top: 10px !important;
        margin-top: 15px !important;
        margin-bottom: -30px !important;
    }

    .bago-organic-section .cursive-quote {
        font-size: 20px !important;
        line-height: 1.4 !important;
        margin-bottom: 0px !important;
    }
}
@media (max-width: 768px) {
    /* 1. Remove bottom space from the title */
    h2.professional-title {
        margin-bottom: 0 !important;
        padding-bottom: 0px !important; /* Optional: tiny gap for breathing room */
        line-height: 1.2 !important;
        margin-left: 80px !important;
    }

    /* 2. Remove top space from the gold line */
    .gold-accent-line {
        margin-top: 0 !important;
        /* Ensure the line stays centered if that's your design */
        margin-left: 90px !important;
        margin-right: auto !important;
        
        /* If your line uses a border or height, keep it crisp */
        height: 1px; 
        width: 60px; /* Or whatever width you prefer for mobile */
        background-color: #b38e44; /* Your signature gold */
        margin-bottom: 170px !important;
    }
}
@media (max-width: 768px) {
    .story-header .eyebrow {
        display: block; /* Ensures it sits on its own line above the title */
        font-family: 'Inter', 'Montserrat', sans-serif;
        font-size: 14px;          /* Small and refined */
        font-weight: 500;         /* Medium weight for clarity */
        text-transform: uppercase; /* Standard for luxury eyebrows */
        letter-spacing: 3px;      /* Deep spacing for that premium look */
        color: #b38e44;           /* Your signature gold */
        margin-bottom: 8px;       /* Tight gap to the "Our Story" title */
        opacity: 0.9;             /* Slightly softer than pure black/white */
        text-align: center;       /* Centers it for mobile layouts */
        line-height: 15.5px !important;
    }
    
    /* Ensuring the lockup doesn't add accidental gaps */
    .header-lockup {
        margin-bottom: 5px; 
        text-align: center;
    }
}
@media (max-width: 768px) {
    .story-text {
        width: 100% !important;
        padding: 0 0%; /* Adds a small breathing room on the edges */
    }

    .story-text p {
        font-family: 'DM Sans', sans-serif !important;
        font-weight: 400 !important;   /* Kill browser bolding */
        font-size: 15.5px !important;    /* Your exact requested size */
        line-height: 1.5 !important;   /* Tight, modern line height */
        text-align: justify !important;
        color: #363535 !important;     /* Specific dark gray */
        
        margin: 0 auto 15px !important; /* Space between paragraphs */
        display: block !important;
        
        /* High-end rendering settings */
        -webkit-font-smoothing: antialiased;
        word-spacing: normal !important;
        letter-spacing: normal !important;
        text-rendering: optimizeLegibility;
    }

    /* This ensures your <strong> tags don't break the "No Bolding" rule */
    .story-text strong {
        font-weight: 400 !important; 
        color: inherit !important;
    }

    /* Specific adjustment for the lead-text if you want it slightly different */
    .story-text .lead-text {
        margin-bottom: 20px !important;
    }
}
@media (max-width: 768px) {
    /* 1. Fix the Overlap (The "Our Story" title) */
    .header-lockup {
        margin-left: 0 !important;
        margin-bottom: 20px !important;
        display: flex;
        flex-direction: column;
        align-items: center;
        text-align: center;
    }

    h2.professional-title {
        margin: 10px 0 !important;
        position: static !important; /* Forces it out of the overlap */
        font-size: 28px !important;
       margin-left: 90px !important;
    }

    /* 2. Fix the Gold Line */
    .gold-accent-line {
        margin: 0px auto 25px !important; /* Controlled gap after the line */
        width: 60px;
        height: 1.5px;
        display: block;
        margin-left: 90px !important;
    }

    /* 3. Fix the Text Sentence Gap */
    .story-text .lead-text, 
    .bago-organic-section .lead-text p {
        font-family: 'DM Sans', sans-serif !important;
        text-align: justify !important; /* Better readability on phones */
        font-size: 15px !important;

        margin-top: 50px !important;
        padding-top: 0 !important;
        position: static !important;
        line-height: 24px !important;
    }

    /* 4. Ensure the Eyebrow is visible */
    .story-header .eyebrow {
        margin-bottom: 5px !important;
        letter-spacing: 2px !important;
    }
}
/* next */


/* --- MOBILE OPTIMIZATION FOR EXPERTISE SECTION --- */
@media screen and (max-width: 768px) {
    
    /* 1. Reduce overall section spacing */
    .bago-expertise-hero {
        padding: 20px 20px !important; /* Tight top/bottom for mobile */
    }

    /* 2. Header Adjustments */
    .bago-expertise-hero .expertise-header {
        margin-bottom: 40px !important;
    }

    .bago-expertise-hero .exp-title {
        font-family: 'DM Sans', sans-serif !important;
        font-size: 22px !important; /* Adjusted to fit one line */
        color: #201f1f !important;
        white-space: nowrap !important; /* Forces one line */
        margin: 0 0 10px 0 !important; /* FIX: Removes the -40px desktop margin */
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
    }

    .bago-expertise-hero .exp-sub {
        /* Your existing font styles */
        font-family: 'DM Sans', sans-serif !important;
        font-weight: 400 !important;
        font-size: 15px !important;
        line-height: 1.6 !important;
        text-align: center !important;
        text-transform: lowercase !important;
        -webkit-font-smoothing: antialiased;
        
        /* The Gap (Padding) */
        /* Adds 30px space on left and right */
        padding-left: 20px !important;
        padding-right: 20px !important;
        
        /* Spacing Fixes */
        word-spacing: -1px !important;
        letter-spacing: normal !important;
        
        /* Ensure the width is calculated correctly with padding */
        box-sizing: border-box !important;
        display: block !important;
        width: 100% !important;
        margin: 0 auto 20px auto !important;

    }

    /* 3. Grid to Stack Conversion */
    .bago-expertise-hero .exp-performance-grid {
        display: flex !important;
        flex-direction: column !important;
        padding: 5px 20px !important;
        gap: 40px !important;
        background: #fdfdfd !important; /* Subtle premium off-white */
        margin-top: -10px !important;
    }

    /* 4. Large Stat Center Alignment */
    .bago-expertise-hero .main-stat {
        align-items: center !important;
        text-align: center !important;
    }

    .bago-expertise-hero .stat-number {
        font-size: 80px !important; /* Scaled down for mobile width */
        margin-top: -20px !important;
    }

    .bago-expertise-hero .stat-label {
       
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;
        margin-bottom: 5px !important;
        margin-top: -5px !important;

    }

    .bago-expertise-hero .gold-progress-bar {
        margin: 0 auto !important; /* Center the bar */
        height: 1px !important; /* This makes it a very delicate line */
    }

    /* 5. Detail Items Layout */
    .bago-expertise-hero .exp-detail-row {
        display: flex !important;
        flex-direction: column !important;
        gap: 25px !important;
         margin-top: -10px !important;
    }

    .bago-expertise-hero .detail-item {
        align-items: flex-start !important;
        text-align: left !important;
    }

    .bago-expertise-hero .detail-content strong {
        font-family: 'DM Sans', sans-serif !important;
        font-weight: 400 !important;
        font-size: 17px !important;
        line-height: 1.6 !important;
        color: #363535 !important;
        text-align: justify !important; /* Kept your requested alignment */
        -webkit-font-smoothing: antialiased;
    }

    .bago-expertise-hero .detail-content p {
        font-family: 'DM Sans', sans-serif !important;
        font-weight: 400 !important;
        font-size: 15px !important;
        line-height: 1.4 !important;
        color: #363535 !important;
        text-align: justify !important; /* Kept your requested alignment */
        -webkit-font-smoothing: antialiased;

    }

    /* 6. Footer Quote Fix */
    .bago-expertise-hero .exp-footer {
        margin-top: 10px !important;
        padding-top: 20px !important;
    }

    .bago-expertise-hero .bago-inner-frame .exp-footer p {
        /* font-family: 'DM Sans', sans-serif !important; */
        font-weight: 400 !important;
        font-size: 17px !important;
        line-height: 1.4 !important;
        color: #363535 !important;
        text-align: justify !important; /* Kept your requested alignment */
        -webkit-font-smoothing: antialiased;
    }
}

/* next */

/* --- MOBILE OPTIMIZATION FOR RECOGNITION SECTION --- */
@media screen and (max-width: 768px) {
    
    /* 1. Reduce section height and padding */
    .bago-recognition-section {
        padding: 20px 20px !important; /* Tightened top/bottom gaps */
    }

    /* 2. Header refinement */
    .bago-recognition-section .recognition-header {
        margin-bottom: 35px !important;
    }

    .bago-recognition-section .alt-title {
        font-family: 'DM Sans', sans-serif !important;
        font-size: 22px !important; /* Adjusted to fit one line */
        color: #201f1f !important;
        white-space: nowrap !important; /* Forces one line */
        margin: 0 0 10px 0 !important; /* FIX: Removes the -40px desktop margin */
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
    }

    .bago-recognition-section .header-p {
        font-family: 'DM Sans', sans-serif !important;
        font-weight: 400 !important;
        font-size: 15px !important;
        line-height: 1.6 !important;
        text-align: center !important;
        text-transform:capitalize !important;
        -webkit-font-smoothing: antialiased;
        
        /* The Gap (Padding) */
        /* Adds 30px space on left and right */
        padding-left: 20px !important;
        padding-right: 20px !important;
        
        /* Spacing Fixes */
        word-spacing: -1px !important;
        letter-spacing: normal !important;
        
        /* Ensure the width is calculated correctly with padding */
        box-sizing: border-box !important;
        display: block !important;
        width: 100% !important;
        margin: 0 auto 20px auto !important;



    }

    /* 3. Grid to 2-Column Layout */
    .bago-recognition-section .honor-grid {
        grid-template-columns: 1fr 1fr !important; /* 2x2 grid looks more premium than 1x1 */
        gap: 15px !important;
        margin-top: -10px !important;
    }

    /* 4. Honor Card compacting */
    .bago-recognition-section .honor-card {
        padding: 30px 15px !important;
        background: #ffffff !important;
        box-shadow: 0 4px 15px rgba(0,0,0,0.03) !important;
    }

    .bago-recognition-section .honor-icon {
        font-size: 24px !important;
        margin-bottom: 12px !important;
        opacity: 1 !important; /* Visible on mobile without hover */
        filter: grayscale(0) !important;
    }

    .bago-recognition-section .honor-card h4 {
        font-family: 'DM Sans', sans-serif !important;
        font-size: 17px !important; /* Adjusted to fit one line */
        /* color: #201f1f !important; */
        white-space: nowrap !important; /* Forces one line */
        margin: 0 0 10px 0 !important; /* FIX: Removes the -40px desktop margin */
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;

    }

    .bago-recognition-section .honor-card p {
        font-family: 'DM Sans', sans-serif !important;
        font-size: 13px !important; /* Slightly smaller for better fit */
        line-height: 1.2 !important;
        color: #3a3a3a !important;
        
        /* FIX: Center alignment prevents weird gaps on small cards */
        text-align: center !important; 
        text-justify: none !important;
        
        /* Keeping your lowercase style but adding balance */
        text-transform: lowercase !important;
        margin: 0 !important;
        width: 100% !important;

    }

    /* 5. Manifesto (Bottom Text) */
    .bago-recognition-section .trust-manifesto {
        margin-top: 20px !important;
    }

    .bago-recognition-section .manifesto-small {
        font-family: 'DM Sans', sans-serif !important;
        font-weight: 400 !important;
        font-size: 15px !important;
        line-height: 1.4 !important;
        color: #363535 !important;
        text-align: justify !important; /* Kept your requested alignment */
        -webkit-font-smoothing: antialiased;
        text-transform: lowercase !important;


    }

    .bago-recognition-section .manifesto-large {
        font-size: 20px !important;
        line-height: 1.4 !important;
        padding: 0 10px;
        margin-top: -10px !important;
    }
}

/* next */

/* --- PREMIUM MOBILE OPTIMIZATION: ZEN MUNROE SECTION --- */
@media screen and (max-width: 768px) {
    
    /* 1. Reduce Top/Bottom Section Gaps */
    .zen-munroe-section {
        padding: 20px 0 !important; /* Compact vertical spacing */
    }

    .zen-container {
        padding: 0 25px !important;
    }

    /* 2. Header: Stacked & Elegant Alignment */
    .zen-munroe-section .zen-header {
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 20px !important;
        margin-bottom: 40px !important;
    }

    .zen-munroe-section .zen-main-title {
        font-size: 30px !important; /* Scaled for mobile width */
        line-height: 0.9 !important;
    }

    .zen-munroe-section .zen-cursive-accent {
        font-size: 30px !important;
        margin-left: 40px !important; /* Adjusted indentation */
        margin-top: -10px !important;
    }

    .zen-munroe-section .zen-intro-text {
        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;


    }

    /* 3. Image & Floating Card: The Seamless Stack */
    .zen-munroe-section .zen-frame-large {
        height: 250px !important; /* Reduced image height to prevent endless scrolling */
        margin-top: -25px !important;
    }

    .zen-munroe-section .zen-feature-card {
        position: relative !important; /* No longer floating off-screen */
        top: -30px !important; /* Subtle overlap for depth */
        right: 0 !important;
        width: 90% !important;
        margin: 0 auto !important;
        padding: 30px 25px !important;
        box-shadow: 10px 10px 40px rgba(0,0,0,0.15) !important;
    }

    .zen-munroe-section .zen-list li {
        font-family: 'DM Sans', sans-serif !important;
        font-weight: 400 !important;

        font-size: 14px !important;
        padding-bottom: 12px !important;
        margin-bottom: 12px !important;
    }

    /* 4. Footer Narrative Alignment */
    .zen-munroe-section .zen-body-p {
        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;

    }

    .zen-munroe-section .zen-cursive-quote {
        font-size: 24px !important; /* Scaled down cursive */
        text-align: center;
        width: 100%;
        line-height: 21.9px !important;
    }

    .zen-munroe-section .zen-dots-container {
        justify-content: center !important; /* Center the gold dots */
        margin-top: -10px !important;
    }
}
/* --- ZEN MUNROE OVERLAP FIX --- */
@media screen and (max-width: 768px) {

    /* 1. Ensure the image bridge has enough space for the relative card */
    .zen-munroe-section .zen-image-bridge {
        margin-bottom: 20px !important; /* Reduced bottom margin */
        display: flex !important;
        flex-direction: column !important;
    }

    /* 2. Reset the card so it doesn't overlap the following text */
    .zen-munroe-section .zen-feature-card {
        position: relative !important;
        top: -40px !important; /* Keeps the overlap with the IMAGE */
        margin-bottom: 0 !important; /* Removes extra space below itself */
        z-index: 10;
    }

    /* 3. Push the footer content DOWN so it clears the black box */
    .zen-munroe-section .zen-footer {
        margin-top: 20px !important; /* Forces the text to start below the box */
        padding-top: 0 !important;
    }

    .zen-munroe-section .zen-body-p {
        margin-top: 0 !important;
        padding-top: 0 !important;
        position: relative;
        z-index: 1; /* Keeps text behind the box if they touch, but the margin pushes it away */
    }
}
@media screen and (max-width: 768px) {
    /* 1. Reset the black box positioning */
    .zen-munroe-section .zen-feature-card {
        position: relative !important;
        top: 0 !important;
        
        /* Pulls the box UP more onto the image */
        margin-top: -100px !important; 
        
        /* REDUCED GAP: This brings the text closer to the box */
        margin-bottom: 200px !important; 
        
        width: 92% !important;
        margin-left: auto !important;
        margin-right: auto !important;
        padding: 25px !important; /* Slightly more compact inside */
    }

    /* 2. Tighten the narrative text spacing */
    .zen-munroe-section .zen-footer {
        margin-top: 0 !important;
        padding-top: 0 !important;
    }

    .zen-munroe-section .zen-body-p {
        margin-top: 0 !important;
        padding-top: 0 !important;
        line-height: 1.6 !important;
    }
}
@media screen and (max-width: 768px) {
    /* Target the text container directly */
    .zen-munroe-section .zen-footer {
        display: block !important;
        position: relative !important;
        
        /* MOVE THIS NUMBER TO PUSH TEXT DOWN */
        margin-top: 170px !important; 
        
        /* Ensures it clears any floating elements */
        clear: both !important; 
    }
}
@media screen and (max-width: 768px) {
  /* 1. Ensure the container doesn't force a scroll */
  .content-box {
    width: 100% !important;
    max-width: 100vw !important; /* Forces it to stay within the viewport width */
    overflow: hidden !important;
    padding: 0 !important;
    margin: 0 !important;
    margin-top: -30px !important;
  }

  /* 2. Make the image stay 100% inside the screen */
  .houseboat-img {
    width: 100% !important;      /* Fits the screen width */
    height: 200px !important;     /* Keeps the full boat visible without cropping */
    max-width: 100% !important;
    display: block !important;
    
    /* This ensures the entire image is contained inside the box */
    object-fit: contain !important; 
    
    margin: 0 auto !important;
  }
}
@media (max-width: 768px) {
    .zen-header .zen-eyebrow {
          font-family: 'Inter', sans-serif !important;
        font-size: 13px !important;
        letter-spacing: 2px !important;
        text-transform: uppercase;
        color: #b38e44 !important;
        margin-bottom: 5px !important;
        display: block;
font-weight: 200px !important;
    }

    
}

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

   

    
}