/* =========================================================
   Design System – שכבת עיצוב ותנועה
   כל הצבעים והפונטים כמשתנים: מחליפים כאן והכל מתעדכן.
   שימוש: מוסיפים את המחלקות בשדה "CSS Classes" של אלמנטור.
   ========================================================= */

:root {
	/* צבעים: שחור וזהב */
	--ld-ink: #0a0a0a;
	--ld-ink-2: #141414;
	--ld-ink-3: #1c1a16;
	--ld-bone: #f5e9cb;
	--ld-text: #d8d2c4;
	--ld-bone-72: rgba(216, 210, 196, .78);
	--ld-bone-56: rgba(216, 210, 196, .56);
	--ld-bone-12: rgba(229, 193, 110, .14);
	--ld-bone-06: rgba(245, 233, 203, .05);
	--ld-accent: #e5c16e;
	--ld-accent-2: #f0d48e;
	--ld-accent-deep: #c9a24a;
	--ld-accent-muted: #9c8e70;
	--ld-line: #3d352a;
	--ld-accent-glow: rgba(229, 193, 110, .45);
	--ld-gold-grad: linear-gradient(135deg, #f7e3a8 0%, #e5c16e 40%, #c9a24a 70%, #f0d48e 100%);

	/* טיפוגרפיה */
	--ld-font-display: "Heebo", system-ui, sans-serif;
	--ld-font-body: "Heebo", system-ui, sans-serif;
	--ld-font-latin: "Manrope", "Heebo", system-ui, sans-serif;
	--ld-size-hero: clamp(2.75rem, min(6.8vw, 11vh), 7rem);
	--ld-size-h2: clamp(2.1rem, 4.4vw, 4.25rem);

	/* תנועה */
	--ld-ease: cubic-bezier(.22, .9, .3, 1);
	--ld-ease-io: cubic-bezier(.65, 0, .35, 1);
	--ld-radius: 24px;
}

/* ---------- בסיס ---------- */
html.lenis, html.lenis body { height: auto; }
.lenis.lenis-smooth { scroll-behavior: auto !important; }
.lenis.lenis-smooth [data-lenis-prevent] { overscroll-behavior: contain; }

body.ld-dark { background: var(--ld-ink); color: var(--ld-text); font-family: var(--ld-font-body); }
::selection { background: var(--ld-accent); color: var(--ld-ink); }

/* ---------- טיפוגרפיה ---------- */
.ld-hero-title .elementor-heading-title,
.ld-hero-title { font-family: var(--ld-font-display); font-size: var(--ld-size-hero); line-height: 1.02; letter-spacing: -.02em; font-weight: 800; }

.ld-h2 .elementor-heading-title,
.ld-h2 { font-family: var(--ld-font-display); font-size: var(--ld-size-h2); line-height: 1.08; letter-spacing: -.015em; font-weight: 700; }

.ld-eyebrow .elementor-heading-title,
.ld-eyebrow { font-size: .78rem; font-weight: 600; letter-spacing: .28em; text-transform: uppercase; color: var(--ld-accent-2); display: inline-flex; align-items: center; gap: .7em; }
.ld-eyebrow .elementor-heading-title::before,
.ld-eyebrow:not(.elementor-widget)::before { content: ""; width: 28px; height: 1px; background: currentColor; opacity: .7; }

.ld-muted, .ld-muted * { color: var(--ld-bone-72); }
.ld-accent-text, .ld-hl { color: var(--ld-accent); }
.ld-gradient-text .elementor-heading-title,
.ld-gradient-text { background: linear-gradient(100deg, var(--ld-bone) 30%, var(--ld-accent-2) 100%); -webkit-background-clip: text; background-clip: text; color: transparent; }

/* ---------- זכוכית (Glass) ---------- */
.ld-glass {
	background: linear-gradient(180deg, rgba(245, 233, 203, .07), rgba(245, 233, 203, .025));
	border: 1px solid var(--ld-bone-12);
	-webkit-backdrop-filter: blur(12px);
	backdrop-filter: blur(12px);
	border-radius: var(--ld-radius);
}
.ld-glass-strong {
	background: rgba(10, 10, 10, .55);
	border: 1px solid var(--ld-bone-12);
	-webkit-backdrop-filter: blur(44px) saturate(170%) brightness(1.12);
	backdrop-filter: blur(44px) saturate(170%) brightness(1.12);
}

/* ---------- כרטיס עם Sheen והילה בריחוף ---------- */
.ld-card {
	position: relative; overflow: hidden; isolation: isolate;
	border-radius: var(--ld-radius);
	transition: transform .6s var(--ld-ease), border-color .4s, box-shadow .6s var(--ld-ease);
}
.ld-card::after { /* זוהר שעוקב אחרי העכבר */
	content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none;
	background: radial-gradient(420px circle at var(--mx, 50%) var(--my, 0%), rgba(229, 193, 110, .16), transparent 60%);
	opacity: 0; transition: opacity .4s;
}
.ld-card:hover { transform: translateY(-6px); border-color: rgba(240, 212, 142, .35); box-shadow: 0 30px 60px -30px rgba(229, 193, 110, .35); }
.ld-card:hover::after { opacity: 1; }

.ld-sheen { position: relative; overflow: hidden; }
.ld-sheen::before {
	content: ""; position: absolute; inset: 0; pointer-events: none; z-index: 2;
	background: linear-gradient(100deg, transparent 42%, rgba(255, 245, 221, .07) 50%, transparent 58%);
	animation: ld-sheen 7s ease-in-out infinite;
}
@keyframes ld-sheen { 0%, 55% { transform: translateX(-130%); } 85%, 100% { transform: translateX(130%); } }

/* ---------- זוהר, כדור ונקודה חיה ---------- */
.ld-orb {
	width: var(--ld-orb-size, 380px); aspect-ratio: 1; border-radius: 50%; pointer-events: none;
	background: radial-gradient(circle at 35% 30%, #fff3cf, var(--ld-accent) 45%, #5c4718 100%);
	box-shadow: 0 0 60px 18px rgba(229, 193, 110, .55);
	animation: ld-orb 2.6s ease-in-out infinite; will-change: transform;
}
@keyframes ld-orb { 0%, 100% { transform: scale(1); box-shadow: 0 0 60px 18px rgba(229, 193, 110, .55); } 50% { transform: scale(1.06); box-shadow: 0 0 90px 30px rgba(229, 193, 110, .75); } }

.ld-glow-bg { position: relative; isolation: isolate; }
.ld-glow-bg::before {
	content: ""; position: absolute; z-index: -1; pointer-events: none;
	width: 70vmax; height: 70vmax; left: 50%; top: var(--ld-glow-top, 10%); translate: -50% -50%;
	background: radial-gradient(closest-side, rgba(229, 193, 110, .22), transparent 70%);
	animation: ld-pulse-glow 4.8s ease-in-out infinite;
}
@keyframes ld-pulse-glow { 0%, 100% { opacity: .55; transform: scale(1); } 50% { opacity: 1; transform: scale(1.06); } }

.ld-live { display: inline-flex; align-items: center; gap: .55em; }
.ld-live::before {
	content: ""; width: 8px; height: 8px; border-radius: 50%; background: #22c55e; flex: none;
	box-shadow: 0 0 0 0 rgba(34, 197, 94, .7); animation: ld-live 1.8s ease-out infinite;
}
@keyframes ld-live { 0% { box-shadow: 0 0 0 0 rgba(34, 197, 94, .6); } 100% { box-shadow: 0 0 0 12px rgba(34, 197, 94, 0); } }

/* רעש עדין על כל הסקשן */
.ld-noise { position: relative; }
.ld-noise::after {
	content: ""; position: absolute; inset: 0; pointer-events: none; mix-blend-mode: overlay; opacity: .08;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}

/* רשת קווים ברקע */
.ld-grid-bg {
	background-image: linear-gradient(var(--ld-bone-06) 1px, transparent 1px), linear-gradient(90deg, var(--ld-bone-06) 1px, transparent 1px);
	background-size: 64px 64px;
	-webkit-mask-image: radial-gradient(ellipse at center, #000 30%, transparent 75%);
	mask-image: radial-gradient(ellipse at center, #000 30%, transparent 75%);
}

/* ---------- Marquee ---------- */
.ld-marquee { overflow: hidden; -webkit-mask-image: linear-gradient(90deg, transparent, #000 10%, #000 90%, transparent); mask-image: linear-gradient(90deg, transparent, #000 10%, #000 90%, transparent); }
.ld-marquee-track { display: flex; width: max-content; animation: ld-marquee var(--ld-marquee-speed, 36s) linear infinite; }
.ld-marquee:hover .ld-marquee-track { animation-play-state: paused; }
.ld-marquee-track > * { flex: none; }
@keyframes ld-marquee { from { transform: translateX(0); } to { transform: translateX(50%); } } /* RTL: זז ימינה */

/* ---------- קישורים וכפתורים ---------- */
.ld-link a, a.ld-link { position: relative; text-decoration: none; }
.ld-link a::after, a.ld-link::after {
	content: ""; position: absolute; right: 0; bottom: -2px; width: 100%; height: 1px; background: currentColor;
	transform: scaleX(0); transform-origin: left; transition: transform .5s var(--ld-ease);
}
.ld-link a:hover::after, a.ld-link:hover::after { transform: scaleX(1); transform-origin: right; }

.ld-btn .elementor-button {
	position: relative; overflow: hidden; isolation: isolate;
	background: var(--ld-accent); color: var(--ld-ink); border-radius: 999px; font-weight: 700;
	padding: 1.05em 2em; transition: color .45s var(--ld-ease), box-shadow .45s var(--ld-ease), transform .3s;
	box-shadow: 0 10px 40px -10px var(--ld-accent-glow);
}
.ld-btn .elementor-button::before {
	content: ""; position: absolute; inset: 0; z-index: -1; background: var(--ld-bone);
	transform: translateY(101%); transition: transform .5s var(--ld-ease); border-radius: inherit;
}
.ld-btn .elementor-button:hover::before { transform: none; }
.ld-btn .elementor-button:hover { color: var(--ld-ink); box-shadow: 0 16px 50px -10px var(--ld-accent-glow); }

.ld-btn-ghost .elementor-button {
	background: transparent; color: var(--ld-bone); border: 1px solid var(--ld-bone-12); border-radius: 999px;
	padding: 1.05em 2em; -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px);
	transition: border-color .4s, background .4s;
}
.ld-btn-ghost .elementor-button:hover { border-color: var(--ld-accent-2); background: rgba(229, 193, 110, .08); color: var(--ld-bone); }

/* ---------- Header צף ---------- */
.ld-header { position: fixed !important; inset-inline: 0; top: 0; z-index: 999; transition: transform .5s var(--ld-ease), padding .4s; }
.ld-header > .e-con-inner, .ld-header-bar { transition: background .4s, border-color .4s, -webkit-backdrop-filter .4s, backdrop-filter .4s; border: 1px solid transparent; border-radius: 999px; }
.ld-header.is-scrolled > .e-con-inner, .ld-header.is-scrolled .ld-header-bar {
	background: rgba(10, 10, 10, .55); border-color: var(--ld-bone-12);
	-webkit-backdrop-filter: blur(44px) saturate(170%) brightness(1.12); backdrop-filter: blur(44px) saturate(170%) brightness(1.12);
}
.ld-header.is-hidden { transform: translateY(-110%); }
body.admin-bar .ld-header { top: 32px; }

/* ---------- SVG שמצטייר ---------- */
.ld-draw path, .ld-draw line, .ld-draw circle, .ld-draw polyline { stroke-dasharray: 1; stroke-dashoffset: 1; }
.ld-draw.is-in path, .ld-draw.is-in line, .ld-draw.is-in circle, .ld-draw.is-in polyline { animation: ld-draw 1.4s cubic-bezier(.4, 0, .2, 1) .15s forwards; }
@keyframes ld-draw { to { stroke-dashoffset: 0; } }

/* גרף עמודות שגדל */
.ld-bars > * { transform-origin: bottom; transform: scaleY(0); transition: transform 1.1s var(--ld-ease); }
.ld-bars.is-in > * { transform: scaleY(1); }
.ld-bars.is-in > *:nth-child(2) { transition-delay: .08s; } .ld-bars.is-in > *:nth-child(3) { transition-delay: .16s; }
.ld-bars.is-in > *:nth-child(4) { transition-delay: .24s; } .ld-bars.is-in > *:nth-child(5) { transition-delay: .32s; }
.ld-bars.is-in > *:nth-child(6) { transition-delay: .40s; } .ld-bars.is-in > *:nth-child(7) { transition-delay: .48s; }

/* ---------- מצב התחלתי לאנימציות כניסה ----------
   מוסתר רק כש-JS פעיל (html.ld-motion), ולא בעורך אלמנטור. */
html.ld-motion .ld-reveal,
html.ld-motion .ld-stagger > .e-con-inner > *,
html.ld-motion .ld-stagger:not(:has(> .e-con-inner)) > * { opacity: 0; transform: translateY(32px); }
html.ld-motion .ld-words .ld-w { display: inline-block; opacity: 0; transform: translateY(24px); }
.ld-w-wrap { display: inline-block; overflow: hidden; vertical-align: top; padding: .26em .04em .14em; margin: -.26em -.04em -.14em; }
html.ld-motion .ld-scale-in { opacity: 0; transform: scale(.94); }
html.ld-motion .ld-clip-in { clip-path: inset(0 0 100% 0); }

/* ---------- נגישות: הפחתת תנועה ---------- */
@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
	html.ld-motion .ld-reveal, html.ld-motion .ld-stagger > *, html.ld-motion .ld-stagger > .e-con-inner > *,
	html.ld-motion .ld-words .ld-w, html.ld-motion .ld-scale-in { opacity: 1 !important; transform: none !important; }
	html.ld-motion .ld-clip-in { clip-path: none !important; }
	.ld-draw path, .ld-draw line, .ld-draw circle, .ld-draw polyline { stroke-dashoffset: 0; }
}

/* ---------- מובייל ---------- */
@media (max-width: 767px) {
	:root { --ld-radius: 18px; }
	.ld-glass-strong, .ld-header.is-scrolled > .e-con-inner, .ld-header.is-scrolled .ld-header-bar { -webkit-backdrop-filter: blur(18px); backdrop-filter: blur(18px); }
	.ld-orb { --ld-orb-size: 220px; }
	.ld-card:hover { transform: none; }
	body.admin-bar .ld-header { top: 46px; }
}
