[hidden]{display:none!important}
:root{--bg:#fbf7ee;--cream:#fffaf1;--jade:#10392c;--copper:#bc5738;--ink:#192c29;--line:#e8e0d3;--muted:#58676a}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:78px}body{background:var(--bg);color:var(--ink);margin:0;font-family:'DM Sans',sans-serif;font-size:14px}a{color:var(--jade)}button,input,select{font:inherit}button{cursor:pointer}h1,h2,h3,.brand{font-family:'Cormorant Garamond',Georgia,serif}h1,h2,h3{letter-spacing:-.035em}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--copper);outline-offset:3px}.wrap{max-width:1540px;margin:auto}.skip{position:absolute;top:-80px;left:0;background:white;z-index:1100;padding:10px}.skip:focus{top:0}.topbar{position:sticky;top:0;z-index:950;border-bottom:1px solid #eadfce;background:#fffdf6f8;backdrop-filter:blur(10px)}.navline{height:75px;display:flex;align-items:center;gap:29px;padding:0 3.9%}.brand{font-weight:700;font-size:51px;line-height:.78;text-decoration:none;white-space:nowrap;color:var(--jade);letter-spacing:-.065em}.brand:hover{color:var(--jade)}.brand-icon{font-size:29px;vertical-align:8px;margin:0 -1px 0 3px}.brand small{display:block;font:700 9px 'DM Sans',sans-serif;letter-spacing:.48em;margin:7px 0 0 3px;color:var(--copper)}.navline nav{display:flex;justify-content:center;align-items:center;gap:34px;flex:1}.navline nav a{color:#132f2b;text-decoration:none;font-size:14px;white-space:nowrap}.navline nav a.active{border-bottom:2px solid var(--copper);padding-bottom:9px;margin-top:9px}.heart-icon{color:var(--copper);font-size:22px;vertical-align:-1px}.header-search{margin-left:auto;font-size:30px;border:0;background:transparent;color:var(--jade)}.near-button{background:var(--jade);border:0;border-radius:40px;color:#fff;padding:11px 19px;white-space:nowrap;font:700 13px Georgia,serif}.near-button span{color:#cce7d6}.menu-button{font-size:25px;background:none;border:0;color:var(--jade)}.mobile-nav{padding:10px 20px;background:#fffdf6}.mobile-nav:not([hidden]){display:flex;gap:20px;flex-wrap:wrap}.mobile-nav a{font-weight:700;text-decoration:none}
.hero{height:314px;position:relative;overflow:hidden;background:#f8f3e6}.hero-image{position:absolute;inset:0 0 0 auto;width:66%;background:url('/assets/hero-havana.webp') center 43%/cover no-repeat}.hero-tint{position:absolute;inset:0;background:linear-gradient(90deg,#fcf8ee 0%,#fcf8eefb 24%,#fcf8eef2 35%,#fcf8ee80 50%,transparent 77%)}.hero-copy{position:relative;padding:39px 4% 13px;height:314px}.hero-kicker{color:#34473e;font-size:12px;letter-spacing:.12em;margin:0 0 10px}.hero h1{font-size:62px;line-height:.74;font-weight:700;margin:0;color:#12392e;white-space:nowrap}.hero h1 em{display:inline-block;font-family:'Caveat',cursive;font-size:78px;font-weight:500;color:var(--copper);line-height:.88;letter-spacing:-.025em;margin-left:5px}.hero-description{font:500 24px 'Cormorant Garamond',serif;margin:12px 0 11px}.searchrow{width:min(800px,62vw);height:68px;padding:8px;background:#fffaf4f4;border:1px solid #e7ded0;border-radius:15px;display:flex;gap:10px;box-shadow:0 8px 23px #36291423}.location-picker{min-width:270px;flex:1.1;border:1px solid #e2dccc;border-radius:11px;text-align:left;background:#fffef9;color:var(--ink);padding:0 15px;white-space:nowrap}.location-picker>span:first-child{font-size:18px;color:var(--jade);padding-right:14px}.location-target{float:right;font-size:24px;color:#68807a}.searchrow input{flex:1;min-width:0;border:1px solid #e2dccc;border-radius:11px;background:#fffdf7;padding:12px;color:var(--ink)}.search-button{min-width:175px;background:var(--copper);color:#fff;border:0;border-radius:11px;font:700 16px Georgia,serif}.search-button:hover{background:#a74d31}.status{font-size:10px;color:#5b736a;margin:6px 0;max-width:790px;line-height:1.1}.choices{position:absolute;z-index:200;top:295px;background:#fffaf2;border:1px solid var(--line);padding:9px;display:flex;gap:8px;flex-wrap:wrap}.button{padding:10px 14px;background:var(--jade);color:#fff;border:1px solid var(--jade);border-radius:25px;font-weight:700;text-decoration:none;display:inline-block;font-size:12px}.button.secondary{background:var(--cream);color:var(--jade);border-color:var(--line)}
.category-bar{display:flex;align-items:center;gap:12px;padding:13px 3.9% 10px;border-bottom:1px solid #f1e7d7;overflow-x:auto;scrollbar-width:thin}.cat-chip,.more-button{flex:none;border:1px solid transparent;background:#fffdfa;color:#183a34;border-radius:30px;padding:10px 17px;white-space:nowrap;font:600 12px Georgia,serif}.cat-chip.chosen{color:#fff;background:var(--jade)}.cat-chip:hover{border-color:#adc0b3}.more-button{border:1px solid var(--line);margin-left:auto}.finder{padding:13px 3.9% 10px}.finder-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.finder h2{font-size:35px;font-weight:700;line-height:1;margin:0}.sub{color:#526c70;margin:5px 0;font:14px Georgia,serif}.filter-top{display:flex;align-items:center;gap:7px}.filter-top label{font:12px Georgia,serif}.filter-top select,.controls select{background:#fffaf4;color:#263e38;border:1px solid var(--line);border-radius:10px;padding:10px 12px;font:12px Georgia,serif}.controls{padding:0 0 12px;display:flex;gap:9px;flex-wrap:wrap}.chip{background:#fffef8;border:1px solid var(--line);border-radius:30px;padding:8px 12px;font:600 12px Georgia,serif;color:var(--jade)}.chip[aria-pressed=true]{background:var(--jade);color:white}.layout{display:grid;grid-template-columns:minmax(420px,1.2fr) minmax(380px,.99fr) minmax(238px,.62fr);gap:18px;align-items:start}.listing{max-height:548px;overflow:auto;scrollbar-width:thin}.result-count{font-size:11px;color:var(--muted);margin:0 0 7px}.venue{position:relative;display:flex;min-height:135px;margin-bottom:10px;border:1px solid var(--line);border-radius:10px;background:#fffdfa;overflow:hidden}.venue:hover{border-color:#8eaa99}.v-photo{width:39%;max-width:248px;flex:none;position:relative}.v-photo img{width:100%;height:100%;object-fit:cover}.v-photo>span{position:absolute;bottom:4px;left:4px;padding:2px 5px;background:#183427b8;color:#fff;font-size:9px;border-radius:4px}.v-body{flex:1;min-width:0;padding:12px 14px}.v-title{display:flex;align-items:start;justify-content:space-between;gap:7px}.v-title h3{font:700 27px/1 'Cormorant Garamond',serif;margin:0}.save{color:var(--copper);border:0;background:none;font-size:29px;line-height:1;min-width:26px}.v-meta{color:#566d76;font:12px Georgia,serif;margin:3px 0 8px}.offer{padding:5px 8px;background:#f4e8dc;border-radius:5px;color:#4b4036;font:11px Georgia,serif;margin:5px 0;line-height:1.45}.badge{background:#f7e6c1;border-radius:40px;padding:5px 9px;color:#755338;font:10px Georgia,serif;display:inline-block}.hours{font:12px Georgia,serif;color:#30423c;margin:7px 0}.v-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:7px}.v-links a,.v-links button{font-size:11px;font-weight:700;color:var(--copper);border:0;background:none;text-decoration:none;padding:0}.checked{font:9px Georgia,serif;color:#83796e;margin:6px 0 0}.empty{padding:20px;background:#fffdfa;border:1px dashed #d6c9b8;border-radius:8px;color:#5a6661}.map-shell{height:548px;position:relative;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#e6efe5}.map-switch{position:absolute;top:15px;left:15px;z-index:500;display:flex;gap:0;background:#fffdfa;border-radius:30px;padding:3px}.map-switch button{border:0;background:transparent;padding:8px 24px;border-radius:30px;font:12px Georgia,serif}.map-switch button.selected{color:#fff;background:var(--jade)}#map{width:100%;height:100%;z-index:1}.map-stamp{position:absolute;top:18px;right:12px;z-index:450;border-radius:30px;background:#fffdfbd9;padding:8px 10px;font:11px Georgia,serif}.map-key{position:absolute;bottom:14px;left:10px;z-index:500;background:#fffdfce8;border:1px solid #e6ddcf;padding:9px;border-radius:30px;font-size:10px}.dot{display:inline-block;width:10px;height:10px;border-radius:50%;background:var(--copper)}.dot.yes{background:var(--jade)}.pin{width:21px;height:21px;border-radius:50% 50% 50% 0;background:var(--copper);transform:rotate(-45deg);border:2px solid white}.pin.yes{background:var(--jade)}.map-fallback{position:absolute;z-index:5;top:45%;left:0;right:0;text-align:center;background:#f3f5edb9;padding:15px}.sidebar{display:flex;flex-direction:column;gap:13px}.spot,.ad{border:1px solid var(--line);border-radius:10px;background:#fffdfa;overflow:hidden}.spot img{display:block;width:100%;height:135px;object-fit:cover}.spot-text{padding:13px}.spot strong,.ad-top strong{font:700 20px/1 'Cormorant Garamond',serif}.spot p{margin:5px 0;color:#52666c;font:12px Georgia,serif}.spot button{border:0;border-radius:20px;color:white;background:var(--jade);font:700 12px Georgia,serif;padding:9px 12px}.ad{padding:12px}.ad-top{display:flex;justify-content:space-between;gap:6px;align-items:center;margin-bottom:12px}.ad-top strong{font-size:20px}.ad-top span{font-size:11px;color:var(--copper)}.side-item{display:flex;gap:9px;border-top:1px solid #f0e8dc;padding:7px 0}.side-item img{width:65px;height:60px;border-radius:6px;object-fit:cover}.side-item b{display:block;font:700 14px Georgia,serif}.side-item small{display:block;margin-top:4px;color:#6b7980;font:11px Georgia,serif;line-height:1.3}.ad-space{text-align:center;border:1px solid #e4d6bf;color:#8d4d32;border-radius:9px;background:#f8eddd;padding:9px;display:block;text-decoration:none;font-size:9px;font-weight:700}.ad-space span{float:right}.notice{font-size:11px;color:#82766a;line-height:1.5;margin:10px 0}.lower{padding:60px 4%;border-top:1px solid var(--line)}.lower .eyebrow{letter-spacing:.12em;font-size:11px;font-weight:800;color:var(--copper)}.lower h2{font-size:43px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.steps article{padding:22px;border:1px solid var(--line);border-radius:10px;background:#fffdfa}.steps h3{font-size:29px}.steps p,.business p{color:#55645d;line-height:1.6}.business{background:#ebdfcd;display:grid;grid-template-columns:1.2fr .8fr;gap:30px;align-items:center}.business>img{width:100%;height:290px;object-fit:cover;border-radius:20px}.faq details{border-bottom:1px solid var(--line);padding:11px}.faq summary{font-weight:700;cursor:pointer}.footer{background:var(--jade);color:#fff8ed;padding:37px 4%}.footer a{color:#f4d5b8}.footer h2{font-size:39px}.footer .notice{color:#d6d9d1}.modal-content{background:#fffaf2;padding:10px}.form-control{margin:6px 0 12px}.form-label{font-size:12px}.modal-footer button{border:0;border-radius:20px;padding:11px 15px;background:#b8b7b0;color:#fff}.leaflet-control-attribution{font-size:9px!important}
@media(max-width:1250px){.navline nav{gap:17px}.brand{font-size:44px}.layout{grid-template-columns:minmax(340px,1fr) minmax(340px,1.1fr)}.sidebar{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr}.ad-space{grid-column:1/-1}.category-bar{gap:7px}.cat-chip{padding:10px 12px}.searchrow{width:69vw}}
@media(max-width:900px){.navline nav{display:none}.brand{margin-right:auto}.header-search{display:none}.hero-image{width:80%}.hero-tint{background:linear-gradient(90deg,#fcf8ee 0%,#fcf8eef7 34%,#fcf8eeca 60%,transparent)}.searchrow{width:min(800px,88vw)}.layout{grid-template-columns:1fr}.map-shell{order:0}.listing{order:1;max-height:none}.sidebar{order:2;grid-column:auto}.v-photo{width:33%}.section-heading h2{font-size:32px}.category-bar{gap:8px}}
@media(max-width:560px){.navline{height:67px;padding:0 14px;gap:8px}.brand{font-size:33px}.brand small{font-size:6px;letter-spacing:.25em}.brand-icon{font-size:22px;vertical-align:3px}.near-button{font-size:10px;padding:9px 11px}.menu-button{font-size:19px}.hero{height:auto;min-height:340px}.hero-image{width:100%;opacity:.7}.hero-tint{background:linear-gradient(90deg,#fcf8eefb,#fcf8eee8 78%,#fcf8eebe)}.hero-copy{height:auto;padding:36px 17px 20px}.hero h1{font-size:54px}.hero h1 em{font-size:66px}.hero-description{font-size:21px}.hero-kicker{font-size:10px}.searchrow{height:auto;width:100%;display:grid;grid-template-columns:1fr 1fr;padding:7px;gap:7px}.searchrow .location-picker{grid-column:1/3;min-width:0;height:43px}.searchrow input{min-width:0;grid-column:1;height:42px;font-size:11px}.searchrow .search-button{grid-column:2;min-width:0;height:42px;font-size:13px}.category-bar{padding:12px 15px}.finder{padding:16px}.finder-head{align-items:flex-start}.finder h2{font-size:28px}.sub{font-size:12px}.filter-top label{display:none}.filter-top select{padding:7px 6px}.map-shell{height:350px}.layout{gap:13px}.venue{min-height:132px}.v-photo{width:34%;min-width:100px}.v-body{padding:9px}.v-title h3{font-size:24px}.offer{font-size:10px}.sidebar{grid-template-columns:1fr}.ad-space{grid-column:1}.steps,.business{grid-template-columns:1fr}.lower{padding:38px 17px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Verified 2026-10-19 UI corrections: uncropped hero, aligned location and filters. */
.hero-image{background-size:contain;background-repeat:no-repeat;background-position:center center;background-color:#f8f3e6}
.searchrow{width:min(920px,94vw);display:grid;grid-template-columns:minmax(170px,1.12fr) minmax(150px,1.05fr) minmax(135px,.78fr) minmax(110px,.68fr);align-items:stretch;gap:8px}
.searchrow>*{min-width:0;height:50px;box-sizing:border-box}
.searchrow .location-picker{display:flex;align-items:center;gap:9px;min-width:0;width:100%;flex:initial;padding:0 12px;text-align:left;float:none}
.searchrow .location-picker>span:first-child{flex:none;padding-right:0;font-size:18px;line-height:1}
.searchrow .location-label{min-width:0;flex:1;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:700}
.searchrow .location-target{flex:none;float:none;margin-left:auto;line-height:1;font-size:21px}
.searchrow input{width:100%;min-width:0;flex:initial;font-size:13px}
.searchrow .distance-selector{min-width:0;width:100%;height:50px;border:1px solid #e2dccc;border-radius:11px;background:#fffdf7;padding:0 9px;color:var(--jade);font-size:13px;font-weight:700}
.searchrow .search-button{min-width:0;width:100%;height:50px;font-size:15px}
.category-bar{align-items:center;gap:7px;padding-top:12px;padding-bottom:12px}
.category-bar .cat-chip,.category-bar .more-button{display:inline-flex;align-items:center;justify-content:center;height:41px;padding:0 12px;line-height:1.1;white-space:nowrap;vertical-align:middle}
.location-picker:focus-visible,.distance-selector:focus-visible{outline:2px solid var(--copper);outline-offset:2px}
.v-photo.no-photo{background:linear-gradient(135deg,#efe6d5,#d4dcca);display:grid;place-items:center}
.v-photo.no-photo img{display:none}
.v-photo.no-photo span{position:relative;left:auto;bottom:auto;background:transparent;color:#3c594c;font-size:12px;text-align:center;padding:8px}
@media(max-width:1000px){.searchrow{width:min(880px,91vw);grid-template-columns:minmax(145px,1fr) minmax(125px,1fr) minmax(120px,.75fr) minmax(95px,.65fr)}.searchrow .location-picker{padding:0 8px}}
@media(max-width:700px){.searchrow{grid-template-columns:minmax(0,1fr) minmax(0,1fr);width:100%;height:auto}.searchrow .location-picker{grid-column:1/-1;grid-row:1;height:44px}.searchrow input{grid-column:1/-1;grid-row:2;height:44px}.searchrow .distance-selector{grid-column:1;grid-row:3;height:44px}.searchrow .search-button{grid-column:2;grid-row:3;height:44px}.hero-image{background-size:contain;opacity:.55}.hero-copy{height:auto;min-height:314px}.searchrow .location-label{font-size:13px}}

/* R4: responsive location controls and no clipped city names. */
.searchrow .location-picker{overflow:hidden;position:relative}
.searchrow .location-picker #location-label{min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block;text-align:left}
.searchrow .location-picker .location-target{margin-left:0;flex-shrink:0}
.navline nav{display:flex;align-items:center;justify-content:center;gap:22px}
.navline nav a{display:inline-flex;align-items:center;justify-content:center;min-height:40px;white-space:nowrap;line-height:1.2}
.navline nav .heart-icon{display:inline-block;vertical-align:middle;line-height:1;margin-left:4px}
@media(max-width:1100px){.navline nav{gap:12px}.navline nav a{font-size:13px}}
@media(max-width:900px){.navline nav{display:none}}
@media(max-width:700px){.searchrow{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.searchrow .location-picker{width:100%}.searchrow .location-picker #location-label{font-size:12px}.searchrow input{width:100%}.searchrow .distance-selector,.searchrow .search-button{width:100%}.navline{max-width:100vw}}
@media(max-width:370px){.hero h1{font-size:46px}.hero h1 em{font-size:56px}.navline .brand{font-size:29px}.searchrow .location-picker #location-label{font-size:11px}}
/* Normalize the selected navigation item to the same vertical baseline as the rest. */
.navline nav a.active{padding-bottom:0;margin-top:0;border-bottom:0;box-shadow:inset 0 -2px 0 var(--copper)}

/* Addresses in every venue listing */
.v-address{font:12px/1.4 'DM Sans',sans-serif;color:#496158;margin:3px 0 7px;overflow-wrap:anywhere}.v-address.address-missing{color:#8b8175;font-style:italic}@media(max-width:560px){.v-address{font-size:11px;line-height:1.3}}

/* R5 visual regression fixes — approved original cream-and-jade theme. */
.hero-image{width:100%;background-size:min(100%,1254px) auto;background-position:right center;background-repeat:no-repeat;background-color:#f8f3e6;opacity:1}
.hero-tint{background:linear-gradient(90deg,#fcf8ee 0%,#fcf8eefa 24%,#fcf8eecb 37%,#fcf8ee36 57%,transparent 75%)}
.searchrow{width:min(825px,92vw);max-width:100%;height:auto;display:grid;grid-template-columns:minmax(0,1fr) 175px 175px;align-items:stretch;gap:9px;padding:8px}
.searchrow>*{min-width:0;box-sizing:border-box;height:52px}
.searchrow .location-entry{display:flex;align-items:center;min-width:0;background:#fffdf7;border:1px solid #e2dccc;border-radius:11px;overflow:hidden;height:52px}
.searchrow .location-entry input#city{flex:1 1 auto;min-width:0;width:100%;height:100%;border:0;padding:0 13px;border-radius:0;background:transparent;color:var(--ink);text-overflow:ellipsis;font:500 14px 'DM Sans',sans-serif}
.searchrow .location-entry input#city:focus{outline:none}
.searchrow .location-entry:focus-within{outline:2px solid var(--copper);outline-offset:1px}
.searchrow .location-use{flex:none;min-width:45px;width:45px;height:100%;border:0;border-left:1px solid #eee3d4;background:#fffdf7;color:var(--jade);border-radius:0;font-size:25px;line-height:1;display:grid;place-items:center}
.searchrow .location-use:hover{background:#ecf0e6}
.searchrow .distance-selector,.searchrow .search-button{height:52px;min-width:0;width:100%;margin:0}
.map-shell .leaflet-control-zoom{border:1px solid #d7c9b5;border-radius:9px;overflow:hidden;margin-right:12px;margin-bottom:64px;box-shadow:0 6px 14px #18392c30}
.map-shell .leaflet-control-zoom a{width:38px;height:38px;line-height:37px;font:bold 24px/38px Arial,sans-serif;background:#fffefa;color:var(--jade);border:0;border-bottom:1px solid #eadfcd;text-align:center}
.map-shell .leaflet-control-zoom a:last-child{border-bottom:0}
.map-shell .leaflet-control-zoom a:hover{background:#e8efe6}
.map-shell .leaflet-bottom.leaflet-right{z-index:495}
@media(max-width:900px){.hero-image{width:100%;background-size:100% auto;background-position:right center}}
@media(max-width:700px){.hero{padding-bottom:105px}.hero-image{width:100%;background-size:100% auto;background-position:center bottom;opacity:.95}.hero-tint{background:linear-gradient(180deg,#fcf8ee 0%,#fcf8eef7 55%,#fcf8ee40 83%,transparent 100%)}.searchrow{width:100%;max-width:100%;height:auto;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px}.searchrow .location-entry{grid-column:1/-1;grid-row:1;height:48px}.searchrow .location-entry input#city{height:100%;grid-column:auto;grid-row:auto;font-size:13px}.searchrow .location-use{height:100%}.searchrow .distance-selector{grid-column:1;grid-row:2;height:47px;font-size:12px}.searchrow .search-button{grid-column:2;grid-row:2;height:47px;font-size:14px}.hero-copy{height:auto;min-height:0}.map-shell .leaflet-control-zoom a{width:41px;height:41px;line-height:41px;font-size:25px}.map-shell .leaflet-control-zoom{margin-bottom:52px;margin-right:8px}}
@media(max-width:370px){.searchrow{gap:6px;padding:6px}.searchrow .location-entry input#city{font-size:12px}.searchrow .distance-selector{padding:0 4px;font-size:11px}}
/* R6: native hidden behavior, accessibly hidden label and phone headline containment. */
[hidden]{display:none!important}
.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:700px){.hero h1{font-size:clamp(39px,10.3vw,54px);white-space:normal;line-height:.9}.hero h1 em{font-size:clamp(42px,11vw,56px);white-space:normal;display:block;margin-left:0;line-height:1;max-width:100%}.hero-copy{max-width:100%;overflow:visible}.searchrow{position:relative;z-index:2}}
@media(max-width:370px){.hero h1{font-size:39px}.hero h1 em{font-size:42px}}

/* R6: wider photographic framing, based on the originally approved hero. 
   Keep the original photo, reduce its displayed size, and softly fill the perimeter.
   This overrides the previous 'contain' treatment without altering headline/search layout. */
.hero-image{background:none!important;background-color:#f8f3e6!important;overflow:hidden;isolation:isolate}
.hero-image::before{content:"";position:absolute;inset:-20px;background:url('/assets/hero-havana.webp') center center / cover no-repeat;filter:blur(20px);opacity:.52;z-index:0}
.hero-image::after{content:"";position:absolute;inset:0;background:url('/assets/hero-havana.webp') right center / 84% auto no-repeat;z-index:1;-webkit-mask-image:radial-gradient(ellipse 82% 82% at 76% 50%,black 62%,transparent 100%);mask-image:radial-gradient(ellipse 82% 82% at 76% 50%,black 62%,transparent 100%)}
@media(max-width:900px){.hero-image::after{background-size:88% auto;background-position:right center}}
@media(max-width:700px){.hero-image::before{opacity:.30}.hero-image::after{background-size:94% auto;background-position:right top;-webkit-mask-image:linear-gradient(to right,transparent 0%,black 28%,black 100%);mask-image:linear-gradient(to right,transparent 0%,black 28%,black 100%)}}

/* r7: map/list buttons switch the actual content; Leaflet zoom remains clear. */
.map-shell .map-switch{top:12px;left:12px;z-index:750;display:flex;align-items:center;gap:2px;box-shadow:0 4px 14px #172a2430}
.map-shell .map-switch button{min-height:40px;min-width:72px;padding:9px 17px;font:600 13px 'DM Sans',sans-serif;cursor:pointer}
.map-shell .map-switch button:focus-visible{outline:2px solid var(--copper);outline-offset:2px}
.map-shell .map-stamp{right:12px;top:14px;max-width:42%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.map-shell .leaflet-bottom.leaflet-right .leaflet-control-zoom{margin-bottom:66px!important;margin-right:15px!important;box-shadow:0 4px 14px #14271e38}
.map-shell .leaflet-control-zoom a{width:40px!important;height:40px!important;line-height:40px!important;font-size:24px!important}
.map-shell .leaflet-top.leaflet-left .leaflet-control-zoom{margin-top:70px!important}
.map-list-view{height:100%;overflow:auto;background:#fffaf1;padding:66px 13px 14px;scrollbar-width:thin}
.map-list-view[hidden],#map[hidden]{display:none!important}
.map-list-title{font:700 14px 'DM Sans',sans-serif;margin:0 0 12px;color:var(--jade)}
.map-list-empty{padding:18px;border:1px dashed var(--line);font-size:13px;color:#6a766b}
.map-list-option{display:flex;flex-direction:column;align-items:flex-start;gap:5px;text-align:left;white-space:normal;width:100%;background:#fffef9;border:1px solid #e5d9c8;border-radius:10px;padding:12px 14px;margin-bottom:9px;color:var(--ink)}
.map-list-option:hover,.map-list-option:focus-visible{border-color:var(--jade);background:#f2f6ed}
.map-list-option strong{font:700 23px/1.05 'Cormorant Garamond',serif}
.map-list-option span{font:12px/1.4 'DM Sans',sans-serif;color:#69746c}
.hero-image{background-size:auto 76%;background-position:right center;background-repeat:no-repeat;background-color:#f8f3e6}
@media(max-width:900px){.hero-image{background-size:auto 72%;background-position:right center}}
@media(max-width:700px){.map-shell .map-stamp{max-width:35%;font-size:10px}.map-shell .map-switch button{min-height:40px;min-width:64px;padding:9px 12px}.map-shell .leaflet-bottom.leaflet-right .leaflet-control-zoom{margin-bottom:53px!important;margin-right:9px!important}.hero-image{background-size:auto 60%;background-position:right center}.map-list-view{padding:66px 11px 12px}}

/* R9 hero separation */
.hero{height:auto;min-height:380px;overflow:hidden;position:relative}
.hero-copy{height:auto;min-height:380px;padding-bottom:23px}
.hero-image{width:73%;right:0;left:auto;bottom:0;top:0;opacity:1}
.hero-image::before{display:none!important}
.hero-image::after{inset:0;right:0;left:0;top:0;content:"";background:url('/assets/hero-havana.webp') center center / cover no-repeat;filter:contrast(1.07) saturate(1.055);-webkit-mask-image:linear-gradient(90deg,transparent 0%,black 22%,black 100%);mask-image:linear-gradient(90deg,transparent 0%,black 22%,black 100%);}
.hero-tint{background:linear-gradient(90deg,#fcf8ee 0%,#fcf8eefc 25%,#fcf8eee3 37%,#fcf8ee36 58%,transparent 80%)}
.category-bar{position:relative;z-index:2;clear:both;margin-top:0;background:#fbf7ed;border-top:1px solid #e8ddcb}
.v-details,.v-business-hours{font:12px/1.45 'DM Sans',sans-serif;color:#586e66;margin:3px 0 5px}
.v-business-hours{font-size:11px;color:#777365}
@media(max-width:900px){.hero{min-height:376px}.hero-copy{min-height:376px}.hero-image{width:85%}}
@media(max-width:700px){.hero{height:auto;min-height:0}.hero-copy{height:auto;min-height:0;padding:28px 17px 26px}.hero-image{width:100%}.hero-image::after{background-position:right center;background-size:cover;opacity:.34;-webkit-mask-image:linear-gradient(90deg,transparent 3%,black 65%);mask-image:linear-gradient(90deg,transparent 3%,black 65%)}.hero-tint{background:linear-gradient(90deg,#fcf8eeef,#fcf8eedf)}.category-bar{position:relative;margin:0;padding-top:11px}.v-details,.v-business-hours{font-size:11px}}
