@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Fraunces:opsz,wght@9..144,500;9..144,600&display=swap";:root{--cream:#f6efdc;--paper:#fffaf0;--ink:#354239;--sage:#a8b99b;--butter:#e9da91;--coral:#e6a08d;--blue:#b9cde1;--lav:#d8cbe0;--terr:#bf6d50;--line:#d6ceb7;--muted:#70786f}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#ebe5d7;color:var(--ink);font-family:DM Sans,sans-serif}.header,.hero,.section,.locationBand,.organize,footer{max-width:1160px;margin:auto}.header{padding:20px 34px 13px;border-bottom:1px solid var(--ink);background:var(--cream);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px}.brand{text-align:center;font:600 26px Fraunces,serif}.brand small{display:block;font:8px DM Sans;letter-spacing:2px;text-transform:uppercase}.header nav{display:flex;gap:22px;font-size:10px;text-transform:uppercase;letter-spacing:1.4px}.header nav a{color:inherit;text-decoration:none}.actions{display:flex;justify-content:flex-end;gap:7px}.actions button{border:1px solid var(--line);background:var(--paper);border-radius:20px;padding:8px 11px;font-size:10px}.hero{display:grid;grid-template-columns:1.08fr .92fr;min-height:470px;border-bottom:1px solid var(--ink)}.heroCopy{padding:62px 44px;display:flex;flex-direction:column;justify-content:center}.eyebrow{font-size:10px;letter-spacing:2px;text-transform:uppercase;color:var(--terr);font-weight:700}.hero h1,h2,h3{font-family:Fraunces,serif}.hero h1{font-size:clamp(54px,7vw,84px);line-height:.91;letter-spacing:-3.5px;margin:15px 0 20px}.heroCopy p,.sectionHead p,.locationBand p,.organize p{color:var(--muted);line-height:1.7;font-size:14px}.search{display:flex;background:var(--paper);border:1px solid var(--line);border-radius:7px;padding:5px;max-width:540px;margin-top:20px}.search input{border:0;background:transparent;outline:0;padding:12px;flex:1}.search button,.primary{border:0;background:var(--ink);color:#fff;border-radius:6px;padding:11px 17px;font-weight:600}.heroArt{background:var(--sage);position:relative;display:grid;place-items:center;overflow:hidden}.sun{position:absolute;width:130px;height:130px;border-radius:50%;background:var(--butter);right:34px;top:28px}.blob{width:285px;height:345px;background:var(--paper);border-radius:49% 51% 44% 56%;transform:rotate(-7deg);display:grid;place-items:center;text-align:center;font:600 30px/1 Fraunces,serif;position:relative}.blob:before{content:"";position:absolute;width:160px;height:210px;background:var(--coral);left:48px;top:67px;border-radius:52%;opacity:.9}.doodle{position:absolute;font:38px Fraunces,serif;opacity:.45}.d1{left:42px;bottom:57px}.d2{right:54px;bottom:78px}.ticker{max-width:1160px;margin:auto;background:var(--coral);padding:9px;text-align:center;font:14px Fraunces,serif;letter-spacing:1px}.section{padding:46px 34px}.sectionHead{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:20px}.section h2,.locationBand h2{font:600 39px/1 Fraunces,serif;letter-spacing:-1px;margin:0}.sectionHead p{max-width:430px}.categories{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.category{min-height:128px;text-align:left;border:1px solid var(--ink);border-radius:6px;padding:16px;color:var(--ink);position:relative;transition:.18s}.category:hover{transform:translateY(-3px)}.category strong{display:block;font:24px Fraunces,serif;max-width:145px}.category small{font-size:10px;letter-spacing:1px;text-transform:uppercase}.category b{position:absolute;right:12px;bottom:5px;font:44px Fraunces,serif;opacity:.3}.c0{background:var(--butter)}.c1{background:var(--blue)}.c2{background:var(--coral)}.c3{background:var(--sage)}.c4{background:#e5d4c0}.c5{background:#d7dfc9}.c6{background:var(--lav)}.c7{background:#f0d4a1}.locationBand{padding:40px 34px;background:var(--blue);border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);display:grid;grid-template-columns:1fr 1.25fr;gap:40px;align-items:center}.locationControls{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.controlGroup{display:flex;flex-direction:column;gap:6px}.controlGroup label{font-size:9px;letter-spacing:1.2px;text-transform:uppercase}.controlGroup select{border:1px solid var(--line);background:var(--paper);border-radius:6px;padding:10px;color:var(--ink)}.weekend{background:var(--paper);border-top:0}.filters{display:flex;gap:7px;overflow:auto;margin-bottom:18px}.filter{border:1px solid var(--line);background:var(--cream);border-radius:20px;padding:8px 13px;white-space:nowrap}.filter.active{background:var(--ink);color:#fff}.events{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.card{background:var(--cream);border:1px solid var(--line);border-radius:8px;overflow:hidden;cursor:pointer;transition:.18s}.card:hover{transform:translateY(-3px)}.visual{height:145px;padding:13px;background:var(--blue);position:relative}.card:nth-child(2) .visual{background:var(--butter)}.card:nth-child(3) .visual{background:var(--coral)}.card:nth-child(4) .visual{background:var(--sage)}.card:nth-child(5) .visual{background:var(--lav)}.sticker{background:var(--paper);border-radius:30px;padding:5px 8px;font-size:9px;text-transform:uppercase;letter-spacing:1px}.symbol{position:absolute;right:17px;bottom:-5px;font:72px Fraunces,serif;opacity:.3}.cardBody{padding:15px}.cardBody h3{font-size:22px;line-height:1.08;margin:0 0 9px}.meta{font-size:11px;color:var(--muted);line-height:1.65}.walk{display:inline-block;background:#d7dfc9;padding:5px 7px;border-radius:12px;font-size:10px;margin-top:7px}.cardBottom{display:flex;justify-content:space-between;align-items:center;margin-top:15px}.save{border:1px solid var(--line);background:var(--paper);border-radius:50%;width:32px;height:32px}.save.saved{background:var(--coral)}.savedMini{background:var(--paper);border:1px solid var(--line);padding:15px;border-radius:7px;display:flex;justify-content:space-between}.organize{padding:53px 34px;background:var(--terr);color:#fff;display:flex;justify-content:space-between;align-items:center;gap:30px}.organize h2{color:#fff}.organize .eyebrow{color:var(--butter)}.organize button{background:var(--butter);color:var(--ink);border:0;border-radius:6px;padding:14px 20px;font-weight:700}.organize p{max-width:600px}footer{padding:27px 34px;font-size:10px;letter-spacing:1px;text-transform:uppercase}.modal{position:fixed;inset:0;background:#35423988;display:flex;align-items:center;justify-content:center;padding:18px;z-index:20}.modal[hidden]{display:none}.modalBox{background:var(--paper);width:100%;max-width:650px;max-height:90vh;overflow:auto;border:1px solid var(--ink);border-radius:9px;padding:27px}.close{float:right;border:0;background:var(--cream);width:32px;height:32px;border-radius:50%;font-size:18px}.modalBox h2{font-size:42px;margin:20px 0 8px}.modalText{color:var(--muted);line-height:1.7}.detail{display:grid;grid-template-columns:repeat(2,1fr);gap:9px;margin:20px 0}.detail div{background:var(--cream);padding:12px;border-radius:6px;font-size:12px;line-height:1.5}.modalActions{display:flex;gap:8px}.modalActions>*{flex:1}.secondary{background:var(--cream);color:var(--ink);border:1px solid var(--line);border-radius:6px;padding:11px;text-align:center;text-decoration:none}.form{display:grid;gap:10px}.form input,.form select,.form textarea{width:100%;padding:11px;border:1px solid var(--line);background:var(--cream);border-radius:6px;font:inherit}.form textarea{min-height:90px}.textButton{border:0;background:transparent;color:var(--terr);margin-top:15px}.empty{text-align:center;padding:30px;color:var(--muted);grid-column:1/-1}@media(max-width:820px){.header{display:block}.brand{text-align:left}.header nav{display:none}.actions{margin-top:8px;justify-content:flex-start}.hero{grid-template-columns:1fr}.heroArt{min-height:330px}.categories,.events{grid-template-columns:repeat(2,1fr)}.locationBand{grid-template-columns:1fr}.organize{display:block}.organize button{margin-top:12px}}@media(max-width:550px){.heroCopy,.section,.locationBand,.organize{padding-left:20px;padding-right:20px}.categories,.events{grid-template-columns:1fr}.sectionHead{display:block}.sectionHead p{margin-top:12px}.locationControls,.detail{grid-template-columns:1fr}.modalBox h2{font-size:35px}}.organize p,.organizer p{color:#fff}.header .brand{font-size:1.12em}.header .brand small{font-size:.88em}.header nav a,.header .nav a{font-size:1.18em;font-weight:500}.header .actions a,.header .actions button{font-size:1.08em}
