:root{
  --bg:#f4efe6;--paper:#fffdf9;--ink:#171411;--muted:#5d564d;--line:#d9d0c2;
  --accent:#a83c1f;--accent-ink:#8f3319;--accent2:#ecbf68;--on-accent2:#241708;
  --shadow:0 18px 44px -32px #33261e80;--focus:#0b57d0;
  --callout-hi:#fff6df;--callout-hi-line:#d8a83c;
  --callout-warn:#fdeee2;--callout-warn-line:#c05a22;
  --callout-honest:#eef3f8;--callout-honest-line:#5b7fa6;
  --provenance:#edf5eb;--provenance-line:#7ea273;--provenance-ink:#1f5024;
  font-family:Inter,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
  color:var(--ink);background:var(--bg);color-scheme:light}
html[data-theme=dark]{
  --bg:#0b0a09;--paper:#12100e;--ink:#f3efe9;--muted:#b3aa9c;--line:#3a342c;
  --accent:#f0a184;--accent-ink:#f3b79f;--accent2:#ecbf68;--on-accent2:#241708;
  --shadow:0 18px 44px -30px #000;--focus:#9cc3ff;
  --callout-hi:#2a2313;--callout-hi-line:#8a6c1f;
  --callout-warn:#301a10;--callout-warn-line:#a4552b;
  --callout-honest:#141b22;--callout-honest-line:#43617f;
  --provenance:#141d15;--provenance-line:#3f6039;--provenance-ink:#a8d3a0;
  color-scheme:dark}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink)}
html[data-theme=light] body{background:linear-gradient(180deg,#f9e8cf 0,#f4efe6 340px)}
a{color:inherit}
:focus-visible{outline:3px solid var(--focus);outline-offset:2px;border-radius:6px}
.skip{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0}
.skip:focus{width:auto;height:auto;margin:0;overflow:visible;clip:auto;clip-path:none;white-space:normal;inset-inline-start:0;top:0;padding:12px 16px;border:1px solid var(--line);border-radius:0 0 12px 0;background:var(--paper);color:var(--ink);font-weight:850;z-index:1200}
.top{max-width:900px;margin:auto;padding:14px 20px;display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.brand,.crumb{text-decoration:none;font-weight:850}
.brand span{color:var(--accent-ink)}
.crumb{font-size:.9rem;color:var(--muted)}
.top .spacer{flex:1 1 auto;min-width:8px}
.langs{display:flex;border:1px solid var(--line);border-radius:999px;overflow:hidden;background:var(--paper)}
.langs button{border:0;background:transparent;padding:8px 12px;font-weight:850;font-size:.9rem;cursor:pointer;color:var(--ink)}
.langs button[aria-pressed=true]{background:var(--ink);color:var(--paper)}
.theme{border:1px solid var(--line);border-radius:999px;background:var(--paper);color:var(--ink);padding:8px 12px;font-weight:850;font-size:.9rem;cursor:pointer}
.page{max-width:820px;margin:auto;padding:10px 20px 72px}
.breadcrumbs{margin:2px 0 14px;font-size:.86rem;color:var(--muted)}
.breadcrumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:8px;padding:0;margin:0}
.breadcrumbs li+li:before{content:"/";margin-inline-end:8px;color:var(--line)}
.breadcrumbs a{font-weight:750}
.hero{position:relative;min-height:400px;border-radius:30px;overflow:hidden;box-shadow:var(--shadow);display:flex;align-items:flex-end}
.hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 12%,#130c07f2 100%)}
.hero-copy{position:relative;z-index:1;color:#fff;padding:34px;max-width:660px}
.hero-copy p{color:#f2ece4}
.eyebrow{text-transform:uppercase;letter-spacing:.11em;font-weight:850;font-size:.78rem;margin:0}
.hero h1,.tour-hero h1{font-size:clamp(2rem,6vw,3.9rem);line-height:1.02;margin:.15em 0}
.hero p,.tour-hero>p{font-size:1.08rem;line-height:1.65;margin:0;max-width:64ch}
.hero-credit{margin:8px 0 0;font-size:.78rem;color:var(--muted)}
.section-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:36px 0 14px}
.section-head h2{margin:0;font-size:1.28rem}
.section-head>span{font-size:.82rem;font-weight:850;background:var(--ink);color:var(--paper);border-radius:999px;padding:5px 10px}
.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.card{display:block;background:var(--paper);border:1px solid var(--line);border-radius:20px;overflow:hidden;text-decoration:none;box-shadow:var(--shadow);transition:.2s}
.card:hover{transform:translateY(-2px);border-color:var(--accent)}
.card>img{width:100%;height:180px;object-fit:cover}
.card>span{display:block;padding:18px}
.card strong{font-size:1.2rem}
.card small{display:block;color:var(--accent-ink);font-weight:850;margin:6px 0}
.card p{margin:0;color:var(--muted);line-height:1.55}
.tour-hero{padding:44px 0 20px}
.facts{display:flex;flex-wrap:wrap;gap:9px;margin:22px 0}
.facts span{background:var(--paper);border:1px solid var(--line);border-radius:999px;padding:8px 13px;font-size:.92rem}
.primary,.planner a{display:inline-block;background:var(--ink);color:var(--paper);text-decoration:none;font-weight:900;border-radius:13px;padding:14px 19px;font-size:1rem;border:0;cursor:pointer}
.navlaunch{appearance:none;font-size:1rem}
.navnote{font-size:.94rem;color:var(--muted);margin-top:10px;line-height:1.6}
.warning,.highlight-box,.honest,.provenance,.tips{border-radius:18px;padding:18px;margin:22px 0;line-height:1.62}
.warning{background:var(--callout-warn);border:1px solid var(--callout-warn-line);border-inline-start:6px solid var(--callout-warn-line)}
.honest{background:var(--callout-honest);border:1px solid var(--callout-honest-line);border-inline-start:6px solid var(--callout-honest-line)}
.honest p,.warning p{margin:7px 0 0}
.provenance{background:var(--provenance);border:1px solid var(--provenance-line)}
.provenance p{margin:7px 0 0}
.provenance a{font-weight:850;color:var(--provenance-ink)}
.provenance .sources{display:flex;flex-wrap:wrap;gap:6px 12px;font-size:.9rem}
.toc{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:16px 18px;margin:22px 0}
.toc ul{list-style:none;display:flex;flex-wrap:wrap;gap:8px 14px;padding:0;margin:0}
.toc a{font-weight:800;font-size:.94rem;color:var(--accent-ink);text-decoration:none;border-bottom:1px solid transparent}
.toc a:hover{border-bottom-color:currentColor}
#map{position:relative;height:420px;border-radius:22px;border:1px solid var(--line);overflow:hidden;box-shadow:var(--shadow)}
.map-hint{position:absolute;inset:0;z-index:1200;display:flex;align-items:center;justify-content:center;pointer-events:none;background:#0000001f}
.map-hint span{background:#000000b8;color:#fff;border-radius:999px;padding:9px 15px;font-size:.95rem;font-weight:850;line-height:1.3;max-width:88%;text-align:center}
.map-note{font-size:.88rem;color:var(--muted);line-height:1.6}
.leaflet-container{background:var(--paper)}
.leaflet-control-zoom a,.leaflet-control-locate a{color:#171411!important}
.leaflet-bar a:focus-visible{outline:3px solid var(--focus);outline-offset:1px}
.marker-num{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--accent);color:#fff;font-weight:900;font-size:.9rem;border:2px solid #fff;box-shadow:0 2px 6px #0006}
html[data-theme=dark] .marker-num{color:#241708;border-color:#12100e}
.stops{list-style:none;padding:0;margin:0;display:grid;gap:14px}
.stop{display:grid;grid-template-columns:44px 1fr;gap:14px;background:var(--paper);border:1px solid var(--line);border-radius:20px;padding:18px;scroll-margin-top:20px}
.num{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--accent);color:#fff;font-weight:900}
html[data-theme=dark] .num{color:#241708}
.stop h3{margin:2px 0 10px;font-size:1.24rem;line-height:1.25}
.stop p{margin:0 0 10px;line-height:1.65}
.stop .orient{color:var(--ink);font-weight:650}
.stop .hist,.stop .see{color:var(--muted)}
.stop .highlight{background:var(--callout-hi);border:1px solid var(--callout-hi-line);border-radius:14px;padding:12px 14px}
.stop .warning{background:var(--callout-warn);border:1px solid var(--callout-warn-line);border-inline-start:6px solid var(--callout-warn-line);border-radius:14px;padding:12px 14px;margin:0 0 10px}
.stop-links{display:flex;flex-wrap:wrap;gap:8px 18px;margin:0 0 10px}
.stop-maps,.stop-official{display:inline-block;font-size:.92rem;font-weight:850;color:var(--accent-ink)}
.stop-photo{margin:0 0 12px}
.stop-photo img{width:100%;border-radius:14px;display:block;background:var(--bg)}
.stop-photo .credit{margin:6px 0 0;font-size:.8rem;color:var(--muted)}
.stop-photo figcaption{margin-top:4px;font-size:.9rem;color:var(--muted);line-height:1.55}
.ticket{background:var(--callout-hi);border:1px solid var(--callout-hi-line);border-radius:14px;padding:14px;margin:12px 0 0}
.ticket h4{margin:0 0 8px;font-size:1.02rem}
.ticket .price,.ticket .rating,.food .rating{display:inline-block;font-size:.86rem;font-weight:850;background:var(--paper);border:1px solid var(--line);border-radius:999px;padding:4px 10px;margin:0 0 10px;margin-inline-end:8px}
.ticket .buy{display:inline-block;background:var(--accent2);color:var(--on-accent2);text-decoration:none;font-weight:900;border-radius:12px;padding:11px 16px}
.food{list-style:none;padding:0;margin:12px 0 0;display:grid;gap:10px}
.food li{background:var(--bg);border:1px solid var(--line);border-radius:14px;padding:12px 14px}
.food li>a{font-weight:850;color:var(--accent-ink);margin-inline-end:8px}
.food p{margin:6px 0 0;color:var(--muted);font-size:.94rem;line-height:1.6}
.tips{background:var(--paper);border:1px solid var(--line);padding:6px 22px 20px}
.tips ul,.day-items ul{padding-inline-start:20px;margin:0;display:grid;gap:10px;line-height:1.65}
.day-items{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:6px 22px 20px;margin:22px 0}
.day-items ul{list-style:none;padding:0}
.day-items li{background:var(--bg);border:1px solid var(--line);border-radius:14px;padding:12px 14px}
.day-items a{font-weight:850;color:var(--accent-ink);text-decoration:none}
.planner{background:var(--ink);color:var(--paper);border-radius:24px;padding:26px;margin-top:34px}
.planner h2{margin:0 0 8px}
.planner p{margin:0;line-height:1.6}
html[data-theme=light] .planner p{color:#e7e0d6}
html[data-theme=dark] .planner p{color:#4a443c}
.planner a{background:var(--accent2);color:var(--on-accent2)}
.compact{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}
.tour-chat{background:var(--paper);border:1px solid var(--line);border-radius:20px;padding:22px;margin-top:22px}
.tour-chat h2{margin:0 0 5px}
.tour-chat>p{color:var(--muted);margin:0 0 14px;line-height:1.6}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 14px}
.chips button{border:1px solid var(--line);background:var(--bg);color:var(--ink);border-radius:999px;padding:8px 13px;font:inherit;font-size:.9rem;cursor:pointer}
.chips button:hover{border-color:var(--accent)}
.chatrow{display:flex;gap:8px;flex-wrap:wrap}
.chatrow input{min-width:0;flex:1 1 220px;border:1px solid var(--line);border-radius:12px;padding:13px;font:inherit;background:var(--bg);color:var(--ink)}
.chatrow button{border:0;border-radius:12px;padding:12px 18px;background:var(--ink);color:var(--paper);font-weight:850;cursor:pointer}
#chatLog{white-space:pre-wrap;line-height:1.6;margin-top:14px}
.credits{margin-top:12px}
.credits p{margin:4px 0}
footer{border-top:1px solid var(--line);margin-top:40px;padding-top:20px;color:var(--muted);font-size:.84rem;line-height:1.65}
footer .disclosure{color:var(--ink);max-width:74ch}
footer p{margin:6px 0}
footer a{font-weight:750}
html[lang=en] [data-he],html[lang=he] [data-en]{display:none!important}
@media(max-width:620px){
 .page{padding-inline:14px}
 .hero{min-height:360px;border-radius:22px}
 .hero-copy{padding:22px}
 .cards{grid-template-columns:1fr}
 #map{height:330px}
 .stop{grid-template-columns:34px 1fr;gap:10px;padding:15px}
 .num{width:30px;height:30px;font-size:.9rem}
 .compact a{margin-top:12px}
 .tour-hero{padding-top:28px}
}
@media(prefers-reduced-motion:reduce){
 *,*:before,*:after{transition:none!important;animation:none!important;scroll-behavior:auto!important}
 .card:hover{transform:none}
}