*{box-sizing:border-box}
body{margin:0;background:#faf7f2;color:#302b28;font:16px/1.6 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
a{color:inherit}.hero{min-height:72vh;display:grid;place-items:center;text-align:center;background:linear-gradient(#0005,#0005),url('/hero.jpg') center/cover,#ff2194;color:white}
.hero nav,.topnav{position:absolute;top:0;left:0;right:0;display:flex;justify-content:center;gap:2rem;padding:1.25rem;text-decoration:none}
.hero-content{padding:6rem 1.5rem}
.eyebrow{letter-spacing:.18em;font-size:.78rem}
.hero h1,h1{font-family:Georgia,serif;font-weight:400;font-size:clamp(3rem,9vw,6rem);line-height:1.05;margin:.4rem 0}
.date{font-size:1.3rem}
.button{display:inline-block;border:0;border-radius:999px;padding:.8rem 1.5rem;background:#302b28;color:white;text-decoration:none;cursor:pointer}
.secondary{background:transparent;color:#302b28;border:1px solid #b9afa7}
main{max-width:1100px;margin:auto;padding:4rem 1.25rem}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}
.cards article,.panel,.instructions{background:white;border:1px solid #e7dfd8;border-radius:18px;padding:2rem}
.instructions{margin-top:1.25rem;text-align:center}
.topnav{position:static;background:#fff;justify-content:space-between;border-bottom:1px solid #e7dfd8}
.form-page{max-width:720px}
.panel h1{font-size:clamp(2.4rem,7vw,4rem)}
label,legend{font-weight:600;display:block;margin-top:1rem}
input,select{width:100%;padding:.85rem;border:1px solid #cfc5bd;border-radius:10px;background:#fff;font:inherit}
fieldset{border:0;padding:0;margin:1.5rem 0}
fieldset label{font-weight:400}
.results{margin-top:.75rem}
.result{width:100%;text-align:left;border:1px solid #ddd3cb;background:#fff;padding:1rem;border-radius:10px;margin:.5rem 0;cursor:pointer}
.admin-page{max-width:1300px}
.admin-head,.toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.5rem}
.admin-head h1{font-size:3rem}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:1.5rem}
.stat{background:white;border:1px solid #e7dfd8;padding:1.25rem;border-radius:14px}
.stat strong{font-size:2rem;display:block}
.toolbar{justify-content:flex-start}
.toolbar input{max-width:350px}
.table-wrap{overflow:auto;background:#fff;border:1px solid #e7dfd8;border-radius:14px}
table{width:100%;border-collapse:collapse}
th,td{text-align:left;padding:1rem;border-bottom:1px solid #eee}
footer{text-align:center;padding:3rem;color:#776e68}
@media(max-width:700px){.cards,.stats{grid-template-columns:1fr}
.admin-head,.toolbar{align-items:stretch;flex-direction:column}
.hero nav{justify-content:space-around}.hero{min-height:65vh}}
