:root{--parchment:#fbf6ec;--leaf:#fffdf8;--teal:#0f4c4a;--teal-2:#1f6b67;--saffron:#c8902c;--rule:#e6dcc6;--text:#2a2621;--muted:#6f675b}
*{box-sizing:border-box}body{margin:0;background:var(--parchment);color:var(--text);font:17px/1.75 "Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif}
a{color:var(--teal-2);text-decoration-color:var(--saffron);text-underline-offset:3px}a:hover{color:var(--saffron)}
.almanac-frame{max-width:980px;margin:0 auto;padding:0 18px}
.almanac-top{text-align:center;padding:34px 0 18px;border-bottom:1px solid var(--rule)}
.crescentmark{display:inline-flex;align-items:center;gap:12px;font:600 26px/1.1 "Iowan Old Style",Georgia,serif;color:var(--teal);text-decoration:none;letter-spacing:.01em}
.crescentmark::before{content:"";width:24px;height:24px;border-radius:50%;box-shadow:-6px 0 0 0 var(--saffron);transform:translateX(6px)}
.horizon-nav{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 22px;margin-top:14px;font:500 14px/1.6 "Avenir Next","Segoe UI",Helvetica,Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase}
.horizon-nav a{color:var(--muted);text-decoration:none}.horizon-nav a:hover{color:var(--teal)}
.sighting-lede{max-width:640px;margin:0 auto;text-align:center;padding:50px 0 36px}
.sighting-lede h1{font:600 clamp(30px,5vw,48px)/1.12 "Iowan Old Style",Georgia,serif;color:var(--teal);margin:0 0 14px}
.sighting-lede p{margin:0;color:var(--muted)}
.leafgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;padding:0 0 90px}
.leafitem{display:flex;flex-direction:column;background:var(--leaf);border:1px solid var(--rule);border-radius:10px;overflow:hidden;text-decoration:none;color:var(--text)}
.leafitem:hover{border-color:var(--saffron);transform:translateY(-2px)}
.monthstrip{background:var(--teal);color:#f4ead4;font:600 12px/1 "Avenir Next","Segoe UI",Helvetica,Arial,sans-serif;letter-spacing:.16em;text-transform:uppercase;padding:9px 16px;display:flex;justify-content:space-between}
.daynumeral{font:600 44px/1 "Iowan Old Style",Georgia,serif;color:var(--saffron);padding:18px 16px 0}
.leafitem h2{font:600 19px/1.3 "Iowan Old Style",Georgia,serif;margin:8px 16px 6px;color:var(--teal)}
.leafitem p{margin:0 16px 20px;font-size:14.5px;line-height:1.55;color:var(--muted)}
.agendasheet{max-width:690px;margin:44px auto 90px;background:var(--leaf);border:1px solid var(--rule);border-radius:12px;padding:34px 38px;border-top:5px solid var(--saffron)}
.duedate-tag{font:600 12px/1.5 "Avenir Next","Segoe UI",Helvetica,Arial,sans-serif;letter-spacing:.16em;text-transform:uppercase;color:var(--saffron)}
.agendasheet h1{font:600 clamp(27px,4.4vw,40px)/1.15 "Iowan Old Style",Georgia,serif;color:var(--teal);margin:8px 0 14px}
.eve-lede{font-size:18.5px;font-style:italic;color:var(--muted);margin:0 0 26px}
.agendasheet h2{font:600 22px/1.3 "Iowan Old Style",Georgia,serif;color:var(--teal);margin:32px 0 8px}
.agendasheet ul,.agendasheet ol{padding-left:24px}.agendasheet li{margin:6px 0}
ul.tickbox-list{list-style:none;padding-left:0}ul.tickbox-list li{position:relative;padding-left:30px}ul.tickbox-list li::before{content:"";position:absolute;left:2px;top:7px;width:14px;height:14px;border:1.5px solid var(--teal-2);border-radius:3px}
.illustration-slip{background:#f7efdd;border-left:4px solid var(--saffron);padding:12px 16px;font-size:15.5px}
.alarmnote{display:block;background:#e8f0ef;border:1px solid #c5d9d6;border-radius:8px;padding:14px 18px;font-size:15.5px;margin-top:28px}
.stampdate{margin-top:34px;font:500 13px/1.5 "Avenir Next","Segoe UI",Helvetica,Arial,sans-serif;letter-spacing:.06em;color:var(--muted)}
.footcalendar{border-top:1px solid var(--rule);color:var(--muted);font:14px/1.6 "Avenir Next","Segoe UI",Helvetica,Arial,sans-serif}
.footcalendar .almanac-frame{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 22px;padding-top:22px;padding-bottom:32px}
@media(max-width:860px){.leafgrid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){.leafgrid{grid-template-columns:1fr}.agendasheet{padding:24px 16px;margin-top:24px;border-radius:8px}.sighting-lede{padding-top:32px}}