*{box-sizing:border-box}body{margin:0;background:#fbfcfa;color:#203b3b;font:16px/1.65 system-ui,-apple-system,Segoe UI,sans-serif}a{color:inherit}.wrap{max-width:1160px;margin:auto;padding-left:28px;padding-right:28px}.demo{text-align:center;background:#d9e9e5;color:#1c5149;font-size:11px;letter-spacing:.15em;font-weight:800;padding:7px}header{background:white;border-bottom:1px solid #e7ece7}.head{display:flex;align-items:center;justify-content:space-between;gap:25px;min-height:96px}.brand{display:flex;gap:13px;align-items:center;text-decoration:none;font-size:17px;line-height:1.15;font-weight:850;letter-spacing:.045em}.brand small{display:block;font-size:10px;letter-spacing:.23em;margin-top:6px;color:#65817c}.brandmark{background:#e6f0e9;border-radius:50%;height:52px;width:52px;display:grid;place-items:center;font:40px Georgia;color:#3b766d}nav{display:flex;gap:24px;flex-wrap:wrap}nav a{text-decoration:none;font-size:13px;font-weight:650;color:#385451}nav a:hover,.textlink:hover{color:#167d70}.hero{position:relative;overflow:hidden;background:linear-gradient(125deg,#103f41,#1a5953 58%,#317d6b);color:white;padding:90px 0 110px}.hero .wrap{position:relative;z-index:1}.eyebrow{font-size:11px;letter-spacing:.22em;font-weight:800;color:#b8dcd0}.eyebrow.dark{color:#468276}h1,h2,h3{line-height:1.17}h1,h2{font-family:Georgia,serif;font-weight:500;letter-spacing:-.03em}h1{font-size:clamp(42px,5.5vw,72px);margin:20px 0}h1 em{font-weight:400;color:#b5d7c5}h2{font-size:clamp(28px,3vw,42px);margin:10px 0 20px}.hero p{max-width:590px;color:#d7e7e2;font-size:18px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:34px}.btn{display:inline-block;background:#d9e6bd;color:#153e3b;border:0;border-radius:6px;padding:13px 20px;font-weight:800;text-decoration:none;cursor:pointer;font-size:14px}.btn.ghost{background:transparent;border:1px solid #a5c8be;color:white}.waves{position:absolute;right:-10%;bottom:-80px;width:60%;height:270px;border-radius:50% 50% 0 0;background:rgba(197,231,207,.08);transform:rotate(-15deg)}.content{padding-top:65px;padding-bottom:90px}.intro{display:grid;grid-template-columns:1.6fr 1fr;gap:75px;align-items:center}.intro p{color:#637572}.highlight{background:#edf3ed;padding:32px;border-left:4px solid #61917d}.highlight h3{font:32px Georgia;margin:20px 0 8px}.highlight p{margin:7px 0}.highlight a,.textlink{color:#267b6c;font-weight:800;text-decoration:none}.sectionhead{margin-top:70px;margin-bottom:22px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.tile{background:#fff;border:1px solid #e1e9e4;padding:28px;text-decoration:none;border-radius:8px;transition:transform .2s}.tile:hover{transform:translateY(-3px);border-color:#9bbfaf}.tile h3{font:24px Georgia;margin:15px 0}.tile p{color:#657975;font-size:14px}.tile span:last-child{color:#28776a;font-size:13px;font-weight:800}.symbol{font-size:28px;color:#488b7d}.news{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.news article{border-top:2px solid #90b6a6;padding-top:15px}.news h3{font-size:19px}.news p{color:#657975}.pagehero{background:#194e4c;color:white;padding:55px 0}.pagehero h1{font-size:52px}.pagehero p{color:#d5e7df}.stack{display:grid;gap:12px;margin:25px 0 50px}.record{background:white;border:1px solid #e0e9e4;border-radius:8px;padding:20px;display:flex;align-items:center;justify-content:space-between;gap:20px}.record p,.record small{color:#647874;margin:4px 0}.record a{color:#24786c;font-weight:800;white-space:nowrap}.status{background:#eaf3ed;color:#2e6656;border-radius:40px;padding:5px 13px;font-size:12px}.note{font-size:13px;color:#6e817b}.narrow{max-width:800px}.narrow p{font-size:17px}.foot{display:flex;justify-content:space-between;gap:30px;padding-top:45px;padding-bottom:45px}footer{background:#113b3a;color:#d3e4dd;font-size:13px}footer a{color:#d4e9dd}footer p{color:#aac6ba}.form{display:grid;gap:15px}.form label{display:grid;gap:5px;font-size:13px;font-weight:700}.form input,.form select,.form textarea{width:100%;padding:11px;border:1px solid #c9d8d1;border-radius:5px;font:inherit;background:white}.form input:focus,.form textarea:focus{outline:2px solid #468e7e}.form .btn{justify-self:start}.adminhead{display:flex;justify-content:space-between;align-items:center}.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.panel{background:white;border:1px solid #e1e9e4;padding:25px;border-radius:9px}.panel h2{font-size:28px}.secondary{padding:10px 15px;border:1px solid #cddbd4;background:white;border-radius:6px}.smallrecord{border-bottom:1px solid #eee;padding:5px 0}@media(max-width:850px){.head{align-items:flex-start;flex-direction:column;padding-top:22px;padding-bottom:22px}nav{gap:14px}.intro,.admin-grid{grid-template-columns:1fr;gap:25px}.cards{grid-template-columns:1fr}.news{grid-template-columns:1fr}.hero{padding:65px 0}.pagehero h1{font-size:40px}.foot{flex-direction:column}.record{align-items:flex-start;flex-direction:column}}
/* Accessibility: visible keyboard focus */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
    outline: 3px solid #d69b25;
    outline-offset: 4px;
}

/* Accessibility: respect reduced-motion preferences */
@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        scroll-behavior: auto !important;
        animation-duration: 0.01ms !important;
        transition-duration: 0.01ms !important;
    }
}

/* Accessibility: improved contrast for smaller text */
.brand small {
    color: #385451;
}

.eyebrow.dark {
    color: #285c52;
}

.note {
    color: #385451;
}

.tile p,
.news p {
    color: #385451;
}

/* Keep ordinary text readable on the light page background */
.intro p,
.record p,
.record small {
    color: #385451;
}

/* Accessibility: skip navigation */
.skip-link {
    position: absolute;
    top: -100px;
    left: 16px;
    z-index: 9999;
    background: #ffffff;
    color: #153e3b;
    padding: 12px 18px;
    border: 3px solid #d69b25;
    border-radius: 5px;
    font-weight: 800;
}

.skip-link:focus {
    top: 12px;
}

/* Administration dashboard navigation */
.admin-card {
    display: block;
    text-decoration: none;
    color: #203b3b;
    transition: transform 0.15s ease, box-shadow 0.15s ease;
}

.admin-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 8px 22px rgba(0, 0, 0, 0.12);
}

.admin-card strong {
    color: #1c5149;
    display: inline-block;
    margin-top: 12px;
}

.admin-card:focus-visible {
    outline: 3px solid #d69b25;
    outline-offset: 4px;
}

/* Administration record tables */
.admin-table {
    width: 100%;
    border-collapse: collapse;
    margin-top: 16px;
}

.admin-table th,
.admin-table td {
    padding: 12px;
    text-align: left;
    border-bottom: 1px solid #d3e4dd;
    vertical-align: top;
}

.admin-table th {
    background: #eaf3ed;
    color: #203b3b;
    font-weight: 700;
}

.admin-table tr:hover {
    background: #fbfcfa;
}

/* Admin meeting edit links */
.admin-edit-link {
    display: inline-block;
    padding: 7px 14px;
    background: #1c5149;
    color: #ffffff;
    border-radius: 6px;
    font-weight: 700;
    text-decoration: none;
}

.admin-edit-link:hover {
    background: #103f41;
    color: #ffffff;
}

.admin-edit-link:focus-visible {
    outline: 3px solid #d69b25;
    outline-offset: 4px;
}
