/* Handbook prototype only. No changes to the site's shared styles. */
body.handbook-page { background:#fff; color:#263b43; font-family:Arial,Verdana,sans-serif; font-size:1.333333rem; line-height:1.6; letter-spacing:normal; overflow-wrap:anywhere; }
.handbook-page *, .handbook-page *::before, .handbook-page *::after { box-sizing:border-box; }
.handbook-page #page-wrapper { padding-top:0; }
.handbook-page #header { position:relative; background:#2e3842; height:auto; min-height:3.7rem; line-height:1.4; display:flex; align-items:center; justify-content:space-between; gap:.75rem; padding:.8rem 1rem; }
.handbook-page #header .site-brand { position:static; min-width:0; flex:1; font-size:1.1rem; letter-spacing:normal; font-weight:700; }
.handbook-page #header .site-brand a { border:0; color:#fff; font-size:inherit; }
.handbook-page #header #nav { position:static; flex:none; }
.handbook-page #nav .menuToggle { font-size:1rem; letter-spacing:normal; text-transform:none; }
.handbook-page #header .menuToggle, .handbook-page #header .menuToggle span { color:#fff; }
.handbook-page #header nav > ul > li > a.menuToggle { padding:.25rem; }
.handbook-page #header nav > ul > li > a.menuToggle::after { height:1.5em; width:1.5em; vertical-align:middle; }
.handbook-page #menu { font-family:Arial,Verdana,sans-serif; font-size:1.166667rem; letter-spacing:normal; }
.handbook-page #menu .submenu-toggle, .handbook-page #menu a { font-size:1.166667rem; letter-spacing:normal; text-transform:none; }
.handbook-page #footer { padding:3rem 1.5rem; background:#2e3842; color:#fff; font-size:1rem; line-height:1.6; }
.handbook-page #footer .copyright { font-size:1rem; letter-spacing:normal; text-transform:none; color:#fff; display:flex; flex-wrap:wrap; justify-content:center; max-width:60rem; margin:0 auto; gap:.3rem 0; }
.handbook-page #footer a { color:#fff; }
.handbook-page #footer .icons { font-size:1.25rem; }
.handbook-page a:focus-visible, .handbook-page button:focus-visible { outline:3px solid #9b252d; outline-offset:4px; box-shadow:0 0 0 7px #fff; }
.handbook-page #menu a:focus-visible, .handbook-page #menu button:focus-visible { outline-color:#fff; box-shadow:none; }
.hb-skip { position:absolute; top:-10rem; left:1rem; z-index:10010; padding:.7rem 1rem; background:#fff; color:#173e48; font-weight:700; }
.hb-skip:focus { top:.5rem; }
.hb { --hb-ink:#263b43; --hb-teal:#175f61; --hb-line:#cbdad9; --hb-wash:#f2f7f6; --hb-muted:#4a6065; }
.hb h1,.hb h2,.hb h3 { color:var(--hb-ink); font-family:Arial,Verdana,sans-serif; font-weight:700; text-transform:none; letter-spacing:-.02em; line-height:1.22; }
.hb h1 { font-size:clamp(2.15rem,4.2vw,3.65rem); margin:0 0 1.2rem; max-width:52rem; }
.hb h2 { font-size:1.85rem; margin:0 0 1rem; }
.hb h3 { font-size:1.5rem; }
.hb p { margin:0 0 1.3rem; }
.hb a { color:#155d60; border-bottom:0; font-weight:700; text-decoration:none; }
.hb a:hover { color:#873039; background:#edf4f3; }
.hb a:not(.hb-button):not(.hb-back):not(.hb-text-link) { text-decoration:none; }
.hb .hb-content td a { text-decoration:underline!important; text-underline-offset:.16em; }
.hb strong { color:inherit; }
.hb em { font-style:normal; }
.hb ul,.hb ol { padding-left:1.4em; margin:0 0 1.5rem; }
.hb li { padding-left:.25em; margin-bottom:.65rem; }
.hb-container { max-width:76rem; width:calc(100% - 4rem); margin-inline:auto; }
.hb-prototype { background:#f8f0df; color:#604815; border-bottom:1px solid #ddcc9e; font-size:1rem; line-height:1.5; }
.hb-prototype .hb-container { display:flex; flex-wrap:wrap; gap:.3rem 1.2rem; padding-block:.7rem; }
.hb-hero { background:var(--hb-wash); border-bottom:1px solid var(--hb-line); padding:3.8rem 0; }
.hb-hero-grid { display:grid; grid-template-columns:minmax(0,1.4fr) minmax(0,1fr); gap:4rem; align-items:center; }
.hb-eyebrow { font-size:1rem; color:var(--hb-teal); font-weight:700; margin-bottom:.8rem!important; letter-spacing:.02em; }
.hb-lead { max-width:40rem; font-size:1.5rem; }
.hb-version { font-size:1rem; color:var(--hb-muted); }
.hb-version span { margin-inline:.4rem; }
.hb-button { display:inline-flex; align-items:center; justify-content:space-between; gap:1.3rem; padding:.8rem 1.25rem; background:#175f61; color:#fff!important; border:2px solid #175f61!important; border-radius:4px; font-size:1.166667rem; line-height:1.5; min-height:3rem; white-space:normal; }
.hb-button:hover { background:#10494a!important; }
.hb-button span { font-size:1.5rem; }
.hb-format { padding:1.7rem 2rem; background:#fff; border:1px solid var(--hb-line); border-radius:4px; }
.hb-format h2 { font-size:1.5rem; }
.hb-format p { font-size:1.166667rem; }
.hb-logo { width:14rem; max-width:100%; height:auto; display:block; margin:0 0 1.4rem; }
.hb-text-link { display:inline-block; font-size:1.166667rem; padding:.35rem 0; }
.hb-text-link span { margin-left:.4rem; }
.hb-contents { padding-block:3.5rem 4rem; }
.hb-section-heading { display:flex; justify-content:space-between; gap:1rem; align-items:end; }
.hb-section-heading>p { font-size:1rem; color:var(--hb-muted); white-space:nowrap; }
.hb-notice { font-size:1rem; color:var(--hb-muted); }
.hb-contents-list { display:grid; grid-template-columns:1fr 1fr; list-style:none; padding:0!important; gap:0 2.5rem; margin:1.7rem 0 0!important; }
.hb-contents-list li { border-top:1px solid var(--hb-line); padding:0; margin:0; scroll-margin-top:1rem; }
.hb-contents-list li>div,.hb-contents-list li>a { display:flex; align-items:start; gap:1rem; padding:1.3rem .8rem; height:100%; }
.hb-contents-list .hb-number { font-size:1rem; font-weight:700; min-width:2rem; padding-top:.2rem; color:#556a6c; }
.hb-section-title { display:block; font-size:1.166667rem; line-height:1.45; font-weight:700; }
.hb-status { display:block; font-size:1rem; font-weight:400; margin-top:.4rem; color:var(--hb-muted); }
.hb-available { background:#e9f3f0; border-left:4px solid #175f61; }
.hb-available .hb-status { color:#175f61; font-weight:700; }
.hb-download-band { background:#eaf1f1; padding:2.7rem 0; border-top:1px solid var(--hb-line); }
.hb-download-band>.hb-container { display:flex; gap:2rem; justify-content:space-between; align-items:center; }
.hb-download-band h2 { font-size:1.6rem; }
.hb-download-band p { font-size:1.166667rem; margin:0; max-width:40rem; }
.hb-download-band .hb-button { flex-shrink:0; }
.hb-section-hero { padding-block:2.1rem 2.7rem; }
.hb-section-hero .hb-container { max-width:61rem; }
.hb-section-hero h1 { font-size:clamp(2rem,3.8vw,3.05rem); }
.hb-back { display:inline-block; font-size:1.166667rem; padding:.3rem 0; margin-bottom:1.9rem; }
.hb-reading { max-width:61rem; padding-block:2.3rem 3.5rem; }
.hb-on-page { padding-bottom:1.7rem; margin-bottom:2rem; border-bottom:1px solid var(--hb-line); }
.hb-on-page h2 { font-size:1.166667rem; }
.hb-on-page ul { display:flex; flex-wrap:wrap; gap:.6rem 1.5rem; list-style:none; margin:0; padding:0; font-size:1.166667rem; }
.hb-on-page li { margin:0; padding:0; }
.hb-on-page a { display:inline-block; padding:.35rem 0; border-bottom:2px solid #6b9999!important; }
.hb-content>p,.hb-content>ul,.hb-content>ol { max-width:49rem; }
.hb-content>h2 { margin-top:2.6rem; padding-top:1.2rem; border-top:1px solid var(--hb-line); max-width:49rem; }
.hb-content h2[id],.hb-content h3[id] { scroll-margin-top:1.5rem; }
.hb-summary { background:#eaf4f1; border:1px solid #b6d1ca; border-left:5px solid #175f61; border-radius:4px; padding:1.8rem 2rem; margin:0 0 2.7rem; }
.hb-summary h2 { display:flex; align-items:center; gap:.7rem; font-size:1.7rem; }
.hb-summary svg { width:1.7rem; height:1.7rem; flex-shrink:0; }
.hb-summary ul { margin-bottom:0; max-width:46rem; }
.hb-summary li:last-child { margin-bottom:0; }
.hb-content>ol { padding:0; list-style:none; counter-reset:hb-step; }
.hb-content>ol>li { counter-increment:hb-step; padding:.7rem 0 .9rem 3.2rem; position:relative; border-bottom:1px solid #e1e9e7; }
.hb-content>ol>li::before { content:counter(hb-step); position:absolute; left:0; top:.7rem; width:2.1rem; height:2.1rem; border-radius:4px; background:#eaf1f1; color:#175f61; text-align:center; font-weight:700; }
.hb-table-wrap { margin:1.5rem 0; }
.hb table { width:100%; table-layout:fixed; border-collapse:collapse; font-size:1.166667rem; line-height:1.55; margin:0; }
.hb th { background:#e8f0ef; color:#263b43; font-size:inherit; padding:.8rem; font-weight:700; text-align:left; vertical-align:top; border:1px solid #bdcecb; }
.hb td { padding:.9rem .8rem; vertical-align:top; border:1px solid #bdcecb; }
.hb tbody tr { background:#fff; border:0; }
.hb tbody tr:nth-child(even) { background:#f7faf9; }
.hb table th:first-child { width:21%; }
.hb table th:nth-child(2) { width:38%; }
.hb-mobile-label { display:none; }
.hb-detail { background:#f4f6f7; border:1px solid #cbd5d9; border-radius:4px; padding:1.8rem 2rem; margin-top:3rem; }
.hb-detail>p { max-width:49rem; }
.hb-detail h2 { border-bottom:2px solid #829ca6; padding-bottom:1rem; }
.hb-detail table th:first-child { width:22%; }
.hb-detail table th:nth-child(2) { width:27%; }
.hb-end-nav { display:flex; flex-wrap:wrap; justify-content:space-between; gap:1.2rem; align-items:center; border-top:1px solid var(--hb-line); margin:2.5rem 0 1.3rem; padding-top:2rem; }
.hb-noscript { display:flex; flex-wrap:wrap; gap:1rem; padding:1rem; font-size:1rem; background:#fff; }
@media(max-width:980px) {
  .hb-hero-grid { grid-template-columns:1fr; gap:2rem; }
  .hb-format { max-width:44rem; }
  .hb-download-band>.hb-container { flex-direction:column; align-items:start; }
}
@media(max-width:736px) {
  .hb-container { width:calc(100% - 2rem); }
  .hb-hero { padding-block:2rem; }
  .hb-format,.hb-summary,.hb-detail { padding:1.3rem 1rem; }
  .hb-contents { padding-block:2.3rem; }
  .hb-contents-list { grid-template-columns:1fr; }
  .hb-section-heading { display:block; }
  .hb-on-page ul { display:block; }
  .hb-on-page li { margin-bottom:.45rem; }
  .hb table,.hb table tbody,.hb table tr,.hb table td { display:block; width:100%; }
  .hb table thead { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
  .hb table tr { border:1px solid #bdcecb; margin-bottom:1rem; border-radius:4px; overflow:hidden; }
  .hb table td { border:0; border-top:1px solid #d9e2df; padding:.8rem; }
  .hb table td:first-child { background:#e8f0ef; font-weight:700; border-top:0; }
  .hb-mobile-label { display:block; font-size:1rem; color:#4a6065; font-weight:700; margin-bottom:.3rem; }
  .hb-content>h2 { font-size:1.65rem; }
  .hb h1 { overflow-wrap:anywhere; }
  .handbook-page #footer .copyright li { display:block; border:0; padding:0; margin:.25rem 0; }
}
@media(prefers-reduced-motion:reduce) { .handbook-page *, .handbook-page *::before, .handbook-page *::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; } }
