:root{--ink:#192b28;--muted:#65766f;--green:#153b35;--green2:#286257;--peach:#d28a60;--cream:#faf7f1;--sand:#f1e9db;--line:#e5e9e3;--white:#fff;--radius:17px;--shadow:0 12px 34px rgba(26,48,42,.075)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font:15px/1.65 system-ui,-apple-system,'Segoe UI',sans-serif}img{max-width:100%}a{text-decoration:none;color:inherit}button,input,select,textarea{font:inherit}button{cursor:pointer}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.15}h1,h2{font-family:Georgia,'Times New Roman',serif;letter-spacing:-.028em;font-weight:500}h1{font-size:clamp(37px,4.9vw,70px)}h2{font-size:clamp(29px,3.3vw,43px)}h3{font-size:21px}.container{width:min(1180px,calc(100% - 42px));margin:auto}.muted{color:var(--muted)}.eyebrow{font-size:11px;letter-spacing:.14em;font-weight:800;color:#956044;text-transform:uppercase}.skip-link{position:absolute;left:-9999px;z-index:99}.skip-link:focus{left:12px;top:12px;background:#fff;padding:10px}
.site-header{background:#fff;position:sticky;top:0;z-index:50;border-bottom:1px solid var(--line);box-shadow:0 1px 16px rgba(20,40,35,.03)}.header-row{min-height:84px;display:flex;align-items:center;gap:32px}.logo{display:flex;align-items:center;gap:10px;font-size:21px;font-weight:800;letter-spacing:-.055em;line-height:1.1;white-space:nowrap}.logo span:last-child{display:block}.logo .logo-accent{display:inline;color:#bb704e}.logo small{display:block;font-size:9px;font-weight:750;letter-spacing:.28em;color:var(--muted);margin-top:3px}.logo-mark{width:43px;height:43px;border-radius:12px;background:var(--green);color:#fff;display:grid;place-items:center;transform:rotate(-6deg)}.logo-mark svg{transform:rotate(6deg);width:24px;height:24px}.nav{display:flex;align-items:center;gap:27px;margin-left:auto}.nav a{font-size:13px;font-weight:650}.nav a:hover{color:#b96549}.nav-cta{border:1px solid #d1e2db;color:var(--green);padding:10px 15px;border-radius:10px;display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:700}.nav-cta:hover{background:#f0f8f4}
.button{border:1px solid transparent;border-radius:11px;padding:12px 18px;font-weight:750;display:inline-flex;justify-content:center;align-items:center;gap:10px;font-size:13px;cursor:pointer;line-height:1.3}.button.primary{background:var(--green);color:#fff}.button.primary:hover{background:#275f52}.button.outline{background:#fff;color:var(--green);border-color:#bed2c8}.button.outline:hover{background:#f3f9f6}.button.full{width:100%}
.hero{background:#f9f7f1;position:relative;overflow:hidden}.hero-layout{display:grid;grid-template-columns:1.13fr .87fr;gap:65px;align-items:center;padding-top:76px;padding-bottom:78px}.hero h1{margin:14px 0 19px;max-width:710px}.hero h1 em{font-weight:400;color:#be7652}.hero-intro{font-size:17px;max-width:565px;color:#64716b;margin-bottom:28px}.hero-kicker{color:#9a6b46}.search-form{display:flex;gap:9px;align-items:stretch}.search-field{display:flex;align-items:center;gap:8px;position:relative;background:white;border:1px solid #d6e0da;border-radius:12px;padding:0 12px;flex:1;min-width:0}.search-field svg{color:#8a9a93;flex:none}.search-field input{width:100%;border:0;outline:0;padding:15px 5px;min-width:0;background:transparent;color:var(--ink)}.hero-search{max-width:650px;background:#fff;border:1px solid #e1e7e1;box-shadow:var(--shadow);border-radius:15px;padding:7px}.hero-search .search-field{border:0}.hero-links{display:flex;align-items:center;flex-wrap:wrap;gap:22px;margin-top:22px}.hero-links>a,.hero-links>button{color:var(--green);font-size:13px;font-weight:700;background:none;border:0;padding:0;display:flex;gap:4px}.hero-visual{position:relative;max-width:450px}.hero-visual-img{border-radius:28px;overflow:hidden;background:#e5e7df;box-shadow:0 25px 60px rgba(40,60,51,.1);aspect-ratio: .92}.hero-visual-img img{width:100%;height:100%;object-fit:cover}.hero-floating{position:absolute;bottom:28px;left:-28px;padding:17px 21px;border-radius:12px;background:#fff;box-shadow:var(--shadow);color:#c07b52;display:grid;grid-template-columns:25px auto;align-items:center;gap:0 8px}.hero-floating b{font-size:23px;color:var(--green)}.hero-floating span{grid-column:2;font-size:11px;color:var(--muted)}
.section{padding-top:70px;padding-bottom:75px}.section-soft{background:#f7f9f7}.section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:28px}.section-head h2{margin:3px 0 8px}.section-head p{color:var(--muted)}.text-link{color:#1e695c;font-weight:750;font-size:13px}.type-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.type-card{padding:29px;border:1px solid var(--line);background:#fff;border-radius:17px;transition:transform .2s,box-shadow .2s}.type-card:hover,.venue-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.type-card>span{font-size:28px;color:#b76c4a;display:block;margin-bottom:15px}.type-card h3{font-size:22px;font-family:Georgia,serif}.type-card p{min-height:60px;color:var(--muted)}.type-card strong{font-size:13px;color:var(--green)}.city-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.city-grid a{display:grid;position:relative;padding:17px 19px;border-radius:12px;background:#fff;border:1px solid #e0e8e2;min-height:99px}.city-grid a b{font-size:15px}.city-grid a span{font-size:12px;color:var(--muted)}.city-grid a small{position:absolute;right:15px;bottom:15px;color:var(--green);font-size:11px}.city-grid a:hover{border-color:#9cc6b1}.two-col{display:grid;grid-template-columns:1fr .87fr;gap:70px;align-items:center}.two-col>div:first-child>p:not(.eyebrow){color:var(--muted)}.checklist p{font-weight:600;font-size:14px;margin:0 0 9px}.faq-art{background:var(--cream);border:1px solid #ede5d8;border-radius:22px;padding:44px}.faq-art h3{font:normal 33px/1.15 Georgia,serif}.faq-art p{color:var(--muted);margin:18px 0 26px}
.page-section{padding-top:29px;padding-bottom:80px}.breadcrumbs{display:flex;flex-wrap:wrap;align-items:center;gap:9px;color:var(--muted);font-size:12px;margin-bottom:33px}.breadcrumbs a:hover{color:var(--green)}.listing-head{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:29px}.listing-head h1{font-size:clamp(31px,3.6vw,48px);margin:5px 0 12px}.lead{font-size:15px;color:var(--muted);max-width:790px}.result-count{flex:none;background:#eef8f2;color:#236047;border:1px solid #cae4d5;border-radius:99px;font-size:12px;font-weight:800;padding:9px 13px}.venue-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.venue-card{border:1px solid var(--line);background:#fff;border-radius:18px;overflow:hidden;transition:transform .2s,box-shadow .2s;display:flex;flex-direction:column}.card-image{position:relative;background:#ede9df;display:block;aspect-ratio:16/9}.card-image img{width:100%;height:100%;object-fit:cover}.card-type{position:absolute;left:12px;bottom:12px;border-radius:99px;background:#fff;font-size:11px;font-weight:800;color:var(--green);padding:6px 10px}.venue-card-inner{padding:18px;display:flex;flex-direction:column;flex:1}.venue-card h3{margin:0 0 12px;font:700 19px/1.25 system-ui,sans-serif;letter-spacing:-.02em}.venue-card h3 a:hover{color:#af654c}.card-location{display:flex;align-items:center;gap:5px;font-size:13px;color:var(--green);margin-bottom:5px}.card-location svg{width:16px;height:16px;flex:none}.card-address{font-size:12px;color:var(--muted);margin:0 0 20px;min-height:35px}.card-actions{display:flex;justify-content:space-between;align-items:center;margin-top:auto;border-top:1px solid var(--line);padding-top:15px;gap:12px}.card-actions a{font-size:12px;font-weight:800;display:flex;gap:4px;align-items:center}.card-more{color:var(--green)}.card-call{color:#a56646}.card-actions svg{width:15px}.empty{border:1px dashed #ccdcd3;text-align:center;padding:48px 20px;border-radius:14px;background:#f9fbf9}.empty h2{font-size:27px}.advice,.selected-venue{background:#f8faf8;border:1px solid #e6ebe6;padding:19px;border-radius:12px;font-size:13px;color:var(--muted);margin-top:28px}.pager{display:flex;justify-content:center;gap:16px;align-items:center;margin-top:37px;font-size:12px}.pager a{border:1px solid var(--line);padding:9px 12px;border-radius:8px;color:var(--green);font-weight:700}
.place-picker{border:1px solid #e4ebe6;background:#f8fbf9;padding:21px;border-radius:16px;margin-bottom:30px}.place-picker-head{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:15px}.place-picker-head h2{font-size:21px;margin:0}.place-picker-head p{font-size:13px;color:var(--muted);margin:0}.place-quick-links{display:flex;flex-wrap:wrap;gap:8px}.place-quick-links a{background:#fff;border:1px solid #d8e4dc;border-radius:40px;padding:8px 12px;display:flex;align-items:center;gap:9px;font-size:12px;font-weight:700}.place-quick-links a small{color:#34785d}.place-disclosure{margin-top:13px;border-top:1px solid #dfe9e1;padding-top:11px}.place-disclosure summary{cursor:pointer;color:var(--green);font-size:13px;font-weight:800}.place-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px 14px;max-height:300px;overflow:auto;margin-top:12px}.place-list a{border-bottom:1px solid #e2ebe4;padding:8px 4px;font-size:12px;display:flex;justify-content:space-between;gap:8px}.place-list small{color:#2d7761}
.profile-head{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:27px}.profile-head h1{font-size:clamp(31px,3.6vw,49px);margin:8px 0}.profile-head p:not(.eyebrow){display:flex;align-items:center;gap:5px;color:var(--muted);font-size:13px}.profile-head .chip-row{margin-top:12px}.profile-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(290px,.8fr);gap:25px}.profile-layout>div{min-width:0}.feature-photo{height:300px;border-radius:18px;background:#f0ebe3;overflow:hidden;margin-bottom:23px}.feature-photo img{width:100%;height:100%;object-fit:cover}.info-panel{padding:26px;border:1px solid var(--line);background:#fff;border-radius:16px;margin-bottom:22px}.info-panel h2{font-size:25px;margin-bottom:16px}.info-panel h3{font-size:16px;margin:20px 0 12px}.info-panel>p{font-size:14px}.details{display:grid;grid-template-columns:repeat(2,1fr);gap:19px}.details b{font-size:12px}.details p{font-size:14px;margin-top:4px;margin-bottom:0;color:var(--muted);overflow-wrap:anywhere}.chip-row{display:flex;flex-wrap:wrap;gap:8px}.chip{border:1px solid #dae8dd;border-radius:30px;padding:7px 11px;background:#f3f9f4;font-size:12px;color:#356047}.aside-panel{border:1px solid var(--line);padding:22px;border-radius:17px;position:sticky;top:105px}.aside-panel h2{font-size:23px}.aside-panel .button{margin-bottom:10px}.profile-map{height:255px;border-radius:13px;background:#e6eee8;margin-top:12px;z-index:0}.map-caption{font-size:11px;margin:9px 0 0}.social-links{display:flex;gap:10px;flex-wrap:wrap;margin:10px 0}.social-links a{font-size:12px;color:var(--green);font-weight:750}.related{margin-top:45px}.related h2{font-size:29px}.profile-ad-slot{margin:15px 0 24px;text-align:center;overflow:hidden}
.filters-panel{display:grid;grid-template-columns:2fr 1fr 1.1fr auto;gap:13px;align-items:end;background:#f9fbf9;border:1px solid var(--line);padding:18px;border-radius:14px;margin-bottom:29px}.filters-panel label{font-size:12px;font-weight:800;display:grid;gap:6px}.filters-panel input,.filters-panel select{width:100%;border:1px solid #ccdcd2;border-radius:9px;padding:11px;background:#fff;color:var(--ink)}.narrow{max-width:780px}.contact-form{border:1px solid var(--line);border-radius:15px;padding:25px;display:grid;gap:17px;margin-top:22px}.contact-form label{display:grid;gap:7px;font-size:13px;font-weight:750}.contact-form input,.contact-form select,.contact-form textarea{padding:11px;border:1px solid #cfdbd2;border-radius:9px;width:100%}.contact-form .button{justify-self:start}.honeypot{display:none!important}.near-results{padding:25px;margin-top:25px;border-radius:14px;background:#eff7f1}.near-results[hidden]{display:none}.near-list{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.near-list a{background:#fff;border-radius:8px;padding:12px;font-size:13px;display:block}.near-list strong,.near-list small,.near-list em{display:block}.near-list small{color:var(--muted)}.near-list em{color:#388061;font-size:12px}.suggestions{position:absolute;top:calc(100% + 5px);left:0;right:0;z-index:80;background:#fff;border:1px solid #dae5dc;border-radius:10px;box-shadow:var(--shadow);max-height:270px;overflow:auto;padding:5px}.suggestions[hidden]{display:none}.suggestions a{display:block;font-size:12px;padding:9px 11px;border-radius:5px}.suggestions a:hover{background:#f1f7f2}.sr-only{position:absolute;width:1px;height:1px;clip:rect(0,0,0,0);overflow:hidden}
.footer{background:#183c35;color:#ecf6ef;padding:48px 0 0}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:42px}.footer-grid p{max-width:380px;font-size:13px;color:#bed0c5;margin-top:18px}.footer-grid b{display:block;margin-bottom:16px}.footer-grid>div:nth-child(n+2) a{display:block;font-size:13px;color:#cfddd3;margin-bottom:11px}.footer-logo .logo-mark{background:#397563}.footer-bottom{border-top:1px solid #396056;margin-top:40px;padding:17px 0;color:#b6cbc2;font-size:11px}
.install-body{min-height:100vh;display:grid;place-items:center;background:linear-gradient(135deg,#eef5ed,#faf8f2);padding:20px}.install-card{background:#fff;padding:34px;border-radius:18px;border:1px solid #e0e8df;width:min(650px,100%);box-shadow:var(--shadow)}.install-card.login{max-width:475px}.install-brand{display:flex;align-items:center;gap:12px}.install-brand h1{font-size:25px;margin:0}.install-brand p{font-size:12px;color:var(--muted)}.install-form{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin-top:21px}.install-card.login .install-form{grid-template-columns:1fr}.install-form label{display:grid;gap:6px;font-weight:750;font-size:12px}.install-form input{width:100%;padding:10px;border:1px solid #c9d9cf;border-radius:8px}.install-form .full{grid-column:1/-1}.error-box{padding:12px;background:#fff0eb;border-radius:9px;color:#8e3d2e}.micro{font-size:12px;color:var(--muted)}
@media(max-width:1000px){.nav{gap:14px}.hero-layout{gap:20px}.venue-grid{grid-template-columns:repeat(2,1fr)}.city-grid{grid-template-columns:repeat(2,1fr)}.place-list{grid-template-columns:repeat(3,1fr)}.filters-panel{grid-template-columns:1fr 1fr}}
@media(max-width:740px){.header-row{min-height:70px}.nav{display:none}.nav-cta{margin-left:auto}.container{width:calc(100% - 30px)}.hero-layout{grid-template-columns:1fr;padding:49px 0}.hero h1{font-size:clamp(37px,9vw,54px)}.hero-intro{font-size:15px}.hero-visual{display:none}.type-grid,.two-col,.profile-layout{grid-template-columns:1fr}.two-col{gap:30px}.profile-head{display:block}.profile-head-cta{margin-top:15px}.profile-layout .aside-panel{position:static}.section{padding:48px 0}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}.venue-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.details{grid-template-columns:1fr}.near-list{grid-template-columns:1fr}.place-list{grid-template-columns:repeat(2,1fr)}}
@media(max-width:510px){.logo{font-size:16px}.logo-mark{width:37px;height:37px}.nav-cta{padding:9px;font-size:0}.nav-cta svg{width:20px}.search-form{flex-direction:column}.hero-search{padding:9px}.search-field{min-height:47px}.search-form .button{width:100%}.section-head{display:block}.venue-grid,.city-grid,.type-grid{grid-template-columns:1fr}.listing-head{display:block}.listing-head .result-count{display:inline-block}.place-picker{padding:14px}.place-picker-head{display:block}.place-quick-links a{font-size:11px}.place-list{grid-template-columns:repeat(2,1fr)}.filters-panel{grid-template-columns:1fr}.profile h1{font-size:32px}.info-panel{padding:18px}.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}.install-form{grid-template-columns:1fr}.install-card{padding:20px}}

.local-type-filters{display:flex;align-items:end;gap:10px;margin:0 0 25px}.local-type-filters label{display:grid;gap:5px;font-size:12px;font-weight:700}.local-type-filters select{min-width:200px;border:1px solid #d1e1d7;border-radius:8px;background:#fff;padding:10px;color:var(--green)}.hours-grid>div{display:flex;justify-content:space-between;gap:10px;border-bottom:1px solid var(--line);padding:10px 0;font-size:13px}.hours-grid span{color:var(--muted)}.hours-grid b{text-align:right;font-size:12px}.local-type-filters .button{min-height:42px}
