:root{font-family:system-ui,sans-serif;color:#173b33;background:#f4f2dc;font-synthesis:none;scroll-behavior:smooth}*{box-sizing:border-box}body{margin:0}button,input,textarea{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #ec5f89;outline-offset:3px}a{color:inherit}.site{max-width:1600px;margin:auto}.topbar{height:94px;padding:0 6%;display:flex;align-items:center;justify-content:space-between;background:#173b33;color:#fff}.brand{font-family:Outfit,sans-serif;font-weight:900;line-height:.9;letter-spacing:-.03em;font-size:19px;text-decoration:none;display:flex;align-items:center;gap:12px}.brand-icon{font-size:38px;color:#dcf36b}nav{display:flex;gap:32px;align-items:center}nav a{text-decoration:none;font-weight:700}.small-button,.button{border:2px solid #173b33;border-radius:4px;padding:13px 20px;font-weight:800;transition:transform .15s,background .15s}.small-button{background:#dff56f;color:#173b33}.button:hover,.small-button:hover{transform:translateY(-2px)}.button.dark{background:#173b33;color:#fff}.button.outline{background:transparent;color:#173b33}.hero{background:#dff36d;display:grid;grid-template-columns:1fr 1fr;min-height:570px;overflow:hidden}.hero-copy{padding:7% 7% 8% 12%;align-self:center}.ticket{font-size:.75rem;letter-spacing:.13em;font-weight:800}h1,h2,h3{font-family:Outfit,system-ui,sans-serif;line-height:1;letter-spacing:-.035em;margin:0}h1{font-size:clamp(3.2rem,6.3vw,6.8rem);font-weight:900}h1 span{color:#4b6e21}.hero-copy>p:not(.ticket){font-size:1.2rem;line-height:1.55;max-width:31rem;margin:25px 0}.hero-art{position:relative;display:grid;place-items:center;min-height:400px}.plate{width:min(70%,390px);aspect-ratio:1;border:18px solid #f8f6df;border-radius:50%;background:#c7b0ec;box-shadow:0 15px #173b33;display:flex;flex-direction:column;justify-content:center;align-items:center;transform:rotate(8deg);text-align:center}.plate strong{font:900 clamp(2rem,4vw,4rem)/.95 Outfit,sans-serif}.plate span{font-size:clamp(2rem,4vw,3rem)}.sun{position:absolute;top:11%;left:10%;font-size:6rem;color:#ea638a}.art-note{position:absolute;bottom:15%;right:7%;font-weight:900;transform:rotate(-8deg)}.ticker{background:#e8a9c5;display:flex;align-items:center;gap:24px;padding:18px 6%;font-size:.95rem}.ticker strong{white-space:nowrap}.ticker span{flex:1}.ticker button,.link-button{background:none;border:0;text-decoration:underline;color:inherit;font-weight:700;padding:4px}.feedback{margin:20px 6%;padding:16px;background:#dff36d;display:flex;justify-content:space-between}.feedback.error{background:#ffe0dc}.feedback button{border:0;background:none;font-size:1.3rem}.section{padding:90px 6%;scroll-margin-top:20px}.section-head{display:flex;justify-content:space-between;align-items:end;gap:28px;margin-bottom:32px}h2{font-size:clamp(2.6rem,5vw,4.7rem)}.section-head p{font-size:1.1rem;line-height:1.5;max-width:40rem}.event-list{border-top:2px solid #173b33}.event{display:grid;grid-template-columns:170px 1fr;gap:28px;padding:28px 0;border-bottom:1px solid #72887b}.event-date{font:800 1.5rem Outfit,sans-serif;display:flex;flex-direction:column;gap:8px}.event-date small{font:700 .72rem DM Sans,sans-serif;letter-spacing:.08em}.event-kind{font-size:.75rem;letter-spacing:.1em;font-weight:800}.event h3{font-size:2rem;margin:10px 0}.event-content p{line-height:1.5;max-width:70ch}.meta{font-weight:700}.participants{font-size:.9rem}.actions{display:flex;align-items:center;gap:20px;margin-top:18px}.participant{display:inline-block;margin:4px 8px 4px 0;vertical-align:top}.participant summary{cursor:pointer;text-decoration:underline}.participant form{padding:10px;background:#fff;max-width:220px}.form-section,.signup-section{background:#c8b7ed}.signup-section{background:#e8a9c5}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;max-width:900px}.form-grid .full,.form-note{grid-column:1/-1}label{display:flex;flex-direction:column;gap:8px;font-weight:700}label span{font-weight:400}input,textarea{width:100%;border:2px solid #173b33;border-radius:3px;padding:12px;background:#fff;color:#173b33}textarea{resize:vertical}.form-grid button{justify-self:start}.board{background:#e8a9c5}.board-stamp{border:3px solid #173b33;border-radius:50%;padding:24px;font-weight:900;text-align:center;transform:rotate(12deg)}.board-form{display:grid;grid-template-columns:1fr 2fr auto;align-items:end;gap:20px;border-top:2px solid #173b33;padding:28px 0}.messages{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.message{background:#f4f2dc;padding:22px;min-width:0}.message div{display:flex;justify-content:space-between;gap:10px}.message time{font-size:.8rem}.message p{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.5}.message summary{cursor:pointer;font-weight:700;text-decoration:underline}.message-edit{display:grid;gap:12px;margin:12px 0}footer{background:#173b33;color:#f4f2dc;padding:45px 6%;display:flex;justify-content:space-between;align-items:center;gap:20px}footer strong{font:900 1.4rem Outfit,sans-serif}.admin{background:#dff36d}.contact{padding:16px 0;border-bottom:1px solid #173b33}.contact p{overflow-wrap:anywhere}@media(max-width:750px){.topbar{height:auto;min-height:82px;padding:15px 5%}.brand{font-size:15px}.brand-icon{font-size:29px}nav{gap:14px}nav a{font-size:.85rem}nav .small-button{display:none}.hero{grid-template-columns:1fr}.hero-copy{padding:60px 6% 20px}.hero-art{min-height:310px}.plate{width:240px;border-width:12px}.sun{font-size:4rem;left:13%}.art-note{right:10%}.ticker{align-items:flex-start;flex-wrap:wrap;gap:10px}.ticker span{min-width:75%}.section{padding:65px 6%}.section-head{align-items:start;flex-direction:column}.event{grid-template-columns:85px 1fr;gap:14px}.event-date{font-size:1.1rem}.event h3{font-size:1.6rem}.form-grid,.board-form,.messages{grid-template-columns:1fr}.form-grid .full,.form-note{grid-column:auto}.board-stamp{display:none}footer{align-items:flex-start;flex-direction:column}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
