@charset "utf-8";
:root{--ink:#203b36;--muted:#64678a;--deep:#153a35;--paper:#f8f6f1;--cream:#fffdfa;--line:#e3e3ef;--gold:#be975d;--sage:#dce8db;--radius:18px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.55 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit}button,input,select{font:inherit}button{cursor:pointer}.shell{width:min(1200px,calc(100% - 48px));margin:auto}.skip{position:absolute;top:-100px;left:10px;background:#fff;padding:10px;z-index:10}.skip:focus{top:10px}.topbar{height:74px;background:var(--paper);border-bottom:1px solid var(--soft)}.topinner{display:flex;align-items:center;height:100%;gap:36px}.brand{text-decoration:none;display:inline-flex;align-items:center;flex-shrink:0;letter-spacing:-.045em;color:var(--deep);font-size:23px;font-weight:700}.brand-mark{width:34px;height:34px;background:var(--deep);color:var(--accent-2);border-radius:10px;display:inline-flex;align-items:center;justify-content:center;font-size:22px;margin-right:10px;font-weight:400}.brand-dot{color:var(--gold)}nav{display:flex;align-items:center;gap:29px;margin-left:auto}nav a{text-decoration:none;color:var(--ink-2);font-size:13px;font-weight:650}nav a:hover,nav a.active{color:var(--accent-ink)}.topnote{font-family:var(--display);font-size:13px;color:var(--muted-2);border-left:1px solid var(--line);padding-left:25px;margin-left:14px;white-space:nowrap}.topnote span{color:var(--gold)}.eyebrow{color:var(--accent-ink);font-size:11px;font-weight:750;letter-spacing:.15em;text-transform:uppercase}.hero{background:var(--deep);color:var(--soft);min-height:492px;position:relative;overflow:hidden}.hero:before{content:"";position:absolute;right:-100px;top:-350px;width:880px;height:880px;border:1px solid #ffffff24;border-radius:50%;box-shadow:0 0 0 115px #ffffff08,0 0 0 230px #ffffff08}.hero:after{content:"✦";position:absolute;right:14%;top:64px;font-size:80px;color:color-mix(in srgb,var(--accent-2) 32%,transparent);font-weight:200}.hero-inner{position:relative;z-index:1;padding:85px 0 80px;max-width:1200px}.hero h1{font:normal clamp(43px,5.5vw,77px)/1.06 var(--display);letter-spacing:-.044em;max-width:710px;margin:16px 0 20px}.hero h1 em{font-style:italic;color:var(--accent-2)}.hero p{font-size:16px;color:var(--lav);max-width:500px;margin:0 0 35px}.searchbox{background:#fff;box-shadow:0 15px 40px color-mix(in srgb,var(--night) 33%,transparent);display:flex;align-items:center;max-width:600px;height:63px;border-radius:11px;padding:5px 6px 5px 20px;color:var(--muted-2);gap:13px}.searchbox svg{flex:none}.searchbox input{border:0;outline:0;flex:1;min-width:0;color:var(--ink);background:transparent;font-size:15px}.searchbox input::placeholder{color:var(--muted-2)}.searchbox button,.primary{border:0;background:var(--accent);color:#fff;border-radius:7px;font-weight:700;padding:14px 21px;text-decoration:none;white-space:nowrap}.searchbox button:hover,.primary:hover{background:var(--accent-hover)}.hero-foot{margin-top:17px;color:var(--lav);font-size:12px;letter-spacing:.02em}.hero-foot span{color:var(--accent-2)}.section{padding:72px 0}.section-top{display:flex;justify-content:space-between;align-items:end;gap:22px;margin-bottom:27px}.section h2,.section-title{font:normal 36px/1.14 var(--display);letter-spacing:-.035em;margin:8px 0 0}.section-sub{color:var(--muted);font-size:14px;margin:8px 0 0}.text-link{font-weight:700;font-size:13px;color:var(--deep);text-decoration:none;border-bottom:1px solid var(--gold);padding-bottom:4px;white-space:nowrap}.city-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.city-card{text-decoration:none;background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;transition:transform .2s,box-shadow .2s;display:block;min-width:0}.city-card:hover{transform:translateY(-4px);box-shadow:0 14px 35px color-mix(in srgb,var(--ink) 9%,transparent)}.city-art{height:132px;position:relative;overflow:hidden;background:linear-gradient(145deg,var(--tone1),var(--tone2));display:flex;align-items:center;justify-content:center}.city-art:before{content:"";position:absolute;width:158px;height:158px;border:1px solid #ffffff51;border-radius:50%;right:-35px;top:-52px;box-shadow:0 0 0 38px #ffffff12,0 0 0 77px #ffffff0b}.city-art:after{content:attr(data-monogram);font:normal 78px var(--display);color:#fff9;position:relative;letter-spacing:-.1em}.city-art .city-spark{position:absolute;top:17px;left:21px;color:#fffac5;font-size:25px}.city-info{padding:19px 20px 21px}.city-name{font:normal 23px/1.2 var(--display);letter-spacing:-.025em;display:block}.city-country{display:block;color:var(--muted-2);font-size:12px;margin-top:4px}.city-meta{display:flex;align-items:center;justify-content:space-between;font-size:12px;color:var(--muted);border-top:1px solid var(--soft);margin-top:19px;padding-top:12px}.city-meta strong{font-size:16px;color:var(--gold);font-weight:500}.band{background:var(--soft);padding:61px 0}.band-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}.band h2{font:normal 34px var(--display);letter-spacing:-.03em;margin:8px 0 8px}.band p{color:var(--muted);margin:0;max-width:570px}.pill-btn{border:1px solid var(--deep);border-radius:100px;padding:12px 20px;text-decoration:none;font-size:13px;font-weight:700;white-space:nowrap}.pill-btn:hover{background:var(--deep);color:#fff}.footer{border-top:1px solid var(--line);padding:39px 0 45px;background:var(--soft)}.footer-inner{display:flex;justify-content:space-between;gap:42px}.footer-brand{font:normal 25px var(--display)}.footer p{color:var(--muted);font-size:12px;max-width:550px;margin:6px 0}.footer span:not(.footer-brand){font-size:11px;color:var(--muted-2)}.crumb{padding:24px 0;color:var(--muted-2);font-size:12px}.crumb a{text-decoration:none;color:var(--deep)}.detail-hero{background:var(--deep);color:white;position:relative;overflow:hidden}.detail-hero:after{content:"✦";position:absolute;font-size:260px;right:6%;top:-58px;color:#fff1;line-height:1}.detail-head{position:relative;z-index:1;padding:42px 0 45px}.detail-head h1{font:normal clamp(40px,5vw,64px) var(--display);letter-spacing:-.04em;margin:8px 0}.detail-head p{color:var(--line);max-width:600px;margin:0;font-size:15px}.detail-stats{display:flex;gap:25px;margin-top:25px;color:var(--lav);font-size:12px}.detail-stats b{font-size:16px;color:var(--accent-2)}.detail-layout{display:grid;grid-template-columns:242px minmax(0,1fr);gap:45px;padding:49px 0 85px}.side{position:sticky;top:16px;align-self:start}.side-label{font-size:11px;text-transform:uppercase;letter-spacing:.16em;color:var(--accent-ink);font-weight:750;margin:0 0 14px}.side button{width:100%;border:0;background:none;display:flex;justify-content:space-between;align-items:center;text-align:left;border-radius:8px;padding:11px 13px;color:var(--ink-2);font-size:13px;font-weight:650}.side button:hover,.side button.selected{background:var(--soft);color:var(--deep)}.side small{font-weight:500;color:var(--muted-2)}.side a{display:block;font-size:12px;margin:22px 12px;color:var(--accent-ink);text-decoration:none}.listing-area{min-width:0}.list-head{display:flex;justify-content:space-between;align-items:end;gap:16px;margin-bottom:19px}.list-head h2{font:normal 33px var(--display);letter-spacing:-.03em;margin:0}.list-head p{margin:3px 0 0;color:var(--muted);font-size:13px}.listing-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.listing-card{border:1px solid var(--line);background:#fff;border-radius:12px;padding:21px;display:flex;flex-direction:column;min-width:0}.card-top{display:flex;justify-content:space-between;gap:12px;align-items:start}.card-type{font-size:10px;color:var(--accent-ink);text-transform:uppercase;letter-spacing:.075em;font-weight:750}.listing-card h3{font:normal 21px/1.25 var(--display);letter-spacing:-.025em;margin:5px 0 0}.badge{background:var(--soft);border-radius:100px;color:var(--ink-2);font-size:10px;padding:4px 8px;white-space:nowrap}.address{font-size:12px;color:var(--muted);margin:12px 0 0}.listing-card .note{font-size:13px;color:var(--ink-2);margin:13px 0 16px;line-height:1.55}.extras{font-size:11px;color:var(--muted);margin:-6px 0 12px}.extras b{color:var(--ink-2)}.actions{margin-top:auto;border-top:1px solid var(--soft);padding-top:13px;display:flex;gap:13px;flex-wrap:wrap;font-size:12px}.actions a{text-decoration:none;color:var(--ink-2);font-weight:650}.actions a:hover{text-decoration:underline}.caution{font-size:11px;color:var(--accent-ink);margin:11px 0 0}.empty{padding:33px;background:#fff;border:1px solid var(--line);border-radius:12px;color:var(--muted)}.tip{margin-top:25px;border-left:3px solid var(--gold);background:var(--soft);padding:17px 21px;color:var(--muted);font-size:12px}.stay-hero{background:var(--soft);padding:65px 0 58px}.stay-hero h1{font:normal clamp(40px,5vw,62px)/1.1 var(--display);letter-spacing:-.04em;max-width:670px;margin:12px 0 16px}.stay-hero p{max-width:610px;color:var(--muted);margin:0}.filters{display:flex;gap:13px;align-items:center;flex-wrap:wrap;margin:25px 0}.filters label{font-size:12px;color:var(--muted);font-weight:700}.filters select{border:1px solid var(--line);background:white;color:var(--ink);padding:11px 34px 11px 13px;border-radius:8px;min-width:160px}.stay-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.stay-grid .listing-card{min-height:270px}.directory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin-top:25px}.directory-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:21px;text-decoration:none;transition:box-shadow .2s}.directory-card:hover{box-shadow:0 8px 25px color-mix(in srgb,var(--ink) 10%,transparent)}.directory-card .arrow{float:right;color:var(--gold)}.directory-card h3{font:normal 19px var(--display);margin:0 0 8px}.directory-card p{font-size:12px;color:var(--muted);margin:0}.disclaimer{margin-top:24px;color:var(--muted-2);font-size:12px}.search-empty{padding:25px;border:1px solid var(--line);background:#fff;border-radius:12px;color:var(--muted)}.search-empty a{color:var(--deep)}:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.kind-row{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 14px}.kind{border:1px solid var(--line);border-radius:9px;padding:9px 13px;font-size:13px;font-weight:700;text-decoration:none;color:var(--deep);background:var(--soft)}.kind small{color:var(--muted-2);font-weight:600;margin-left:3px}.kind.on{background:var(--accent);border-color:var(--accent);color:#fff}.kind.on small{color:var(--accent-soft)}.chips{margin:0 0 22px;display:grid;gap:10px}.chip-group{display:flex;gap:10px;align-items:baseline}.chip-group>span{flex:none;width:150px;font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted-2);font-weight:750}.chip-row{display:flex;flex-wrap:wrap;gap:7px}.chip{border:1px solid var(--line);background:#fff;border-radius:100px;padding:6px 12px;font-size:12px;text-decoration:none;color:var(--ink-2);font-weight:600}.chip:hover{border-color:var(--gold)}.chip small{color:var(--muted-2);font-size:10px;margin-left:2px}.chip.on small{color:#cfe0d6}.chip-more summary{cursor:pointer;font-size:12px;color:var(--accent-ink);font-weight:700;padding:6px 4px;list-style:none}.chip-more[open] summary{margin-bottom:6px}.chip.on{background:var(--deep);border-color:var(--deep);color:#fff}.featured-slot{margin-top:26px;border:1.5px dashed var(--accent-2);border-radius:12px;padding:18px 21px;background:var(--accent-soft)}.featured-slot p{margin:5px 0 0;font-size:13px;color:var(--accent-ink)}
.ad-banner{margin:26px auto 0;border:1.5px dashed var(--accent-2);border-radius:12px;padding:16px 21px;background:var(--accent-soft);display:flex;gap:16px;align-items:center}.ad-banner p{margin:0;font-size:13px;color:var(--accent-ink)}.submit-form{display:grid;grid-template-columns:1fr 1fr;gap:16px 20px;max-width:820px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:26px}.submit-form label{display:grid;gap:6px;font-size:12px;font-weight:700;color:var(--ink-2)}.submit-form input,.submit-form select,.submit-form textarea{border:1px solid var(--line);border-radius:8px;padding:11px 12px;font-weight:400;color:var(--ink);background:#fff;width:100%}.submit-form .wide{grid-column:1/-1}.form-foot{display:flex;gap:15px;align-items:center;flex-wrap:wrap}.form-note{font-size:12px;color:var(--muted)}.form-out{white-space:pre-wrap;font-size:13px;color:var(--ink-2);margin:0}
.list-tools{display:flex;gap:9px;flex-wrap:wrap;margin:0 0 10px}.list-tools input,.list-tools select{border:1px solid var(--line);border-radius:8px;padding:11px 13px;background:#fff;color:var(--ink)}.list-tools input{flex:1 1 240px;min-width:0}.list-tools select{flex:0 1 200px;min-width:0}.list-count{font-size:12px;color:var(--muted);margin:0 0 12px}.area-head{font:normal 19px var(--display);margin:22px 0 10px;color:var(--deep)}.area-head:first-child{margin-top:4px}.area-head small{font:600 11px -apple-system,Arial,sans-serif;color:var(--muted-2);margin-left:6px}.more-btn{display:block;margin:18px auto 0;border:1px solid var(--deep);background:#fff;color:var(--deep);border-radius:100px;padding:11px 22px;font-weight:700;font-size:13px}.more-btn:hover{background:var(--deep);color:#fff}
.loading{padding:60px 0;color:var(--muted)}.browse-wrap{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:22px;align-items:start}.browse-country{background:#fff;border:1px solid var(--line);border-radius:12px;padding:0 18px}.browse-country summary{cursor:pointer;padding:15px 0;font:normal 19px var(--display);color:var(--deep);list-style-position:outside}.browse-country summary small{font:600 11px -apple-system,Arial,sans-serif;color:var(--muted-2);margin-left:6px}.browse-state{margin:6px 0 4px;font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--accent-ink);font-weight:750}.browse-list{list-style:none;margin:0 0 14px;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 14px}.browse-list a{color:var(--ink-2);font-size:13px;text-decoration:none;font-weight:600}.browse-list a:hover{text-decoration:underline}.browse-list small{color:var(--muted-2);font-size:11px}
.region-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:22px}.region-card{background:var(--deep);color:#fff;border-radius:14px;padding:22px 20px;text-decoration:none;min-height:118px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.region-card:after{content:"";position:absolute;right:-40px;top:-40px;width:120px;height:120px;border:1px solid #ffffff2a;border-radius:50%;box-shadow:0 0 0 26px #ffffff08}.region-card:hover{background:#1f4b45}.region-name{font:normal 22px/1.2 var(--display)}.region-meta{font-size:11px;color:var(--lav);margin-top:12px}.browse-all{margin-top:18px}.browse-all>summary{cursor:pointer;font-weight:700;font-size:13px;color:var(--deep);padding:8px 0}.country-link{display:inline-block;margin:0 0 14px;font-size:12px;font-weight:700;color:var(--accent-ink);text-decoration:none}.subbar{background:var(--soft);border-bottom:1px solid var(--line);padding:10px 0}.subbar form{display:flex;gap:8px;max-width:560px}.subbar input{flex:1;min-width:0;border:1px solid var(--line);border-radius:8px;padding:10px 12px;background:#fff;color:var(--ink)}.subbar button{border:0;background:var(--deep);color:#fff;border-radius:8px;padding:10px 16px;font-weight:700}
@media(max-width:950px){.region-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.city-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.stay-grid,.directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.topnote{display:none}.detail-layout{grid-template-columns:195px minmax(0,1fr);gap:24px}}
@media(max-width:680px){html{scrollbar-width:none}html::-webkit-scrollbar{display:none}.shell{width:min(100% - 32px,540px)}.topbar{height:66px}.topinner{gap:12px}.brand{font-size:18px}.brand-mark{width:29px;height:29px;border-radius:8px;font-size:18px;margin-right:7px}nav{gap:11px}nav a{font-size:11px;white-space:nowrap}nav a[data-nav=home]{display:none}.hero{min-height:0}.hero:before{right:-440px;top:-380px}.hero:after{font-size:45px;right:11%;top:46px}.hero-inner{padding:64px 0 71px}.hero h1{font-size:46px;max-width:440px}.hero p{font-size:14px;max-width:350px}.searchbox{height:59px;padding-left:14px}.searchbox button{padding:12px 15px}.hero-foot{font-size:11px}.section{padding:48px 0}.section h2,.section-title{font-size:31px}.section-top{align-items:start}.city-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.city-art{height:103px}.city-art:after{font-size:61px}.city-info{padding:14px}.city-name{font-size:19px}.city-meta{margin-top:13px}.band{padding:41px 0}.band-inner{display:block}.band h2{font-size:29px}.pill-btn{display:inline-block;margin-top:20px}.footer-inner{display:block}.footer-inner>div+div{margin-top:22px}.crumb{padding:16px 0}.detail-head{padding:34px 0}.detail-head h1{font-size:47px}.detail-layout{display:block;padding:24px 0 60px}.side{position:static;margin-bottom:25px}.side-label{margin:0 0 9px}.side .side-row{display:flex;overflow:auto;gap:6px;padding-bottom:5px;scrollbar-width:none}.side .side-row::-webkit-scrollbar{display:none}.side button{width:auto;white-space:nowrap;padding:9px 12px;border:1px solid var(--line)}.side button.selected{border-color:var(--line)}.side button small{margin-left:8px}.side a{margin:10px 0 0}.listing-grid,.stay-grid,.directory-grid,.browse-wrap{grid-template-columns:1fr}.region-card{min-height:96px;padding:17px}.region-name{font-size:19px}.list-tools select{flex:1 1 45%}.submit-form{grid-template-columns:1fr;padding:18px}.ad-banner{display:block}.ad-banner p{margin-top:4px}.chip-group{display:block}.chip-group>span{display:block;width:auto;margin-bottom:6px}.listing-card{padding:19px}.list-head h2{font-size:29px}.stay-hero{padding:47px 0}.stay-hero h1{font-size:45px}.filters{gap:8px}.filters label{width:100%}.filters select{flex:1;min-width:0}.directory-grid{gap:10px}.stay-grid .listing-card{min-height:0}}
@media(max-width:360px){.brand-name{font-size:16px}nav{gap:9px}nav a{font-size:10px}.hero h1{font-size:41px}.city-name{font-size:17px}}

/* 2026-10-11 quality pass */
a.topnote{text-decoration:none}a.topnote:hover{color:var(--ink-2);text-decoration:underline}
.hbadge{display:inline-block;background:#f1efe8;color:#7a7466;border:1px solid #e2ddd0;border-radius:999px;padding:1px 9px;font-size:11px;line-height:1.6}
.hbadge a{color:inherit;text-decoration:underline}
.hconflict{display:inline-block;color:#8a5a2b;font-size:11px}.hconflict a{color:inherit}
.stated-toggle{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;margin:10px 0 4px}
.stated-toggle small{color:var(--muted-2);font-size:12px}
.toggle{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--ink-2);text-decoration:none;font-weight:600}
.toggle .knob{width:30px;height:17px;border-radius:999px;background:#cfd3cb;position:relative;flex:none;transition:background .15s}
.toggle .knob::after{content:"";position:absolute;top:2px;left:2px;width:13px;height:13px;border-radius:50%;background:#fff;transition:left .15s}
.toggle.on .knob{background:var(--ink-2)}.toggle.on .knob::after{left:15px}
.check{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--ink-2);white-space:nowrap}
.list-note{font-size:12px;color:var(--muted-2);margin:0 0 10px}

/* ---- photos (Wikimedia Commons) + listing detail, 2026-10-11 ---- */
.city-art.has-img{background:#d9ddd5}.city-art.has-img:before,.city-art.has-img:after{display:none}
.city-art.has-img img,.card-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.city-art.has-img{height:150px}
.credit{position:absolute;right:8px;bottom:8px;z-index:3;display:flex;align-items:center;gap:6px;flex-direction:row-reverse;max-width:calc(100% - 16px)}
.credit-i{width:18px;height:18px;border-radius:50%;background:#0007;color:#fff;font:italic 600 11px/18px var(--display);text-align:center;cursor:pointer;flex:none;user-select:none}
.credit-t{display:none;background:#000b;color:#fff;font-size:10px;line-height:1.35;padding:4px 7px;border-radius:6px;font-style:normal;text-align:left}
.credit-t a{color:#fff;text-decoration:underline}
.credit.show .credit-t{display:block}
.detail-hero.has-photo,.stay-hero.has-photo,.place-hero.has-photo{position:relative;overflow:hidden;color:#fff;background:var(--deep)}
.hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
.hero-shade{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,color-mix(in srgb,var(--night) 33%,transparent) 0%,color-mix(in srgb,var(--night) 80%,transparent) 100%)}
.has-photo>.shell{position:relative;z-index:2}
.detail-hero.has-photo:after{display:none}
.detail-hero.has-photo .detail-head{padding-top:120px}
.stay-hero.has-photo{padding:110px 0 46px}.stay-hero.has-photo p,.stay-hero.has-photo .crumb a,.stay-hero.has-photo .eyebrow{color:var(--accent-tint)}
.has-photo h1{text-shadow:0 2px 18px #0006}
.card-photo{position:relative;height:150px;margin:-21px -21px 14px;border-radius:12px 12px 0 0;overflow:hidden;background:var(--line)}
.listing-card.clickable{cursor:pointer;transition:box-shadow .2s}.listing-card.clickable:hover{box-shadow:0 8px 25px color-mix(in srgb,var(--ink) 10%,transparent)}
.listing-card h3 a{text-decoration:none;color:inherit}.listing-card h3 a:hover{text-decoration:underline}
.actions a.gphotos{color:var(--link)}
.place-hero{background:var(--deep);color:#fff;padding:46px 0 34px}.place-hero.has-photo{padding:130px 0 36px}
.place-hero h1{font:normal clamp(32px,4.4vw,52px)/1.1 var(--display);letter-spacing:-.03em;margin:10px 0 8px}
.place-hero p{margin:0;color:#e9e3d3}.place-hero .crumb{padding:0 0 12px}.place-hero .crumb a{color:var(--accent-tint);text-decoration:none;font-weight:650;font-size:13px}
.place-hero .eyebrow{color:#e4c58f}
.place-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:26px;padding:30px 20px 50px}
.place-info dl{margin:0;background:#fff;border:1px solid var(--line);border-radius:12px;padding:6px 20px}
.drow{display:grid;grid-template-columns:120px 1fr;gap:12px;padding:12px 0;border-bottom:1px solid var(--soft)}.drow:last-child{border-bottom:0}
.drow dt{color:var(--muted);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding-top:2px}.drow dd{margin:0;overflow-wrap:anywhere}
.drow dd a{color:#2f6b52;font-weight:650}
.place-actions{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0 6px}
.pill-btn.gphotos{border-color:var(--link);color:var(--link)}.pill-btn.gphotos:hover{background:var(--link);color:#fff}
.place-map iframe{width:100%;height:420px;border:0;border-radius:12px;background:var(--line);display:block}
.map-note{font-size:12px;color:var(--muted);margin:8px 0 0}
@media (max-width:760px){.place-layout{grid-template-columns:1fr;padding:20px 16px 40px}.place-map iframe{height:300px}.drow{grid-template-columns:96px 1fr}.detail-hero.has-photo .detail-head{padding-top:90px}.place-hero.has-photo{padding-top:100px}.city-art.has-img{height:118px}}
.place-layout{padding:30px 0 50px}@media (max-width:760px){.place-layout{padding:20px 0 40px}}
.drow dt{font-size:11px;letter-spacing:.04em}@media (max-width:760px){.drow{grid-template-columns:112px 1fr;gap:10px}}

/* 2026-10-11: certification cards, Ask Us, New on the site */
button.cert{border:0;background:none;padding:0;font:inherit;color:var(--ink-2);text-decoration:underline;text-decoration-color:var(--accent-2);text-underline-offset:2px;cursor:pointer}
button.cert:hover{color:var(--accent-ink)}
.sheet-wrap{position:fixed;inset:0;z-index:60;display:flex;align-items:flex-end;justify-content:center}
.sheet-back{position:absolute;inset:0;background:#0f2a2566}
.sheet{position:relative;background:var(--cream);width:min(520px,100%);max-height:86vh;overflow:auto;border-radius:18px 18px 0 0;padding:26px 22px 28px;box-shadow:0 -10px 40px #0f2a2533}
@media(min-width:681px){.sheet-wrap{align-items:center}.sheet{border-radius:18px}}
.sheet-x{position:absolute;right:12px;top:10px;border:0;background:var(--soft);width:34px;height:34px;border-radius:50%;font-size:22px;line-height:1;color:var(--deep)}
.sheet-title{font:normal 26px/1.2 var(--display);letter-spacing:-.02em;margin:6px 40px 6px 0}
.sheet-sub{color:var(--muted);font-size:13px;margin:0 0 10px}.sheet-meta{color:var(--accent-ink);font-size:13px;font-weight:650}
.sheet p{font-size:14px}.sheet-list{padding-left:18px;font-size:13px}.sheet-list li{margin:6px 0}.pill-btn.small{padding:8px 14px;font-size:12px;display:inline-block}
.new-badge{display:inline-block;background:var(--accent);color:#fff;border-radius:999px;font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:2px 7px;margin-left:6px;vertical-align:2px}
.new-strip{padding:34px 0 8px}.new-row{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px 2px 12px;scrollbar-width:thin}
.new-card{flex:0 0 230px;scroll-snap-align:start;background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px 15px;text-decoration:none;display:flex;flex-direction:column;gap:4px;min-height:118px}
.new-card:hover{border-color:var(--gold)}.new-card b{font:normal 17px/1.25 var(--display);color:var(--ink)}.new-card .nc-meta{font-size:12px;color:var(--muted)}.new-card .nc-when{margin-top:auto;font-size:11px;font-weight:750;color:var(--accent-ink);text-transform:uppercase;letter-spacing:.06em}
.new-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.new-list .new-card{flex:auto}
@media(max-width:680px){.new-list{grid-template-columns:1fr}.new-card{flex-basis:200px}nav{gap:9px}nav a{font-size:10.5px}}
/* Ask Us */
.ask-fab{position:fixed;right:16px;bottom:18px;z-index:50;display:inline-flex;align-items:center;gap:8px;border:0;border-radius:999px;background:var(--deep);color:#fff;padding:13px 18px;font-weight:750;font-size:14px;box-shadow:0 10px 28px color-mix(in srgb,var(--ink) 28%,transparent)}
.ask-fab svg{flex:none}.ask-fab:hover{background:#0f2c28}
.ask-panel{position:fixed;right:16px;bottom:16px;z-index:55;width:min(400px,calc(100% - 20px));height:min(620px,calc(100% - 90px));background:var(--cream);border:1px solid var(--line);border-radius:18px;box-shadow:0 18px 50px color-mix(in srgb,var(--ink) 25%,transparent);display:flex;flex-direction:column;overflow:hidden}
@media(max-width:680px){.ask-panel{right:0;left:0;bottom:0;width:100%;height:86vh;border-radius:18px 18px 0 0}.ask-fab{right:12px;bottom:14px;padding:12px 16px}}
.ask-head{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;background:var(--deep);color:var(--soft)}.ask-head b{font:normal 20px var(--display)}.ask-head small{display:block;color:var(--lav);font-size:11px}
.ask-head button{border:0;background:#ffffff1f;color:#fff;width:32px;height:32px;border-radius:50%;font-size:20px;line-height:1}
.ask-log{flex:1;overflow-y:auto;padding:14px 14px 4px;display:flex;flex-direction:column;gap:10px}
.ask-msg{max-width:92%;font-size:14px;line-height:1.45;padding:10px 13px;border-radius:14px}
.ask-msg.me{align-self:flex-end;background:#e6eee3;color:var(--deep);border-bottom-right-radius:4px}
.ask-msg.bot{align-self:flex-start;background:#fff;border:1px solid var(--line);border-bottom-left-radius:4px}
.ask-msg.bot p{margin:0 0 8px}.ask-msg.bot p:last-child{margin-bottom:0}
.ask-ex{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.ask-ex button{border:1px solid var(--line);background:#f6f7f2;border-radius:999px;padding:6px 11px;font-size:12px;color:var(--ink-2)}
.ask-res{display:flex;flex-direction:column;gap:7px;margin:8px 0}
.ask-card{display:block;text-decoration:none;border:1px solid var(--line);border-radius:10px;padding:9px 11px;background:#fbfbf8}
.ask-card:hover{border-color:var(--gold)}.ask-card b{display:block;font:normal 16px/1.25 var(--display);color:var(--ink)}.ask-card span{display:block;font-size:12px;color:var(--muted)}
.ask-more{font-weight:750;font-size:13px;color:var(--ink-2)}
.ask-form{display:flex;gap:8px;padding:10px 12px 12px;border-top:1px solid var(--line);background:#fff}
.ask-form input{flex:1;min-width:0;border:1px solid var(--line);border-radius:10px;padding:11px 12px;font-size:16px;color:var(--ink);background:#fff}
.ask-form button{border:0;background:var(--accent);color:#fff;border-radius:10px;padding:0 15px;font-weight:750}
.ask-miss{display:grid;gap:7px;margin-top:8px}.ask-miss textarea,.ask-miss input{border:1px solid var(--line);border-radius:9px;padding:9px 10px;font:inherit;font-size:15px;width:100%}
.ask-miss button{justify-self:start;border:0;background:var(--deep);color:#fff;border-radius:9px;padding:9px 14px;font-weight:700}
.ask-dim{color:var(--muted);font-size:12px}

@media(max-width:680px){.topinner nav{overflow-x:auto;white-space:nowrap;-webkit-overflow-scrolling:touch;scrollbar-width:none;max-width:calc(100vw - 150px)}.topinner nav::-webkit-scrollbar{display:none}}
.footer-contact a{color:inherit;text-decoration:underline;text-underline-offset:2px}.comment-link{margin:14px 0 0}.submit-form .check{display:flex;gap:8px;align-items:center}

/* 2026-10-12 phone fixes: Ask Us full-screen above the keyboard, input on top, scroll lock, safe areas */
.ask-panel{z-index:1000;overscroll-behavior:contain}
.ask-log{min-height:0;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
.ask-head button{width:40px;height:40px;font-size:24px}
@media(max-width:680px){
  .ask-panel{top:0;left:0;right:0;bottom:auto;width:100%;height:100vh;height:100dvh;max-height:none;border-radius:0;border:0}
  .ask-head{order:-2;padding-top:max(12px,env(safe-area-inset-top))}
  .ask-form{order:-1;border-top:0;border-bottom:1px solid var(--line)}
  .ask-log{padding-bottom:max(16px,env(safe-area-inset-bottom))}
  .ask-fab{bottom:max(14px,env(safe-area-inset-bottom))}
  body{padding-bottom:72px}
}
html.lock-scroll,html.lock-scroll body{overflow:hidden;overscroll-behavior:none}
.sheet-wrap{z-index:1001}
.sheet{max-height:86vh;max-height:86dvh;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding-bottom:max(28px,env(safe-area-inset-bottom))}
.sheet-x{width:40px;height:40px}
.stay-hero.compact{padding:26px 0 18px}.stay-hero.compact h1{font-size:clamp(26px,6vw,40px)}.stay-hero.compact p{font-size:14px}

/* 2026-10-12 languages: language menu + right-to-left (Hebrew, Yiddish) */
.lang-menu{display:inline-flex;align-items:center;gap:4px;margin-inline-start:14px;font-size:13px;color:var(--ink-2);flex:none}
.lang-menu select{border:1px solid var(--line);background:#fff;border-radius:8px;padding:5px 6px;font-size:13px;color:var(--ink);max-width:96px}
@media(max-width:680px){.lang-menu{margin-inline-start:6px}.lang-menu span{display:none}.lang-menu select{padding:4px;font-size:12px;max-width:74px}}
[dir=rtl] body{font-family:"Arial Hebrew","Noto Sans Hebrew","Segoe UI",Arial,sans-serif}
[dir=rtl] h1,[dir=rtl] h2,[dir=rtl] h3,[dir=rtl] .sheet-title,[dir=rtl] .ask-head b,[dir=rtl] .new-card b,[dir=rtl] .ask-card b{font-family:"Arial Hebrew","Noto Serif Hebrew","Times New Roman",serif}
[dir=rtl] .brand-mark{margin-right:0;margin-left:10px}
[dir=rtl] nav{margin-left:0;margin-right:auto}
[dir=rtl] .topnote{border-left:0;border-right:1px solid var(--line);padding-left:0;padding-right:25px;margin-left:0;margin-right:14px}
[dir=rtl] .side button{text-align:right}
[dir=rtl] .kind small,[dir=rtl] .chip small,[dir=rtl] .area-head small,[dir=rtl] .browse-country summary small,[dir=rtl] .side button small,[dir=rtl] .new-badge{margin-left:0;margin-right:4px}
[dir=rtl] .searchbox{padding-left:0;padding-right:14px}
[dir=rtl] .credit{right:auto;left:8px}[dir=rtl] .credit-t{text-align:right}
[dir=rtl] .sheet-x{right:auto;left:12px}[dir=rtl] .sheet-title{margin:6px 0 6px 40px}[dir=rtl] .sheet-list{padding-left:0;padding-right:18px}
[dir=rtl] .ask-fab{right:auto;left:16px}
[dir=rtl] .ask-panel{right:auto;left:16px}
@media(max-width:680px){[dir=rtl] .ask-panel{left:0;right:0}[dir=rtl] .ask-fab{left:12px}}
[dir=rtl] .ask-msg.me{border-bottom-right-radius:14px;border-bottom-left-radius:4px}[dir=rtl] .ask-msg.bot{border-bottom-left-radius:14px;border-bottom-right-radius:4px}
[dir=rtl] .address,[dir=rtl] .note,[dir=rtl] .listing-card h3,[dir=rtl] .ask-card,[dir=rtl] dd{unicode-bidi:plaintext}
[dir=rtl] .toggle .knob::after{left:auto;right:2px}
[dir=rtl] .toggle.on .knob::after{left:auto;right:15px}

[dir=rtl] .ask-card *{unicode-bidi:plaintext;text-align:right}
[dir=rtl] .ask-msg b,[dir=rtl] .ask-more,[dir=rtl] .section-title{unicode-bidi:isolate}
.ask-panel[hidden],.ask-fab[hidden]{display:none!important}
.ask-head button{min-width:44px;min-height:44px;position:relative;z-index:2;touch-action:manipulation}
.ask-panel,.ask-log{overscroll-behavior:contain}

/* 2026-10-12 Zmanim */
.zm-title{font-size:clamp(26px,4vw,40px);margin:6px 0 14px}
.zm-pick{display:flex;flex-wrap:wrap;gap:8px 10px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:14px;padding:12px;margin:0 0 18px}
.zm-pick label{font-size:12px;color:var(--ink-2);font-weight:650}
.zm-pick input{border:1px solid var(--line);border-radius:9px;padding:9px 10px;font-size:15px;min-width:0;flex:1 1 160px;background:#fff;color:var(--ink)}
.zm-pick input[type=date]{flex:0 1 160px}
.zm-pick button{border:0;border-radius:9px;padding:10px 14px;font-weight:700;background:var(--deep);color:#fff}
.zm-pick .zm-here{background:var(--soft);color:var(--deep)}
.zm-head .section-title{margin-bottom:4px}
.zm-date{margin:0 0 8px;color:var(--ink-2)}
.zm-nav,.zm-toggle,.zm-opts{display:flex;flex-wrap:wrap;gap:8px;margin:6px 0 12px;font-size:14px}
.zm-nav a,.zm-toggle a,.zm-opts a{border:1px solid var(--line);border-radius:999px;padding:6px 12px;text-decoration:none;color:var(--deep);background:#fff}
.zm-toggle a.on,.zm-opts a.on{background:var(--deep);color:#fff;border-color:var(--deep)}
.zm-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:14px}
.zm-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px 16px}
.zm-card h3{margin:0 0 8px;font-size:17px}
.zm-shabbos{background:var(--accent-soft);border-color:var(--accent-tint)}
.zm-special{background:var(--soft);border-color:var(--line)}
.zm-rows{margin:0}
.zm-rows div{display:flex;justify-content:space-between;gap:12px;padding:7px 0;border-top:1px solid var(--soft)}
.zm-rows div:first-child{border-top:0}
.zm-rows dt{color:var(--ink-2);font-size:14px}
.zm-rows dd{margin:0;font-weight:750;font-variant-numeric:tabular-nums;white-space:nowrap;direction:ltr}
.zm-legend{font-size:13px;color:var(--ink-2);margin:16px 0 4px}
.zm-credit{font-size:12px;color:var(--muted-2);margin-top:18px}
.side .zm-tab{white-space:nowrap;padding:9px 12px;border:1px solid var(--line);border-radius:8px;font-size:13px;font-weight:650;color:var(--accent-ink);text-decoration:none;display:flex;align-items:center}
[dir=rtl] .zm-rows dd{text-align:left}
.zm-next{display:inline-block;background:var(--accent-soft);border:1px solid var(--accent-tint);border-radius:999px;padding:7px 14px;font-weight:700;color:var(--accent-ink);margin:0 0 10px}
.zm-tools{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0 6px}
.zm-tool{border:1px solid var(--line);background:#fff;border-radius:10px;padding:8px 12px;font-size:13px;font-weight:650;color:var(--deep);text-decoration:none;cursor:pointer}
.zm-wa{border-color:#9fd3ad;color:#14692f}
.zm-small{font-size:13px;color:var(--ink-2);margin:4px 0 12px}
.zm-week{grid-column:1/-1;margin-bottom:14px}
.zm-week-scroll{overflow-x:auto}
.zm-week table{border-collapse:collapse;width:100%;font-size:13px;min-width:640px}
.zm-week th,.zm-week td{padding:7px 8px;border-bottom:1px solid var(--soft);text-align:start;white-space:nowrap}
.zm-week th{font-size:12px;color:var(--ink-2);font-weight:650;white-space:normal}
.zm-week td small{display:block;color:var(--muted-2);font-size:11px}
.zm-week td[translate=no]{font-weight:700;font-variant-numeric:tabular-nums;direction:ltr}
.zm-week tr.today{background:var(--accent-soft)}
.zm-trip-rows div{align-items:center}
.zm-trip-rows dd{font-size:13px;white-space:normal;text-align:end}
.zm-trip-del{border:0;background:none;font-size:20px;color:var(--accent-ink);cursor:pointer;padding:0 4px}
.zm-trip-toggle{margin-top:8px;border:1px dashed var(--line);background:var(--soft);border-radius:10px;padding:8px 12px;font-weight:650;color:var(--deep);cursor:pointer}
@media print{.topbar,.subbar,.footer,.ask-fab,.ask-panel,.zm-pick,.zm-nav,.zm-toggle,.zm-opts,.zm-tools,#zm-tool-note,.zm-next,.zm-trip,.zm-credit,.skip{display:none!important}
body{background:#fff}.zm-grid{grid-template-columns:1fr 1fr;gap:8px}.zm-card{break-inside:avoid;padding:8px 10px;border-color:#ccc}.zm-rows div{padding:3px 0}.section{padding:0}.zm-title{font-size:20px;margin:0}}

/* ---- place autocomplete (ac.js) ---- */
.ac-host{position:relative}
.ac-host .skip:not(:focus){top:auto;left:auto;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;padding:0}
.ac-list{position:absolute;z-index:60;top:calc(100% + 6px);inset-inline-start:0;width:100%;min-width:260px;max-height:min(60vh,420px);overflow:auto;margin:0;padding:6px;list-style:none;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 18px 50px color-mix(in srgb,var(--ink) 18%,transparent);text-align:start;color:var(--ink)}
.ac-list[hidden]{display:none}
.ac-item{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:11px;cursor:pointer;line-height:1.25}
.ac-item.on,.ac-item:hover{background:var(--sage)}
.ac-ic{font-size:20px;flex:none;width:26px;text-align:center}
.ac-t{flex:1;min-width:0;display:flex;flex-direction:column}
.ac-t b{font-weight:650;font-size:15px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ac-t small{color:var(--muted);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ac-n{flex:none;font-size:11px;color:var(--gold);font-weight:700;white-space:nowrap}
.ac-credit{font-size:10.5px;color:var(--muted);padding:6px 10px 2px;cursor:default}
.zm-trip-add{margin-top:10px}
.zm-trip-add input{width:100%;border:1px solid var(--line);border-radius:12px;padding:9px 12px;font-size:15px;background:#fff;color:var(--ink)}

/* ---- Zmanim landing ---- */
.zm-hero{position:relative;z-index:2;color:#fff;background:radial-gradient(55% 75% at 85% 0%,color-mix(in srgb,var(--violet) 55%,transparent) 0%,transparent 62%),radial-gradient(45% 65% at 0% 100%,color-mix(in srgb,var(--accent) 38%,transparent) 0%,transparent 60%),linear-gradient(160deg,var(--night) 0%,var(--deep) 58%,var(--deep-2) 100%);padding:72px 0 64px;border-radius:0 0 36px 36px}
.zm-hero:before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:radial-gradient(circle at 100% 110%,transparent 0 260px,#ffffff1f 261px 262px,transparent 263px 350px,#ffffff12 351px 352px,transparent 353px 440px,#ffffff0b 441px 442px,transparent 443px)}
.zm-hero-in{position:relative;z-index:1;text-align:center;max-width:860px}
.zm-hero .eyebrow{color:var(--accent-2)}
.zm-hero h1{font-size:clamp(34px,5.6vw,64px);line-height:1.04;letter-spacing:-.04em;font-weight:500;margin:14px auto 16px;max-width:820px}
.zm-hero-sub{color:var(--lav);font-size:clamp(15px,1.8vw,18px);max-width:620px;margin:0 auto 28px}
.zm-hsearch{display:flex;align-items:center;gap:10px;max-width:640px;margin:0 auto;background:#fff;border-radius:999px;padding:6px 6px 6px 20px;box-shadow:0 20px 60px color-mix(in srgb,var(--night) 40%,transparent);color:#7a7d9c}
[dir=rtl] .zm-hsearch{padding:6px 20px 6px 6px}
.zm-hsearch svg{flex:none}
.zm-hsearch input{flex:1;min-width:0;border:0;outline:0;background:transparent;font-size:16px;color:var(--ink);padding:12px 0}
.zm-hsearch button{flex:none;border:0;border-radius:999px;background:var(--gold);color:#fff;font-weight:700;padding:13px 22px;cursor:pointer}
.zm-hsearch button:hover{filter:brightness(.94)}
.zm-hacts{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin:18px 0 0}
.zm-hacts .zm-here,.zm-last{border:1px solid #ffffff38;background:#ffffff14;color:#fff;border-radius:999px;padding:10px 18px;font-weight:600;font-size:14px;text-decoration:none;cursor:pointer;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.zm-hacts .zm-here:hover,.zm-last:hover{background:#ffffff26}
.zm-landing{padding-top:46px}
.side{top:86px}
.zm-sec{margin:0 0 54px}
.zm-sec .section-title{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.zm-count{font-size:15px;font-weight:700;background:var(--sage);color:var(--deep);border-radius:999px;padding:3px 12px;letter-spacing:0}
.zm-map{position:relative;height:420px;margin-top:18px;border-radius:24px;overflow:hidden;background:linear-gradient(160deg,#e9e8fb,#f6f1ff);border:1px solid var(--line);box-shadow:0 10px 34px color-mix(in srgb,var(--ink) 8%,transparent);z-index:0}
.zm-map-load,.zm-map-msg{position:absolute;inset:0;margin:auto;width:max-content;height:max-content;max-width:90%;text-align:center}
.zm-map-load{border:0;border-radius:999px;background:var(--deep);color:#fff;font-weight:700;padding:12px 20px;cursor:pointer}
.zm-map-msg{color:var(--muted)}
.zm-pin{background:none;border:0}
.zm-pin span{display:block;width:22px;height:22px;margin:2px;border-radius:50% 50% 50% 0;transform:rotate(-45deg);background:linear-gradient(135deg,var(--accent-2),var(--gold));border:3px solid #fff;box-shadow:0 4px 10px color-mix(in srgb,var(--ink) 35%,transparent);transition:transform .15s}
.zm-pin:hover span,.zm-pin:focus span{transform:rotate(-45deg) scale(1.18)}
.zm-pop{display:flex;flex-direction:column;gap:3px;font:14px/1.35 inherit;color:var(--ink);text-align:start}
.zm-pop b{font-size:16px}
.zm-pop small{color:var(--muted)}
.zm-pop-h{margin-top:6px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--gold)}
.zm-pop .zm-ql{display:block}
.zm-pop-a{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.zm-pop-a a{border-radius:999px;padding:6px 11px;font-weight:700;font-size:12.5px;text-decoration:none;background:var(--sage);color:var(--deep)!important}
.zm-pop-a a:first-child{background:var(--deep);color:#fff!important}
.leaflet-popup-content-wrapper{border-radius:16px}
.zm-fgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:20px}
.zm-fgrid+.zm-fgrid{margin-top:16px}
.zm-fgrid[hidden]{display:none}
.zm-fcard{position:relative;display:flex;flex-direction:column;border-radius:22px;border:1px solid color-mix(in srgb,var(--ink) 5%,transparent);overflow:hidden;transition:transform .25s ease,box-shadow .25s ease}
.zm-fcard.tone-0{background:linear-gradient(150deg,#f1eefe,#fbfaff)}.zm-fcard.tone-1{background:linear-gradient(150deg,var(--accent-soft),#fffaf7)}.zm-fcard.tone-2{background:linear-gradient(150deg,#e9f5ff,#f8fbff)}
.zm-fcard.tone-3{background:linear-gradient(150deg,#ecf8f1,#f8fdfa)}.zm-fcard.tone-4{background:linear-gradient(150deg,#fff6df,#fffcf4)}.zm-fcard.tone-5{background:linear-gradient(150deg,#fcecf6,#fff8fc)}
.zm-fmain{display:grid;grid-template-columns:auto 1fr;gap:4px 12px;align-items:center;padding:18px 18px 10px;text-decoration:none;color:inherit}
.zm-fflag{font-size:34px;line-height:1;grid-row:span 1}
.zm-fname{display:flex;flex-direction:column;min-width:0}
.zm-fname b{font-size:17px;font-weight:650;letter-spacing:-.01em;line-height:1.2}
.zm-fname small{color:var(--muted);font-size:13px}
.zm-ftimes{grid-column:1/-1;display:flex;flex-direction:column;gap:3px;margin-top:10px;font-size:13.5px;color:#3c3f5c}
.zm-ql b{font-variant-numeric:tabular-nums;color:var(--ink);white-space:nowrap;direction:ltr;unicode-bidi:isolate}
.zm-fguide{margin:auto 18px 16px;font-size:12.5px;font-weight:700;color:var(--gold);text-decoration:none}
.zm-fguide:hover{text-decoration:underline}
@media (hover:hover){.zm-fcard:hover{transform:translateY(-4px);box-shadow:0 16px 40px color-mix(in srgb,var(--ink) 12%,transparent)}}
.zm-center{text-align:center;margin:20px 0 0}
.zm-showall{border:1px solid var(--line);background:#fff;color:var(--deep);border-radius:999px;padding:11px 20px;font-weight:700;cursor:pointer}
.zm-countries{columns:3 250px;column-gap:18px;margin-top:18px}
.zm-country{break-inside:avoid;margin:0 0 8px;background:#fff;border:1px solid var(--line);border-radius:14px}
.zm-country summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:8px;padding:10px 14px;font-weight:600}
.zm-country summary::-webkit-details-marker{display:none}
.zm-country summary small{margin-inline-start:auto;color:var(--muted);font-weight:600;font-size:12px;background:var(--paper);border-radius:999px;padding:2px 9px}
.zm-country summary:after{content:"+";color:var(--gold);font-weight:700;margin-inline-start:6px}
.zm-country[open] summary:after{content:"–"}
.zm-cflag{font-size:20px}
.zm-cbody{padding:0 14px 10px}
.zm-cbody h4{margin:10px 0 4px;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.zm-clist{list-style:none;margin:0;padding:0}
.zm-clist li{display:flex;justify-content:space-between;gap:8px;padding:6px 0;border-top:1px solid color-mix(in srgb,var(--ink) 5%,transparent);font-size:14px}
.zm-clist li:first-child{border-top:0}
.zm-clist a.city-name{text-decoration:none;color:var(--ink)}
.zm-clist a.city-name:hover{color:var(--gold)}
.zm-guide{flex:none;font-size:12px;font-weight:700;color:var(--gold);text-decoration:none}
.zm-back{margin:-4px 0 12px}.zm-back a{font-weight:650;font-size:14px;color:var(--gold);text-decoration:none}
@media(max-width:900px){.zm-fgrid{grid-template-columns:repeat(2,minmax(0,1fr))}.zm-map{height:360px}}
@media(max-width:560px){.zm-hero{padding:44px 0 40px;border-radius:0 0 26px 26px}.zm-hsearch{padding:5px 5px 5px 14px}[dir=rtl] .zm-hsearch{padding:5px 14px 5px 5px}.zm-hsearch button{padding:12px 15px}.zm-fgrid{grid-template-columns:1fr;gap:12px}.zm-fmain{padding:14px 14px 8px}.zm-fguide{margin:auto 14px 12px}.zm-map{height:300px;border-radius:18px}.zm-countries{columns:1}.zm-sec{margin-bottom:40px}}
@media print{.zm-hero,.zm-map,.zm-hacts{display:none!important}}

/* ==== Theme 2026-10-12: night-indigo + coral, glassy sticky header, soft cards, fade-in on scroll (our own CSS) ==== */
:root{--ink:#16142e;--muted:#62658a;--deep:#1b1650;--paper:#f6f6fb;--cream:#fff;--line:#e6e6f0;--gold:#f2603f;--sage:#efedfc;--radius:22px;--night:#0e0c24;--violet:#6c5ce7;--lav:#c7c9e8;
  --font:"Figtree","Heebo",-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;--display:"Figtree","Heebo",-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;--mono:"DM Mono",ui-monospace,"SFMono-Regular",Menlo,monospace}
[dir=rtl]{--font:"Heebo","Figtree",-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;--display:"Heebo","Figtree",-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}
body{font-family:var(--font);background:var(--paper);color:var(--ink);font-size:15.5px}
h1,h2,h3,.section-title,.city-name,.region-name,.listing-card h3,.footer-brand,.band h2,.stay-hero h1,.hero h1{font-family:var(--display)}
.section-title{font-weight:500;letter-spacing:-.035em}
.listing-card h3{font-weight:600;letter-spacing:-.02em}
.city-name,.region-name{font-weight:600;letter-spacing:-.02em}
::selection{background:color-mix(in srgb,var(--accent) 20%,transparent)}
a{text-underline-offset:3px}
:focus-visible{outline:3px solid color-mix(in srgb,var(--violet) 50%,transparent);outline-offset:2px;border-radius:8px}
[id]{scroll-margin-top:90px}
/* sticky glassy header */
.topbar{position:sticky;top:0;z-index:45;height:70px;background:color-mix(in srgb,var(--paper) 80%,transparent);-webkit-backdrop-filter:saturate(170%) blur(16px);backdrop-filter:saturate(170%) blur(16px);border-bottom:1px solid color-mix(in srgb,var(--ink) 6%,transparent);transition:box-shadow .3s,background .3s}
.topbar.scrolled{box-shadow:0 8px 30px color-mix(in srgb,var(--ink) 8%,transparent);background:#ffffffd9}
.brand{color:var(--deep);font-weight:700;letter-spacing:-.04em}
.brand-mark{background:linear-gradient(140deg,var(--deep),var(--violet));color:#fff;border-radius:11px;box-shadow:0 6px 16px color-mix(in srgb,var(--violet) 25%,transparent)}
nav a{font-family:var(--mono);font-weight:500;font-size:12.5px;letter-spacing:-.01em;color:var(--ink-2);position:relative;transition:color .2s;white-space:nowrap}
@media(max-width:1180px){nav a{font-family:var(--font);font-weight:600;font-size:13px}}
nav a:after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:2px;border-radius:2px;background:var(--gold);transform:scaleX(0);transition:transform .25s}
nav a:hover:after,nav a.active:after{transform:scaleX(1)}
nav a:hover,nav a.active{color:var(--deep)}
.topnote{font-family:var(--font);color:var(--muted)}
.eyebrow{font-family:var(--mono);font-weight:500;letter-spacing:.12em;color:var(--gold)}
.subbar{background:#ffffffb3;border-bottom:1px solid var(--line)}
.subbar input,.filters select,.lang-menu select{border-radius:999px;border-color:var(--line)}
.subbar input{padding:10px 16px}
.subbar button{border-radius:999px;background:var(--deep);padding-inline:18px}
/* hero */
.hero{background:radial-gradient(55% 80% at 88% 0%,color-mix(in srgb,var(--violet) 60%,transparent) 0%,transparent 62%),radial-gradient(45% 70% at 0% 100%,color-mix(in srgb,var(--accent) 36%,transparent) 0%,transparent 62%),linear-gradient(160deg,var(--night) 0%,var(--deep) 58%,var(--deep-2) 100%);border-radius:0 0 40px 40px;color:#fff}
.hero:before{border-color:#ffffff1f;box-shadow:0 0 0 115px #ffffff06,0 0 0 230px #ffffff05}
.hero:after{color:color-mix(in srgb,var(--accent-2) 35%,transparent)}
.hero h1{font-weight:500;letter-spacing:-.045em}
.hero h1 em{font-style:normal;background:linear-gradient(90deg,var(--accent-2),var(--accent) 45%,var(--violet-2));-webkit-background-clip:text;background-clip:text;color:transparent}
.hero p,.hero-foot{color:var(--lav)}
.searchbox{border-radius:999px;padding:6px 6px 6px 22px;box-shadow:0 20px 60px color-mix(in srgb,var(--night) 40%,transparent)}
[dir=rtl] .searchbox{padding:6px 22px 6px 6px}
.searchbox button,.primary{border-radius:999px;background:var(--gold);font-weight:700;transition:transform .2s,background .2s,box-shadow .2s}
.searchbox button:hover,.primary:hover{background:var(--accent-hover);box-shadow:0 8px 22px color-mix(in srgb,var(--accent) 33%,transparent)}
.pill-btn,.more-btn{border-radius:999px;transition:background .2s,color .2s,transform .2s}
.stay-hero{background:linear-gradient(160deg,var(--soft),var(--accent-soft));border-radius:0 0 36px 36px}
.detail-hero{background:radial-gradient(50% 90% at 90% 0%,color-mix(in srgb,var(--violet) 50%,transparent),transparent 60%),linear-gradient(160deg,var(--night),var(--deep) 65%,var(--deep-2))}
.region-card{background:radial-gradient(70% 90% at 100% 0%,color-mix(in srgb,var(--violet) 40%,transparent),transparent 60%),linear-gradient(150deg,#16123f,var(--deep));border-radius:20px}
.band{background:linear-gradient(160deg,var(--soft),var(--accent-soft));border-radius:36px;margin:0 12px}
/* cards: rounded, soft shadow, lift on hover */
.city-card,.listing-card,.directory-card,.new-card,.zm-card,.empty,.submit-form,.browse-country{border-radius:20px;border-color:color-mix(in srgb,var(--ink) 6%,transparent);box-shadow:0 1px 2px color-mix(in srgb,var(--ink) 4%,transparent),0 8px 26px color-mix(in srgb,var(--ink) 5%,transparent)}
.listing-card,.directory-card,.new-card,.zm-card{transition:transform .25s ease,box-shadow .25s ease,border-color .25s}
@media (hover:hover){.city-card:hover,.listing-card:hover,.directory-card:hover,.new-card:hover,.region-card:hover{transform:translateY(-4px);box-shadow:0 18px 44px color-mix(in srgb,var(--ink) 12%,transparent)}}
.chip,.kind,.badge,.zm-tool,.zm-nav a,.zm-toggle a,.zm-opts a{border-radius:999px}
.kind.on,.chip.on{background:var(--deep);border-color:var(--deep);color:#fff}
.zm-pick{border-radius:20px;box-shadow:0 1px 2px color-mix(in srgb,var(--ink) 4%,transparent),0 8px 26px color-mix(in srgb,var(--ink) 5%,transparent)}
.zm-pick input{border-radius:12px}
.zm-pick button{border-radius:999px}
.zm-shabbos{background:linear-gradient(150deg,var(--accent-soft),#fff);border-color:var(--accent-tint)}
.zm-special{background:linear-gradient(150deg,var(--soft),#fff);border-color:#dcd7fb}
.zm-next{background:var(--accent-soft);border-color:var(--accent-tint);color:var(--accent-ink)}
.submit-form input,.submit-form select,.submit-form textarea{border-radius:12px}
/* footer */
.footer{background:radial-gradient(50% 120% at 100% 0%,color-mix(in srgb,var(--violet) 25%,transparent),transparent 60%),linear-gradient(160deg,var(--night),var(--deep));color:#e9e9f6;border-top:0;border-radius:40px 40px 0 0;margin-top:40px}
.footer p,.footer span:not(.footer-brand){color:var(--lav)}
.footer a{color:#fff}
.footer-brand{color:#fff;font-weight:600}
/* Ask us */
.ask-fab{background:linear-gradient(135deg,var(--accent),var(--accent-ink));box-shadow:0 12px 30px color-mix(in srgb,var(--accent) 35%,transparent);font-weight:700}
.ask-fab:hover{filter:brightness(1.05)}
.ask-panel{border-radius:24px}
.ask-head{background:linear-gradient(140deg,var(--night),var(--deep) 70%,var(--deep-2))}
.ask-head b{font-family:var(--display);font-weight:600}
/* fade / slide in on scroll (script.js adds .reveal only when motion is allowed) */
.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s cubic-bezier(.22,.61,.36,1),transform .7s cubic-bezier(.22,.61,.36,1)}
.reveal.is-visible{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}}
@media(max-width:680px){nav a{font-family:var(--font);font-size:13px;font-weight:600}.topbar{height:auto}.hero{border-radius:0 0 28px 28px}.footer{border-radius:28px 28px 0 0}.band{margin:0;border-radius:28px}}
@media print{.reveal{opacity:1!important;transform:none!important}.topbar{position:static}.footer{background:none;color:#000}}

/* autocomplete: ancestors of an open suggestion list stop clipping it (hero cards have overflow:hidden) */
main :is(section,div,form):has(.ac-list:not([hidden])){overflow:visible!important}

/* tefillah times (tefillos.js) */
.tef-sec{grid-column:1/-1;margin:22px 0 6px;padding:18px;border:1px solid var(--line);border-radius:var(--radius);background:var(--cream)}
.tef-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.tef-title{font-family:var(--display);font-size:20px;margin:0}
.tef-dl{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:8px 18px;margin:14px 0 6px}
.tef-row{display:flex;flex-direction:column;padding:8px 10px;border-radius:12px;background:var(--sage)}
.tef-row dt{font-size:12px;color:var(--muted);font-weight:600}
.tef-row dd{margin:2px 0 0;font-weight:650}
.tef-notes{margin:8px 0;white-space:pre-line}
.tef-by,.tef-src{font-size:13px;color:var(--muted);margin:8px 0 0}
.tef-empty{margin:12px 0 0;color:var(--muted)}
.tef-link{cursor:pointer;text-decoration:underline;text-underline-offset:3px;color:var(--ink)}
.tef-form{margin-top:16px}
.tef-form[hidden]{display:none!important}
.tef-intro{margin:0 0 4px;color:var(--muted)}
.form-out.err{color:#b3261e;font-weight:600}
.tef-card{margin:8px 0 4px}
.tef-sum{margin:0;display:flex;flex-wrap:wrap;gap:6px}
.tef-chip{display:inline-flex;gap:6px;align-items:baseline;padding:4px 9px;border-radius:999px;background:var(--sage);font-size:12.5px}
.tef-card .tef-by{margin:4px 0 0;font-size:12px}
.tef-add{font-size:13px;font-weight:600;color:var(--ink);text-decoration:underline;text-underline-offset:3px}

/* ==== Theme v3: navy + orange (2026-10-12). The whole palette is this one block: change the tokens below to re-colour the site. ==== */
:root{
  --navy:#0F1E3D;--navy-2:#1B3260;--navy-3:#2A4A85;--orange:#F28C28;
  --accent:var(--orange);--accent-hover:#E07B12;--accent-ink:#B4570A;--accent-2:#F7A955;--accent-tint:#FCD9B4;--accent-soft:#FFF4E8;--on-accent:var(--navy);
  --ink:#0F1E3D;--ink-2:#3A4760;--muted:#5B6782;--muted-2:#8A94A8;--deep:var(--navy);--deep-2:var(--navy-3);--night:#0A1530;
  --paper:#F5F7FA;--cream:#fff;--line:#E3E7EE;--soft:#EEF2F7;--sage:#EEF2F7;--lav:#C8D2E3;--violet:var(--navy-3);--violet-2:#4A78C2;--link:var(--navy-3);
  --gold:var(--accent);--radius:22px;--shadow:0 10px 30px color-mix(in srgb,var(--navy) 10%,transparent);
}
html{scroll-behavior:smooth}
body{background:var(--paper);color:var(--ink)}
::selection{background:color-mix(in srgb,var(--accent) 30%,transparent)}
/* glassy header */
.topbar{background:color-mix(in srgb,#fff 78%,transparent);-webkit-backdrop-filter:saturate(170%) blur(16px);backdrop-filter:saturate(170%) blur(16px);border-bottom:1px solid color-mix(in srgb,var(--navy) 8%,transparent)}
/* accent text that sits on white uses the darker orange (contrast >= 4.5:1) */
.eyebrow,.topnote span,.city-meta strong,.directory-card .arrow,.ac-n,.zm-pop-h,.zm-fguide,.zm-guide,.zm-back a,.zm-clist a.city-name:hover,.zm-country summary:after,.side-label,.side a,.card-type,.caution,.chip-more summary,.browse-state,.country-link,button.cert:hover,.sheet-meta,.new-card .nc-when,.side .zm-tab,.zm-next,.zm-trip-del{color:var(--accent-ink)}
nav a:hover,nav a.active{color:var(--navy)}
nav a:after{background:var(--accent)}
.brand-dot{color:var(--accent)}
/* on dark / photo heroes the bright orange reads best */
.hero .eyebrow,.zm-hero .eyebrow,.has-photo .eyebrow,.detail-hero .eyebrow,.place-hero.has-photo .eyebrow{color:var(--accent-2)}
/* buttons: orange with navy text (6.7:1) */
.searchbox button,.primary,.kind.on,.new-badge,.ask-form button,.zm-hsearch button{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}
.searchbox button:hover,.primary:hover,.ask-form button:hover,.zm-hsearch button:hover{background:var(--accent-hover);box-shadow:0 8px 22px color-mix(in srgb,var(--accent) 35%,transparent)}
.ask-fab{background:var(--navy);color:#fff;box-shadow:0 12px 30px color-mix(in srgb,var(--navy) 35%,transparent)}
.ask-fab:hover{background:var(--navy-2)}
:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
.text-link{border-bottom-color:var(--accent)}
/* heroes: deep navy with one soft orange glow */
.hero,.zm-hero{background:radial-gradient(60% 85% at 92% 0%,color-mix(in srgb,var(--accent) 26%,transparent) 0%,transparent 62%),radial-gradient(50% 70% at 0% 100%,color-mix(in srgb,var(--navy-3) 55%,transparent) 0%,transparent 65%),linear-gradient(160deg,var(--night) 0%,var(--navy) 55%,var(--navy-2) 100%);color:#fff}
.hero h1 em{background:linear-gradient(90deg,var(--accent-2),var(--accent));-webkit-background-clip:text;background-clip:text;color:transparent}
.hero-foot,.hero p{color:var(--lav)}
/* soft rounded cards with a gentle lift */
.listing-card,.city-card,.directory-card,.new-card,.ask-card,.zm-fcard,.tef-sec{border-radius:var(--radius);box-shadow:var(--shadow);border-color:var(--line)}
@media (hover:hover){.listing-card.clickable,.city-card,.directory-card,.new-card,.zm-fcard{transition:transform .25s ease,box-shadow .25s ease}.listing-card.clickable:hover,.city-card:hover,.directory-card:hover,.new-card:hover,.zm-fcard:hover{transform:translateY(-3px);box-shadow:0 16px 40px color-mix(in srgb,var(--navy) 16%,transparent)}}
.zm-pin span{background:var(--accent);border-color:#fff}
.hbadge{background:var(--accent-soft);color:var(--accent-ink)}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal{opacity:1!important;transform:none!important}}
.topbar nav a{font-family:var(--font);letter-spacing:0}

/* report a mistake (report.js) */
.rep-sec{margin:14px 0 4px}.rep-form{margin-top:12px}.rep-form[hidden],.rep-open[hidden]{display:none!important}
.rep-title{font-family:var(--display);font-size:20px;margin:0 0 4px}
.rep-kinds{border:1px solid var(--line);border-radius:14px;padding:10px 14px;display:flex;flex-wrap:wrap;gap:6px 18px}.rep-kinds legend{font-weight:650;padding:0 6px}
.rep-hp{position:absolute!important;inset-inline-start:0;top:0;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;opacity:0}
.rep-sec,.rep-form{position:relative}
.rep-link{display:inline-block;margin-top:6px;font-size:12px;color:var(--muted);text-decoration:underline;text-underline-offset:3px}
.rep-link:hover{color:var(--accent-ink)}

/* advertise spots are tap targets (ads.js) */
a.ad-tap{display:block;text-decoration:none;color:inherit;cursor:pointer;transition:border-color .2s,box-shadow .2s}
a.ad-tap:hover{border-color:var(--accent);box-shadow:var(--shadow)}
.ad-cta{display:inline-block;margin-top:8px;font-weight:700;color:var(--accent-ink)}

/* 2026-10-12 ad offer line (owner): bold, readable on cards and at the top of the ad form */
.ad-free{display:block;font-weight:800;color:var(--accent-ink,#B4570A);margin:.35rem 0 .45rem;line-height:1.35}
.ad-free-top{font-size:1.08rem;background:rgba(242,140,40,.12);border-radius:12px;padding:.55rem .8rem;margin:.6rem 0 .8rem;display:inline-block}

/* 2026-10-12 voice notes: compact card under the search hero, recorder in Report a mistake and on ?view=voice */
.vn-card-wrap{padding:18px 0 4px}
.vn-card{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;background:#fff;border:1px solid rgba(15,30,61,.1);border-radius:18px;padding:14px 18px;box-shadow:0 6px 22px rgba(15,30,61,.06)}
.vn-card-title{font-size:1.08rem;margin:0 0 2px;color:var(--navy,#0F1E3D)}
.vn-card p{margin:0;color:#4a5568;font-size:.94rem}
.vn-card-body{margin-top:12px}
.vn{background:#fff;border:1px solid rgba(15,30,61,.1);border-radius:16px;padding:16px}
.vn-ctrl{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.vn-time{font-variant-numeric:tabular-nums;color:#4a5568}
.vn-play{width:100%;max-width:520px}
.rep-voice{margin-top:6px}
.rep-voice-body{margin-top:10px}
@media (max-width:600px){.vn-card{padding:12px 14px}.vn-card-open{width:100%;justify-content:center}}
.vn [hidden],.vn-card-wrap [hidden],.rep-voice [hidden]{display:none!important}

/* 2026-10-12 weather: strip on city pages + Weather tab */
.wx-strip{margin:6px 0 14px}
.wx-h{font-size:1rem;margin:0 0 8px;color:var(--navy,#0F1E3D)}
.wx-box{background:#fff;border:1px solid rgba(15,30,61,.1);border-radius:18px;padding:14px 16px;box-shadow:0 6px 22px rgba(15,30,61,.06)}
.wx-now{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.wx-ico{font-size:2.4rem;line-height:1}
.wx-temp{font-size:1.9rem;font-weight:800;color:var(--navy,#0F1E3D);line-height:1}
.wx-cond{color:#4a5568;font-size:.92rem}
.wx-hilo{color:#4a5568;font-size:.95rem}
.wx-unit{margin-inline-start:auto;display:inline-flex;border:1px solid rgba(15,30,61,.15);border-radius:999px;overflow:hidden}
.wx-unit button{border:0;background:#fff;padding:6px 12px;font-weight:700;cursor:pointer;color:var(--navy,#0F1E3D)}
.wx-unit button[aria-pressed="true"]{background:var(--navy,#0F1E3D);color:#fff}
.wx-days{list-style:none;margin:12px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(44px,1fr));gap:6px}
.wx-days li{display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 4px;border-radius:12px;background:#f5f7fb;font-size:.9rem}
.wx-days li.wx-shabbos{background:rgba(242,140,40,.16);outline:2px solid rgba(242,140,40,.55)}
.wx-dn{font-weight:700;color:var(--navy,#0F1E3D)}
.wx-di{font-size:1.35rem}
.wx-dl{color:#6b7280}
.wx-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-top:12px}
.wx-credit{color:#6b7280;font-size:.75rem}
.wx-credit a{color:inherit}
.wx-loading{margin:0;color:#6b7280}
.wx-main{margin-bottom:24px}
.wx-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}
.wx-mini{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:12px 14px;border-radius:14px;background:#fff;border:1px solid rgba(15,30,61,.1);text-decoration:none;color:var(--navy,#0F1E3D)}
.wx-mini-now{font-weight:800;white-space:nowrap}
.wx-days li{min-width:0;padding:8px 2px}.wx-dn{font-size:.76rem;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* Logo A (2026-10-12): navy pin + orange globe lockup */
.brand-logo{display:block;height:48px;width:auto}
@media (max-width:640px){.brand-logo{height:38px}}
.brand{gap:0}
.terms .shell{max-width:760px}.terms h2{font-size:1.15rem;margin:26px 0 6px;color:var(--navy,#0F1E3D)}.terms p{line-height:1.6;margin:0 0 8px}.terms-date{font-size:.85rem;opacity:.8}.terms-copy{margin-top:28px!important;font-size:.85rem;opacity:.8}.footer-copy{display:block;margin-top:10px}
.footer-logo{display:block;height:52px;width:auto;margin-bottom:6px}
.footer-contact a{white-space:nowrap}

/* first-visit tour (tour.js) */
.ft-tour{position:fixed;inset:0;z-index:2147483000;pointer-events:none}
.ft-tour-catch{position:fixed;inset:0;pointer-events:auto;background:transparent}
.ft-tour-hole{position:fixed;border-radius:14px;border:2px solid var(--orange);box-shadow:0 0 0 9999px rgba(15,30,61,.62);transition:top .14s ease-out,left .14s ease-out,width .14s ease-out,height .14s ease-out;pointer-events:none}
.ft-tour-hole[hidden]{display:block;width:0!important;height:0!important;border:0;top:50%!important;left:50%!important}
.ft-tour-card{position:fixed;width:min(340px,calc(100vw - 24px));background:#fff;color:var(--navy);border-radius:16px;padding:16px 18px 14px;box-shadow:0 18px 50px rgba(15,30,61,.35);pointer-events:auto;outline:none;border-top:4px solid var(--orange)}
.ft-tour-card{transition:opacity .1s ease-out}.ft-tour.busy .ft-tour-card{opacity:0}
.ft-tour-n{margin:0 0 4px;font-size:12px;font-weight:600;color:var(--accent-ink,#B4570A);letter-spacing:.02em}
.ft-tour-card h2{margin:0 0 6px;font-size:19px;line-height:1.25;color:var(--navy)}
.ft-tour-t{margin:0 0 14px;font-size:14.5px;line-height:1.5;color:var(--navy-2)}
.ft-tour-btns{display:flex;align-items:center;gap:8px}.ft-tour-btns span{flex:1}
.ft-tour-btns button{font:inherit;font-size:14px;border-radius:999px;padding:8px 14px;cursor:pointer;border:1px solid transparent}
.ft-tour-skip{background:none;color:var(--navy-3);padding-inline:4px!important;text-decoration:underline;text-underline-offset:2px}
.ft-tour-back{background:#fff;border-color:var(--navy-3)!important;color:var(--navy)}
.ft-tour-next{background:var(--orange);color:var(--navy);font-weight:700}
.ft-tour-next:hover{background:var(--accent-hover)}
.ft-tour-btns button[hidden]{display:none}
/* how-to guide (?view=guide) */
.guide-steps{display:grid;gap:14px;margin:6px 0 28px;padding:0;list-style:none;counter-reset:g}
.guide-steps li{counter-increment:g;position:relative;padding:14px 16px 14px 56px;border:1px solid var(--line);border-radius:14px;background:#fff}
.guide-steps li:before{content:counter(g);position:absolute;inset-inline-start:14px;top:14px;width:30px;height:30px;border-radius:50%;background:var(--orange);color:var(--navy);font-weight:700;display:grid;place-items:center}
[dir=rtl] .guide-steps li{padding:14px 56px 14px 16px}
.guide-steps h3{margin:0 0 4px;font-size:17px}.guide-steps p{margin:0;line-height:1.55}
.guide-faq details{border-bottom:1px solid var(--line);padding:12px 0}.guide-faq summary{font-weight:650;cursor:pointer}.guide-faq details p{margin:8px 0 0;line-height:1.55}
.guide-cta{margin:22px 0 8px}
html.ft-touring .ask-fab{visibility:hidden}

/* "Got feedback?" panel (home, above the footer; ?view=voice) */
.fb-wrap{padding:8px 0 44px}
.fb-page .fb-wrap{padding:0 0 20px}
.fb-card{align-items:center}
.fb-opts{display:flex;gap:10px;flex-wrap:wrap}.fb-opts .fb-open{margin:0}.fb-card .vn-card-text p{margin:0}
.fb-open.on{background:var(--orange,#F5A623);border-color:transparent;color:var(--navy,#0F1E3D)}
.fbt textarea{resize:vertical;min-height:96px;font:inherit}
.fb-wrap [hidden]{display:none!important}
@media(max-width:680px){.fb-card{gap:12px}.fb-opts{width:100%;flex-direction:column;gap:8px}.fb-opts .fb-open{width:100%;justify-content:center}}

/* 2026-10-12g feedback sender fields: required marks + invalid state */
.submit-form .req{color:#c0392b;font-weight:700}
.submit-form .req-lab::after{content:" *";color:#c0392b;font-weight:700}
.submit-form .fb-req-note{margin:-2px 0 0;font-size:.85rem;color:var(--muted,#5b6577)}
.submit-form [aria-invalid="true"]{border-color:#c0392b!important;box-shadow:0 0 0 2px rgba(192,57,43,.15)}

/* 2026-10-12h tablet header (681-1279px): the menu gets its own row, so the header never runs wider than the screen (it used to push the language menu off the right edge and Android zoomed the whole page out) */
@media(min-width:681px) and (max-width:1279px){.topbar{height:auto}.topinner{flex-wrap:wrap;height:auto;column-gap:16px;row-gap:4px;padding:12px 0 8px}.brand{margin-inline-end:auto}.topinner>*{min-width:0}.topinner nav{order:3;flex:1 0 100%;margin:0;flex-wrap:wrap;justify-content:space-between;column-gap:18px;row-gap:6px;padding:4px 0 8px}.topinner nav a{font-size:14px}.topnote{margin-left:0;margin-right:0}.lang-menu{margin-inline-start:0}}

/* 2026-10-12i "Plan my trip" (links to the trip planner site): orange menu pill, city-page button, home card under the hero search */
nav a.nav-plan{background:#F28C28;color:#fff;border-radius:999px;padding:5px 13px;font-weight:700;line-height:1.3;text-decoration:none}
nav a.nav-plan:after{display:none}
nav a.nav-plan:hover,nav a.nav-plan:focus-visible{background:#E07B12;color:#fff}
@media(max-width:680px){nav a.nav-plan{order:-1;padding:4px 10px}}
@media(min-width:1280px){.topnote{display:none}}
.plan-btn{display:inline-flex;flex-direction:column;align-items:flex-start;gap:2px;margin-top:20px;background:#F28C28;color:#fff;text-decoration:none;border-radius:14px;padding:11px 20px 12px;box-shadow:0 8px 24px rgba(15,30,61,.28);max-width:100%;transition:background .15s}
.plan-btn:hover,.plan-btn:focus-visible{background:#E07B12;color:#fff}
.plan-btn-t{font-size:17px;font-weight:800;line-height:1.25}
.plan-btn-t:after{content:" \2192"}
[dir=rtl] .plan-btn-t:after{content:" \2190"}
.plan-btn-s{font-size:12.5px;font-weight:500;line-height:1.3;opacity:.95}
.plan-card{display:flex;align-items:center;gap:12px;max-width:600px;margin-top:16px;padding:10px 12px;background:#fff;color:#0F1E3D;border:2px solid #F28C28;border-radius:16px;text-decoration:none;box-shadow:0 10px 30px rgba(15,30,61,.25);transition:background .15s,border-color .15s}
.plan-card:hover,.plan-card:focus-visible{border-color:#E07B12;background:#FFF4E8}
.plan-card-ic{flex:none;width:38px;height:38px;border-radius:50%;background:#F28C28;display:grid;place-items:center;font-size:19px}
.plan-card-tx{flex:1;min-width:0;display:flex;flex-direction:column;line-height:1.3}
.plan-card-tx b{font-size:15.5px;font-weight:800;color:#0F1E3D}
.plan-card-tx span{font-size:13px;color:#5E6B85}
.plan-card-go{flex:none;width:32px;height:32px;border-radius:50%;background:#F28C28;color:#fff;display:grid;place-items:center;font-weight:800}
.plan-card:hover .plan-card-go{background:#E07B12}
[dir=rtl] .plan-card-go{transform:scaleX(-1)}
.card-top>*{min-width:0}.card-top .badge{max-width:100%;overflow:hidden;text-overflow:ellipsis}

/* 2026-10-12k city photo slideshow: the next photo fades in over the current one (both absolutely positioned, so no layout shift) */
.ss-img{opacity:0;transition:opacity .8s ease}
.ss-img.ss-on{opacity:1}
@media (prefers-reduced-motion: reduce){.ss-img{transition:none}}

/* 2026-10-12l Attractions: Wikivoyage licence credit */
.wv-credit{margin:18px 0 4px;font-size:12px;color:#6b7690;text-align:center}.wv-credit a{color:inherit;text-decoration:underline}

/* gabbai landing page (2026-10-12m) */
.gabbai-hero{padding:40px 0 34px}
.gabbai-hero h1{font-size:clamp(30px,6vw,52px);margin:10px 0 12px}
.gabbai-search{margin-top:22px;max-width:640px}
.gabbai-search label{display:block;font-weight:700;font-size:15px;color:var(--ink);margin-bottom:8px}
.gabbai-row{display:flex;gap:8px}
.gabbai-row input{flex:1;min-width:0;font:inherit;font-size:18px;padding:14px 16px;border:2px solid var(--navy,#0F1E3D);border-radius:12px;background:#fff;color:var(--ink)}
.gabbai-row input:focus{outline:3px solid var(--accent,#F28C28);outline-offset:1px}
.gabbai-row button{font-size:16px;padding:0 18px;border-radius:12px;white-space:nowrap}
.gabbai-steps{display:grid;gap:4px;margin:16px 0 0;padding:0 0 0 18px;color:var(--muted);font-size:14px}
.gabbai-steps li{padding-inline-start:2px}
[dir="rtl"] .gabbai-steps{padding:0 18px 0 0}
.gabbai-res{padding-top:22px}
.gabbai-status{color:var(--muted);margin:0 0 12px;min-height:1.4em}
.gabbai-list{list-style:none;margin:0;padding:0;display:grid;gap:10px;max-width:760px}
.gabbai-hit{display:grid;gap:3px;padding:14px 16px;background:#fff;border:1px solid var(--line);border-radius:12px;text-decoration:none;color:var(--ink)}
.gabbai-hit:hover,.gabbai-hit:focus-visible{border-color:var(--accent,#F28C28);box-shadow:0 2px 10px rgba(15,30,61,.08)}
.gabbai-name{font-weight:700;font-size:17px}
.gabbai-addr,.gabbai-town{font-size:14px;color:var(--muted)}
.gabbai-go{margin-top:6px;font-weight:700;font-size:14px;color:var(--accent-hover,#E07B12)}
.gabbai-missing{margin:22px 0 0}
.gabbai-back{margin:0 0 10px}
.gabbai-for{margin:0 0 14px;padding:12px 14px;background:var(--soft,#f6f6fb);border-radius:10px;font-size:15px}
.gabbai-for b{font-size:17px}
.gabbai-for small{color:var(--muted)}

/* WhatsApp chat button (2026-10-13): floating, stacked above the "Ask us" button; green only on the icon button itself */
.wa-fab{position:fixed;right:16px;bottom:76px;z-index:50;display:flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:50%;background:#25D366;color:#fff;box-shadow:0 10px 26px rgba(15,30,61,.28);text-decoration:none;transition:transform .15s ease}
.wa-fab:hover{transform:scale(1.06)}.wa-fab:focus-visible{outline:3px solid var(--orange,#F28C28);outline-offset:3px}
@media(max-width:680px){.wa-fab{right:12px;bottom:calc(max(14px,env(safe-area-inset-bottom)) + 58px);width:48px;height:48px}.wa-fab svg{width:26px;height:26px}.footer{padding-bottom:72px}}
[dir=rtl] .wa-fab{right:auto;left:16px}
@media(max-width:680px){[dir=rtl] .wa-fab{left:12px}}
html.ft-touring .wa-fab,body:has(.ask-panel:not([hidden])) .wa-fab{visibility:hidden}
@media print{.wa-fab{display:none!important}}

/* 2026-10-13 mockup: phone header in two rows. Row 1 = logo + language, row 2 = every menu tab (wraps, no scrolling) */
@media(max-width:680px){
.topbar{height:auto}
.topbar .topinner{flex-wrap:wrap;height:auto;align-items:center;column-gap:10px;row-gap:0;padding:8px 0 0}
.topbar .topinner>*{min-width:0}
.topbar .brand{order:1;margin-inline-end:auto}
.topbar .lang-menu{order:2;margin-inline-start:0}
.topbar .lang-menu span{display:inline}
.topbar .lang-menu select{max-width:110px;font-size:13px;padding:5px 8px}
.topbar .topinner nav,[dir=rtl] .topbar .topinner nav{order:3;flex:1 0 100%;max-width:none;margin:0;overflow:visible;white-space:normal;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;column-gap:16px;row-gap:9px;padding:9px 0 11px;border-top:1px solid color-mix(in srgb,#0F1E3D 8%,transparent)}
.topbar .topinner nav a{font-size:14px;line-height:1.35}
.topbar .topinner nav a:after{bottom:-3px}
.topbar .topinner nav a.nav-plan{order:0;padding:4px 12px}
.topbar .topnote{display:none}
}
@media(max-width:360px){.topbar .topinner nav{column-gap:12px}.topbar .topinner nav a{font-size:13px}}

/* 2026-10-13 Gitty: footer tagline sits right under the "FrumTrip" wordmark, left edge on the F, about as wide as the word.
   logo-dark.svg viewBox is 1200x372 starting at x=196,y=62; wordmark runs x 550.1 to 1391.6, descender bottom y 321.5. */
.footer-mark{--lh:72px;display:inline-block;direction:ltr;margin-bottom:6px}
.footer-mark .footer-logo{height:var(--lh);margin:0}
.footer .footer-tagline{margin:calc(var(--lh) * -0.245) 0 0 calc(var(--lh) * 0.9519);width:max-content;min-width:calc(var(--lh) * 2.2621);max-width:calc(100vw - 34px - var(--lh) * 0.9519);font-size:13.8px;line-height:1.25;letter-spacing:.01em}
[dir=rtl] .footer .footer-tagline{direction:rtl;text-align:right;margin-left:auto;margin-right:calc(var(--lh) * 0.0118)}

/* 2026-10-13g Mikvah.org credit (their required attribution, mikvah data only) */
.mo-credit{display:inline-flex;align-items:center;gap:7px;margin-top:10px;font-size:11px;color:#5d6a80;text-decoration:none;align-self:flex-start}.mo-credit img{height:20px;width:auto;display:block}.mo-credit:hover span{text-decoration:underline}.mo-section{margin:16px 0 4px;text-align:center}.mo-section .mo-credit{margin-top:0}

/* 2026-10-13 Gitty: compact listing cards (type, name, address, map pin; whole card opens details) + one certification select */
.listing-card.compact{min-height:0;padding:16px 16px 14px;gap:0;cursor:pointer;transition:box-shadow .15s ease,border-color .15s ease}
.listing-card.compact:hover,.listing-card.compact:focus-visible{border-color:var(--accent-tint);box-shadow:0 6px 18px rgba(15,30,61,.08);outline:none}
.listing-card.compact h3{font-size:19px}
.listing-card.compact .address{margin:8px 0 0}
.listing-card.compact .card-city{font-weight:650;color:var(--ink-2)}
.map-pin{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;background:var(--accent-soft);color:var(--accent-ink);border:1px solid var(--accent-tint)}
.map-pin:hover{background:var(--accent);color:#fff}
.dbl-check{font-size:11px;color:var(--muted);margin:8px 0 0;line-height:1.4}
.place-info .dbl-check{font-size:12px;margin:10px 0 0}
.hech-select{max-width:100%}
.list-tools select.hech-select{flex:1 1 260px}@media (max-width:640px){.list-tools select.hech-select{flex:1 1 100%}}
.mo-top{text-align:left;margin:4px 0 14px}
/* server-rendered page text (2026-10-14a SEO): shown only until the app renders */
.seo-static{padding:24px 16px 40px;line-height:1.5}.seo-static h1{font-size:1.6rem;margin:.4em 0}.seo-static h2{font-size:1.15rem;margin:1.2em 0 .4em}.seo-static ul{padding-left:1.2em}.seo-static li{margin:.2em 0}.seo-static .seo-cols{columns:2 160px}.seo-static dl div{display:flex;gap:8px}.seo-static dt{font-weight:600}.seo-static dd{margin:0}.seo-crumbs{font-size:.9rem;opacity:.8}
/* 2026-10-14d: identical card arrows (same icon, size, colour, spot) in LTR and RTL */
.directory-card .arrow{float:right;display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;line-height:0;font-size:0;margin:2px 0 0 10px;color:var(--gold)}.directory-card .arrow svg{width:18px;height:18px;display:block}[dir=rtl] .directory-card .arrow{float:left;margin:2px 10px 0 0}[dir=rtl] .directory-card .arrow svg{transform:scaleX(-1)}
/* 2026-10-15a (Gitty: "flashes a page with plain text"): the crawlable SEO block stays in the HTML but is not painted while the app boots (the app replaces it);
   shown after 8 s if the app never runs, and at once without JavaScript (<noscript> rule in index.html) */
.seo-static{visibility:hidden;animation:ft-seo-show 0s linear 8s forwards}@keyframes ft-seo-show{to{visibility:visible}}
