/* RENGANURA_TOP_OPEN_MOBILE_HAMBURGER_V94 */

/* Desktop: no visual change except the hamburger button remains hidden. */
.renganura-mobile-menu-toggle-v94{
  display:none;
}

/* Mobile hamburger behavior only. */
@media(max-width:900px){
  header,
  .topbar,
  header.topbar,
  .navbar{
    flex-wrap:wrap !important;
  }

  .renganura-mobile-menu-toggle-v94{
    display:inline-flex !important;
    align-items:center;
    justify-content:center;
    gap:8px;
    min-height:42px;
    padding:10px 14px;
    border-radius:999px;
    border:1px solid rgba(255,255,255,.38);
    background:rgba(255,255,255,.12);
    color:#ffffff;
    font-family:Calibri,"Segoe UI",Arial,sans-serif;
    font-size:15px;
    font-weight:900;
    cursor:pointer;
    margin-left:auto;
  }

  .renganura-mobile-menu-toggle-v94::before{
    content:"☰";
    font-size:22px;
    line-height:1;
  }

  .renganura-mobile-menu-toggle-v94[aria-expanded="true"]::before{
    content:"✕";
    font-size:20px;
  }

  .renganura-mobile-menu-nav-v94{
    width:100% !important;
    flex-basis:100% !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:stretch !important;
    gap:8px !important;
    max-height:0 !important;
    overflow:hidden !important;
    opacity:0 !important;
    pointer-events:none !important;
    transition:max-height .22s ease, opacity .18s ease, padding .18s ease !important;
    padding:0 !important;
    margin-top:0 !important;
  }

  .renganura-mobile-menu-nav-v94.is-open-v94{
    max-height:70vh !important;
    overflow:auto !important;
    opacity:1 !important;
    pointer-events:auto !important;
    padding:10px 0 4px 0 !important;
    margin-top:8px !important;
  }

  .renganura-mobile-menu-nav-v94 a,
  .renganura-mobile-menu-nav-v94 button{
    width:100% !important;
    justify-content:flex-start !important;
    text-align:left !important;
    border-radius:14px !important;
  }
}


/* RENGANURA_LIVE_AUTHORITY_REPAIR_V11 */
.rg-about-title-v11,
.renganura-about-title,
.renganura-about-title-v7 {
  font-size: clamp(1.55rem, 0.9vw + 1.15rem, 2.05rem) !important;
  line-height: 1.22 !important;
  font-weight: 850 !important;
  margin-bottom: 1rem !important;
}

.rg-about-subtitle-v11,
.renganura-about-subtitle,
.renganura-about-subtitle-v7 {
  display: block !important;
  font-size: clamp(1.22rem, 0.6vw + 1rem, 1.55rem) !important;
  line-height: 1.28 !important;
  font-weight: 900 !important;
  margin-top: 0 !important;
  margin-bottom: 0.55rem !important;
}

.rg-about-copy-v11,
.renganura-about-copy,
.renganura-about-copy-v7 {
  font-size: clamp(1.04rem, 0.4vw + 0.96rem, 1.2rem) !important;
  line-height: 1.72 !important;
  font-weight: 500 !important;
  max-width: 76ch !important;
}
/* END_RENGANURA_LIVE_AUTHORITY_REPAIR_V11 */


/* RENGANURA_NAVBAR_LANGUAGE_FRAME_FIX_V13
   Purpose: keep the language selector inside the navbar/page frame and prevent horizontal overflow.
*/

html,
body {
  max-width: 100% !important;
  overflow-x: hidden !important;
}

*,
*::before,
*::after {
  box-sizing: border-box !important;
}

/* Primary navbar containment */
header,
nav,
.rg-header,
.rg-navbar,
.rg-public-navbar,
.renganura-navbar,
.public-navbar,
.navbar,
.navbar-shell,
.navbar-wrap,
.navbar-inner,
.navbar-menu,
.navbar-links,
.rg-nav,
.rg-nav-menu,
.rg-nav-links,
.public-nav,
.public-nav-inner,
.public-nav-links {
  max-width: 100vw !important;
  box-sizing: border-box !important;
}

/* Keep navbar content within the available width */
header nav,
.rg-navbar nav,
.rg-public-navbar nav,
.renganura-navbar nav,
.public-navbar nav,
.navbar nav,
nav.rg-nav,
nav.public-nav,
.navbar-menu,
.navbar-links,
.rg-nav-menu,
.rg-nav-links,
.public-nav-links {
  display: flex !important;
  align-items: center !important;
  flex-wrap: nowrap !important;
  min-width: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  gap: clamp(0.35rem, 0.55vw, 0.85rem) !important;
  overflow: visible !important;
}

/* Prevent individual menu labels from forcing page overflow */
header nav a,
header nav button,
.rg-navbar a,
.rg-navbar button,
.rg-public-navbar a,
.rg-public-navbar button,
.renganura-navbar a,
.renganura-navbar button,
.public-navbar a,
.public-navbar button,
.navbar a,
.navbar button,
nav a,
nav button {
  min-width: 0 !important;
  white-space: nowrap !important;
  flex: 0 1 auto !important;
}

/* Login button must remain inside the navbar, not push language outside */
a.rg-login,
button.rg-login,
.rg-login,
[href="/login/"],
[href*="/login"] {
  flex: 0 0 auto !important;
  margin-left: clamp(0.3rem, 0.6vw, 0.8rem) !important;
}

/* Language selector containment */
header [class*="lang" i],
header [id*="lang" i],
nav [class*="lang" i],
nav [id*="lang" i],
.rg-navbar [class*="lang" i],
.rg-navbar [id*="lang" i],
.rg-public-navbar [class*="lang" i],
.rg-public-navbar [id*="lang" i],
.renganura-navbar [class*="lang" i],
.renganura-navbar [id*="lang" i],
.public-navbar [class*="lang" i],
.public-navbar [id*="lang" i],
.navbar [class*="lang" i],
.navbar [id*="lang" i],
select[class*="lang" i],
select[id*="lang" i],
button[class*="lang" i],
button[id*="lang" i] {
  position: static !important;
  inset: auto !important;
  top: auto !important;
  right: auto !important;
  bottom: auto !important;
  left: auto !important;
  transform: none !important;
  float: none !important;
  flex: 0 0 auto !important;
  max-width: clamp(6.5rem, 9vw, 9rem) !important;
  min-width: 0 !important;
  margin-left: clamp(0.25rem, 0.45vw, 0.65rem) !important;
  margin-right: 0 !important;
  z-index: 5 !important;
}

/* If the language control is a pill/dropdown */
header [class*="language" i],
header [class*="locale" i],
nav [class*="language" i],
nav [class*="locale" i],
.rg-language,
.rg-lang,
.rg-locale,
.language-selector,
.lang-selector,
.locale-selector,
.language-switcher,
.lang-switcher,
.locale-switcher {
  position: static !important;
  inset: auto !important;
  transform: none !important;
  flex: 0 0 auto !important;
  max-width: clamp(6.5rem, 9vw, 9rem) !important;
  min-width: 0 !important;
  white-space: nowrap !important;
}

/* Select/dropdown visual control */
select,
button[class*="language" i],
button[class*="lang" i],
button[class*="locale" i],
[class*="language" i] button,
[class*="lang" i] button,
[class*="locale" i] button {
  max-width: clamp(6.5rem, 9vw, 9rem) !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

/* Reduce navbar pressure before it overflows */
@media (max-width: 1500px) {
  header nav,
  .rg-navbar nav,
  .rg-public-navbar nav,
  .renganura-navbar nav,
  .public-navbar nav,
  .navbar nav,
  nav.rg-nav,
  nav.public-nav,
  .navbar-menu,
  .navbar-links,
  .rg-nav-menu,
  .rg-nav-links,
  .public-nav-links {
    gap: clamp(0.25rem, 0.45vw, 0.65rem) !important;
  }

  header nav a,
  header nav button,
  .rg-navbar a,
  .rg-navbar button,
  .rg-public-navbar a,
  .rg-public-navbar button,
  .renganura-navbar a,
  .renganura-navbar button,
  .public-navbar a,
  .public-navbar button,
  .navbar a,
  .navbar button,
  nav a,
  nav button {
    font-size: clamp(0.82rem, 0.72vw, 0.95rem) !important;
    padding-left: clamp(0.35rem, 0.45vw, 0.65rem) !important;
    padding-right: clamp(0.35rem, 0.45vw, 0.65rem) !important;
  }
}

/* On smaller desktop/tablet widths, allow a controlled second line instead of pushing outside frame */
@media (max-width: 1180px) {
  header nav,
  .rg-navbar nav,
  .rg-public-navbar nav,
  .renganura-navbar nav,
  .public-navbar nav,
  .navbar nav,
  nav.rg-nav,
  nav.public-nav,
  .navbar-menu,
  .navbar-links,
  .rg-nav-menu,
  .rg-nav-links,
  .public-nav-links {
    flex-wrap: wrap !important;
    row-gap: 0.55rem !important;
  }

  header [class*="lang" i],
  header [id*="lang" i],
  nav [class*="lang" i],
  nav [id*="lang" i],
  .rg-language,
  .rg-lang,
  .language-selector,
  .lang-selector,
  .locale-selector {
    margin-left: auto !important;
  }
}

/* Final guard against any right-side pill escaping the viewport */
body > [class*="language" i],
body > [class*="lang" i],
body > [class*="locale" i],
body > select,
body > button[class*="lang" i],
body > button[class*="language" i] {
  right: clamp(0.5rem, 1vw, 1rem) !important;
  max-width: clamp(6.5rem, 9vw, 9rem) !important;
}

/* END_RENGANURA_NAVBAR_LANGUAGE_FRAME_FIX_V13 */
