/* A shared header keeps participation visible throughout the site. */
.site-header .header-inner{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:24px;min-height:90px;padding-block:14px;position:relative}
.site-header nav{width:auto;flex-wrap:nowrap;white-space:nowrap;overflow:visible;padding:0;font-size:13px}
.site-header .desktop-explore{display:flex;justify-content:flex-end;gap:18px}
.site-header nav a{min-height:44px;border-radius:6px}
.site-header nav a[aria-current="page"]{font-weight:700;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:6px}
.site-header .participation-nav{display:flex;gap:10px;grid-column:3;grid-row:1}
.site-header .participation-nav a{justify-content:center;gap:10px;padding:10px 17px;font-weight:700;border:1px solid var(--theme-border, #66857a);line-height:1.4}
.site-header .nav-letters{background:var(--theme-surface, #fff);color:var(--theme-strong, var(--green))}
.site-header .nav-contribute{background:var(--lime);border-color:var(--theme-border, #b4cca2)!important;color:var(--theme-strong, var(--green))}
.site-header .nav-letters:hover{background:var(--theme-soft, #edf3e8)}
.site-header .nav-contribute:hover{background:var(--theme-soft, #c9e7b3)}
.site-header .participation-nav a[aria-current="page"]{box-shadow:inset 0 -3px 0 var(--green)}
.mobile-menu{display:none}
.site-header a:focus-visible,.mobile-menu summary:focus-visible{outline:3px solid var(--teal);outline-offset:4px}
@media(max-width:1100px){
  html{scroll-padding-top:24px}
  .site-header{position:static}
  .site-header .header-inner{grid-template-columns:minmax(0,1fr) auto auto;gap:16px;min-height:82px}
  .site-header .desktop-explore{display:none}
  .site-header .participation-nav{grid-column:2;grid-row:1}
  .mobile-menu{display:block;position:relative;grid-column:3;grid-row:1}
  .mobile-menu summary{display:flex;align-items:center;justify-content:center;gap:7px;list-style:none;border:1px solid var(--theme-border, #bdcabc);border-radius:6px;min-height:44px;padding:10px 12px;font-size:14px;line-height:1.4}
  .mobile-menu summary::-webkit-details-marker{display:none}
  .mobile-menu summary svg{width:16px;height:16px}
  .mobile-menu[open] summary{background:var(--theme-soft, #edf3e8);margin-bottom:0}
  .mobile-menu[open] summary svg{transform:rotate(180deg)}
  .site-header .mobile-menu nav{display:grid;gap:2px;position:absolute;right:0;top:calc(100% + 10px);width:min(300px,calc(100vw - 32px));padding:10px;background:var(--paper);border:1px solid var(--theme-border, #bdcabc);border-radius:10px;box-shadow:0 12px 32px #18373324;z-index:30}
  .site-header .mobile-menu nav a{padding:10px 14px;font-size:15px}
  .site-header .mobile-menu nav a:hover{background:var(--theme-soft, #edf3e8)}
  .source-card{scroll-margin-top:24px}
}
@media(max-width:700px){
  .site-header .header-inner{grid-template-columns:minmax(0,1fr) auto;gap:14px 12px;padding-block:16px}
  .site-header .brand{font-size:22px;gap:10px}
  .site-header .brand svg{width:36px;height:36px}
  .site-header .brand small{font-size:8px;letter-spacing:1.5px}
  .mobile-menu{grid-column:2}
  .site-header .participation-nav{grid-column:1/-1;grid-row:2;gap:12px}
  .site-header .participation-nav a{flex:1;font-size:14px;min-height:46px}
}
@media(max-width:350px){.site-header .brand{font-size:19px;gap:8px}.site-header .brand svg{width:30px;height:30px}.mobile-menu summary{padding-inline:9px}}


/* Clear entry points and a readable distinction between consent choices. */
.letter-actions{display:flex;align-items:center;flex-wrap:wrap;gap:18px 26px;margin:24px 0}
.letter-actions .text-link{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-size:15px}
#letter-form,#letters,#feedback-form,#supporter-form{scroll-margin-top:18px}
.letter-form-intro{margin:-8px 0 24px}
.consent-label{display:block;color:var(--ink);font-size:16px;margin-bottom:7px}
.sharing-options .feedback-permission{padding-block:18px;margin:0;border-top:1px solid var(--line)}
.sharing-options legend{padding-bottom:18px}
.letters-board-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:20px}
.letters-board-heading h2{margin:0}
.letter-write-link{border:1px solid var(--theme-border, #66857a);color:var(--theme-strong, var(--green));background:var(--theme-surface, #fff);white-space:nowrap}
@media(max-width:700px){.letters-board-heading{align-items:flex-start;flex-direction:column}.letter-actions{gap:12px 24px}}
