/* Sapir Sabag 2026 - the theme's own screens (policy pages, 404). Loaded after lp360.css: uses its tokens and fonts.
   Light surface for long reading, the brand's wine for accents, the plugin's footer underneath. */
body.site-page { background: var(--cream-50, #F7F4F1); color: var(--text-primary, #160B0F); min-height: 100svh; display: flex; flex-direction: column; }
.skip { position: absolute; inset-inline-start: 16px; top: -60px; z-index: 50; background: var(--wine-950, #160B0F); color: var(--cream-50, #F7F4F1); padding: 10px 16px; border-radius: 8px; }
.skip:focus { top: 12px; }
.site-top { width: 100%; max-width: calc(var(--container, 1200px) + 2 * var(--gutter, 24px)); margin-inline: auto; padding: 28px var(--gutter, 24px); }
.site-top__home { display: inline-block; line-height: 0; }
.site-top__home img { height: 15px; width: auto; }
.site-page :focus-visible { outline: 2px solid var(--state-focus, #C92F55); outline-offset: 3px; border-radius: 4px; }
.site-page > main { flex: 1 0 auto; }

/* Policy page: Yonatan's 10c, tabs version (legal-pages, 3.10.26 night) */
/* ==========================================================================
   עמודי מדיניות · גרסה 2 (יונתן, 3.10.26)
   מחליף את בלוק "Policy page" ב-theme/sapir-2026/assets/site.css. כל ערך על משתני lp360.css.
   מבנה: מתג בין ארבעת העמודים · אייקון מהשפה · כותרת · פתיח · עדכון אחרון · תוכן עניינים · סעיפים.
   ========================================================================== */
.legal { padding: 40px var(--gutter, 24px) 88px; }
.legal__wrap { max-width: 960px; margin-inline: auto; }
/* הלוגו למעלה מיושר לקצה התוכן של העמוד (במקום לקצה המיכל הרחב של דף 360) */
.legal-page .site-top { max-width: calc(960px + 2 * var(--gutter, 24px)); }

/* פס הניווט בין ארבעת העמודים (גיא, 3.10.26): טאבים כטקסט על קו דק אחד לאורך כל רוחב התוכן. הפעיל = טקסט כהה + קו רובי
   שיושב על הקו המשותף. הפס נעוץ למעלה והתוכן גולל מתחתיו; הרקע שלו הוא רקע הדף. זה הקו היחיד בעמוד, בהחרגה מפורשת של גיא. */
.legal { --legal-bar-h: 48px; }
/* משתנה חדש ב-DS (פיגמה: text/secondary). עד שנכנס ל-lp360.css הוא מוגדר כאן */
:root { --text-secondary: var(--wine-400, #6B2D3C); }
.legal-nav { position: sticky; top: var(--sbar-h, 0px); z-index: 5; margin: 0 0 40px; background: var(--cream-50, #F7F4F1); box-shadow: inset 0 -1px 0 var(--border-subtle, #E2D8D3); }
.legal-nav__list { list-style: none; margin: 0; padding: 0; display: flex; gap: 28px; overflow-x: auto; overscroll-behavior-x: contain; scrollbar-width: none; }
.legal-nav__list::-webkit-scrollbar { display: none; }
.legal-nav__list li { flex: none; }
.legal-nav__link { position: relative; display: flex; align-items: center; height: 48px; font-size: var(--fs-small, 15px); line-height: 1.2; font-weight: var(--fw-medium, 500); color: var(--wine-950, #160B0F); text-decoration: none; white-space: nowrap; transition: color var(--dur-fast, 200ms) ease; }
@media (hover: hover) { .legal-nav__link:not([aria-current]):hover::after { content: ""; position: absolute; inset-inline: 0; bottom: 0; height: 2px; background: var(--ruby-600, #B12649); } }
.legal-nav__link[aria-current="page"] { font-weight: var(--fw-semibold, 600); } /* the site's nav link (Yonatan 588:965): SemiBold + an ink line */
.legal-nav__link[aria-current="page"]::after { content: ""; position: absolute; inset-inline: 0; bottom: 0; height: 2px; background: var(--wine-950, #160B0F); }
.legal-nav__link:focus-visible { outline-offset: -2px; }

/* ראש העמוד */
.legal__head { max-width: 600px; }
.legal__icon { display: block; width: 48px; height: 48px; margin: 0 0 20px; }
.legal__title { margin: 0; font-size: 34px; line-height: 1.18; font-weight: var(--fw-semibold, 600); text-wrap: balance; }
.legal__sub { max-width: 28.5em; margin: 16px 0 0; font-size: var(--fs-body, 17px); line-height: var(--lh-body, 1.6); }
.legal__meta { margin: 12px 0 0; font-size: 14px; line-height: 1.5; color: var(--wine-400, #6B2D3C); }
.legal__draft { margin: 20px 0 0; padding: 12px 16px; border-radius: var(--radius-control, 12px); background: var(--bg-raised, #EFE9E4); font-size: 15px; line-height: 1.55; }

/* תוכן עניינים: במובייל מקופל (פקד אחד), בדסקטופ פתוח ונעוץ בצד */
.legal__toc { margin: 32px 0 0; }
.legal__toc-sum { list-style: none; display: flex; align-items: center; gap: 8px; min-height: 52px; padding: 0 16px; border-radius: var(--radius-control, 12px); background: var(--bg-raised, #EFE9E4); font-size: 16px; font-weight: var(--fw-medium, 500); cursor: pointer; }
.legal__toc-sum::-webkit-details-marker { display: none; }
.legal__toc-count { font-size: 14px; font-weight: var(--fw-regular, 400); color: var(--wine-400, #6B2D3C); }
.legal__toc-ic { width: 18px; height: 18px; margin-inline-start: auto; flex: none; background: var(--toc-plus) center / contain no-repeat; }
.legal__toc[open] .legal__toc-ic { background-image: var(--toc-minus); }
.legal__toc ol { list-style: none; counter-reset: toc; margin: 0; padding: 8px 16px 0; }
.legal__toc li { counter-increment: toc; }
.legal__toc a { display: flex; align-items: baseline; gap: 10px; min-height: 44px; padding: 10px 0; box-sizing: border-box; font-size: 15px; line-height: 1.45; color: var(--text-primary, #160B0F); text-decoration: none; }
.legal__toc a::before { content: counter(toc); min-width: 1.4em; color: var(--wine-400, #6B2D3C); font-variant-numeric: tabular-nums; }
.legal__toc a:hover { text-decoration: underline; text-underline-offset: 4px; text-decoration-thickness: 1px; }
.legal__toc a.is-on { color: var(--ruby-600, #B12649); font-weight: var(--fw-medium, 500); }
.legal__toc a.is-on::before { color: inherit; }

/* הסעיפים: ההפרדה ברווח, בלי קווים */
.legal__body { margin-top: 48px; font-size: var(--fs-body, 17px); max-width: 28.5em; } /* עד 70 תווים בשורה, נמדד */
.legal__section { scroll-margin-top: calc(var(--legal-bar-h) + 24px); } /* קפיצה מתוכן העניינים נוחתת מתחת לפס */
.legal__section + .legal__section { margin-top: 48px; }
.legal__section h2 { margin: 0 0 12px; font-size: 22px; line-height: 1.3; font-weight: var(--fw-semibold, 600); text-wrap: balance; }
.legal__num { color: var(--wine-400, #6B2D3C); font-weight: var(--fw-medium, 500); font-variant-numeric: tabular-nums; margin-inline-end: .3em; }
.legal__text { font-size: 1em; line-height: var(--lh-body, 1.6); overflow-wrap: break-word; }
.legal__text > :last-child { margin-bottom: 0; }
.legal__text p { margin: 0 0 16px; }
.legal__text strong { font-weight: var(--fw-semibold, 600); }
.legal__text a[href^="mailto:"] { white-space: nowrap; }
.legal__text a { color: var(--ruby-600, #B12649); text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1px; }
.legal__text ul { list-style: none; margin: 0 0 16px; padding: 0; display: grid; gap: 10px; }
.legal__text ul li { position: relative; padding-inline-start: 22px; }
.legal__text ul li::before { content: ""; position: absolute; inset-inline-start: 2px; top: .55em; top: calc((1lh - 10px) / 2); width: 10px; height: 10px; background: var(--bullet) center / contain no-repeat; }
.legal__text ol { margin: 0 0 16px; padding-inline-start: 1.4em; display: grid; gap: 10px; }
.legal__text ol li::marker { color: var(--wine-400, #6B2D3C); font-variant-numeric: tabular-nums; }
.legal__text blockquote { margin: 0 0 16px; padding: 0; border: 0; }
.legal__text code { font-size: .9em; unicode-bidi: isolate; overflow-wrap: anywhere; } /* שם טכני: תמיד <code dir="ltr">, אחרת הקווים התחתונים מתהפכים ב-RTL */

.legal-page { --bullet: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='1.9 18 10.2 9.6'%3E%3Cpath d='M2.19314 21.7597C1.22094 20.093 2.42312 18 4.35259 18H9.64741C11.5769 18 12.7791 20.093 11.8069 21.7597L9.15945 26.2981C8.19475 27.9519 5.80525 27.9519 4.84055 26.2981L2.19314 21.7597Z' fill='%23C92F55'/%3E%3C/svg%3E"); }

@media (min-width: 768px) {
  .legal { padding-block: 64px 128px; }
  .legal-nav { margin-bottom: 56px; }
  .legal-nav__list { gap: 36px; }
  .legal__icon { width: 56px; height: 56px; margin-bottom: 24px; }
  .legal__title { font-size: 48px; line-height: 1.12; }
  .legal__section h2 { font-size: 24px; }
  .legal__section + .legal__section { margin-top: 56px; }
}
@media (min-width: 1024px) {
  .legal__wrap { display: grid; grid-template-columns: minmax(0, 600px) 240px; column-gap: 96px; justify-content: space-between; align-items: start; }
  .legal-nav { grid-column: 1 / -1; grid-row: 1; }
  .legal__head { grid-column: 1; grid-row: 2; }
  .legal__body { grid-column: 1; grid-row: 3; margin-top: 64px; }
  .legal__toc { grid-column: 2; grid-row: 2 / span 2; position: sticky; top: calc(var(--sbar-h, 0px) + var(--legal-bar-h) + 32px); margin: 0; padding-top: 0; max-height: calc(100vh - var(--legal-bar-h) - 64px); overflow: auto; }
  .legal__toc-sum { min-height: 0; padding: 0; margin-bottom: 8px; background: none; border-radius: 0; font-size: 14px; font-weight: var(--fw-semibold, 600); cursor: default; }
  .legal__toc-count, .legal__toc-ic { display: none; }
  .legal__toc ol { padding: 0; }
  .legal__toc a { min-height: 0; padding: 6px 0; }
}
@media (prefers-reduced-motion: reduce) { .legal-nav__link { transition: none; } }

/* WordPress (ולאד, 3.10.26): כתובות האייקונים של פקד תוכן העניינים */
.legal-page { --toc-plus: url("../inc/site/assets/lp360/icons/acc-plus-on-light.svg"); --toc-minus: url("../inc/site/assets/lp360/icons/acc-minus-on-light.svg"); }

/* 404 (Yonatan 581:914): cream, the message on the page (no box), a primary and a secondary action */
.notfound { display: flex; flex-direction: column; align-items: flex-start; justify-content: center; max-width: 1120px; width: 100%; margin-inline: auto; padding: 64px var(--gutter, 24px) 128px; }
.notfound__title { margin: 0; max-width: 16em; font-size: var(--fs-h1); line-height: var(--lh-h1); font-weight: var(--fw-semibold, 600); text-wrap: balance; }
.notfound__text { margin: 20px 0 0; font-size: var(--fs-body); line-height: var(--lh-body); text-wrap: pretty; }
.notfound__acts { margin-top: 40px; display: flex; flex-wrap: wrap; gap: 16px; }
.notfound__alt { display: inline-flex; align-items: center; min-height: 56px; padding: 0 28px; border: 1px solid var(--wine-950, #160B0F); border-radius: var(--radius-button-56, 24px); background: var(--cream-50, #F7F4F1); color: var(--wine-950, #160B0F); font-weight: var(--fw-medium, 500); text-decoration: none; transition: background-color var(--dur-fast, 200ms) ease; }
@media (hover: hover) { .notfound__alt:hover { background: var(--cream-100, #EFE9E4); } }
@media (max-width: 767px) { .notfound__acts > * { width: 100%; justify-content: center; } }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
