@font-face{font-family:"DM Sans";src:url("/assets/dm-sans.woff2") format("woff2");font-style:normal;font-weight:100 900;font-display:swap}
@font-face{font-family:"DM Sans";src:url("/assets/dm-sans-ext.woff2") format("woff2");font-style:normal;font-weight:100 900;font-display:swap;unicode-range:U+0100-024F,U+1E00-1EFF}
@font-face{font-family:Fraunces;src:url("/assets/Fraunces-var-latin.woff2") format("woff2");font-style:normal;font-weight:100 900;font-display:swap}
@font-face{font-family:Fraunces;src:url("/assets/Fraunces-var-latin-ext.woff2") format("woff2");font-style:normal;font-weight:100 900;font-display:swap;unicode-range:U+0100-024F,U+1E00-1EFF}
:root{--ink:#16372e;--ink-2:#33544a;--forest:#153e34;--forest-dark:#0c2c24;--mint:#e8f0e7;--cream:#f7f5ef;--paper:#fffefa;--line:#dddeda;--rust:#a94f35;--rust-dark:#813b27;--sand:#f0e8d9;--shadow:0 12px 36px rgba(23,53,44,.08);--radius:15px}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--ink);font:400 16px/1.55 "DM Sans",sans-serif}
button,input,select{font:inherit}
button{cursor:pointer}
a{color:inherit;text-decoration:none}
img,svg{display:block}
svg{flex:none}
h1,h2,h3,p{margin-top:0}
h1,h2,h3{line-height:1.14}
h1,h2,h3,.brand strong{font-family:Fraunces,Georgia,serif;letter-spacing:-.035em}
p{max-width:65ch}
:focus-visible{outline:3px solid #b4553c;outline-offset:3px}
[hidden]{display:none!important}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link{position:absolute;z-index:100;top:-60px;left:10px;background:var(--forest);color:white;padding:12px 18px;border-radius:8px}
.skip-link:focus{top:10px}
.container{width:min(100% - 48px,1344px);margin-inline:auto}
.icon{display:inline-block;vertical-align:middle}
.eyebrow{display:block;color:#9a4d37;font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;margin-bottom:16px}
.utility-bar{background:#f0f2ec;border-bottom:1px solid #e1e5de;color:#45675b;font-size:12px}
.utility-inner{min-height:34px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.utility-inner>span:first-child{display:flex;align-items:center;gap:6px;font-weight:700}
.utility-dot{padding-inline:8px}
.utility-place-short{display:none}
.utility-weather{display:inline-flex;align-items:center;gap:6px;margin-left:auto;white-space:nowrap;color:#2b5948}
.utility-weather strong{font-size:13px;font-weight:900}
.weather-icon{color:#b7772e;flex:none}
.site-header{position:sticky;top:0;z-index:30;background:var(--paper);box-shadow:0 2px 15px rgba(12,44,36,.07)}
.header-main{min-height:83px;display:grid;grid-template-columns:minmax(260px,1fr) minmax(320px,530px) auto;align-items:center;gap:28px}
.header-main.home-header{grid-template-columns:minmax(260px,1fr) auto}
.brand{display:inline-flex;align-items:center;gap:12px;white-space:nowrap}
.brand-mark{height:43px;width:43px;display:grid;place-items:center}
.brand-mark img{width:100%;height:100%;border-radius:11px}
.brand strong{display:block;font-size:26px;line-height:1.04;font-weight:700}
.brand small{display:block;color:#6e8279;font-size:11px;font-weight:700;letter-spacing:.02em;margin-top:2px}
.header-search{height:46px;border:1px solid #cfd9d2;background:#f9faf7;border-radius:9px;display:flex;align-items:center;gap:12px;padding-left:15px;color:#5f776e}
.header-search input{border:0;outline:0;min-width:0;flex:1;background:transparent;color:var(--ink);font-size:14px}
.header-search button{align-self:stretch;border:0;background:transparent;color:var(--forest);width:48px;display:grid;place-items:center}
.header-search button:hover{background:var(--mint)}
.search-button-magnifier{display:none}
.header-submit,.button-primary{display:inline-flex;align-items:center;justify-content:center;gap:10px;background:var(--rust);border:1px solid var(--rust);color:white;padding:12px 18px;border-radius:9px;font-weight:800;min-height:45px;white-space:nowrap;transition:background .2s,transform .2s}
.header-submit:hover,.button-primary:hover{background:var(--rust-dark);transform:translateY(-2px)}
.menu-toggle{display:none;min-width:44px;min-height:44px;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:8px;background:white;color:var(--ink)}
.primary-nav{background:var(--forest);color:white}
.nav-inner{display:flex;align-items:center;gap:6px;min-height:52px}
.nav-inner>a{position:relative;flex:none;display:flex;align-items:center;gap:5px;padding:13px 12px;font-size:13px;font-weight:700;white-space:nowrap;min-height:48px;transition:background .2s}
.nav-inner>a:first-child{padding-left:0}
.nav-inner>a:hover,.nav-inner>a.active{background:#285d4f}
.nav-inner>a.active:after{content:"";position:absolute;height:3px;background:#e5ad7a;bottom:0;left:17px;right:17px}
.nav-inner .nav-events{margin:5px 11px 5px 0;min-height:38px;padding:8px 13px;border-radius:8px;background:#f1dfc7;color:#17382d;font-weight:900;box-shadow:0 2px 8px rgba(0,0,0,.12)}
.nav-inner .nav-events:hover,.nav-inner .nav-events.active{background:#fff1dc;color:#17382d}
.nav-inner .nav-events.active:after{display:none}
.nav-events .icon{color:#a24e32}
.nav-events span{font-size:9px;border:1px solid #cba17b;border-radius:12px;padding:1px 6px;color:#7e432b;text-transform:uppercase;letter-spacing:.06em}
.nav-inner .nav-feature{color:#f7eee0;font-weight:800}.nav-feature .icon{color:#eac89d}.nav-inner .nav-feature.active{background:#285d4f}
.nav-group{position:relative;flex:none}
.nav-group summary{display:flex;align-items:center;gap:7px;min-height:48px;padding:11px 12px;list-style:none;cursor:pointer;font-size:13px;font-weight:700;white-space:nowrap}
.nav-group summary::-webkit-details-marker{display:none}
.nav-group summary:hover,.nav-group summary.active,.nav-group[open]>summary{background:#285d4f}
.nav-group summary .icon{transition:transform .2s}
.nav-group[open]>summary .icon{transform:rotate(180deg)}
.nav-dropdown{position:absolute;top:100%;right:0;z-index:35;width:235px;padding:9px;background:var(--paper);color:var(--ink);border:1px solid #d9e1d9;border-radius:0 0 11px 11px;box-shadow:0 16px 25px rgba(12,44,36,.16)}
.nav-dropdown a{display:block;padding:10px 12px;border-radius:6px;font-size:13px;font-weight:700}
.nav-dropdown a:hover,.nav-dropdown a.active{background:var(--mint)}
.welcome{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:22px;padding-top:24px}
.welcome-main{min-height:390px;background:#e6ece2;border:1px solid #d7e1d5;border-radius:var(--radius);overflow:hidden;position:relative;display:grid;grid-template-columns:minmax(0,1fr) 37%}
.welcome-copy{padding:31px 20px 27px 44px;position:relative;z-index:2}
.welcome-copy h1{font-size:clamp(42px,4vw,60px);margin:0 0 13px;max-width:680px;font-weight:650}
.welcome-copy h1 em,.newcomer-panel em{font-weight:450;color:#8c513e}
.welcome-copy>p{font-size:16px;color:#425b51;max-width:52ch;margin-bottom:19px}
.hero-search{max-width:575px}
.hero-search label{display:block;font-size:13px;font-weight:800;margin-bottom:9px}
.hero-search>div{display:flex;background:white;border:1px solid #d3dcd3;border-radius:9px;padding:5px;box-shadow:0 5px 18px rgba(34,64,51,.07)}
.hero-search input{min-width:0;flex:1;padding:11px 13px;border:0;outline:0;background:transparent;font-size:14px}
.hero-search button{display:flex;align-items:center;justify-content:center;gap:9px;border:0;border-radius:6px;background:var(--rust);color:white;padding:10px 15px;font-weight:800;font-size:13px;white-space:nowrap;transition:background .2s}
.hero-search button:hover{background:var(--rust-dark)}
.quick-searches{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin-top:15px;font-size:12px}
.quick-searches>span{font-weight:800;color:#557264;margin-right:4px}
.quick-searches a{border:1px solid #c7d5c9;color:#245b47;background:#f6faf5;padding:5px 9px;border-radius:30px;transition:background .2s,transform .2s}
.quick-searches a:hover{background:white;transform:translateY(-2px)}
.welcome-photo-panel{position:relative;overflow:hidden;margin:0;min-height:390px;background:#648e78}
.welcome-photo-panel>img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:30% center;filter:saturate(.87);transition:transform .6s}
.welcome-photo-panel:hover>img{transform:scale(1.035)}
.welcome-photo-panel:after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(7,30,24,.79))}
.welcome-photo-place{position:absolute;z-index:1;left:19px;bottom:52px;display:flex;gap:8px;align-items:start;color:#fff;font-size:10px;font-weight:800;letter-spacing:.12em;line-height:1.35}
.welcome-photo-place strong{font:700 22px/1.15 Fraunces,Georgia,serif;letter-spacing:0;text-transform:none}
.welcome-photo-panel figcaption{position:absolute;z-index:1;left:19px;right:12px;bottom:12px;color:#e8efe7;font-size:9px;line-height:1.3}
.welcome-photo-panel figcaption a{text-decoration:underline}
.welcome-side{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:23px 24px;box-shadow:var(--shadow);display:flex;flex-direction:column}
.side-label{color:var(--rust);font-size:11px;font-weight:800;letter-spacing:.14em;margin-bottom:16px}
.welcome-side h2{font-size:26px;margin-bottom:8px}
.welcome-side>p{font-size:13px;color:#677a6e;margin-bottom:20px}
.welcome-side>a{display:flex;align-items:center;gap:10px;border-top:1px solid #e8e8e1;min-height:48px;font-size:13px;font-weight:750;transition:color .2s,transform .2s}
.welcome-side>a:hover{color:var(--rust);transform:translateX(3px)}
.welcome-side>a>.icon:last-child{margin-left:auto}
.side-count{display:flex;align-items:center;gap:13px;background:#eff2e9;padding:13px 14px;margin-top:auto;border-radius:9px}
.side-count strong{font-family:Fraunces,Georgia,serif;font-size:34px;line-height:1}
.side-count span{color:#526a5d;font-size:12px;line-height:1.35}
.categories,.discovery,.lower-grid,.contribution{margin-top:54px}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:22px}
.section-head .eyebrow{margin-bottom:6px}
.section-head h2{font-size:clamp(27px,2.7vw,39px);margin:0}
.text-link{display:inline-flex;align-items:center;gap:8px;color:#9b462f;font-size:13px;font-weight:800;white-space:nowrap;transition:gap .2s}
.text-link:hover{gap:13px;text-decoration:underline}
.category-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px}
.category-tile{position:relative;min-width:0;overflow:hidden;display:flex;flex-direction:column;background:var(--paper);border:1px solid #d9ded5;border-radius:15px;box-shadow:0 5px 20px rgba(23,53,44,.045);transition:transform .25s,box-shadow .25s,border-color .25s}
.category-tile:hover{transform:translateY(-6px);box-shadow:0 17px 34px rgba(23,53,44,.13);border-color:#a9bcac}
.category-media{position:relative;display:block;height:175px;overflow:hidden;background:#dce7d7}
.category-media img{width:100%;height:100%;object-fit:cover;transition:transform .5s;filter:saturate(.91)}
.category-tile:hover .category-media img{transform:scale(1.055)}
.category-media-label{position:absolute;top:13px;left:13px;z-index:1;padding:5px 9px;border-radius:30px;background:rgba(255,254,250,.93);color:#315244;font-size:9px;font-weight:850;letter-spacing:.11em;line-height:1.2}
.category-content{position:relative;display:flex;flex:1;flex-direction:column;align-items:flex-start;min-height:168px;padding:21px 20px 17px}
.category-symbol{position:relative;z-index:1;display:grid;place-items:center;width:42px;height:42px;margin-top:-44px;margin-bottom:13px;border:1px solid #dce5d9;border-radius:12px;background:#fffefa;color:#315d4c;box-shadow:0 5px 12px rgba(16,47,35,.1)}
.category-tile.culture .category-symbol{color:#9a4d37}.category-tile.sport .category-symbol{color:#366977}.category-tile.family .category-symbol{color:#98623a}
.category-content strong{display:block;color:var(--ink);font:650 23px/1.1 Fraunces,Georgia,serif;letter-spacing:-.03em}
.category-description{display:block;margin-top:7px;color:#5d7065;font-size:12px;line-height:1.4}
.category-more{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;margin-top:auto;padding-top:16px;color:var(--rust);font-size:11px;font-weight:800;letter-spacing:.01em}
.category-more .icon{transition:transform .2s}
.category-tile:hover .category-more .icon{transform:translateX(4px)}
.category-note{max-width:none;margin:9px 1px 0;color:#738276;text-align:right;font-size:10px}
.place-type-section{margin-top:40px;margin-bottom:45px}
.place-type-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.place-type-links a{display:flex;align-items:center;justify-content:space-between;gap:8px;background:#edf3eb;border:1px solid #d8e4d5;border-radius:9px;padding:13px 15px;color:#305846;font-size:13px;font-weight:800}
.place-type-links a:hover{background:#deebdc;border-color:#b8d0ba}
.place-type-links svg{flex:none}
.attraction-types{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:23px 0 16px}
.attraction-types a{display:flex;align-items:center;gap:9px;min-height:76px;background:#edf3eb;border:1px solid #d5e2d4;border-radius:10px;padding:15px;color:#305846}
.attraction-types a:hover{background:#e0ecde;border-color:#aec8b0}
.attraction-types strong{font-size:15px}
.attraction-types span{font-size:11px;color:#697b6b;margin-left:auto;white-space:nowrap}
.attraction-types svg{flex:none}
.attraction-area-link{display:inline-flex;align-items:center;gap:7px;color:var(--rust);font-size:13px;font-weight:800;margin:0 0 25px}
.attraction-area-link:hover{text-decoration:underline}
.route-resource{display:flex;justify-content:space-between;align-items:center;gap:20px;background:#f4f1e9;border:1px solid #e6dfd2;border-radius:10px;padding:18px 20px;margin-bottom:30px}
.route-resource h2{font-size:22px;margin:3px 0 5px}
.route-resource p{font-size:12px;color:#5f6c5d;margin:0}
.route-resource>div:last-child{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.route-resource a{display:inline-flex;align-items:center;gap:6px;background:var(--forest);color:#fff;border-radius:6px;padding:9px 11px;font-size:11px;font-weight:800;white-space:nowrap}
.route-resource a:hover{background:var(--forest-dark)}
.discovery{background:#f0f0e9;padding:48px 0 56px;border-top:1px solid #e6e6de;border-bottom:1px solid #e6e6de}
.featured-grid,.catalog-grid,.related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.place-card{background:var(--paper);border:1px solid #e0e2dc;border-radius:12px;overflow:hidden;display:flex;flex-direction:column;min-width:0;box-shadow:0 3px 15px rgba(25,52,43,.035);transition:transform .25s,box-shadow .25s}
.place-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.place-visual{height:150px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}
.place-visual:before,.place-visual:after{content:"";position:absolute;border-radius:50%;opacity:.32}
.place-visual:before{width:240px;height:240px;top:-130px;right:-45px;background:white}
.place-visual:after{width:220px;height:220px;bottom:-165px;left:-45px;background:#436a5b}
.place-visual.has-photo:before,.place-visual.has-photo:after{display:none}
.place-visual.has-photo img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .3s}
.place-card:hover .place-visual.has-photo img{transform:scale(1.04)}
.place-photo-credit{position:absolute;z-index:1;top:10px;right:10px;background:rgba(19,43,34,.76);color:white;border-radius:4px;padding:4px 6px;font-size:9px;font-weight:700;letter-spacing:.01em}
.place-visual.nature,.detail-visual.nature{background:#b7d0ac;color:#275541}
.place-visual.culture,.detail-visual.culture{background:#e8d6be;color:#6f4937}
.place-visual.sport,.detail-visual.sport{background:#c5d7d6;color:#20545b}
.place-visual.food,.detail-visual.food{background:#f1d8c1;color:#8a472e}
.place-visual.community,.detail-visual.community{background:#d8dfcd;color:#3e5e42}
.place-visual-icon{position:relative;z-index:1;background:rgba(255,255,255,.55);width:80px;height:80px;display:grid;place-items:center;border-radius:23px;transform:rotate(-8deg);transition:transform .25s}
.place-card:hover .place-visual-icon{transform:rotate(0) scale(1.06)}
.place-visual-label{position:absolute;z-index:1;left:15px;bottom:13px;background:rgba(255,255,255,.88);padding:5px 8px;border-radius:5px;font-size:10px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}
.place-card-body{padding:19px 19px 14px;display:flex;flex-direction:column;flex:1}
.place-meta{display:flex;gap:8px;flex-wrap:wrap;color:#6e7c73;text-transform:uppercase;letter-spacing:.09em;font-size:10px;font-weight:800;margin-bottom:6px}
.place-meta span+span:before{content:"/";margin-right:8px;color:#c4ccc1}
.place-meta .place-scope{color:#925039;background:#f7ede6;border-radius:4px;padding:2px 5px;letter-spacing:0;text-transform:none}
.place-meta .place-scope:before{display:none}
.place-card h3{font-size:23px;margin-bottom:9px}
.place-card h3 a:hover{text-decoration:underline;text-decoration-color:#aa583c;text-decoration-thickness:2px;text-underline-offset:3px}
.place-card p{color:#52665b;font-size:13px;line-height:1.5;margin-bottom:17px}
.place-card-hours{display:flex;align-items:flex-start;gap:6px;margin:0 0 12px;padding:9px 10px;border-radius:7px;background:#f0f4ed;color:#385b49;font-size:11px;line-height:1.4}
.place-card-hours .icon{margin-top:1px;color:#558365}
.place-card-hours strong{font-weight:900}
.card-reviews{display:flex;flex-wrap:wrap;gap:7px;margin:-4px 0 13px;color:var(--rust)}
.card-reviews .rating-source,.card-reviews .rating-unavailable{display:inline-flex;align-items:center;gap:5px;min-height:31px;padding:5px 8px;border:1px solid #e8d9cd;border-radius:6px;background:#faf4ed;font-size:11px;font-weight:800;white-space:nowrap}
.card-reviews .rating-source{text-decoration:none}
.card-reviews .rating-source:hover{text-decoration:underline;text-underline-offset:2px}
.card-reviews .rating-source strong{font-size:14px;color:#713c2b}
.card-reviews .rating-source small{font-size:10px;font-weight:600;color:#755747}
.card-reviews .rating-unavailable{color:#68756e;background:#f5f5f0;border-color:#e4e6e0}
.place-card-footer{border-top:1px solid #ebede7;padding-top:12px;margin-top:auto;display:flex;gap:8px;align-items:center;justify-content:space-between;color:#5e7266;font-size:11px}
.place-card-footer>span{display:flex;align-items:center;gap:5px;min-width:0}
.place-card-actions{display:flex;align-items:center;gap:2px;flex:none}
.place-card-actions>a{display:grid;place-items:center;color:var(--rust);width:29px;height:29px;border-radius:50%}
.place-card-actions>a:hover{background:#f7ede7}
.lower-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.newcomer-panel{background:var(--forest);color:white;border-radius:14px;padding:34px 36px;min-height:335px;position:relative;overflow:hidden}
.newcomer-panel .eyebrow{color:#d8ac8a}
.newcomer-panel h2{font-size:clamp(31px,3vw,44px);margin-bottom:13px;position:relative;z-index:1}
.newcomer-panel em{color:#e5c29f}
.newcomer-panel p{font-size:14px;color:#d4e1d8;max-width:42ch;position:relative;z-index:1}
.button-light{display:inline-flex;align-items:center;gap:8px;background:#f5f3e9;color:var(--forest-dark);border-radius:7px;padding:11px 15px;font-size:13px;font-weight:800;position:relative;z-index:1;transition:background .2s,transform .2s}
.button-light:hover{background:white;transform:translateY(-2px)}
.panel-watermark{position:absolute;right:0;bottom:-100px;color:rgba(255,255,255,.045);font-family:Fraunces,Georgia,serif;font-size:370px;line-height:1;font-weight:800}
.events-panel{display:flex;flex-direction:column;background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:23px 27px}
.events-panel .eyebrow{margin-bottom:7px}
.events-panel h2{font-size:27px;margin-bottom:8px}
.events-panel>p{color:#637569;font-size:12px;margin-bottom:14px}
.today-promos{display:grid;gap:9px;margin-bottom:15px}
.today-promo{display:grid;grid-template-columns:91px minmax(0,1fr) 18px;align-items:center;gap:11px;min-height:94px;overflow:hidden;border:1px solid #e6e1d8;border-radius:8px;background:#fbfaf6;transition:transform .2s,box-shadow .2s,border-color .2s}
.today-promo:hover{transform:translateY(-2px);border-color:#d8aa8c;box-shadow:0 8px 20px rgba(23,53,44,.1)}
.today-promo-thumb{position:relative;display:grid;place-items:center;width:91px;height:100%;min-height:94px;overflow:hidden;background:#dce7dc;color:var(--forest)}
.today-promo-thumb img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}
.today-promo-thumb small{position:absolute;bottom:0;left:0;right:0;padding:12px 3px 3px;background:linear-gradient(transparent,rgba(0,0,0,.65));color:white;font-size:8px;line-height:1.15}
.today-promo-copy{display:block;min-width:0;padding:8px 0}
.today-promo-meta{display:flex;align-items:center;flex-wrap:wrap;gap:4px 7px;margin-bottom:4px;font-size:10px;line-height:1.2}
.today-promo-meta time{font-weight:900;color:#99482f}
.today-promo-meta>span{padding:2px 5px;border-radius:4px;background:#f8e9de;color:#8b4129;font-size:9px;font-weight:800}
.today-promo-copy>strong{display:block;font:650 17px/1.12 Fraunces,Georgia,serif;letter-spacing:-.025em;color:var(--ink)}
.today-promo-place{display:flex;align-items:center;gap:4px;margin-top:5px;color:#607667;font-size:10px;line-height:1.2}
.today-promo>.icon{color:var(--rust);margin-right:7px}
.today-promo-empty{margin:0;padding:17px;border-radius:8px;background:#f3f5ef;color:#526a59;font-size:12px}
.events-panel>.text-link{margin-top:auto;align-self:flex-start}
.news-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(270px,.85fr);gap:20px;padding-bottom:80px}
.news-intro,.news-now{border-radius:14px;padding:35px}
.news-intro{min-height:325px;border:1px solid #d9e2d8;background:#edf2e9}
.news-intro h2{max-width:17ch;font-size:clamp(30px,3vw,42px);margin-bottom:15px}
.news-intro p{max-width:57ch;color:#52695a;font-size:14px}
.news-topics{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}
.news-topics span{padding:7px 11px;border:1px solid #cbd9ca;border-radius:30px;background:#f9fbf6;color:#3a634c;font-size:11px;font-weight:800}
.news-now{background:var(--forest);color:white}
.news-now .eyebrow{color:#efbe98}
.news-now h2{font-size:29px;margin-bottom:11px}
.news-now p{color:#d4e3d7;font-size:13px;margin-bottom:22px}
.news-now a{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 0;border-top:1px solid #587766;color:white;font-size:13px;font-weight:800}
.news-now a:hover{color:#f2c29c}
.recurring-panel{display:grid;grid-template-columns:1.2fr 1fr;gap:34px;align-items:center;background:#f1e9dd;border:1px solid #e6d9c5;border-radius:13px;padding:29px 32px;margin-top:54px}
.recurring-panel .eyebrow{margin-bottom:7px}
.recurring-panel h2{font-size:27px;margin-bottom:8px}
.recurring-panel p{font-size:13px;color:#5f695a;margin:0}
.recurring-panel>div:last-child{display:grid;grid-template-columns:1fr;gap:7px}
.recurring-panel a{display:flex;align-items:center;justify-content:space-between;gap:10px;background:rgba(255,255,255,.65);border:1px solid #e4d8c9;border-radius:7px;padding:8px 12px;font-size:12px;font-weight:800;transition:background .2s,transform .2s}
.recurring-panel a:hover{background:white;transform:translateX(2px)}
.contribution{background:#e5ebe2;border:1px solid #d3dfd4;border-radius:13px;padding:21px 27px;display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:75px}
.contribution>div{display:flex;align-items:flex-start;gap:16px}
.contribution>div>svg{margin-top:3px;color:#48745c}
.contribution h2{font-size:22px;margin-bottom:3px}
.contribution p{font-size:13px;color:#58705e;margin:0}
.contribution>a{display:inline-flex;align-items:center;gap:8px;white-space:nowrap;background:var(--forest);color:white;border-radius:7px;padding:11px 15px;font-size:13px;font-weight:800;transition:background .2s}
.contribution>a:hover{background:var(--forest-dark)}
.web-cta{position:relative;isolation:isolate;min-height:300px;overflow:hidden;display:flex;align-items:center;border-radius:18px;background:var(--forest-dark);color:white;box-shadow:0 18px 40px rgba(12,44,36,.15);margin-bottom:58px}
.web-cta-art{position:absolute;z-index:-2;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.web-cta:after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,rgba(12,44,36,.98) 0%,rgba(12,44,36,.9) 35%,rgba(12,44,36,.28) 65%,transparent 100%)}
.web-cta-content{position:relative;max-width:650px;padding:37px clamp(27px,5vw,68px)}
.web-cta-kicker{display:block;margin-bottom:13px;color:#f0c198;font-size:11px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}
.web-cta h2{max-width:15ch;margin-bottom:10px;font-size:clamp(30px,3.5vw,49px);font-weight:650;line-height:1.08}
.web-cta h2 em{display:inline-block;color:#efc09a;font-weight:450}
.web-cta p{max-width:44ch;margin-bottom:20px;color:#e0eae1;font-size:14px}
.web-cta a{display:inline-flex;align-items:center;justify-content:center;gap:11px;min-height:45px;padding:11px 17px;border-radius:8px;background:#f6e8d6;color:var(--forest-dark);font-size:13px;font-weight:800;transition:background .2s,transform .2s}
.web-cta a:hover{background:white;transform:translateY(-2px)}
.footer{background:var(--forest-dark);color:white;padding:51px 0 17px}
.footer-inner{display:grid;grid-template-columns:1.7fr 1fr 1fr;gap:65px;padding-bottom:46px}
.brand-light .brand-mark{background:transparent;color:var(--forest)}
.brand-light small{color:#b5cabe}
.footer-inner p{color:#b6c9bc;font-size:13px;max-width:36ch;margin-top:18px}
.footer-inner h2{font:800 12px/1.2 "DM Sans",sans-serif;letter-spacing:.12em;text-transform:uppercase;color:#d9ac89;margin:7px 0 15px}
.footer-inner>div:not(:first-child)>a,.footer-inner>div:not(:first-child)>span{display:block;color:#cfddd2;font-size:13px;margin-bottom:10px}
.footer-inner a:hover,.footer-bottom a:hover{text-decoration:underline}
.footer-bottom{border-top:1px solid #37564c;padding-top:17px;display:flex;justify-content:space-between;gap:15px;color:#abc1b2;font-size:11px}
.page-heading{padding-top:51px;padding-bottom:29px}
.page-heading h1{font-size:clamp(42px,5vw,67px);margin-bottom:12px}
.page-heading p{font-size:17px;color:#5c7064;margin-bottom:0}
.catalog-shell{padding-bottom:83px}
.attractions-page{padding-bottom:82px}
.attractions-intro{display:flex;align-items:center;gap:11px;background:#e9efe6;border:1px solid #d6e1d3;border-radius:9px;padding:14px 17px;margin-bottom:20px;color:#3e604b;font-size:13px}
.attractions-page>.text-link{margin-top:25px}
.audience-page{padding-bottom:82px}
.audience-page>.text-link{margin-top:25px}
.restaurant-page{padding-bottom:82px}
.restaurant-method{background:#edf2e9;border:1px solid #d4e1d2;border-radius:10px;padding:12px 18px;margin-bottom:10px}
.restaurant-method summary{display:flex;align-items:center;gap:10px;list-style:none;cursor:pointer;font-size:14px;font-weight:800}
.restaurant-method summary::-webkit-details-marker{display:none}
.restaurant-method summary>svg:first-child{color:#4f7858}
.restaurant-method summary>svg:last-child{margin-left:auto;transition:transform .2s}
.restaurant-method[open] summary>svg:last-child{transform:rotate(90deg)}
.restaurant-method p{font-size:12px;color:#536b5a;margin:11px 0 0;max-width:100ch}
.restaurant-sources{display:flex;flex-wrap:wrap;gap:10px 18px;margin:12px 0 4px}
.restaurant-sources a{display:inline-flex;align-items:center;gap:5px;color:var(--rust);font-size:12px;font-weight:800;text-decoration:underline;text-underline-offset:2px}
.restaurant-rating-note{background:#fffefa;border:1px solid #e6e2d7;border-radius:9px;padding:10px 14px;margin:0 0 15px;font-size:12px;color:#657264;max-width:none}
.restaurant-rating-note strong{color:var(--ink)}
.restaurant-filter{display:flex;align-items:center;gap:12px;margin:23px 0 17px}
.restaurant-filter>div{display:grid;gap:5px;min-width:0}
.restaurant-filter label{font-size:12px;font-weight:800}
.restaurant-filter select{min-height:42px;max-width:310px;border:1px solid #cbd6cb;border-radius:7px;background:white;color:var(--ink);padding:7px 11px}
.restaurant-filter>span{margin-left:auto;font-size:12px;color:#5d7465}
.audience-resource{display:flex;align-items:center;justify-content:space-between;gap:25px;background:#e9efe6;border:1px solid #d6e1d3;border-radius:10px;padding:20px 23px;margin-bottom:23px}
.audience-resource .eyebrow{margin-bottom:5px}
.audience-resource h2{font-size:25px;margin-bottom:5px}
.audience-resource p{font-size:13px;color:#536d59;margin-bottom:0}
.audience-resource a{display:inline-flex;align-items:center;gap:8px;background:var(--forest);color:white;border-radius:7px;padding:10px 13px;font-size:12px;font-weight:800;white-space:nowrap}
.audience-resource a:hover{background:var(--forest-dark)}
.women-resource{margin-top:22px}
.filter-box{background:var(--paper);border:1px solid #dfe3dc;padding:22px 25px;border-radius:12px;box-shadow:var(--shadow)}
.filter-box>label{font-weight:800;font-size:14px;display:block;margin-bottom:8px}
.filter-search{display:flex;align-items:center;gap:11px;border:1px solid #cbd6cb;background:#fafcf8;border-radius:7px;padding:0 13px;color:#577263}
.filter-search input{width:100%;min-height:48px;border:0;outline:0;background:transparent;color:var(--ink)}
.filter-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:12px;margin-top:15px}
.filter-row>div{min-width:0}
.filter-row label{display:block;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#536e5c;margin-bottom:5px}
.filter-row select{width:100%;border:1px solid #cbd6cb;background:white;border-radius:6px;padding:10px;min-height:44px;color:var(--ink)}
.filter-reset{border:0;background:none;color:var(--rust);font-size:12px;font-weight:800;min-height:44px;white-space:nowrap;padding:0 5px}
.filter-reset:hover{text-decoration:underline}
.type-shortcuts{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:18px;color:#658071;font-size:12px}
.type-shortcuts>span{font-weight:800;margin-right:3px}
.type-shortcuts a{border:1px solid #d4e0d5;background:#f2f7f0;color:#35634e;border-radius:20px;font-size:12px;padding:6px 10px;font-weight:700}
.type-shortcuts a:hover{background:#e1ece0;text-decoration:underline}
.suggestions{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:16px;color:#658071;font-size:12px}
.suggestions>span{font-weight:800;margin-right:3px}
.suggestions button{border:1px solid #d4e0d5;background:#f2f7f0;color:#35634e;border-radius:20px;font-size:12px;padding:5px 10px;transition:background .2s}
.suggestions button:hover{background:#e1ece0}
.result-head{display:flex;justify-content:space-between;align-items:center;gap:14px;margin:35px 0 18px}
.result-head h2{font-size:28px;margin:0}
.result-head h2 span{font:800 12px/1 "DM Sans",sans-serif;background:#e7eee5;color:#335742;display:inline-grid;place-items:center;min-width:27px;height:27px;border-radius:50%;vertical-align:middle;margin-left:5px}
.result-head>span{font-size:12px;color:#66796b}
.catalog-note{color:#607267;font-size:13px;margin-top:25px;max-width:85ch}
.catalog-note a{text-decoration:underline;color:#9c4c31;font-weight:800}
.result-empty{background:#f0f4ed;border:1px solid #d7e1d5;border-radius:10px;padding:25px;margin-bottom:20px}
.result-empty h2{font-size:24px;margin-bottom:7px}
.result-empty p{font-size:14px;color:#5b7162}
.result-empty a{display:inline-flex;align-items:center;gap:8px;font-weight:800;color:var(--rust)}
.result-empty small{display:block;margin-top:9px;color:#637766;font-size:11px}
.breadcrumbs{display:flex;align-items:center;gap:9px;color:#738478;font-size:12px;margin-bottom:36px;flex-wrap:wrap}
.breadcrumbs a:hover{text-decoration:underline;color:var(--rust)}
.detail{padding-top:32px;padding-bottom:75px}
.detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:54px}
.detail h1{font-size:clamp(43px,5vw,67px);margin-bottom:15px}
.detail-lead{font-size:19px;color:#526a5d;max-width:60ch}
.detail-tags{display:flex;flex-wrap:wrap;gap:7px;margin:22px 0 29px}
.detail-tags span{background:#e7eee4;border:1px solid #d7e3d7;border-radius:20px;padding:5px 10px;font-size:12px;color:#42644f}
.detail-tags .detail-scope{background:#f7ede6;border-color:#ecd5c4;color:#8a4a34;font-weight:800}
.detail-visual{height:335px;border-radius:12px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;margin-bottom:39px}
.detail-visual:before,.detail-visual:after{content:"";position:absolute;width:360px;height:360px;border-radius:50%;background:rgba(255,255,255,.25)}
.detail-visual:before{right:-80px;top:-170px}.detail-visual:after{left:-120px;bottom:-250px}
.detail-visual>span{position:relative;z-index:1;width:148px;height:148px;border-radius:33px;background:rgba(255,255,255,.55);display:grid;place-items:center;transform:rotate(-9deg)}
.detail-visual>span svg{transform:rotate(9deg)}
.detail-visual small{position:absolute;z-index:1;bottom:12px;left:18px;right:18px;font-size:11px;color:#29483c}
.detail-photo{margin:0 0 39px}
.detail-photo img{display:block;width:100%;height:335px;object-fit:cover;border-radius:12px}
.detail-photo figcaption{font-size:11px;line-height:1.5;color:#617469;margin-top:8px}
.detail-photo figcaption a{color:var(--rust);text-decoration:underline;text-underline-offset:2px}
.detail-hours{background:#eef3eb;border:1px solid #d9e6d8;border-radius:11px;padding:20px 23px;margin:0 0 31px}
.detail-hours h2{font-size:24px;margin:0 0 10px}
.detail-hours p{font-size:13px;color:#3c5a49;margin:0 0 8px}
.detail-hours p strong{font-size:15px;color:var(--forest)}
.detail-hours a{display:inline-flex;align-items:center;gap:5px;color:var(--rust);font-size:12px;font-weight:800;text-decoration:underline;text-underline-offset:2px}
.detail-hours small{display:block;color:#597063;font-size:11px;line-height:1.4;margin-top:8px}
.detail h2{font-size:30px;margin-bottom:12px}
.detail-grid>div>p:not(.detail-lead){color:#4c6557}
.source-box{background:#eff2eb;border:1px solid #dce6da;border-radius:10px;padding:20px 22px;margin-top:33px}
.source-box>span{font-size:11px;font-weight:900;letter-spacing:.12em;color:#7a4836}
.source-box p{color:#5a705e;font-size:13px;margin:8px 0 11px}
.source-box a{display:inline-flex;align-items:center;gap:6px;color:var(--rust);font-size:13px;font-weight:800;text-decoration:underline}
.restaurant-reviews{background:#f5eee6;border:1px solid #eaded1;border-radius:10px;padding:16px 18px;margin:20px 0 25px}
.restaurant-reviews>span{font-size:11px;font-weight:900;letter-spacing:.1em;color:#8a4d35}
.restaurant-reviews p{font-size:13px;color:#52685b;margin:7px 0 10px}
.restaurant-reviews a{display:inline-flex;align-items:center;gap:5px;margin:0 15px 6px 0;font-size:12px;font-weight:800;color:var(--rust);text-decoration:underline;text-underline-offset:2px}
.restaurant-reviews .card-reviews{margin:11px 0}
.restaurant-reviews .card-reviews .rating-source{text-decoration:none}
.detail-aside>div{background:var(--paper);border:1px solid var(--line);padding:25px;border-radius:11px;position:sticky;top:160px;box-shadow:var(--shadow)}
.detail-aside h2{font-size:27px}
.detail-aside p{display:flex;align-items:flex-start;gap:8px;font-size:13px;color:#536c5c;border-top:1px solid #e9ece5;padding-top:13px;margin-bottom:13px}
.detail-aside p svg{color:#60876d;margin-top:1px}
.detail-aside .button-primary{width:100%;font-size:13px;margin:10px 0 7px}
.detail-aside .rating-note{display:block;font-size:11px;color:#64776a;line-height:1.4;margin:0 0 18px}
.detail-aside .text-link{font-size:12px;white-space:normal}
.detail-social{border-top:1px solid #e9ece5;margin-top:20px;padding-top:19px}
.detail-aside .detail-social p{display:block;border:0;padding:0;margin:7px 0 12px;font-size:12px;line-height:1.5}
.detail-social-links{display:flex;flex-wrap:wrap;gap:8px}
.detail-social-links a{display:inline-flex;align-items:center;gap:7px;border:1px solid #d8e1d7;border-radius:7px;padding:8px 10px;font-size:12px;font-weight:800;color:var(--forest)}
.detail-social-links a:hover{background:#edf2eb}
@media(max-width:600px){.detail-photo img{height:230px}}
.detail-related{background:#f0f0e9;padding:50px 0 65px}
.new-groups{padding-bottom:35px}
.new-group{padding:25px 0 47px;border-top:1px solid #dce0d9}
.new-group-head{display:flex;gap:17px;align-items:flex-start;margin-bottom:22px}
.new-group-head>span{font:700 39px/1 Fraunces,Georgia,serif;color:#ae6b4c}
.new-group-head h2{font-size:29px;margin-bottom:5px}
.new-group-head p{color:#5d7363;font-size:14px;margin:0}
.new-group .place-visual{height:115px}
.new-group .place-card p{margin-bottom:10px}
.events-page{padding-bottom:80px}
.demo-warning{display:flex;gap:13px;background:#fbeee5;border:1px solid #eacdbf;border-radius:10px;padding:17px 19px;color:#934127;margin-bottom:25px}
.demo-warning p{font-size:13px;margin:2px 0 0;color:#80533f}
.events-heading{padding-bottom:22px}
.event-layout{display:grid;grid-template-columns:292px minmax(0,1fr);gap:28px;align-items:start}
.event-sidebar{position:sticky;top:151px;display:grid;gap:15px}
.calendar-panel{background:var(--paper);border:1px solid #dae1d7;border-radius:14px;padding:21px;box-shadow:var(--shadow)}
.calendar-heading{display:flex;justify-content:space-between;align-items:start;gap:8px}
.calendar-heading .eyebrow{margin-bottom:5px;font-size:10px}
.calendar-heading h2{font-size:27px;margin-bottom:17px}
.calendar-nav{display:flex;gap:4px}
.calendar-nav button{width:33px;height:33px;border:1px solid #d9e1d8;border-radius:7px;background:#f6f8f3;color:var(--forest);display:grid;place-items:center}
.calendar-nav button:first-child svg{transform:rotate(180deg)}
.calendar-nav button:hover{background:var(--mint)}
.calendar-month{display:block;font-size:14px;text-transform:capitalize;margin-bottom:12px}
.calendar-weekdays,.calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;text-align:center}
.calendar-weekdays{font-size:10px;color:#73877b;font-weight:800;margin-bottom:5px}
.calendar-weekdays span{padding:5px 0}
.calendar-days button{position:relative;aspect-ratio:1;border:0;border-radius:7px;background:transparent;color:#294b3c;font-size:12px;font-weight:700;padding:0}
.calendar-days button:hover{background:#e8f0e7}
.calendar-days button:disabled{color:#aeb9b0;cursor:default}
.calendar-days button:disabled:hover{background:transparent}
.calendar-days button.is-today{box-shadow:inset 0 0 0 1px #a4b9a7}
.calendar-days button.is-selected{background:var(--forest);color:white;box-shadow:none}
.calendar-days button.has-event:after{content:"";position:absolute;bottom:3px;left:calc(50% - 2px);width:4px;height:4px;border-radius:50%;background:var(--rust)}
.calendar-days button.is-selected.has-event:after{background:#f4c899}
.calendar-hint{display:flex;align-items:center;gap:7px;font-size:10px;color:#677d6c;margin:13px 0 17px}
.calendar-hint span{width:6px;height:6px;border-radius:50%;background:var(--rust)}
.calendar-panel>label{display:block;font-size:11px;font-weight:800;color:#4c6657;margin-bottom:6px}
.calendar-panel>input{display:block;width:100%;min-height:42px;border:1px solid #cbd8ca;border-radius:7px;background:white;color:var(--ink);padding:7px 9px}
.event-sidebar-note{display:flex;align-items:start;gap:10px;padding:14px 16px;background:#e9efe7;border-radius:10px;color:#52715d}
.event-sidebar-note p{font-size:12px;line-height:1.45;margin:0}
.event-main{min-width:0}
.event-controls{background:var(--paper);border:1px solid #dae1d7;border-radius:13px;padding:16px 19px;margin-bottom:27px}
.event-periods{display:flex;flex-wrap:wrap;gap:7px;padding-bottom:16px;border-bottom:1px solid #e4e9e1}
.event-periods button{min-height:40px;border:1px solid #d7e1d5;border-radius:7px;padding:7px 15px;background:#f8faf6;color:#365b48;font-size:12px;font-weight:800}
.event-periods button:hover{border-color:#779783}
.event-periods button.is-active{background:var(--forest);border-color:var(--forest);color:white}
.event-topics{display:flex;align-items:center;gap:7px;padding:14px 0 0;overflow-x:auto;white-space:nowrap}
.event-topics>span{font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#6d806f;margin-right:3px}
.event-topics button{flex:none;min-height:32px;padding:5px 11px;border:1px solid #d7e1d5;border-radius:999px;background:#fff;color:#3a5f48;font-size:11px;font-weight:800}
.event-topics button:hover{border-color:#779783}
.event-topics button.is-active{background:#e4eee3;border-color:#94b298;color:#1d4d37}
.event-selects{display:flex;gap:13px;align-items:end;padding-top:14px}
.event-selects>div{flex:1;min-width:0}
.event-selects label{display:block;font-size:11px;font-weight:800;color:#526d5a;margin-bottom:5px}
.event-selects select{width:100%;min-height:42px;border:1px solid #cbd8ca;border-radius:7px;background:white;color:var(--ink);padding:7px 11px;font-size:12px}
.event-selects>button{border:0;background:transparent;color:var(--rust);font-size:12px;font-weight:800;min-height:42px;white-space:nowrap}
.event-selects>button:hover{text-decoration:underline}
.event-result-heading{display:flex;align-items:end;justify-content:space-between;gap:15px;margin-bottom:21px}
.event-result-heading .eyebrow{font-size:10px;margin-bottom:6px}
.event-result-heading h2{font-size:31px;margin:0;text-transform:none}
.event-result-heading>span{font-size:12px;color:#637a69;white-space:nowrap}
.event-group{margin-bottom:29px}
.event-group-heading{display:flex;align-items:baseline;gap:12px;margin-bottom:11px}
.event-group-heading h3{font:800 13px/1.3 "DM Sans",sans-serif;text-transform:uppercase;letter-spacing:.09em;margin:0;color:#355845}
.event-group-heading span{font-size:11px;color:#849388}
.event-list{display:grid;gap:11px}
.event-card{display:grid;grid-template-columns:180px minmax(0,1fr);min-height:167px;scroll-margin-top:155px;background:var(--paper);border:1px solid #dee5dc;border-radius:11px;overflow:hidden;transition:transform .2s,box-shadow .2s}
.event-card:hover{transform:translateY(-2px);box-shadow:var(--shadow)}
.event-card.is-featured{border-color:#e6c4b1;box-shadow:inset 4px 0 0 #b56140}
.event-thumb{position:relative;min-height:167px;background:linear-gradient(145deg,#d7e7da,#7aa58d);display:grid;place-items:center;color:#255340;overflow:hidden}
.event-thumb>img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;transition:transform .35s}
.event-card:hover .event-thumb>img{transform:scale(1.04)}
.event-thumb>small{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,rgba(0,0,0,.58));color:white;padding:15px 7px 5px;font-size:9px;line-height:1.2}
.event-date-tile{position:absolute;top:10px;left:10px;background:#fffefa;color:var(--forest);border-radius:6px;padding:5px 8px;font-size:11px;font-weight:900;text-transform:uppercase;box-shadow:0 3px 12px rgba(0,0,0,.12)}
.event-card-content{padding:14px 17px 12px;min-width:0}
.event-card-top{display:flex;justify-content:space-between;gap:8px;color:#55705c;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.event-card-top span:last-child{color:#a46248}
.event-sponsored{display:inline-block;margin-top:7px;padding:3px 7px;background:#f7e9dc;border:1px solid #ead3c4;border-radius:4px;color:#823c24;font-size:10px;font-weight:900}
.event-card h3{font-size:21px;margin:7px 0}
.event-card p{display:flex;align-items:start;gap:6px;font-size:11px;color:#516c5a;margin:3px 0}
.event-card p .icon{margin-top:1px}
.event-card .event-summary{display:block;margin:7px 0 10px;font-size:12px;line-height:1.45;color:#425949}
.event-card .event-accessibility{margin-top:8px;line-height:1.45;color:#315d46}
.event-attributes{display:flex;flex-wrap:wrap;gap:5px;margin:9px 0 8px}
.event-attributes span{display:inline-block;padding:4px 7px;border-radius:5px;background:#eaf0e6;color:#315e43;font-size:10px;font-weight:800;line-height:1.2}
.event-actions{display:flex;flex-wrap:wrap;gap:6px 13px;margin:12px 0}
.event-actions a{display:inline-flex;align-items:center;gap:5px;min-height:30px;font-size:11px;font-weight:800;color:#974329;text-decoration:underline;text-underline-offset:2px}
.event-actions a:first-child{padding:5px 9px;border-radius:6px;background:#e8f0e7;color:#254f37;text-decoration:none}
.event-actions a:hover{text-decoration:underline}
.event-actions a:focus-visible{outline:2px solid #974329;outline-offset:2px}
.event-card-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid #e7ebe4;padding-top:8px;margin-top:10px;font-size:11px;color:#6d806f}
.event-card-bottom a{display:inline-flex;align-items:center;gap:5px;color:var(--rust);font-weight:800;white-space:nowrap}
.event-card-bottom a:hover{text-decoration:underline}
.event-empty{margin-bottom:20px}
.event-ad-note{font-size:11px;color:#6c7e6e;border-top:1px solid #dfe5dc;padding-top:12px;max-width:none}
.submit-layout{display:grid;grid-template-columns:1.4fr 1fr;gap:20px;padding-bottom:80px}
.submit-panel,.submit-contact{background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:29px}
.submit-panel h2,.submit-contact h2{font-size:27px}
.submit-panel ol{padding-left:22px;color:#496353}
.submit-panel li{padding-bottom:9px}
.submit-panel p,.submit-contact p{font-size:14px;color:#5e7163}
.submit-contact{background:#e8eee6}
.submit-contact .button-primary{font-size:13px;margin-top:12px}
@media(max-width:1100px){.header-main{grid-template-columns:1fr minmax(260px,420px) auto;gap:15px}.brand strong{font-size:22px}.brand small{font-size:10px}.header-submit{display:none}.welcome{grid-template-columns:minmax(0,1fr) 275px}.welcome-main{grid-template-columns:minmax(0,1fr) 29%}.welcome-copy{padding-left:30px}.welcome-copy h1{font-size:48px}.welcome-art .art-building{transform:scale(.76);transform-origin:bottom left}.featured-grid,.catalog-grid,.related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.nav-inner>a{padding-inline:13px}}
@media(max-width:800px){.utility-inner>span:last-child{display:none}.site-header{position:sticky}.header-main{min-height:69px;display:flex;gap:12px}.brand{margin-right:auto}.brand strong{font-size:22px}.brand small{font-size:10px}.brand-mark{height:38px;width:38px}.header-search{width:44px;height:44px;padding:0;justify-content:center;border:none;background:transparent}.header-search>svg{display:none}.header-search input{display:none}.header-search button{width:44px}.search-button-arrow{display:none}.search-button-magnifier{display:block}.menu-toggle{display:flex}.primary-nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--forest-dark);box-shadow:0 14px 20px rgba(0,0,0,.2)}.primary-nav.is-open{display:block}.nav-inner{display:flex;flex-direction:column;align-items:stretch;max-height:calc(100vh - 75px);overflow-y:auto;padding-block:9px}.nav-inner>a,.nav-inner>a:first-child{padding:14px 19px}.nav-inner .nav-events{margin-left:0}.nav-inner>a.active:after{left:18px;right:auto;width:40px}.welcome{grid-template-columns:1fr}.welcome-main{min-height:410px;grid-template-columns:1fr 32%}.welcome-side{display:grid;grid-template-columns:repeat(2,1fr);gap:0 15px}.welcome-side .side-label,.welcome-side h2,.welcome-side>p,.side-count{grid-column:1/-1}.welcome-side>a{min-height:52px}.side-count{margin-top:13px}.lower-grid{grid-template-columns:1fr}.recurring-panel{grid-template-columns:1fr}.footer-inner{gap:35px}.detail-grid{grid-template-columns:1fr;gap:24px}.detail-aside>div{position:static}.submit-layout{grid-template-columns:1fr}}
@media(max-width:600px){.container{width:min(100% - 32px,1344px)}.utility-inner{min-height:29px;font-size:11px}.brand strong{font-size:19px}.brand small{font-size:9px}.brand-mark{height:36px;width:36px}.brand-mark .icon{width:25px;height:25px}.header-main{min-height:64px}.welcome{padding-top:15px}.welcome-main{display:flex;min-height:0}.welcome-copy{padding:30px 22px 28px}.welcome-copy h1{font-size:clamp(40px,10vw,54px);line-height:1.03}.welcome-copy>p{font-size:15px;margin-bottom:23px}.welcome-art{display:none}.hero-search>div{flex-direction:column;padding:6px;gap:5px}.hero-search input{min-height:44px}.hero-search button{min-height:43px}.quick-searches{font-size:11px}.welcome-side{padding:23px 20px;display:flex}.welcome-side>a{min-height:47px}.categories,.discovery,.lower-grid,.contribution{margin-top:46px}.section-head{align-items:flex-start}.section-head h2{font-size:29px}.section-head .text-link{font-size:11px;margin-top:9px}.category-grid{gap:10px}.category-tile{min-height:163px;padding:15px}.category-tile strong{font-size:17px}.category-tile span{font-size:11px}.category-tile>svg:first-child{margin-bottom:18px}.category-tile>svg:last-child{right:13px;top:16px;width:15px}.discovery{padding:39px 0 43px}.featured-grid,.catalog-grid,.related-grid{grid-template-columns:1fr;gap:13px}.place-card{display:grid;grid-template-columns:115px minmax(0,1fr);min-height:158px}.place-visual{height:100%;min-height:158px}.place-visual-icon{width:62px;height:62px;border-radius:15px}.place-visual-icon .icon{width:32px}.place-visual-label{display:none}.place-card-body{padding:13px 14px 10px}.place-meta{font-size:9px}.place-card h3{font-size:19px;margin-bottom:5px}.place-card p{font-size:11px;margin-bottom:9px}.place-card-footer{font-size:10px;padding-top:7px}.place-card-footer>span{overflow:hidden;text-overflow:ellipsis;display:block;white-space:nowrap}.place-card-footer>span svg{display:none}.newcomer-panel{min-height:300px;padding:26px}.newcomer-panel h2{font-size:35px}.events-panel{padding:21px}.contribution{display:block;padding:20px;margin-bottom:46px}.contribution>div{gap:10px}.contribution h2{font-size:20px}.contribution>a{margin-top:17px}.footer{padding-top:38px}.footer-inner{grid-template-columns:1fr 1fr;gap:28px 17px;padding-bottom:20px}.footer-inner>div:first-child{grid-column:1/-1}.footer-bottom{display:block}.footer-bottom span{display:block;margin-bottom:5px}.page-heading{padding-top:36px;padding-bottom:22px}.page-heading h1{font-size:45px}.page-heading p{font-size:15px}.filter-box{padding:16px}.filter-row{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.filter-row>div:first-child{grid-column:1/-1}.filter-reset{text-align:left}.result-head{align-items:flex-start;margin-top:27px}.result-head>span{font-size:10px;text-align:right;max-width:125px}.detail{padding-top:22px;padding-bottom:44px}.detail h1{font-size:45px}.detail-lead{font-size:16px}.detail-visual{height:230px}.detail-visual small{font-size:9px}.detail-related{padding:38px 0 45px}.new-group{padding-bottom:34px}.new-group .place-visual{min-height:155px}.sample-grid{grid-template-columns:1fr}.sample-event{min-height:0}.submit-panel,.submit-contact{padding:22px}}
@media(min-width:601px) and (max-width:1100px){.welcome-main{display:block}.welcome-art{display:none}.nav-inner>a{padding-inline:11px}}
@media(max-width:600px){.welcome-side{display:none}.welcome-copy h1{font-size:clamp(38px,9.5vw,48px)}.welcome-copy>p{font-size:14px;line-height:1.5}.recurring-panel{padding:23px}}
@media(max-width:600px){.audience-resource{display:block}.audience-resource a{margin-top:15px}}
@media(max-width:600px){.restaurant-method{padding:12px 14px}.restaurant-filter{display:grid;grid-template-columns:1fr 1fr}.restaurant-filter select{min-width:0;width:100%;max-width:none;font-size:11px}.restaurant-filter>span{grid-column:1/-1;margin-left:0}.place-card .card-reviews{gap:6px;margin-bottom:8px}}
@media(min-width:601px) and (max-width:1100px){.welcome-photo-panel{min-height:230px;height:230px}.welcome-photo-panel>img{object-position:center 48%}.welcome-photo-place{bottom:37px}.welcome-photo-panel figcaption{bottom:8px}}
@media(max-width:600px){.welcome-main{display:flex;flex-direction:column}.welcome-photo-panel{min-height:200px;height:200px}.welcome-photo-panel>img{object-position:center 40%}.welcome-photo-place{bottom:40px}.welcome-photo-place strong{font-size:18px}.welcome-photo-panel figcaption{font-size:8px}.welcome-copy h1{font-size:clamp(34px,8.5vw,46px)}}
@media(max-width:900px){.event-layout{grid-template-columns:1fr}.event-sidebar{position:static;grid-template-columns:minmax(0,1fr) minmax(180px,.7fr)}.calendar-panel{max-width:390px}.event-sidebar-note{align-self:start}}
@media(max-width:600px){.events-page{padding-bottom:50px}.demo-warning{padding:13px;font-size:13px}.demo-warning p{font-size:11px}.event-layout{gap:20px}.event-sidebar{grid-template-columns:1fr}.calendar-panel{max-width:none;padding:18px}.calendar-days button{aspect-ratio:auto;height:40px;font-size:13px}.event-sidebar-note{display:none}.event-controls{padding:13px;margin-bottom:20px}.event-periods{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;padding-bottom:12px}.event-periods button{font-size:10px;padding:5px 2px;min-height:39px}.event-selects{display:grid;grid-template-columns:1fr 1fr;gap:9px}.event-selects>button{grid-column:1/-1;text-align:left;min-height:34px}.event-result-heading h2{font-size:25px}.event-result-heading>span{font-size:11px}.event-group-heading{display:block}.event-group-heading span{display:block;margin-top:3px}.event-card{grid-template-columns:105px minmax(0,1fr);min-height:170px}.event-thumb{min-height:170px}.event-thumb>small{font-size:8px}.event-date-tile{top:7px;left:7px;padding:4px 5px;font-size:9px}.event-card-content{padding:10px 11px}.event-card-top{font-size:9px;flex-wrap:wrap;gap:1px 6px}.event-sponsored{font-size:9px;margin-top:5px}.event-card h3{font-size:17px;line-height:1.18;margin:6px 0}.event-card p{font-size:10px}.event-card p .icon{width:13px;height:13px}.event-card-bottom{flex-wrap:wrap;gap:3px;font-size:10px;margin-top:7px;padding-top:6px}.event-card-bottom a{white-space:normal}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
@media(max-width:800px){.utility-inner>.utility-preview{display:none}.utility-inner>span.utility-weather,.utility-inner>a.utility-weather{display:inline-flex}}
@media(max-width:600px){.utility-place-full{display:none}.utility-place-short{display:inline}.utility-inner{gap:8px}.utility-weather [data-weather-label]{display:none}}
@media(max-width:1200px){.event-selects{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.event-selects>button{grid-column:1/-1;text-align:left;min-height:32px}}
@media(max-width:600px){.event-topics{margin-inline:-13px;padding-inline:13px;padding-bottom:2px}.event-topics button{min-height:34px}.event-attributes span{font-size:9px}}
@media(max-width:900px){.filter-row{grid-template-columns:repeat(2,minmax(0,1fr))}.attraction-types{grid-template-columns:repeat(2,minmax(0,1fr))}.route-resource{align-items:flex-start;flex-direction:column}.route-resource>div:last-child{justify-content:flex-start}}
@media(max-width:600px){.place-type-section{margin-top:34px;margin-bottom:36px}.place-type-links{grid-template-columns:repeat(2,minmax(0,1fr))}.place-type-links a{font-size:11px;padding:11px 12px}.attraction-types{grid-template-columns:1fr;gap:8px}.attraction-types a{min-height:58px;padding:11px 13px}.attraction-types strong{font-size:14px}.type-shortcuts a{font-size:11px}.filter-row>div:first-child{grid-column:auto}.route-resource a{white-space:normal}}
@media(max-width:600px){.category-grid{grid-template-columns:1fr;gap:11px}.category-tile{display:grid;grid-template-columns:112px minmax(0,1fr);min-height:124px;padding:0}.category-media{height:100%;min-height:124px}.category-media-label{display:none}.category-content{min-height:124px;padding:15px 15px 12px}.category-symbol{display:none}.category-content strong{font-size:20px;line-height:1.08}.category-description{font-size:11px;margin-top:5px}.category-more{font-size:10px;padding-top:8px}.category-more .icon{width:15px;height:15px}.category-note{text-align:left;font-size:9px}}
@media(max-width:600px){.web-cta{display:block;min-height:0;margin-bottom:45px}.web-cta-art{position:relative;z-index:auto;height:185px;object-position:right center}.web-cta:after{display:none}.web-cta-content{padding:25px 23px 29px}.web-cta-kicker{font-size:10px;margin-bottom:9px}.web-cta h2{font-size:33px}.web-cta p{font-size:13px;margin-bottom:19px}.web-cta a{width:100%}}
@media(max-width:800px){.nav-inner .nav-events{margin:6px 12px;padding:11px 13px}.news-layout{grid-template-columns:1fr}}
@media(max-width:600px){.events-panel h2{font-size:27px}.today-promo{grid-template-columns:76px minmax(0,1fr) 16px;gap:8px;min-height:100px}.today-promo-thumb{width:76px;min-height:100px}.today-promo-copy>strong{font-size:16px}.today-promo-meta{font-size:9px}.today-promo-meta>span{font-size:8px}.today-promo-place{font-size:9px}.news-layout{gap:12px;padding-bottom:50px}.news-intro,.news-now{padding:24px}.news-intro{min-height:0}.news-intro h2{font-size:31px}.news-topics{margin-top:20px}}
.resident-tools{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:20px;margin-bottom:24px}
.newsletter-tile,.important-links-tile{position:relative;min-height:282px;overflow:hidden;border-radius:13px;padding:29px 32px}
.newsletter-tile{background:#e8efe6;border:1px solid #d3dfd1}
.important-links-tile{background:var(--paper);border:1px solid var(--line)}
.resident-tool-icon{position:absolute;top:25px;right:27px;display:grid;place-items:center;width:45px;height:45px;border-radius:12px;background:#d6e5d6;color:var(--forest)}
.important-links-tile .resident-tool-icon{background:#f2e7d9;color:var(--rust)}
.resident-tools .eyebrow{margin-bottom:8px;font-size:10px}
.resident-tools h2{max-width:19ch;font-size:29px;margin-bottom:9px;padding-right:25px}
.resident-tools p{max-width:50ch;font-size:13px;color:#526a5a;margin-bottom:18px}
.newsletter-status{display:inline-flex;align-items:center;min-height:38px;padding:8px 13px;border-radius:7px;background:#f8faf4;border:1px solid #cadcc9;color:#28553e;font-size:12px;font-weight:800}
.newsletter-weekend-link{display:flex;align-items:center;gap:7px;width:max-content;max-width:100%;margin:15px 0 13px;color:#194d38;font-size:13px;font-weight:800;text-decoration:underline;text-underline-offset:3px}
.newsletter-tile small{display:block;max-width:52ch;margin-top:10px;color:#5d7361;font-size:11px;line-height:1.45}
.important-links-preview{display:flex;flex-wrap:wrap;gap:6px;margin:2px 0 16px}
.important-links-preview span{padding:5px 8px;border-radius:5px;background:#f3f1e9;color:#456454;font-size:10px;font-weight:800}
.important-links-tile>a{display:inline-flex;align-items:center;gap:8px;color:var(--rust);font-size:13px;font-weight:800}
.important-links-tile>a:hover{text-decoration:underline;text-underline-offset:3px}
.important-links-page{padding-bottom:80px}
.important-link-group{margin-bottom:34px}
.important-link-group h2{font-size:29px;margin-bottom:16px}
.important-link-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.important-link-card{display:flex;align-items:center;gap:15px;min-height:104px;padding:18px;background:var(--paper);border:1px solid #dce3d9;border-radius:10px;transition:transform .2s,box-shadow .2s,border-color .2s}
.important-link-card:hover{transform:translateY(-2px);box-shadow:var(--shadow);border-color:#a5c1aa}
.important-link-icon{width:43px;height:43px;flex:none;display:grid;place-items:center;border-radius:10px;background:#e9f0e7;color:#416a50}
.important-link-card>span:nth-child(2){display:grid;gap:4px;min-width:0}
.important-link-card strong{font-size:14px;color:var(--ink)}
.important-link-card small{font-size:11px;color:#5c7061;line-height:1.4}
.important-link-card>.icon{margin-left:auto;color:var(--rust)}
.important-links-note{font-size:12px;color:#647569}
@media(max-width:800px){.resident-tools{grid-template-columns:1fr}.important-link-grid{grid-template-columns:1fr}}
@media(max-width:600px){.resident-tools{gap:12px;margin-top:12px;margin-bottom:18px}.newsletter-tile,.important-links-tile{min-height:0;padding:24px}.resident-tool-icon{top:20px;right:20px;width:40px;height:40px}.resident-tools h2{font-size:26px}.important-links-page{padding-bottom:50px}.important-link-group h2{font-size:25px}.important-link-card{min-height:88px;padding:13px}.important-link-icon{width:37px;height:37px}}
.decision-strip{display:grid;grid-template-columns:240px minmax(0,1fr);gap:25px;align-items:center;margin-top:24px;padding:19px 23px;background:#fffefa;border:1px solid #dce3da;border-radius:13px;box-shadow:0 4px 18px rgba(23,53,44,.035)}
.decision-strip .eyebrow{font-size:10px;margin-bottom:4px}.decision-strip h2{font-size:22px;margin:0}.decision-links{display:flex;flex-wrap:wrap;gap:8px}
.decision-links a{display:inline-flex;align-items:center;gap:8px;min-height:39px;padding:7px 10px;background:#edf3eb;border:1px solid #d2e0d0;border-radius:7px;color:#245543;font-size:12px;font-weight:800;transition:background .2s,transform .2s}
.decision-links a:hover{background:#deebda;transform:translateY(-2px)}.decision-links a .icon:last-child{width:14px}
.search-guide-hint{display:flex;align-items:center;gap:10px;margin-top:-10px;margin-bottom:16px;padding:12px 16px;background:#e8f0e7;border:1px solid #d4e2d3;border-radius:9px;color:#355945;font-size:12px}.search-guide-hint>.icon{color:var(--rust)}.search-guide-hint a{display:inline-flex;align-items:center;gap:5px;color:#914831;font-weight:800;text-decoration:underline;text-underline-offset:2px}
.section-intro{font-size:14px;color:#566b5d;max-width:78ch;margin:-8px 0 23px}
.editorial-places{margin-top:58px}.editorial-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:13px}
.editorial-group{min-width:0;padding:18px 13px 11px;background:var(--paper);border:1px solid #dfe5dc;border-radius:12px;box-shadow:0 4px 16px rgba(23,53,44,.035)}
.editorial-group h3{font-size:23px;margin-bottom:5px}.editorial-group>p{font-size:11px;line-height:1.4;color:#607368;min-height:32px;margin-bottom:12px}
.editorial-group>div{display:grid;gap:5px}.editorial-group a{display:flex;align-items:flex-start;justify-content:space-between;gap:5px;padding:9px 6px;border-top:1px solid #e8ebe4;color:#234d3e;min-width:0}
.editorial-group a:hover{background:#f2f6ef}.editorial-group a>span{min-width:0}.editorial-group a strong{display:inline;font-size:12px;line-height:1.25}.editorial-group a .icon:first-child{display:inline;vertical-align:-3px;color:var(--rust)}
.editorial-group a small{display:block;color:#67786c;font-size:10px;line-height:1.35;margin:3px 0 0 20px}.editorial-group a>.icon{margin-top:3px;width:14px;color:var(--rust)}
.event-sources{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:30px;align-items:center;margin-top:48px;padding:28px 31px;background:#e9efe6;border:1px solid #d4e0d1;border-radius:13px}
.event-sources h2{font-size:29px;margin-bottom:10px}.event-sources p{font-size:13px;color:#52695a;margin:0}.event-sources .eyebrow{margin-bottom:7px}
.event-source-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.event-source-links a{display:flex;align-items:flex-start;justify-content:space-between;gap:7px;min-height:92px;padding:13px 11px;background:#fffefa;border:1px solid #d5e0d3;border-radius:8px}
.event-source-links a:hover{border-color:#9dbba1;box-shadow:0 5px 15px rgba(23,53,44,.07)}.event-source-links strong{display:block;font-size:12px;line-height:1.25}.event-source-links small{display:block;font-size:10px;color:#64766a;line-height:1.3;margin-top:5px}.event-source-links .icon{color:var(--rust);width:15px}
.top-brief{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding-top:16px}.top-brief>a,.real-event-paths>a{display:flex;align-items:center;gap:12px;padding:13px 17px;border:1px solid #dfddd0;border-radius:10px;background:#fffbf4;min-width:0;transition:border-color .2s,transform .2s}.top-brief>a:hover,.real-event-paths>a:hover{border-color:#be9374;transform:translateY(-2px)}.top-brief-icon{display:grid;place-items:center;flex:none;width:35px;height:35px;border-radius:9px;background:#f2e7d9;color:#925139}.top-brief>a:nth-child(2) .top-brief-icon{background:#e5eeea;color:#426e65}.top-brief>a>span:nth-child(2),.real-event-paths>a>span{min-width:0;display:grid;gap:1px}.top-brief strong,.real-event-paths strong{font-size:13px}.top-brief small,.real-event-paths small{font-size:11px;color:#68786c;line-height:1.3}.top-brief>a>.icon:last-child,.real-event-paths>a>.icon:last-child{margin-left:auto;color:var(--rust)}.top-brief+.welcome{padding-top:16px}
.real-event-paths{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:34px}.real-event-paths>a{background:#f2f5ee}.real-event-paths>a>.icon:first-child{color:var(--rust)}
.recurring-quicklinks{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px;padding:15px 20px;background:#f4eadd;border:1px solid #e7d5c0;border-radius:10px}.recurring-quicklinks>div{display:flex;align-items:center;gap:12px}.recurring-quicklinks>div>.icon{color:#925139}.recurring-quicklinks strong,.recurring-quicklinks small{display:block}.recurring-quicklinks strong{font-size:13px}.recurring-quicklinks small{font-size:11px;color:#6f695d}.recurring-quicklinks>a{display:inline-flex;align-items:center;gap:5px;color:#8d4933;font-size:12px;font-weight:800;white-space:nowrap}.recurring-quicklinks>a:hover{text-decoration:underline}
.worship-section,.sport-page{padding-bottom:75px}.section-heading-local{margin:4px 0 18px}.section-heading-local .eyebrow{margin-bottom:6px;font-size:10px}.section-heading-local h2{font-size:clamp(28px,3vw,39px);margin:0 0 6px}.section-heading-local p{font-size:13px;color:#627469;margin:0}.city-worship-heading,.sport-clubs-heading{margin-top:45px}.worship-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.worship-card,.sport-club-card{background:var(--paper);border:1px solid #dde4d9;border-radius:13px;padding:23px;min-width:0;box-shadow:0 4px 16px rgba(23,53,44,.035)}.worship-featured{background:#f2e9db;border-color:#e6cdb4;padding:28px 31px}.worship-card-top,.sport-club-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:15px}.worship-glyph,.sport-glyph{width:42px;height:42px;display:grid;place-items:center;border-radius:10px;background:#e4efe7;color:#376750}.worship-featured .worship-glyph{background:#e9d8bf;color:#8b513a}.scope-pill{display:inline-block;border:1px solid #d2dfd1;background:#edf4e9;color:#426751;border-radius:20px;padding:4px 9px;font-size:10px;font-weight:800;text-align:right}.worship-featured .scope-pill{background:#fbf4e9;border-color:#d8c2a9;color:#88543e}.worship-card .eyebrow{font-size:10px;margin-bottom:5px}.worship-card h2{font-size:26px;margin:0 0 10px}.worship-featured h2{font-size:31px}.worship-address{display:flex;align-items:center;gap:7px;font-size:13px;color:#4f6559;margin-bottom:16px}.worship-address .icon{color:var(--rust)}.worship-schedule{font-size:15px;margin-bottom:7px;max-width:none}.worship-other{font-size:12px;color:#5c7164;margin-bottom:18px}.source-link{display:inline-flex;align-items:center;gap:6px;color:#8d4933;font-size:11px;font-weight:800;text-decoration:underline;text-underline-offset:3px}.source-link:hover{color:#5c3124}.content-freshness{font-size:12px;color:#5a6d5e;margin:20px 0 0;max-width:90ch}.content-freshness a{text-decoration:underline;text-underline-offset:2px}
.sport-events{display:grid;gap:11px}.sport-event-card{display:grid;grid-template-columns:84px minmax(0,1fr);gap:18px;padding:19px 22px;background:#fffefa;border:1px solid #d9e2d8;border-radius:12px}.sport-event-date{display:flex;flex-direction:column;justify-content:center;align-items:center;background:#e8f0e7;color:#315845;border-radius:9px;min-height:88px}.sport-event-date strong{font-family:Fraunces,Georgia,serif;font-size:33px;line-height:1}.sport-event-date span{font-size:11px;font-weight:800}.sport-event-card .eyebrow{font-size:10px;margin-bottom:5px}.sport-event-card h3{font-size:23px;margin-bottom:7px}.sport-event-card p{display:flex;flex-wrap:wrap;align-items:center;gap:5px;font-size:12px;color:#566a5b;margin-bottom:8px;max-width:none}.sport-event-card p .icon{color:var(--rust)}.sport-event-empty{background:#e9f0e8;border:1px solid #d5e2d3;border-radius:10px;padding:20px;font-size:13px}.sport-event-empty a{text-decoration:underline;font-weight:800}.sport-filter{display:flex;align-items:center;gap:10px;margin-bottom:15px;font-size:12px}.sport-filter label{font-weight:800}.sport-filter select{min-width:220px;max-width:100%;padding:9px 12px;border:1px solid #cbd8ca;border-radius:7px;background:white;color:var(--ink)}.sport-filter>span{margin-left:auto;color:#597063;font-weight:800}.sport-club-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.sport-club-card{display:flex;flex-direction:column;min-height:210px}.sport-club-card h3{font-size:22px;margin-bottom:12px}.sport-tags{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:20px}.sport-tags span{padding:4px 8px;background:#e7f0e7;color:#3a6650;border-radius:5px;font-size:10px;font-weight:800}.sport-club-card .source-link{margin-top:auto}
@media(max-width:900px){.sport-club-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.top-brief,.real-event-paths,.worship-grid,.sport-club-grid{grid-template-columns:1fr}.top-brief{gap:7px;padding-top:10px}.top-brief>a{padding:10px 12px}.top-brief small{font-size:10px}.top-brief+.welcome{padding-top:10px}.recurring-quicklinks{align-items:flex-start;flex-direction:column}.recurring-quicklinks>a{margin-left:35px}.worship-section,.sport-page{padding-bottom:52px}.worship-card,.sport-club-card,.worship-featured{padding:20px}.worship-featured h2{font-size:26px}.section-heading-local h2{font-size:29px}.sport-event-card{grid-template-columns:65px minmax(0,1fr);gap:10px;padding:12px}.sport-event-date{min-height:70px}.sport-event-date strong{font-size:27px}.sport-event-card h3{font-size:19px}.sport-filter{flex-wrap:wrap}.sport-filter select{flex:1;min-width:180px}.sport-filter>span{width:100%;margin-left:0}}
.guide-preview{margin-top:57px}.guide-preview>div:last-child{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}
.guide-preview>div:last-child>a{display:block;padding:26px 29px;min-width:0;background:#f0e9dc;border:1px solid #e4d8c8;border-radius:12px;transition:transform .2s,box-shadow .2s}.guide-preview>div:last-child>a:nth-child(2){background:#e3ede9;border-color:#d0dfd8}
.guide-preview>div:last-child>a:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.guide-preview .eyebrow{font-size:10px;margin-bottom:7px}.guide-preview h3,.guide-preview h2{font-size:27px;margin-bottom:8px}.guide-preview p{font-size:13px;color:#53695b;margin-bottom:20px}.guide-preview a>span:last-child{display:inline-flex;align-items:center;gap:8px;color:var(--rust);font-size:12px;font-weight:800}
.guide-index{margin-top:0;margin-bottom:80px}.guide-article{max-width:960px;margin-bottom:84px;padding:35px 42px;background:#fffefa;border:1px solid #e3e5dd;border-radius:14px}.guide-toc{display:flex;gap:10px;flex-wrap:wrap;padding-bottom:20px;border-bottom:1px solid #e0e5dc}.guide-toc a{padding:6px 10px;border-radius:7px;background:#e9f0e6;color:#275944;font-size:12px;font-weight:800}
.guide-article section{scroll-margin-top:160px;padding-top:24px}.guide-article h2{font-size:28px;margin-bottom:10px}.guide-article p{max-width:80ch;color:#455d4f;font-size:15px;line-height:1.7}.guide-article p a,.guide-source a{color:#98452f;text-decoration:underline;text-underline-offset:3px}.guide-source{margin-top:20px;padding:15px 18px;background:#edf3eb;border-radius:8px;color:#405b49;font-size:13px}
.seo-panel{margin:50px 0 35px;padding:28px;background:#f2f4ed;border:1px solid #dce5d8;border-radius:13px}
.seo-panel-intro{max-width:75ch}.seo-panel-intro h2{font-size:clamp(27px,3vw,36px);margin:8px 0}.seo-panel-intro p{font-size:14px;color:#52695b;line-height:1.6;margin:0 0 22px}
.seo-panel-grid{display:grid;gap:14px}.seo-panel-grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.seo-panel-grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.seo-panel-grid article{min-width:0;background:#fffefa;border:1px solid #e2e8dd;border-radius:9px;padding:20px}.seo-panel-grid h3{font-size:21px;line-height:1.2;margin:0 0 10px}.seo-panel-grid p{font-size:13px;line-height:1.65;color:#4c6254;margin:0 0 13px}
.content-links{display:flex;flex-wrap:wrap;gap:8px 17px}.content-links a{display:inline-flex;align-items:center;gap:5px;color:#93472f;font-size:12px;line-height:1.4;font-weight:800;text-decoration:underline;text-underline-offset:2px}.content-links a:hover{color:#6d3424}.content-links .icon{flex:0 0 auto}
.detail-editorial{margin:0 0 28px;padding-bottom:24px;border-bottom:1px solid #dde7dd}.detail-editorial h2{font-size:28px;margin-bottom:10px}.detail-editorial p{color:#4c6557;line-height:1.7;margin:0 0 12px}
@media(max-width:900px){.seo-panel-grid.cols-3{grid-template-columns:1fr 1fr}.seo-panel-grid.cols-3 article:last-child{grid-column:1/-1}}
@media(max-width:600px){.seo-panel{padding:21px 17px;margin:35px 0 25px}.seo-panel-grid.cols-2,.seo-panel-grid.cols-3{grid-template-columns:1fr}.seo-panel-grid.cols-3 article:last-child{grid-column:auto}.seo-panel-grid article{padding:17px}.detail-editorial h2{font-size:24px}}
.partner-strip{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-top:50px;padding:25px 29px;background:#f1e7d9;border:1px solid #e6d5c2;border-radius:12px}.partner-strip .eyebrow{margin-bottom:5px;font-size:10px}.partner-strip h2{font-size:26px;margin-bottom:5px}.partner-strip p{font-size:13px;color:#5b6456;max-width:75ch;margin:0}.partner-strip>a{display:inline-flex;align-items:center;gap:8px;flex:none;padding:11px 15px;border-radius:7px;background:var(--forest);color:white;font-size:12px;font-weight:800}.partner-strip>a:hover{background:var(--forest-dark)}
.partner-page{margin-bottom:80px}.partner-benefits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.partner-benefits article{padding:25px;background:#fffefa;border:1px solid #e1e5dd;border-radius:12px}.partner-benefits article>span{display:inline-flex;color:#a04c32;margin-bottom:15px}.partner-benefits h2{font-size:24px;margin-bottom:9px}.partner-benefits p{font-size:13px;color:#53695b;margin:0}.partner-contact{display:grid;grid-template-columns:1.2fr .8fr;gap:30px;align-items:center;margin-top:18px;padding:28px 31px;background:#e8efe6;border:1px solid #d6e2d4;border-radius:12px}.partner-contact .eyebrow{margin-bottom:6px}.partner-contact h2{font-size:29px;margin-bottom:10px}.partner-contact p{font-size:13px;color:#53685b}.partner-contact>p{margin:0;padding:17px;border-left:3px solid #b26747}.partner-contact .button-primary{font-size:12px}
@media(max-width:1100px){.editorial-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.decision-strip{grid-template-columns:1fr}.event-sources{grid-template-columns:1fr}.event-source-links{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.editorial-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.event-source-links{grid-template-columns:1fr}.event-source-links a{min-height:0}.partner-benefits{grid-template-columns:1fr}.partner-contact{grid-template-columns:1fr}.partner-strip{display:block}.partner-strip>a{margin-top:17px}.guide-preview>div:last-child{grid-template-columns:1fr}}
@media(max-width:480px){.decision-strip{padding:17px}.decision-links{display:grid;grid-template-columns:1fr 1fr}.decision-links a{font-size:11px}.editorial-grid{grid-template-columns:1fr}.editorial-group>p{min-height:0}.event-sources{padding:20px}.editorial-places{margin-top:45px}.guide-article{padding:22px 20px}.guide-article h2{font-size:24px}.guide-article p{font-size:14px}.guide-toc{gap:6px}.guide-toc a{font-size:11px}.partner-contact,.partner-benefits article{padding:21px}}
@media(max-width:1100px){
  .menu-toggle{display:flex}
  .primary-nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--forest-dark);box-shadow:0 14px 20px rgba(0,0,0,.2)}
  .primary-nav.is-open{display:block}
  .nav-inner{display:flex;flex-direction:column;align-items:stretch;gap:2px;min-height:0;max-height:calc(100vh - 75px);overflow-y:auto;padding-block:9px}
  .nav-inner>a,.nav-inner>a:first-child{width:100%;padding:12px 18px;min-height:43px}
  .nav-inner .nav-events{width:auto;margin:5px 0 5px;min-height:42px;padding:10px 13px}
  .nav-group{width:100%}
  .nav-group summary{min-height:44px;padding:11px 18px;justify-content:space-between}
  .nav-dropdown{position:static;width:auto;margin:0 11px 8px;padding:4px 0 4px 11px;background:#174438;color:white;border:0;border-left:2px solid #bd916b;border-radius:0;box-shadow:none}
  .nav-dropdown a{padding:10px 11px}
  .nav-dropdown a:hover,.nav-dropdown a.active{background:#285d4f}
}
@media(max-width:600px){.place-card-hours{font-size:10px;padding:7px 8px;margin-bottom:8px}.place-card-body>p{margin-bottom:8px}.detail-hours{padding:17px 18px}.detail-hours h2{font-size:22px}}
@media(max-width:600px){.event-card{grid-template-columns:1fr;min-height:0}.event-thumb{height:150px;min-height:150px}.event-card-content{padding:16px}.event-card h3{font-size:21px}.event-card p{font-size:12px}.event-card .event-summary{font-size:13px}.event-actions a{font-size:12px}.event-card-bottom{font-size:11px}.event-card-bottom a{white-space:normal}}
