/* במזרח — components.css. נגזר מ-docs/prototypes, ערכים רק מ-tokens.css (נאכף: tests/css-lint.js). אפס הצללות.
   מפת הרכיבים וההיררכיה: docs/design-system.md. breakpoints (980/640) = --bp-md/--bp-sm; media queries לא קוראים var. */

/* ---- כותרת ---- */
.site-header { border-bottom: var(--border); background: var(--bg); position: sticky; top: 0; z-index: var(--z-header); }
.bar { display: flex; align-items: center; justify-content: space-between; height: var(--header-h); gap: var(--space-8); }
.logo { display: flex; align-items: center; color: var(--color-logo); }
.logo img { height: var(--logo-h); width: auto; border-radius: 0; }
.site-footer .logo img { height: var(--logo-h-sm); }
.logo:hover { text-decoration: none; }
nav.main ul { display: flex; gap: var(--gap-grid-wide); list-style: none; padding: 0; font-family: var(--font-head); font-size: var(--fs-md); font-weight: var(--weight-medium); }
nav.main a { color: var(--text); }
nav.main a:hover { color: var(--jade); }
.right { display: flex; align-items: center; gap: var(--gap-inline); }
.ib { width: var(--tap); height: var(--tap); border: var(--border); border-radius: var(--r-control); background: var(--bg); display: none; place-items: center; color: var(--text); }
.ib .icon { width: var(--icon-lg); height: var(--icon-lg); }
.mobile-nav { border-top: var(--border); background: var(--bg); }
.mobile-nav ul { list-style: none; padding: var(--space-3) 0; }
.mobile-nav a { display: block; padding: var(--space-5) 0; border-bottom: var(--border); font-family: var(--font-head); font-size: var(--fs-md); font-weight: var(--weight-medium); color: var(--text); }

/* ---- סקשנים ---- */
section { padding: var(--section-gap-lg) 0 0; scroll-margin-top: calc(var(--header-h) + var(--space-1)); }
.sh { display: flex; justify-content: space-between; align-items: baseline; gap: var(--space-6); margin-bottom: var(--space-8); }
.sh h2 { font-size: var(--fs-2xl); }
.sh p { font-size: var(--fs-md); color: var(--text-muted); margin-top: var(--space-1); max-width: var(--measure-sub); }
.more { font-family: var(--font-head); font-weight: var(--weight-medium); font-size: var(--fs-base); white-space: nowrap; }

/* ---- Hero (T1) ---- */
.hero { padding: var(--space-13) 0; }
.hero h1, .hero .lead { padding-inline: var(--space-1); }
.hgrid { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: var(--space-13); align-items: center; }
.hero h1 { margin-bottom: var(--space-6); }
.lead { font-size: var(--fs-lg); color: var(--text-muted); max-width: var(--measure); margin-bottom: var(--space-9); line-height: var(--lh-relaxed); }
.chips { display: flex; flex-wrap: wrap; gap: var(--space-3); }
.chip { font-family: var(--font-head); font-size: var(--fs-sm); border: var(--border); border-radius: var(--r-pill); padding: var(--space-2) var(--space-6); color: var(--text); }
.chip:hover { border-color: var(--jade); color: var(--jade); text-decoration: none; }
.mosaic { display: grid; grid-template-columns: 1.55fr 1fr; grid-template-rows: 1fr 1fr; gap: var(--space-4); height: var(--mosaic-h); }
.mosaic figure { position: relative; border-radius: var(--r-card); overflow: hidden; background: var(--jade-soft); }
.mosaic figure:first-child { grid-row: 1 / 3; }
.mosaic img, .mosaic .ph { width: 100%; height: 100%; object-fit: cover; border-radius: 0; }
.ph { display: grid; place-items: center; width: 100%; height: 100%; background: var(--jade-soft); color: var(--jade-mid); }
.ph .icon { width: 15%; height: 15%; min-width: var(--icon-lg); min-height: var(--icon-lg); }
.cap { position: absolute; bottom: var(--space-4); inset-inline-end: var(--space-4); background: var(--bg); font-family: var(--font-head); font-size: var(--fs-2xs); padding: var(--pad-chip); border-radius: var(--r-pill); }

/* ---- התראה ---- */
.alert { border-top: var(--border); border-bottom: var(--border); background: var(--jade-soft); margin-top: var(--space-11); }
.alert .wrap { display: flex; gap: var(--space-5); align-items: flex-start; padding-top: var(--space-6); padding-bottom: var(--space-6); }
.alert .icon { width: var(--icon-lg); height: var(--icon-lg); color: var(--jade-strong); margin-top: var(--space-1); }
.alert p { font-size: var(--fs-md); color: var(--jade-strong); }
.alert .m { font-family: var(--font-head); font-size: var(--fs-xs); margin-top: var(--space-0); }

/* ---- כרטיסי יעד ---- */
.dest { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-11) var(--space-9); }
.dest a { color: inherit; }
.dest a:hover { text-decoration: none; }
.dest a:hover h3 { color: var(--jade); }
.dest .img { position: relative; aspect-ratio: var(--ratio-card); border-radius: var(--r-card); overflow: hidden; background: var(--jade-soft); margin-bottom: var(--space-5); }
.dest .img img { width: 100%; height: 100%; object-fit: cover; border-radius: 0; }
.dest h3 { font-size: var(--fs-xl); margin-bottom: var(--space-0); }
.dest .tag { font-size: var(--fs-base); color: var(--text-muted); margin-bottom: var(--space-5); line-height: var(--lh-base); }
.facts { display: flex; flex-wrap: wrap; gap: var(--space-2) var(--space-7); font-family: var(--font-head); font-size: var(--fs-xs); color: var(--text-muted); border-top: var(--border); padding-top: var(--space-4); }
.facts b { font-weight: var(--weight-medium); color: var(--text); }
.empty { border: var(--line-w) dashed var(--line); border-radius: var(--r-card); padding: var(--space-11); text-align: center; color: var(--text-muted); font-family: var(--font-head); }

/* ---- תשובה ישירה + רצועת חודשים ---- */
.answer { background: var(--surface); border-radius: var(--r-card); padding: var(--space-8) var(--space-9); margin-bottom: var(--space-7); font-size: var(--fs-md); max-width: var(--measure-answer); }
.answer b { font-family: var(--font-head); }
.note { font-size: var(--fs-base); color: var(--text-muted); margin-top: var(--space-6); max-width: var(--measure-answer); }
.note b { color: var(--text); font-family: var(--font-head); }
.strip { border: var(--border); border-radius: var(--r-card); padding: var(--space-9); overflow-x: auto; direction: ltr; }
.strip > * { direction: rtl; }
.strip table { border-collapse: separate; border-spacing: var(--space-1); width: 100%; min-width: var(--strip-min); font-family: var(--font-head); table-layout: fixed; } /* fixed: 12 עמודות חודש ברוחב זהה (פאבל 13-09) */
.strip th { font-size: var(--fs-xs); font-weight: var(--weight-medium); color: var(--text-muted); text-align: center; padding-bottom: var(--space-1); }
.strip th.row { text-align: start; color: var(--text); font-size: var(--fs-base); white-space: nowrap; padding-inline-end: var(--space-5); width: var(--strip-label-w); overflow: hidden; text-overflow: ellipsis; }
.strip th.row span { display: block; font-size: var(--fs-2xs); color: var(--text-muted); font-weight: var(--weight-regular); }
.strip th.now { color: var(--jade); }
.strip td { height: var(--cell-h); border-radius: var(--r-xs); text-align: center; vertical-align: middle; }
.strip td .icon { width: var(--icon-xs); height: var(--icon-xs); vertical-align: middle; }
td.now { outline: var(--hairline) solid var(--text); outline-offset: var(--line-w); }
/* מקרא: אייקון Phosphor (אותו sprite כמו כל האתר) + תווית, מיושרים למרכז (פאבל 13-09) */
.legend { display: flex; gap: var(--space-9); flex-wrap: wrap; align-items: center; margin-top: var(--space-6); font-family: var(--font-head); font-size: var(--fs-xs); color: var(--text-muted); }
.legend > span { display: inline-flex; align-items: center; gap: var(--space-2); }
.legend i { display: inline-grid; place-items: center; width: var(--icon-md); height: var(--icon-md); border-radius: var(--r-xs); font-style: normal; flex: none; }
.legend i .icon, .mark .icon { width: var(--icon-xs); height: var(--icon-xs); }
.legend .credit { margin-inline-start: auto; }
.legend .credit a { color: inherit; text-decoration: underline; text-underline-offset: var(--underline-offset); }

/* ---- רשימות Hubs ---- */
.split { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: var(--space-13); }
.list { list-style: none; border-top: var(--border); padding: 0; }
.list a { display: flex; align-items: center; gap: var(--space-6); padding: var(--space-6) var(--space-2); border-bottom: var(--border); color: var(--text); }
.list a:hover { text-decoration: none; background: var(--surface); border-radius: var(--r-control); }
.list .icon { width: var(--icon-lg); height: var(--icon-lg); color: var(--jade); }
.list .t { font-family: var(--font-head); font-weight: var(--weight-medium); font-size: var(--fs-md); display: block; }
.list .d { font-size: var(--fs-sm); color: var(--text-muted); display: block; line-height: var(--lh-base); }
.list .chev { margin-inline-start: auto; width: var(--icon-sm); height: var(--icon-sm); color: var(--text-muted); }

/* ---- תגיות: badge (סטטוס), stamp (חותמת אימות: תאריך מספרי, שורה אחת, לעולם לא נשברת) ---- */
.badge { display: inline-block; font-family: var(--font-head); font-size: var(--fs-2xs); font-weight: var(--weight-medium); padding: var(--pad-chip); border-radius: var(--r-pill); white-space: nowrap; }
.b-ok { background: var(--jade-soft); color: var(--jade-strong); }
.b-need { background: var(--jade); color: var(--color-action-contrast); }
.b-chk { background: var(--bg); color: var(--text-muted); border: var(--line-w) dashed var(--text-muted); }
.stamp { display: inline-flex; align-items: center; gap: var(--space-2); background: var(--jade-soft); color: var(--jade-strong); font-family: var(--font-head); font-size: var(--fs-2xs); font-weight: var(--weight-medium); padding: var(--pad-chip); border-radius: var(--r-pill); white-space: nowrap; max-width: 100%; vertical-align: middle; }
.stamp .icon { width: var(--icon-xs); height: var(--icon-xs); }
.stamp--muted { background: var(--surface); color: var(--text-muted); }

/* ---- פוסטים / עדכונים ---- */
.posts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-9); }
.post { border-top: var(--hairline) solid var(--text); padding-top: var(--space-6); }
.kind { font-family: var(--font-head); font-size: var(--fs-xs); color: var(--jade); font-weight: var(--weight-medium); }
.post h3 { font-size: var(--fs-lg); margin: var(--space-2) 0 var(--space-3); line-height: var(--lh-snug); }
.post h3 a { color: var(--text); }
.post p { font-size: var(--fs-base); color: var(--text-muted); line-height: var(--lh-relaxed); }
.by { font-family: var(--font-head); font-size: var(--fs-xs); color: var(--text-muted); margin-top: var(--space-5); }

/* ---- אמון ---- */
.tgrid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-9); }
.tcard { border: var(--border); border-radius: var(--r-card); padding: var(--space-9); }
.tcard .icon { width: var(--icon-lg); height: var(--icon-lg); color: var(--jade); margin-bottom: var(--space-4); }
.tcard h3 { font-size: var(--fs-md); font-weight: var(--weight-medium); margin-bottom: var(--space-2); }
.tcard p { font-size: var(--fs-sm); color: var(--text-muted); line-height: var(--lh-relaxed); }

/* ---- ניוזלטר ---- */
.news { margin-top: var(--section-gap-lg); background: var(--surface); border-top: var(--border); border-bottom: var(--border); padding: 0; }
.news .wrap { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: var(--space-12); align-items: center; padding-top: var(--space-13); padding-bottom: var(--space-13); }
.news h2 { margin-bottom: var(--space-3); }
.news p { color: var(--text-muted); }
.news form { display: flex; gap: var(--space-3); }
.news input { flex: 1; min-width: 0; border: var(--border-strong); border-radius: var(--r-control); padding: var(--space-6); font-size: var(--fs-md); background: var(--bg); }
.btn { border: 0; border-radius: var(--r-control); background: var(--color-action); color: var(--color-action-contrast); font-family: var(--font-head); font-weight: var(--weight-medium); font-size: var(--fs-md); padding: 0 var(--space-9); min-height: var(--control-h); display: inline-flex; align-items: center; gap: var(--space-3); }
.btn:hover { background: var(--color-action-hover); color: var(--color-action-contrast); text-decoration: none; }
.btn--ghost { background: var(--bg); color: var(--jade); border: var(--border); }
.news form { flex-wrap: wrap; }
.news .consent { flex-basis: 100%; display: flex; align-items: flex-start; gap: var(--space-3); font-size: var(--fs-xs); color: var(--text-muted); line-height: var(--lh-base); margin-top: var(--space-2); }
.news .consent input { width: var(--icon-sm); height: var(--icon-sm); margin-top: var(--space-0); accent-color: var(--jade); flex: none; }
.news .consent a { text-decoration: underline; text-underline-offset: var(--underline-offset); }
.news small { display: block; margin-top: var(--space-3); color: var(--text-muted); }
/* טופס ליד (ניוזלטר / צור קשר) — partials/lead-form.php; שדות ראשיים בשורה, הסכמה והודעה ברוחב מלא */
.lead-form { display: flex; flex-wrap: wrap; gap: var(--space-3); }
.lead-form .field { display: flex; flex-direction: column; gap: var(--space-2); flex: 1 1 var(--col-min); min-width: 0; }
.lead-form .field label { font-family: var(--font-head); font-size: var(--fs-xs); color: var(--text-muted); }
.lead-form input:not([type=checkbox]), .lead-form select, .lead-form textarea { width: 100%; border: var(--border-strong); border-radius: var(--r-control); padding: 0 var(--space-6); min-height: var(--control-h); font-size: var(--fs-md); background: var(--bg); }
.lead-form textarea { padding-block: var(--space-4); min-height: calc(var(--control-h) * 3); resize: vertical; }
.lead-form .btn { align-self: flex-end; }
.lead-form .consent { flex-basis: 100%; display: flex; align-items: flex-start; gap: var(--space-3); font-size: var(--fs-xs); color: var(--text-muted); line-height: var(--lh-base); margin-top: var(--space-2); }
.lead-form .consent input { width: var(--icon-sm); height: var(--icon-sm); margin-top: var(--space-0); accent-color: var(--jade); flex: none; }
.lead-form .consent a { text-decoration: underline; text-underline-offset: var(--underline-offset); }
.lead-form .form-msg { flex-basis: 100%; margin: 0; padding: var(--space-4) var(--space-6); border-radius: var(--r-control); font-family: var(--font-head); font-size: var(--fs-sm); }
.lead-form .form-msg.is-ok { background: var(--tone-good-bg); color: var(--tone-good-fg); }
.lead-form .form-msg.is-err { background: var(--tone-poor-bg); color: var(--text); }
.lead-form--contact .field { flex-basis: 100%; }
.contact-box { background: var(--surface); border: var(--border); border-radius: var(--r-card); padding: var(--space-9); align-self: start; }
.contact-box h2 { margin-bottom: var(--space-6); }

/* ---- פוטר ---- */
.site-footer { margin-top: var(--section-gap-lg); border-top: var(--border); padding: var(--space-12) 0 var(--space-10); }
.fgrid { display: grid; grid-template-columns: 2fr repeat(3, 1fr); gap: var(--space-11); }
.site-footer .fh { font-size: var(--fs-sm); font-weight: var(--weight-medium); color: var(--text-muted); margin-bottom: var(--space-5); letter-spacing: 0; }
.site-footer ul { list-style: none; padding: 0; font-size: var(--fs-base); line-height: var(--lh-list); }
.site-footer ul a { color: var(--text); }
.fabout { margin-top: var(--space-3); max-width: var(--measure-foot); font-size: var(--fs-sm); color: var(--text-muted); line-height: var(--lh-body); }
.fine { border-top: var(--border); margin-top: var(--space-12); padding-top: var(--space-8); font-size: var(--fs-xs); color: var(--text-muted); display: flex; justify-content: space-between; gap: var(--space-6); flex-wrap: wrap; }

/* ---- עמוד פנימי: פירורים, כותרת, byline, גלריה ---- */
.crumbs { font-family: var(--font-head); font-size: var(--fs-sm); color: var(--text-muted); padding: var(--space-8) 0 0; }
.crumbs ol { list-style: none; padding: 0; display: flex; flex-wrap: wrap; gap: var(--space-2); }
.crumbs a { color: var(--text-muted); }
.crumbs li + li::before { content: "/"; margin-inline-end: var(--space-2); }
.title { padding-block: var(--space-5) var(--space-10); } /* לא shorthand: .wrap.title שומר ריווח צדדי */
.title-grid { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: var(--space-12); align-items: end; }
.title h1 { margin-bottom: var(--space-5); }
.title .lead { margin-bottom: 0; max-width: var(--measure-lead); }
.byline { font-family: var(--font-head); font-size: var(--fs-sm); color: var(--text-muted); display: flex; align-items: center; gap: var(--space-4); margin-top: var(--space-7); flex-wrap: wrap; }
.byline a, .team p a, .note a, .answer a { text-decoration: underline; text-underline-offset: var(--underline-offset); }
.avatar { width: var(--avatar); height: var(--avatar); border-radius: var(--r-round); background: var(--jade-soft); color: var(--jade-strong); display: grid; place-items: center; font-weight: var(--weight-bold); font-size: var(--fs-xs); flex: none; }
.gallery { display: grid; grid-template-columns: 2fr 1fr; grid-template-rows: 1fr 1fr; gap: var(--space-4); height: var(--gallery-h); margin-bottom: var(--space-3); }
/* hero מקצה לקצה לעמודי יעד/מאמר */
.hero-bleed { position: relative; aspect-ratio: var(--ratio-hero-wide); max-height: var(--hero-max-h); background: var(--jade-soft); overflow: hidden; margin-block: var(--space-6) var(--space-11); } /* ריווח אחיד מתחת לתמונה הראשית בכל המכשירים (פאבל 13-09) */
.hero-bleed + .wrap > .quick, .hero-bleed + .wrap > .module:first-child { margin-top: 0; }
.hero-bleed img { width: 100%; height: 100%; object-fit: cover; border-radius: 0; }
.hero-bleed .cap { bottom: var(--space-6); inset-inline-end: var(--space-11); }
.gallery figure { position: relative; border-radius: var(--r-card); overflow: hidden; background: var(--jade-soft); }
.gallery figure:first-child { grid-row: 1 / 3; }
.gallery figure:only-child { grid-column: 1 / -1; grid-row: 1 / 3; }
.gallery img { width: 100%; height: 100%; object-fit: cover; border-radius: 0; }

/* ---- תקציר מהיר ---- */
.quick { background: var(--surface); border-radius: var(--r-card); padding: var(--pad-card); margin-top: var(--space-11); }
.quick h2 { font-size: var(--fs-base); font-weight: var(--weight-medium); color: var(--text-muted); margin-bottom: var(--space-7); letter-spacing: 0; }
.qgrid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--space-9); }
.qi { display: flex; gap: var(--space-5); align-items: flex-start; }
.qi .icon { width: var(--icon-lg); height: var(--icon-lg); color: var(--jade); margin-top: var(--space-1); }
.qi .k { font-size: var(--fs-xs); color: var(--text-muted); font-family: var(--font-head); display: block; line-height: var(--lh-base); }
.qi .v { font-family: var(--font-head); font-weight: var(--weight-medium); font-size: var(--fs-md); display: block; line-height: var(--lh-base); }
.qi .v, .qi .k { overflow-wrap: anywhere; }
.quick .note { margin-top: var(--space-6); }

/* ---- ניווט משנה ---- */
.subnav { position: sticky; top: var(--header-h); z-index: var(--z-sticky); background: var(--bg); border-top: var(--border); border-bottom: var(--border); margin-top: var(--space-11); }
.subnav ul { display: flex; gap: var(--space-2); list-style: none; padding: var(--space-4) 0; overflow-x: auto; scrollbar-width: none; }
.subnav ul::-webkit-scrollbar { display: none; }
.subnav a { font-family: var(--font-head); font-size: var(--fs-base); font-weight: var(--weight-medium); color: var(--text); white-space: nowrap; padding: var(--pad-control); border-radius: var(--r-pill); }
.subnav a:hover { background: var(--surface); text-decoration: none; }
.subnav a[aria-current] { background: var(--jade); color: var(--color-action-contrast); }

/* ---- אזורים / ערים / למי מתאים ---- */
.regions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-8); }
.region { border: var(--border); border-radius: var(--r-card); overflow: hidden; display: flex; flex-direction: column; }
.region:hover { border-color: var(--jade-mid); }
.region .img { aspect-ratio: var(--ratio-region); background: var(--jade-soft); }
.region .img img { width: 100%; height: 100%; object-fit: cover; border-radius: 0; }
.region .body { padding: var(--space-8) var(--space-9) var(--space-9); }
.region h3 { font-size: var(--fs-xl); margin-bottom: var(--space-2); }
.region h3 a { color: var(--text); }
.region p { font-size: var(--fs-base); color: var(--text-muted); line-height: var(--lh-relaxed); margin-bottom: var(--space-6); }
.pill { display: inline-block; font-family: var(--font-head); font-size: var(--fs-xs); border: var(--border); border-radius: var(--r-pill); padding: var(--space-1) var(--space-5); color: var(--text); margin: 0 0 var(--space-2) var(--space-2); }
.pill:hover { border-color: var(--jade); color: var(--jade); text-decoration: none; }
.cities { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--space-8); }
.city a { color: inherit; }
.city a:hover { text-decoration: none; }
.city a:hover h3 { color: var(--jade); }
.city .img { aspect-ratio: var(--ratio-square); border-radius: var(--r-card); overflow: hidden; background: var(--jade-soft); margin-bottom: var(--space-5); }
.city .img img { width: 100%; height: 100%; object-fit: cover; border-radius: 0; }
.city h3 { font-size: var(--fs-lg); }
.city p { font-size: var(--fs-sm); color: var(--text-muted); line-height: var(--lh-base); }
.who { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-6); }
.wcard { border: var(--border); border-radius: var(--r-card); padding: var(--space-7) var(--space-8); }
.wcard .top { display: flex; align-items: center; gap: var(--space-4); margin-bottom: var(--space-4); }
.wcard .icon { width: var(--icon-lg); height: var(--icon-lg); color: var(--jade); }
.wcard h3 { font-size: var(--fs-md); font-weight: var(--weight-medium); }
.score { display: flex; gap: var(--space-1); margin-bottom: var(--space-4); }
.score i { width: var(--score-w); height: var(--score-h); border-radius: var(--r-xs); background: var(--line); }
.score i.on { background: var(--jade); }
.wcard p { font-size: var(--fs-sm); color: var(--text-muted); line-height: var(--lh-relaxed); }

/* ---- עמודים מעשיים (רשימה בעמוד מדינה) ---- */
.pgrid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-5) var(--space-8); }
.pgrid .list { border-top: 0; }

/* ---- FAQ / מקורות / צוות / המשך ---- */
details.faq-item { border-bottom: var(--border); }
details.faq-item summary { font-family: var(--font-head); font-weight: var(--weight-medium); font-size: var(--fs-lg); padding: var(--space-7) 0; cursor: pointer; list-style: none; display: flex; justify-content: space-between; gap: var(--space-6); align-items: center; }
details.faq-item summary::-webkit-details-marker { display: none; }
details.faq-item summary::after { content: ""; flex: 0 0 var(--space-5); width: var(--space-5); height: var(--space-5); border-inline-end: var(--hairline) solid var(--text-muted); border-bottom: var(--hairline) solid var(--text-muted); transform: rotate(45deg); margin-top: calc(-1 * var(--space-2)); }
details.faq-item[open] summary::after { transform: rotate(-135deg); margin-top: var(--space-1); }
details.faq-item .ans { padding: 0 0 var(--space-8); font-size: var(--fs-md); color: var(--text-muted); max-width: var(--measure-faq); }
.sources { margin-top: var(--space-10); border: var(--border); border-radius: var(--r-card); padding: var(--space-2) var(--space-9); }
.sources summary { font-family: var(--font-head); font-weight: var(--weight-medium); font-size: var(--fs-md); padding: var(--space-5) 0; cursor: pointer; }
.sources ol { margin: 0 0 var(--space-7); padding-inline-start: var(--list-indent); font-size: var(--fs-base); color: var(--text-muted); line-height: var(--lh-loose); }
.sources .tier { font-family: var(--font-head); font-size: var(--fs-2xs); color: var(--jade-strong); background: var(--jade-soft); border-radius: var(--r-pill); padding: 0 var(--space-3); margin-inline-start: var(--space-2); }
.team { margin-top: var(--space-14); background: var(--surface); border-radius: var(--r-card); padding: var(--pad-card); display: flex; gap: var(--space-7); align-items: flex-start; }
.team .avatar { width: var(--avatar-lg); height: var(--avatar-lg); font-size: var(--fs-md); background: var(--bg); }
.team h3 { font-size: var(--fs-lg); font-weight: var(--weight-medium); }
.team p { font-size: var(--fs-base); color: var(--text-muted); line-height: var(--lh-relaxed); margin-top: var(--space-1); }
.team .upd { font-family: var(--font-head); font-size: var(--fs-xs); color: var(--text-muted); margin-top: var(--space-4); }
.next { margin-top: var(--space-12); }
.next h2 { font-size: var(--fs-lg); font-weight: var(--weight-medium); margin-bottom: var(--space-5); }
.nx { display: flex; flex-wrap: wrap; gap: var(--space-3); }
.nx a { font-family: var(--font-head); font-size: var(--fs-sm); border: var(--border); border-radius: var(--r-pill); padding: var(--space-3) var(--space-6); color: var(--text); }
.nx a:hover { border-color: var(--jade); color: var(--jade); text-decoration: none; }

/* ---- מודולים בעמוד מעשי ---- */
.module { margin-top: var(--space-11); }
.module h2 { margin-bottom: var(--space-6); }
.tiers { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-6); }
.tier { border: var(--border); border-radius: var(--r-card); padding: var(--space-8) var(--space-9); }
.tier .lvl { font-family: var(--font-head); font-size: var(--fs-xs); color: var(--text-muted); font-weight: var(--weight-medium); }
.tier .price { font-family: var(--font-head); font-size: var(--fs-2xl); font-weight: var(--weight-bold); margin: var(--space-1) 0; }
.tier .per { font-family: var(--font-head); font-size: var(--fs-xs); color: var(--text-muted); margin-bottom: var(--space-5); }
.tier ul { list-style: none; padding: 0; font-size: var(--fs-sm); color: var(--text-muted); line-height: var(--lh-loose); }
.kv { display: grid; grid-template-columns: repeat(auto-fill, minmax(var(--col-min), 1fr)); gap: var(--space-6) var(--space-9); border-top: var(--border); padding-top: var(--space-6); }
.kv .k { font-family: var(--font-head); font-size: var(--fs-xs); color: var(--text-muted); display: block; }
.kv .v { font-family: var(--font-head); font-weight: var(--weight-medium); font-size: var(--fs-md); display: block; }
.places { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-6); }
.place { border: var(--border); border-radius: var(--r-card); padding: var(--space-7) var(--space-8); }
.place h3 { font-size: var(--fs-md); font-weight: var(--weight-medium); }
.place .en { font-family: var(--font-head); font-size: var(--fs-2xs); color: var(--text-muted); display: block; margin-bottom: var(--space-3); direction: ltr; text-align: end; }
.place p { font-size: var(--fs-sm); color: var(--text-muted); line-height: var(--lh-relaxed); }
.place .meta .book { color: var(--color-link); font-weight: var(--weight-medium); }
.place .meta { display: flex; flex-wrap: wrap; gap: var(--space-2) var(--space-5); font-family: var(--font-head); font-size: var(--fs-2xs); color: var(--text-muted); margin-top: var(--space-4); border-top: var(--border); padding-top: var(--space-3); }

/* ---- מפה סכמטית של אזור (T4) ---- */
.region-map { margin: 0 0 var(--space-9); }
.region-map svg { width: 100%; height: auto; display: block; font-family: var(--font-head); }
.region-map .map-sea { fill: var(--surface); }
.region-map .map-land { fill: var(--jade-soft); stroke: var(--jade-mid); stroke-width: var(--hairline); stroke-linejoin: round; }
.region-map .map-frame { fill: none; stroke: var(--line); stroke-width: var(--line-w); }
.region-map .map-dot { fill: var(--bg); stroke: var(--jade); stroke-width: var(--hairline); }
.region-map .map-dot--live { fill: var(--jade); }
.region-map a:hover .map-dot { fill: var(--jade-strong); }
.region-map .map-label { fill: var(--text); font-size: var(--fs-sm); }
.region-map .note { margin-top: var(--space-3); font-size: var(--fs-xs); }

/* ---- מחשבון באט↔שקל (ADR-010) ---- */
.fx-calc { display: flex; align-items: flex-end; gap: var(--space-5); flex-wrap: wrap; margin-bottom: var(--space-7); }
.fx-field { display: flex; flex-direction: column; gap: var(--space-2); flex: 1 1 var(--col-min); }
.fx-field label { font-family: var(--font-head); font-size: var(--fs-xs); color: var(--text-muted); }
.fx-field input { border: var(--border-strong); border-radius: var(--r-control); padding: 0 var(--space-6); min-height: var(--control-h); font-family: var(--font-head); font-size: var(--fs-xl); font-weight: var(--weight-medium); background: var(--bg); width: 100%; }
.fx-eq { color: var(--jade); padding-bottom: var(--space-5); }
.fx-eq .icon { width: var(--icon-lg); height: var(--icon-lg); }
.fx-table td:nth-child(even) { font-family: var(--font-head); font-weight: var(--weight-medium); }

/* ---- 404 / Hub ---- */
.p404 { padding: var(--section-gap-lg) 0; text-align: center; }
.p404 h1 { margin-bottom: var(--space-5); }
.p404 p { margin: 0 auto var(--space-9); color: var(--text-muted); }
.hub-head { padding: var(--space-12) 0 var(--space-6); }
.hub-head p { color: var(--text-muted); max-width: var(--measure-sub); margin-top: var(--space-3); }

/* ---- רספונסיב (--bp-md = 980, --bp-sm = 640) ---- */
@media (max-width: 980px) {
  nav.main { display: none; }
  .ib { display: grid; }
  .hgrid, .split, .news .wrap, .title-grid, .regions, .pgrid { grid-template-columns: 1fr; gap: var(--space-11); }
  .dest, .posts, .tgrid, .cities, .who, .places, .qgrid, .tiers { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .fgrid { grid-template-columns: 1fr 1fr; }
  .mosaic, .gallery { height: var(--mosaic-h-md); }
}
@media (max-width: 640px) {
  .bar { height: var(--header-h-sm); gap: var(--space-4); }
  .logo img { height: var(--logo-h-sm); }
  .subnav { top: var(--header-h-sm); }
  .hero { padding: var(--space-11) 0; }
  .lead { font-size: var(--fs-md); }
  .mosaic, .gallery { height: var(--mosaic-h-sm); gap: var(--space-2); }
  .hero-bleed { aspect-ratio: var(--ratio-hero-sm); max-height: var(--hero-max-h-sm); }
  .hero-bleed .cap { inset-inline-end: var(--space-9); }
  .title { padding-block: var(--space-5) var(--space-8); }
  section { padding-top: var(--section-gap); }
  .sh { flex-direction: column; gap: var(--space-1); }
  .dest { grid-template-columns: 1fr 1fr; gap: var(--space-9) var(--space-5); }
  .dest h3 { font-size: var(--fs-lg); }
  .dest .tag { font-size: var(--fs-sm); }
  .facts { font-size: var(--fs-2xs); gap: var(--space-1) var(--space-4); }
  .posts, .tgrid, .who, .places, .tiers { grid-template-columns: 1fr; }
  .cities { grid-template-columns: 1fr 1fr; }
  .strip { padding: var(--space-6); }
  .quick { padding: var(--space-8); }
  .qgrid { gap: var(--space-6); }
  .answer { padding: var(--space-6) var(--space-7); font-size: var(--fs-md); }
  .visa .hm { display: none; }
  .news form { flex-direction: column; }
  .team { flex-direction: column; }
  .badge, .routes a, .more { white-space: normal; } /* .stamp נשארת nowrap: הטקסט שלה קצר בתכנון (תאריך מספרי) */
  .legend .credit { margin-inline-start: 0; flex-basis: 100%; }
  .fx-field { flex-basis: 100%; }
  .fx-eq { display: none; }
  .fgrid { grid-template-columns: 1fr; }
}
