/* Readable primary navigation with separate guide and community disclosures. */
html { scroll-padding-top: 0; }
.se-public main[id], .se-public main [id] { scroll-margin-top: calc(var(--se-mobile-header-height, 100px) + 20px); }
.se-public .topbar { height: auto !important; min-height: 0; background: #111216f5; border-bottom: 1px solid #d7bd8538; }
.se-public .topbar-inner { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; min-height: 0; padding: 18px 0 12px; gap: 16px 28px; position: relative; }
.se-public .brand { grid-column: 1; grid-row: 1; width: fit-content; max-width: 100%; min-width: 0; gap: 12px; }
.se-public .brand-text { min-width: 0; }
.se-public .brand-text strong { font-size: 22px; line-height: 1.3; letter-spacing: .08em; }
.se-public .brand-text small { margin-top: 4px; font-size: 14px; line-height: 1.5; letter-spacing: .02em; text-transform: none; color: #c4b89f; }
.se-public .nav { display: flex; grid-column: 1 / -1; grid-row: 2; align-items: center; justify-content: flex-start; flex: none; flex-wrap: wrap; width: 100%; min-width: 0; max-width: none; padding: 12px 0 0; margin: 0; gap: 4px; border: 0; border-top: 1px solid #d7bd8529; position: static; }
.se-public .nav a.se-nav-link, .se-public .se-nav-group-toggle { display: inline-flex; align-items: center; justify-content: center; min-height: 46px; padding: 10px 14px; font-family: inherit; font-size: 16px; font-weight: 600; line-height: 1.5; letter-spacing: 0; white-space: nowrap; text-decoration: none; border: 1px solid transparent; border-radius: 5px; background: none; color: #e0d9cc; cursor: pointer; }
.se-public .nav a.se-nav-link.active { color: #f5d49a; background: #d7bd8512; border-color: #d7bd8538; }
.se-public .nav a.active::after { display: none; }
.se-public .se-nav-group { min-width: 0; position: relative; }
.se-public .se-nav-group-toggle { gap: 8px; border-color: #d7bd8542; background: #d7bd8508; }
.se-public .se-nav-group-toggle.active { color: #f5d49a; border-color: #d7bd8566; }
.se-public .se-nav-group-toggle svg { width: 20px; height: 20px; flex: 0 0 20px; transition: transform .18s ease; }
.se-public .se-nav-group-toggle[aria-expanded="true"] { color: #ffe4b5; background: #d7bd8524; border-color: #d7bd85; }
.se-public .se-nav-group-toggle[aria-expanded="true"] svg { transform: rotate(180deg); }
.se-public .se-nav-group-toggle:hover, .se-public .nav a.se-nav-link:hover { color: #fff1d6; background: #d4ae6714; }
.se-public .nav :is(a, button):focus-visible, .se-public .se-menu-toggle:focus-visible { outline: 2px solid #f1d29a; outline-offset: 3px; }
.se-public .se-nav-submenu[hidden] { display: none !important; }
.se-public .se-nav-submenu { display: grid; gap: 4px; position: absolute; top: calc(100% + 10px); left: 0; width: 340px; max-width: calc(100vw - 48px); max-height: calc(100dvh - var(--se-mobile-header-height, 170px) - 24px); overflow-y: auto; overscroll-behavior: contain; padding: 10px; background: linear-gradient(135deg, #222127, #17191f 70%); border: 1px solid #d7bd8547; border-radius: 8px; box-shadow: 0 20px 45px #0009; z-index: 210; }
.se-public .se-nav-group:last-child .se-nav-submenu, .se-public .se-nav-submenu[id="seNavPanel-community"] { left: auto; right: 0; }
.se-public .nav a.se-nav-sub-link { display: flex; justify-content: space-between; align-items: center; min-height: 82px; gap: 14px; padding: 13px 12px; color: #eee9df; border: 1px solid transparent; border-radius: 5px; font-size: 16px; line-height: 1.5; white-space: normal; letter-spacing: 0; text-align: left; text-decoration: none; }
.se-public .se-nav-sub-link > span:first-child { min-width: 0; }
.se-public .se-nav-sub-link strong { display: block; color: inherit; font-size: 16px; font-weight: 700; line-height: 1.5; }
.se-public .se-nav-sub-link small { display: block; color: #b8bcc6; font-size: 14px; line-height: 1.55; margin-top: 4px; }
.se-public .se-nav-sub-link > span:last-child { flex-shrink: 0; color: #d5bd92; }
.se-public .nav a.se-nav-sub-link:hover, .se-public .nav a.se-nav-sub-link:focus-visible { color: #fff4df; background: #d7bd8512; border-color: #d7bd8540; }
.se-public .nav a.se-nav-sub-link.active { background: #d7bd8517; border-color: #d7bd8550; color: #ffe4b5; }
.se-public .se-menu-toggle { display: none; }
.se-public .nav-right { display: flex; grid-column: 2; grid-row: 1; align-items: center; justify-content: flex-end; flex-wrap: wrap; min-width: 0; margin: 0; gap: 12px !important; }
.se-public .nav-login, .se-public .nav-cta, .se-public .nav-user-btn, .se-public .nav-right > .btn { display: inline-flex; align-items: center; justify-content: center; min-height: 46px; padding: 10px 17px; font-size: 16px; line-height: 1.5; font-weight: 700; letter-spacing: 0; white-space: normal; text-align: center; }
.se-public .nav-login { color: #e4dbc9; border: 1px solid #d7bd8542; border-radius: 5px; background: #d7bd8508; }
.se-public .nav-login:hover { background: #d7bd8517; color: #fff5e3; }
.se-public .nav-cta { border-radius: 5px; }
.se-public .nav-user { min-width: 0; position: relative; }
.se-public .nav-user-btn { max-width: 100%; overflow-wrap: anywhere; }
.se-public .nav-user-menu { min-width: 240px; max-width: calc(100vw - 36px); }
.se-public .nav-user-item { min-height: 46px; padding: 12px 16px; font-size: 16px; line-height: 1.5; }
.se-public .srv-switch { min-width: 250px; }
.se-public .srv-pill { min-height: 44px; padding: 10px 12px; font-size: 14px; line-height: 1.4; letter-spacing: .02em; }
@media (max-width: 1050px) and (min-width: 901px) {
  .se-public .topbar-inner { gap: 16px 20px; }
  .se-public .nav a.se-nav-link, .se-public .se-nav-group-toggle { padding: 10px 12px; }
}
@media (max-width: 900px) {
  .se-public .topbar-inner { grid-template-columns: minmax(0, 1fr) auto; padding: 15px 0; gap: 14px 16px; }
  .se-public .se-menu-toggle { display: inline-flex; grid-column: 2; grid-row: 1; align-items: center; justify-content: center; gap: 8px; width: auto; min-height: 46px; padding: 10px 12px; margin: 0; border: 1px solid #d7bd8559; border-radius: 5px; background: #d7bd850d; color: #e0d9cc; font: 600 16px/1.5 Manrope, Arial, sans-serif; letter-spacing: 0; }
  .se-public .se-menu-toggle > span { display: inline; height: auto; margin: 0; background: none; }
  .se-public .se-menu-toggle svg { width: 20px; height: 20px; flex: 0 0 20px; }
  .se-public .se-menu-toggle[aria-expanded="true"] { color: #ffe4b5; border-color: #d7bd85; background: #d7bd8524; }
  .se-public .nav-right { grid-column: 1 / -1; grid-row: 2; width: 100%; justify-content: flex-start; gap: 10px !important; }
  .se-public .nav { display: none; grid-column: auto; grid-row: auto; position: absolute; top: calc(100% + 1px); left: 0; right: 0; width: 100%; max-width: none; max-height: calc(100vh - var(--se-mobile-header-height, 170px) - 16px); max-height: calc(100dvh - var(--se-mobile-header-height, 170px) - 16px); overflow-y: auto; overscroll-behavior: contain; align-items: stretch; justify-content: stretch; padding: 12px; gap: 6px; margin: 0; border: 1px solid #d7bd8547; border-radius: 0 0 8px 8px; background: #17191ffb; box-shadow: 0 20px 45px #0009; z-index: 210; }
  .se-public .nav.is-open { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .se-public .nav a.se-nav-link { justify-content: flex-start; width: 100%; padding: 12px; white-space: normal; }
  .se-public .se-nav-group { grid-column: 1 / -1; width: 100%; }
  .se-public .se-nav-group-toggle { justify-content: space-between; width: 100%; padding: 12px; text-align: left; }
  .se-public .se-nav-submenu, .se-public .se-nav-group:last-child .se-nav-submenu { position: static; width: 100%; max-width: none; max-height: none; overflow: visible; margin-top: 6px; padding: 6px; background: #111216; border-color: #d7bd8529; border-radius: 5px; box-shadow: none; }
  .se-public .nav a.se-nav-sub-link { min-height: 80px; }
}
@media (max-width: 650px) {
  .se-public .topbar-inner { padding: 14px 0; gap: 13px 12px; }
  .se-public .brand { gap: 10px; }
  .se-public .brand-text strong { font-size: 18px; letter-spacing: .06em; }
  .se-public .brand-text small { font-size: 14px; line-height: 1.45; }
  .se-public .brand-logo { max-width: 100%; max-height: 60px; }
  .se-public .nav-right .nav-login, .se-public .nav-right .nav-cta { display: inline-flex; flex: 1 1 auto; padding: 10px 12px; }
  .se-public .nav-user { flex: 1 1 100%; }
  .se-public .nav-user-btn { width: 100%; }
  .se-public .srv-switch { flex: 1 1 250px; min-width: min(250px, 100%); max-width: 360px; }
}
@media (max-width: 380px) {
  .se-public .nav.is-open { grid-template-columns: minmax(0, 1fr) !important; }
  .se-public .se-menu-toggle { gap: 6px; padding: 10px; }
}
@media (prefers-reduced-motion: reduce) { .se-public .se-nav-group-toggle svg { transition: none; } }
