/* Golden Sands — dedicated mobile menu v25
   Solid panel, no blur, no inherited oval/clip-path effects. */
.mobile-menu-panel,.mobile-menu-backdrop{display:none}

@media (max-width:900px){
  html,body{max-width:100%;overflow-x:hidden!important}
  body.menu-open{overflow:hidden!important;touch-action:none!important}
  body.menu-open #main,
  body.menu-open .site-header,
  body.menu-open .luxury-prefooter,
  body.menu-open .footer{filter:none!important;-webkit-filter:none!important}

  body.gs-tideglass .luxury-topbar{display:none!important}
  body.gs-tideglass .site-header{
    position:sticky!important;top:0!important;z-index:7200!important;
    background:linear-gradient(180deg,#fffefb 0%,#fff8ed 100%)!important;
    border-bottom:1px solid rgba(203,155,69,.26)!important;
    box-shadow:0 8px 24px rgba(3,47,56,.10)!important;
    backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
    overflow:visible!important;transform:none!important;contain:none!important;
  }
  body.gs-tideglass .luxury-header .nav-wrap{
    width:min(100% - 20px,1240px)!important;min-height:80px!important;
    padding:9px 0!important;gap:8px!important;
  }
  body.gs-tideglass .luxury-header .brand{flex:1 1 auto!important;min-width:0!important;max-width:none!important}
  body.gs-tideglass .luxury-header .brand img{
    width:205px!important;height:60px!important;max-width:100%!important;
    object-fit:contain!important;object-position:left center!important;
  }
  body.gs-tideglass .mobile-brand-note{display:none!important}
  body.gs-tideglass .desktop-nav{display:none!important}
  body.gs-tideglass .header-quick{display:flex!important;align-items:center!important;gap:8px!important}
  body.gs-tideglass .header-phone{display:none!important}
  body.gs-tideglass .mobile-header-book,
  body.gs-tideglass .menu-toggle{
    display:grid!important;place-items:center!important;width:44px!important;height:44px!important;
    min-width:44px!important;padding:0!important;border-radius:14px!important;position:relative!important;
    cursor:pointer!important;pointer-events:auto!important;z-index:3!important;
  }
  body.gs-tideglass .mobile-header-book{background:linear-gradient(145deg,#f2cc78,#dfa43a)!important;color:#073b44!important;border:1px solid rgba(201,154,75,.46)!important;box-shadow:0 8px 18px rgba(201,154,75,.20)!important}
  body.gs-tideglass .mobile-header-book span{display:none!important}
  body.gs-tideglass .menu-toggle{background:#fff!important;color:#073b44!important;border:1px solid rgba(7,59,68,.20)!important;box-shadow:0 8px 18px rgba(3,47,56,.11)!important}
  body.gs-tideglass .menu-toggle svg{width:23px!important;height:23px!important;fill:none!important;stroke:currentColor!important}

  .mobile-menu-backdrop{
    display:block!important;position:fixed!important;inset:0!important;z-index:8000!important;
    width:100%!important;height:100%!important;margin:0!important;padding:0!important;border:0!important;
    background:rgba(2,25,31,.48)!important;
    backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
    opacity:0!important;visibility:hidden!important;pointer-events:none!important;
    transition:opacity .25s ease,visibility .25s ease!important;
  }
  body.menu-open .mobile-menu-backdrop{opacity:1!important;visibility:visible!important;pointer-events:auto!important}

  .mobile-menu-panel{
    display:flex!important;flex-direction:column!important;position:fixed!important;
    top:0!important;right:0!important;bottom:0!important;left:auto!important;z-index:8100!important;
    width:min(88vw,360px)!important;max-width:360px!important;height:100dvh!important;min-height:100svh!important;
    padding:14px 14px calc(16px + env(safe-area-inset-bottom))!important;margin:0!important;
    background:#fffdf8!important;background-image:none!important;color:#073b44!important;
    border:0!important;border-left:1px solid rgba(201,154,75,.22)!important;border-radius:26px 0 0 26px!important;
    box-shadow:-20px 0 55px rgba(2,24,30,.24)!important;
    overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain!important;
    transform:translate3d(105%,0,0)!important;opacity:1!important;visibility:hidden!important;pointer-events:none!important;
    clip-path:none!important;filter:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
    transition:transform .30s cubic-bezier(.22,.72,.2,1),visibility .30s ease!important;
  }
  .mobile-menu-panel::before,.mobile-menu-panel::after{display:none!important;content:none!important}
  .mobile-menu-panel.is-open{transform:translate3d(0,0,0)!important;visibility:visible!important;pointer-events:auto!important}

  .mobile-menu-head{
    position:relative!important;display:grid!important;grid-template-columns:1fr 42px!important;gap:4px 10px!important;
    padding:12px!important;margin-bottom:10px!important;border-radius:18px!important;
    background:linear-gradient(135deg,#fff6e4 0%,#fffefb 72%)!important;
    border:1px solid rgba(201,154,75,.25)!important;box-shadow:0 9px 22px rgba(3,47,56,.07)!important;
  }
  .mobile-menu-logo{grid-column:1!important;display:flex!important;align-items:center!important;min-width:0!important}
  .mobile-menu-logo img{display:block!important;width:175px!important;height:58px!important;object-fit:contain!important;object-position:left center!important}
  .mobile-menu-close{
    grid-column:2!important;grid-row:1!important;display:grid!important;place-items:center!important;
    width:42px!important;height:42px!important;padding:0!important;border-radius:13px!important;
    background:#fff!important;color:#073b44!important;border:1px solid rgba(7,59,68,.16)!important;
    box-shadow:0 7px 17px rgba(3,47,56,.10)!important;cursor:pointer!important;
  }
  .mobile-menu-close svg{width:22px!important;height:22px!important;fill:none!important;stroke:currentColor!important}
  .mobile-menu-kicker{grid-column:1/-1!important;margin-top:5px!important;color:#0b8790!important;font-size:9px!important;font-weight:800!important;letter-spacing:.16em!important;text-transform:uppercase!important}
  .mobile-menu-head>strong{grid-column:1/-1!important;color:#073b44!important;font-family:"Cormorant Garamond",serif!important;font-size:25px!important;line-height:1.05!important}

  .mobile-menu-links{display:grid!important;gap:7px!important;margin:0!important;padding:0!important}
  .mobile-menu-links a{
    display:grid!important;grid-template-columns:32px 1fr!important;align-items:center!important;min-height:47px!important;
    padding:9px 13px!important;border-radius:13px!important;background:#fff!important;color:#073b44!important;
    border:1px solid rgba(7,59,68,.10)!important;box-shadow:0 4px 11px rgba(3,47,56,.04)!important;
    font-family:Manrope,sans-serif!important;font-size:12px!important;font-weight:800!important;letter-spacing:.05em!important;text-transform:uppercase!important;
  }
  .mobile-menu-links a span{display:grid!important;place-items:center!important;width:25px!important;height:25px!important;border-radius:8px!important;background:#eef9f7!important;color:#0b8790!important;font-size:8px!important}
  .mobile-menu-links a.active{background:linear-gradient(135deg,#087f89,#054b55)!important;color:#fff!important;border-color:transparent!important;box-shadow:0 10px 22px rgba(6,77,87,.20)!important}
  .mobile-menu-links a.active span{background:rgba(255,255,255,.14)!important;color:#f4d589!important}

  .mobile-menu-cta{
    display:flex!important;align-items:center!important;justify-content:center!important;gap:10px!important;
    min-height:51px!important;margin-top:10px!important;padding:11px 14px!important;border-radius:15px!important;
    color:#fff!important;background:linear-gradient(135deg,#0b8790,#054b55)!important;
    box-shadow:0 11px 25px rgba(6,77,87,.22)!important;font-size:11px!important;font-weight:850!important;text-transform:uppercase!important;letter-spacing:.06em!important;
  }
  .mobile-menu-cta svg{width:18px!important;height:18px!important;fill:none!important;stroke:currentColor!important}

  .mobile-menu-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;margin-top:9px!important}
  .mobile-menu-actions>a{
    display:flex!important;align-items:center!important;gap:8px!important;min-height:52px!important;padding:8px 10px!important;
    border-radius:13px!important;background:#f3faf9!important;color:#073b44!important;border:1px solid rgba(7,59,68,.11)!important;
  }
  .mobile-menu-actions>a:last-child{background:#edf9f1!important;color:#08723a!important}
  .mobile-menu-actions svg{width:20px!important;height:20px!important;flex:0 0 auto!important;fill:none!important;stroke:currentColor!important}
  .mobile-menu-actions>a:last-child svg{fill:currentColor!important;stroke:none!important}
  .mobile-menu-actions span{display:grid!important;line-height:1.15!important}
  .mobile-menu-actions small{font-size:7px!important;text-transform:uppercase!important;letter-spacing:.08em!important;opacity:.65!important}
  .mobile-menu-actions strong{font-size:9px!important;white-space:nowrap!important}

  body.menu-open .floating-actions{opacity:0!important;visibility:hidden!important;pointer-events:none!important}
}

@media (max-width:390px){
  body.gs-tideglass .luxury-header .brand img{width:170px!important;height:54px!important}
  body.gs-tideglass .mobile-header-book,body.gs-tideglass .menu-toggle{width:41px!important;height:41px!important;min-width:41px!important}
  .mobile-menu-panel{width:92vw!important;max-width:330px!important;border-radius:22px 0 0 22px!important;padding-inline:12px!important}
  .mobile-menu-logo img{width:155px!important;height:52px!important}
  .mobile-menu-head>strong{font-size:22px!important}
}

@media (min-width:901px){
  .mobile-menu-panel,.mobile-menu-backdrop{display:none!important}
}
