:root{--surface: #f8f9fd;--surface-raised: #ffffff;--ink: #1b2340;--ink-muted: #545c78;--on-cornflower: #141a2e;--cornflower: #6495ed;--cornflower-deep: #3557b7;--cornflower-tint: #dce6fb;--butter: #f7e39b;--butter-tint: #fcf5d9;--line: #dde2f0;--font-display: "fonnts.com Ivy Presto Headline", "fonnts.com Ivy Presto", "DM Serif Display", Georgia, serif;--font-sans: "Bricolage Grotesque", "Bricolage Grotesque Variable Font opsz,wdth,wght", system-ui, sans-serif;--font-script: "Biro Script reduced", "Biro Script", "Caveat", cursive;--space-1: 4px;--space-2: 8px;--space-3: 16px;--space-4: 24px;--space-5: 40px;--space-6: 64px;--radius-s: 6px;--radius-l: 20px;--radius-pill: 999px}@font-face{font-family:"fonnts.com Ivy Presto Headline";src:url(/fonts/fonnts.com-Ivy-Presto-Headline-Light.otf) format("opentype");font-weight:300;font-display:swap}@font-face{font-family:"fonnts.com Ivy Presto Headline";src:url(/fonts/fonnts.com-Ivy-Presto-Headline-Semi-Bold.otf) format("opentype");font-weight:600;font-display:swap}@font-face{font-family:Biro Script reduced;src:url(/fonts/Biro_Script_reduced.otf) format("opentype");font-weight:400;font-display:swap}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--surface);color:var(--ink);font-family:var(--font-sans);font-size:17px;line-height:1.6;font-optical-sizing:auto}a{color:var(--cornflower-deep);text-decoration-thickness:1px;text-underline-offset:3px}img{max-width:100%;display:block}button,input,select,textarea{font:inherit;color:inherit}h1,h2,h3,h4{margin:0;font-weight:300;font-family:var(--font-display);letter-spacing:-.005em}p{margin:0}.display-xl{font:600 clamp(40px,7vw,64px)/1.02 var(--font-display)}.display-l{font:300 clamp(34px,5vw,44px)/1.08 var(--font-display)}.heading{font:300 28px/1.2 var(--font-display)}.body-l{font:400 19px/1.6 var(--font-sans)}.body{font:400 17px/1.6 var(--font-sans)}.body-s{font:400 15px/1.5 var(--font-sans)}.label{font:600 13px/1.3 var(--font-sans);text-transform:uppercase;letter-spacing:.08em}.script{font:400 32px/1.1 var(--font-script);color:var(--cornflower-deep)}.muted{color:var(--ink-muted)}.wrap{width:min(1080px,100% - 2 * var(--space-3));margin-inline:auto}.wrap-narrow{width:min(760px,100% - 2 * var(--space-3));margin-inline:auto}.section{padding-block:var(--space-6)}.stack>*+*{margin-top:var(--space-3)}.stack-l>*+*{margin-top:var(--space-5)}.row{display:flex;gap:var(--space-2);flex-wrap:wrap;align-items:center}.between{justify-content:space-between}.awning{height:14px;background:repeating-linear-gradient(90deg,var(--cornflower) 0 28px,var(--surface-raised) 28px 56px);border-bottom:1px solid var(--line)}.awning:after{content:"";display:block;height:8px;background:repeating-linear-gradient(90deg,transparent 0 28px,var(--surface-raised) 28px 56px)}header.site{padding:var(--space-4) 0}header.site .wrap{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3)}.brand{display:inline-flex;align-items:center;gap:12px;color:var(--ink);text-decoration:none}.brand svg{height:34px;width:auto}.brand .brand-sub{font:600 13px/1 var(--font-sans);text-transform:uppercase;letter-spacing:.1em;color:var(--cornflower-deep);padding-left:12px;border-left:1px solid var(--line)}footer.site{padding:var(--space-6) 0 var(--space-5);color:var(--ink-muted)}footer.site .wrap{display:flex;justify-content:space-between;flex-wrap:wrap;gap:var(--space-3);align-items:center}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 22px;border-radius:var(--radius-pill);border:1px solid transparent;font:600 15px/1.2 var(--font-sans);text-decoration:none;cursor:pointer;white-space:nowrap;transition:background-color .15s ease,border-color .15s ease,color .15s ease}.btn:disabled{opacity:.55;cursor:default}.btn-primary{background:var(--cornflower);color:var(--on-cornflower)}.btn-primary:hover{background:#5588e3}.btn-butter{background:var(--butter);color:var(--on-cornflower)}.btn-butter:hover{background:#f2db85}.btn-ghost{background:transparent;color:var(--ink);border-color:var(--line)}.btn-ghost:hover{background:var(--surface-raised);border-color:var(--cornflower)}.btn-ink{background:var(--ink);color:var(--surface)}.btn-ink:hover{background:#2a3458}.btn-sm{padding:8px 16px;font-size:14px}.btn-danger{background:transparent;color:#a3362f;border-color:#e7c5c1}.btn-danger:hover{background:#fbeceb}.chip{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:var(--radius-pill);font:600 12px/1 var(--font-sans);text-transform:uppercase;letter-spacing:.08em;background:var(--cornflower-tint);color:var(--cornflower-deep)}.chip-butter{background:var(--butter);color:var(--on-cornflower)}.chip-ink{background:var(--ink);color:var(--surface)}.chip-outline{background:transparent;border:1px solid var(--line);color:var(--ink-muted)}.card{background:var(--surface-raised);border:1px solid var(--line);border-radius:var(--radius-l);padding:var(--space-4);overflow:hidden}.card-tint{background:var(--cornflower-tint);border-color:transparent}.card-butter{background:var(--butter-tint);border-color:transparent}.card-ink{background:var(--ink);color:var(--surface);border-color:transparent}.card-ink .muted{color:#a9b1cc}.hero{padding:var(--space-5) 0 var(--space-6)}.hero-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:var(--space-5);align-items:end}.hero-grid>*{min-width:0}@media (max-width: 820px){.hero-grid{grid-template-columns:1fr}}.sun{width:120px;aspect-ratio:1;border-radius:50%;background:var(--butter);display:grid;place-items:center;font:400 26px/1 var(--font-script);color:var(--cornflower-deep);text-align:center;transform:rotate(-8deg)}.cabanas{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--space-4)}.cabana{display:flex;flex-direction:column;text-decoration:none;color:inherit;padding:0}.cabana-top{height:18px}.cabana-top.cornflower{background:repeating-linear-gradient(90deg,var(--cornflower) 0 22px,var(--surface-raised) 22px 44px)}.cabana-top.butter{background:repeating-linear-gradient(90deg,var(--butter) 0 22px,var(--surface-raised) 22px 44px)}.cabana-top.ink{background:repeating-linear-gradient(90deg,var(--ink) 0 22px,var(--surface-raised) 22px 44px)}.cabana-body{padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-2);flex:1}.cabana-foot{padding:0 var(--space-4) var(--space-4);display:flex;justify-content:space-between;align-items:center;gap:var(--space-2)}.cabana:hover{border-color:var(--cornflower)}.events{display:flex;flex-direction:column}.event-row{display:grid;grid-template-columns:84px 1fr auto;gap:var(--space-4);align-items:start;padding:var(--space-4) 0;border-top:1px solid var(--line);text-decoration:none;color:inherit}.event-row:last-child{border-bottom:1px solid var(--line)}@media (max-width: 640px){.event-row{grid-template-columns:64px 1fr}.event-row .event-actions{grid-column:2}}.date-badge{text-align:center;padding:10px 0;border-radius:var(--radius-s);background:var(--cornflower-tint);color:var(--cornflower-deep)}.date-badge .d{font:600 30px/1 var(--font-display);color:var(--ink)}.date-badge .m{font:600 12px/1.3 var(--font-sans);text-transform:uppercase;letter-spacing:.1em;margin-top:4px}.date-badge.past{background:var(--surface);color:var(--ink-muted)}.date-badge.past .d{color:var(--ink-muted)}.event-title{font:300 24px/1.2 var(--font-display);color:var(--ink)}.event-meta{color:var(--ink-muted);font-size:15px}.follow-panel{display:grid;gap:var(--space-3)}.follow-options{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2)}.follow-options .btn{white-space:normal;padding-inline:14px}.feed-link{display:flex;gap:var(--space-2);align-items:center;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius-s);background:var(--surface-raised);font-size:14px}.feed-link{min-width:0}.feed-link code{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;color:var(--ink-muted)}.event-hero{display:grid;grid-template-columns:1fr;gap:var(--space-4)}.event-image{border-radius:var(--radius-l);overflow:hidden;border:1px solid var(--line)}.event-image img{width:100%;height:auto}.detail-grid{display:grid;grid-template-columns:120px 1fr;gap:var(--space-2) var(--space-3);align-items:baseline}.detail-grid dt{color:var(--ink-muted);font-size:14px;text-transform:uppercase;letter-spacing:.06em;font-weight:600}.detail-grid dd{margin:0}.prose{white-space:pre-wrap}.prose a{word-break:break-all}.form{display:grid;gap:var(--space-3)}.form-row{display:grid;gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.field{display:grid;gap:6px}.field label,.field .lbl{font:600 13px/1.3 var(--font-sans);text-transform:uppercase;letter-spacing:.08em;color:var(--ink-muted)}.field input[type=text],.field input[type=url],.field input[type=date],.field input[type=time],.field input[type=number],.field input[type=password],.field select,.field textarea{padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius-s);background:var(--surface-raised);width:100%}.field textarea{min-height:120px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--cornflower);outline-offset:0;border-color:transparent}.check{display:inline-flex;gap:8px;align-items:center;font-size:15px}.help{font-size:13px;color:var(--ink-muted)}.notice{padding:12px 16px;border-radius:var(--radius-s);background:var(--butter-tint);font-size:15px}.notice-error{background:#fbeceb;color:#7a2a24}.notice-ok{background:#e6f4ea;color:#1f5b31}.admin-nav{display:flex;gap:var(--space-2);flex-wrap:wrap}.admin-nav a{padding:8px 14px;border-radius:var(--radius-pill);text-decoration:none;color:var(--ink);border:1px solid var(--line);font-weight:600;font-size:14px}.admin-nav a.active{background:var(--ink);color:var(--surface);border-color:var(--ink)}.table{width:100%;border-collapse:collapse;font-size:15px}.table th{text-align:left;font:600 12px/1.3 var(--font-sans);text-transform:uppercase;letter-spacing:.08em;color:var(--ink-muted);padding:10px 8px;border-bottom:1px solid var(--line)}.table td{padding:12px 8px;border-bottom:1px solid var(--line);vertical-align:top}.table tr:hover td{background:var(--surface-raised)}.stat{display:grid;gap:2px}.stat b{font:600 34px/1 var(--font-display)}.stat span{font-size:13px;color:var(--ink-muted);text-transform:uppercase;letter-spacing:.08em;font-weight:600}.daypicker{display:flex;gap:6px;flex-wrap:wrap}.daypicker button{padding:8px 10px;border-radius:var(--radius-pill);border:1px solid var(--line);background:var(--surface-raised);font-weight:600;font-size:13px;cursor:pointer}.daypicker button.on{background:var(--cornflower);border-color:var(--cornflower);color:var(--on-cornflower)}.empty{padding:var(--space-5);text-align:center;color:var(--ink-muted);border:1px dashed var(--line);border-radius:var(--radius-l)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.spin{display:inline-block;width:18px;height:18px;border:2px solid var(--line);border-top-color:var(--cornflower);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width: 560px){header.site .btn{display:none}.brand svg{height:28px}.wrap,.wrap-narrow{width:calc(100% - 2 * var(--space-3))}}.tz-pill{position:relative;display:inline-flex;align-items:center;gap:10px;padding:8px 14px;border:1px solid var(--line);border-radius:var(--radius-s);background:var(--surface-raised);cursor:pointer;color:var(--ink);white-space:nowrap}.tz-pill:hover{border-color:var(--cornflower)}.tz-pill .tz-text{display:grid;line-height:1.15}.tz-pill .tz-label{font-size:12px;color:var(--ink-muted)}.tz-pill .tz-value{font-size:14px;font-weight:600}.tz-pill select{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.when-row{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-3);flex-wrap:wrap}.when{display:grid;gap:6px}.when-line{display:flex;align-items:center;gap:10px;font-size:19px}.when-line svg{color:var(--cornflower-deep);flex:none}.when-sub{color:var(--ink-muted);padding-left:30px;font-size:15px}.where-line{display:flex;align-items:center;gap:10px;font-size:17px}.where-line svg{color:var(--cornflower-deep);flex:none}.where-line a{font-weight:600}.btn-lg{padding:16px 28px;font-size:17px}.atc{position:relative;display:inline-block}.atc-menu{position:absolute;top:calc(100% + 8px);left:0;z-index:20;min-width:220px;background:var(--surface-raised);border:1px solid var(--line);border-radius:var(--radius-l);padding:8px;display:grid}.atc-right .atc-menu{left:auto;right:0}.atc-item{display:flex;align-items:center;gap:12px;white-space:nowrap;padding:11px 14px;border-radius:12px;text-decoration:none;color:var(--ink);font-weight:600;font-size:15px}.atc-item:hover{background:var(--cornflower-tint)}.atc-note{font-weight:400;font-size:12px;color:var(--ink-muted)}.atc-block{padding:var(--space-4);border-radius:var(--radius-l);background:var(--cornflower-tint);display:flex;align-items:center;gap:var(--space-4);flex-wrap:wrap}.atc-block .help{margin:0;flex:1;min-width:220px}@media (max-width: 640px){.atc-big,.atc-big .btn{width:100%}.atc-menu{position:static;margin-top:8px;min-width:0}.event-row{grid-template-columns:64px 1fr}.event-row .event-actions{grid-column:2}}.atc-icon{width:26px;height:26px;border-radius:50%;display:inline-grid;place-items:center;color:#fff;font:700 12px/1 var(--font-sans);letter-spacing:-.02em;flex:none}.follow-link{display:inline-flex;align-items:center;gap:8px;font-weight:600}
