:root{font:16px/1.6 system-ui,sans-serif;color:#183b2b;background:#f3f6f4}*{box-sizing:border-box}body{margin:0}header{padding:20px max(20px,calc((100vw - 1180px)/2));background:#145c38;color:white;display:flex;gap:24px;align-items:center;justify-content:space-between}header a{color:white}.brand{font-size:25px;font-weight:800;text-decoration:none}.brand span{font-size:15px;font-weight:500;margin-left:12px}nav{display:flex;gap:20px;flex-wrap:wrap}main{max-width:1180px;margin:auto;padding:24px 20px 50px}h1{font-size:clamp(26px,4vw,38px);line-height:1.2}h2{font-size:23px}section{background:white;border:1px solid #d4e1d8;border-radius:12px;padding:24px;margin:20px 0}a{color:#145c38}button,.button{display:inline-block;border:0;border-radius:7px;background:#145c38;color:white;padding:12px 18px;font:inherit;font-weight:650;cursor:pointer;text-decoration:none}.secondary{background:#dfece3;color:#145c38}button:disabled{opacity:.5;cursor:default}button[aria-pressed=true]{outline:3px solid #d7a427;outline-offset:3px}form{max-width:630px}label{display:block;margin:15px 0}input,select{display:block;width:100%;padding:11px;border:1px solid #a0b6a8;border-radius:6px;font:inherit;color:inherit;background:white}input[type=checkbox]{display:inline-block;width:auto;margin-right:9px}input:focus,select:focus,button:focus-visible,a:focus-visible{outline:3px solid #d7a427;outline-offset:3px}table{width:100%;border-collapse:collapse}th,td{padding:10px;border-bottom:1px solid #d7e2db;text-align:left;vertical-align:top}.scroll{overflow-x:auto}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.cards section{margin:0}.cards h2{font-size:38px;margin:8px 0}.demo-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:20px}.notice{padding:14px 18px;background:#fff5d8;border-left:4px solid #d7a427}.cta{border-top:5px solid #d7a427}.trap{position:absolute;left:-10000px}footer{padding:25px;text-align:center;background:#e3ece6}code{overflow-wrap:anywhere}section[hidden],[hidden]{display:none!important}@media(max-width:760px){header{align-items:start;flex-direction:column}.demo-layout{grid-template-columns:1fr}.cards{gap:8px}.cards section{padding:12px}.brand span{display:block;margin:0}section{padding:18px}nav{gap:16px}}

/* ZRST institutional identity: official unaltered logo, white, charcoal, green and red. */
:root{color:#292d2b;background:#fff;--zrst-green:#195c2a;--zrst-red:#be302b}
header{background:#fff;color:#292d2b;border-top:5px solid var(--zrst-green);border-bottom:1px solid #dce5de;padding-top:16px;padding-bottom:16px}
header a{color:var(--zrst-green)}.brand{display:flex;align-items:center;gap:20px;color:#292d2b;font-size:20px;line-height:1.4}.brand .institutional-logo{width:205px;max-width:40vw;height:auto;display:block;object-fit:contain}.brand span{font:650 19px/1.4 system-ui,sans-serif;margin:0}.brand small{display:block;font-size:12px;font-weight:400;color:#59625c;margin-top:3px}
h1{color:#292d2b;border-left:5px solid var(--zrst-red);padding-left:16px}h2{color:#195c2a}a{color:#195c2a}button,.button{background:#195c2a}.secondary{background:#edf3ef;color:#195c2a}button[aria-pressed=true]{outline-color:#be302b}input:focus,select:focus,button:focus-visible,a:focus-visible{outline-color:#195c2a}
section{border-radius:5px;box-shadow:none}.cards section{border-top:3px solid #195c2a}.cta{border-top:4px solid #be302b}.notice{background:#f8f5ef;border-color:#be302b;color:#343a35}.institutional-footer{background:#195c2a;color:#fff;padding:30px 20px;text-align:center;border-top:4px solid #be302b}.institutional-footer a{color:#fff}.institutional-footer p{margin:5px 0}.institutional-footer small{font-size:12px}
@media(max-width:760px){.brand{gap:12px}.brand .institutional-logo{width:155px}.brand span{font-size:16px}.brand small{font-size:11px}header nav{width:100%;border-top:1px solid #e0e7e2;padding-top:12px}}
