/* FOUNTAIN+ V11.8.59 — Mobile Navigation Visibility Law */
@media(max-width:900px){
  :root{--fplus-mobile-menu-h:56px}

  /* Shared FOUNTAIN+ header: make MENU impossible to miss. */
  .site-header{
    min-height:72px!important;
    height:calc(72px + env(safe-area-inset-top,0px))!important;
    padding-top:env(safe-area-inset-top,0px)!important;
  }
  .site-header .header-actions{display:flex!important;align-items:center!important;gap:8px!important;flex:0 0 auto!important}
  .site-header .menu-btn,
  .site-header [data-menu]{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:8px!important;
    width:96px!important;
    height:56px!important;
    min-width:96px!important;
    min-height:56px!important;
    padding:0 16px!important;
    margin:0!important;
    border:2px solid rgba(255,190,74,.88)!important;
    border-radius:999px!important;
    background:rgba(5,6,8,.96)!important;
    color:#fff!important;
    box-shadow:0 12px 34px rgba(0,0,0,.35),0 0 0 1px rgba(255,255,255,.05) inset!important;
    font-size:0!important;
    line-height:1!important;
    letter-spacing:.08em!important;
    font-weight:950!important;
    -webkit-tap-highlight-color:transparent!important;
  }
  .site-header [data-menu]::before{
    content:"☰"!important;
    display:inline-block!important;
    font-size:27px!important;
    line-height:1!important;
    color:#fff!important;
  }
  .site-header [data-menu]::after{
    content:"MENU"!important;
    display:inline-block!important;
    font-size:11px!important;
    line-height:1!important;
    font-weight:950!important;
    letter-spacing:.14em!important;
    color:#fff!important;
  }
  .site-header [data-menu][aria-expanded="true"]::before{content:"×"!important;font-size:32px!important}
  .site-header [data-menu][aria-expanded="true"]::after{content:"CLOSE"!important}

  /* Main site drawer rows: more readable and thumb-friendly. */
  .site-header .nav{
    top:calc(72px + env(safe-area-inset-top,0px))!important;
  }
  .site-header .nav a,
  .site-header .nav .hire,
  .site-header .mobile-settings-link{
    min-height:58px!important;
    padding:17px 16px!important;
    font-size:14px!important;
    line-height:1.2!important;
    letter-spacing:.1em!important;
  }

  /* Universal Face Card menu launcher for pages with custom headers. */
  .fplus-mobile-menu-launcher{
    position:fixed!important;
    z-index:9997!important;
    top:calc(env(safe-area-inset-top,0px) + 9px)!important;
    right:max(12px,env(safe-area-inset-right,0px))!important;
    width:98px!important;
    min-width:98px!important;
    height:56px!important;
    min-height:56px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:8px!important;
    padding:0 15px!important;
    border:2px solid #e6b94f!important;
    border-radius:999px!important;
    background:rgba(8,8,9,.96)!important;
    color:#fff!important;
    box-shadow:0 14px 36px rgba(0,0,0,.34)!important;
    font:950 11px/1 Arial,sans-serif!important;
    letter-spacing:.14em!important;
    text-transform:uppercase!important;
    cursor:pointer!important;
    -webkit-tap-highlight-color:transparent!important;
  }
  .fplus-mobile-menu-launcher .fplus-mobile-menu-icon{font-size:27px!important;line-height:1!important;letter-spacing:0!important}
  .fplus-mobile-menu-launcher[aria-expanded="true"] .fplus-mobile-menu-icon{font-size:31px!important}

  .fplus-mobile-menu-drawer{
    position:fixed!important;
    z-index:9996!important;
    inset:0!important;
    padding:calc(86px + env(safe-area-inset-top,0px)) max(18px,env(safe-area-inset-right,0px)) calc(24px + env(safe-area-inset-bottom,0px)) max(18px,env(safe-area-inset-left,0px))!important;
    background:rgba(7,7,8,.985)!important;
    backdrop-filter:blur(20px)!important;
    -webkit-backdrop-filter:blur(20px)!important;
    overflow-y:auto!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transform:translateY(-10px)!important;
    transition:opacity .18s ease,transform .18s ease,visibility .18s ease!important;
  }
  .fplus-mobile-menu-drawer.open{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:translateY(0)!important;
  }
  .fplus-mobile-menu-drawer-inner{width:min(620px,100%)!important;margin:0 auto!important}
  .fplus-mobile-menu-kicker{margin:0 0 16px!important;color:#e7bd59!important;font:950 9px/1.3 Arial,sans-serif!important;letter-spacing:.18em!important;text-transform:uppercase!important}
  .fplus-mobile-menu-title{margin:0 0 22px!important;color:#fff!important;font:950 clamp(34px,10vw,54px)/.92 Arial,sans-serif!important;letter-spacing:-.055em!important;text-transform:uppercase!important}
  .fplus-mobile-menu-links{display:grid!important;gap:8px!important}
  .fplus-mobile-menu-links a{
    min-height:60px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:16px!important;
    padding:16px 17px!important;
    border:1px solid rgba(255,255,255,.11)!important;
    border-radius:16px!important;
    background:rgba(255,255,255,.035)!important;
    color:#fff!important;
    text-decoration:none!important;
    font:950 14px/1.15 Arial,sans-serif!important;
    letter-spacing:.08em!important;
    text-transform:uppercase!important;
  }
  .fplus-mobile-menu-links a::after{content:"→"!important;color:#e7bd59!important;font-size:20px!important;letter-spacing:0!important}
  .fplus-mobile-menu-links a:hover,.fplus-mobile-menu-links a:focus-visible{border-color:rgba(231,189,89,.62)!important;background:rgba(231,189,89,.08)!important}
  .fplus-mobile-menu-global{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;margin-top:18px!important}
  .fplus-mobile-menu-global a{
    min-height:54px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    padding:13px!important;
    border-radius:999px!important;
    border:1px solid rgba(231,189,89,.34)!important;
    color:#f5e5bd!important;
    text-decoration:none!important;
    font:950 10px/1 Arial,sans-serif!important;
    letter-spacing:.1em!important;
    text-align:center!important;
  }
  body.fplus-mobile-nav-open{overflow:hidden!important;touch-action:none!important}
}

@media(max-width:380px){
  .site-header .menu-btn,.site-header [data-menu]{width:90px!important;min-width:90px!important;padding:0 13px!important}
  .site-header [data-menu]::after{font-size:10px!important}
  .fplus-mobile-menu-launcher{width:92px!important;min-width:92px!important;padding:0 12px!important}
}

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

@media(prefers-reduced-motion:reduce){
  .fplus-mobile-menu-drawer{transition:none!important}
}

/* FOUNTAIN+ V11.8.59 — cleaner MENU wordmark + larger mobile destination bar */
@media(max-width:900px){
  /* MENU is now text-only: no hamburger lines, no close glyph. */
  .site-header .menu-btn,
  .site-header [data-menu]{
    width:92px!important;
    min-width:92px!important;
    padding:0 18px!important;
  }
  .site-header [data-menu] svg{display:none!important}
  .site-header [data-menu]::before{content:none!important;display:none!important}
  .site-header [data-menu]::after{
    content:"MENU"!important;
    display:block!important;
    font-size:13px!important;
    line-height:1!important;
    font-weight:1000!important;
    letter-spacing:.16em!important;
  }
  .site-header [data-menu][aria-expanded="true"]::before{content:none!important;display:none!important}
  .site-header [data-menu][aria-expanded="true"]::after{content:"CLOSE"!important;font-size:12px!important}

  .fplus-mobile-menu-launcher{
    width:92px!important;
    min-width:92px!important;
    gap:0!important;
    padding:0 16px!important;
    font-size:13px!important;
    letter-spacing:.16em!important;
  }
  .fplus-mobile-menu-launcher .fplus-mobile-menu-icon{display:none!important}
  .fplus-mobile-menu-launcher .fplus-mobile-menu-text{font-size:13px!important;font-weight:1000!important;line-height:1!important}

  /* Main bottom navigation is intentionally larger and easier to read/tap. */
  .mobile-bottom-nav{
    height:calc(88px + env(safe-area-inset-bottom,0px))!important;
    min-height:calc(88px + env(safe-area-inset-bottom,0px))!important;
    padding:7px 6px env(safe-area-inset-bottom,0px)!important;
    gap:2px!important;
    border-top-color:rgba(255,255,255,.16)!important;
    background:rgba(5,6,8,.985)!important;
    box-shadow:0 -12px 34px rgba(0,0,0,.38)!important;
  }
  .mobile-bottom-nav a{
    min-height:74px!important;
    padding:6px 2px 5px!important;
    gap:6px!important;
    border-radius:15px!important;
    color:#c5c2bc!important;
  }
  .mobile-bottom-nav a span{
    width:30px!important;
    height:30px!important;
    flex:0 0 30px!important;
  }
  .mobile-bottom-nav a span svg{width:30px!important;height:30px!important;display:block!important}
  .mobile-bottom-nav a b{
    font-size:11.5px!important;
    line-height:1!important;
    font-weight:900!important;
    letter-spacing:.01em!important;
    overflow:visible!important;
    text-overflow:clip!important;
  }
  .mobile-bottom-nav a.active{
    color:var(--ui-gold,#ffb84f)!important;
    background:rgba(255,184,79,.12)!important;
  }
  .site-header .nav{bottom:calc(88px + env(safe-area-inset-bottom,0px))!important}
  .ui-nav-backdrop{bottom:calc(88px + env(safe-area-inset-bottom,0px))!important}
  .footer{padding-bottom:calc(106px + env(safe-area-inset-bottom,0px))!important}
}
@media(max-width:380px){
  .site-header .menu-btn,.site-header [data-menu],.fplus-mobile-menu-launcher{width:88px!important;min-width:88px!important;padding-inline:14px!important}
  .mobile-bottom-nav a b{font-size:10.5px!important}
  .mobile-bottom-nav a span,.mobile-bottom-nav a span svg{width:28px!important;height:28px!important}
}



/* FOUNTAIN+ V11.8.60 — Unified Navigation System: mobile + desktop */
/* The optimized mobile navigation language now becomes the desktop language too. */

@media(max-width:900px){
  :root{--fplus-mobile-menu-h:58px}

  .site-header .menu-btn,
  .site-header [data-menu],
  .fplus-mobile-menu-launcher{
    width:104px!important;
    min-width:104px!important;
    height:58px!important;
    min-height:58px!important;
    padding:0 18px!important;
  }
  .site-header [data-menu]::before,
  .fplus-mobile-menu-launcher .fplus-mobile-menu-icon{display:none!important;content:none!important}
  .site-header [data-menu]::after,
  .fplus-mobile-menu-launcher .fplus-mobile-menu-text{
    font-size:14px!important;
    font-weight:1000!important;
    letter-spacing:.17em!important;
  }

  /* Bigger destination bar: designed to be read at a glance, not hunted for. */
  .mobile-bottom-nav{
    height:calc(98px + env(safe-area-inset-bottom,0px))!important;
    min-height:calc(98px + env(safe-area-inset-bottom,0px))!important;
    padding:8px 7px env(safe-area-inset-bottom,0px)!important;
    gap:3px!important;
  }
  .mobile-bottom-nav a{
    min-height:82px!important;
    padding:7px 2px 6px!important;
    gap:7px!important;
    border-radius:17px!important;
    color:#d0cdc7!important;
  }
  .mobile-bottom-nav a span,
  .mobile-bottom-nav a span svg{
    width:35px!important;
    height:35px!important;
    flex:0 0 35px!important;
  }
  .mobile-bottom-nav a b{
    font-size:13.5px!important;
    line-height:1!important;
    font-weight:950!important;
    letter-spacing:.005em!important;
  }
  .mobile-bottom-nav a.active{
    color:var(--ui-gold,#ffb84f)!important;
    background:rgba(255,184,79,.14)!important;
    box-shadow:inset 0 0 0 1px rgba(255,184,79,.08)!important;
  }
  .site-header .nav{bottom:calc(98px + env(safe-area-inset-bottom,0px))!important}
  .ui-nav-backdrop{bottom:calc(98px + env(safe-area-inset-bottom,0px))!important}
  .footer{padding-bottom:calc(118px + env(safe-area-inset-bottom,0px))!important}
  body{padding-bottom:calc(98px + env(safe-area-inset-bottom,0px))!important}
}

@media(max-width:380px){
  .site-header .menu-btn,.site-header [data-menu],.fplus-mobile-menu-launcher{width:96px!important;min-width:96px!important;padding-inline:14px!important}
  .mobile-bottom-nav a span,.mobile-bottom-nav a span svg{width:32px!important;height:32px!important}
  .mobile-bottom-nav a b{font-size:12px!important}
}

/* DESKTOP COHESION — same MENU language, same five destination anchors. */
@media(min-width:901px){
  :root{--fplus-desktop-dock-h:82px}

  body{padding-bottom:112px!important}
  .footer{padding-bottom:118px!important}

  /* Shared FOUNTAIN+ header becomes simple: brand/current destination + one obvious MENU. */
  .site-header{
    min-height:78px!important;
    height:78px!important;
    grid-template-columns:auto minmax(0,1fr) auto!important;
    padding:0 clamp(24px,3.2vw,56px)!important;
    gap:18px!important;
    background:rgba(4,5,7,.94)!important;
    border-bottom:1px solid rgba(255,255,255,.1)!important;
    box-shadow:0 12px 38px rgba(0,0,0,.22)!important;
  }
  .site-header .brand{font-size:clamp(22px,1.7vw,27px)!important}
  .site-header .current-destination{
    display:block!important;
    justify-self:start!important;
    color:#9e9a93!important;
    font-size:11px!important;
    font-weight:900!important;
    letter-spacing:.15em!important;
  }
  .site-header .header-actions{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:10px!important}
  .site-header [data-settings-open]{display:none!important}
  .site-header .menu-btn,
  .site-header [data-menu]{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:116px!important;
    min-width:116px!important;
    height:54px!important;
    min-height:54px!important;
    padding:0 22px!important;
    border:2px solid rgba(255,184,79,.82)!important;
    border-radius:999px!important;
    background:rgba(7,8,10,.96)!important;
    color:#fff!important;
    box-shadow:0 14px 40px rgba(0,0,0,.28)!important;
    font-size:0!important;
    cursor:pointer!important;
  }
  .site-header [data-menu] svg{display:none!important}
  .site-header [data-menu]::before{display:none!important;content:none!important}
  .site-header [data-menu]::after{
    content:"MENU"!important;
    display:block!important;
    color:#fff!important;
    font:1000 13px/1 Arial,sans-serif!important;
    letter-spacing:.18em!important;
  }
  .site-header [data-menu][aria-expanded="true"]::after{content:"CLOSE"!important}
  .site-header [data-menu]:hover,
  .site-header [data-menu]:focus-visible{background:#111216!important;border-color:#ffc45f!important}

  /* Desktop menu is a large readable drawer rather than a tiny row of links. */
  .site-header .nav{
    position:fixed!important;
    z-index:570!important;
    top:94px!important;
    right:clamp(20px,3vw,48px)!important;
    bottom:104px!important;
    left:auto!important;
    width:min(440px,calc(100vw - 40px))!important;
    max-width:none!important;
    max-height:none!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    justify-content:flex-start!important;
    gap:8px!important;
    padding:18px!important;
    overflow-y:auto!important;
    white-space:normal!important;
    border:1px solid rgba(255,255,255,.13)!important;
    border-radius:24px!important;
    background:linear-gradient(145deg,rgba(10,11,14,.99),rgba(4,5,7,.99))!important;
    box-shadow:0 34px 110px rgba(0,0,0,.7)!important;
    backdrop-filter:blur(24px)!important;
    -webkit-backdrop-filter:blur(24px)!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transform:translateY(-10px) scale(.985)!important;
    transform-origin:top right!important;
    transition:opacity .2s ease,transform .2s ease,visibility .2s!important;
  }
  .site-header .nav.open{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:translateY(0) scale(1)!important;
  }
  .site-header .nav-link,
  .site-header .nav>a,
  .site-header .nav .nav-more-toggle,
  .site-header .nav .nav-cta,
  .site-header .nav .hire{
    width:100%!important;
    min-height:62px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:13px!important;
    padding:0 18px!important;
    border:1px solid rgba(255,255,255,.08)!important;
    border-radius:16px!important;
    background:rgba(255,255,255,.025)!important;
    color:#f2efe9!important;
    font-size:14px!important;
    font-weight:900!important;
    letter-spacing:.04em!important;
  }
  .site-header .nav-link-icon{display:block!important;width:24px!important;height:24px!important;flex:none!important}
  .site-header .nav-link:hover,
  .site-header .nav-link.active,
  .site-header .nav>a:hover,
  .site-header .nav>a.active{
    color:#ffbd58!important;
    border-color:rgba(255,184,79,.28)!important;
    background:rgba(255,184,79,.09)!important;
  }

  /* The mobile five-destination bar becomes a centered desktop destination dock. */
  .mobile-bottom-nav{
    position:fixed!important;
    z-index:540!important;
    left:50%!important;
    right:auto!important;
    bottom:18px!important;
    transform:translateX(-50%)!important;
    width:min(760px,calc(100vw - 44px))!important;
    height:82px!important;
    min-height:82px!important;
    display:grid!important;
    grid-template-columns:repeat(5,1fr)!important;
    gap:5px!important;
    padding:7px!important;
    border:1px solid rgba(255,255,255,.14)!important;
    border-radius:24px!important;
    background:rgba(7,8,10,.96)!important;
    box-shadow:0 20px 64px rgba(0,0,0,.46)!important;
    backdrop-filter:blur(22px)!important;
    -webkit-backdrop-filter:blur(22px)!important;
  }
  .mobile-bottom-nav a{
    min-width:0!important;
    min-height:66px!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:5px!important;
    padding:6px!important;
    border-radius:16px!important;
    color:#c8c4bd!important;
    text-decoration:none!important;
  }
  .mobile-bottom-nav a span,
  .mobile-bottom-nav a span svg{width:29px!important;height:29px!important;flex:0 0 29px!important}
  .mobile-bottom-nav a b{
    color:inherit!important;
    font:900 12.5px/1 Arial,sans-serif!important;
    letter-spacing:.01em!important;
    white-space:nowrap!important;
  }
  .mobile-bottom-nav a:hover{color:#fff!important;background:rgba(255,255,255,.055)!important}
  .mobile-bottom-nav a.active{
    color:var(--ui-gold,#ffb84f)!important;
    background:rgba(255,184,79,.12)!important;
    box-shadow:inset 0 0 0 1px rgba(255,184,79,.08)!important;
  }

  /* Custom Face Cards use the same text-only MENU and a desktop drawer. */
  .fplus-mobile-menu-launcher{
    position:fixed!important;
    z-index:9998!important;
    top:16px!important;
    right:clamp(18px,2.4vw,38px)!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:116px!important;
    min-width:116px!important;
    height:54px!important;
    min-height:54px!important;
    padding:0 20px!important;
    border:2px solid #e6b94f!important;
    border-radius:999px!important;
    background:rgba(8,8,9,.97)!important;
    color:#fff!important;
    box-shadow:0 14px 38px rgba(0,0,0,.3)!important;
    font:1000 13px/1 Arial,sans-serif!important;
    letter-spacing:.18em!important;
    text-transform:uppercase!important;
    cursor:pointer!important;
  }
  .fplus-mobile-menu-launcher .fplus-mobile-menu-icon{display:none!important}
  .fplus-mobile-menu-launcher .fplus-mobile-menu-text{font:1000 13px/1 Arial,sans-serif!important;letter-spacing:.18em!important}

  .fplus-mobile-menu-drawer{
    position:fixed!important;
    z-index:9997!important;
    inset:0!important;
    display:block!important;
    padding:0!important;
    background:rgba(0,0,0,.56)!important;
    backdrop-filter:blur(5px)!important;
    -webkit-backdrop-filter:blur(5px)!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transform:none!important;
    transition:opacity .18s ease,visibility .18s ease!important;
  }
  .fplus-mobile-menu-drawer.open{opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:none!important}
  .fplus-mobile-menu-drawer-inner{
    width:min(460px,calc(100vw - 36px))!important;
    height:100%!important;
    margin:0 0 0 auto!important;
    padding:96px 26px 36px!important;
    overflow-y:auto!important;
    background:linear-gradient(145deg,#0b0c0f,#050607)!important;
    border-left:1px solid rgba(255,255,255,.12)!important;
    box-shadow:-26px 0 80px rgba(0,0,0,.55)!important;
  }
  .fplus-mobile-menu-kicker{font-size:10px!important;margin-bottom:14px!important}
  .fplus-mobile-menu-title{font-size:42px!important;margin-bottom:24px!important}
  .fplus-mobile-menu-links{gap:9px!important}
  .fplus-mobile-menu-links a{min-height:62px!important;font-size:13px!important;padding:16px 18px!important}
  .fplus-mobile-menu-global{margin-top:20px!important}
  body.fplus-mobile-nav-open{overflow:hidden!important}
}
