/* Canonical public header/footer rules reused from the existing News template. */
    header { position:sticky; top:0; z-index:30; background:rgba(247,245,240,.96); backdrop-filter:blur(10px); }
    header::after { content:""; display:block; height:5px; background:var(--stripe-thin); border-top:1px solid #000; }
    .nav { max-width:1120px; margin:0 auto; padding:.65rem 1.1rem; display:flex; align-items:center; justify-content:space-between; gap:.8rem; }
    .brand { font-family:"Cormorant Garamond",serif; font-weight:700; font-size:1.3rem; color:#000; text-decoration:none; display:flex; align-items:center; gap:.5rem; }
    .brand-mark { width:24px; height:24px; border-radius:6px; background:#000; position:relative; flex:none; }
    .brand-mark::before { content:""; position:absolute; inset:5px; background:repeating-linear-gradient(90deg,#fff 0 3px,transparent 3px 6px); border-radius:2px; }
    header nav ul { display:flex; gap:.15rem; list-style:none; font-size:.92rem; flex-wrap:wrap; justify-content:flex-end; }
    header nav a { display:block; text-decoration:none; color:#222; font-weight:500; padding:.3rem .55rem; border-radius:999px; }
    header nav a:hover { color:#006400; background:rgba(0,128,0,.08); }
    header nav a.active { color:#fff; background:#000; }
    .menu-btn { display:none; background:none; border:1px solid var(--line); border-radius:10px; width:42px; height:42px; cursor:pointer; color:#000; }
    .menu-btn span, .menu-btn span::before, .menu-btn span::after { display:block; width:18px; height:2px; background:currentColor; margin:0 auto; position:relative; }
    .menu-btn span::before, .menu-btn span::after { content:""; position:absolute; left:0; }
    .menu-btn span::before { top:-6px; } .menu-btn span::after { top:6px; }
    @media (max-width:1020px) {
      .menu-btn { display:block; }
      header nav ul { display:none; position:absolute; left:0; right:0; top:100%; flex-direction:column; background:#f7f5f0; border-bottom:1px solid var(--line); padding:.5rem 1rem 1rem; }
      header nav ul.open { display:flex; }
      header nav a { padding:.65rem .85rem; border-radius:10px; font-size:1.02rem; }
    }

    footer { background:#000; color:#eaeaea; }
    footer .anger { height:10px; }
    footer .wrap { max-width:1120px; margin:0 auto; padding:2.4rem 1.1rem 2.6rem; display:grid; gap:1.6rem; }
    @media (min-width:800px) { footer .wrap { grid-template-columns:1.4fr 1fr 1fr; } }
    .f-brand { font-family:"Cormorant Garamond",serif; font-size:1.7rem; font-weight:700; color:#fff; }
    footer h2 { font-family:"Source Sans 3",sans-serif; font-size:.78rem; letter-spacing:.14em; text-transform:uppercase; color:#5fd35f; margin-bottom:.55rem; }
    footer nav ul { list-style:none; display:grid; grid-template-columns:repeat(2,max-content); gap:.25rem 1.4rem; justify-content:start; }
    footer nav a { color:#9be29b; text-decoration:none; display:inline; padding:0; border-radius:0; }
    footer nav a:hover { color:#fff; text-decoration:underline; background:none; }
    footer .tiny { font-size:.9rem; color:#cfcfcf; margin-top:.7rem; font-style:italic; }
    footer .f-email { font-weight:600; color:#5fd35f; }
  
/* Existing shared session-nav styling, included statically for the register too. */
#nav-list .nav-dd{position:relative}#nav-list .nav-dd>details>summary{list-style:none;cursor:pointer;display:block;font-weight:600;color:var(--soil,#000000);padding:.35rem .75rem;border-radius:999px;border:1px solid rgba(0,128,0,.9);background:#e9e9e9}#nav-list .nav-fv>details>summary{background:var(--soil,#000000);color:#ffffff;border-color:var(--soil,#000000)}#nav-list .nav-dd>details>summary::-webkit-details-marker{display:none}#nav-list .nav-dd>details>summary::after{content:" \25BE";font-size:.8em}#nav-list .nav-dd>details[open]>summary::after{content:" \25B4"}header nav #nav-list .nav-dd ul{display:flex;flex-direction:column;gap:.1rem;list-style:none;position:absolute;right:0;top:calc(100% + .35rem);min-width:15rem;background:var(--cream,#ffffff);border:1px solid var(--line,#dadada);border-radius:12px;padding:.4rem;box-shadow:0 12px 24px -12px rgba(0,0,0,.45);z-index:60}#nav-list .nav-dd ul a{white-space:nowrap}#nav-list .nav-dd ul li.nav-sub a{padding-left:1.6rem;font-size:.95em}#nav-list .nav-dd ul button,#nav-list .nav-signout button{font:inherit;font-weight:500;color:var(--muted,#5c5c5c);background:none;border:0;cursor:pointer;padding:.35rem .65rem;border-radius:999px;text-align:left}#nav-list .nav-dd ul button:hover,#nav-list .nav-signout button:hover{color:var(--terra,#006400);background:rgba(0,100,0,.07)}#nav-list li.fv-hidden{display:none!important}#nav-list .nav-admin-link{border-top:1px solid var(--line,#dadada);margin-top:.25rem;padding-top:.2rem}#nav-list .nav-admin-link a{font-size:.85rem;font-weight:500;color:var(--muted,#5c5c5c)}@media (max-width: 1020px){header nav #nav-list .nav-dd ul{position:static;box-shadow:none;border:0;border-left:3px solid rgba(0,128,0,.9);border-radius:0;margin:.2rem 0 .3rem .6rem;padding:0 0 0 .3rem;min-width:0;background:transparent}#nav-list .nav-dd>details>summary{padding:.7rem .9rem;border-radius:10px;font-size:1.05rem;margin-top:.3rem}#nav-list .nav-dd ul button,#nav-list .nav-signout button{padding:.7rem .9rem;font-size:1.05rem;width:100%;border-radius:10px}}.nav-fv .nav-group{font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;font-weight:700;color:#444;padding:.7rem .9rem .2rem;border-top:1px solid #ddd;margin-top:.3rem}.nav-fv .nav-sub a{padding-left:1.5rem}body>header{background:#f6efe3!important;border-bottom:1px solid #ead9bd!important;box-shadow:none!important}body>header .brand{color:#2b2118!important}body>header #nav-list>li>a{color:#5b5149!important;background:none!important;border:0!important;font-weight:500!important}body>header #nav-list>li>a:hover{color:#2b2118!important}body>header #nav-list a[data-signin],body>header #nav-list .nav-signout button,body>header #nav-list .nav-admin-dd>details>summary,body>header #nav-list .nav-fv>details>summary{color:#3d3128!important;background:transparent!important;border:1px solid #d6b57c!important;border-radius:999px!important;padding:.35rem .8rem!important;font-weight:500!important}body>header #nav-list a[data-signin]:hover,body>header #nav-list .nav-fv>details>summary:hover{background:#efe2c9!important}@media (max-width: 1020px){html:not(.mb-in) body>header #nav-list>li:not(.fv-hidden):not([hidden]),body>header #nav-list>li.fv-flat:not(.fv-hidden):not([hidden]){display:block!important}body>header #nav-list{background:#f6efe3!important}body>header #nav-list .nav-fv>details>summary{display:inline-block!important}}

/* Explicit footer layout/type; do not inherit the MDA page's general nav/h2 rules. */
body>footer{font-family:"Source Sans 3",system-ui,sans-serif;font-size:1.02rem;line-height:1.6}
body>footer .f-contact ul{display:grid;grid-template-columns:minmax(0,1fr);list-style:none;gap:.3rem}
body>footer .f-contact a{display:inline-block;color:#9be29b;text-decoration:none;padding:.2rem 0;overflow-wrap:anywhere}
body>footer .f-contact .f-email{color:#5fd35f;font-weight:600}
body>footer .f-contact a:hover,body>footer .f-contact a:focus-visible{color:#fff;text-decoration:underline}
body>footer .wrap>*,body>footer nav{min-width:0}

/* MDA's legacy generic nav a rule must not turn breadcrumb anchors into blocks. */
.vault-bar .crumbs{align-items:center}
.vault-bar .crumbs a{display:inline;padding:0;border-radius:0}
.vault-bar .crumbs li{min-width:0}
