.public-community{position:relative;align-self:center;color:#193e35;font:600 12px Arial,sans-serif;white-space:nowrap}
.public-community summary{cursor:pointer;padding:12px 8px;border-radius:4px;list-style:revert}
.public-community summary:focus-visible,.public-community a:focus-visible{outline:3px solid #9b8244;outline-offset:3px}
.public-community>div{position:absolute;top:44px;right:0;background:#fffef8;border:1px solid #dce0d3;box-shadow:0 14px 30px #193e3517;padding:10px;min-width:190px;z-index:20}
.desktop-nav .public-community a{display:block;padding:13px 12px;text-align:left}
.desktop-nav .public-community a:hover{background:#edf1e5}
.header-inner .desktop-search{flex:1;width:auto;max-width:none;min-width:180px;margin-left:0}
.site-header .public-search{height:44px;border:1px solid transparent;border-radius:8px;background:#efeee8;transition:background .15s,border-color .15s,box-shadow .15s}
.site-header .public-search:hover{border-color:#d3d9d4;background:#f6f5f0}
.site-header .public-search:focus-within{border-color:#789789;background:#fff;box-shadow:0 0 0 3px rgba(40,115,93,.11)}
.site-header .public-search input{font-size:14px;padding-left:0;box-shadow:none;outline:none}
.site-header .public-search input::placeholder{color:#6c7a73;opacity:1}
.site-header .public-search button{order:-1;flex:0 0 44px;padding:0 12px;background:transparent;color:#193e35;border-radius:7px}
.site-header .public-search svg{width:20px;height:20px;stroke-width:1.8}
.site-header .mobile-menu .public-search input{padding-left:12px}
.site-header .mobile-menu .public-search button{order:1;flex-basis:auto}
@media(min-width:1161px){.site-header .header-inner{width:calc(100% - 64px);max-width:1800px;gap:32px}.site-header .desktop-nav{flex-shrink:0;margin-left:0}}
.header-inner .desktop-nav{gap:2px}
.desktop-nav>a{padding-inline:9px}
/* The shared public-page focus ring needs contrast against the paper background. */
body :focus-visible{outline-color:#886724}
@media(min-width:1161px){.header-inner{gap:21px}.header-inner .desktop-nav .login{margin-left:5px}.desktop-nav .signup{min-width:0}}

/* Phone navigation stays reachable and fits short landscape viewports. */
@media (max-width: 880px) {
  .site-header { padding-top: env(safe-area-inset-top); backdrop-filter: none; background: #faf9f3; }
  .site-header:has(.mobile-nav[open]) { z-index: 70; }
  .header-inner { height: 68px; width: calc(100% - 36px); }
  .header-inner > .law-united-wordmark { min-height: 44px; align-items: center; }
  .mobile-nav summary { min-height: 46px; padding: 10px 14px; border-radius: 8px; font-size: 14px; }
  .mobile-nav[open] summary { background: #e8ede2; border-color: #7e9789; }
  .mobile-menu { position: fixed; top: calc(76px + env(safe-area-inset-top)); left: 12px; right: 12px; width: auto; max-width: 440px; margin-left: auto; max-height: calc(100dvh - 92px - env(safe-area-inset-top)); padding: 16px; border-radius: 12px; }
  .mobile-menu nav a { min-height: 48px; font-size: 14px; font-weight: 600; padding-inline: 12px; }
  .mobile-menu nav a[aria-current="page"] { background: #eaf0e5; border-radius: 6px; }
  .mobile-menu .public-search input { min-height: 46px; font-size: 16px; }
  .mobile-actions a { min-height: 48px; display: flex; align-items: center; justify-content: center; font-size: 13px; }
  .footer-links nav a { display: flex; align-items: center; min-height: 44px; font-size: 14px; padding-block: 8px; }
  .footer-links strong { font-size: 12px; }
  .footer-base { font-size: 12px; line-height: 1.7; padding-bottom: max(20px, env(safe-area-inset-bottom)); }
  .site-footer .footer-brand p { font-size: 14px; line-height: 1.7; }
  .page-main, .hero-inner { scroll-margin-top: calc(84px + env(safe-area-inset-top)); }
}
