/* NAFESU live site additions (Stage 5, 18 October 2026). Loaded after site.css and round2.css. */

/* Mobile menu: the Menu button opens and closes the navigation below 1100 pixels. */
@media (max-width: 1100px) {
  .nav.open{display:block}
  .nav.open .wrap{flex-direction:column;gap:0}
  .nav.open a{padding:14px 0;border-bottom:1px solid var(--leaf)}
  .nav.open a[aria-current]{border-bottom-color:var(--red)}
}
.menu{cursor:pointer;font:inherit;background:none}

/* Leadership (CEO, 18 October 2026): no empty portrait spaces and no "To be announced". The positions read as a
   numbered roster on hairlines, in the order of the Constitution, instead of a grid of near-empty cards. */
.people,.people.eight{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 40px;counter-reset:pos;border-top:1px solid var(--line)}
.people.eight{grid-template-columns:repeat(2,minmax(0,1fr))}
.people .person{counter-increment:pos;display:grid;grid-template-columns:2.25rem 1fr;align-items:baseline;gap:0;padding:15px 0 16px;border-bottom:1px solid var(--line)}
.people .person::before{content:counter(pos,decimal-leading-zero);font-family:var(--mono);font-size:13px;font-weight:600;color:var(--gear);font-variant-numeric:tabular-nums}
.people .person .role,.people.eight .person .role{font-size:16px;line-height:1.35;text-wrap:balance}
@media (max-width:1100px){.people,.people.eight{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){.people,.people.eight{grid-template-columns:1fr}}

/* Enquiry form */
.hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.form-note{border-radius:var(--r);padding:12px 14px;font-size:14px;line-height:1.5}
.form-note.err{background:#FDECEC;border:1px solid #E4A4A4;color:#7A1C1C}
.field input:invalid:focus,.field textarea:invalid:focus{outline-color:var(--red)}
.req{color:var(--red)}
