:root{--green:#1d4a38;--green-dark:#143528;--paper:#fbfaf7;--surface:#fff;--ink:#1c1c1a;--muted:#56554f;--rule:#e0ded6;--accent:#b7791f;--ok:#2f6f4f;--warn:#9a6700;--fail:#b42318}*{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:system-ui,-apple-system,Segoe UI,sans-serif;line-height:1.6}h1,h2,h3{font-family:Georgia,Times New Roman,serif;line-height:1.25}a{color:var(--green)}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.skip-link{position:absolute;left:-9999px;top:0;background:var(--green);color:#fff;padding:10px 16px;z-index:100}.skip-link:focus{left:0}.wrap{max-width:1040px;margin:0 auto;padding:0 20px}.site-header{background:var(--green);color:#fff}.header-row{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-top:14px;padding-bottom:14px}.brand{font-family:Georgia,serif;font-size:1.5rem;font-weight:700;color:#fff;text-decoration:none}.brand span{color:#e8c987}.site-header nav{display:flex;gap:18px;align-items:center;flex-wrap:wrap}.site-header nav a{color:#eef3ef;font-size:.92rem;text-decoration:none}.site-header nav a:hover{text-decoration:underline}.nav-cta{background:#e8c987;color:var(--green-dark)!important;padding:7px 16px;border-radius:6px;font-weight:600}.hero{background:var(--green);color:#fff;padding:48px 0 56px}.hero h1{font-size:clamp(1.8rem,4vw,2.6rem);margin:0 0 14px;max-width:22ch}.hero p{font-size:1.1rem;max-width:56ch;color:#d9e4dc;margin:0 0 24px}.btn{display:inline-block;background:#e8c987;color:var(--green-dark);font-weight:700;padding:12px 24px;border-radius:8px;text-decoration:none;border:none;font-size:1rem;cursor:pointer}.btn.secondary{background:transparent;color:#fff;border:2px solid hsla(0,0%,100%,.5);margin-left:10px}.section{padding:44px 0}.section h2{font-size:1.6rem;margin:0 0 8px}.section .lede{color:var(--muted);max-width:62ch;margin:0 0 24px}.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));grid-gap:16px;gap:16px}.card{background:var(--surface);border:1px solid var(--rule);border-radius:10px;padding:20px 22px}.card h3{margin:0 0 6px;font-size:1.15rem}.card p{color:var(--muted);font-size:.93rem;margin:0 0 12px}.card a{font-weight:600}.free-tag{display:inline-block;background:#e7f0ea;color:var(--green);font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:2px 9px;border-radius:999px;margin-bottom:10px}form.stack{display:grid;grid-gap:16px;gap:16px;max-width:560px}label{font-weight:600;margin-bottom:4px}.hint,label{display:block}.hint{font-weight:400;color:var(--muted);font-size:.85rem}input[type=date],input[type=email],input[type=text],input[type=time],input[type=url],select,textarea{width:100%;padding:10px 12px;border:1.5px solid var(--rule);border-radius:6px;font:inherit;background:#fff;color:var(--ink)}textarea{min-height:120px}.result{background:var(--surface);border:1px solid var(--rule);border-left:5px solid var(--green);border-radius:8px;padding:18px 22px;margin-top:20px}.result .big-date{font-family:Georgia,serif;font-size:1.5rem;font-weight:700;color:var(--green)}.day-list{list-style:none;margin:12px 0 0;padding:0;font-size:.92rem}.day-list li{padding:4px 0;border-bottom:1px dashed var(--rule);display:flex;justify-content:space-between;gap:12px}.tag{font-size:.74rem;font-weight:700;padding:1px 9px;border-radius:999px}.tag.count{background:#e7f0ea;color:var(--ok)}.tag.skip{background:#fdf1d7;color:var(--warn)}.fine{font-size:.83rem;color:var(--muted)}.check-list{list-style:none;margin:16px 0;padding:0}.check-list li{display:flex;gap:12px;align-items:baseline;padding:10px 0;border-bottom:1px solid var(--rule)}.check-badge{flex-shrink:0;font-size:.74rem;font-weight:700;padding:2px 10px;border-radius:999px;min-width:52px;text-align:center}.check-badge.pass{background:#e7f0ea;color:var(--ok)}.check-badge.warn{background:#fdf1d7;color:var(--warn)}.check-badge.fail{background:#fbe9e7;color:var(--fail)}.document{background:#fff;border:1px solid var(--rule);max-width:720px;margin:32px auto;padding:48px 56px;font-family:Georgia,serif}.document h1{text-align:center;font-size:1.3rem;letter-spacing:.05em;text-transform:uppercase;margin:0 0 4px}.document .council-name{text-align:center;font-size:1.6rem;margin:0 0 24px}.document p{margin:0 0 14px}.document ol{padding-left:24px}.document ol li{margin-bottom:10px}.document .signature{margin-top:36px}.doc-toolbar{max-width:720px;margin:20px auto 0;display:flex;gap:12px;align-items:center}@media print{.doc-toolbar,.site-footer,.site-header,.skip-link{display:none!important}.document{border:none;margin:0;padding:0;max-width:none}body{background:#fff}}.doc-list{list-style:none;margin:0;padding:0}.doc-list li{background:var(--surface);border:1px solid var(--rule);border-radius:8px;padding:14px 18px;margin-bottom:10px}.doc-list .when{font-weight:700}.doc-list .links{margin-top:6px;display:flex;gap:16px;flex-wrap:wrap;font-size:.92rem}.notice-box{background:#fdf1d7;border:1px solid #ecd9a8;border-radius:8px;padding:12px 16px;font-size:.9rem;margin:16px 0}details.minutes-editor{margin-top:10px}details.minutes-editor summary{cursor:pointer;font-weight:600;color:var(--green)}.price-row{display:flex;gap:16px;flex-wrap:wrap}.price-card{background:var(--surface);border:1px solid var(--rule);border-radius:10px;padding:22px;flex:1 1;min-width:220px}.price-card .amount{font-family:Georgia,serif;font-size:2rem;font-weight:700}.price-card .amount small{font-size:.9rem;color:var(--muted);font-weight:400}.site-footer{background:var(--green-dark);color:#c4d4c9;margin-top:48px;padding:28px 0 40px;font-size:.85rem}