/* Le-Biko — Fonts, design tokens and base element styles. */

/* ==========================================================================
   Fonts — Heebo (SIL Open Font License), variable weight, served locally
   ========================================================================== */
@font-face {
	font-family: "Heebo";
	font-style: normal;
	font-weight: 100 900;
	font-display: swap;
	src: url("../../fonts/heebo-hebrew.woff2") format("woff2");
	unicode-range: U+0307-0308, U+0590-05FF, U+200C-2010, U+20AA, U+25CC, U+FB1D-FB4F;
}
@font-face {
	font-family: "Heebo";
	font-style: normal;
	font-weight: 100 900;
	font-display: swap;
	src: url("../../fonts/heebo-latin.woff2") format("woff2");
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* ==========================================================================
   Le-Biko Professional — design tokens
   ========================================================================== */
:root {
	--lb-ink: #1a1a1a;
	--lb-ink-soft: #4a4744;
	--lb-muted: #6b6661; /* ≥4.5:1 on #faf9f7 and white (WCAG AA) */
	--lb-line: #e4e1dc;
	--lb-tile: #f5f4f1;
	--lb-bg: #ffffff;
	--lb-accent: #1a1a1a;
	--lb-danger: #a1271f;
	--lb-success: #2f5d3a;

	--lb-font-display: "Heebo", "Segoe UI", Arial, sans-serif;
	--lb-font-body: "Heebo", "Segoe UI", Arial, sans-serif;

	--lb-radius: 3px;
	--lb-gutter: 16px;
	--lb-max: 1240px;
	--lb-ease: cubic-bezier(.2, .7, .2, 1);
}

/* ==========================================================================
   Base
   ========================================================================== */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body {
	margin: 0;
	background: var(--lb-bg);
	color: var(--lb-ink);
	font-family: var(--lb-font-body);
	font-size: 16px;
	line-height: 1.6;
	-webkit-font-smoothing: antialiased;
}
img { max-width: 100%; height: auto; display: block; }
a { color: inherit; }
button { font: inherit; color: inherit; }
:focus-visible { outline: 2px solid var(--lb-ink); outline-offset: 2px; }

.screen-reader-text {
	position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px;
	overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}
.lb-skip { position: absolute; inset-inline-start: 8px; top: -60px; z-index: 100; background: var(--lb-ink); color: #fff; padding: 8px 14px; }
.lb-skip:focus { top: 8px; }

.lb-container { width: 100%; max-width: var(--lb-max); margin-inline: auto; padding-inline: var(--lb-gutter); }
.lb-section { padding-block: 28px 48px; }
