:root{
  --ink:#132a24;
  --ink-2:#23423a;
  --accent:#f0b24b;
  --accent-strong:#d99225;
  --cream:#f7f4ec;
  --soft:#eef3ef;
  --white:#fff;
  --muted:#66736e;
  --line:rgba(19,42,36,.12);
  --shadow:0 24px 60px rgba(19,42,36,.12);
  --radius:24px;
  --radius-sm:16px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:#fff;line-height:1.55;padding-bottom:72px}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
button,input,select,textarea{font:inherit}
.skip-link{position:fixed;left:12px;top:-80px;z-index:9999;background:#fff;color:#000;padding:10px 14px;border-radius:8px;box-shadow:var(--shadow)}
.skip-link:focus{top:12px}
.site-header{background:rgba(255,255,255,.92);backdrop-filter:blur(18px);border-bottom:1px solid rgba(19,42,36,.08);z-index:1030}
.site-header .navbar{min-height:74px;padding:.55rem 0}
.navbar-brand{display:inline-flex;align-items:center;gap:.72rem;margin:0}
.brand-symbol{display:inline-grid;place-items:center;width:42px;height:42px;border-radius:14px;background:var(--ink);color:#fff;font-weight:900;letter-spacing:-.04em}
.brand-copy{display:flex;flex-direction:column;line-height:1}
.brand-copy strong{font-size:1.08rem;letter-spacing:-.03em}
.brand-copy small{font-size:.83rem;letter-spacing:.03em;color:var(--muted);margin-top:.18rem}
.navbar-nav{gap:.15rem}
.nav-link{font-weight:700;font-size:.94rem;padding:.75rem .8rem!important;border-radius:999px;color:var(--ink-2)!important}
.nav-link:hover,.nav-link.active{background:var(--soft);color:var(--ink)!important}
.header-icon{width:40px;height:40px;border-radius:50%;align-items:center;justify-content:center;border:1px solid var(--line)}
.header-icon:hover{background:var(--soft)}
.language-switch{display:flex;align-items:center;gap:.25rem;padding:.35rem .55rem;border-radius:999px;background:var(--soft);font-size:.8rem;font-weight:800}
.language-switch a{opacity:.5}.language-switch a.active{opacity:1}
.navbar-toggler{border:0;padding:.35rem;font-size:1.8rem;box-shadow:none!important}
.mobile-menu{width:min(88vw,390px);border:0}
.mobile-menu .offcanvas-header{padding:1.2rem 1.2rem 0}
.mobile-menu .offcanvas-body{padding:1.4rem 1.2rem}
.mobile-search{display:flex;align-items:center;gap:.7rem;border:1px solid var(--line);border-radius:16px;padding:.85rem 1rem;background:var(--soft)}
.mobile-search input{border:0;background:transparent;outline:0;width:100%}
.mobile-nav{display:flex;flex-direction:column}
.mobile-nav a{display:flex;justify-content:space-between;align-items:center;padding:1rem .2rem;border-bottom:1px solid var(--line);font-size:1.05rem;font-weight:800}
.mobile-nav a.active{color:var(--accent-strong)}
.hero-section{position:relative;min-height:calc(100vh - 74px);overflow:hidden;background:var(--ink)}
.hero-bg{position:absolute;inset:0;background-size:cover;background-position:center}
.hero-bg:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(5,18,15,.55))}
.hero-inner{position:relative;z-index:2;min-height:calc(100vh - 74px);display:flex;flex-direction:column;justify-content:flex-end;padding-top:6rem;padding-bottom:2rem}
.min-vh-75{min-height:64vh}
.eyebrow{display:inline-flex;align-items:center;gap:.45rem;color:var(--accent-strong);font-size:.78rem;font-weight:900;text-transform:uppercase;letter-spacing:.12em;margin-bottom:.85rem}
.eyebrow.light{color:#ffd98f}
.hero-section h1{font-size:clamp(2.8rem,7vw,6.7rem);line-height:.92;letter-spacing:-.065em;color:#fff;max-width:980px;margin:0 0 1.5rem;font-weight:900}
.hero-lead{font-size:clamp(1.05rem,2vw,1.35rem);max-width:720px;color:rgba(255,255,255,.83);margin-bottom:1.8rem}
.hero-actions{display:flex;gap:.75rem;flex-wrap:wrap}
.btn-accent{background:var(--accent);border-color:var(--accent);color:#1e271f;font-weight:800}
.btn-accent:hover{background:var(--accent-strong);border-color:var(--accent-strong);color:#fff}
.hero-actions .btn{padding:.92rem 1.35rem}
.hero-search{display:flex;align-items:center;gap:.7rem;width:min(760px,100%);background:#fff;padding:.55rem;border-radius:20px;margin-top:2rem;box-shadow:0 20px 50px rgba(0,0,0,.2)}
.hero-search>i{font-size:1.2rem;margin-left:.65rem;color:var(--muted)}
.hero-search input{flex:1;border:0;outline:0;min-width:0;padding:.65rem .1rem;color:var(--ink)}
.hero-search button{border:0;border-radius:14px;background:var(--ink);color:#fff;padding:.8rem 1.2rem;font-weight:800}
.section-space{padding:5.5rem 0}
.section-tight{padding:1.5rem 0}
.bg-soft{background:var(--soft)}
.quick-discovery{position:relative;margin-top:-1px;background:var(--cream)}
.quick-grid{display:grid;grid-template-columns:1fr;gap:.8rem}
.quick-grid>a{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.9rem;background:#fff;border:1px solid var(--line);border-radius:20px;padding:1rem;transition:.25s ease}
.quick-grid>a:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
.quick-icon{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:var(--soft);font-size:1.2rem}
.quick-grid strong,.quick-grid small{display:block}.quick-grid strong{font-size:.98rem}.quick-grid small{font-size:.8rem;color:var(--muted);margin-top:.15rem}
.section-heading{display:flex;align-items:end;justify-content:space-between;gap:1.5rem;margin-bottom:2rem}
.section-heading h2{font-size:clamp(2rem,4vw,3.5rem);line-height:1;letter-spacing:-.045em;margin:0 0 .6rem;font-weight:900}
.section-heading p{color:var(--muted);margin:0;max-width:650px}
.section-link{font-weight:900;white-space:nowrap;border-bottom:2px solid var(--accent);padding-bottom:.2rem}
.section-link.light{color:#fff}.light-heading h2,.light-heading p{color:#fff}.light-heading p{opacity:.72}
.content-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;transition:.28s ease}
.content-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}
.card-media{position:relative;display:block;aspect-ratio:4/3;overflow:hidden;background:var(--soft)}
.card-media img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.content-card:hover .card-media img{transform:scale(1.045)}
.card-badge{position:absolute;left:14px;top:14px;padding:.38rem .65rem;border-radius:999px;background:rgba(255,255,255,.92);backdrop-filter:blur(8px);font-size:.72rem;font-weight:900}
.featured-dot{position:absolute;right:14px;top:14px;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--accent);font-size:.8rem}
.card-body-custom{padding:1.1rem}
.card-body-custom.block{display:block}
.card-body-custom h3{font-size:1.15rem;line-height:1.2;letter-spacing:-.02em;margin:.25rem 0 .55rem;font-weight:850}
.card-body-custom p{font-size:.9rem;color:var(--muted);margin:0 0 .8rem}
.card-meta{font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;color:var(--accent-strong);font-weight:900}
.text-link{font-size:.85rem;font-weight:900}
.event-card .card-body-custom{display:grid;grid-template-columns:52px 1fr;gap:.9rem}
.event-date{border-right:1px solid var(--line);display:flex;flex-direction:column;align-items:center;padding-right:.75rem}
.event-date span{font-size:1.75rem;font-weight:900;line-height:1}.event-date small{font-size:.7rem;color:var(--muted);margin-top:.25rem}
.event-card .card-body-custom p{margin:.28rem 0 0;font-size:.82rem}
.route-section{background:var(--ink)}
.route-card{background:#fff;border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column}
.route-card-image{aspect-ratio:16/10;overflow:hidden}.route-card-image img{width:100%;height:100%;object-fit:cover;transition:.5s ease}.route-card:hover img{transform:scale(1.04)}
.route-card-content{padding:1.35rem;display:flex;flex-direction:column;flex:1}
.route-card-content h3{font-size:1.35rem;letter-spacing:-.03em;font-weight:900;margin:.7rem 0 .5rem}.route-card-content p{color:var(--muted);font-size:.92rem;flex:1}.route-facts{display:flex;gap:.9rem;flex-wrap:wrap;font-size:.78rem;font-weight:800;color:var(--ink-2)}
.route-card .btn{align-self:flex-start;font-size:.82rem;font-weight:800}
.city-stats{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}
.city-stats>div,.city-stats>a{padding:1.5rem;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.city-stats strong{display:block;font-size:2.2rem;line-height:1;font-weight:900}.city-stats span{display:block;color:var(--muted);font-size:.82rem;margin-top:.45rem}
.city-stats>a{background:var(--accent);display:flex;flex-direction:column;justify-content:space-between;font-weight:900}.city-stats>a span{color:var(--ink);font-size:1rem;margin:0}.city-stats>a i{font-size:1.6rem;align-self:flex-end}
.page-hero{background:var(--ink);color:#fff;padding:5.2rem 0 4.5rem;position:relative;overflow:hidden}
.page-hero:after{content:"";position:absolute;right:-80px;bottom:-120px;width:380px;height:380px;border-radius:50%;border:80px solid rgba(240,178,75,.12)}
.page-hero .container-xxl{position:relative;z-index:1}.page-hero h1{font-size:clamp(2.6rem,6vw,5.5rem);font-weight:900;letter-spacing:-.06em;line-height:.96;margin:0 0 1rem;max-width:930px}.page-hero p{font-size:1.1rem;max-width:760px;color:rgba(255,255,255,.72);margin:0}
.compact-page-hero{padding-bottom:3.8rem}.route-page-hero{background:linear-gradient(120deg,#132a24,#234b41)}
.filter-bar{display:flex;flex-direction:column;gap:1rem;padding:1rem;background:#fff;border:1px solid var(--line);border-radius:20px;position:relative;z-index:3;box-shadow:0 12px 35px rgba(19,42,36,.07)}
.filter-scroll{display:flex;gap:.5rem;overflow-x:auto;padding-bottom:.15rem;scrollbar-width:none}.filter-scroll::-webkit-scrollbar{display:none}
.filter-pill{white-space:nowrap;border:1px solid var(--line);border-radius:999px;padding:.65rem .9rem;font-size:.82rem;font-weight:850}.filter-pill.active{background:var(--ink);color:#fff;border-color:var(--ink)}
.filter-select-wrap{min-width:220px}.filter-select-wrap .form-select{border-radius:14px;border-color:var(--line);padding:.68rem .9rem}.filter-copy{font-weight:800;color:var(--muted)}
.pagination-wrap{display:flex;justify-content:center;gap:.45rem;margin-top:2.5rem}.pagination-wrap a{width:40px;height:40px;border:1px solid var(--line);display:grid;place-items:center;border-radius:12px;font-weight:800}.pagination-wrap a.active{background:var(--ink);color:#fff}
.empty-state{text-align:center;padding:5rem 1rem;border:1px dashed rgba(19,42,36,.25);border-radius:var(--radius);background:#fff}.empty-state i{font-size:2.4rem;color:var(--accent-strong)}.empty-state h2,.empty-state h3{margin:.8rem 0 .35rem;font-weight:900}.empty-state p{color:var(--muted)}.empty-state.compact{padding:2rem}
.detail-hero{height:min(76vh,720px);position:relative;display:flex;align-items:end;background:var(--ink);overflow:hidden}.detail-hero-image,.detail-hero-overlay{position:absolute;inset:0}.detail-hero-image img{width:100%;height:100%;object-fit:cover}.detail-hero-overlay{background:linear-gradient(180deg,rgba(10,25,21,.08),rgba(10,25,21,.92))}.detail-hero-content{position:relative;z-index:2;padding-bottom:3.2rem;color:#fff}.detail-hero-content h1{font-size:clamp(2.6rem,6vw,5.5rem);max-width:1000px;line-height:.95;letter-spacing:-.055em;font-weight:900;margin:.4rem 0 1rem}.detail-hero-content p{max-width:750px;color:rgba(255,255,255,.78);font-size:1.08rem}.back-link{display:inline-flex;align-items:center;gap:.45rem;color:rgba(255,255,255,.82);font-weight:800;margin-bottom:1.5rem}
.detail-content{font-size:1.08rem}.prose{color:#33463f}.prose p{margin-bottom:1.2rem}.detail-info-card{top:105px;background:var(--cream);border-radius:var(--radius);padding:1.35rem}.detail-info-card h2{font-size:1.25rem;font-weight:900;margin-bottom:1rem}.detail-info-card dl{margin:0}.detail-info-card dl>div{padding:1rem 0;border-bottom:1px solid var(--line)}.detail-info-card dt{font-size:.74rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:.35rem}.detail-info-card dt i{margin-right:.35rem}.detail-info-card dd{font-weight:750;margin:0}.detail-info-card dd small{font-weight:500;color:var(--muted)}
.share-button{width:100%;border:0;background:transparent;padding:.9rem 0 0;font-weight:800;color:var(--ink-2)}
.mini-map-card{display:flex;flex-direction:column;gap:1rem;justify-content:space-between;background:var(--soft);border-radius:var(--radius);padding:1.4rem}.mini-map-card h2{font-size:1.4rem;font-weight:900;margin:0 0 .3rem}.mini-map-card p{margin:0;color:var(--muted)}
.route-detail-hero{position:relative;min-height:680px;display:flex;align-items:end;background:var(--ink);overflow:hidden}.route-detail-hero>img,.route-detail-overlay{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.route-detail-overlay{background:linear-gradient(180deg,rgba(5,20,16,.15),rgba(5,20,16,.93))}.route-detail-content{position:relative;z-index:2;color:#fff;padding-bottom:3.4rem}.route-detail-content h1{font-size:clamp(2.7rem,6vw,5.8rem);font-weight:900;letter-spacing:-.06em;line-height:.94;max-width:950px}.route-detail-content>p{max-width:720px;color:rgba(255,255,255,.76);font-size:1.08rem}.route-hero-facts{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1.4rem}.route-hero-facts span{display:flex;align-items:center;gap:.4rem;padding:.65rem .8rem;border-radius:999px;background:rgba(255,255,255,.13);backdrop-filter:blur(8px);font-size:.82rem}.route-hero-facts strong{font-size:1rem}
.route-timeline{position:relative}.route-stop{display:grid;grid-template-columns:48px 1fr;gap:1rem;position:relative;padding-bottom:1.7rem}.route-stop:before{content:"";position:absolute;left:23px;top:48px;bottom:0;width:2px;background:var(--line)}.route-stop:last-child:before{display:none}.route-stop-number{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:var(--ink);color:#fff;font-weight:900}.route-stop h3{font-size:1.15rem;font-weight:900;margin:.15rem 0 .3rem}.route-stop p{color:var(--muted);margin:0}.route-map-panel{top:105px;background:var(--cream);border-radius:var(--radius);padding:1rem}.route-map-header{display:flex;justify-content:space-between;align-items:end;padding:.45rem .35rem 1rem}.route-map-header h2{font-size:1.25rem;font-weight:900;margin:0}.route-map-header>span{font-size:.75rem;font-weight:850;color:var(--muted)}.route-map{height:520px;border-radius:18px;overflow:hidden;background:#dfe7e1}
.map-page{height:calc(100vh - 74px);display:grid;grid-template-columns:1fr;position:relative}.map-sidebar{background:#fff;overflow:auto;padding:1.25rem;border-bottom:1px solid var(--line);max-height:42vh}.map-sidebar-head h1{font-size:2rem;line-height:1;letter-spacing:-.04em;font-weight:900}.map-sidebar-head p{color:var(--muted)}.map-filters{display:flex;gap:.45rem;overflow-x:auto;padding-bottom:.5rem}.map-filters button{white-space:nowrap;border:1px solid var(--line);background:#fff;border-radius:999px;padding:.55rem .75rem;font-size:.78rem;font-weight:850}.map-filters button.active{background:var(--ink);color:#fff}.map-result-count{font-size:.82rem;color:var(--muted);margin:.7rem 0}.map-list{display:none}.main-map{height:58vh;background:#dfe7e1}.map-popup{display:grid;grid-template-columns:70px 1fr;gap:.7rem;min-width:230px}.map-popup img{width:70px;height:70px;object-fit:cover;border-radius:10px}.map-popup strong{display:block;margin-bottom:.25rem}.map-popup span{display:block;font-size:.75rem;color:var(--muted);margin-bottom:.35rem}.map-popup a{font-size:.75rem;font-weight:900;color:var(--accent-strong)}
.page-search-form{display:flex;align-items:center;background:#fff;border-radius:18px;padding:.5rem;max-width:760px;margin-top:1.8rem}.page-search-form i{color:var(--muted);margin-left:.7rem}.page-search-form input{flex:1;border:0;outline:0;padding:.7rem;min-width:0}.page-search-form button{border:0;background:var(--accent);font-weight:900;padding:.8rem 1.2rem;border-radius:13px}.search-summary{font-size:1rem;color:var(--muted);margin-bottom:2rem}.search-summary strong{color:var(--ink);font-size:1.5rem}.search-group{margin-bottom:4rem}
.newsletter-section{background:#fff;padding:2rem 0 0}.newsletter-card{background:linear-gradient(120deg,var(--ink),#234b41);border-radius:30px;color:#fff;padding:2rem;display:flex;flex-direction:column;gap:1.5rem;position:relative;overflow:hidden}.newsletter-card:after{content:"";position:absolute;width:260px;height:260px;border:60px solid rgba(240,178,75,.12);border-radius:50%;right:-70px;bottom:-110px}.newsletter-card>div,.newsletter-form{position:relative;z-index:1}.newsletter-card h2{font-size:clamp(1.8rem,4vw,3rem);letter-spacing:-.04em;font-weight:900}.newsletter-card p{color:rgba(255,255,255,.7);margin:0}.newsletter-form{display:flex;flex-direction:column;gap:.7rem}.newsletter-form input{border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.1);color:#fff;padding:.9rem 1rem;border-radius:14px;outline:0}.newsletter-form input::placeholder{color:rgba(255,255,255,.58)}.newsletter-form button{border:0;border-radius:14px;background:var(--accent);padding:.9rem 1rem;font-weight:900}
.site-footer{background:#0c1d19;color:#fff;padding:5rem 0 6rem}.footer-main{padding-bottom:3rem}.footer-brand .brand-symbol{background:var(--accent);color:var(--ink)}.footer-brand .brand-copy small{color:rgba(255,255,255,.55)}.footer-intro{color:rgba(255,255,255,.6);max-width:480px;margin:1.2rem 0}.site-footer h3{font-size:.85rem;text-transform:uppercase;letter-spacing:.11em;color:#ffd98f;margin-bottom:1rem}.site-footer .col-6>a,.site-footer .col-lg-3>a{display:block;color:rgba(255,255,255,.72);margin:.55rem 0}.site-footer a:hover{color:#fff}.footer-note{font-size:.82rem;color:rgba(255,255,255,.48);margin-top:.8rem}.social-links{display:flex;gap:.55rem}.social-links a{width:40px;height:40px;border:1px solid rgba(255,255,255,.15);border-radius:50%;display:grid;place-items:center}.footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding-top:1.2rem;display:flex;justify-content:space-between;color:rgba(255,255,255,.42);font-size:.78rem}
.mobile-bottom-nav{position:fixed;left:0;right:0;bottom:0;z-index:1040;background:rgba(255,255,255,.95);backdrop-filter:blur(16px);border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(4,1fr);padding:.4rem max(.3rem,env(safe-area-inset-right)) calc(.4rem + env(safe-area-inset-bottom)) max(.3rem,env(safe-area-inset-left))}.mobile-bottom-nav a{display:flex;flex-direction:column;align-items:center;gap:.12rem;color:var(--muted);font-size:.65rem;font-weight:800;padding:.25rem}.mobile-bottom-nav i{font-size:1.15rem}.mobile-bottom-nav a.active{color:var(--ink)}
.error-page{min-height:70vh;display:grid;place-items:center;padding:5rem 0}.error-page span{font-size:clamp(5rem,18vw,12rem);font-weight:950;line-height:.8;color:var(--soft)}.error-page h1{font-size:clamp(2rem,5vw,4rem);font-weight:900;letter-spacing:-.05em}.error-page p{color:var(--muted)}
.installer-bg{background:linear-gradient(140deg,var(--soft),var(--cream));min-height:100vh}.installer-card{max-width:820px;background:#fff;padding:clamp(1.3rem,4vw,3rem);border-radius:28px;box-shadow:var(--shadow)}.installer-card .form-control{border-radius:12px;padding:.75rem}.brand-mark{width:58px;height:58px;border-radius:18px;background:var(--ink);color:#fff;display:grid;place-items:center;font-weight:900;font-size:1.1rem}
.leaflet-popup-content-wrapper{border-radius:16px;box-shadow:var(--shadow)}.leaflet-popup-content{margin:12px}.leaflet-control-zoom a{color:var(--ink)!important}
@media (min-width:576px){.quick-grid{grid-template-columns:1fr 1fr}.city-stats{grid-template-columns:repeat(4,1fr)}.city-stats>div,.city-stats>a{border-bottom:0}.mini-map-card{flex-direction:row;align-items:center}.newsletter-form{flex-direction:row}.newsletter-form input{min-width:280px;flex:1}.newsletter-form button{white-space:nowrap}}
@media (min-width:992px){body{padding-bottom:0}.hero-inner{padding-bottom:3rem}.quick-grid{grid-template-columns:repeat(4,1fr)}.filter-bar{flex-direction:row;align-items:center;justify-content:space-between}.newsletter-card{padding:3rem;flex-direction:row;align-items:center;justify-content:space-between}.newsletter-card>div{max-width:620px}.site-footer{padding-bottom:2rem}.map-page{grid-template-columns:390px 1fr}.map-sidebar{max-height:none;height:calc(100vh - 74px);border-bottom:0;border-right:1px solid var(--line);padding:1.5rem}.main-map{height:calc(100vh - 74px)}.map-list{display:flex;flex-direction:column;gap:.55rem}.map-list-item{display:grid;grid-template-columns:64px 1fr;gap:.7rem;padding:.55rem;border:1px solid var(--line);border-radius:14px;cursor:pointer}.map-list-item img{width:64px;height:64px;object-fit:cover;border-radius:10px}.map-list-item strong{font-size:.85rem;line-height:1.2}.map-list-item span{font-size:.72rem;color:var(--muted);display:block;margin-top:.25rem}.map-list-item:hover{background:var(--soft)}}
@media (min-width:1200px){.site-header .navbar{min-height:82px}.hero-section,.hero-inner{min-height:calc(100vh - 82px)}.map-page,.map-sidebar,.main-map{height:calc(100vh - 82px)}.nav-link{padding:.75rem .95rem!important}.section-space{padding:6.5rem 0}}
@media (max-width:575.98px){.hero-section h1{font-size:3.2rem}.hero-actions .btn{width:100%}.hero-search{border-radius:16px}.hero-search button{padding:.75rem .85rem}.section-space{padding:4rem 0}.section-heading{align-items:flex-start;flex-direction:column}.section-link{white-space:normal}.city-stats>div,.city-stats>a{border-right:0}.detail-hero{height:660px}.route-detail-hero{min-height:720px}.detail-hero-content,.route-detail-content{padding-bottom:2rem}.detail-hero-content h1,.route-detail-content h1{font-size:3rem}.map-page{height:auto}.map-sidebar{max-height:none}.main-map{height:58vh}.newsletter-card{border-radius:24px}.page-hero{padding:4rem 0 3.3rem}.page-hero h1{font-size:3rem}}

/* v1.2 homepage */
.btn-glass{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.35);color:#fff;backdrop-filter:blur(14px)}.btn-glass:hover{background:#fff;color:var(--ink)}
.hero-section{min-height:760px}.hero-section .hero-bg{transform:scale(1.01)}.hero-copy-wrap{position:relative;z-index:2}.hero-section.hero-centered .hero-copy-wrap{margin-inline:auto;text-align:center}.hero-section.hero-centered .hero-actions{justify-content:center}.hero-section.hero-centered .hero-lead{margin-inline:auto}.hero-orbit{position:absolute;border:1px solid rgba(255,255,255,.12);border-radius:50%;pointer-events:none;z-index:1}.hero-orbit-one{width:430px;height:430px;right:-170px;top:12%}.hero-orbit-two{width:180px;height:180px;right:12%;bottom:12%}.hero-proof{position:relative;z-index:2;display:flex;flex-wrap:wrap;gap:.65rem 1.4rem;color:rgba(255,255,255,.7);font-size:.76rem;font-weight:700;margin-top:1.1rem}.hero-proof strong{color:#fff;font-size:1rem;margin-right:.22rem}.hero-search-advanced select{border:0;border-left:1px solid var(--line);background:#fff;padding:.75rem;outline:0;color:var(--ink);font-weight:750;max-width:155px}.home-quick-strip{position:relative;z-index:5;margin-top:-1px;padding:0}.home-quick-strip .quick-grid{box-shadow:0 22px 60px rgba(8,30,25,.12);border-radius:0 0 24px 24px;overflow:hidden;background:#fff}.home-quick-strip .quick-grid>a{border-radius:0;border:0;border-right:1px solid var(--line)}
.weekend-section{overflow:hidden}.weekend-layout{display:grid;gap:1rem}.weekend-feature{position:relative;min-height:480px;border-radius:28px;overflow:hidden;background:var(--ink);color:#fff}.weekend-feature>img,.weekend-feature-overlay{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.weekend-feature-overlay{background:linear-gradient(180deg,rgba(7,25,21,.06),rgba(7,25,21,.92))}.weekend-feature-copy{position:absolute;z-index:2;left:0;right:0;bottom:0;padding:1.5rem}.weekend-feature-copy>span{display:inline-flex;background:var(--accent);color:var(--ink);padding:.38rem .65rem;border-radius:999px;font-size:.7rem;font-weight:900}.weekend-feature-copy h3{font-size:clamp(1.9rem,5vw,3.5rem);line-height:.96;letter-spacing:-.045em;font-weight:950;margin:.8rem 0}.weekend-feature-copy p{color:rgba(255,255,255,.72);font-size:.86rem}.weekend-list{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:24px;overflow:hidden;background:#fff}.weekend-list>a{display:grid;grid-template-columns:58px 1fr auto;gap:.9rem;align-items:center;padding:1rem;border-bottom:1px solid var(--line);transition:.2s}.weekend-list>a:last-child{border-bottom:0}.weekend-list>a:hover{background:var(--soft)}.weekend-date{width:52px;height:58px;border-radius:15px;background:var(--ink);color:#fff;display:grid;place-items:center;align-content:center;line-height:1}.weekend-date strong{font-size:1.35rem}.weekend-date span{font-size:.63rem;color:rgba(255,255,255,.6);margin-top:.2rem}.weekend-list small{color:var(--accent-strong);font-weight:900;text-transform:uppercase;letter-spacing:.08em}.weekend-list h3{font-size:.98rem;font-weight:900;margin:.18rem 0}.weekend-list p{font-size:.75rem;color:var(--muted);margin:0}.weekend-list>a>i{font-size:1.05rem}
.time-planner-section{background:radial-gradient(circle at 88% 10%,rgba(240,178,75,.22),transparent 28%),linear-gradient(135deg,#0b201a,#173d33);color:#fff}.time-plan-grid{display:grid;gap:.75rem}.time-plan-grid>a{display:grid;grid-template-columns:56px 1fr auto;gap:.85rem;align-items:center;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.06);border-radius:18px;padding:.85rem;color:#fff;transition:.2s}.time-plan-grid>a:hover{transform:translateY(-3px);background:rgba(255,255,255,.11)}.time-plan-grid>a>span{width:52px;height:52px;border-radius:15px;background:var(--accent);color:var(--ink);display:grid;place-items:center;font-weight:950;font-size:1.25rem}.time-plan-grid strong,.time-plan-grid small{display:block}.time-plan-grid small{color:rgba(255,255,255,.55);font-size:.72rem;margin-top:.15rem}.time-planner-section .route-card{background:#fff;color:var(--ink)}
.food-home-section{overflow:hidden}.food-scroll{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(260px,84vw);gap:1rem;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:1rem}.food-scroll-item{scroll-snap-align:start}.home-map-section{background:#f4efe4}.home-map-card{display:grid;background:var(--ink);border-radius:30px;overflow:hidden;box-shadow:var(--shadow)}.home-map-copy{padding:2rem;color:#fff}.home-map-copy h2{font-size:clamp(2rem,5vw,4rem);font-weight:950;letter-spacing:-.055em;line-height:.98}.home-map-copy p{color:rgba(255,255,255,.65);max-width:520px}.home-map{height:430px;background:#dfe7e1}.social-home-section{padding-top:0}.social-home-card{display:flex;flex-direction:column;gap:1.5rem;border:1px solid var(--line);border-radius:28px;padding:1.5rem;background:#fff}.social-home-card h2{font-size:clamp(2rem,5vw,3.6rem);font-weight:950;letter-spacing:-.05em}.social-home-card p{color:var(--muted)}.social-home-links{display:grid;gap:.75rem}.social-home-links a{display:flex;align-items:center;gap:.8rem;padding:1rem;border-radius:16px;background:var(--soft);font-weight:900}.social-home-links i{font-size:1.4rem}.partners-section{padding:2rem 0 4rem}.partner-logo-row{display:flex;gap:.8rem;overflow-x:auto;padding:.8rem 0}.partner-logo-row a{flex:0 0 150px;height:88px;border:1px solid var(--line);border-radius:16px;background:#fff;display:grid;place-items:center;padding:1rem}.partner-logo-row img{max-width:100%;max-height:56px;object-fit:contain;filter:grayscale(1);opacity:.72;transition:.2s}.partner-logo-row a:hover img{filter:none;opacity:1}
@media(min-width:768px){.time-plan-grid{grid-template-columns:1fr 1fr}.food-scroll{grid-auto-columns:minmax(280px,32vw)}.social-home-card{flex-direction:row;align-items:center;justify-content:space-between;padding:2.5rem}.social-home-card>div:first-child{max-width:620px}.social-home-links{min-width:260px}.weekend-feature-copy{padding:2.3rem}}
@media(min-width:992px){.weekend-layout{grid-template-columns:minmax(0,1.35fr) minmax(360px,.65fr)}.weekend-feature{min-height:570px}.time-plan-grid{grid-template-columns:repeat(4,1fr)}.home-map-card{grid-template-columns:.8fr 1.2fr}.home-map-copy{padding:3.5rem}.home-map{height:560px}.food-scroll{grid-auto-flow:initial;grid-template-columns:repeat(4,1fr);overflow:visible}.hero-proof{margin-top:1.6rem}.home-quick-strip{margin-top:-54px}.home-quick-strip .quick-grid{border-radius:22px}.hero-search-advanced{max-width:920px}.hero-section.hero-centered .hero-search-advanced{margin-inline:auto}}
@media(max-width:767.98px){.hero-search-advanced select{display:none}.hero-proof{display:none}.hero-section{min-height:710px}.home-quick-strip .quick-grid{border-radius:0}.weekend-list>a{grid-template-columns:52px 1fr}.weekend-list>a>i{display:none}}
.duration-filter{display:flex;align-items:center;gap:.5rem;overflow-x:auto;padding-bottom:.35rem}.duration-filter>span{font-size:.78rem;font-weight:900;white-space:nowrap;margin-right:.25rem}.duration-filter a{white-space:nowrap;border:1px solid var(--line);border-radius:999px;padding:.55rem .8rem;font-size:.75rem;font-weight:850;background:#fff}.duration-filter a.active{background:var(--ink);color:#fff}.page-search-form select{border:0;border-left:1px solid var(--line);padding:.7rem;background:#fff;outline:0;color:var(--ink);font-weight:750}@media(max-width:575.98px){.page-search-form select{display:none}}

/* v1.3–1.4 · events and rich place profiles */
.page-hero-split{display:flex;flex-direction:column;align-items:flex-start;gap:1.5rem}.page-hero-cta{font-weight:850;padding:.85rem 1.25rem}.events-toolbar{display:flex;flex-direction:column;gap:1rem;margin-bottom:1rem}.event-periods{padding-bottom:.25rem}.view-switch{display:inline-flex;align-self:flex-start;background:var(--soft);padding:.28rem;border-radius:999px}.view-switch a{display:flex;align-items:center;gap:.42rem;padding:.62rem .85rem;border-radius:999px;font-size:.8rem;font-weight:850;color:var(--muted)}.view-switch a.active{background:#fff;color:var(--ink);box-shadow:0 8px 20px rgba(19,42,36,.08)}
.advanced-filter-card{margin:1.25rem 0 1.5rem;padding:1rem;border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:0 16px 40px rgba(19,42,36,.06)}.advanced-filter-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}.advanced-filter-head>div{display:flex;align-items:center;gap:.55rem}.advanced-filter-head i{font-size:1rem}.advanced-filter-head strong{font-size:.9rem}.advanced-filter-head span{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 .35rem;background:var(--accent);border-radius:999px;font-size:.72rem}.advanced-filter-head>a{font-size:.76rem;font-weight:800;color:var(--muted)}.advanced-filter-card label{display:block;margin-bottom:.35rem;font-size:.72rem;font-weight:850;color:var(--ink-2)}.advanced-filter-card .form-control,.advanced-filter-card .form-select{min-height:46px;border-color:var(--line);border-radius:12px;font-size:.86rem}.filter-input{display:flex;align-items:center;min-height:46px;border:1px solid var(--line);border-radius:12px;background:#fff}.filter-input i{margin-left:.85rem;color:var(--muted)}.filter-input input{width:100%;border:0;outline:0;padding:.7rem .85rem;background:transparent;font-size:.86rem}.filter-checks{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem;margin-top:1rem}.filter-checks label{margin:0}.filter-checks input{position:absolute;opacity:0;pointer-events:none}.filter-checks span{display:flex;align-items:center;gap:.4rem;padding:.6rem .78rem;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--muted);font-size:.75rem;font-weight:800;cursor:pointer}.filter-checks input:checked+span{border-color:var(--ink);background:var(--ink);color:#fff}.results-summary{margin:1.25rem 0 .25rem;color:var(--muted);font-size:.82rem}.results-summary strong{color:var(--ink)}
.calendar-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:1.5rem 0 1rem;padding:1rem;border:1px solid var(--line);border-radius:18px}.calendar-header>a{display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--line);border-radius:50%;background:#fff}.calendar-header>div{text-align:center}.calendar-header span{font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}.calendar-header h2{margin:.15rem 0 0;font-size:1.35rem}.event-calendar{display:none}.calendar-mobile-list{display:grid;gap:.75rem}.calendar-mobile-day{display:grid;grid-template-columns:58px 1fr;gap:.9rem;padding:1rem;border:1px solid var(--line);border-radius:16px;background:#fff}.calendar-mobile-day>time{display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:13px;background:var(--soft);line-height:1}.calendar-mobile-day>time strong{font-size:1.25rem}.calendar-mobile-day>time span{margin-top:.35rem;font-size:.7rem;color:var(--muted)}.calendar-mobile-day small{color:var(--muted);font-size:.7rem}.calendar-mobile-day h3{margin:.18rem 0;font-size:1rem}.calendar-mobile-day p{margin:0;color:var(--muted);font-size:.78rem}
.event-card-flags{position:absolute;right:.7rem;bottom:.7rem;display:flex;gap:.35rem}.event-card-flags i{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:rgba(19,42,36,.9);color:#fff;font-size:.78rem}.detail-flags,.detail-status-row{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:1rem}.detail-flags span,.verified-badge,.hero-price-range{display:inline-flex;align-items:center;gap:.4rem;padding:.55rem .72rem;border-radius:999px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.24);color:#fff;font-size:.74rem;font-weight:850;backdrop-filter:blur(10px)}.open-status{display:inline-flex;align-items:center;gap:.35rem;font-size:.66rem;font-weight:900}.open-status.is-open{color:#12834f}.open-status.is-closed{color:#ad3f35}.open-status.large{padding:.55rem .72rem;border-radius:999px;background:rgba(255,255,255,.92);font-size:.74rem}.card-meta-row{display:flex;align-items:center;justify-content:space-between;gap:.6rem;margin-bottom:.45rem}.amenities-mini{display:flex;gap:.4rem;margin:.75rem 0}.amenities-mini span{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:var(--soft);color:var(--ink-2)}
.info-feature-grid{display:grid;gap:.85rem}.info-feature-grid article{display:flex;gap:.9rem;padding:1.1rem;border:1px solid var(--line);border-radius:18px;background:var(--soft)}.info-feature-grid article>i{display:grid;place-items:center;flex:0 0 42px;height:42px;border-radius:13px;background:#fff;font-size:1.1rem}.info-feature-grid article span{display:block;margin-bottom:.25rem;font-weight:900}.info-feature-grid article p{margin:0;color:var(--muted);font-size:.86rem}.detail-map-section{overflow:hidden;border:1px solid var(--line);border-radius:22px;background:#fff}.detail-map-section .section-heading{padding:1.2rem 1.2rem .2rem}.detail-map{height:360px;background:var(--soft)}.section-heading.compact{align-items:flex-end}.section-heading.compact h2{font-size:1.45rem}.linked-place-card{display:grid;grid-template-columns:82px 1fr auto;align-items:center;gap:1rem;padding:1rem;border:1px solid var(--line);border-radius:20px;background:var(--soft)}.linked-place-card img{width:82px;height:82px;object-fit:cover;border-radius:15px}.linked-place-card span{font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}.linked-place-card h2{margin:.15rem 0;font-size:1.12rem}.linked-place-card p{margin:0;color:var(--muted);font-size:.78rem}.calendar-actions{display:grid;gap:.5rem;margin-top:.75rem}.calendar-actions a,.source-link{display:flex;align-items:center;gap:.55rem;padding:.72rem .8rem;border:1px solid var(--line);border-radius:12px;font-size:.76rem;font-weight:850}.source-link{margin-top:.65rem;color:var(--muted)}
.submission-layout{display:grid;gap:1.2rem}.public-form-card{padding:1.2rem;border:1px solid var(--line);border-radius:22px;background:#fff;box-shadow:var(--shadow)}.public-form-card label{display:block;margin-bottom:.38rem;font-size:.76rem;font-weight:850}.public-form-card .form-control{min-height:48px;border-color:var(--line);border-radius:13px}.public-form-card textarea.form-control{min-height:auto}.form-card-head span{font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}.form-card-head h2{margin:.25rem 0 1.2rem;font-size:1.45rem}.consent-check{display:flex!important;align-items:flex-start;gap:.7rem;font-size:.76rem!important;color:var(--muted)}.consent-check input{margin-top:.2rem}.submission-note{align-self:start;padding:1.4rem;border-radius:22px;background:var(--ink);color:#fff}.submission-note>i{display:grid;place-items:center;width:48px;height:48px;border-radius:15px;background:rgba(255,255,255,.1);font-size:1.25rem}.submission-note h2{margin:1rem 0 .6rem;font-size:1.3rem}.submission-note p{color:rgba(255,255,255,.72);font-size:.88rem}.submission-note strong{font-size:.8rem}.honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.place-gallery-strip{position:relative;margin-top:-1px;background:#fff;padding:1rem 0}.place-gallery-grid{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.gallery-photo{position:relative;overflow:hidden;min-height:130px;border:0;border-radius:14px;padding:0;background:var(--soft)}.gallery-photo img{width:100%;height:100%;object-fit:cover;transition:transform .25s}.gallery-photo:hover img{transform:scale(1.035)}.gallery-photo span{position:absolute;right:.65rem;bottom:.65rem;padding:.4rem .55rem;border-radius:999px;background:rgba(19,42,36,.9);color:#fff;font-size:.72rem;font-weight:900}.profile-section{padding-top:.25rem}.amenities-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.65rem}.amenities-grid>div{display:flex;align-items:center;gap:.65rem;padding:.8rem;border:1px solid var(--line);border-radius:14px}.amenities-grid i{font-size:1rem}.amenities-grid span{font-size:.78rem;font-weight:800}.opening-hours-table{overflow:hidden;border:1px solid var(--line);border-radius:17px}.opening-hours-table>div{display:flex;justify-content:space-between;gap:1rem;padding:.8rem 1rem;border-bottom:1px solid var(--line);font-size:.82rem}.opening-hours-table>div:last-child{border-bottom:0}.opening-hours-table>div.today{background:var(--soft)}.opening-hours-table span{text-align:right}.opening-hours-table small{display:block;color:var(--muted)}.profile-primary-actions{display:grid;gap:.55rem}.profile-socials{display:flex;gap:.55rem;margin-top:.75rem}.profile-socials a{flex:1;display:flex;align-items:center;justify-content:center;gap:.4rem;padding:.65rem;border:1px solid var(--line);border-radius:12px;font-size:.74rem;font-weight:850}.claim-profile-link{display:flex;align-items:center;gap:.7rem;margin-top:.85rem;padding:.8rem;border-radius:14px;background:var(--soft)}.claim-profile-link>i{font-size:1.25rem}.claim-profile-link span{display:block}.claim-profile-link strong,.claim-profile-link small{display:block}.claim-profile-link strong{font-size:.76rem}.claim-profile-link small{margin-top:.12rem;color:var(--muted);font-size:.64rem}.gallery-lightbox[hidden]{display:none}.gallery-lightbox{position:fixed;inset:0;z-index:2000;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:1rem;background:rgba(5,15,12,.94)}.gallery-lightbox img{max-width:min(1100px,94vw);max-height:78vh;object-fit:contain;border-radius:12px}.gallery-lightbox p{margin:.8rem 0 0;color:#fff}.gallery-lightbox button{position:absolute;right:1rem;top:1rem;display:grid;place-items:center;width:46px;height:46px;border:0;border-radius:50%;background:#fff}.lightbox-open{overflow:hidden}
@media(min-width:768px){.page-hero-split{flex-direction:row;align-items:flex-end;justify-content:space-between}.events-toolbar{flex-direction:row;align-items:center;justify-content:space-between}.view-switch{align-self:auto}.event-calendar{display:grid;grid-template-columns:repeat(7,1fr);overflow:hidden;border:1px solid var(--line);border-radius:20px;background:#fff}.calendar-mobile-list{display:none}.calendar-weekday{padding:.72rem;text-align:center;background:var(--ink);color:#fff;font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.calendar-day{min-height:132px;padding:.55rem;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff}.calendar-day:nth-child(7n){border-right:0}.calendar-day.is-empty{background:#fafbf9}.calendar-number{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;font-size:.75rem;font-weight:900}.calendar-day.is-today .calendar-number{background:var(--accent)}.calendar-events{display:grid;gap:.3rem;margin-top:.35rem}.calendar-events a{display:block;padding:.35rem;border-radius:8px;background:var(--soft);font-size:.67rem;line-height:1.25}.calendar-events time{display:block;margin-bottom:.1rem;font-weight:900;color:var(--accent-strong)}.calendar-events span{display:-webkit-box;overflow:hidden;-webkit-line-clamp:2;-webkit-box-orient:vertical}.calendar-events small{font-size:.62rem;color:var(--muted)}.info-feature-grid{grid-template-columns:repeat(2,1fr)}.submission-layout{grid-template-columns:minmax(0,1fr) 300px}.public-form-card{padding:1.7rem}.place-gallery-grid{grid-template-columns:2fr 1fr 1fr;grid-template-rows:180px 180px}.gallery-photo{min-height:0}.gallery-photo-1{grid-row:1/3}.gallery-photo-4,.gallery-photo-5{display:block}.amenities-grid{grid-template-columns:repeat(3,1fr)}}
@media(min-width:1200px){.advanced-filter-card{padding:1.25rem}.calendar-day{min-height:155px}.submission-layout{grid-template-columns:minmax(0,1fr) 340px}.submission-note{position:sticky;top:110px}.place-gallery-grid{grid-template-columns:2fr 1fr 1fr 1fr;grid-template-rows:220px 220px}.gallery-photo-1{grid-row:1/3}.gallery-photo-2{grid-row:1/3}.gallery-photo-3{grid-column:3/5}.amenities-grid{grid-template-columns:repeat(4,1fr)}}
@media(max-width:575.98px){.advanced-filter-card{margin-inline:-.15rem}.filter-checks .btn{width:100%;margin-left:0!important}.view-switch span{display:none}.place-gallery-grid .gallery-photo:nth-child(n+4){display:none}.detail-map{height:300px}.linked-place-card{grid-template-columns:64px 1fr}.linked-place-card>i{display:none}.linked-place-card img{width:64px;height:64px}.detail-info-card{border-radius:20px}.amenities-grid>div{padding:.7rem}.opening-hours-table>div{font-size:.76rem}}

/* v1.5–1.6 community and business */
.account-auth-section{min-height:72vh;padding:5rem 1rem;background:linear-gradient(135deg,#eef5f0,#f8f2e7);display:grid;place-items:center}.account-auth-card{max-width:760px;margin:auto;background:#fff;border-radius:28px;padding:clamp(1.5rem,4vw,3rem);box-shadow:0 24px 80px rgba(13,33,27,.12);display:grid;grid-template-columns:.8fr 1.2fr;gap:2.5rem;align-items:center}.account-auth-card.wide{max-width:900px}.account-auth-card h1{font-size:clamp(2rem,5vw,4rem);font-weight:800}.account-auth-card form,.settings-card,.business-application-card{display:grid;gap:1rem}.account-auth-card label,.settings-card label,.business-application-card label{display:grid;gap:.45rem;font-weight:700}.account-auth-card input,.settings-card input,.settings-card select,.business-application-card input,.business-application-card select,.business-application-card textarea,.community-form textarea,.report-details input,.report-details select,.report-details textarea,.create-plan-form input{width:100%;border:1px solid #d8e0dc;border-radius:14px;padding:.82rem 1rem;background:#fff;font:inherit}.account-header,.business-dashboard-head{background:#102b23;color:#fff;padding:3.5rem 0}.account-header h1,.business-dashboard-head h1{font-size:clamp(2.2rem,5vw,4.5rem);font-weight:800}.account-nav{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1.4rem}.account-nav a{color:#fff;border:1px solid rgba(255,255,255,.25);padding:.65rem 1rem;border-radius:999px;text-decoration:none}.account-stats,.business-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.account-stats div,.business-stats div{background:#fff;border:1px solid #e3e9e6;border-radius:20px;padding:1.4rem;box-shadow:0 10px 35px rgba(13,33,27,.06)}.account-stats strong,.business-stats strong{display:block;font-size:2rem;color:#173d32}.account-stats span,.business-stats span{color:#6b7773}.recent-resource-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.recent-resource-grid>a{display:flex;gap:1rem;background:#fff;border:1px solid #e0e7e3;border-radius:18px;padding:.75rem;text-decoration:none;color:inherit}.recent-resource-grid img{width:86px;height:86px;border-radius:14px;object-fit:cover}.recent-resource-grid small,.recent-resource-grid span{display:block;color:#71807a}.recent-resource-grid strong{display:block;margin:.2rem 0}.simple-page-head{padding:3rem 0 2rem;background:#edf4f0}.simple-page-head h1{font-weight:800;font-size:clamp(2rem,5vw,4rem)}.favorite-list,.plans-grid{display:grid;gap:1rem}.favorite-list article{display:flex;align-items:center;background:#fff;border:1px solid #e0e7e3;border-radius:20px;padding:.8rem}.favorite-list article>a{display:grid;grid-template-columns:150px 1fr;gap:1.2rem;align-items:center;flex:1;text-decoration:none;color:inherit}.favorite-list img{width:150px;height:110px;object-fit:cover;border-radius:14px}.create-plan-form{display:grid;grid-template-columns:1fr 1fr auto;gap:.8rem}.plans-grid{grid-template-columns:repeat(2,1fr)}.plan-card{background:#fff;border:1px solid #e0e7e3;border-radius:22px;padding:1.25rem}.plan-card>header{display:flex;justify-content:space-between;gap:1rem;border-bottom:1px solid #edf1ef;padding-bottom:1rem}.plan-card>header button,.plan-items button,.promotion-row button{border:0;background:transparent}.plan-items article{display:grid;grid-template-columns:30px 58px 1fr auto;gap:.75rem;align-items:center;padding:.9rem 0;border-bottom:1px solid #edf1ef}.plan-items img{width:58px;height:58px;border-radius:12px;object-fit:cover}.plan-items a{font-weight:750;text-decoration:none;color:#173d32}.settings-card{background:#fff;border:1px solid #e0e7e3;border-radius:22px;padding:1.5rem}.settings-card h2{font-weight:800}.engagement-panel{background:#f5f8f6;border:1px solid #dde6e1;border-radius:28px;padding:clamp(1.2rem,4vw,2.5rem)}.engagement-head{display:flex;justify-content:space-between;gap:1rem}.rating-summary{text-align:right}.rating-summary strong{font-size:2.5rem;display:block}.rating-summary i,.review-list i,.rating-input label{color:#e6a817}.engagement-actions{display:flex;flex-wrap:wrap;gap:.7rem;margin:1.2rem 0}.add-plan-inline{display:flex;border:1px solid #ccd7d2;border-radius:999px;overflow:hidden}.add-plan-inline select{border:0;padding:0 .8rem;background:transparent}.add-plan-inline .btn{border:0}.community-form,.review-list{background:#fff;border-radius:20px;padding:1.25rem;height:100%}.rating-input{display:flex;flex-direction:row-reverse;justify-content:flex-end;margin:.8rem 0}.rating-input input{position:absolute;opacity:0}.rating-input label{font-size:1.8rem;cursor:pointer}.rating-input input:not(:checked)~label{color:#d2d9d5}.review-list article{padding:1rem 0;border-bottom:1px solid #edf1ef}.review-list article>div{display:flex;justify-content:space-between}.report-details{margin-top:1.2rem;border-top:1px solid #d9e2dd;padding-top:1rem}.report-details summary{cursor:pointer;font-weight:700}.report-details form{display:grid;grid-template-columns:1fr 1fr;gap:.7rem;margin-top:1rem}.report-details textarea{grid-column:1/-1}.business-hero{padding:6rem 0;background:radial-gradient(circle at 90% 10%,#406f5f,#102b23 55%);color:#fff}.business-hero h1{max-width:900px;font-size:clamp(2.6rem,7vw,6rem);line-height:.96;font-weight:850}.business-hero p{max-width:720px;font-size:1.15rem}.pricing-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.pricing-card{position:relative;background:#fff;border:1px solid #dfe6e2;border-radius:24px;padding:1.5rem;display:flex;flex-direction:column}.pricing-card.featured{background:#16372d;color:#fff;transform:translateY(-10px)}.pricing-card h3{font-weight:850;font-size:1.5rem}.pricing-card .price{margin:1rem 0}.pricing-card .price strong{font-size:2rem}.pricing-card ul{padding:0;list-style:none;flex:1}.pricing-card li{margin:.65rem 0}.pricing-badge,.sponsored-label,.sponsored-card-badge{background:#ffc84a;color:#241b00;border-radius:999px;padding:.35rem .7rem;font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.pricing-badge{position:absolute;top:1rem;right:1rem}.business-rule{display:flex;gap:1rem;background:#f4f7f5;border-radius:18px;padding:1.2rem}.business-rule i{font-size:1.5rem}.business-application-card{max-width:900px;margin:auto;background:#fff;border:1px solid #dde5e1;border-radius:26px;padding:clamp(1.3rem,4vw,2.5rem)}.business-panel{height:100%;border:1px solid #dfe6e2;border-radius:22px;padding:1.2rem;background:#fff}.business-panel>header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.business-place-row,.promotion-row{display:flex;align-items:center;gap:.8rem;padding:.8rem 0;border-bottom:1px solid #edf1ef}.business-place-row img{width:60px;height:60px;border-radius:12px;object-fit:cover}.business-place-row div,.promotion-row div{flex:1}.business-place-row span,.promotion-row span,.promotion-row small{display:block;color:#75817d}.sponsored-promotion{background:#fff5d8;padding:1rem 0}.sponsored-promotion article{display:flex;justify-content:space-between;align-items:center;gap:1rem}.sponsored-promotion h2{margin:.5rem 0 .2rem}.sponsored-card-badge{position:absolute;left:.7rem;bottom:.7rem}.card-media{position:relative}
@media(max-width:1199px){.pricing-grid{grid-template-columns:repeat(2,1fr)}.account-stats,.business-stats{grid-template-columns:repeat(2,1fr)}}
@media(max-width:767px){.account-auth-section{padding:2rem .7rem}.account-auth-card{grid-template-columns:1fr;gap:1rem}.recent-resource-grid{grid-template-columns:1fr}.favorite-list article>a{grid-template-columns:90px 1fr}.favorite-list img{width:90px;height:90px}.create-plan-form{grid-template-columns:1fr}.plans-grid{grid-template-columns:1fr}.pricing-grid{grid-template-columns:1fr}.pricing-card.featured{transform:none}.account-stats,.business-stats{grid-template-columns:1fr 1fr}.engagement-head{align-items:flex-start}.report-details form{grid-template-columns:1fr}.sponsored-promotion article{align-items:flex-start;flex-direction:column}.add-plan-inline{width:100%}.add-plan-inline select{flex:1;min-width:0}}
.amenity-edit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.7rem}.business-hours-list{display:grid;gap:.5rem}.business-hours-list>div{display:grid;grid-template-columns:160px 1fr 1fr 140px;gap:.7rem;align-items:center;padding:.7rem;background:#f5f8f6;border-radius:14px}.business-hours-list label{display:flex;align-items:center;gap:.5rem}.business-gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.8rem}.business-gallery-grid article{position:relative}.business-gallery-grid img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:14px}.business-gallery-grid form{position:absolute;right:.4rem;top:.4rem}@media(max-width:767px){.amenity-edit-grid{grid-template-columns:1fr 1fr}.business-hours-list>div{grid-template-columns:1fr 1fr}.business-hours-list>div>strong{grid-column:1/-1}.business-gallery-grid{grid-template-columns:1fr 1fr}}

/* v1.6 notification centre */
.notification-list{display:grid;gap:1rem;max-width:900px}.notification-card{display:grid;grid-template-columns:46px 1fr;gap:1rem;padding:1.2rem;border:1px solid var(--border);border-radius:22px;background:#fff;box-shadow:0 10px 30px rgba(18,42,36,.05)}.notification-card.unread{border-color:rgba(206,132,54,.55);box-shadow:0 12px 34px rgba(206,132,54,.12)}.notification-icon{width:46px;height:46px;border-radius:15px;display:grid;place-items:center;background:var(--surface);font-size:1.15rem;color:var(--primary)}.notification-card.unread .notification-icon{background:#fff1df;color:#a95d12}.notification-card h2{font-size:1.02rem;margin:0}.notification-card p{margin:.45rem 0;color:var(--muted)}.notification-card time{font-size:.78rem;color:var(--muted)}.notification-card a{font-weight:700;text-decoration:none}.account-nav .notification-count{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:#fff;color:var(--primary);font-size:.68rem;margin-left:.2rem}


/* v1.7 premium tuning */
body{font-size:.97rem;background:#fbfbf8}.site-header{background:rgba(255,255,255,.88);box-shadow:0 10px 30px rgba(19,42,36,.05)}.site-header .navbar{min-height:68px;padding:.35rem 0}.brand-symbol{width:40px;height:40px;border-radius:13px}.brand-copy strong{font-size:1rem}.brand-copy small{font-size:.78rem}.nav-link{font-size:.9rem;padding:.68rem .72rem!important}.header-icon{width:38px;height:38px}.hero-section h1{font-size:clamp(2.45rem,6.2vw,5.35rem);max-width:900px}.hero-lead{font-size:clamp(1rem,1.8vw,1.17rem);max-width:680px}.hero-actions .btn{padding:.82rem 1.18rem;font-size:.95rem}.btn-lg{font-size:.98rem}.hero-search{width:min(700px,100%);padding:.45rem;border-radius:18px}.hero-search input,.hero-search select{font-size:.93rem}.hero-search button{padding:.72rem 1.05rem;border-radius:13px}.eyebrow{font-size:.73rem;letter-spacing:.14em}.hero-proof{backdrop-filter:blur(20px);background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);box-shadow:0 18px 40px rgba(0,0,0,.12)}.section-space{padding:4.6rem 0}.section-heading{margin-bottom:1.55rem}.section-heading h2{font-size:clamp(1.75rem,3.3vw,3rem)}.section-heading p,.card-body-custom p,.route-card-content p,.page-hero p{font-size:.92rem}.quick-grid>a,.content-card,.route-card,.filter-bar,.home-map-card,.newsletter-card,.social-home-card,.weekend-feature,.weekend-list a,.place-info-grid>article,.detail-side-card,.business-panel,.account-stats div,.business-stats div{box-shadow:0 18px 40px rgba(19,42,36,.06)}.content-card,.route-card,.filter-bar,.home-map-card,.newsletter-card,.social-home-card,.weekend-feature,.detail-side-card{border-color:rgba(19,42,36,.09)}.card-body-custom{padding:1rem}.card-body-custom h3{font-size:1.06rem}.route-card-content{padding:1.2rem}.route-card-content h3{font-size:1.22rem}.page-hero{padding:4.5rem 0 3.8rem}.page-hero h1{font-size:clamp(2.35rem,5.2vw,4.6rem)}.filter-pill{font-size:.79rem;padding:.58rem .82rem}.place-hero h1,.event-hero-copy h1,.route-detail-content h1{font-size:clamp(2rem,5vw,4.2rem)}.newsletter-card h2,.social-home-card h2,.home-map-copy h2{font-size:clamp(1.7rem,3.4vw,2.7rem)}.mobile-nav a{font-size:1rem;padding:.9rem .15rem}.mobile-bottom-nav span{font-size:.67rem}.site-footer h3{font-size:.9rem}.footer-intro,.footer-note,.site-footer a{font-size:.9rem}.route-detail-hero,.page-hero,.business-hero,.account-header,.business-dashboard-head{position:relative}.route-detail-hero:before,.page-hero:before,.business-hero:before,.account-header:before,.business-dashboard-head:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at top right,rgba(240,178,75,.16),transparent 32%);pointer-events:none}@media(min-width:1200px){.container-xxl{max-width:1280px}}@media(max-width:767px){body{font-size:.95rem}.hero-section h1{font-size:clamp(2rem,10vw,3rem)}.section-space{padding:3.75rem 0}.page-hero{padding:3.7rem 0 3rem}.site-header .navbar{min-height:64px}}

/* v1.7.1 layout and map stability fixes */
:root{--border:var(--line);--surface:var(--soft);--primary:var(--ink)}
html,body{max-width:100%;overflow-x:clip}
body{min-width:320px}
img,svg,video,canvas,iframe{max-width:100%}

/* Allow flex and grid content to shrink instead of pushing outside cards. */
.section-heading>div,.hero-copy-wrap,.quick-grid>a>div,.weekend-list>a>div,.time-plan-grid>a>div,
.card-body-custom,.route-card-content,.map-popup>div,.map-list-item>span,.linked-place-card>div,
.notification-card>div,.business-place-row>div,.promotion-row>div,.recent-resource-grid>a>div,
.plan-items article>div,.admin-list>a>div,.admin-stats-grid>a>div,.admin-stats-grid>div>div{min-width:0}
.hero-section h1,.page-hero h1,.detail-hero-content h1,.route-detail-content h1,.business-hero h1,
.section-heading h2,.weekend-feature-copy h3,.weekend-list h3,.route-card-content h3,.card-body-custom h3,
.map-list-item strong,.linked-place-card h2,.account-header h1,.business-dashboard-head h1,
.pricing-card h3,.notification-card h2{overflow-wrap:anywhere;word-break:normal}

/* Hero search and counters must never overflow. */
.hero-search-advanced{display:grid;grid-template-columns:auto minmax(0,1fr) minmax(120px,155px) auto;width:min(920px,100%)}
.hero-search-advanced input,.hero-search-advanced select,.hero-search-advanced button{min-width:0}
.hero-proof{width:max-content;max-width:100%;padding:.72rem .9rem;border-radius:16px;line-height:1.25}
.hero-proof span{display:inline-flex;align-items:baseline;min-width:0}
.route-hero-facts span,.detail-flags span,.verified-badge,.hero-price-range{max-width:100%;white-space:normal;line-height:1.25}

/* Cards, numbers and list rows. */
.quick-grid>a,.time-plan-grid>a,.weekend-list>a,.linked-place-card,.notification-card,.plan-items article{min-width:0}
.weekend-list>a{grid-template-columns:52px minmax(0,1fr) 24px}
.weekend-list h3,.weekend-list p,.map-list-item strong,.map-list-item span{overflow:hidden;text-overflow:ellipsis}
.time-plan-grid>a{grid-template-columns:52px minmax(0,1fr) 22px}
.account-stats,.business-stats,.admin-stats-grid{grid-template-columns:repeat(auto-fit,minmax(145px,1fr))}
.account-stats div,.business-stats div,.admin-stats-grid>a,.admin-stats-grid>div{min-width:0}
.account-stats strong,.business-stats strong,.admin-stats-grid strong{font-size:clamp(1.35rem,4vw,2rem);overflow-wrap:anywhere}
.pricing-card{min-width:0;padding-top:1.7rem}
.pricing-card:has(.pricing-badge) h3{padding-right:6.5rem}
.pricing-badge{max-width:110px;text-align:center;line-height:1.15;white-space:normal}
.calendar-day,.calendar-events,.calendar-events a{min-width:0;overflow:hidden}
.calendar-events span,.calendar-events small{overflow-wrap:anywhere}
.opening-hours-table>div>*{min-width:0}
.opening-hours-table span{overflow-wrap:anywhere}

/* Main map page: keep the Leaflet canvas at the real available size. */
.map-page{height:auto;min-height:0;grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(420px,62dvh);overflow:hidden}
.map-sidebar{height:auto;max-height:none;min-width:0;overflow:auto}
.main-map{width:100%;height:100%;min-height:420px;position:relative;isolation:isolate}
.home-map,.route-map,.detail-map{width:100%;position:relative;isolation:isolate}
.leaflet-container{width:100%;max-width:100%;font:inherit;z-index:1}
.leaflet-control-container{position:relative;z-index:500}
.map-popup{grid-template-columns:58px minmax(0,1fr);min-width:0;width:min(240px,70vw);max-width:100%}
.map-popup img{width:58px;height:58px}
.leaflet-popup-content{max-width:min(260px,72vw);overflow-wrap:anywhere}

/* There are five items in the mobile bottom navigation. */
.mobile-bottom-nav{grid-template-columns:repeat(5,minmax(0,1fr))}
.mobile-bottom-nav a{min-width:0}
.mobile-bottom-nav span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

@media(min-width:992px){
  .map-page{height:calc(100dvh - 68px);min-height:560px;grid-template-columns:minmax(300px,360px) minmax(0,1fr);grid-template-rows:minmax(0,1fr)}
  .map-sidebar{height:100%;min-height:0;max-height:none;border-bottom:0;border-right:1px solid var(--line)}
  .main-map{height:100%;min-height:0}
}
@media(min-width:1200px){
  .map-page{height:calc(100dvh - 68px)}
  .map-sidebar,.main-map{height:100%}
}
@media(max-width:767.98px){
  .hero-search-advanced{grid-template-columns:minmax(0,1fr) auto;gap:.35rem;padding:.5rem}
  .hero-search-advanced>i{display:none}
  .hero-search-advanced input{grid-column:1/-1;width:100%;padding:.65rem .7rem}
  .hero-search-advanced select{display:block;grid-column:1;max-width:none;width:100%;border-left:0;border-top:1px solid var(--line);padding:.65rem .7rem}
  .hero-search-advanced button{grid-column:2;padding:.65rem .85rem}
  .hero-proof{display:none}
  .route-detail-hero{min-height:620px}
  .route-hero-facts{gap:.45rem}
  .route-hero-facts span{padding:.55rem .65rem;font-size:.76rem}
  .notification-card{grid-template-columns:40px minmax(0,1fr);gap:.75rem;padding:1rem}
  .notification-icon{width:40px;height:40px}
  .linked-place-card{grid-template-columns:64px minmax(0,1fr)}
  .map-page{grid-template-rows:auto minmax(420px,64dvh)}
  .main-map{min-height:420px}
  .home-map{height:400px}
  .route-map{height:420px}
}
@media(max-width:420px){
  .time-plan-grid>a{grid-template-columns:44px minmax(0,1fr) 18px;padding:.72rem;gap:.65rem}
  .time-plan-grid>a>span{width:44px;height:44px;font-size:1.05rem}
  .weekend-list>a{grid-template-columns:46px minmax(0,1fr);padding:.8rem;gap:.7rem}
  .weekend-date{width:46px;height:52px}
  .account-stats,.business-stats{grid-template-columns:1fr}
  .pricing-card:has(.pricing-badge) h3{padding-right:0;padding-top:2.2rem}
  .pricing-badge{left:1.2rem;right:auto;top:1rem;max-width:calc(100% - 2.4rem)}
  .mobile-bottom-nav a{font-size:.58rem;padding:.2rem .05rem}
  .mobile-bottom-nav i{font-size:1.05rem}
}

/* v1.7.2 map engine stabilization */
.leaflet-control-container{position:static;z-index:auto}
.home-map-card,.home-map,.map-page,.main-map,.route-map,.detail-map{min-width:0}
.home-map,.main-map,.route-map,.detail-map{overflow:hidden;contain:layout paint}
.home-map{height:clamp(400px,52vw,560px);min-height:400px}
.map-page{display:grid;height:auto;min-height:0;grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(480px,68svh);overflow:visible;background:#fff}
.map-sidebar{height:auto;max-height:none;overflow:visible;min-width:0}
.main-map{display:block;width:100%;height:100%;min-height:480px;align-self:stretch}
.route-map{height:520px;min-height:420px}
.detail-map{height:360px;min-height:320px}
.leaflet-container{z-index:0!important}
.leaflet-container .leaflet-map-pane,.leaflet-container .leaflet-tile-pane{will-change:transform}
.leaflet-container .leaflet-tile{max-width:none!important;max-height:none!important}
@media(min-width:992px){
  .map-page{height:calc(100svh - 68px);min-height:620px;max-height:900px;grid-template-columns:minmax(310px,370px) minmax(0,1fr);grid-template-rows:minmax(0,1fr);overflow:hidden}
  .map-sidebar{height:100%;min-height:0;overflow-y:auto;border-right:1px solid var(--line);border-bottom:0}
  .main-map{height:100%;min-height:620px}
}
@media(max-width:767.98px){
  .home-map{height:420px;min-height:420px}
  .map-page{grid-template-rows:auto 68svh}
  .main-map{height:68svh;min-height:480px}
  .route-map{height:440px;min-height:440px}
  .detail-map{height:340px;min-height:340px}
}
@media(max-width:420px){
  .home-map{height:390px;min-height:390px}
  .map-page{grid-template-rows:auto 64svh}
  .main-map{height:64svh;min-height:440px}
}


/* v1.8 bright destination theme */
:root{--accent:#f4b942;--accent-strong:#b96f16;--cream:#fff9ed;--soft:#f2f7f2;--line:rgba(29,67,55,.11);--shadow:0 18px 48px rgba(58,74,64,.10)}
body{background:#fffdf8;color:#1d4036}.site-header{background:rgba(255,253,248,.94);border-bottom-color:rgba(29,64,54,.08)}
.hero-section{background:#f7efe0;min-height:min(820px,calc(100vh - 68px))}.hero-inner{min-height:min(820px,calc(100vh - 68px));justify-content:center;padding-top:5rem;padding-bottom:2.5rem}.hero-bg{background-position:center}.hero-bg:after{background:linear-gradient(180deg,rgba(255,255,255,0) 55%,rgba(255,249,237,.72))}.hero-orbit{opacity:.16}
.hero-copy-wrap{background:rgba(255,253,248,.82);border:1px solid rgba(255,255,255,.9);backdrop-filter:blur(15px);padding:clamp(1.35rem,3vw,2.4rem);border-radius:28px;box-shadow:0 26px 70px rgba(55,70,60,.14)}
.hero-section h1{color:#183c32;text-shadow:none}.hero-lead{color:#526b62}.eyebrow.light{color:#a65e10}.btn-glass{background:#fff;border-color:rgba(29,64,54,.15);color:#183c32}.btn-glass:hover{background:#edf5ef;color:#183c32}.hero-proof{background:rgba(255,255,255,.76);border-color:rgba(29,64,54,.08);color:#23473d}.hero-proof span{color:#526b62}.hero-proof strong{color:#173c32}
.quick-discovery{background:#fff8ea}.quick-grid>a{background:#fffefb}.bg-soft{background:#f4f8f3}
.page-hero,.route-page-hero{background:linear-gradient(135deg,#fff3d9,#eaf5ec);color:#183c32}.page-hero p{color:#5d716a}.page-hero:after{border-color:rgba(244,185,66,.22)}
.time-planner-section{background:linear-gradient(135deg,#fff4db,#e8f5ed);color:#183c32}.time-planner-section .light-heading h2,.time-planner-section .light-heading p,.time-planner-section .section-link.light{color:#183c32}.time-planner-section .light-heading p{opacity:1}.time-plan-grid>a{background:rgba(255,255,255,.78);border-color:rgba(29,64,54,.09);color:#183c32}.time-plan-grid>a:hover{background:#fff;box-shadow:var(--shadow)}.time-plan-grid small{color:#657a72}.time-planner-section .eyebrow.light{color:#a65e10}
.home-map-section{background:#f5f8f0}.home-map-card{background:#fff;border:1px solid var(--line)}.home-map-copy{color:#183c32;background:linear-gradient(135deg,#fff6df,#eef7ef)}.home-map-copy p{color:#60746c}
.newsletter-section{background:#fffdf8}.newsletter-card{background:linear-gradient(120deg,#ffe8b0,#f2f8ed);color:#183c32;border:1px solid rgba(29,64,54,.09)}.newsletter-card p{color:#63756e}.newsletter-form input{background:#fff;color:#183c32;border-color:rgba(29,64,54,.14)}.newsletter-form input::placeholder{color:#84928d}
.site-footer{background:#e9f2e9;color:#183c32}.footer-brand .brand-copy small,.footer-intro,.site-footer .col-6>a,.site-footer .col-lg-3>a,.footer-note,.footer-bottom{color:#61766e}.site-footer h3{color:#99601b}.site-footer a:hover{color:#0e2f26}.social-links a{border-color:rgba(29,64,54,.16)}.footer-bottom{border-top-color:rgba(29,64,54,.11)}
.account-header,.business-dashboard-head,.business-hero{background:linear-gradient(135deg,#e8f5ec,#fff0ce);color:#183c32}.account-nav a{color:#183c32;border-color:rgba(29,64,54,.18)}.business-hero p{color:#5c7168}.pricing-card.featured{background:#fff1ce;color:#183c32;border-color:#efcf86}.pricing-card.featured .btn-outline-light{color:#183c32;border-color:#183c32}
.weekend-feature-overlay{background:linear-gradient(180deg,rgba(18,50,40,.02),rgba(18,50,40,.74))}.weekend-date{background:#eaf4eb;color:#183c32}.weekend-date span{color:#63766f}
.route-detail-overlay,.detail-hero-overlay{background:linear-gradient(180deg,rgba(16,49,39,.05),rgba(16,49,39,.72))}.route-detail-content,.detail-hero-content{color:#fff}
@media(max-width:767px){.hero-copy-wrap{border-radius:22px;padding:1.25rem}.hero-inner{padding-top:2.4rem}.hero-proof{background:rgba(255,255,255,.88)}}

.route-detail-content .eyebrow.light,.detail-hero-content .eyebrow.light{color:#ffe1a3}.route-detail-content .back-link,.detail-hero-content .back-link{color:#fff}

/* v1.8.1 cohesive premium palette and spacing pass */
:root{
  --ink:#173f35;
  --ink-2:#365f55;
  --accent:#d89a3b;
  --accent-strong:#a96620;
  --cream:#fbf5e9;
  --soft:#edf3ef;
  --white:#fff;
  --muted:#687971;
  --line:rgba(23,63,53,.12);
  --shadow:0 18px 46px rgba(26,59,49,.09);
  --shadow-strong:0 24px 64px rgba(22,55,46,.13);
}
body{background:#faf8f3;color:var(--ink)}
.site-header{background:rgba(255,255,255,.94);border-bottom:1px solid rgba(23,63,53,.08);box-shadow:0 10px 28px rgba(23,63,53,.05)}
.brand-symbol{background:var(--ink)}
.nav-link:hover,.nav-link.active{background:#edf3ef;color:var(--ink)!important}
.btn-accent{background:var(--accent);border-color:var(--accent);color:#25352f}
.btn-accent:hover{background:var(--accent-strong);border-color:var(--accent-strong);color:#fff}
.btn-dark{background:var(--ink);border-color:var(--ink)}
.btn-dark:hover{background:#0f3028;border-color:#0f3028}

.hero-section{background:#e9eee9}
.hero-copy-wrap{background:rgba(251,248,241,.91);border:1px solid rgba(255,255,255,.92);box-shadow:var(--shadow-strong)}
.hero-section h1{color:var(--ink)}
.hero-lead{color:#536d64}
.hero-proof{background:rgba(255,255,255,.86);border-color:rgba(23,63,53,.10);box-shadow:0 14px 34px rgba(23,63,53,.09)}
.hero-search{box-shadow:0 18px 44px rgba(23,63,53,.13)}

.quick-discovery{background:#f7f1e5;padding:2.5rem 0 3rem;border-bottom:1px solid var(--line)}
.quick-grid{gap:1.15rem}
.quick-grid>a{background:#fff;border-color:var(--line);box-shadow:0 12px 30px rgba(23,63,53,.06)}
.quick-grid>a:hover{box-shadow:var(--shadow);border-color:rgba(216,154,59,.34)}
.quick-icon{background:#edf3ef;color:var(--ink)}

.section-space{padding:5.25rem 0}
.weekend-section{background:#fff;border-bottom:1px solid var(--line)}
.weekend-layout{gap:1.75rem}
.weekend-feature{box-shadow:var(--shadow-strong)}
.weekend-list{gap:.9rem;border:0;border-radius:0;overflow:visible;background:transparent}
.weekend-list>a{border:1px solid var(--line)!important;border-radius:18px;background:#fff;padding:1.1rem;box-shadow:0 12px 30px rgba(23,63,53,.06)}
.weekend-list>a:hover{background:#fbf7ef;border-color:rgba(216,154,59,.34)!important;transform:translateY(-2px)}
.weekend-date{background:var(--ink);color:#fff}
.weekend-date span{color:rgba(255,255,255,.66)}

.time-planner-section{background:#edf3ef;color:var(--ink);border-top:1px solid rgba(23,63,53,.05);border-bottom:1px solid var(--line)}
.time-planner-section .light-heading h2,.time-planner-section .light-heading p,.time-planner-section .section-link.light{color:var(--ink)}
.time-planner-section .light-heading p{opacity:1;color:var(--muted)}
.time-planner-section .eyebrow.light{color:var(--accent-strong)}
.time-plan-grid{gap:1rem;margin-bottom:2rem}
.time-plan-grid>a{background:#fff;border:1px solid var(--line);color:var(--ink);box-shadow:0 10px 26px rgba(23,63,53,.05)}
.time-plan-grid>a:hover{background:#fffaf0;border-color:rgba(216,154,59,.35);box-shadow:var(--shadow)}
.time-plan-grid small{color:var(--muted)}
.time-plan-grid>a>span{background:#f2cf8f;color:#2c4039}

.bg-soft{background:#fbf5e9;border-bottom:1px solid var(--line)}
.food-home-section{background:#fff;border-bottom:1px solid var(--line)}
.home-map-section{background:#eef3ef;padding:5.25rem 0;border-bottom:1px solid var(--line)}
.home-map-card{background:#fff;border:1px solid var(--line);box-shadow:var(--shadow-strong)}
.home-map-copy{background:#fbf5e9;color:var(--ink);padding:2.5rem}
.home-map-copy p{color:var(--muted)}
.social-home-section{padding:5.25rem 0!important;background:#fff;border-bottom:1px solid var(--line)}
.social-home-card{padding:2rem;gap:2rem;background:#fff;border-color:var(--line);box-shadow:var(--shadow)}
.social-home-links{gap:1rem}
.social-home-links a{background:#edf3ef;border:1px solid transparent}
.social-home-links a:hover{background:#fbf5e9;border-color:rgba(216,154,59,.28)}
.partners-section{padding:4.5rem 0 5.25rem;background:#fbf5e9;border-top:0;border-bottom:1px solid var(--line)}
.partner-logo-row{gap:1rem;padding:1.1rem 0}
.partner-logo-row a{background:#fff;border-color:var(--line);box-shadow:0 10px 26px rgba(23,63,53,.05)}

.content-card,.route-card,.advanced-filter-card,.filter-bar,.calendar-header,.calendar-mobile-day,.detail-info-card,.mini-map-card,.business-panel,.settings-card,.account-stats>div,.business-stats>div{border:1px solid var(--line);box-shadow:0 12px 32px rgba(23,63,53,.06)}
.content-card,.route-card{height:100%;background:#fff}
.content-card:hover,.route-card:hover{box-shadow:var(--shadow-strong)}
.advanced-filter-card{margin:1.65rem 0 2rem;padding:1.25rem;background:#fff}
.events-toolbar{margin-bottom:1.4rem}
.results-summary{margin:1.9rem 0 .8rem}
.place-type-tabs{margin-bottom:1.25rem}
.duration-filter{margin-bottom:2rem!important;padding:.85rem 1rem;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 10px 26px rgba(23,63,53,.05)}
.calendar-header{margin:2rem 0 1.25rem;background:#fff}
.page-hero,.route-page-hero{background:linear-gradient(135deg,#f7eddb 0%,#edf3ef 72%,#e4eee8 100%);color:var(--ink);border-bottom:1px solid var(--line)}
.page-hero p{color:#61756d}
.page-hero .eyebrow.light{color:var(--accent-strong)}

.newsletter-section{background:#fff;padding:5rem 0}
.newsletter-card{background:linear-gradient(120deg,#f5ead7,#edf3ef);color:var(--ink);border:1px solid var(--line);box-shadow:var(--shadow);padding:2.4rem}
.newsletter-card p{color:var(--muted)}
.newsletter-form input{background:#fff;color:var(--ink);border:1px solid var(--line)}
.newsletter-form input::placeholder{color:#84928d}
.newsletter-form button{background:var(--ink);color:#fff}
.newsletter-form button:hover{background:#0f3028}

.site-footer{background:linear-gradient(135deg,#091b17 0%,#102e27 58%,#143a31 100%);color:#fff;padding:5.5rem 0 2.4rem;border-top:4px solid var(--accent)}
.footer-main{padding-bottom:3.3rem;row-gap:2.6rem}
.footer-brand .brand-symbol{background:var(--accent);color:#172b25}
.footer-brand .brand-copy strong{color:#fff}
.footer-brand .brand-copy small{color:rgba(255,255,255,.58)}
.footer-intro{color:rgba(255,255,255,.66)}
.site-footer h3{color:#f0c878}
.site-footer .col-6>a,.site-footer .col-lg-3>a{color:rgba(255,255,255,.73)}
.site-footer a:hover{color:#fff}
.footer-note{color:rgba(255,255,255,.50)}
.social-links a{border-color:rgba(255,255,255,.18);color:#fff;background:rgba(255,255,255,.03)}
.social-links a:hover{background:rgba(255,255,255,.10)}
.footer-bottom{border-top-color:rgba(255,255,255,.12);color:rgba(255,255,255,.48);gap:1rem;flex-wrap:wrap}

@media(min-width:768px){
  .home-map-card{grid-template-columns:minmax(300px,.82fr) minmax(0,1.55fr)}
  .social-home-card{flex-direction:row;align-items:center;justify-content:space-between}
  .social-home-card>div:first-child{max-width:620px}
  .social-home-links{min-width:280px}
}
@media(max-width:767.98px){
  .section-space{padding:4.2rem 0}
  .quick-discovery{padding:2rem 0 2.4rem}
  .weekend-layout{gap:1.2rem}
  .weekend-list{gap:.75rem}
  .weekend-list>a{padding:.95rem}
  .home-map-section,.social-home-section{padding:4.2rem 0!important}
  .partners-section{padding:3.7rem 0 4.2rem}
  .newsletter-section{padding:4rem 0}
  .newsletter-card{padding:1.5rem}
  .site-footer{padding:4.2rem 0 6.5rem}
  .footer-main{row-gap:2.2rem}
  .site-footer .col-6{padding-top:.4rem}
  .advanced-filter-card{margin:1.35rem 0 1.7rem}
  .results-summary{margin:1.6rem 0 .65rem}
}

/* v1.8.3 brand logo */
.site-logo-link{display:inline-flex;align-items:center;min-width:0;padding:0!important;background:transparent!important}
.site-logo-image{display:block;width:auto;height:52px;max-width:250px;object-fit:contain;border-radius:10px}
.mobile-logo-link .site-logo-image{height:48px;max-width:215px}
.footer-logo-image{height:78px;max-width:340px;border-radius:14px}
.site-footer .site-logo-link{filter:none}
@media (max-width:1199px){.site-logo-image{height:46px;max-width:220px}}
@media (max-width:575px){.site-logo-image{height:40px;max-width:178px}.mobile-logo-link .site-logo-image{height:44px;max-width:195px}.footer-logo-image{height:66px;max-width:280px}}

/* v1.8.4 business landing and circular icon system */
.icon-circle,.mini-icon-circle,.icon-btn,.quick-icon,.notification-icon,.social-links a,.header-icon,.business-preview-actions span{
  display:inline-grid;
  place-items:center;
  flex:0 0 auto;
  border-radius:50%;
}
.icon-circle{width:52px;height:52px;background:#edf4ef;color:var(--ink);font-size:1.25rem;border:1px solid rgba(19,42,36,.09)}
.mini-icon-circle{width:28px;height:28px;background:#edf4ef;color:var(--ink);font-size:.78rem;border:1px solid rgba(19,42,36,.08)}
.icon-btn{width:38px;height:38px;border:1px solid rgba(19,42,36,.12);background:#fff;color:var(--ink);padding:0;text-decoration:none;transition:.2s ease}
.icon-btn:hover{background:var(--ink);color:#fff;border-color:var(--ink);transform:translateY(-1px)}
.icon-btn.danger:hover{background:#9f2d2d;border-color:#9f2d2d;color:#fff}
.quick-icon,.notification-icon{border-radius:50%!important}
.empty-state>i{width:58px;height:58px;display:grid;place-items:center;border-radius:50%;background:#edf4ef;color:var(--ink);font-size:1.35rem;margin:0 auto 1rem}
.account-nav a>i,.business-trust-row i{width:28px;height:28px;display:inline-grid;place-items:center;border-radius:50%;background:rgba(255,255,255,.12);flex:0 0 auto}

.business-landing-hero{position:relative;overflow:hidden;padding:6rem 0 5.2rem;background:linear-gradient(135deg,#f4f0e5 0%,#fff 48%,#eaf3ec 100%);border-bottom:1px solid rgba(19,42,36,.08)}
.business-landing-hero:before{content:"";position:absolute;width:520px;height:520px;border-radius:50%;right:-180px;top:-220px;background:radial-gradient(circle,rgba(214,157,55,.22),rgba(214,157,55,0) 68%)}
.business-landing-hero .container-xxl{position:relative;z-index:1}
.business-landing-hero h1{font-size:clamp(2.45rem,5.4vw,5rem);line-height:.97;letter-spacing:-.055em;max-width:900px;font-weight:900;margin:0 0 1.25rem;color:var(--ink)}
.business-hero-lead{max-width:720px;font-size:1.08rem;color:#5f706a;margin:0 0 1.7rem}
.business-hero-actions{margin-bottom:1.7rem}
.business-trust-row{display:flex;flex-wrap:wrap;gap:.75rem 1.15rem;color:#4c615a;font-size:.86rem;font-weight:750}
.business-trust-row span{display:flex;align-items:center;gap:.45rem}
.business-trust-row i{background:#e3efe7;color:var(--ink)}
.business-hero-preview{background:#fff;border:1px solid rgba(19,42,36,.1);border-radius:28px;padding:1rem;box-shadow:0 30px 80px rgba(19,42,36,.12);transform:rotate(1.2deg)}
.business-preview-top{display:flex;justify-content:space-between;align-items:center;padding:.25rem .25rem .8rem;gap:1rem}
.business-preview-status,.business-preview-rating{display:inline-flex;align-items:center;gap:.38rem;font-size:.76rem;font-weight:850}
.business-preview-status{color:#286242}.business-preview-rating{color:#9a6517}
.business-preview-image{height:210px;border-radius:20px;background:linear-gradient(145deg,#173f34,#275f50);display:grid;place-items:center;color:#f2c267;font-size:4.5rem;overflow:hidden;position:relative}
.business-preview-image:after{content:"";position:absolute;width:180px;height:180px;border-radius:50%;background:rgba(255,255,255,.06);right:-40px;bottom:-65px}
.business-preview-body{padding:1.15rem .45rem .35rem}.business-preview-body small{color:var(--accent-strong);font-weight:800;text-transform:uppercase;letter-spacing:.08em}.business-preview-body h2{font-size:1.45rem;margin:.35rem 0 .45rem;font-weight:850}.business-preview-body p{color:var(--muted);font-size:.9rem;margin-bottom:1rem}
.business-preview-actions{display:flex;gap:.55rem}.business-preview-actions span{width:38px;height:38px;background:#edf4ef;color:var(--ink)}
.business-benefits-section{background:#fff}
.business-section-heading{max-width:820px}.business-section-heading h2{max-width:780px}
.business-benefit-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}
.business-benefit-grid article{padding:1.45rem;border:1px solid rgba(19,42,36,.09);border-radius:22px;background:#fff;box-shadow:0 16px 38px rgba(19,42,36,.05)}
.business-benefit-grid h3{font-size:1.08rem;margin:1rem 0 .45rem;font-weight:850}.business-benefit-grid p{font-size:.9rem;color:var(--muted);margin:0}
.business-process-section{background:#f3f6f2;border-top:1px solid rgba(19,42,36,.06);border-bottom:1px solid rgba(19,42,36,.06)}
.business-process-section h2{font-size:clamp(1.9rem,3.8vw,3.25rem);line-height:1.02;letter-spacing:-.04em;font-weight:900}.business-process-section p{color:var(--muted)}
.business-steps{display:grid;gap:.85rem}
.business-steps article{display:grid;grid-template-columns:62px 1fr;gap:1rem;padding:1.15rem;background:#fff;border:1px solid rgba(19,42,36,.09);border-radius:20px;align-items:start}
.business-step-number{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:var(--ink);color:#fff;font-size:.82rem;font-weight:900;letter-spacing:.08em}
.business-steps h3{font-size:1.08rem;margin:.15rem 0 .3rem;font-weight:850}.business-steps p{font-size:.9rem;margin:0}
.business-pricing-section{background:#fff}
.business-pricing-grid{gap:1.15rem;align-items:stretch}
.business-pricing-grid .pricing-card{border-radius:24px;padding:1.35rem;box-shadow:0 18px 42px rgba(19,42,36,.06);transform:none}
.business-pricing-grid .pricing-card.featured{background:linear-gradient(160deg,#173f34,#0e2c24);color:#fff;border-color:#173f34;box-shadow:0 24px 55px rgba(14,44,36,.22)}
.business-pricing-grid .pricing-card.featured p,.business-pricing-grid .pricing-card.featured .price span{color:rgba(255,255,255,.68)}
.business-pricing-grid .pricing-card.featured .icon-circle,.business-pricing-grid .pricing-card.featured .mini-icon-circle{background:rgba(255,255,255,.11);color:#f3c66a;border-color:rgba(255,255,255,.12)}
.pricing-plan-icon{margin-bottom:1rem}.business-pricing-grid .pricing-card h3{margin:0 0 .45rem}.business-pricing-grid .pricing-card>p{min-height:65px;color:var(--muted)}
.business-pricing-grid .price{display:flex;align-items:baseline;gap:.35rem;margin:1rem 0 1.2rem}.business-pricing-grid .price strong{font-size:1.75rem;line-height:1;overflow-wrap:anywhere}.business-pricing-grid .price span{font-size:.78rem;color:var(--muted)}
.business-pricing-grid ul{display:grid;gap:.55rem;margin:0 0 1.25rem}.business-pricing-grid li{display:flex;align-items:center;gap:.55rem;margin:0;font-size:.84rem;line-height:1.3}
.business-pricing-grid .pricing-badge{top:1rem;right:1rem;max-width:150px;text-align:center}
.business-integrity-section{padding:0 0 5rem;background:#fff}
.business-integrity-card{display:grid;grid-template-columns:auto 1fr;align-items:start;gap:1.1rem;padding:1.6rem 1.8rem;border-radius:24px;background:#f3f6f2;border:1px solid rgba(19,42,36,.09)}
.business-integrity-card h2{font-size:1.35rem;margin:0 0 .4rem;font-weight:850}.business-integrity-card p{margin:0;color:var(--muted)}
.business-integrity-card .eyebrow{margin-bottom:.35rem}

.business-place-row .d-flex{flex:0 0 auto}.promotion-row .icon-btn{margin-left:.5rem}
.plan-card>header form button,.plan-items form button{width:36px;height:36px;display:grid;place-items:center;border-radius:50%;border:1px solid rgba(19,42,36,.1);background:#fff;color:var(--ink)}
.plan-card>header form button:hover,.plan-items form button:hover{background:#9f2d2d;color:#fff;border-color:#9f2d2d}

@media(max-width:1199px){.business-benefit-grid{grid-template-columns:repeat(2,1fr)}.business-pricing-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:767px){
  .business-landing-hero{padding:4rem 0 3.5rem}.business-landing-hero h1{font-size:clamp(2.15rem,11vw,3.2rem)}.business-hero-preview{transform:none}.business-preview-image{height:180px}.business-trust-row{display:grid;gap:.55rem}.business-benefit-grid,.business-pricing-grid{grid-template-columns:1fr}.business-benefit-grid article{padding:1.25rem}.business-steps article{grid-template-columns:48px 1fr}.business-step-number{width:44px;height:44px}.business-integrity-card{grid-template-columns:1fr;padding:1.35rem}.business-pricing-grid .pricing-card>p{min-height:0}
}

/* v1.9.0 compact premium scale */
:root{
  --premium-shadow:0 18px 44px rgba(19,42,36,.07);
  --premium-shadow-hover:0 24px 58px rgba(19,42,36,.12);
}
body{font-size:.94rem;line-height:1.52}
.site-header .navbar{min-height:64px}
.site-logo-image{height:46px;max-width:220px}
.navbar-nav{gap:.05rem}
.nav-link{font-size:.84rem;padding:.62rem .66rem!important}
.header-icon{width:36px;height:36px}
.language-switch{font-size:.74rem;padding:.3rem .48rem}
.premium-nav-dropdown{border:1px solid rgba(19,42,36,.1);border-radius:16px;padding:.5rem;box-shadow:var(--premium-shadow-hover);min-width:220px}
.premium-nav-dropdown .dropdown-item{display:flex;align-items:center;gap:.65rem;border-radius:11px;padding:.62rem .7rem;font-size:.86rem;font-weight:750}
.premium-nav-dropdown .dropdown-item:hover{background:#eff4f0;color:var(--ink)}
.nav-dropdown-icon{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#e6efe8;color:var(--ink);font-size:.78rem}
.hero-section{min-height:clamp(580px,78vh,760px)}
.hero-inner{min-height:clamp(580px,78vh,760px);padding-top:4.6rem;padding-bottom:1.7rem}
.min-vh-75{min-height:49vh}
.hero-section h1{font-size:clamp(2.15rem,4.7vw,4.25rem)!important;line-height:.98!important;letter-spacing:-.05em!important;max-width:780px!important;margin-bottom:1rem!important}
.hero-lead{font-size:clamp(.96rem,1.45vw,1.08rem)!important;max-width:640px!important;margin-bottom:1.25rem!important}
.hero-actions .btn{padding:.72rem 1.05rem;font-size:.88rem}
.hero-search{margin-top:1.35rem;max-width:670px}
.hero-proof{font-size:.77rem}.hero-proof strong{font-size:1.1rem}
.section-space{padding:4.15rem 0!important}
.section-heading{margin-bottom:1.45rem}.section-heading h2{font-size:clamp(1.55rem,2.8vw,2.45rem)!important;line-height:1.05!important;letter-spacing:-.035em!important}.section-heading p{font-size:.88rem}
.page-hero{padding:3.7rem 0 3.15rem!important}.page-hero h1{font-size:clamp(2rem,4.2vw,3.45rem)!important;line-height:1!important;max-width:840px!important}.page-hero p{font-size:.96rem!important;max-width:720px}
.business-landing-hero{padding:4.8rem 0 4rem!important}.business-landing-hero h1,.business-hero h1{font-size:clamp(2.1rem,4.3vw,3.75rem)!important;line-height:.99!important;max-width:820px!important}.business-hero-lead{font-size:1rem!important}
.route-detail-content h1,.detail-hero-content h1,.place-hero h1,.event-hero-copy h1{font-size:clamp(2rem,4.3vw,3.55rem)!important;line-height:1!important;max-width:880px!important}
.newsletter-card h2,.social-home-card h2,.home-map-copy h2,.business-process-section h2{font-size:clamp(1.55rem,2.7vw,2.3rem)!important;line-height:1.06!important}
.content-card,.route-card,.advanced-filter-card,.business-benefit-grid article,.pricing-card{box-shadow:var(--premium-shadow)}
.content-card:hover,.route-card:hover{box-shadow:var(--premium-shadow-hover);transform:translateY(-3px)}
.card-body-custom{padding:.95rem}.card-body-custom h3{font-size:1.02rem!important;line-height:1.25}.card-body-custom p{font-size:.84rem!important}.card-meta{font-size:.67rem}.text-link{font-size:.8rem}
.route-card-content{padding:1.05rem}.route-card-content h3{font-size:1.16rem!important}.route-card-content p{font-size:.85rem!important}.route-facts{font-size:.72rem}
.advanced-filter-card{padding:1rem!important;border-radius:20px}.advanced-filter-head{margin-bottom:.85rem}.filter-pill{padding:.54rem .78rem;font-size:.76rem}
.map-sidebar-head h1{font-size:clamp(1.55rem,2.7vw,2.25rem)!important}.map-sidebar-head p,.map-list{font-size:.84rem}
.business-benefit-grid article{padding:1.2rem}.business-benefit-grid h3{font-size:1rem}.business-preview-body h2{font-size:1.25rem}.business-pricing-grid .pricing-card{padding:1.15rem}.business-pricing-grid .pricing-card h3{font-size:1.25rem}.business-pricing-grid .price strong{font-size:1.55rem}
.health-beauty-accent{color:#9b466d}
@media(max-width:1199px){.site-logo-image{height:43px;max-width:205px}.nav-link{font-size:.82rem}}
@media(max-width:767px){
  body{font-size:.92rem}.site-header .navbar{min-height:60px}.site-logo-image{height:38px;max-width:170px}.hero-section,.hero-inner{min-height:590px}.hero-inner{padding-top:3.9rem}.hero-section h1{font-size:clamp(1.95rem,9.2vw,2.85rem)!important}.hero-search{margin-top:1.05rem}.section-space{padding:3.35rem 0!important}.page-hero{padding:3rem 0 2.55rem!important}.page-hero h1{font-size:clamp(1.85rem,8.8vw,2.75rem)!important}.route-detail-content h1,.detail-hero-content h1{font-size:clamp(1.9rem,9vw,2.8rem)!important}.business-landing-hero{padding:3.5rem 0 3rem!important}.business-landing-hero h1{font-size:clamp(1.95rem,9.2vw,2.85rem)!important}.section-heading h2{font-size:clamp(1.45rem,7vw,2.15rem)!important}.premium-nav-dropdown{box-shadow:none}
}


/* v1.9.1 brand controls, visible hero stats and object icons */
.btn-primary{
  --bs-btn-color:#fff;
  --bs-btn-bg:var(--ink);
  --bs-btn-border-color:var(--ink);
  --bs-btn-hover-color:#fff;
  --bs-btn-hover-bg:#0f3028;
  --bs-btn-hover-border-color:#0f3028;
  --bs-btn-focus-shadow-rgb:23,63,53;
  --bs-btn-active-color:#fff;
  --bs-btn-active-bg:#0b2821;
  --bs-btn-active-border-color:#0b2821;
  --bs-btn-disabled-bg:#6e7f79;
  --bs-btn-disabled-border-color:#6e7f79;
}
.btn-outline-primary{
  --bs-btn-color:var(--ink);
  --bs-btn-border-color:rgba(23,63,53,.35);
  --bs-btn-hover-color:#fff;
  --bs-btn-hover-bg:var(--ink);
  --bs-btn-hover-border-color:var(--ink);
  --bs-btn-focus-shadow-rgb:23,63,53;
  --bs-btn-active-color:#fff;
  --bs-btn-active-bg:var(--ink);
  --bs-btn-active-border-color:var(--ink);
}
.form-control:focus,.form-select:focus,.form-check-input:focus,.btn:focus-visible,a:focus-visible{
  border-color:rgba(216,154,59,.75);
  box-shadow:0 0 0 .2rem rgba(216,154,59,.18);
}
.form-check-input:checked{background-color:var(--ink);border-color:var(--ink)}
.dropdown-item.active,.dropdown-item:active,.nav-pills .nav-link.active,.page-link.active,.active>.page-link{background-color:var(--ink);border-color:var(--ink);color:#fff}
.text-primary{color:var(--ink)!important}.bg-primary{background-color:var(--ink)!important}.border-primary{border-color:var(--ink)!important}

.hero-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem;width:min(560px,100%);margin-top:1.15rem}
.hero-stats>a{display:flex;align-items:center;gap:.65rem;min-width:0;padding:.65rem .75rem;border:1px solid rgba(23,63,53,.11);border-radius:15px;background:rgba(255,255,255,.91);box-shadow:0 12px 30px rgba(23,63,53,.08);color:var(--ink)}
.hero-stats>a:hover{transform:translateY(-2px);border-color:rgba(216,154,59,.42);box-shadow:0 16px 36px rgba(23,63,53,.12)}
.hero-stat-icon{display:grid;place-items:center;flex:0 0 auto;width:34px;height:34px;border-radius:50%;background:#edf3ef;color:var(--ink);font-size:.85rem}
.hero-stats>a>span:last-child{display:flex;flex-direction:column;min-width:0;line-height:1.05}
.hero-stats strong{display:block;font-size:1.15rem;font-weight:900;color:var(--ink)}
.hero-stats small{display:block;margin-top:.18rem;color:#60736c;font-size:.68rem;font-weight:800;white-space:nowrap}

.object-icon-circle{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#fff;color:var(--ink);border:1px solid rgba(19,42,36,.10);box-shadow:0 10px 24px rgba(19,42,36,.16);font-size:1rem;z-index:3}
.place-object-icon,.event-object-icon{position:absolute;left:14px;bottom:14px}
.route-card-image{position:relative}.route-object-icon{position:absolute;left:14px;bottom:14px}
.card-badge{display:inline-flex;align-items:center;gap:.38rem}.card-badge i{font-size:.76rem}
.event-card-flags{right:14px;left:auto}
.amenities-mini span{display:grid;place-items:center;border-radius:50%}

@media(max-width:767.98px){
  .hero-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.45rem;width:100%;margin-top:.9rem}
  .hero-stats>a{justify-content:center;padding:.55rem .35rem;gap:.38rem;border-radius:13px}
  .hero-stat-icon{width:29px;height:29px;font-size:.72rem}
  .hero-stats strong{font-size:1rem}.hero-stats small{font-size:.6rem}
  .object-icon-circle{width:38px;height:38px;font-size:.9rem}
}
@media(max-width:420px){
  .hero-stats>a{flex-direction:column;text-align:center;gap:.25rem}
  .hero-stats small{white-space:normal}
}


/* v1.9.2 premium rich footer */
.premium-footer{position:relative;overflow:hidden;background:linear-gradient(145deg,#071713 0%,#0d2821 48%,#12362d 100%);color:#fff;padding:0 0 2rem;border-top:0;isolation:isolate}
.footer-ambient{position:absolute;border-radius:50%;filter:blur(6px);pointer-events:none;z-index:-1}
.footer-ambient-one{width:430px;height:430px;right:-160px;top:140px;background:radial-gradient(circle,rgba(217,158,42,.16),rgba(217,158,42,0) 70%)}
.footer-ambient-two{width:360px;height:360px;left:-170px;bottom:-140px;background:radial-gradient(circle,rgba(69,133,106,.18),rgba(69,133,106,0) 70%)}
.footer-cta{position:relative;display:grid;gap:1.6rem;margin:0 0 4rem;padding:2rem;border:1px solid rgba(255,255,255,.12);border-top:3px solid var(--accent);border-radius:0 0 28px 28px;background:linear-gradient(125deg,rgba(255,255,255,.09),rgba(255,255,255,.035));box-shadow:0 28px 70px rgba(0,0,0,.23);backdrop-filter:blur(18px)}
.footer-kicker{display:inline-flex;color:#e7bf69;font-size:.72rem;font-weight:850;letter-spacing:.13em;text-transform:uppercase;margin-bottom:.75rem}
.footer-cta h2{max-width:680px;margin:0 0 .65rem;font-size:clamp(1.7rem,3vw,2.65rem);line-height:1.04;letter-spacing:-.045em;font-weight:850;color:#fff}
.footer-cta p{max-width:650px;margin:0;color:rgba(255,255,255,.66);font-size:.94rem}
.footer-cta-actions{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1.35rem}
.footer-btn{display:inline-flex;align-items:center;gap:.65rem;min-height:44px;padding:.72rem 1rem;border-radius:999px;font-size:.86rem;font-weight:800;transition:transform .2s ease,background .2s ease,border-color .2s ease}
.footer-btn i{display:grid;place-items:center;width:28px;height:28px;border-radius:50%}
.footer-btn:hover{transform:translateY(-2px)}
.footer-btn-primary{background:var(--accent);color:#18231e;border:1px solid var(--accent)}
.footer-btn-primary i{background:rgba(24,35,30,.1)}
.footer-btn-primary:hover{background:#edbe54;color:#18231e}
.footer-btn-secondary{border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.07);color:#fff}
.footer-btn-secondary i{background:rgba(255,255,255,.1)}
.footer-btn-secondary:hover{background:rgba(255,255,255,.13);color:#fff;border-color:rgba(255,255,255,.34)}
.footer-shortcuts{display:grid;gap:.65rem}
.footer-shortcuts>a{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.75rem;padding:.72rem .78rem;border:1px solid rgba(255,255,255,.11);border-radius:16px;background:rgba(4,20,16,.3);transition:.2s ease}
.footer-shortcuts>a:hover{background:rgba(255,255,255,.09);border-color:rgba(255,255,255,.2);transform:translateX(3px);color:#fff}
.footer-shortcut-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:rgba(217,158,42,.15);color:#f0c76b;font-size:1rem}
.footer-shortcuts strong,.footer-shortcuts small{display:block;min-width:0}.footer-shortcuts strong{font-size:.86rem}.footer-shortcuts small{margin-top:.08rem;color:rgba(255,255,255,.48);font-size:.72rem}.footer-shortcuts>a>i{color:rgba(255,255,255,.48);font-size:.82rem}
.footer-main-grid{display:grid;gap:2.3rem;padding-bottom:3.2rem}
.footer-brand-panel{min-width:0}.footer-logo-card{display:inline-flex;max-width:330px;padding:.58rem .72rem;background:#fffdf6;border:1px solid rgba(255,255,255,.18);border-radius:18px;box-shadow:0 18px 45px rgba(0,0,0,.24)}.footer-logo-card img{display:block;width:100%;height:auto;max-height:84px;object-fit:contain}
.footer-brand-panel>p{max-width:430px;margin:1.25rem 0;color:rgba(255,255,255,.62);font-size:.9rem;line-height:1.65}
.footer-social-row{display:flex;gap:.55rem}.footer-social-row a{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.055);color:#fff;transition:.2s}.footer-social-row a:hover{background:var(--accent);border-color:var(--accent);color:#17261f;transform:translateY(-2px)}
.footer-nav-column,.footer-contact-column{display:flex;flex-direction:column;align-items:flex-start;min-width:0}.premium-footer h3{display:flex;align-items:center;gap:.65rem;margin:0 0 1.15rem;color:#fff;font-size:.82rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.footer-heading-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:rgba(217,158,42,.14);color:#efc66d;font-size:.9rem}
.footer-nav-column>a{display:flex;align-items:center;gap:.55rem;width:100%;padding:.43rem 0;color:rgba(255,255,255,.66);font-size:.86rem;transition:.2s}.footer-nav-column>a i{display:grid;place-items:center;width:27px;height:27px;border-radius:50%;background:rgba(255,255,255,.055);font-size:.75rem;color:#e7bf69}.footer-nav-column>a:hover{color:#fff;transform:translateX(4px)}
.footer-email{color:#fff;font-size:.92rem;font-weight:750;overflow-wrap:anywhere}.footer-contact-column>p{margin:.8rem 0 1.2rem;color:rgba(255,255,255,.5);font-size:.82rem;line-height:1.6}
.footer-business-link{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.7rem;width:100%;padding:.75rem;border:1px solid rgba(255,255,255,.11);border-radius:16px;background:rgba(255,255,255,.05);color:#fff}.footer-business-link:hover{background:rgba(255,255,255,.09);color:#fff}.footer-business-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--accent);color:#17261f}.footer-business-link strong,.footer-business-link small{display:block}.footer-business-link strong{font-size:.84rem}.footer-business-link small{margin-top:.08rem;color:rgba(255,255,255,.46);font-size:.68rem}.footer-business-link>i{font-size:.78rem;color:rgba(255,255,255,.5)}
.footer-trust-row{display:grid;gap:.65rem;padding:1rem 0 1.5rem;border-top:1px solid rgba(255,255,255,.1)}.footer-trust-row span{display:flex;align-items:center;gap:.6rem;color:rgba(255,255,255,.54);font-size:.75rem}.footer-trust-row i{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:rgba(255,255,255,.055);color:#e5bb61}
.premium-footer .footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-top:1.25rem;border-top:1px solid rgba(255,255,255,.1);color:rgba(255,255,255,.47);font-size:.75rem}.premium-footer .footer-bottom>div:first-child{display:flex;flex-direction:column;gap:.14rem}.premium-footer .footer-bottom small{color:rgba(255,255,255,.34)}.footer-bottom-links{display:flex;align-items:center;justify-content:flex-end;gap:1rem;flex-wrap:wrap}.footer-bottom-links a{color:rgba(255,255,255,.56)}.footer-bottom-links a:hover{color:#fff}
@media(min-width:768px){.footer-cta{padding:2.4rem}.footer-trust-row{grid-template-columns:repeat(3,1fr)}.footer-main-grid{grid-template-columns:1.35fr .75fr .9fr 1fr}.footer-shortcuts{grid-template-columns:repeat(3,1fr)}.footer-shortcuts>a{grid-template-columns:auto minmax(0,1fr)}.footer-shortcuts>a>i{display:none}}
@media(min-width:1100px){.footer-cta{grid-template-columns:minmax(0,1.2fr) minmax(380px,.8fr);align-items:center;padding:2.65rem 2.8rem}.footer-shortcuts{grid-template-columns:1fr}.footer-shortcuts>a{grid-template-columns:auto minmax(0,1fr) auto}.footer-shortcuts>a>i{display:block}}
@media(max-width:767px){.premium-footer{padding-bottom:6.5rem}.footer-cta{margin-bottom:3.2rem;padding:1.45rem 1.1rem;border-radius:0 0 22px 22px}.footer-cta h2{font-size:1.65rem}.footer-cta-actions{display:grid;grid-template-columns:1fr}.footer-btn{justify-content:center}.footer-main-grid{gap:2.5rem}.footer-logo-card{max-width:280px}.footer-trust-row{padding-top:1.3rem}.premium-footer .footer-bottom{align-items:flex-start;flex-direction:column}.footer-bottom-links{justify-content:flex-start;gap:.75rem 1rem}}
