/* ==========================================================================
   JSW Fund — "Sovereign" design system (every page; header, menu, footer, pop-up and forms are built by site.js)
   One family (Red Hat Display; Heebo supplies Hebrew glyphs), navy on light-blue and white grounds,
   one gold accent, hairlines instead of boxes.

   USE ON A PAGE
   - <link> the fonts (src/components/Fonts.astro) and /assets/sovereign.css; add class "sov" to <body>.
     Page-level styles are scoped to body.sov; .sv-header/.sv-menu/.sv-footer are styled on every page.
   - /assets/sovereign.js runs the entrance motion (.reveal, [data-m]), the word reveals ([data-words]),
     the hero counter, the rotating one-liners and the film. It adds html.sv-reveal itself, so without JS
     everything is simply visible.

   TOKENS (:root)
   --ink #06183A  --ink-65 / --ink-40 (muted text)  --rule / --rule-2 (navy hairlines)
   --warm #EEF5FC (light-blue ground)  --alt #F5F8FC (page)  --paper #FFF
   --gold #D4B26C (the one gold: on navy, and for marks, rules and fills)  --gold-ink #8A6A28 (gold text on light grounds)  --blue (focus/hover fills)
   --rule-dk / --on-dk / --on-dk-65 (on navy)
   --s1..--s8 = 8/16/24/40/64/96/128/160   --wrap 1280px  --gut 64/32/20   --hdr 78px   --ease

   KEY CLASSES
   Layout   .sv-wrap (max 1280 + gutters)  .sv-sec (+ --white / --blue / --navy grounds)
            .sv-split (12 columns: __head = 1–5, __body = 7–12; --wide = 1–4 / 5–12)
   Type     .sv-label (13px caps)  .sv-st / .sv-st--xl (statement headings)  .sv-lead  .sv-statement  .sv-prose
   Actions  .sv-btn (navy pill with arrow)  --light / --ghost / --gold  .sv-link (text link with chevron)
   Lists    .sv-ticks  .sv-points  .sv-steps  .sv-tl (timeline)
   Forms    .sv-form  .sv-field (label above input/textarea/select)  .pl-row (checkbox row)  .form-note(.show)  .thanks
   Misc     .sv-seal (logo seal)  .sv-wm (faded seal watermark inside a .sv-has-wm section)
   ========================================================================== */

:root{
  --ink:#06183A;
  --ink-65:rgba(6,24,58,.68);
  --ink-40:rgba(6,24,58,.42);
  --rule:rgba(6,24,58,.12);
  --rule-2:rgba(6,24,58,.24);
  --warm:#EEF5FC;
  --alt:#F5F8FC;
  --paper:#FFFFFF;
  --alarm:#9B1B21;       /* the urgent red: the home hero banner (white text on it) */
  --alarm-ink:#F0585D;   /* urgent red text on navy */
  --gold:#D4B26C;        /* the one gold: text and marks on navy, the golden thread (rules, ticks, marks) and gold fills */
  --gold-ink:#8A6A28;    /* the same gold, darkened for text on light grounds (5:1 on white, 4.6:1 on --warm) */
  --blue:#1D3FE0;        /* electric blue: focus rings and hover fills only */
  --rule-dk:rgba(255,255,255,.14);
  --on-dk:#FFFFFF;
  --on-dk-65:rgba(255,255,255,.7);
  --s1:8px;--s2:16px;--s3:24px;--s4:40px;--s5:64px;--s6:96px;--s7:128px;--s8:160px;
  --wrap:1280px;
  --gut:64px;
  --hdr:78px;
  --sec:104px;
  --sec-dk:128px;
  --ease:cubic-bezier(.22,1,.36,1);
  --font:"Red Hat Display",system-ui,-apple-system,"Segoe UI",sans-serif;
  --sv-seal:url("/assets/img/seal.webp"); /* self-hosted seal artwork: scripts/vendor-images.py */
  --pl-seal-ivory:url("/assets/img/pl-seal-ivory.webp"); /* faded ivory seal (same page geometry) */
  --pl-seal:url("/assets/img/pl-seal.webp"); /* full seal artwork (page export; seal at x 12-88%, y 13-72%) */
}
@media (max-width:1280px){:root{--gut:32px}}
@media (max-width:768px){:root{--gut:20px;--sec:52px;--sec-dk:64px}}

/* ---------- Base (opt-in with body.sov) ---------- */
body.sov{margin:0;background:var(--alt);color:var(--ink);font-family:var(--font);font-weight:400;font-size:18px;line-height:1.65;
  -webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;overflow-x:hidden}
.sov *,.sov *::before,.sov *::after{box-sizing:border-box}
.sov :where(h1,h2,h3,h4,p,ul,ol,figure,blockquote){margin:0;padding:0}
.sov :where(ul,ol){list-style:none}
.sov :where(img,video,svg){display:block;max-width:100%}
:where(.sov a){color:inherit}
.sov em{font-style:normal}
.sov ::selection{background:var(--ink);color:#fff}
.sov :focus-visible{outline:2px solid var(--ink);outline-offset:3px}
.sov main{display:block}
.sov .skip{position:absolute;left:-9999px;top:8px;z-index:100;background:var(--ink);color:#fff;padding:12px 20px;border-radius:999px;text-decoration:none;font-weight:500}
.sov .skip:focus{left:16px}
html{scroll-padding-top:calc(var(--hdr) + 16px)}

/* ---------- Layout ---------- */
.sv-wrap{width:100%;max-width:calc(var(--wrap) + 2 * var(--gut));margin:0 auto;padding:0 var(--gut)}
.sv-sec{padding:var(--sec) 0;position:relative}
.sv-sec--white{background:#fff}
.sv-sec--blue{background:var(--warm)}
.sv-sec--navy{background:var(--ink);color:var(--on-dk);padding:var(--sec-dk) 0}
.sv-sec--blue + .sv-sec--blue,.sv-sec--white + .sv-sec--white{background-image:linear-gradient(var(--rule),var(--rule));background-repeat:no-repeat;background-position:top center;
  background-size:min(var(--wrap),calc(100% - 2 * var(--gut))) 1px}
.sv-split{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:32px;row-gap:34px}
.sv-split__head{grid-column:1 / span 5}
.sv-split__body{grid-column:7 / span 6;max-width:62ch}
.sv-split--wide .sv-split__body{max-width:none}
.sv-split--wide .sv-split__head{grid-column:1 / span 4}
.sv-split--wide .sv-split__body{grid-column:5 / span 8}
@media (max-width:960px){
  .sv-split{grid-template-columns:1fr;row-gap:var(--s4)}
  .sv-split__head,.sv-split__body,.sv-split--wide .sv-split__head,.sv-split--wide .sv-split__body{grid-column:1 / -1}
}

/* ---------- Type ---------- */
.sv-label{display:flex;align-items:center;gap:12px;font-size:13px;line-height:1.4;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-65)}
.sv-sec--navy .sv-label{color:var(--on-dk-65)}
.sv-lead{font-size:22px;line-height:1.5;font-weight:400}
.sv-statement{font-size:38px;line-height:1.32;font-weight:400;letter-spacing:-.018em}
.sv-prose > * + *{margin-top:var(--s3)}
.sv-prose p{font-size:18px;line-height:1.65}
.sv-prose > p:first-child.sv-lead,.sv-prose--lead > p:first-child{font-size:22px;line-height:1.5;font-weight:400;color:var(--ink)}
.sv-label + .sv-st{margin-top:var(--s3)}
/* Statement headings (america.gov language): one style for every section headline.
   .sv-st = section headline (52px); .sv-st--xl = section statement (62px). Add data-words
   for the scroll word-reveal (sovereign.js); data-words="soft" is the subtler version. */
.sv-st{font-size:clamp(30px,3.7vw,52px);line-height:1.08;font-weight:500;letter-spacing:-.035em;text-wrap:balance}
.sv-st--xl{font-size:clamp(32px,4.4vw,62px);line-height:1.08;letter-spacing:-.038em;max-width:24ch;text-wrap:pretty}
.sv-st .w{opacity:.3;transition:opacity .35s ease}
.sv-st .w.on{opacity:1}
/* Long statements (> 12 words): line-by-line soft fade instead of the word reveal — full ink, never grey while reading */
.sv-st.sv-st--lines .w{opacity:0;display:inline-block;transform:translateY(10px);transition:opacity .6s ease,transform .6s var(--ease);transition-delay:calc(var(--l,0) * 90ms)}
.sv-st.sv-st--lines.in .w{opacity:1;transform:none}
@media (max-width:768px){
  .sv-lead,.sv-prose--lead > p:first-child{font-size:20px}
  .sv-statement{font-size:24px;line-height:1.4}
  body.sov,.sv-prose p{font-size:17px}
  .sv-label + .sv-st{margin-top:var(--s2)}
  .sv-st{line-height:1.12}
}

/* ---------- Buttons & links ---------- */
.sv-btn{display:inline-flex;align-items:center;gap:12px;padding:14px 26px;border-radius:999px;border:1px solid var(--ink);background:var(--ink);color:#fff;
  font-family:var(--font);font-size:16px;line-height:1.25;font-weight:500;letter-spacing:0;text-decoration:none;cursor:pointer;
  transition:background .15s ease,color .15s ease,border-color .15s ease}
.sv-btn svg{width:18px;height:18px;flex:none}
.sv-btn:hover{background:var(--gold);border-color:var(--gold);color:var(--ink)}
.sv-btn:disabled{opacity:.5;cursor:default}
.sv-btn--light{background:#fff;border-color:#fff;color:var(--ink)}
.sv-btn--light:hover{background:transparent;color:#fff;border-color:#fff}
.sv-btn--ghost{background:transparent;color:var(--ink);border-color:var(--rule-2)}
.sv-btn--ghost:hover{background:var(--ink);border-color:var(--ink);color:#fff}
.sv-link{display:inline-flex;align-items:center;gap:6px;font-size:18px;font-weight:500;color:inherit;text-decoration:underline;text-decoration-thickness:1px;
  text-underline-offset:6px;text-decoration-color:var(--rule-2);transition:text-decoration-color .15s ease,color .15s ease;cursor:pointer}
.sv-link svg{width:16px;height:16px;flex:none}
.sv-link:hover{text-decoration-color:var(--gold)}
.sv-sec--navy .sv-link{text-decoration-color:var(--rule-dk)}

/* ---------- Lists ---------- */
.sv-ticks{max-width:60ch}
.sv-ticks li{position:relative;padding:0 0 0 18px;font-size:18px;line-height:1.6}
.sv-ticks li + li{margin-top:14px}
.sv-ticks li::before{content:"";position:absolute;left:0;top:.72em;width:3px;height:3px;border-radius:50%;background:var(--ink)}
@media (max-width:768px){.sv-ticks li{font-size:17px}}

/* ---------- Steps (timeline on one hairline) ---------- */
.sv-steps{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:32px;counter-reset:none}
.sv-steps li{position:relative}
.sv-steps__body{position:relative;padding-top:0}
.sv-steps h3{font-size:26px;line-height:1.25;font-weight:500;letter-spacing:-.015em}
.sv-steps p{margin-top:12px;color:var(--ink-65);font-size:18px;line-height:1.6;max-width:34ch}
@media (max-width:860px){
  .sv-steps{grid-template-columns:1fr;row-gap:0}
  .sv-steps li{padding:0 0 var(--s4) 0}
  .sv-steps li:last-child{padding-bottom:0}
  .sv-steps__body{padding:0;margin:0}
  .sv-steps h3{font-size:22px}
  .sv-steps p{font-size:17px}
}

/* ---------- Forms ---------- */
.sv-form{display:grid;gap:var(--s3)}
/* Fields: soft rounded boxes — white fill, hairline, 12px radius, 48px tall; navy border on focus, red on error */
.sv-field{display:grid;gap:6px}
.sv-field label{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-65)}
.sv-field input,.sv-field textarea,.sv-field select{width:100%;height:48px;font-family:var(--font);font-size:16px;line-height:1.3;color:var(--ink);background:#fff;
  border:1px solid rgba(6,24,58,.15);border-radius:12px;padding:0 14px;box-shadow:0 0 0 0 transparent;transition:border-color .15s ease,box-shadow .15s ease;-webkit-appearance:none;appearance:none}
.sv-field textarea{height:auto;min-height:140px;padding:12px 14px;resize:vertical}
/* select: custom chevron (appearance is reset above) */
.sv-field select{background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2306183A' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") no-repeat right 14px center/16px;padding-right:40px;cursor:pointer}
.sv-field ::placeholder{color:var(--ink-40);opacity:1}
.sv-field input:hover,.sv-field textarea:hover,.sv-field select:hover{border-color:rgba(6,24,58,.35)}
.sv-field input:focus,.sv-field textarea:focus,.sv-field select:focus{outline:0;border-color:var(--ink);box-shadow:inset 0 0 0 .5px var(--ink)}
/* keyboard focus: a clear 2px ring outside the field (WCAG 2.4.13); mouse clicks keep the quiet border */
.sv-field :is(input,textarea,select):focus-visible,.sv-phone__btn:focus-visible,.sv-cc__q:focus-visible{outline:2px solid var(--ink);outline-offset:2px}
.sv-field input[aria-invalid="true"],.sv-field select[aria-invalid="true"],.sv-field textarea[aria-invalid="true"],form.is-checked .sv-field :is(input,select,textarea):invalid{border-color:#9b1c1c;box-shadow:inset 0 0 0 .5px #9b1c1c}
.sv-form .sv-btn{justify-self:start;margin-top:8px}
.sov .form-note{display:none;font-size:16px;color:#9b1c1c}
.sov .form-note.show{display:block}
.sov .field-err{margin:6px 0 0;font-size:14px;line-height:1.4;font-weight:500;letter-spacing:0;text-transform:none;color:#9b1c1c}
.pl-row + .field-err{margin:-2px 0 4px;padding-inline-start:30px}
.is-invalid .pl-pill{border-color:#9b1c1c}
.pl-row.is-invalid > input{border-color:#9b1c1c;box-shadow:0 0 0 1px #9b1c1c}
.sv-community__row .field-err{padding-inline-start:20px}
.sv-field.is-invalid{align-content:start}
.pl-g > .sv-field{align-content:start}
.pl-share .field-err{grid-column:1 / -1}
.sov .thanks{padding:32px;background:var(--paper);border:1px solid var(--rule);border-left:2px solid var(--gold);font-size:20px;font-weight:400}

/* ---------- Reveal motion ---------- */
/* Entrance motion — one language site-wide (driven by sovereign.js, which adds html.sv-reveal):
   fade-up for blocks, staggered fade-up for lists/rows, clip-path wipe for feature panels, gentle scale for film. */
.sv-reveal .reveal,.sv-reveal [data-m="up"],.sv-reveal [data-m="stagger"] > *{opacity:0;transform:translateY(20px);
  transition:opacity .8s ease,transform .9s var(--ease)}
.sv-reveal [data-m="stagger"] > *{transition-delay:calc(var(--k,0) * 80ms)}
.sv-reveal .reveal.in,.sv-reveal [data-m="up"].in,.sv-reveal [data-m="stagger"].in > *{opacity:1;transform:none}
.sv-reveal [data-m^="wipe"]{--wr:20px;transition:clip-path .9s var(--ease),transform .9s var(--ease)}
.sv-reveal [data-m="wipe-l"]{clip-path:inset(0 100% 0 0 round var(--wr));transform:translateX(-40px)}
.sv-reveal [data-m="wipe-r"]{clip-path:inset(0 0 0 100% round var(--wr));transform:translateX(40px)}
.sv-reveal [data-m^="wipe"].in{clip-path:inset(-2px -2px -2px -2px round var(--wr));transform:none}
.sv-reveal [data-m^="wipe"] [data-m-i]{opacity:0;transform:translateY(16px);transition:opacity .7s ease,transform .8s var(--ease);transition-delay:calc(540ms + var(--k,0) * 120ms)}
.sv-reveal [data-m^="wipe"].in [data-m-i]{opacity:1;transform:none}
.sv-reveal [data-m^="wipe"] video{transform:scale(1.04);opacity:.4;transition:transform 1.1s var(--ease),opacity 1.1s ease}
.sv-reveal [data-m^="wipe"].in video{transform:none;opacity:1}
.sv-reveal .sv-btn[data-m^="wipe"]{--wr:999px}
.sv-reveal .sv-film__frame[data-m^="wipe"]{--wr:24px}
@media (prefers-reduced-motion:reduce){
  .sv-reveal .reveal{opacity:1;transform:none;transition:none}
  html{scroll-behavior:auto}
}

/* ---------- Seal ---------- */
.sv-seal{display:block;width:40px;height:40px;border-radius:50%;background:var(--sv-seal) center/cover,var(--ink);flex:none}

/* ==========================================================================
   Header (all pages; built by site.js)
   ========================================================================== */
/* Matches the public JSW Fund site's header: white bar, seal + three-line name, text items, divider, Menu */
.sv-header{position:fixed;top:0;left:0;right:0;z-index:90;background:#fff;border-bottom:1px solid rgba(6,24,58,.12);color:var(--ink);font-family:var(--font);
  transition:background .35s ease,border-color .35s ease,color .35s ease}
.sv-header.is-light{background:transparent;color:#fff;border-bottom-color:transparent}
.sv-header.is-light .sv-hdr-item:hover{background:rgba(255,255,255,.14)}
.sv-header.is-light .sv-hdr-div{background:rgba(255,255,255,.4)}
.sv-header.is-light.is-ink{color:var(--ink)}
.sv-header.is-light.is-ink .sv-hdr-item:hover{background:rgba(6,24,58,.06)}
.sv-header.is-light.is-ink .sv-hdr-div{background:rgba(6,24,58,.24)}
.sv-header.is-open{background:var(--ink);color:#fff;border-bottom-color:var(--rule-dk)}
.sv-hdr-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;height:var(--hdr);max-width:1440px;margin:0 auto;padding:0 clamp(16px,5vw,72px)}
.sv-brand{display:inline-flex;align-items:center;gap:12px;min-width:0;min-height:44px;text-decoration:none;color:inherit}
.sv-brand:hover{opacity:.85}
.sv-brand .sv-seal{width:44px;height:44px}
.sv-brand__name{display:flex;flex-direction:column;font-size:13px;font-weight:500;line-height:1.15;letter-spacing:0;white-space:nowrap}
.sv-hdr-actions{display:flex;align-items:center;gap:4px;flex:none}
.sv-hdr-item{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 12px;border:0;border-radius:6px;background:transparent;color:inherit;cursor:pointer;
  font:inherit;font-size:15px;font-weight:500;line-height:1;white-space:nowrap;text-decoration:none;transition:background .15s ease}
.sv-hdr-item:hover{background:rgba(6,24,58,.06)}
.sv-header.is-open .sv-hdr-item:hover{background:rgba(255,255,255,.12)}
.sv-hdr-div{width:1px;height:24px;margin:0 8px;background:rgba(6,24,58,.24)}
.sv-header.is-open .sv-hdr-div{background:rgba(255,255,255,.4)}
.sv-burger{display:inline-flex;flex-direction:column;justify-content:center;gap:4px;width:18px;height:18px}
.sv-burger span{display:block;height:1.8px;width:100%;background:currentColor;border-radius:1px;transition:transform .25s ease,opacity .2s ease}
.sv-header.is-open .sv-burger span:nth-child(1){transform:translateY(5.8px) rotate(45deg)}
.sv-header.is-open .sv-burger span:nth-child(2){opacity:0}
.sv-header.is-open .sv-burger span:nth-child(3){transform:translateY(-5.8px) rotate(-45deg)}
.sv-header :focus-visible,.sv-menu :focus-visible,.sv-footer :focus-visible{outline:2px solid var(--ink);outline-offset:3px}
.sv-header.is-open :focus-visible{outline-color:#fff}
.sv-header.is-open.is-ink{color:#fff}
@media (max-width:900px){
  .sv-hdr-cta,.sv-hdr-div{display:none}
  .sv-hdr-bar{gap:12px}
  .sv-brand{gap:10px}
  .sv-brand .sv-seal{width:38px;height:38px}
  .sv-brand__name{font-size:12px}
  .sv-hdr-item{padding:0 8px}
}
@media (max-width:640px){.sv-hdr-menu__t{display:none}.sv-hdr-menu{padding:0 13px;margin-right:-13px}}
/* "Get involved ⌄": header dropdown */
.sv-gi{position:static} /* the panel is placed against the header (centred), not the button */
.sv-gi__btn{gap:6px}
@media (hover:none){.sv-gi__btn:hover{background:transparent}}
.sv-gi__chev{width:15px;height:15px;transition:transform .2s ease}
.sv-gi__btn[aria-expanded="true"] .sv-gi__chev{transform:rotate(180deg)}
.sv-gi__pop{position:absolute;top:calc(100% + 8px);left:0;right:0;margin-inline:auto;z-index:95;display:grid;grid-template-columns:300px 1fr;width:min(1140px,calc(100vw - 32px));
  background:var(--ink);color:#fff;border-radius:18px;overflow:hidden;box-shadow:0 30px 80px -24px rgba(2,8,24,.65),0 0 0 1px rgba(255,255,255,.06);animation:sv-gi-in .26s cubic-bezier(.22,1,.36,1) both}
.sv-gi__pop[hidden]{display:none}
@keyframes sv-gi-in{from{opacity:0;transform:translateY(-8px) scale(.985)}to{opacity:1;transform:none}}
/* left: "Get involved →" (as the menu's side panel), the motto and the pledge, over the faded seal */
.sv-gi__feat{position:relative;isolation:isolate;overflow:hidden;display:flex;flex-direction:column;align-items:flex-start;padding:30px 28px 26px;border-inline-end:1px solid rgba(255,255,255,.08)}
.sv-gi__wm{position:absolute;z-index:-1;inset-inline-end:-120px;bottom:-130px;width:340px;aspect-ratio:1;border-radius:50%;background:var(--pl-seal) 50% 29.2% / 125% auto no-repeat;
  filter:grayscale(1) contrast(1.15);mix-blend-mode:screen;opacity:.16;-webkit-mask-image:radial-gradient(circle,#000 62%,transparent 71%);mask-image:radial-gradient(circle,#000 62%,transparent 71%)}
.sv-gi__top{font-size:26px;font-weight:700;letter-spacing:-.02em;line-height:1.15;color:#fff;text-decoration:none}
.sv-gi__top::after{content:"\2192";display:inline-block;margin-inline-start:.35em;color:var(--gold);font-weight:500;transition:transform .22s var(--ease)}
html[dir="rtl"] .sv-gi__top::after{content:"\2190"}
.sv-gi__top:hover::after,.sv-gi__top:focus-visible::after{transform:translateX(5px)}
html[dir="rtl"] .sv-gi__top:hover::after,html[dir="rtl"] .sv-gi__top:focus-visible::after{transform:translateX(-5px)}
.sv-gi__motto{margin:18px 0 22px;font-size:22px;line-height:1.18;font-weight:700;letter-spacing:-.02em;color:#fff}
.sv-gi__motto span,.sv-gi__motto em{display:block}
.sv-gi__motto em{font-style:normal;color:var(--gold)}
.sv-gi__cta{min-height:44px;padding:0 20px;font-size:15px;background:var(--gold);border-color:var(--gold);color:var(--ink)}
.sv-gi__cta:hover{background:#e2c383;border-color:#e2c383;color:var(--ink)}
.sv-gi__all{margin-top:auto;padding-top:22px;font-size:14px;font-weight:500;color:rgba(255,255,255,.72);text-decoration:none}
.sv-gi__all:hover,.sv-gi__all:focus-visible{color:var(--gold)}
/* right: three groups, styled like the menu (labels as "Popular pages", links as the side panel) */
.sv-gi__cols{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 32px;padding:30px 32px 26px}
.sv-gi__h{margin:0 0 10px;font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--on-dk-65)}
.sv-gi__list{list-style:none;margin:0;padding:0}
.sv-gi__list a{position:relative;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:8px 0;font-size:17px;line-height:1.3;font-weight:500;letter-spacing:-.01em;color:rgba(255,255,255,.92);text-decoration:none;transition:color .18s ease}
.sv-gi__list a::after{content:"";flex:none;width:8px;height:8px;margin-inline-end:4px;border-top:1.5px solid currentColor;border-inline-end:1.5px solid currentColor;transform:translateX(-8px) rotate(45deg);opacity:0;transition:opacity .18s ease,transform .22s var(--ease)}
html[dir="rtl"] .sv-gi__list a::after{transform:translateX(8px) rotate(-45deg)}
.sv-gi__list a:hover,.sv-gi__list a:focus-visible{color:var(--gold)}
.sv-gi__list a:hover::after,.sv-gi__list a:focus-visible::after{opacity:1;transform:rotate(45deg)}
html[dir="rtl"] .sv-gi__list a:hover::after,html[dir="rtl"] .sv-gi__list a:focus-visible::after{transform:rotate(-45deg)}
.sv-gi__pop :focus-visible{outline-color:#fff}
html[lang="he"] .sv-gi__h{letter-spacing:0;font-size:14px}
.sv-header.is-open .sv-gi{display:none}
@media (prefers-reduced-motion:reduce){.sv-gi__pop{animation:none}}
/* phones: the button stays (compact); the list opens as a full-width sheet under the header */
@media (max-width:900px){
  .sv-gi__btn{font-size:14px;padding:0 6px}
  .sv-gi__pop{position:fixed;top:var(--hdr);left:0;right:0;bottom:0;margin:0;width:auto;display:block;overflow-y:auto;overscroll-behavior:contain;
    border-radius:0;box-shadow:none;padding-bottom:calc(24px + env(safe-area-inset-bottom))}
  .sv-gi__feat{padding:22px 20px 22px;border-inline-end:0;border-bottom:1px solid rgba(255,255,255,.08)}
  .sv-gi__top{font-size:24px}
  .sv-gi__motto{font-size:17px;margin:12px 0 18px}
  .sv-gi__all{margin-top:0;padding-top:16px}
  .sv-gi__cols{grid-template-columns:1fr;gap:20px;padding:20px 20px 8px}
  .sv-gi__list a{font-size:17px;padding:7px 0}
  .is-gi-open body{overflow:hidden}
  .is-gi-open .sv-header{background:#fff;color:var(--ink);border-bottom-color:rgba(6,24,58,.12)}
}
.sv-gi__short{display:none}
@media (max-width:480px){
  .sv-gi__full{display:none}.sv-gi__short{display:inline}
  .sv-hdr-bar{gap:8px}
  .sv-brand{flex-shrink:0}
  .sv-hdr-actions{min-width:0}
  .sv-gi__btn{font-size:14px;padding:0 4px;gap:4px}
  .sv-hdr-lang{padding:0 6px}
}
@media (max-width:359px){.sv-gi{display:none}}
@media (max-width:360px){.sv-brand__name{font-size:11px}}
@media (prefers-reduced-motion:reduce){.sv-header,.sv-burger span{transition:none}}

/* ==========================================================================
   Menu overlay (full-screen navy)
   ========================================================================== */
.sv-menu{position:fixed;inset:var(--hdr) 0 0 0;z-index:80;background:var(--ink);color:#fff;font-family:var(--font);overflow-y:auto;overscroll-behavior:contain;
  visibility:hidden;opacity:0;transition:opacity .45s var(--ease),visibility 0s linear .45s}
.sv-menu.open{visibility:visible;opacity:1;transition:opacity .45s var(--ease),visibility 0s}
.sv-menu__body{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:32px;row-gap:var(--s5);padding-top:var(--s5);padding-bottom:var(--s6)}
.sv-menu__nav{grid-column:1 / span 7}
.sv-menu__side{grid-column:9 / span 4;display:flex;flex-direction:column}
/* Main items, NBIM-style: thin-line icon + big label; hover/focus/open = gold label, icon → chevron.
   Items with sub-pages (.sv-mi--has): the label is a link, the chevron button beside it opens an indented sub-list
   (phones and tablets; on desktop the sub-pages show in the side panel, see "Menu, desktop" below). */
.sv-menu__main{list-style:none;margin:0;padding:0;border-top:1px solid var(--rule-dk)}
.sv-mi{border-bottom:1px solid var(--rule-dk)}
.sv-mi__a{display:flex;align-items:center;gap:22px;width:100%;margin:6px 0;padding:14px 14px;border:0;border-radius:4px;background:transparent;text-align:start;
  text-decoration:none;color:#fff;font:inherit;font-size:40px;line-height:1.15;font-weight:400;letter-spacing:-.02em;cursor:pointer;transition:background .2s ease,color .2s ease}
.sv-mi__ic{position:relative;flex:none;width:26px;height:26px}
.sv-mi__ic svg{position:absolute;inset:0;width:26px;height:26px;transition:opacity .2s ease,transform .25s var(--ease)}
.sv-mi__chev{opacity:0}
.sv-mi__a:hover,.sv-mi__a:focus-visible,.sv-mi.is-open > .sv-mi__a{background:rgba(255,255,255,.06);color:var(--gold)}
.sv-mi__a:hover .sv-mi__glyph,.sv-mi__a:focus-visible .sv-mi__glyph,.sv-mi.is-open > .sv-mi__a .sv-mi__glyph{opacity:0}
.sv-mi__a:hover .sv-mi__chev,.sv-mi__a:focus-visible .sv-mi__chev,.sv-mi.is-open > .sv-mi__a .sv-mi__chev{opacity:1}
.sv-mi.is-open > .sv-mi__a .sv-mi__chev{transform:rotate(90deg)}
.sv-mi__row{display:flex;align-items:center;gap:4px}
.sv-mi__row .sv-mi__a{flex:1;min-width:0}
.sv-mi__tog{flex:none;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;margin:0;padding:0;border:0;border-radius:999px;background:transparent;color:rgba(255,255,255,.75);cursor:pointer;transition:transform .25s ease,color .15s ease,background .15s ease}
.sv-mi__tog svg{width:22px;height:22px}
.sv-mi__tog:hover,.sv-mi__tog:focus-visible{color:var(--gold);background:rgba(255,255,255,.06)}
.sv-mi__tog:focus-visible{outline:2px solid var(--gold);outline-offset:-2px}
.sv-mi.is-open > .sv-mi__row .sv-mi__tog{transform:rotate(180deg);color:var(--gold)}
.sv-mi.is-open > .sv-mi__row .sv-mi__a{background:rgba(255,255,255,.06);color:var(--gold)}
.sv-mi__a:focus-visible{outline:2px solid var(--gold);outline-offset:-2px}
.sv-mi__sub{list-style:none;margin:0;margin-block-end:18px;margin-inline-start:62px;padding:0;padding-inline-start:18px}
.sv-mi__sub li > a,.sv-mi__sub .sv-mi__nestrow > a{position:relative;padding-inline-start:20px}
.sv-mi__sub li > a::before,.sv-mi__sub .sv-mi__nestrow > a::before{content:"";position:absolute;inset-inline-start:0;top:50%;width:10px;height:1.5px;margin-top:-1px;background:rgba(231,201,138,.7)}
.sv-mi__sub a{display:block;padding:8px 0;font-size:18px;line-height:1.4;color:rgba(255,255,255,.8);text-decoration:none}
.sv-mi__sub a:hover,.sv-mi__sub a:focus-visible{color:var(--gold)}
.sv-mi__sub[hidden]{display:none}
/* the section's own page at the top of its list (phones/tablets; the desktop side panel has its own) */
.sv-mi__sub li.sv-mi__top > a{font-weight:700;color:#fff}
.sv-mi__sub li.sv-mi__top > a::before{content:none}
.sv-mi__sub li.sv-mi__top > a::after{content:"\2192";margin-inline-start:.35em;color:var(--gold);font-weight:500}
html[dir="rtl"] .sv-mi__sub li.sv-mi__top > a::after{content:"\2190"}
@media (min-width:1024px){.sv-mi__top{display:none}}
.sv-mi__nestrow{display:flex;align-items:center;gap:4px}
.sv-mi__nestrow a{flex:1;min-width:0}
.sv-mi__ntog{flex:none;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;margin:0;padding:0;border:0;border-radius:999px;background:transparent;color:rgba(255,255,255,.6);cursor:pointer;transition:transform .25s ease,color .15s ease}
.sv-mi__ntog svg{width:18px;height:18px}
.sv-mi__ntog:hover,.sv-mi__ntog:focus-visible{color:var(--gold)}
.sv-mi__ntog:focus-visible{outline:2px solid var(--gold);outline-offset:-2px}
.sv-mi__nest.is-open > .sv-mi__nestrow .sv-mi__ntog{transform:rotate(180deg);color:var(--gold)}
.sv-mi__sub--nest{margin-block-end:8px;margin-inline-start:14px;padding-inline-start:16px;border:0}
.sv-mi__sub--nest a{font-size:16px;padding:6px 0;color:rgba(255,255,255,.72)}
.sv-menu__label{font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--on-dk-65);margin:0 0 16px}
.sv-menu__sub{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.sv-menu__sub li{border-top:1px solid rgba(255,255,255,.1)}
.sv-menu__sub li:first-child{border-top:0}
.sv-menu__sub a{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 0;font-size:17px;line-height:1.3;color:#fff;text-decoration:none}
.sv-menu__sub a::after{content:"";flex:none;width:7px;height:7px;border-inline-end:1.5px solid rgba(255,255,255,.45);border-top:1.5px solid rgba(255,255,255,.45);transform:rotate(45deg);transition:transform .15s ease,border-color .15s ease}
html[dir="rtl"] .sv-menu__sub a::after{transform:rotate(-45deg)}
.sv-menu__sub a:hover,.sv-menu__sub a:focus-visible{color:var(--gold);text-decoration:none}
.sv-menu__sub a:hover::after,.sv-menu__sub a:focus-visible::after{border-color:var(--gold);transform:translateX(3px) rotate(45deg)}
html[dir="rtl"] .sv-menu__sub a:hover::after{transform:translateX(-3px) rotate(-45deg)}
.sv-menu__sub li.sv-menu__legal a{font-size:14px;padding:7px 0;color:rgba(255,255,255,.72)}
.sv-menu__sub li.sv-menu__legal a::after{display:none}
.sv-menu__sub li.sv-menu__legal{border-top:0}
.sv-social{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.sv-social a{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;border:1px solid var(--rule-dk);color:#fff;transition:background .15s ease,color .15s ease}
.sv-social a:hover{background:#fff;color:var(--ink)}
.sv-social svg{width:16px;height:16px}
@media (max-width:960px){
  .sv-menu__body{grid-template-columns:1fr}
  .sv-menu__nav,.sv-menu__side{grid-column:1 / -1}
}
/* Phones and tablets: the same calm language as the desktop menu. No rules, dashes or boxes; one-line labels,
   gold for the open section and hover, the others step back; compact Popular pages, legal links and icons in one row. */
@media (max-width:1023px){
  .sv-menu__body{padding-top:clamp(16px,3vh,28px);padding-bottom:calc(32px + env(safe-area-inset-bottom));row-gap:0}
  .sv-menu__main{border-top:0}
  .sv-mi{border-bottom:0}
  .sv-mi__a{margin:0;padding:10px 0;gap:12px;font-size:clamp(18px,4.9vw,30px);line-height:1.2;font-weight:500;letter-spacing:-.02em;border-radius:0}
  .sv-mi__ic,.sv-mi__ic svg{width:22px;height:22px}
  .sv-mi__a:hover,.sv-mi__a:focus-visible,.sv-mi.is-open > .sv-mi__a,.sv-mi.is-open > .sv-mi__row .sv-mi__a{background:transparent;color:var(--gold)}
  .sv-mi__a:hover .sv-mi__glyph,.sv-mi__a:focus-visible .sv-mi__glyph{opacity:1}
  .sv-mi__a:hover .sv-mi__chev,.sv-mi__a:focus-visible .sv-mi__chev{opacity:0}
  .sv-menu__main:has(.sv-mi.is-open) .sv-mi:not(.is-open) .sv-mi__a{color:rgba(255,255,255,.55)}
  .sv-mi__tog{width:40px;height:40px;color:rgba(255,255,255,.6)}
  .sv-mi__tog svg{width:18px;height:18px}
  .sv-mi__tog:hover,.sv-mi__tog:focus-visible{background:transparent}
  .sv-mi.is-open > .sv-mi__row .sv-mi__tog{background:transparent}
  .sv-mi__sub{margin:2px 0 12px;margin-inline-start:36px;padding:0}
  .sv-mi__sub li > a,.sv-mi__sub .sv-mi__nestrow > a{padding-inline-start:0}
  .sv-mi__sub li > a::before,.sv-mi__sub .sv-mi__nestrow > a::before{content:none}
  .sv-mi__sub a{padding:7px 0;font-size:17px;line-height:1.35;color:rgba(255,255,255,.82)}
  .sv-mi__sub--nest{margin:0 0 6px;margin-inline-start:16px;padding:0}
  .sv-mi__sub--nest a{font-size:15.5px;padding:5px 0;color:rgba(255,255,255,.66)}
  .sv-mi__ntog{width:32px;height:32px}
  .sv-menu__nav .sv-menu__pop{margin-top:28px}
  .sv-menu__pop .sv-menu__label{margin-bottom:8px}
  .sv-menu__pop .sv-menu__sub li{border-top:0}
  .sv-menu__pop .sv-menu__sub a{justify-content:flex-start;gap:10px;padding:7px 0;font-size:16px;color:rgba(255,255,255,.88)}
  .sv-menu__pop .sv-menu__sub a::after{width:6px;height:6px;border-color:rgba(231,201,138,.8)}
  .sv-menu__foot{margin-top:24px;padding-top:18px;border-top:1px solid rgba(255,255,255,.1);display:flex;flex-direction:column;gap:14px}
  .sv-menu__legalList{flex-direction:row;flex-wrap:wrap;gap:0 18px}
  .sv-menu__sub li.sv-menu__legal a{padding:4px 0}
  .sv-menu__follow .sv-menu__label{display:none}
  .sv-menu__follow .sv-social{gap:8px}
  .sv-menu__follow .sv-social a{width:38px;height:38px}
  .sv-menu__follow .sv-social svg{width:15px;height:15px}
}
@media (prefers-reduced-motion:reduce){.sv-menu{transition:none}}

/* ==========================================================================
   Footer (navy: seal + byline and Follow, the six sections, then the legal bar and the disclaimer note)
   ========================================================================== */
.sv-footer{background:var(--ink);color:#fff;font-family:var(--font);padding-top:clamp(40px,5vw,64px);overflow:hidden}
:where(.sv-footer a){color:inherit}
.sv-footer__top{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--s4) var(--s5);flex-wrap:wrap}
.sv-footer__id{max-width:640px}
.sv-footer__id .sv-seal{display:block;width:44px;height:44px;margin:0 0 18px;background:var(--sv-seal) center/cover,rgba(255,255,255,.12)}
.sv-footer__line{margin:0;font-size:clamp(24px,2.3vw,32px);line-height:1.18;font-weight:500;letter-spacing:-.025em;text-wrap:balance}
.sv-footer__follow{display:flex;align-items:center;gap:20px}
.sv-footer__h{margin:0;font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--on-dk-65)}
.sv-social--foot{display:flex;gap:10px}
.sv-social--foot a{width:40px;height:40px;border-color:rgba(255,255,255,.22);transition:background .18s ease,border-color .18s ease,color .18s ease}
.sv-social--foot a:hover,.sv-social--foot a:focus-visible{background:var(--gold);border-color:var(--gold);color:var(--ink)}
.sv-footer__nav{margin-top:28px;padding-top:20px;border-top:1px solid rgba(255,255,255,.14)}
.sv-footer__explore{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px clamp(20px,3vw,40px)}
.sv-footer__explore a{display:inline-block;padding:4px 0;font-size:16px;font-weight:500;color:#fff;text-decoration:none;background:linear-gradient(var(--gold),var(--gold)) no-repeat 0 100%/0 1px;transition:background-size .25s var(--ease),color .18s ease}
html[dir="rtl"] .sv-footer__explore a{background-position:100% 100%}
.sv-footer__explore a:hover,.sv-footer__explore a:focus-visible{color:var(--gold);background-size:100% 1px}
.sv-footer__bar{display:flex;flex-wrap:wrap;align-items:center;gap:10px 28px;margin-top:20px;padding:18px 0 14px;border-top:1px solid var(--rule-dk);font-size:15px;color:var(--on-dk-65)}
.sv-footer__copy{margin:0}
.sv-footer__legal{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px 24px}
.sv-footer__legal a{text-decoration:none}
.sv-footer__legal a:hover{color:#fff;text-decoration:underline;text-underline-offset:5px}
.sv-footer__top-btn{margin-left:auto;display:inline-flex;align-items:center;gap:8px;text-decoration:none;color:#fff;font-size:15px}
.sv-footer__top-btn svg{width:16px;height:16px}
.sv-footer__note{margin:0;padding:0 0 28px;font-size:13px;line-height:1.6;color:var(--on-dk-65);max-width:90ch}
@media (max-width:640px){
  .sv-footer{padding-top:40px}
  .sv-footer__line{font-size:24px}
  .sv-footer__top{flex-direction:column;align-items:flex-start}
  .sv-footer__follow{flex-direction:column;align-items:flex-start;gap:10px}
  .sv-footer__explore{display:grid;grid-template-columns:1fr 1fr;gap:2px 16px}
  .sv-footer__explore a{font-size:15px;line-height:1.3;padding:6px 0}
  .sv-footer__top-btn{margin-left:0}
}

/* ==========================================================================
   Homepage (body.sv-home)
   ========================================================================== */
.sv-vh{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}
/* Hero: NBIM-style full-bleed photograph with the centred stack over it.
   Photo: public/assets/hero.jpg (an <img>, object-fit: cover).
   --hero-focus   object-position of the photo (default 50% 40%)
   --hero-scrim   flat overlay for legibility (default navy at 22%; set 0 if the photo is dark enough)
   .sv-hero--ink  navy text + navy button for a light photo (default is white text). */
body.sv-home{background:#fff}
.sv-hero{--hero-fg:#fff;--hero-fg-2:rgba(255,255,255,.86);--hero-focus:50% 40%;--hero-scrim:rgba(6,24,58,.22);
  position:relative;overflow:hidden;background:#1b2433;min-height:540px;height:100vh;height:100svh;display:flex;flex-direction:column;padding-top:var(--hdr);color:var(--hero-fg)}
.sv-hero__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:var(--hero-focus);z-index:0}
.sv-hero__scrim{position:absolute;inset:0;background:var(--hero-scrim);z-index:0;pointer-events:none}
.sv-hero--ink{--hero-fg:var(--ink);--hero-fg-2:var(--ink-65);--hero-scrim:transparent;--hero-rule:var(--gold)}
.sv-hero__stack{position:relative;z-index:1;flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding-top:var(--s5);padding-bottom:var(--s6)}
.sv-hero__label{display:flex;flex-direction:column;align-items:center;gap:14px;margin-bottom:var(--s2);font-size:14px;color:var(--hero-fg-2)}
.sv-hero__label::before{content:"";display:block;width:32px;height:2px;border-radius:2px;background:var(--hero-rule,var(--gold))}
.sv-hero__goal{display:flex;flex-direction:column;align-items:center;font-weight:400}
.sv-counter{position:relative;display:inline-flex;align-items:baseline;gap:.16em;font-size:clamp(28px,5.6vw,80px);line-height:1;font-weight:700;letter-spacing:-.005em;color:var(--hero-fg);
  font-variant-numeric:tabular-nums lining-nums;font-feature-settings:"tnum" 1,"lnum" 1;white-space:nowrap}
/* "4.8 TRILLION": the number ticks up, the letters lock in like a split-flap (sovereign.js) */
.sv-counter__word{display:inline-block;white-space:nowrap}
.sv-counter__num{font-variant-numeric:tabular-nums lining-nums}
.sv-counter__letters .l{display:inline-block;text-align:center;overflow:hidden;vertical-align:bottom}
.sv-counter__unit{font-size:max(13px,.22em);font-weight:500;letter-spacing:.04em;color:var(--hero-fg-2)}
html[lang="he"] .sv-counter__unit{letter-spacing:0;font-size:max(14px,.24em)}
.sv-hero__tag{display:block;margin-top:var(--s3);max-width:30ch;font-size:clamp(21px,2.1vw,30px);line-height:1.4;font-weight:300;letter-spacing:-.01em;color:var(--hero-fg);text-wrap:balance}
.sv-hero__tag em{font-weight:500}
.sv-hero__btn{margin-top:var(--s4)}
/* the urgent banner along the bottom of the home hero */
.sv-alert{position:absolute;left:0;right:0;bottom:0;z-index:2;background:var(--alarm);color:#fff;box-shadow:0 -10px 30px -12px rgba(60,6,10,.45)}
.sv-alert__t{margin:0 auto;max-width:96ch;padding:16px 0;font-size:clamp(15px,1.25vw,19px);line-height:1.45;font-weight:500;letter-spacing:-.005em;text-align:center;text-wrap:balance}
.sv-alert__t strong{font-weight:700}
.sv-alert__dot{display:inline-block;vertical-align:.12em;margin-inline-end:12px;width:9px;height:9px;border-radius:50%;background:#fff;box-shadow:0 0 0 0 rgba(255,255,255,.7);animation:sv-alert-pulse 1.8s ease-out infinite}
@keyframes sv-alert-pulse{0%{box-shadow:0 0 0 0 rgba(255,255,255,.65)}70%{box-shadow:0 0 0 10px rgba(255,255,255,0)}100%{box-shadow:0 0 0 0 rgba(255,255,255,0)}}
.sv-alert{animation:sv-alert-in .7s cubic-bezier(.22,1,.36,1) .5s both}
@keyframes sv-alert-in{from{transform:translateY(100%)}to{transform:none}}
@media (prefers-reduced-motion:reduce){.sv-alert,.sv-alert__dot{animation:none}}
.is-intro .sv-alert,.is-intro .sv-alert__dot{animation-play-state:paused}
/* ---- opening transition (home, once per visit): the statement over the seal, then the curtain lifts ---- */
.is-intro,.is-intro body{overflow:hidden}
.sv-opening{position:fixed;inset:0;z-index:300;display:flex;align-items:center;background:var(--ink);color:#fff;overflow:hidden;clip-path:inset(0 0 0 0);
  transition:clip-path 1s cubic-bezier(.76,0,.24,1) .15s}
.sv-opening.is-out{clip-path:inset(0 0 100% 0)}
.sv-opening__wm{position:absolute;top:50%;left:50%;width:min(110vmin,1100px);aspect-ratio:1;border-radius:50%;transform:translate(-50%,-50%) scale(1.08);
  background:var(--pl-seal) 50% 29.2% / 125% auto no-repeat;filter:grayscale(1) contrast(1.15);mix-blend-mode:screen;opacity:0;
  -webkit-mask-image:radial-gradient(circle,#000 62%,transparent 71%);mask-image:radial-gradient(circle,#000 62%,transparent 71%);
  transition:opacity 1.6s ease,transform 6s cubic-bezier(.22,1,.36,1)}
.sv-opening.is-on .sv-opening__wm{opacity:.13;transform:translate(-50%,-50%) scale(1)}
.sv-opening__in{position:relative;width:100%;transition:opacity .45s ease,transform .7s cubic-bezier(.76,0,.24,1)}
.sv-opening.is-out .sv-opening__in{opacity:0;transform:translateY(-40px)}
.sv-opening__label{display:flex;justify-content:space-between;align-items:baseline;gap:20px;max-width:1040px;margin:0 0 clamp(22px,4vh,40px);font-size:12.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.6)}
.sv-opening__label > span:first-child{display:flex;align-items:center;gap:14px}
.sv-opening__label > span:first-child::before{content:"";width:28px;height:2px;border-radius:2px;background:var(--gold)}
.sv-opening__pct{font-variant-numeric:tabular-nums;color:var(--gold);letter-spacing:.04em}
.sv-opening__pct::after{content:"%"}
.sv-opening__text{max-width:1040px;margin:0;font-size:clamp(26px,3.6vw,54px);line-height:1.14;font-weight:700;letter-spacing:-.03em;text-wrap:balance}
.sv-opening__text .w{display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.08em;margin-bottom:-.08em}
.sv-opening__text .w > span{display:inline-block;transform:translateY(110%);transition:transform .9s cubic-bezier(.22,1,.36,1);transition-delay:calc(var(--i) * 42ms + 250ms)}
.sv-opening.is-on .sv-opening__text .w > span{transform:none}
.sv-opening__text .w--gold{color:var(--gold)}
.sv-opening__bar{position:absolute;left:0;right:0;bottom:0;height:3px;background:rgba(255,255,255,.08)}
.sv-opening__bar i{display:block;height:100%;width:calc(var(--p,0) * 100%);background:var(--gold)}
html[dir="rtl"] .sv-opening__bar i{margin-inline-start:0}
.sv-opening{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;touch-action:none;cursor:default}
.sv-opening__hint{position:absolute;bottom:clamp(22px,4vh,36px);inset-inline-start:clamp(16px,5vw,72px);margin:0;min-height:44px;display:flex;align-items:center;
  font:500 13px/1.3 var(--font);letter-spacing:.04em;color:rgba(255,255,255,.45);transition:color .2s ease}
.sv-opening.is-held .sv-opening__hint{color:var(--gold)}
.sv-opening.is-held .sv-opening__pct{animation:sv-held-blink 1.1s ease-in-out infinite}
@keyframes sv-held-blink{50%{opacity:.35}}
html[lang="he"] .sv-opening__hint{letter-spacing:0;font-size:14px}
.sv-opening__skip{position:absolute;bottom:clamp(22px,4vh,36px);inset-inline-end:clamp(16px,5vw,72px);display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 6px;border:0;background:none;
  font:500 14px/1 var(--font);letter-spacing:.04em;color:rgba(255,255,255,.7);cursor:pointer;transition:color .15s ease}
.sv-opening__skip svg{width:15px;height:15px}
html[dir="rtl"] .sv-opening__skip svg{transform:scaleX(-1)}
.sv-opening__skip:hover,.sv-opening__skip:focus-visible{color:#fff}
.sv-opening__skip:focus-visible{outline:2px solid #fff;outline-offset:3px}
html[lang="he"] .sv-opening__label{letter-spacing:0;font-size:14px}
html[lang="he"] .sv-opening__text{letter-spacing:-.01em}
@media (max-width:640px){.sv-opening__text{font-size:clamp(24px,7.2vw,34px);line-height:1.18}.sv-opening__label{font-size:11px}}
@media (prefers-reduced-motion:reduce){
  .sv-opening{transition:opacity .35s ease;clip-path:none}.sv-opening.is-out{opacity:0}
  .sv-opening__wm,.sv-opening__in,.sv-opening__text .w > span{transition:none;transform:none}
  .sv-opening__wm{transform:translate(-50%,-50%)}
}
@media (max-width:768px){.sv-alert__t{padding:13px 0;font-size:14.5px}.sv-alert__dot{width:8px;height:8px;margin-inline-end:9px}}
/* the urgent line above the "shame on them" quote */
.sv-urgent{margin:0 auto 30px;font-size:clamp(19px,1.9vw,27px);line-height:1.3;font-weight:700;letter-spacing:-.015em;color:var(--alarm-ink);text-align:center;text-wrap:balance}
.sv-hero--ink .sv-hero__btn{background:var(--ink);border-color:var(--ink);color:#fff}
/* This photo: the two figures sit 58–75% down, centred. As on NBIM, the stack is centred at ~45% of the hero
   (--hero-stack-y) in the sky; the photo is anchored near its top so the figures stay below the button.
   NBIM spacing: label → figure 30px, figure → tagline 18px, tagline → button 38px. */
.sv-hero--photo{--hero-focus:50% 6%;--hero-scrim:rgba(6,24,58,.12);--hero-stack-y:45%}
.sv-hero--photo.sv-hero--ink{--hero-scrim:transparent}
.sv-hero--photo .sv-hero__stack{position:absolute;left:0;right:0;top:var(--hero-stack-y);transform:translateY(-50%);padding-top:0;padding-bottom:0}
.sv-hero--photo .sv-hero__label{margin-bottom:30px}
.sv-hero--photo .sv-hero__tag{margin-top:18px;font-size:clamp(22px,2.35vw,34px);line-height:1.25}
.sv-hero--photo .sv-hero__btn{margin-top:38px}
@media (max-width:768px){
  .sv-hero{height:88vh;height:88svh;min-height:520px}
  .sv-hero--photo{--hero-focus:47% 0%;--hero-stack-y:41%}
  .sv-hero--photo .sv-hero__img{height:120%;bottom:auto}
  .sv-hero--photo .sv-hero__label{margin-bottom:18px}
  .sv-hero--photo .sv-hero__tag{margin-top:14px;font-size:22px}
  .sv-hero--photo .sv-hero__btn{margin-top:28px}
  .sv-hero__tag{margin-top:var(--s2);max-width:22ch}
  .sv-hero__label{font-size:13px}
}
/* phones: the unit small, to the right of the figure on the same line (owner) */
@media (max-width:480px){
  .sv-counter{gap:.22em;font-size:calc((100vw - 40px - 30px) / 8.7)}
  .sv-counter__unit,html[lang="he"] .sv-counter__unit{font-size:11px;font-weight:600;letter-spacing:.04em}
}

/* Messages: a full-width white band under the blue hero; centred one-liners with a kinetic word-mask reveal */
.sv-msg{position:relative;z-index:1;background:#fff;padding:var(--s6) 0 var(--s5);touch-action:pan-y;cursor:grab;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}
.sv-msg.is-dragging{cursor:grabbing}
.sv-msg__panel{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;color:var(--ink);outline-offset:8px}
.sv-msg__panel:focus-visible{outline:2px solid var(--ink)}
.sv-msg__track{display:grid;width:100%;max-width:24ch;font-size:clamp(28px,3.7vw,54px);transition:transform .35s cubic-bezier(.22,1,.36,1)}
.sv-line{grid-area:1 / 1;align-self:center;font-size:inherit;line-height:1.1;font-weight:500;letter-spacing:-.03em;color:rgba(6,24,58,.58);text-wrap:balance;
  opacity:0;transition:opacity .5s ease;pointer-events:none}
.sv-line em{font-weight:700;color:var(--ink)}
.sv-line--long{font-size:.82em;line-height:1.12}
.sv-line--xlong{font-size:.72em;line-height:1.14}
.sv-line.is-on{opacity:1;pointer-events:auto}
/* kinetic: every word rises from below its own mask; the outgoing line lifts out first */
.is-kinetic .sv-line{opacity:1;transition:none}
.is-kinetic .sv-line .m{display:inline-block;overflow:hidden;vertical-align:top;padding:.06em .02em .14em;margin:-.06em -.02em -.14em}
.is-kinetic .sv-line .w{display:inline-block;transform:translateY(112%);transition:transform .44s cubic-bezier(.22,1,.36,1);transition-delay:calc(var(--i) * 20ms)}
.is-kinetic .sv-line.is-on .w{transform:none;transition-delay:calc(110ms + var(--i) * 20ms)}
.is-kinetic .sv-line.is-out .w{transform:translateY(-112%);transition-duration:.3s;transition-delay:calc(var(--i) * 10ms)}
.is-kinetic .sv-line.no-t .w{transition:none!important}
.sv-msg__foot{margin-top:var(--s4);display:flex;justify-content:center;align-items:center;gap:4px}
/* discreet dots: 6px, ink 20%; active ink 70%; 24px hit area */
.sv-ind{display:flex;justify-content:center;gap:2px}
.sv-ind__b{display:grid;place-items:center;width:24px;height:24px;padding:0;margin:0;border:0;background:none;cursor:pointer}
.sv-ind__b i{display:block;width:6px;height:6px;border-radius:50%;background:rgba(6,24,58,.2);transition:background .2s ease}
.sv-ind__b:hover i{background:rgba(6,24,58,.45)}
.sv-ind__b.is-on i{background:var(--gold)}
.sv-ind__b:focus-visible{outline:2px solid var(--ink);outline-offset:2px}
@media (max-width:768px){
  .sv-msg{padding:var(--s5) 0}
  .sv-msg__track{font-size:30px;max-width:20ch}
  .sv-line{line-height:1.14}
  .sv-msg__foot{margin-top:var(--s3)}
}
@media (prefers-reduced-motion:reduce){.sv-line{transition:opacity .4s ease}}

/* Intro: one centred statement, pinned while its words fill in with scroll (america.gov style) */
.sv-intro{padding:0;min-height:180vh;min-height:180svh;display:flex;flex-direction:column}
.sv-intro > .sv-wrap{flex:1 0 auto;display:block}
.sv-intro__pin{position:sticky;top:calc(var(--hdr) + 10vh);display:flex;flex-direction:column;align-items:center;text-align:center;padding:var(--s6) 0 var(--s7)}
.sv-intro__text{margin-top:0;max-width:30ch;font-size:clamp(26px,3.2vw,46px);line-height:1.14;font-weight:400;letter-spacing:-.02em;text-wrap:balance}
.sv-st[data-words="pin"] .w{opacity:.22;transition:opacity .45s ease}
.sv-st[data-words="pin"] .w.on{opacity:1}
.sv-chip,.sv-st.sv-st--lines .w.sv-chip{display:inline-flex;align-items:center;justify-content:center;width:.95em;height:.95em;margin:0 .18em;border-radius:50%;vertical-align:middle;flex:none}
.sv-chip svg{width:62%;height:62%}
.ic-gold{stroke:var(--gold);fill:rgba(212,178,108,.28)}
.sv-chip--seal{background:var(--sv-seal) center/cover,#fff;box-shadow:0 0 0 2px #fff,0 0 0 3px var(--gold)}
.sv-chip--ink{background:var(--ink);color:#fff}
.sv-chip--soft{background:#fff;color:var(--gold)}
@media (max-width:768px){
  /* phones: bigger balanced statement pinned in the middle of the screen; a longer, unhurried reveal */
  .sv-intro{min-height:150vh;min-height:150svh}
  .sv-intro__pin{top:calc(var(--hdr) + 10vh);padding:24px 0 var(--s7)} /* as on desktop: pinned in the upper part, with room below when the section ends */
  .sv-intro__text{margin-top:0;max-width:none;font-size:clamp(24px,6.6vw,28px);line-height:1.12;font-weight:500;letter-spacing:-.02em;text-wrap:balance}
  .sv-chip,.sv-st.sv-st--lines .w.sv-chip{width:.85em;height:.85em;margin:0 .12em}
  .sv-st[data-words="pin"] .w{transition:opacity .55s cubic-bezier(.22,1,.36,1)}
}
@media (max-width:380px){.sv-intro__text{font-size:26px}}
@media (max-width:380px) and (max-height:700px){.sv-intro__text{font-size:24px;line-height:1.14}.sv-intro__pin{padding:16px 0}}
@media (prefers-reduced-motion:reduce){.sv-intro{min-height:0!important}.sv-intro__pin{position:static;padding:var(--s7) 0}.sv-st[data-words="pin"] .w{opacity:1}}

/* Since October 7th: a feature band — the fact, the turn (film + call), the closing statement */
.sv-tether{background:var(--ink);color:#fff}
.sv-tether__h{color:#fff}
.sv-tether .sv-label{color:var(--on-dk-65)}
.sv-fact{position:relative}
.sv-fact::before{content:"";display:block;width:40px;height:2px;background:var(--gold);margin-bottom:var(--s3)}
.sv-fact__n{font-size:clamp(40px,4.6vw,64px);line-height:1;font-weight:700;letter-spacing:-.04em;color:#fff}
.sv-fact__n em{font-weight:inherit}
.sv-fact__cap{margin-top:var(--s3);font-size:20px;line-height:1.55;color:rgba(255,255,255,.74);max-width:42ch}
.sv-fact__src{margin-top:var(--s2);font-size:14px;line-height:1.4;font-weight:500;color:var(--on-dk-65)}
.sv-tether__heart{font-size:20px;line-height:1.5;color:var(--on-dk-65)}
.sv-tether__line{margin-top:var(--s2);max-width:14ch;font-size:clamp(34px,4.2vw,60px);color:rgba(255,255,255,.7)}
.sv-tether__line em{font-weight:700;color:#fff}
.sv-tether__cta .sv-btn{margin-top:32px}
.sv-tether__close{padding:80px 0 112px}
.sv-quote{margin:0 auto;padding:0;display:flex;flex-direction:column;align-items:center;text-align:center}
.sv-quote::before{content:"";display:block;width:40px;height:2px;background:var(--gold);margin-bottom:34px}
.sv-quote p{font-size:clamp(26px,3.4vw,48px);line-height:1.18;font-weight:400;letter-spacing:-.03em;max-width:26ch;text-wrap:balance;color:#fff}
/* film: refined frame in the site's radius language */
.sv-film{width:400px}
.sv-film__frame{position:relative;aspect-ratio:9 / 16;background:#000;border-radius:24px;overflow:hidden;box-shadow:0 0 0 1px rgba(255,255,255,.12)}
.sv-film video{display:block;width:100%;height:100%;object-fit:contain;background:#000}
.sv-film__play{position:absolute;left:20px;bottom:20px;width:56px;height:56px;display:grid;place-items:center;border:0;border-radius:50%;
  background:#fff;color:var(--ink);cursor:pointer;transition:background .15s ease,color .15s ease}
.sv-film__play svg{width:22px;height:22px;margin-left:3px}
.sv-film__play:hover{background:var(--ink);color:#fff;box-shadow:0 0 0 1px rgba(255,255,255,.6)}
.sv-film.is-started .sv-film__play{display:none}
.sv-film__cap{margin-top:var(--s2);font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--on-dk-65)}
.sv-sound{position:absolute;left:16px;bottom:64px;display:inline-flex;align-items:center;gap:8px;padding:8px 14px 8px 12px;border:0;border-radius:999px;
  background:rgba(255,255,255,.94);color:var(--ink);font:500 14px/1 var(--font);cursor:pointer;transition:background .15s ease,color .15s ease}
.sv-sound:hover{background:var(--gold);color:var(--ink)}
.sv-sound svg{width:16px;height:16px}
.sv-sound[hidden]{display:none}

/* Layout: one balanced split (story left, film right), then the closing statement on deeper navy */
.sv-tether .sv-tether__open{padding:112px 0}
.sv-tether .sv-tether__split{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:var(--s6);align-items:center}
.sv-tether .sv-tether__h{margin-top:var(--s3);font-size:clamp(40px,5.4vw,78px);line-height:1.04;letter-spacing:-.04em;max-width:13ch}
.sv-tether .sv-fact{margin-top:56px}
.sv-tether .sv-tether__cta{margin-top:56px}
.sv-tether .sv-tether__close{background:#030F26}

@media (max-width:960px){
  .sv-tether .sv-tether__split{grid-template-columns:1fr;row-gap:0}
  .sv-tether .sv-tether__copy{display:contents}
  .sv-tether .sv-tether__copy > *{order:1}
  .sv-tether .sv-tether__film{order:2;margin-top:var(--s4)}
  .sv-tether .sv-tether__cta{order:3;margin-top:36px}
  .sv-film{width:min(78%,calc(56svh * 9 / 16));margin:0 auto}
  .sv-film__cap,.sv-film__text{text-align:center}
}
@media (max-width:768px){
  .sv-tether .sv-tether__open{padding:56px 0}
  .sv-tether .sv-fact{margin-top:36px}
  .sv-fact__cap{font-size:17px}
  .sv-tether__heart{font-size:18px}
  .sv-tether__close{padding:56px 0}
  .sv-quote::before{margin-bottom:20px}
  .sv-film__frame{border-radius:18px}
  .sv-sound{left:12px;bottom:56px}
}

/* Closing pledge call to action (end of the homepage) */
.sv-closing{padding:var(--s7) 0}
.sv-closing__inner{display:flex;flex-direction:column;align-items:center;text-align:center}
.sv-closing__h{max-width:26ch;font-size:clamp(28px,3.4vw,48px);line-height:1.12;text-wrap:balance}
.sv-closing__line{margin-top:var(--s3);font-size:21px;line-height:1.4;font-weight:700;letter-spacing:-.01em;color:var(--ink);white-space:nowrap}
.sv-closing__btn{margin-top:var(--s4)}
@media (max-width:768px){.sv-closing{padding:var(--s6) 0}.sv-closing__h{font-size:28px}.sv-closing__line{white-space:normal;font-size:18px;margin-top:var(--s2)}.sv-closing__last{display:block}}

/* Our story: NBIM-style timeline — big dates on one accent line with ticks, captions beneath */
.sv-story__intro{max-width:52ch}
.sv-story__intro .sv-lead{font-size:20px;line-height:1.55}
.sv-story__intro p + p{margin-top:var(--s3)}
.sv-tl{--tl-date:112px;position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:32px;margin-top:var(--s5)}
.sv-tl::before{content:"";position:absolute;left:0;right:0;top:calc(var(--tl-date) + 20px);height:1px;background:var(--gold)}
.sv-tl__i{position:relative;padding-top:calc(var(--tl-date) + 20px)}
.sv-tl__i::before{content:"";position:absolute;left:0;top:calc(var(--tl-date) + 14px);width:1px;height:13px;background:var(--gold)}
.sv-tl__d{position:absolute;left:0;right:0;bottom:calc(100% - var(--tl-date));font-size:clamp(28px,2.9vw,42px);line-height:1.05;font-weight:700;letter-spacing:-.035em;color:var(--ink);text-wrap:balance}
.sv-tl__t{margin-top:var(--s3);font-size:18px;line-height:1.5;color:var(--ink-65);max-width:22ch}
@media (max-width:768px){
  .sv-tl{grid-template-columns:1fr;row-gap:var(--s4);margin-top:var(--s4);--tl-date:0px;padding-left:24px}
  .sv-tl::before{top:0;bottom:0;left:0;right:auto;width:1px;height:auto}
  .sv-tl__i{padding-top:0}
  .sv-tl__i::before{top:14px;left:-24px;width:13px;height:1px}
  .sv-tl__d{position:static;font-size:30px}
  .sv-tl__t{margin-top:8px;font-size:17px}
}
[dir="rtl"] .sv-tl__i::before{left:auto;right:0}
[dir="rtl"] .sv-tl__d{text-align:start}
@media (max-width:768px){[dir="rtl"] .sv-tl{padding-left:0;padding-right:24px}[dir="rtl"] .sv-tl::before{left:auto;right:0}[dir="rtl"] .sv-tl__i::before{left:auto;right:-24px}}

/* Arm sections (Shareholder Arm, Giving Arm): wide heading, lead in one measure, points beneath, then the link */
.sv-arm__h{margin-top:var(--s3);max-width:22ch}
.sv-arm__lead{max-width:68ch;margin-top:54px}
.sv-arm__lead > p{font-size:20px;line-height:1.6}
.sv-arm__lead > p + p{margin-top:var(--s3)}
.sv-points{list-style:none;margin:54px 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px var(--s5);max-width:1040px}
.sv-points li{position:relative;margin:0;padding:2px 0 2px 28px;font-size:18px;line-height:1.55;font-weight:500;color:var(--ink);max-width:36ch}
.sv-points li::before{content:"";position:absolute;top:0;bottom:0;left:0;width:3px;border-radius:2px;background:var(--gold)}
.sv-points--list{grid-template-columns:1fr;gap:20px;max-width:68ch}
.sv-points--list li{max-width:none}
.sv-arm__more{margin-top:54px}
@media (max-width:768px){
  .sv-arm__lead{margin-top:var(--s4)}
  .sv-arm__lead > p{font-size:19px}
  .sv-points{grid-template-columns:1fr;gap:18px;margin-top:var(--s4)}
  .sv-points li{font-size:17px;max-width:none}
  .sv-arm__more{margin-top:var(--s4)}
}

/* Contact */
.sv-contact__text{margin-top:20px;font-size:19px;line-height:1.55;font-weight:400;color:var(--ink-65);max-width:38ch}


/* ---------- Pledge (body.sv-pledge) ---------- */
/* Pledge hero on navy: the home page's label (short gold rule over a small label), the motto stacked on the left
   with its gold last line, the faded seal large and cropped on the right */
.pl-hero{position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:center;min-height:min(64vh,640px);
  padding:calc(var(--hdr) + var(--s5)) 0 var(--s5);background:var(--ink);color:#fff}
.pl-hero__grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:32px;align-items:center}
.pl-hero__inner{grid-column:1 / span 8;display:flex;flex-direction:column;align-items:flex-start;text-align:start}
.pl-hero__label{display:flex;flex-direction:column;align-items:flex-start;gap:14px;margin:0;font-size:14px;line-height:1.4;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:rgba(255,255,255,.72)}
.pl-hero__label::before{content:"";display:block;width:32px;height:2px;border-radius:2px;background:var(--gold)}
.pl-hero__motto{margin:28px 0 0;font-size:clamp(42px,5.4vw,82px);line-height:1.06;font-weight:700;letter-spacing:-.025em;color:#fff}
.pl-hero__motto span,.pl-hero__motto em{display:block}
.pl-hero__motto em{font-style:normal;color:var(--gold)}
.pl-hero__actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-start;gap:14px 28px;margin-top:40px}
.pl-hero__who{font-size:17px;color:#fff}
.pl-hero__who:hover{color:var(--gold)}
.pl-hero__wm{position:absolute;z-index:0;top:50%;inset-inline-end:max(-180px,calc(50% - 820px));width:min(64vw,760px);aspect-ratio:1;transform:translateY(-50%);border-radius:50%;
  background:var(--pl-seal) 50% 29.2% / 125% auto no-repeat;filter:grayscale(1) contrast(1.15);mix-blend-mode:screen;opacity:.42;pointer-events:none;
  -webkit-mask-image:radial-gradient(circle,#000 62%,transparent 71%);mask-image:radial-gradient(circle,#000 62%,transparent 71%)}
@media (max-width:1023px){.pl-hero__inner{grid-column:1}.pl-hero__wm{width:120vw;inset-inline-end:-45vw}}
@media (max-width:960px){.pl-hero__grid{grid-template-columns:1fr;row-gap:28px}}
@media (max-width:768px){.pl-hero{padding:calc(var(--hdr) + var(--s4)) 0 var(--s5)}}
@media (max-width:640px){.pl-hero{min-height:0;padding-top:calc(var(--hdr) + 40px);padding-bottom:48px}.pl-hero__motto{font-size:38px;margin-top:22px}.pl-hero__label{font-size:12px}.pl-hero__wm{opacity:.28}}
.pl-measure{max-width:760px}

.pl-belief__statement{font-size:26px;line-height:1.38;letter-spacing:-.014em;text-wrap:pretty}
.pl-belief{padding:var(--s5) 0}
.pl-commit{position:relative;overflow:clip;padding:var(--s5) 0} /* clip, not hidden: hidden makes the section a scrollport and kills the sticky left column */
.pl-commit > .sv-wrap{position:relative;z-index:1}
.pl-take{padding-top:var(--s5);border-top:1px solid var(--rule)}
.pl-belief__more{margin-top:var(--s3);padding-top:var(--s3);border-top:1px solid var(--rule)}
.pl-belief__more p{font-size:18px;line-height:1.55;max-width:62ch}
.pl-belief__more p + p{margin-top:var(--s2)}

/* The seven commitments: one white charter panel, gold numerals in a 40px column, faint hairlines, faded seal in the corner */
.pl-charter{position:relative;overflow:visible;padding:36px 40px 40px;background:#fff;border-radius:20px;box-shadow:0 1px 0 rgba(6,24,58,.04)}
/* One seal straddling the panel's bottom-end corner: half on the white panel, half on the section ground (the section clips it at its own edges) */
.pl-charter::before{content:"";position:absolute;z-index:0;inset-inline-end:-250px;bottom:-130px;width:600px;aspect-ratio:1;border-radius:50%;background:var(--sv-seal) center/cover no-repeat;opacity:.05;filter:grayscale(1);mix-blend-mode:multiply;pointer-events:none}
/* header rule: a navy hairline with a short gold lead, like a contract's title rule */
.pl-charter::after{content:"";position:absolute;z-index:1;left:40px;right:40px;top:0;height:0;border-top:2px solid var(--ink)}
.pl-pledge{position:relative;z-index:1;list-style:none;margin:0;padding:0;counter-reset:none;border-bottom:1px solid var(--ink);box-shadow:0 3px 0 -1px #fff,0 4px 0 -1px var(--ink)}
.pl-pledge__item{display:grid;grid-template-columns:32px minmax(0,1fr);align-items:baseline;margin:0;padding:16px 0 17px;border:0;border-top:1px solid rgba(6,24,58,.08);background:none;border-radius:0}
.pl-pledge__item:first-child{border-top:0;padding-top:2px}
.pl-pledge__item:last-child{padding-bottom:18px}
.pl-pledge__item p{display:block;margin:0;font-size:17px;line-height:1.55;font-weight:400;color:var(--ink);text-wrap:pretty}
.pl-pledge__n{display:block;font-size:12px;line-height:1;font-weight:700;letter-spacing:.12em;color:var(--gold-ink);font-variant-numeric:tabular-nums lining-nums}
.pl-pledge__n::after{content:"."}
.pl-pledge__qual{font-weight:500}

/* form */
.pl-group{margin:0;padding:0 0 var(--s4);border:0;min-width:0}
.pl-group + .pl-group{padding-top:var(--s4);border-top:1px solid var(--rule)}
.pl-group__t{display:block;float:left;width:100%;margin:0 0 var(--s3);padding:0;color:var(--ink)}
.pl-group__q{display:block;font-size:22px;line-height:1.4;font-weight:500;letter-spacing:-.012em;text-wrap:pretty}
.pl-group__t + *{clear:both}
.pl-final{width:100%;margin:0 0 var(--s2);padding:var(--s3) 0 0;border-top:1px solid var(--ink);font-size:24px;line-height:1.4;font-weight:400;letter-spacing:-.014em;text-wrap:balance}
.pl-req{color:var(--ink-40);font-weight:400}
[hidden]{display:none!important}
.pl-form{display:block}
.pl-form__body{gap:var(--s3)}
.pl-details{padding-top:var(--s7)}
@media (min-width:961px){.pl-details{padding-top:48px;padding-bottom:64px}}
.pl-submit{display:flex;flex-direction:column;align-items:flex-start;gap:var(--s2);margin-top:var(--s5)}
.sv-pledge .thanks{margin-top:0}
@media (max-width:960px){.pl-measure{max-width:none}}
@media (max-width:768px){
  .pl-belief{padding:var(--s4) 0}
  .pl-commit{padding:var(--s4) 0}
  .pl-take{padding-top:var(--s5)}
  .pl-belief__statement{font-size:22px;line-height:1.4}
  .pl-belief__more{margin-top:var(--s3);padding-top:var(--s3)}
  .pl-belief__more p,.pl-pledge__item p{font-size:17px}
  .pl-charter{padding:22px 22px 26px;border-radius:18px}
  .pl-charter::before{width:340px;inset-inline-end:-130px;bottom:-70px}
  .pl-charter::after{left:22px;right:22px}
  .pl-pledge__item{grid-template-columns:28px minmax(0,1fr);padding:14px 0 15px}
  .pl-group{padding-bottom:var(--s3)}
  .pl-group + .pl-group{padding-top:var(--s3)}
  .pl-group__q{font-size:19px}
  .pl-final{font-size:21px}
}

/* ---------- Password gate (body.sv-gatepage): one centred white card that scales with the window height, no scrolling ---------- */
.sov .gate{display:flex;align-items:center;justify-content:center;min-height:100vh;min-height:100svh;box-sizing:border-box;padding:calc(var(--hdr) + 24px) var(--gut) 24px;background:var(--warm)}
.sov.sv-gatepage--bare .gate{padding-top:var(--s6)}
.gate-card{width:100%;max-width:560px;display:flex;flex-direction:column;align-items:center;text-align:center;background:var(--paper);border:1px solid var(--rule);border-radius:24px;padding:clamp(24px,4.5vh,52px) clamp(24px,3.5vw,48px) clamp(20px,3.5vh,40px)}
.gate-card__seal{width:clamp(64px,11vh,140px);height:clamp(64px,11vh,140px);margin-bottom:clamp(10px,1.8vh,20px)}
.gate-card__brand{font-size:clamp(17px,2.3vh,22px);line-height:1.2;font-weight:700;letter-spacing:-.015em;color:var(--ink)}
.gate-card__page{margin-top:clamp(8px,1.6vh,16px);justify-content:center}
.gate-card__title{margin-top:clamp(6px,1.2vh,12px);font-size:clamp(28px,4.6vh,44px);line-height:1.05;font-weight:700;letter-spacing:-.035em;color:var(--ink);text-wrap:balance}
.gate-card__text{margin-top:clamp(6px,1.2vh,12px);font-size:clamp(16px,2.3vh,21px);line-height:1.4;color:var(--ink-65)}
.gate-form{width:100%;margin-top:clamp(16px,3vh,32px);gap:clamp(8px,1.4vh,14px)}
.gate-field{gap:8px}
.sv-field.gate-field input{height:clamp(46px,6vh,56px);padding:0 24px;border:1px solid var(--rule);border-radius:999px;background:var(--alt);box-shadow:none;text-align:center;font-size:17px;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}
.sv-field.gate-field input:hover{border-color:var(--rule-2)}
.sv-field.gate-field input:focus{border-color:var(--gold);box-shadow:0 0 0 2px var(--gold);background:#fff}
.sv-field.gate-field input[aria-invalid="true"]{border-color:#9b1c1c;box-shadow:0 0 0 2px #9b1c1c}
.sv-form .gate-form__btn{justify-self:stretch;justify-content:center;height:clamp(46px,6vh,56px);margin-top:0;font-size:17px;font-weight:700}
.gate-form__btn:hover{background:#0d2a66;border-color:#0d2a66}
.gate-err,.gate-ok{display:none;margin:0;font-size:15px;line-height:1.5}
.gate-err{color:#9b1c1c}
.gate-ok{color:var(--ink)}
/* Gate footer: two stacked rows — "Request the password ›" and "‹ Back to the homepage" — hairlines, 44px rows, chevrons slide on hover */
.gate-card__foot{display:flex;flex-direction:column;align-items:stretch;width:100%;max-width:360px;margin:clamp(14px,2.6vh,28px) auto 0;border-top:1px solid rgba(6,24,58,.08)}
.gate-card__req,.gate-card__back{display:flex;align-items:center;justify-content:center;gap:6px;min-height:clamp(38px,5vh,44px);padding:0 8px;font-size:16px;font-weight:500;color:var(--ink);text-decoration:none;border-bottom:1px solid rgba(6,24,58,.08);transition:color .15s ease}
.gate-card__back{color:var(--ink-65)}
.gate-card__req:hover,.gate-card__back:hover{color:var(--gold-ink)}
.gate-card__chev{flex:none;width:15px;height:15px;transition:transform .2s var(--ease)}
.gate-card__chev--start{transform:scaleX(-1)}
.gate-card__req:hover .gate-card__chev--end{transform:translateX(4px)}
.gate-card__back:hover .gate-card__chev--start{transform:scaleX(-1) translateX(4px)}
[dir="rtl"] .gate-card__chev--end{transform:scaleX(-1)}
[dir="rtl"] .gate-card__chev--start{transform:none}
[dir="rtl"] .gate-card__req:hover .gate-card__chev--end{transform:scaleX(-1) translateX(4px)}
[dir="rtl"] .gate-card__back:hover .gate-card__chev--start{transform:translateX(4px)}
@media (max-width:768px){
  .sov .gate,.sov.sv-gatepage--bare .gate{padding:calc(var(--hdr) + 16px) 16px 16px}
  .sov.sv-gatepage--bare .gate{padding-top:16px}
  .gate-card{padding:clamp(22px,4vh,40px) 22px clamp(18px,3vh,32px);border-radius:20px}
  .gate-card__seal{width:clamp(56px,10vh,110px);height:clamp(56px,10vh,110px)}
  .gate-card__title{font-size:clamp(26px,4.2vh,32px)}
  .gate-card__text{font-size:clamp(15px,2.2vh,18px)}
}

/* Ethical-commitment panel: always a solid navy block (one rule, every breakpoint, before/after motion, JS off) */
.pl-ethic{margin:var(--s4) 0 0;padding:28px;max-width:400px;border:0;border-radius:20px;background:var(--ink);color:rgba(255,255,255,.85);font-size:16px;line-height:1.6}
.pl-ethic strong{display:block;margin-bottom:var(--s2);font-size:28px;line-height:1.12;font-weight:700;letter-spacing:-.025em;color:#fff;max-width:14ch;text-wrap:balance}
.pl-ethic__b{display:block;color:rgba(255,255,255,.85)}
@media (min-width:961px){.sv-pledge .sv-split__head,.sov .sv-split__head{position:sticky;top:calc(var(--hdr) + var(--s4));align-self:start}}
@media (max-width:960px){.pl-ethic{max-width:none;margin-top:var(--s3);margin-bottom:var(--s2)}.pl-ethic--desk{display:none}}
@media (max-width:768px){.pl-ethic{padding:22px;border-radius:16px;font-size:16px}.pl-ethic strong{font-size:24px;max-width:none}}
/* Quote in two sentences, each on its own line (owner) */
.sv-quote__l{display:block}
.sv-quote__l + .sv-quote__l{margin-top:.45em}

/* ==========================================================================
   Language switch (header) + Hebrew / right-to-left (pages under /he: <html lang="he" dir="rtl">)
   Red Hat Display stays for Latin and digits; Heebo supplies the Hebrew glyphs (per-character fallback).
   ========================================================================== */
.sv-hdr-lang{font-weight:500;color:inherit;opacity:.8}
.sv-hdr-lang:hover{opacity:1}
.sv-hdr-lang[lang="he"]{font-family:"Heebo","Red Hat Display",sans-serif;font-size:16px}
@media (max-width:900px){.sv-hdr-lang{font-size:14px;padding:0 10px}}
html[lang="he"]{--font:"Red Hat Display","Heebo",system-ui,-apple-system,"Segoe UI",Arial,sans-serif}
html[lang="he"] .sv-st,html[lang="he"] .sv-line,html[lang="he"] .sv-fact__n,html[lang="he"] .sv-quote p,
html[lang="he"] .sv-hero__tag,html[lang="he"] .sv-statement,html[lang="he"] .sv-closing__line,html[lang="he"] .pl-group__q,html[lang="he"] .pl-final,
html[lang="he"] .sv-footer__line,html[lang="he"] .sv-mi__a,html[lang="he"] .gate-card__title,
html[lang="he"] .sv-steps h3,html[lang="he"] .pl-ethic strong{letter-spacing:-.005em}
html[lang="he"] .sv-st,html[lang="he"] .sv-line{line-height:1.16}
html[lang="he"] .sv-label,html[lang="he"] .sv-footer__h,html[lang="he"] .sv-menu__label,html[lang="he"] .sv-fact__src,html[lang="he"] .sv-film__cap{letter-spacing:.01em;font-size:14px}
/* mirrored physical properties */
[dir="rtl"] .sov .skip{left:auto;right:-9999px}
[dir="rtl"] .sov .skip:focus{right:16px}
[dir="rtl"] .sv-ticks li{padding:0 18px 0 0}
[dir="rtl"] .sv-ticks li::before{left:auto;right:0}
[dir="rtl"] .sv-points li{padding:2px 28px 2px 0}
[dir="rtl"] .sv-points li::before{left:auto;right:0}
[dir="rtl"] .sov .thanks{border-left:1px solid var(--rule);border-right:2px solid var(--gold)}
[dir="rtl"] .sv-footer__top-btn{margin-left:0;margin-right:auto}
[dir="rtl"] .sv-film__play{left:auto;right:20px}
[dir="rtl"] .sv-sound{left:auto;right:16px}
[dir="rtl"] .sv-field select{background-position:left 14px center;padding-right:14px;padding-left:40px}
[dir="rtl"] .pl-group__t{float:right}
/* directional arrows point the reading way */
[dir="rtl"] .sv-btn svg,[dir="rtl"] .sv-link svg,[dir="rtl"] .sv-mi__chev{transform:scaleX(-1)}
[dir="rtl"] .sv-mi.is-open > .sv-mi__a .sv-mi__chev{transform:scaleX(-1) rotate(90deg)}
@media (max-width:768px){[dir="rtl"] .sv-sound{right:12px}}
@media (max-width:640px){[dir="rtl"] .sv-hdr-menu{margin-right:0;margin-left:-13px}[dir="rtl"] .sv-footer__top-btn{margin-right:0}}
/* Film caption links to the Shareholder Arm section */
.sv-film__cap a{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;color:inherit;text-decoration:none;border-bottom:1px solid transparent;transition:border-color .15s,color .15s}
.sv-film__cap:hover a,.sv-film__cap a:focus-visible{color:#fff;border-bottom-color:rgba(255,255,255,.6)}
.sv-film__capArrow{width:12px;height:12px;flex:none;stroke:currentColor;fill:none}
.sv-film__text{margin-top:var(--s1);color:var(--on-dk-65)}
.sv-film__text summary{display:inline-flex;align-items:center;gap:6px;cursor:pointer;list-style:none;font-size:13px;font-weight:500;letter-spacing:.02em;color:var(--on-dk-65);border-bottom:1px solid transparent;transition:border-color .15s,color .15s}
.sv-film__text summary::-webkit-details-marker{display:none}
.sv-film__text summary::after{content:"";width:6px;height:6px;margin-top:-3px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);transition:transform .2s var(--ease)}
.sv-film__text[open] summary::after{transform:translateY(3px) rotate(-135deg)}
.sv-film__text summary:hover,.sv-film__text summary:focus-visible{color:#fff;border-bottom-color:rgba(255,255,255,.6)}
.sv-film__text summary:focus-visible{outline:2px solid #fff;outline-offset:3px}
.sv-film__words{margin-top:var(--s2);font-size:15px;line-height:1.55;text-align:start}
.sv-film__words p + p{margin-top:.6em}
.sv-film__fine{font-size:13px;opacity:.85}
.sv-film video::cue{font-family:var(--font);font-size:15px;line-height:1.35;color:#fff;background:rgba(6,24,58,.82)}
html[dir="rtl"] .sv-film__capArrow{transform:scaleX(-1)}

/* Pledge: address block, consent group, helper text */
.pl-help{display:block;margin-top:6px;font-size:15px;line-height:1.5;font-weight:400;letter-spacing:0;color:var(--ink-65)}
.pl-display{margin-top:var(--s3);max-width:360px}
.pl-confidential{display:flex;gap:10px;align-items:flex-start;margin-top:var(--s4);font-size:15px;line-height:1.55;color:var(--ink-65)}
.pl-confidential svg{flex:none;width:18px;height:18px;margin-top:3px;opacity:.7}

/* Details form (pledge): three quiet steps, two fields per row, nothing boxed, one hairline above the signature */
.pl-details .pl-form__body{gap:0}
.pl-step{margin-top:16px}
.pl-step:not(:first-child):not(:has(> .pl-step__h)){margin-top:14px} /* steps without a heading sit closer */
.pl-step:first-child{margin-top:0}
.pl-step__h{margin:0 0 10px;font-size:15px;line-height:1.4;font-weight:500;letter-spacing:-.01em;color:var(--ink)}
.pl-g{display:grid;grid-template-columns:minmax(0,1fr);gap:14px 20px}
.pl-g + .pl-g,.pl-g + .pl-seg{margin-top:14px}
.pl-g--contact{grid-template-columns:repeat(2,minmax(0,1fr))}
@media (min-width:1280px){.pl-g--contact{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr) auto}}
.pl-g--contact .pl-seg{min-width:0}
.pl-g--contact .pl-pill{min-height:46px}
.pl-g--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.pl-g[data-shows-when]{margin-top:14px}
.pl-g--after > .sv-field{grid-column:2}
.pl-g--2:has(> [data-shows-when][hidden]) > .sv-field:not([data-shows-when]){grid-column:1 / -1}
.pl-g--name{grid-template-columns:120px repeat(2,minmax(0,1fr))}
.pl-details .sv-field{gap:6px;min-width:0}
.pl-details .sv-field > input,.pl-details .sv-field > select{height:46px}
.pl-details .sv-field > label,.pl-seg__l{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-65);line-height:1.3}
/* Segmented pills (preferred contact, sharing) */
.pl-seg{margin:0;padding:0;border:0;min-width:0}
.pl-seg__l{display:block;padding:0;margin:0 0 6px}
.pl-pills{display:flex;flex-wrap:wrap;gap:8px}
.pl-pill{position:relative;display:inline-flex;align-items:center;min-height:40px;padding:0 18px;border:1px solid var(--rule-2);border-radius:999px;background:transparent;font-size:15px;font-weight:500;line-height:1;color:var(--ink);cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease;white-space:nowrap}
.pl-pill:hover{border-color:var(--ink)}
.pl-pill input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer;-webkit-appearance:none;appearance:none}
.pl-pill:has(input:checked){background:var(--ink);border-color:var(--ink);color:#fff}
.pl-pill:has(input:focus-visible){outline:2px solid var(--ink);outline-offset:3px}
/* Optional mailing address behind a text toggle (native details: works without JS) */
.pl-more{margin-top:14px}
.pl-toggle{display:inline-block;list-style:none;cursor:pointer;font-size:15px;font-weight:500;color:var(--ink);text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:1px;text-decoration-color:var(--rule-2);transition:text-decoration-color .15s ease}
.pl-toggle::-webkit-details-marker{display:none}
.pl-toggle::marker{content:""}
.pl-toggle:hover{text-decoration-color:var(--gold)}
.pl-toggle:focus-visible{outline:2px solid var(--ink);outline-offset:4px;border-radius:2px}
.pl-more[open] > .pl-toggle{color:var(--ink-65)}
.pl-more__body{margin-top:12px}
.pl-more__body .pl-help{margin:0 0 14px}
.pl-details .pl-help{display:block;font-size:14px;line-height:1.5;color:var(--ink-65)}
/* Staying in touch: plain rows, helper on the same line */
.pl-rows{display:flex;flex-direction:column;gap:10px}
.pl-row{display:flex;gap:12px;align-items:flex-start;margin:0;padding:0;font-size:16px;line-height:1.5;color:var(--ink);cursor:pointer}
.pl-row > input{flex:none;width:18px;height:18px;margin:3px 0 0;-webkit-appearance:none;appearance:none;border:1px solid rgba(6,24,58,.45);border-radius:2px;background:#fff;cursor:pointer;display:grid;place-items:center}
.pl-row > input::before{content:"";width:10px;height:6px;border:2px solid #fff;border-top:0;border-right:0;transform:scale(0) rotate(-45deg);margin-top:-2px;transition:transform .15s ease}
.pl-row > input:checked{background:var(--ink);border-color:var(--ink)}
.pl-row > input:checked::before{transform:scale(1) rotate(-45deg)}
.pl-row > input:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
.pl-row small{display:inline;margin-inline-start:6px;font-size:13px;color:var(--ink-65)}
.pl-share{margin-top:16px}
.pl-share__q{display:block;padding:0;margin:0 0 8px;font-size:16px;line-height:1.5;color:var(--ink)}
.pl-details .pl-share .pl-display{margin-top:12px;max-width:320px}
.pl-details .pl-confidential{margin-top:12px;font-size:13px;line-height:1.5}
.pl-details .pl-submit{margin-top:18px;gap:18px}
.pl-details .pl-final{margin-bottom:0;padding-top:18px;font-size:20px;border-top:1px solid var(--ink)}
@media (min-width:961px){
  /* statement and button on one row under a single rule; sharing pills and "Show my name as" side by side */
  .pl-details .pl-submit{flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px 24px;padding-top:18px;border-top:1px solid var(--ink)}
  .pl-details .pl-final{flex:1 1 420px;width:auto;padding-top:0;border-top:0;margin:0}
  .pl-details .pl-submit .form-note{flex-basis:100%}
  .pl-details .pl-share{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:end;column-gap:20px}
  .pl-details .pl-share .pl-pills{grid-column:1}
  .pl-details .pl-share .pl-display{grid-column:2;margin-top:0;max-width:300px}
}
@media (max-width:768px){
  /* phones: tighter rhythm — 44px fields, 12px row gaps, pill groups on one row, short fields paired */
  .pl-details{padding-top:48px;padding-bottom:56px}
  .pl-step{margin-top:14px}
  .pl-step__h{margin:0 0 8px;font-size:14px}
  .pl-g{gap:12px 10px}
  .pl-g + .pl-g,.pl-g + .pl-seg,.pl-more{margin-top:12px}
  .pl-g--2{grid-template-columns:1fr}
  .pl-g--after > .sv-field{grid-column:auto}
  .pl-g[data-shows-when]{margin-top:12px}
  .pl-g--contact{grid-template-columns:1fr}
  .pl-g--contact .pl-seg{grid-column:1 / -1}
  .pl-more__body{margin-top:10px}
  .pl-more__body .pl-help{margin:0 0 10px}
  .pl-more__body .pl-g--2{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pl-g--name{grid-template-columns:34% minmax(0,1fr)}
  .pl-g--name > .sv-field:nth-child(3){grid-column:1 / -1}
  .pl-details .sv-field{gap:5px}
  .pl-details .sv-field > input,.pl-details .sv-field > select{height:44px}
  .pl-seg__l{margin-bottom:5px}
  .pl-details .pl-pills{flex-wrap:nowrap;gap:8px}
  .pl-details .pl-pill,.pl-g--contact .pl-pill{flex:1 1 0;min-width:0;justify-content:center;min-height:44px;padding:0 10px;font-size:15px;white-space:nowrap}
  .pl-details .pl-help{font-size:12px}
  .pl-rows{gap:8px}
  .pl-row small{display:inline;margin-inline-start:6px;font-size:12px}
  .pl-share{margin-top:12px}
  .pl-share__q{margin-bottom:6px;font-size:15px}
  .pl-details .pl-share .pl-display{margin-top:10px}
  .pl-details .pl-confidential{margin-top:10px;font-size:12px}
  .pl-details .pl-submit{margin-top:14px;gap:14px}
  .pl-details .pl-final{padding-top:14px;font-size:18px}
}
@media (max-width:375px){.pl-details .pl-pill,.pl-g--contact .pl-pill{font-size:14px;padding:0 8px;white-space:normal;text-align:center;line-height:1.15}}

/* New Table as a bubble inside the Giving Arm */
/* Bubble tone = the opposite of its section ground */
.sv-bubble{padding:36px;background:#fff;border-radius:24px}
.sv-sec--white .sv-bubble{background:var(--warm)}
.sv-sec--blue .sv-bubble{background:#fff}
/* Arm body: text on the left, the bubble beside it (sticky while the text scrolls); RTL mirrors via grid */
.sv-arm__cols{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:32px;align-items:start;margin-top:54px}
.sv-arm__text{grid-column:1 / span 6;min-width:0}
.sv-arm__cols .sv-bubble{grid-column:8 / span 5;min-width:0;position:sticky;top:calc(var(--hdr) + 24px);align-self:start}
.sv-arm__cols .sv-arm__lead{margin-top:0;max-width:none}
.sv-arm__cols .sv-points{margin-top:40px;grid-template-columns:1fr;gap:18px;max-width:none}
.sv-arm__cols .sv-points li{max-width:none}
.sv-arm__cols + .sv-arm__more{margin-top:40px}
.sv-bubble--how .sv-label{margin-bottom:20px}
.sv-bubble__steps{display:grid;grid-template-columns:1fr;row-gap:20px;column-gap:0}
.sv-bubble__steps h3{font-size:20px;line-height:1.3}
.sv-bubble__steps p{margin-top:6px;font-size:16px;line-height:1.55;max-width:none}
.sv-bubble__h{margin-top:12px;max-width:none;font-size:26px;line-height:1.2;letter-spacing:-.02em}
.sv-bubble__text{margin-top:18px;max-width:none}
.sv-bubble__text p{font-size:16px;line-height:1.6;text-wrap:pretty}
.sv-bubble__text p + p{margin-top:12px}
@media (max-width:960px){
  .sv-arm__cols{display:block;margin-top:var(--s4)}
  .sv-arm__cols .sv-bubble{position:static;margin-top:var(--s4)}
}
@media (max-width:768px){.sv-bubble{padding:28px 22px;border-radius:20px}.sv-bubble__steps li{padding:0}}

/* Participation (pledge): compact groups with pill options */
.pl-take__body{max-width:860px}
.pl-take .pl-form__body{gap:0}
.pl-take .pl-group{padding:0;border:0}
.pl-take .pl-group + .pl-group{margin-top:22px;padding-top:0;border-top:0}
.pl-take .pl-group__t{margin:0 0 12px}
.pl-take .pl-group__q{font-size:18px;line-height:1.4;font-weight:500;letter-spacing:-.01em}
.pl-take .pl-pills{gap:8px}
.pl-take .pl-pill{min-height:40px;padding:9px 18px;border-radius:20px;white-space:normal;line-height:1.3;font-size:15px;text-align:start}
.pl-take .pl-pill span{display:inline-flex;align-items:center;gap:8px}
@media (max-width:768px){.pl-take .pl-group + .pl-group{margin-top:22px}.pl-take .pl-pill{font-size:14px;padding:8px 14px}}

/* Participation level (multi-select): checkbox rows, with a note under the question */
.pl-group__note{display:block;margin-top:4px;font-size:13px;line-height:1.45;font-weight:400;letter-spacing:0;color:var(--ink-65)}
.pl-rows--level{gap:0}
.pl-rows--level .pl-row{padding:10px 0;font-size:17px;line-height:1.5}
.pl-rows--level .pl-row > input{margin-top:4px}
/* Closing statement quoted from the pledge: italic, two lines */
.sv-closing__q{font-style:italic;font-weight:400;max-width:52ch;font-size:clamp(24px,2.6vw,38px)}
@media (max-width:768px){.sv-closing__q{font-size:24px;max-width:none}}

/* Faded seal watermarks (<div class="sv-wm" aria-hidden="true"> inside a .sv-has-wm section): ≤6% opacity, never over dense text;
   mirrored in RTL; none in print. The same full seal (--pl-seal crop), 640px (380px mobile), centred on the section's bottom-END corner so
   every placement shows the same quarter-arc; 5% on light grounds, 6% white-inverted on navy; one per section, alternating sections */
.sv-has-wm{position:relative;overflow:clip}
.sv-has-wm > .sv-wrap,.sv-has-wm > .sv-arm__cols{position:relative;z-index:1}
.sv-wm{position:absolute;z-index:0;width:640px;aspect-ratio:1;bottom:-320px;inset-inline-end:-320px;border-radius:50%;background:var(--pl-seal) 50% 29.2% / 125% auto no-repeat;opacity:.05;filter:grayscale(1);mix-blend-mode:multiply;pointer-events:none}
.sv-wm--navy{opacity:.06;filter:grayscale(1) invert(1) contrast(1.1);mix-blend-mode:normal}
@media (max-width:768px){.sv-wm{width:380px;bottom:-190px;inset-inline-end:-190px}}
@media print{.sv-wm,.pl-charter::before{display:none}}


/* ==========================================================================
   Who has taken the pledge (body.sv-who): short charter hero with two figures, filters, portrait grid, navy closing
   ========================================================================== */
.who-hero{position:relative;background:#F8F6F0;color:var(--ink);min-height:min(44vh,480px);display:flex;flex-direction:column;justify-content:center;
  padding:calc(var(--hdr) + var(--s5)) 0 var(--s5);border-bottom:1px solid rgba(231,201,138,.3)}
.who-hero .sv-wm--ivory{opacity:.5;filter:none;mix-blend-mode:multiply;background:var(--pl-seal-ivory) 50% 50% / 120% auto no-repeat}
.who-hero__grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:32px;align-items:end}
.who-hero__text{grid-column:1 / span 7}
.who-hero__label{color:var(--gold-ink)}
.who-hero__title{margin-top:16px;font-weight:700;letter-spacing:-.035em;max-width:14ch}
.who-hero__intro{margin-top:18px;max-width:40ch;font-size:22px;line-height:1.4;font-weight:500;letter-spacing:-.012em;color:var(--ink)}
.who-hero__figures{grid-column:9 / span 4;display:grid;grid-template-columns:1fr 1fr;column-gap:32px;align-self:end}
.who-fig{padding-top:14px;border-top:1px solid var(--ink)}
.who-fig__n{font-size:clamp(44px,4.6vw,64px);line-height:1;font-weight:700;letter-spacing:-.03em;font-variant-numeric:tabular-nums lining-nums;color:var(--ink)}
.who-fig__num{display:inline-block;text-align:start}
.who-fig__dash{color:var(--ink-40)}
.who-fig__l{margin-top:8px;font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-65)}
/* empty state */
.who-empty__inner{display:flex;flex-direction:column;align-items:flex-start;gap:28px;max-width:30ch}
.who-empty__line{font-size:clamp(26px,3vw,40px);font-weight:500}
/* filters */
.who-filters{padding:28px 0}
.who-filters + .who-list{padding-top:0;background-image:none}
.who-filters__row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px 24px}
.who-pills{display:flex;flex-wrap:wrap;gap:8px}
.who-pill{min-height:40px;padding:0 16px;border:1px solid var(--rule-2);border-radius:999px;background:transparent;font:500 15px/1 var(--font);color:var(--ink);cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease}
.who-pill:hover{border-color:var(--ink)}
.who-pill.is-on{background:var(--ink);border-color:var(--ink);color:#fff}
.who-pill:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
.who-filters__controls{display:flex;flex-wrap:wrap;gap:8px}
.who-select select,.who-search input{height:40px;border:1px solid var(--rule-2);border-radius:999px;background:#fff;font:500 15px/1 var(--font);color:var(--ink);padding:0 16px;-webkit-appearance:none;appearance:none}
.who-select select{padding-inline-end:40px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2306183A' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") no-repeat right 14px center/16px;cursor:pointer}
[dir="rtl"] .who-select select{background-position:left 14px center}
.who-search{position:relative;display:inline-flex;align-items:center}
.who-search svg{position:absolute;inset-inline-start:14px;width:16px;height:16px;color:var(--ink-65);pointer-events:none}
.who-search input{width:240px;padding-inline-start:38px}
.who-search input::-webkit-search-cancel-button{-webkit-appearance:none}
.who-select select:focus-visible,.who-search input:focus-visible{outline:2px solid var(--ink);outline-offset:2px}
/* grid */
.who-list{padding-bottom:var(--s7)}
.who-list__label{margin:0 0 20px;display:flex;align-items:baseline;gap:10px}
.who-list__count{font-variant-numeric:tabular-nums;color:var(--ink-40)}
.who-spot{margin-bottom:var(--s5)}
.who-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:40px 32px}
.who-grid--spot{grid-template-columns:repeat(3,minmax(0,1fr))}
.who-card{display:flex;flex-direction:column;padding-top:16px;border-top:1px solid var(--ink)}
.who-card[hidden]{display:none}
.who-card__img,.who-card__mono{display:block;width:100%;aspect-ratio:1;object-fit:cover;border-radius:16px;background:var(--warm)}
.who-card__mono{display:grid;place-items:center;background:var(--ink);color:#fff;font-size:clamp(34px,3.2vw,48px);font-weight:700;letter-spacing:-.02em;box-shadow:inset 0 0 0 1px rgba(231,201,138,.55)}
.who-card__body{padding-top:14px}
.who-card__name{font-size:18px;line-height:1.3;font-weight:700;letter-spacing:-.015em;color:var(--ink)}
.who-card__place{margin-top:4px;font-size:15px;line-height:1.45;color:var(--ink-65);font-variant-numeric:tabular-nums}
.who-card__role{margin-top:8px;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-65)}
.who-card__quote{margin-top:10px;font-size:15px;line-height:1.5;font-style:italic;color:var(--ink);text-wrap:pretty}
.who-card--spot .who-card__name{font-size:22px}
.who-card--spot .who-card__quote{font-size:17px}
.who-none{margin:var(--s4) 0 0;font-size:18px;color:var(--ink-65)}
/* closing on navy */
.who-closing{padding:var(--s7) 0}
.who-closing .sv-closing__h,.who-closing .sv-closing__line{color:#fff}
.who-closing .sv-closing__h{font-weight:700;letter-spacing:-.035em}
.who-closing .sv-closing__line{color:rgba(255,255,255,.75)}
@media (max-width:1100px){.who-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:960px){
  .who-hero__grid{grid-template-columns:1fr;row-gap:32px}
  .who-hero__text,.who-hero__figures{grid-column:1}
  .who-hero__figures{max-width:420px}
}
@media (max-width:768px){
  .who-hero{min-height:0;padding:calc(var(--hdr) + var(--s4)) 0 var(--s4)}
  .who-hero__intro{font-size:19px}
  .who-fig__n{font-size:40px}
  .who-filters{padding:20px 0}
  .who-filters__controls{width:100%}
  .who-search{flex:1 1 auto}
  .who-search input{width:100%}
  .who-select{flex:1 1 140px}
  .who-select select{width:100%}
  .who-grid,.who-grid--spot{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 16px}
  .who-card__body{padding-top:12px}
  .who-card__name{font-size:16px}
  .who-card--spot .who-card__name{font-size:18px}
  .who-card--spot .who-card__quote{font-size:15px}
  .who-list{padding-bottom:var(--s6)}
  .who-closing{padding:var(--s6) 0}
}

/* ==========================================================================
   Leadership and governance (body.sv-lead): short charter hero, three editorial splits with a calm people list
   ========================================================================== */
.lead-hero .who-hero__title{max-width:16ch}
.lead-sec{padding:var(--s6) 0}
.lead-sec .sv-split__head .sv-st{margin-top:12px;font-size:clamp(26px,2.6vw,36px)}
.lead-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--ink)}
.lead-person{display:grid;grid-template-columns:96px minmax(0,1fr);column-gap:28px;align-items:start;padding:28px 0;border-bottom:1px solid var(--rule)}
.lead-person__img,.lead-person__ph{display:block;width:96px;height:96px;border-radius:50%;object-fit:cover;background:var(--warm)}
.lead-person__ph{position:relative;background:var(--ink)}
.lead-person__ph::after{content:"";position:absolute;inset:0;border-radius:50%;background:var(--pl-seal) 50% 29.2% / 125% auto no-repeat;opacity:.2;filter:grayscale(1) invert(1)}
.lead-person__name{font-size:22px;line-height:1.25;font-weight:700;letter-spacing:-.02em;color:var(--ink)}
.lead-person__title{font-size:20px;line-height:1.3;font-weight:700;letter-spacing:-.015em;color:var(--ink)}
.lead-person__name + .lead-person__title{margin-top:2px;font-size:15px;font-weight:500;color:var(--ink-65)}
.lead-person__bio{margin-top:10px;font-size:16px;line-height:1.55;color:var(--ink-65);max-width:52ch}
.lead-list--2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:32px}
.lead-empty{font-size:18px;line-height:1.5;color:var(--ink-65)}
@media (max-width:768px){
  .lead-sec{padding:var(--s5) 0}
  .lead-list--2{grid-template-columns:1fr}
  .lead-person{grid-template-columns:72px minmax(0,1fr);column-gap:18px;padding:22px 0}
  .lead-person__img,.lead-person__ph{width:72px;height:72px}
  .lead-person__title{font-size:18px}
}

/* ==========================================================================
   Newsroom, Resources & Events (body.sv-news): sticky anchor pills, six sections alternating white / light-blue
   ========================================================================== */
.nr-title{max-width:18ch}
.nr-nav{position:sticky;top:var(--hdr);z-index:30;background:rgba(255,255,255,.92);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--rule)}
.nr-nav__row{display:flex;gap:8px;padding-top:12px;padding-bottom:12px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.nr-nav__row::-webkit-scrollbar{display:none}
.nr-nav__pill{flex:none;display:inline-flex;align-items:center;gap:8px;min-height:38px;padding:0 16px;border:1px solid var(--rule-2);border-radius:999px;font-size:15px;font-weight:500;color:var(--ink);text-decoration:none;white-space:nowrap;transition:background .15s ease,border-color .15s ease,color .15s ease}
.nr-nav__pill:hover{border-color:var(--ink)}
.nr-nav__pill.is-on{background:var(--ink);border-color:var(--ink);color:#fff}
.nr-nav__pill:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
.nr-nav__n{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:rgba(6,24,58,.08);font-size:12px;font-weight:700;font-variant-numeric:tabular-nums;color:inherit}
.nr-nav__pill.is-on .nr-nav__n{background:rgba(255,255,255,.18)}
.nr-sec{padding:var(--s6) 0;scroll-margin-top:calc(var(--hdr) + 72px)}
.nr-h{font-size:clamp(28px,3vw,40px);margin-bottom:var(--s4)}
.nr-sub{margin-bottom:16px}
.nr-empty{font-size:18px;line-height:1.5;color:var(--ink-65)}
/* testimonials */
.nr-quotes{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.nr-quote{position:relative;padding:36px 36px 32px;background:#fff;border:1px solid var(--rule);border-radius:16px}
.sv-sec--white .nr-quote{background:var(--warm);border-color:transparent}
.nr-quote__mark{position:absolute;top:18px;inset-inline-start:30px;font-size:72px;line-height:1;font-weight:700;color:var(--gold);pointer-events:none}
.nr-quote__text{margin:0;padding:0}
.nr-quote__text p{margin-top:28px;font-size:20px;line-height:1.45;letter-spacing:-.012em;color:var(--ink);text-wrap:pretty}
.nr-quote__who{display:flex;align-items:center;gap:14px;margin-top:24px;padding-top:18px;border-top:1px solid var(--rule)}
.nr-quote__img,.nr-quote__ph{width:48px;height:48px;border-radius:50%;object-fit:cover;background:var(--ink);flex:none}
.nr-quote__name{font-size:16px;font-weight:700;color:var(--ink)}
.nr-quote__role{margin-top:2px;font-size:14px;color:var(--ink-65)}
/* press */
.nr-press{list-style:none;margin:0;padding:0;border-top:1px solid var(--ink)}
.nr-press__item{display:grid;grid-template-columns:180px minmax(0,1fr);column-gap:32px;padding:24px 0;border-bottom:1px solid var(--rule)}
.nr-press__outlet{font-size:14px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-65);padding-top:4px}
.nr-press__outlet img{display:block;height:28px;width:auto;max-width:160px;object-fit:contain}
.nr-press__h{display:inline;font-size:22px;line-height:1.3;font-weight:700;letter-spacing:-.02em;color:var(--ink);text-decoration:none;background:linear-gradient(currentColor,currentColor) 0 100%/0 1px no-repeat;transition:background-size .3s var(--ease)}
.nr-press__h:hover{background-size:100% 1px}
.nr-press__sum{margin-top:8px;font-size:16px;line-height:1.55;color:var(--ink-65);max-width:62ch}
.nr-press__meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px 24px;margin-top:12px;font-size:14px;color:var(--ink-65)}
.nr-press__read{font-size:15px}
/* announcements */
.nr-ann{list-style:none;margin:0;padding:0;border-top:1px solid var(--ink)}
.nr-ann__item{display:grid;grid-template-columns:180px minmax(0,1fr);column-gap:32px;padding:28px 0;border-bottom:1px solid var(--rule)}
.nr-ann__date{font-size:14px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-65);padding-top:6px;font-variant-numeric:tabular-nums}
.nr-ann__t{font-size:24px;line-height:1.25;font-weight:700;letter-spacing:-.02em;color:var(--ink)}
.nr-ann__text{margin-top:10px;max-width:62ch}
.nr-ann__text p{font-size:17px;line-height:1.6;color:var(--ink)}
.nr-ann__text p + p{margin-top:12px}
.nr-ann__text ul,.nr-ann__text ol{margin:12px 0 0 1.2em;padding:0;font-size:17px;line-height:1.6}
.nr-ann__body .sv-link{margin-top:14px;font-size:16px}
/* social */
.nr-profiles{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:24px}
.nr-profile svg{width:18px;height:18px}
.nr-notice{margin:0 0 18px;font-size:14px;color:var(--ink-65)}
.nr-embeds{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:start}
.nr-embed{position:relative;min-height:200px;padding:16px;background:#fff;border:1px solid var(--rule);border-radius:16px}
.nr-embed blockquote{margin:0!important;max-width:100%!important;min-width:0!important}
.nr-embed > blockquote > a{display:none}
.nr-embed iframe{display:block;width:100%;height:0;border:0;border-radius:8px}
.nr-embed.is-loaded iframe{height:520px}
.nr-embed__fallback{margin-top:12px;font-size:15px}
.nr-embed.is-loaded .nr-embed__fallback{display:none}
/* resources */
.nr-res{list-style:none;margin:0;padding:0;border-top:1px solid var(--ink)}
.nr-res__item{display:grid;grid-template-columns:64px minmax(0,1fr) auto;column-gap:24px;align-items:center;padding:22px 0;border-bottom:1px solid var(--rule)}
.nr-res__type{display:grid;place-items:center;width:64px;height:64px;border-radius:12px;background:var(--warm);color:var(--ink);font-size:11px;font-weight:700;letter-spacing:.06em;gap:2px}
.nr-res__type svg{width:24px;height:24px}
.nr-res__t{font-size:20px;line-height:1.3;font-weight:700;letter-spacing:-.015em;color:var(--ink)}
.nr-res__d{margin-top:4px;font-size:16px;line-height:1.5;color:var(--ink-65);max-width:62ch}
.nr-res__meta{margin-top:6px;font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-65)}
/* events */
.nr-events{list-style:none;margin:0;padding:0;border-top:1px solid var(--ink)}
.nr-event{display:grid;grid-template-columns:84px minmax(0,1fr);column-gap:28px;padding:24px 0;border-bottom:1px solid var(--rule)}
.nr-event__date{display:flex;flex-direction:column;align-items:center;justify-content:center;width:84px;height:84px;border-radius:12px;background:var(--ink);color:#fff}
.nr-event__day{font-size:32px;line-height:1;font-weight:700;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.nr-event__mon{margin-top:4px;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.75)}
.nr-event__t{font-size:22px;line-height:1.3;font-weight:700;letter-spacing:-.02em;color:var(--ink)}
.nr-event__meta{margin-top:6px;font-size:15px;color:var(--ink-65);font-variant-numeric:tabular-nums}
.nr-event__d{margin-top:10px;font-size:16px;line-height:1.55;color:var(--ink);max-width:62ch}
.nr-event__actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px;margin-top:14px}
.nr-ics{font-size:15px}
.nr-events--past .nr-event__date{background:var(--warm);color:var(--ink)}
.nr-events--past .nr-event__mon{color:var(--ink-65)}
.nr-past{margin-top:var(--s4)}
.nr-past__t{display:inline-flex;align-items:center;gap:10px;list-style:none;cursor:pointer;font-size:16px;font-weight:700;color:var(--ink);padding:8px 0}
.nr-past__t::-webkit-details-marker{display:none}
.nr-past__t::marker{content:""}
.nr-past__t::before{content:"";width:8px;height:8px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(-45deg);transition:transform .2s ease;margin-inline-end:4px}
.nr-past[open] .nr-past__t::before{transform:rotate(45deg)}
.nr-past .nr-events{margin-top:12px}
@media (max-width:960px){
  .nr-quotes,.nr-embeds{grid-template-columns:1fr 1fr}
}
@media (max-width:768px){
  .nr-sec{padding:var(--s5) 0;scroll-margin-top:calc(var(--hdr) + 64px)}
  .nr-nav__row{padding-top:10px;padding-bottom:10px}
  .nr-nav__pill{min-height:36px;padding:0 14px;font-size:14px}
  .nr-h{margin-bottom:var(--s3)}
  .nr-quotes,.nr-embeds{grid-template-columns:1fr;gap:16px}
  .nr-quote{padding:28px 22px 24px}
  .nr-quote__mark{inset-inline-start:18px;top:12px;font-size:56px}
  .nr-quote__text p{font-size:18px;margin-top:22px}
  .nr-press__item,.nr-ann__item{grid-template-columns:1fr;row-gap:8px;padding:20px 0}
  .nr-press__h{font-size:19px}
  .nr-ann__t{font-size:21px}
  .nr-res__item{grid-template-columns:52px minmax(0,1fr);row-gap:12px;padding:18px 0}
  .nr-res__type{width:52px;height:52px}
  .nr-res__btn{grid-column:2}
  .nr-event{grid-template-columns:64px minmax(0,1fr);column-gap:16px;padding:18px 0}
  .nr-event__date{width:64px;height:64px}
  .nr-event__day{font-size:26px}
  .nr-event__t{font-size:19px}
}

/* ==========================================================================
   Programme pages (body.sv-programme): charter hero, quoted intro, CMS sections or a placeholder
   ========================================================================== */
.pg-title{max-width:16ch}
.pg-h{font-size:clamp(26px,2.6vw,36px);margin-top:12px}
.pg-intro{padding:var(--s6) 0}
.pg-quote{padding-inline-start:28px;border-inline-start:2px solid var(--gold)}
.pg-quote > p + p{margin-top:20px}
.pg-bullets{margin-top:16px}
.pg-sec{padding:var(--s6) 0}
.pg-body > * + *{margin-top:16px}
.pg-body p,.pg-body li{font-size:18px;line-height:1.6}
.pg-body h3,.pg-body h4{font-size:22px;line-height:1.3;font-weight:700;letter-spacing:-.015em;margin-top:28px}
.pg-body ul,.pg-body ol{padding-inline-start:1.2em}
.pg-empty__line{font-size:clamp(22px,2.2vw,30px);line-height:1.35;font-weight:500;letter-spacing:-.015em;color:var(--ink);max-width:28ch}
.pg-empty__actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
@media (max-width:768px){.pg-intro,.pg-sec{padding:var(--s5) 0}.pg-quote{padding-inline-start:18px}}

/* ==========================================================================
   Menu, desktop (≥1024px): plain main list on the left; the active item's sub-pages in the side panel (NBIM-style)
   ========================================================================== */
.sv-menu__panel{display:none}
@media (min-width:1024px){
  /* main list on the left at its natural width; the panel takes the width to the right, so its rows rarely wrap.
     One view, no scrolling: the left column is sized from the window height. */
  .sv-menu__body{align-items:start;max-width:none;margin:0;padding-top:clamp(24px,7vh,88px);padding-bottom:clamp(16px,3vh,40px);padding-inline-start:clamp(24px,8.5vw,180px);padding-inline-end:clamp(24px,3vw,56px);grid-template-columns:max-content minmax(0,1fr);column-gap:clamp(32px,3.5vw,72px)}
  .sv-menu__nav{grid-column:1}
  .sv-menu__side{grid-column:2;position:sticky;top:0;max-height:calc(100vh - var(--hdr) - var(--s5));overflow:auto;padding-inline-end:4px;scrollbar-width:thin}
  .sv-menu__nav .sv-mi__tog,.sv-menu__nav .sv-mi__sub{display:none!important}
  /* the active row and its panel share one gold, so the eye reads "this row ↔ this panel" */
  .sv-mi.is-active > .sv-mi__row .sv-mi__a,.sv-mi.is-active > .sv-mi__a{background:transparent;color:var(--gold)}
  .sv-mi.is-active .sv-mi__glyph{opacity:0}
  .sv-mi.is-active .sv-mi__chev{opacity:1;color:var(--gold)}
  .sv-menu__main{border-top:0}
  .sv-mi{border-bottom:0}
  .sv-mi__a{min-height:0;margin:0;padding:max(3px,.5vh) 12px;gap:20px;font-size:clamp(26px,min(3.05vw,4.7vh),46px);line-height:1.12;font-weight:500;letter-spacing:-.025em;white-space:nowrap;transition:color .2s ease,opacity .2s ease}
  .sv-mi__ic,.sv-mi__ic svg{width:clamp(24px,3.2vh,30px);height:clamp(24px,3.2vh,30px)}
  /* while one section is open, the others step back */
  .sv-menu__main:has(.sv-mi.is-active) .sv-mi:not(.is-active) .sv-mi__a{color:rgba(255,255,255,.5)}
  .sv-menu__main:has(.sv-mi.is-active) .sv-mi:not(.is-active) .sv-mi__a:hover{color:#fff}
  /* Side panel: an editorial index. The section itself as a heading link, then its pages as clean rows;
     no rules, dashes or boxes. A row answers the pointer with gold text and an arrow that slides in at its end. */
  .sv-menu__panel{display:block;max-width:520px;padding:2px 0 16px;padding-inline-start:clamp(28px,3vw,48px);border-inline-start:1px solid rgba(255,255,255,.1)}
  .sv-menu__panel[hidden]{display:none}
  .sv-menu__panel.in{animation:sv-panel-in .22s var(--ease) both}
  @keyframes sv-panel-in{from{opacity:0;transform:translateX(-10px)}to{opacity:1;transform:none}}
  html[dir="rtl"] .sv-menu__panel.in{animation-name:sv-panel-in-rtl}
  @keyframes sv-panel-in-rtl{from{opacity:0;transform:translateX(10px)}to{opacity:1;transform:none}}
  .sv-panel__list{list-style:none;margin:0;padding:0}
  .sv-panel__list a{position:relative;display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:0;padding:max(7px,1vh) 0;font-size:clamp(15px,min(1.3vw,2.1vh),19px);line-height:1.3;font-weight:500;letter-spacing:-.01em;color:rgba(255,255,255,.92);text-decoration:none;transition:color .18s ease}
  .sv-panel__list a::after{content:"";flex:none;width:9px;height:9px;margin-inline-end:6px;border-top:1.5px solid currentColor;border-inline-end:1.5px solid currentColor;transform:translateX(-8px) rotate(45deg);opacity:0;transition:opacity .18s ease,transform .22s var(--ease)}
  html[dir="rtl"] .sv-panel__list a::after{transform:translateX(8px) rotate(-45deg)}
  .sv-panel__list a:hover,.sv-panel__list a:focus-visible{color:var(--gold)}
  .sv-panel__list a:hover::after,.sv-panel__list a:focus-visible::after{opacity:1;transform:rotate(45deg)}
  html[dir="rtl"] .sv-panel__list a:hover::after,html[dir="rtl"] .sv-panel__list a:focus-visible::after{transform:rotate(-45deg)}
  .sv-panel__list a:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:2px}
  /* the section itself, as the panel's heading */
  .sv-panel__top{margin-bottom:max(8px,1.4vh)}
  .sv-panel__top a{display:inline-block;font-size:clamp(20px,min(1.8vw,2.9vh),26px);font-weight:700;letter-spacing:-.02em;color:#fff;padding:2px 0;text-wrap:balance}
  .sv-panel__top a::after{content:"\2192";display:inline-block;width:auto;height:auto;margin-inline-start:.35em;border:0;opacity:1;transform:none;color:var(--gold);font-weight:500;transition:transform .22s var(--ease)}
  html[dir="rtl"] .sv-panel__top a::after{content:"\2190";transform:none}
  .sv-panel__top a:hover::after,.sv-panel__top a:focus-visible::after{opacity:1;transform:translateX(5px)}
  html[dir="rtl"] .sv-panel__top a:hover::after,html[dir="rtl"] .sv-panel__top a:focus-visible::after{transform:translateX(-5px)}
  /* a page with pages under it: a chevron that turns down when it opens */
  .sv-panel__grow{display:flex;align-items:center}
  .sv-panel__grow > a{width:100%}
  .sv-panel__grow > a::after{display:none}
  .sv-panel__hint{flex:none;width:8px;height:8px;margin-inline-end:6px;border-inline-end:1.5px solid rgba(255,255,255,.55);border-top:1.5px solid rgba(255,255,255,.55);transform:rotate(45deg);transition:transform .22s var(--ease),border-color .18s ease}
  html[dir="rtl"] .sv-panel__hint{transform:rotate(-135deg)}
  .sv-panel__grow > a:hover .sv-panel__hint{border-color:var(--gold)}
  .sv-panel__group.is-open > .sv-panel__grow > a{color:var(--gold)}
  .sv-panel__group.is-open > .sv-panel__grow .sv-panel__hint,html[dir="rtl"] .sv-panel__group.is-open > .sv-panel__grow .sv-panel__hint{transform:rotate(135deg);border-color:var(--gold)}
  .sv-panel__group > .sv-panel__list--nest{display:none}
  .sv-panel__group.is-open > .sv-panel__list--nest{display:block;animation:sv-panel-in .2s var(--ease) both}
  /* nested pages: indented, quieter, smaller */
  .sv-panel__list--nest{margin:0 0 6px;padding-inline-start:20px}
  .sv-panel__list--nest a{padding:max(4px,.6vh) 0;font-size:clamp(14.5px,min(1.15vw,1.9vh),16.5px);font-weight:400;color:rgba(255,255,255,.72)}
  .sv-panel__list--nest .sv-panel__list--nest a{font-size:15px;color:rgba(255,255,255,.62)}
  /* Popular pages in two columns, then legal links and social icons on one row */
  .sv-menu__nav .sv-menu__pop,.sv-menu__nav .sv-menu__foot{max-width:600px;margin-inline-start:12px}
  .sv-menu__nav .sv-menu__pop{margin-top:clamp(16px,3.5vh,44px)}
  .sv-menu__nav .sv-menu__pop .sv-menu__label{margin-bottom:8px}
  .sv-menu__nav .sv-menu__pop .sv-menu__sub{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(3,auto);grid-auto-flow:column;column-gap:32px}
  .sv-menu__nav .sv-menu__pop .sv-menu__sub li{border-top:0}
  .sv-menu__nav .sv-menu__pop .sv-menu__sub a{justify-content:flex-start;gap:10px;font-size:16px;padding:max(4px,.7vh) 0;color:rgba(255,255,255,.88)}
  .sv-menu__nav .sv-menu__pop .sv-menu__sub a::after{width:6px;height:6px;border-color:rgba(231,201,138,.8)}
  .sv-menu__nav .sv-menu__foot{display:flex;align-items:center;justify-content:space-between;flex-wrap:nowrap;gap:16px;margin-top:clamp(14px,2.6vh,32px);padding-top:clamp(10px,1.8vh,18px);border-top:1px solid rgba(255,255,255,.1)}
  .sv-menu__nav .sv-menu__legalList{display:flex;flex-direction:row;flex-wrap:nowrap;gap:0 16px;margin:0;white-space:nowrap}
  .sv-menu__nav .sv-menu__follow{display:flex;align-items:center;gap:14px;margin:0}
  .sv-menu__nav .sv-menu__follow .sv-menu__label{margin:0;display:none}
  .sv-menu__nav .sv-menu__follow .sv-social{flex-wrap:nowrap;gap:4px}
  .sv-menu__nav .sv-menu__follow .sv-social a{width:32px;height:32px}
  .sv-menu__nav .sv-menu__follow .sv-social svg{width:14px;height:14px}
}
@media (prefers-reduced-motion:reduce){.sv-menu__panel.in{animation:none}}

/* ==========================================================================
   Pledge invitation (site.js): centred navy card on desktop, bottom sheet on phones
   ========================================================================== */
.sv-invite{position:fixed;inset:0;z-index:90;display:flex;align-items:center;justify-content:center;padding:24px}
.sv-invite[hidden]{display:none}
.sv-invite__scrim{position:absolute;inset:0;background:rgba(3,10,26,.5);-webkit-backdrop-filter:blur(10px) saturate(.9);backdrop-filter:blur(10px) saturate(.9);opacity:0;transition:opacity .35s ease}
.sv-invite.is-on .sv-invite__scrim{opacity:1}
/* The invitation: a flat, matte navy card; gold only for the last line of the motto */
.sv-invite__card{position:relative;isolation:isolate;overflow:hidden;width:100%;max-width:540px;padding:44px 48px 34px;color:#fff;border-radius:18px;outline:0;background:#07193D;
  box-shadow:0 24px 60px -18px rgba(2,8,24,.55);
  opacity:0;transform:translateY(12px);transition:opacity .4s cubic-bezier(.22,1,.36,1),transform .5s cubic-bezier(.22,1,.36,1)}
.sv-invite.is-on .sv-invite__card{opacity:1;transform:none}
/* the faded seal watermark, cropped at the card's edge (same treatment as the pledge hero) */
.sv-invite__card::before{content:"";position:absolute;z-index:-1;top:50%;inset-inline-end:-170px;width:440px;aspect-ratio:1;transform:translateY(-50%);border-radius:50%;
  background:var(--pl-seal) 50% 29.2% / 125% auto no-repeat;filter:grayscale(1) contrast(1.15);mix-blend-mode:screen;opacity:.3;pointer-events:none;
  -webkit-mask-image:radial-gradient(circle,#000 62%,transparent 71%);mask-image:radial-gradient(circle,#000 62%,transparent 71%)}
@media (max-width:640px){.sv-invite__card::before{width:340px;inset-inline-end:-150px;opacity:.22}}
.sv-invite__card:focus,.sv-invite__card:focus-visible{outline:0}
.sv-invite__handle{display:none}
.sv-invite__x{position:absolute;top:16px;inset-inline-end:16px;display:grid;place-items:center;width:40px;height:40px;border:0;border-radius:50%;background:transparent;color:rgba(255,255,255,.7);cursor:pointer;transition:background .18s ease,color .18s ease}
.sv-invite__x:hover{background:rgba(255,255,255,.08);color:#fff}
.sv-invite__x:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.sv-invite__x svg{width:16px;height:16px}
.sv-invite__top{display:flex;align-items:center;gap:14px}
/* label as on the pledge hero: a short gold rule above small caps */
.sv-invite__label{display:flex;flex-direction:column;align-items:flex-start;gap:14px;margin:0;font-size:13px;line-height:1.4;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:rgba(255,255,255,.72)}
.sv-invite__label::before{content:"";display:block;width:32px;height:2px;border-radius:2px;background:var(--gold)}
.sv-invite__h{margin:26px 0 0;font-size:clamp(28px,3.6vw,36px);line-height:1.12;font-weight:600;letter-spacing:-.03em;color:#fff;text-wrap:balance}
.sv-invite__h em,.sv-invite__ln{display:block}
.sv-invite__h em{font-style:normal;color:var(--gold)}
.sv-invite__p{margin:18px 0 0;max-width:42ch;font-size:16px;line-height:1.6;color:rgba(255,255,255,.72);text-wrap:pretty}
.sv-invite__actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px;margin-top:28px}
.sv-btn--gold{background:var(--gold);border-color:var(--gold);color:#06183A}
.sv-btn--gold:hover,.sv-btn--gold:focus-visible{background:color-mix(in srgb,var(--gold),#fff 30%);border-color:color-mix(in srgb,var(--gold),#fff 30%);color:var(--ink)}
.sv-invite__later{margin:0;padding:8px 2px;border:0;background:none;font:500 15px/1.3 var(--font);color:rgba(255,255,255,.7);cursor:pointer;transition:color .18s ease}
.sv-invite__later:hover{color:#fff}
.sv-invite__later:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:2px}
.sv-invite__fine{margin:22px 0 0;font-size:12.5px;line-height:1.5;color:rgba(255,255,255,.6)}
body.sv-invite-open{overflow:hidden}
@media (max-width:640px){
  .sv-invite{align-items:flex-end;padding:0}
  .sv-invite__card{max-width:none;padding:14px 24px calc(24px + env(safe-area-inset-bottom));border-radius:18px 18px 0 0;transform:translateY(32px);max-height:90svh;overflow:auto}
  .sv-invite__handle{display:block;width:40px;height:4px;margin:0 auto 20px;border-radius:2px;background:rgba(255,255,255,.22)}
  .sv-invite__x{top:16px;inset-inline-end:14px;width:36px;height:36px}
  .sv-invite__h{margin-top:22px;font-size:30px}
  .sv-invite__p{font-size:16px}
  .sv-invite__actions{margin-top:26px}
  .sv-invite__actions .sv-btn{flex:1 1 100%;justify-content:center}
  .sv-invite__later{flex:1 1 100%;text-align:center}
}
@media (prefers-reduced-motion:reduce){.sv-invite__scrim,.sv-invite__card{transition:none}.sv-invite__card{transform:none}}
@media print{.sv-invite{display:none!important}}
html[lang="he"] .sv-invite__label{letter-spacing:.02em;font-size:13px}

/* ==========================================================================
   Legal pages (body.sv-legal): short charter hero, one column at an article measure
   ========================================================================== */
.lg-hero{min-height:0;padding-bottom:var(--s4)}
.lg-body{padding:var(--s6) 0 var(--s7)}
.lg-article{max-width:68ch}
.lg-article p{font-size:18px;line-height:1.6;color:var(--ink)}
.lg-article p + p{margin-top:16px}
.lg-article h2{margin-top:32px;font-size:24px;line-height:1.3;font-weight:700;letter-spacing:-.02em}
.lg-updated{margin-top:var(--s5);padding-top:16px;border-top:1px solid var(--rule);font-size:14px;color:var(--ink-65);font-variant-numeric:tabular-nums}
@media (max-width:768px){.lg-body{padding:var(--s5) 0 var(--s6)}}

/* New Table Councils (src/components/Councils.astro): the sixteen councils as a calm grid of named tiles */
.nt-councils{list-style:none;margin:var(--s4) 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:rgba(6,24,58,.1);border:1px solid rgba(6,24,58,.1)}
.nt-council{display:flex;flex-direction:column;gap:18px;min-height:150px;padding:28px 24px;background:#fff;scroll-margin-top:calc(var(--hdr) + 24px);transition:background .2s ease}
.nt-council:target{background:color-mix(in srgb,var(--gold) 12%,#fff)}
.nt-council__mark{width:22px;height:2px;background:var(--gold)}
.nt-council__name{font-size:20px;line-height:1.3;font-weight:600;letter-spacing:-.01em;color:var(--ink);text-wrap:balance}
@media (max-width:1024px){.nt-councils{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.nt-councils{grid-template-columns:1fr}.nt-council{min-height:0;padding:22px 20px;gap:14px}.nt-council__name{font-size:18px}}

/* "Join our community" band above the footer (site.js) and the opt-in rows on the contact and pledge forms */
.sv-optins{margin-top:4px}
.sv-form > .pl-g + .pl-g{margin-top:0}
#contact-form .sv-field select{background-color:#fff}
.sv-community{background:#fff;border-top:1px solid var(--rule);padding:clamp(40px,5vw,64px) 0}
/* the band takes the light tint where the last section above it is white (e.g. the legal pages) */
main:has(> .sv-sec--white:last-child) + .sv-community{background:var(--warm)}
.sv-community__in{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:24px clamp(32px,5vw,80px);align-items:start}
.sv-community__h{margin:0;font-size:clamp(26px,2.4vw,34px);line-height:1.12;font-weight:700;letter-spacing:-.025em;color:var(--ink)}
.sv-community__p{margin:12px 0 0;font-size:17px;line-height:1.55;color:var(--ink-65);max-width:36ch}
.sv-community__unsub{font-size:13px;white-space:nowrap}
.sv-community__form{gap:12px}
.sv-community__row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
/* Join sits directly under the fields as a full-width button: clearly the next step */
.sv-community__foot{display:flex;flex-direction:column;align-items:stretch;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-top:2px}
.sv-community__foot .pl-row{flex:none}
.sv-community__row .sv-field input{height:50px;border-radius:999px;padding:0 20px;background:#fff}
.sv-form .sv-community__btn{order:1;width:100%;height:52px;margin:0;padding-inline:32px;justify-content:center;font-weight:600}
.sv-community .thanks{margin:0;font-size:18px;line-height:1.5;color:var(--ink)}
@media (max-width:1100px){.sv-community__in{grid-template-columns:1fr}}
@media (max-width:560px){.sv-community__row{grid-template-columns:1fr 1fr}.sv-community__row .sv-field:nth-child(n+3){grid-column:1 / -1}.sv-community__h{font-size:26px}.sv-community__p{font-size:16px}}

/* Opt-in and consent lines read as one family everywhere: same size, colour and checkbox (pledge, contact form, community band) */
.pl-details .pl-rows .pl-row,.sv-optins .pl-row,.sv-community__wa{font-size:15px;line-height:1.55;color:var(--ink-65)}
.pl-details .pl-rows .pl-row > input,.sv-optins .pl-row > input,.sv-community__wa > input{margin-top:2px}
/* Phone field with its country-code picker (site.js) */
.sv-phone{display:flex;gap:8px;align-items:stretch;width:100%}
.sv-phone > input{flex:1 1 auto;min-width:0}
.sv-phone__btn{flex:none;min-width:104px;height:48px;padding:0 36px 0 14px;font:inherit;font-size:16px;font-variant-numeric:tabular-nums;color:var(--ink);text-align:start;white-space:nowrap;cursor:pointer;
  background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2306183A' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") no-repeat right 12px center/16px;
  border:1px solid rgba(6,24,58,.15);border-radius:12px;transition:border-color .15s ease,box-shadow .15s ease}
.sv-phone__btn:hover{border-color:rgba(6,24,58,.35)}
.sv-phone__btn:focus-visible,.sv-phone__btn[aria-expanded="true"]{outline:0;border-color:var(--ink);box-shadow:inset 0 0 0 .5px var(--ink)}
.sv-community__row .sv-phone__btn{height:50px;border-radius:999px;padding-left:18px}
/* the country list (on <body>, fixed under the button) */
.sv-cc{position:fixed;z-index:1200;display:flex;flex-direction:column;background:#fff;border:1px solid rgba(6,24,58,.12);border-radius:14px;box-shadow:0 18px 48px rgba(6,24,58,.18);overflow:hidden;font-family:var(--font);color:var(--ink)}
.sv-cc[hidden]{display:none}
.sv-cc__q{flex:none;margin:8px;height:42px;padding:0 12px;font:inherit;font-size:16px;color:var(--ink);border:1px solid rgba(6,24,58,.15);border-radius:10px;background:#fff;-webkit-appearance:none;appearance:none}
.sv-cc__q:focus{outline:0;border-color:var(--ink);box-shadow:inset 0 0 0 .5px var(--ink)}
.sv-cc__list{list-style:none;margin:0;padding:0 6px 6px;overflow-y:auto;overscroll-behavior:contain;flex:1 1 auto;min-height:0}
.sv-cc__opt{display:flex;justify-content:space-between;gap:12px;padding:10px 10px;border-radius:8px;font-size:15px;line-height:1.3;cursor:pointer}
.sv-cc__opt.is-active{background:rgba(6,24,58,.06)}
.sv-cc__opt[aria-selected="true"]{font-weight:600}
.sv-cc__d{flex:none;color:var(--ink-65);font-variant-numeric:tabular-nums;direction:ltr}
.sv-cc__none{margin:0;padding:6px 18px 16px;font-size:14px;color:var(--ink-65)}
[dir="rtl"] .sv-phone{direction:ltr}
[dir="rtl"] .sv-phone__btn{direction:ltr}

/* ---------- Page not found (src/pages/404.astro): the password-gate card with two links ---------- */
.nf-code{color:var(--gold-ink);font-variant-numeric:tabular-nums}
.nf-code::after{content:"";display:inline-block;width:1px;height:12px;margin-inline-start:12px;background:var(--rule-2);vertical-align:-1px}
.nf-card .gate-card__back{color:var(--ink)}

/* Searchable country list (site.js: select[data-searchable]) - the button looks like the other dropdowns */
.sv-pick{position:relative}
.sv-pick__sel{position:absolute!important;inset:0;width:100%;height:100%;opacity:0;pointer-events:none}
.sv-pick__btn{display:block;width:100%;height:48px;padding:0 40px 0 14px;font:inherit;font-size:16px;line-height:46px;color:var(--ink);text-align:start;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer;
  background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2306183A' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") no-repeat right 14px center/16px;
  border:1px solid rgba(6,24,58,.15);border-radius:12px}
.sv-pick__btn.is-empty{color:rgba(6,24,58,.5)}
.sv-pick__btn:hover{border-color:rgba(6,24,58,.35)}
.sv-pick__btn:focus-visible{outline:2px solid var(--ink);outline-offset:2px}
.sv-pick__sel[aria-invalid="true"]+.sv-pick__btn,form.is-checked .sv-pick__sel:invalid+.sv-pick__btn{border-color:#9b1c1c;box-shadow:inset 0 0 0 .5px #9b1c1c}
[dir="rtl"] .sv-pick__btn{padding:0 14px 0 40px;background-position:left 14px center}
