/* Juicy Patterns — shared foundation styles.
   Extracted 2026-08-05 from the seven pages' inline <style> blocks, which each
   carried their own byte-identical copy of these rules. Loaded BEFORE each page's
   <style>, so any page-specific rule still wins by source order.

   Only rules that were byte-identical across 5+ pages are here, and only where the
   selector was verified to match nothing on the pages that lacked it — so no page's
   rendering changes. , ,  and  were deliberately
   left inline for exactly that reason: they differ between pages.

   Add a font or change a shared token HERE, once, instead of in seven files.

   NOTE: font URLs below are relative to THIS FILE (assets/), so they read
   `fonts/...` and NOT `assets/fonts/...` as they did when inlined in the pages'
   <style> blocks. Getting this wrong 404s every font and silently drops Satoshi. */

/* Satoshi = the LATIN face (Indian Type Foundry via Fontshare; free for personal + commercial use).
     Listed BEFORE Ploni in --sans/--serif: the browser takes each glyph from the first family that has it,
     so Latin renders in Satoshi and Hebrew (absent from Satoshi) falls through to Ploni, per glyph.
     Satoshi ships a real Bold, so bold Latin is genuine; Ploni stays Regular+Medium only (licence). */
  @font-face{font-family:'Satoshi'; src:url('fonts/satoshi-regular.woff2') format('woff2'); font-weight:400; font-style:normal; font-display:swap;}

@font-face{font-family:'Satoshi'; src:url('fonts/satoshi-medium.woff2') format('woff2'); font-weight:500 600; font-style:normal; font-display:swap;}

@font-face{font-family:'Satoshi'; src:url('fonts/satoshi-bold.woff2') format('woff2'); font-weight:700 900; font-style:normal; font-display:swap;}

@font-face{font-family:'Ploni ML v2 AAA'; src:local('Ploni ML v2 AAA'), local('Ploni ML v2 AAA Regular'), url('fonts/ploni-regular.woff2') format('woff2'); font-weight:400; font-style:normal; font-display:swap;}

@font-face{font-family:'Ploni ML v2 AAA'; src:local('Ploni ML v2 AAA Medium'), url('fonts/ploni-medium.woff2') format('woff2'); font-weight:500 900; font-style:normal; font-display:swap;}

@font-face{font-family:'Ploni Digits'; src:local('Ploni ML v2 AAA'), url('fonts/ploni-regular.woff2') format('woff2'); font-weight:400; font-style:normal; font-display:swap; unicode-range:U+0030-0039;}

@font-face{font-family:'Ploni Digits'; src:local('Ploni ML v2 AAA Medium'), url('fonts/ploni-medium.woff2') format('woff2'); font-weight:500 900; font-style:normal; font-display:swap; unicode-range:U+0030-0039;}

*{box-sizing:border-box; margin:0; padding:0;}

html{scroll-behavior:smooth;}

a{color:inherit;}

.kicker::before{content:""; width:28px; height:2px; background:currentColor; display:inline-block; flex:none;}

.btn:hover{background:var(--blue-deep);}

.brand{display:flex; align-items:center; text-decoration:none;}

.brand svg{height:18px; width:auto; display:block;}

.brand svg path{fill:var(--ink);}

.lang-toggle{display:inline-flex; align-items:center; gap:7px; font-family:var(--sans); font-weight:700; font-size:14.5px; line-height:1.65; letter-spacing:.06em; color:var(--ink-soft); background:none; border:1.5px solid var(--rule); border-radius:100px; padding:7.5px 15px; cursor:pointer; transition:color .15s ease, border-color .15s ease;}

.lang-toggle .flag{width:19px; height:auto; border-radius:2px; display:block; flex:none; box-shadow:0 0 0 .5px rgba(0,0,0,.12);}

.lang-toggle:hover{color:var(--ink); border-color:var(--ink);}

.foot{display:flex; align-items:flex-start; justify-content:space-between; gap:26px 40px; flex-wrap:wrap; font-family:var(--sans);}

.foot-name{font-family:var(--serif); font-weight:500; font-size:1.25rem; color:var(--ink); letter-spacing:-.01em; display:block;}

.foot-tag{color:var(--ink-soft); font-size:14px; margin-top:8px;}

.foot-right{text-align:end;}

.foot-links{display:flex; gap:8px 22px; align-items:center; justify-content:flex-end; flex-wrap:wrap;}

.foot-links a{color:var(--ink); font-weight:600; font-size:14.5px; text-decoration:none;}

.foot-links a:hover{color:var(--blue);}

.foot-copy{color:var(--ink-soft); font-size:13px; margin-top:12px;}
