/* One compact place to identify the page and move around it. */
.site-header{position:static}
.site-header .header-inner{padding-block:10px;min-height:76px}
.site-header .desktop-explore{gap:16px}
.site-header .site-orientation{background:var(--paper);border-top:1px solid var(--line)}
.orientation-inner{display:flex;align-items:center;gap:18px;min-height:52px;position:relative}
.page-name{font-size:16px;font-weight:700;color:var(--ink);line-height:1.25;flex:0 1 auto}
.site-orientation .mobile-menu{display:block;position:static;margin-left:auto;flex:none}
.site-orientation summary{min-height:44px;display:flex;align-items:center;gap:8px;font-size:14px;line-height:1.3;padding:9px 12px;margin:0;list-style:none;border:1px solid var(--line);border-radius:7px;color:var(--ink);background:var(--paper)}
.site-orientation summary::-webkit-details-marker{display:none}
.site-orientation details[open]>summary{margin:0;background:var(--theme-soft,#edf3e8)}
.site-orientation .mobile-menu nav,.section-panel{position:absolute;top:100%;right:0;width:min(360px,calc(100vw - 32px));max-height:50dvh;overflow-y:auto;overscroll-behavior:contain;display:block;padding:10px;background:var(--paper);border:1px solid var(--line);border-radius:0 0 10px 10px;box-shadow:0 12px 24px #14393626;z-index:35;white-space:normal}
.site-orientation nav a{display:flex;align-items:center;padding:10px 12px;min-height:44px;font-size:15px;line-height:1.4;text-decoration:none;border-radius:5px;color:var(--ink);white-space:normal}
.site-orientation nav a:hover{background:var(--theme-soft,#edf3e8)}
.site-orientation .mobile-menu nav a.nav-subitem{padding-inline-start:28px;font-size:14px}
.site-orientation nav a[aria-current]{font-weight:700;background:var(--theme-soft,#edf3e8);box-shadow:inset 3px 0 var(--teal);text-decoration:underline;text-underline-offset:4px}
.page-sections{min-width:0;flex:1;max-width:650px}
.page-sections>summary{border-color:transparent;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 10px}
.section-prompt{font-size:11px;letter-spacing:.035em;color:var(--body)}
.section-trail{display:block;grid-row:2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:500;color:var(--ink)}
.section-chevron{grid-column:2;grid-row:1/3}
.section-panel{left:0;right:auto;width:min(440px,calc(100vw - 32px))}
.section-links a[data-parent]{padding-left:26px;font-size:14px}
.section-links .section-top{border-top:1px solid var(--line);margin-top:8px}
.section-share{padding:8px 12px;border-top:1px solid var(--line)}
.section-copy{border:0;background:transparent;color:var(--teal);font-size:14px;text-decoration:underline;min-height:44px;padding:8px 0;text-align:left}
.section-copy-fallback{width:100%;font:14px Arial,sans-serif;padding:10px;border:1px solid var(--line);background:var(--paper);color:var(--ink)}
.section-copy-status{display:block;font-size:13px;color:var(--body)}
.has-orientation .site-header{position:sticky;top:var(--nav-hide-top,0px);z-index:30}
html.has-orientation{scroll-padding-top:calc(var(--nav-height,60px) + 12px)}
.has-orientation main [id],.has-orientation main{scroll-margin-top:12px!important}
.site-orientation :is(a,summary,button,input):focus-visible{outline:3px solid var(--theme-focus,var(--teal));outline-offset:2px}
.route-destination{display:block;color:var(--body);font-size:13px;font-weight:700;margin-bottom:4px}
@media(max-width:1100px){.site-header .header-inner{grid-template-columns:minmax(0,1fr) auto;gap:10px;min-height:68px}.site-header .participation-nav{grid-column:2;grid-row:1}.orientation-inner{gap:10px}.page-name{max-width:38%}}
@media(max-width:700px){.site-header .header-inner{padding-block:8px;gap:8px}.site-header .brand{font-size:19px;gap:8px}.site-header .brand svg{width:30px;height:30px}.site-header .participation-nav{grid-column:1/-1;grid-row:2;gap:10px}.site-header .participation-nav a{padding-block:7px}.orientation-inner{gap:5px;min-height:62px}.page-name{font-size:15px;max-width:34%}.site-orientation summary{padding:7px 8px}.section-prompt{font-size:10px}.section-trail{font-size:12px}.site-orientation .mobile-menu summary{font-size:13px}.section-panel,.site-orientation .mobile-menu nav{max-height:50dvh}}
@media(max-height:420px){.orientation-inner{min-height:48px}.section-prompt{display:none}.section-trail{grid-row:1}.section-chevron{grid-row:1}.site-orientation summary{padding-block:5px}}
@media print{.site-orientation{display:none!important}.has-orientation .site-header{position:static}}

.has-orientation .site-orientation .mobile-menu nav,.has-orientation .section-panel{max-height:calc(100dvh - var(--nav-bottom,var(--nav-height,62px)) - 12px)}
html.has-orientation{scroll-behavior:auto}

.page-name{overflow-wrap:anywhere}
.nav-large-text .orientation-inner{flex-wrap:wrap;gap:2px 10px;padding-block:6px}
.nav-large-text .page-name{flex:1 0 100%;max-width:none}
.nav-large-text .page-sections{max-width:none}
.nav-large-text .section-trail{display:none}
.nav-large-text .page-sections>summary{display:flex;justify-content:space-between}
.nav-large-text .section-prompt{font-size:inherit}

.site-orientation .section-links{display:block;white-space:normal}
.has-orientation main :is(h1,h2,h3){overflow-wrap:anywhere}
/* Curated Menu groups (27 September 2026): short headings chunk the list. */
.site-orientation .mobile-menu .menu-group+.menu-group{margin-top:6px;padding-top:6px;border-top:1px solid var(--line)}
.site-orientation .menu-group-label{margin:0;padding:8px 12px 2px;font-size:11px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:var(--teal)}
/* Builder-rendered footer: wrap its links on every page, including pages that do
 * not load community.css (FAQ, Understand), so no route runs off-screen. */
.footer-inner>div:last-child{flex-wrap:wrap;justify-content:flex-end}
.footer-inner>div:first-child{max-width:460px}
.footer-inner a{min-height:32px;display:inline-flex;align-items:center}
@media(max-width:850px){.footer-inner>div:last-child{justify-content:flex-start}}
/* The official response leads the Take part group with the same emphasis as the
 * Parent action plan (owner decision, 27 September 2026). */
.site-header .nav-respond{font-weight:700;color:var(--teal)}

/* Let the full school name reflow while keeping participation links exposed. */
.site-header .brand{min-width:0;white-space:normal}
.site-header .brand>span{min-width:0}

@media(max-width:700px){.site-header .header-inner{padding-block:4px}.site-header .brand small{margin-top:0}.orientation-inner{min-height:52px}}

/* The publisher is the campaign. Keep its identity readable at every width. */
.site-header .brand .campaign-subtitle{display:flex;align-items:baseline;flex-wrap:wrap;gap:0 8px;margin-top:3px;font:12px/1.3 Arial,Helvetica,sans-serif;letter-spacing:0;color:var(--ink)}
.site-header .brand .campaign-subtitle strong{font-size:14px;font-weight:700;letter-spacing:.035em}
.site-header .brand .campaign-subtitle span{font-size:12px}
.independent-bar .wrap{font-size:11px;padding-block:5px;justify-content:flex-end}
.site-header .desktop-explore{gap:8px;font-size:12px}
.footer-inner>div:first-child a{display:inline;min-height:0}
.letter-source{margin:0 0 16px;padding-block:10px;border-bottom:1px solid var(--line);font-size:13px;line-height:1.5;color:var(--body)}
.letter-source p{margin:0 0 4px;font-size:13px}
.letter-source-actions{display:flex;align-items:center;flex-wrap:wrap;gap:2px 18px}
.letter-permalink{overflow-wrap:anywhere;min-width:0}
.letter-copy,.letter-share{background:transparent;border:0;color:var(--teal);font:inherit;text-decoration:underline;text-underline-offset:3px;min-height:44px;padding:5px 0}
.letter-copy:focus-visible,.letter-share:focus-visible{outline:3px solid var(--theme-focus,var(--teal));outline-offset:3px}
.letter-attribution-fallback,.letter-share-fallback{display:block;width:100%;min-height:110px;margin-top:8px;padding:10px;background:var(--paper);color:var(--ink);border:1px solid var(--line);border-radius:5px;font:14px/1.5 Arial,sans-serif;resize:vertical}
.letter-copy-status:not(:empty),.letter-share-status:not(:empty){display:block;margin-top:4px}
.letter-print-url,.letter-print-body{display:none}
.press-credit{padding:18px;border-left:3px solid var(--teal);background:var(--theme-soft,#edf3e8);overflow-wrap:anywhere}
.letters-press-note{font-size:14px}
.letter-unavailable{padding:16px;border:1px solid var(--line);border-radius:8px}
@media print{
  .letter-source{color:black;border-color:#aaa;break-inside:avoid}
  .letter-source-actions,.letter-copy-status,.letter-attribution-fallback,.letter-share-fallback,.letter-share-status,.letter-excerpt,.letter-story summary,.letter-collapse,.letter-removal,.letters-invite .invite-layout,.letters-invite .format-line,.letters-board-heading .letter-write-link{display:none!important}
  .letter-print-url{display:block;font-size:9pt;overflow-wrap:anywhere}
  .letter-story{display:none!important}
  .letter-print-body{display:block;white-space:pre-wrap}
  .letter-card{break-inside:auto}
  .letter-card .public-author,.letter-card .suggestion-meta{break-after:avoid}
}

/* Mobile arrivals: the page heading supplies identity; status remains in Menu. */
.mobile-page-note{display:none}
@media(max-width:700px){
  .simple-page .independent-bar{display:none}
  .simple-page .mobile-page-note{display:block;border-top:1px solid var(--line);margin-top:8px;padding:8px 12px;color:var(--body);font-size:13px;line-height:1.5}
  .simple-page .mobile-page-note .menu-group-label{padding:0 0 4px}
  .simple-page .mobile-page-note span{display:block}
  .simple-page .site-header .header-inner{min-height:0;padding-block:5px;gap:4px}
  .simple-page .site-header .brand{font-size:16px;line-height:1.15}
  .simple-page .site-header .brand svg{width:26px;height:26px}
  .simple-page .site-header .brand .campaign-subtitle{margin-top:1px}
  .simple-page .site-header .brand .campaign-subtitle strong{font-size:11px}
  .simple-page .site-header .participation-nav{gap:8px}
  .simple-page .site-header .participation-nav a{min-height:44px;padding:5px 10px}
  .simple-page .orientation-inner{min-height:44px;gap:8px}
  .simple-page .site-orientation .page-name{display:none}
  .nav-large-text .simple-page .site-orientation .page-name{display:block}
  .simple-page .page-sections>summary{padding:4px 8px;min-height:44px;gap:0 8px}
  .simple-page .site-orientation .mobile-menu>summary{min-height:44px}
}
/* Archived pages (13 October 2026): a compact notice above unchanged content. */
.archive-banner{margin:12px 0 18px;padding:10px 14px;border:1px solid var(--theme-border,var(--line));border-left:4px solid var(--teal);border-radius:6px;background:var(--theme-soft,#edf1e7);color:var(--theme-strong,var(--ink))}
.archive-banner p{margin:0;font-size:15px;line-height:1.5;color:inherit}
.archive-banner a{color:inherit;font-weight:700;white-space:nowrap}
.site-header .nav-primary{font-weight:700;color:var(--teal)}
.archive-flag{flex:none;display:inline-flex;align-items:center;min-height:28px;padding:2px 9px;border:1px solid var(--teal);border-radius:999px;background:var(--theme-soft,#edf1e7);color:var(--theme-strong,var(--ink));font:700 12px/1.2 Arial,sans-serif;letter-spacing:.02em}
/* Without scripts, keep the Archived label in view for deep-link arrivals. */
@media screen{
  html:not(.has-orientation) .site-header:has(.archive-flag){position:sticky;top:0;z-index:30}
  html:not(.has-orientation):has(.archive-flag){scroll-padding-top:120px}
}
@media screen and (min-width:701px){html:not(.has-orientation):has(.archive-flag){scroll-padding-top:156px}}
