.connected-footer{display:grid;grid-template-columns:1.3fr 1fr 1.2fr .8fr;gap:35px;align-items:start}.connected-footer .official-brand{width:235px;max-width:100%}.connected-footer p{font-size:15px;margin:20px 0 12px;max-width:290px}.connected-footer>div>a:last-child{font-size:14px;overflow-wrap:anywhere}.connected-footer nav{display:flex;flex-direction:column;align-items:flex-start;gap:12px}.connected-footer h2{font-size:16px;letter-spacing:0;line-height:1.4;margin:0 0 7px}.connected-footer nav a{font-size:14px;line-height:1.5}.connected-footer a:hover{text-decoration:underline;text-underline-offset:4px}.membership-menu{position:relative}.membership-menu summary{cursor:pointer;min-height:44px;display:flex;align-items:center;gap:8px;list-style:none}.membership-menu summary:after{content:'⌄'}.membership-menu summary::-webkit-details-marker{display:none}.membership-menu>div{position:absolute;top:100%;right:0;z-index:30;background:var(--paper);color:var(--ink);border:1px solid var(--line);padding:10px;min-width:265px;box-shadow:0 10px 25px #0002}.membership-menu>div>a{display:block;padding:12px;font-size:14px;white-space:normal;line-height:1.4}.membership-menu>div>a:hover{background:var(--muted)}.membership-menu summary:focus-visible{outline:3px solid #b47717;outline-offset:3px}.header nav>[aria-current=page],.membership-menu.current>summary{text-decoration:underline;text-decoration-color:var(--yellow);text-decoration-thickness:2px;text-underline-offset:6px}@media(max-width:1000px){.connected-footer{grid-template-columns:repeat(2,minmax(0,1fr));gap:35px}}@media(max-width:680px){.connected-footer{grid-template-columns:1fr;gap:30px}.membership-menu>div{right:auto;left:0;min-width:240px;max-width:calc(100vw - 40px)}.header nav{align-items:center}}

.residents-menu{position:relative}.residents-menu summary{cursor:pointer;min-height:44px;display:flex;align-items:center;gap:8px;list-style:none}.residents-menu summary:after{content:'⌄'}.residents-menu summary::-webkit-details-marker{display:none}.residents-menu>div{position:absolute;top:100%;right:0;z-index:30;background:var(--paper);color:var(--ink);border:1px solid var(--line);padding:10px;min-width:250px;box-shadow:0 10px 25px #0002}.residents-menu>div>a{display:block;padding:12px;font-size:14px;white-space:normal;line-height:1.4}.residents-menu>div>a:hover{background:var(--muted)}.residents-menu summary:focus-visible{outline:3px solid #b47717;outline-offset:3px}.residents-menu.current>summary{text-decoration:underline;text-decoration-color:var(--yellow);text-decoration-thickness:2px;text-underline-offset:6px}@media(max-width:680px){.residents-menu>div{right:auto;left:0;min-width:240px;max-width:calc(100vw - 40px)}}

/* Production-readiness fixes: contain legacy layouts and keep navigation usable. */
html,body{max-width:100%;overflow-x:clip}
.theme[hidden],.theme{display:none!important}
.team-grid,.team-card{min-width:0}
@media(min-width:681px) and (max-width:1000px){.header{flex-wrap:wrap}.header nav{order:3;width:100%;justify-content:center;margin-left:0}}
@media(max-width:680px){
  h1{font-size:clamp(40px,13vw,52px)!important;overflow-wrap:break-word;hyphens:none}
  .subhero h1,.history-hero h1{font-size:clamp(40px,13vw,50px)!important}
  .events-intro h1{font-size:clamp(36px,10.5vw,46px)!important;overflow-wrap:normal;word-break:normal;hyphens:none}
  h1,h2,h3,h4,h5,h6{overflow-wrap:normal!important;word-break:normal!important;hyphens:none!important}
  .header nav>details{min-width:0}
  .membership-menu>div,.residents-menu>div{text-align:left;white-space:normal}
  .membership-menu>div{right:0;left:auto}
}

/* Compact phone header. The full navigation opens only from the Menu button. */
.mobile-nav-toggle{display:none}
@media(max-width:680px){
  .header{display:grid!important;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px 16px;padding-block:14px!important}
  .header .official-brand{width:min(210px,70vw);max-width:100%}
  .mobile-nav-toggle{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-width:86px;min-height:46px;border:1px solid var(--ink);background:transparent;color:var(--ink);padding:10px 13px;font-size:13px;font-weight:750;cursor:pointer}
  .mobile-nav-icon,.mobile-nav-icon::before,.mobile-nav-icon::after{display:block;width:18px;height:2px;background:currentColor;content:'';transition:transform .18s ease}
  .mobile-nav-icon{position:relative}
  .mobile-nav-icon::before{position:absolute;left:0;top:-6px}
  .mobile-nav-icon::after{position:absolute;left:0;top:6px}
  .mobile-nav-toggle[aria-expanded=true] .mobile-nav-icon{background:transparent}
  .mobile-nav-toggle[aria-expanded=true] .mobile-nav-icon::before{top:0;transform:rotate(45deg)}
  .mobile-nav-toggle[aria-expanded=true] .mobile-nav-icon::after{top:0;transform:rotate(-45deg)}
  .header>nav{display:none!important;grid-column:1/-1;width:100%;margin:0!important;padding:8px 0 4px!important;border-top:1px solid var(--line);grid-template-columns:1fr!important;gap:0!important;align-items:stretch!important}
  .header.mobile-nav-open>nav{display:grid!important}
  .header>nav>a,.header>nav>details{width:100%;min-height:48px;padding:4px 2px;text-align:left!important;white-space:normal!important;border-bottom:1px solid var(--line);display:flex;align-items:center}
  .header>nav>details{display:block}
  .header>nav>details>summary{min-height:48px;justify-content:space-between}
  .header>nav .membership-menu>div,.header>nav .residents-menu>div{position:static;min-width:0;max-width:none;width:100%;padding:4px 0 8px;border:0;border-top:1px solid var(--line);box-shadow:none;background:var(--muted)}
  .header>nav .membership-menu>div>a,.header>nav .residents-menu>div>a{padding:12px 14px}
  .header>nav .home-site-search{width:100%;margin:12px 0 4px!important;grid-column:auto!important}
}
