/* Shared visual system: warm gold, charcoal, and lakeside sand. */
:root{--navy:#202b2c;--gold:#d9b777;--muted:#626b68;--line:#deded5}body{background:#fcfcf8}header{background:#fcfcf8;border-color:var(--line)}.wordmark{letter-spacing:1px}nav a{padding:10px 0}.eyebrow{letter-spacing:2px;color:#756143}.wrap{width:min(1180px,88%)}.hero-shade{background:linear-gradient(90deg,#142323d9,#14232330 75%),linear-gradient(0deg,#14232366,transparent 40%)}.button,.text-link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 18px;border:1px solid transparent;border-radius:7px;font-size:14px;font-weight:700;line-height:1.35;text-align:center;transition:background .2s,transform .2s}.button,.gold,.navy{background:var(--gold);color:#202b2c}.text-link{background:transparent;border-color:#b4b9ad;color:var(--navy)}.button:hover,.text-link:hover{filter:none;background:#c8a367;color:#202b2c;transform:translateY(-1px)}.place{border-radius:12px;overflow:hidden;box-shadow:0 6px 24px #202b2c08}.place-body{padding:26px}.place-body p{min-height:0;margin:16px 0}.place-disco{background:#20282d;border-color:#20282d;color:#fff}.place-disco .place-body p{color:#d0d5d5}.place-disco .text-link{color:#eed8b1;border-color:#657076}.place-lake{background:#f1eee3;border-color:#ded6c3}.place-image span{background:#202b2ce8}.events-section{background:#f0eee7}.event{grid-template-columns:80px 128px minmax(0,1fr) 155px;gap:24px;padding:26px 0;border-color:#d5d2c7}.event-date{background:#fcfcf8;border-radius:8px;border-color:#d5d2c7}.event-poster{width:128px;height:174px;background:#20282d;border-radius:8px;overflow:hidden;padding:8px}.event-poster img{width:100%;height:100%;object-fit:contain;background:transparent}.event-time{max-width:none}.event-time .text-link{width:100%;margin-top:12px}.event .category{color:#756143}.upcoming{padding:28px 0}.upcoming-card{border-radius:10px;background:#20282d;padding:24px}.upcoming-card img{object-fit:contain;background:#151e23;padding:4px;border-radius:4px;flex-shrink:0}.upcoming-card a{color:#eed8b1}.opening-overview{background:#f1eee3;border-color:#ded6c3;padding:26px}.opening-overview .text-link{margin-top:4px}.dart-section{background:#20282d;color:#fff;border-radius:14px;margin-top:64px;margin-bottom:64px;padding:48px;gap:50px;align-items:start}.dart-art{background:#182125;min-height:390px;border-radius:10px}.dart-copy>p,.teams span,.dart-calendar p,.dart-join p{color:#d0d5d5}.dart-copy .eyebrow{color:#d9b777}.teams div{border-color:#ffffff26}.dart-calendar{margin-top:26px}.dart-calendar h3{font-size:25px}.dart-calendar details summary{color:#eed8b1}.dart-calendar .text-link,.dart-links .text-link{color:#eed8b1;border-color:#657076}.dart-join{border-color:#657076;border-radius:8px}.dart-links{gap:12px}.lake-info{padding-bottom:60px}.lake-facts{margin-top:24px}.lake-details{background:#f1eee3;padding:22px;border:1px solid #ded6c3;border-radius:10px;align-self:start}.info-details summary{cursor:pointer;font-weight:700;padding:10px 0;list-style-position:inside}.info-details p{font-size:14px}.info-details summary:focus-visible,.practical summary:focus-visible{outline:3px solid #b3863c;outline-offset:4px}.place-body .info-details{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.celebration-options article{background:#f1eee3;border-radius:10px;border-color:#ded6c3}.contact-section{background:#f0eee7}.contact-grid article{border-color:var(--gold)}.practical details{border-color:var(--line)}dialog{border-radius:12px}.close{border-radius:7px;min-height:44px}.event-detail-grid img{background:#20282d;border-radius:8px;padding:12px}.footer-bottom button{min-height:44px}footer{background:#20282d}.filters button{min-height:44px}.filters button.active{background:#20282d}
@media(max-width:1000px){.event{grid-template-columns:70px 105px minmax(0,1fr) 140px;gap:18px}.event-poster{width:105px;height:150px}.dart-section{padding:32px;gap:30px}}
@media(max-width:700px){.wrap{width:90%}.event{grid-template-columns:64px 100px minmax(0,1fr);gap:14px}.event-poster{width:100px;height:145px}.event-time{grid-column:2 / 4;display:flex;align-items:center;justify-content:space-between;gap:12px}.event-time .text-link{width:auto;margin:0}.event h3{font-size:23px;overflow-wrap:anywhere}.dart-section{grid-template-columns:1fr;margin-top:40px;margin-bottom:40px;padding:24px;gap:28px}.dart-art{min-height:280px}.dart-calendar h3{font-size:23px}.place-body{padding:24px}.opening-overview{padding:20px}.lake-info{padding-bottom:40px}.event-detail-grid img{max-height:65vh;object-fit:contain}.event-detail-grid{gap:24px}.hero{height:540px;min-height:0}.hero-copy{padding-top:65px}.celebrations{padding-top:48px;padding-bottom:48px}}
@media(max-width:400px){.event{grid-template-columns:52px 82px minmax(0,1fr);gap:10px}.event-poster{width:82px;height:120px}.event-date{padding:10px 5px}.event h3{font-size:21px}.event-date span{letter-spacing:.5px}.dart-section{padding:18px}.teams{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.button:hover,.text-link:hover{transform:none}}

/* Keep business cards readable in tablet and narrow desktop windows. */
@media(max-width:1100px){.places{grid-template-columns:minmax(0,1fr);gap:24px}.place{min-width:0}.place-body p{min-height:0}.place-image{height:260px}}
