/* ═══════════════════════════════════════════════
   Lav Studio — هوية لاف
   المرجاني #ff766d · الكحلي #020A18 · El Messiri
   ═══════════════════════════════════════════════ */

:root {
	--lav-coral: #ff766d;
	--lav-coral-dark: #ef5f56;
	--lav-coral-soft: #ffecea;
	--lav-navy: #020a18;
	--lav-navy-800: #0a1626;
	--lav-navy-700: #122036;
	--lav-bg: #f9f9f9;
	--lav-white: #ffffff;
	--lav-text: #231f20;
	--lav-muted: #6d7480;
	--lav-line: #e8e8e8;
	--lav-radius: 24px;
	--lav-radius-sm: 14px;
	--lav-font: 'El Messiri', 'Tahoma', sans-serif;
	--lav-shadow: 0 18px 45px rgba(2, 10, 24, 0.10);
	--lav-shadow-coral: 0 12px 30px rgba(255, 118, 109, 0.35);
}

/* ---------- أساسيات ---------- */
*, *::before, *::after { box-sizing: border-box; }

html { scroll-behavior: smooth; }

body {
	margin: 0;
	font-family: var(--lav-font);
	font-size: 17px;
	line-height: 1.9;
	color: var(--lav-text);
	background: var(--lav-bg);
	-webkit-font-smoothing: antialiased;
}

h1, h2, h3, h4, h5, h6 {
	font-family: var(--lav-font);
	font-weight: 700;
	line-height: 1.3;
	margin: 0 0 0.6em;
	color: inherit;
}

p { margin: 0 0 1em; }

a { color: var(--lav-coral-dark); text-decoration: none; transition: color 0.25s ease; }
a:hover { color: var(--lav-coral); }

img { max-width: 100%; height: auto; }

.lav-container {
	width: min(1200px, 100% - 40px);
	margin-inline: auto;
}

.lav-section { padding: 90px 0; }

.screen-reader-text {
	position: absolute !important;
	width: 1px; height: 1px;
	overflow: hidden;
	clip: rect(1px, 1px, 1px, 1px);
}

.skip-link:focus {
	position: fixed; top: 10px; inset-inline-start: 10px;
	width: auto; height: auto; clip: auto;
	background: var(--lav-navy); color: #fff;
	padding: 10px 18px; border-radius: 10px; z-index: 9999;
}

/* ---------- الأزرار ---------- */
.lav-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-width: 150px;
	padding: 12px 26px;
	border-radius: var(--lav-radius-sm);
	font-family: var(--lav-font);
	font-size: 17px;
	font-weight: 700;
	line-height: 1.4;
	cursor: pointer;
	border: 1px solid transparent;
	transition: all 0.3s ease;
}

.lav-btn-lg { min-width: 180px; padding: 14px 30px; font-size: 19px; }
.lav-btn-block { width: 100%; }

.lav-btn-primary {
	background: var(--lav-coral);
	border-color: var(--lav-coral);
	color: #fff !important;
	box-shadow: var(--lav-shadow-coral);
}
.lav-btn-primary:hover { background: var(--lav-coral-dark); transform: translateY(-2px); }

.lav-btn-outline {
	background: transparent;
	border-color: var(--lav-coral);
	color: #fff !important;
}
.lav-btn-outline:hover { background: var(--lav-coral); }

.lav-btn-outline-dark {
	background: transparent;
	border-color: var(--lav-navy);
	color: var(--lav-navy) !important;
}
.lav-btn-outline-dark:hover { background: var(--lav-navy); color: #fff !important; }

.lav-btn-dark {
	background: var(--lav-navy);
	border-color: var(--lav-navy);
	color: #fff !important;
}
.lav-btn-dark:hover { background: var(--lav-navy-700); transform: translateY(-2px); }

.lav-btn-light {
	background: #fff;
	border-color: #fff;
	color: var(--lav-navy) !important;
}
.lav-btn-light:hover { transform: translateY(-2px); }

/* ---------- الهيدر ---------- */
.lav-header {
	position: sticky;
	top: 0;
	z-index: 999;
	background: var(--lav-navy);
	transition: box-shadow 0.3s ease, background 0.3s ease;
}

.lav-header.is-transparent {
	position: fixed;
	inset-inline: 0;
	background: linear-gradient(180deg, rgba(2, 10, 24, 0.85), rgba(2, 10, 24, 0));
}

.lav-header.is-transparent.is-scrolled,
.lav-header.is-scrolled {
	background: rgba(2, 10, 24, 0.95);
	backdrop-filter: blur(12px);
	box-shadow: 0 6px 25px rgba(2, 10, 24, 0.35);
}

.lav-header-inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	min-height: 84px;
}

.lav-brand .custom-logo-link { display: inline-flex; }
.lav-brand .custom-logo { max-height: 52px; width: auto; }

.lav-nav { display: flex; }

.lav-menu {
	display: flex;
	align-items: center;
	gap: 6px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.lav-menu li { position: relative; }

.lav-menu a {
	display: block;
	padding: 10px 16px;
	color: rgba(255, 255, 255, 0.85);
	font-weight: 600;
	font-size: 16.5px;
	border-radius: 10px;
	transition: all 0.25s ease;
}

.lav-menu a:hover,
.lav-menu .current-menu-item > a,
.lav-menu .current_page_item > a {
	color: #fff;
	background: rgba(255, 118, 109, 0.16);
}

.lav-menu .sub-menu {
	position: absolute;
	top: 100%;
	inset-inline-start: 0;
	min-width: 210px;
	background: var(--lav-navy-800);
	border-radius: 14px;
	padding: 8px;
	list-style: none;
	box-shadow: var(--lav-shadow);
	opacity: 0;
	visibility: hidden;
	transform: translateY(8px);
	transition: all 0.25s ease;
}

.lav-menu li:hover > .sub-menu { opacity: 1; visibility: visible; transform: translateY(0); }

.lav-header-actions { display: flex; align-items: center; gap: 14px; }
.lav-header-actions .lav-btn { min-width: 130px; padding: 10px 22px; }

/* زر القائمة للجوال */
.lav-menu-toggle {
	display: none;
	flex-direction: column;
	justify-content: center;
	gap: 5px;
	width: 46px;
	height: 46px;
	padding: 10px;
	background: rgba(255, 255, 255, 0.08);
	border: 1px solid rgba(255, 255, 255, 0.15);
	border-radius: 12px;
	cursor: pointer;
}

.lav-menu-toggle span {
	display: block;
	height: 2px;
	background: #fff;
	border-radius: 2px;
	transition: all 0.3s ease;
}

.lav-menu-toggle[aria-expanded="true"] span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.lav-menu-toggle[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
.lav-menu-toggle[aria-expanded="true"] span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

.lav-mobile-nav {
	display: none;
	padding: 10px 20px 24px;
	background: var(--lav-navy);
	border-top: 1px solid rgba(255, 255, 255, 0.08);
}

.lav-mobile-nav .lav-menu { flex-direction: column; align-items: stretch; gap: 2px; margin-bottom: 16px; }
.lav-mobile-nav .lav-menu a { padding: 13px 16px; font-size: 18px; }

/* ---------- الهيرو ---------- */
.lav-hero {
	position: relative;
	display: flex;
	align-items: center;
	min-height: 92vh;
	padding: 150px 0 80px;
	color: #fff;
	overflow: hidden;
	background:
		radial-gradient(1100px 600px at 85% 15%, rgba(255, 118, 109, 0.16), transparent 60%),
		radial-gradient(800px 500px at 10% 90%, rgba(255, 118, 109, 0.08), transparent 55%),
		linear-gradient(135deg, #05101f 0%, var(--lav-navy) 55%, #010509 100%);
	background-size: cover;
	background-position: center;
}

.lav-hero[style]::before {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(90deg, rgba(2, 10, 24, 0.92) 0%, rgba(2, 10, 24, 0.82) 35%, rgba(2, 10, 24, 0.45) 60%, rgba(2, 10, 24, 0.12) 100%);
}

.lav-hero .lav-container { position: relative; z-index: 2; }

.lav-hero-decor {
	position: absolute;
	inset-inline-end: -60px;
	top: 50%;
	transform: translateY(-50%);
	width: min(48vw, 560px);
	color: var(--lav-coral);
	opacity: 0.35;
	z-index: 1;
	pointer-events: none;
}

.lav-aperture { width: 100%; height: auto; animation: lav-spin 60s linear infinite; }

@keyframes lav-spin { to { transform: rotate(360deg); } }

.lav-hero-content { max-width: 640px; }

.lav-kicker {
	display: inline-block;
	padding: 6px 18px;
	margin-bottom: 18px;
	border: 1px solid rgba(255, 118, 109, 0.5);
	border-radius: 999px;
	color: var(--lav-coral);
	font-size: 15px;
	font-weight: 600;
	background: rgba(255, 118, 109, 0.08);
}

.lav-kicker-dark { color: var(--lav-coral-dark); background: var(--lav-coral-soft); border-color: transparent; }

.lav-hero-content h1 {
	font-size: clamp(40px, 6vw, 68px);
	font-weight: 700;
	line-height: 1.15;
	margin: 0 0 18px;
}

.lav-hero-content > p {
	font-size: clamp(17px, 2vw, 22px);
	line-height: 1.9;
	color: rgba(255, 255, 255, 0.92);
	margin-bottom: 30px;
}

.lav-hero-buttons { display: flex; flex-wrap: wrap; gap: 16px; }

.lav-hero-stats {
	display: flex;
	flex-wrap: wrap;
	gap: 40px;
	margin-top: 55px;
	padding-top: 30px;
	border-top: 1px solid rgba(255, 255, 255, 0.14);
}

.lav-stat { display: flex; align-items: baseline; gap: 4px; }

.lav-stat-num, .lav-stat-plus {
	font-size: 38px;
	font-weight: 700;
	color: var(--lav-coral);
	line-height: 1;
}

.lav-stat-label { font-size: 15.5px; color: rgba(255, 255, 255, 0.75); margin-inline-start: 8px; }

/* ---------- الشريط المتحرك ---------- */
.lav-marquee {
	overflow: hidden;
	background: var(--lav-coral);
	color: #fff;
	padding: 14px 0;
}

.lav-marquee-track {
	display: flex;
	align-items: center;
	gap: 28px;
	width: max-content;
	animation: lav-marquee 30s linear infinite;
	font-size: 18px;
	font-weight: 700;
	white-space: nowrap;
}

.lav-marquee-track i { font-style: normal; opacity: 0.7; }

@keyframes lav-marquee {
	from { transform: translateX(0); }
	to { transform: translateX(50%); }
}

/* ---------- من نحن ---------- */
.lav-about-grid {
	display: grid;
	grid-template-columns: 1.2fr 1fr;
	gap: 60px;
	align-items: center;
}

.lav-about h2, .lav-section-head h2 {
	font-size: clamp(28px, 4vw, 42px);
	color: var(--lav-navy);
}

.lav-about-text p { color: var(--lav-muted); font-size: 18px; margin-bottom: 28px; }

.lav-about-card {
	background: #fff;
	border-radius: var(--lav-radius);
	padding: 40px 34px;
	box-shadow: var(--lav-shadow);
	border: 1px solid var(--lav-line);
}

.lav-badge-100 {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	background: var(--lav-navy);
	color: #fff;
	font-weight: 700;
	padding: 10px 20px;
	border-radius: 999px;
	margin-bottom: 24px;
}

.lav-badge-100 span { color: var(--lav-coral); font-size: 22px; }

.lav-checklist { list-style: none; margin: 0; padding: 0; }

.lav-checklist li {
	position: relative;
	padding-inline-start: 34px;
	padding-block: 8px;
	font-weight: 600;
}

.lav-checklist li::before {
	content: "✓";
	position: absolute;
	inset-inline-start: 0;
	top: 8px;
	width: 24px;
	height: 24px;
	display: grid;
	place-items: center;
	background: var(--lav-coral-soft);
	color: var(--lav-coral-dark);
	border-radius: 8px;
	font-size: 14px;
	font-weight: 800;
}

/* ---------- الخدمات ---------- */
.lav-section-head { text-align: center; max-width: 640px; margin: 0 auto 55px; }

.lav-services { background: #fff; }

.lav-services-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 24px;
}

.lav-card {
	background: var(--lav-bg);
	border: 1px solid var(--lav-line);
	border-radius: var(--lav-radius);
	transition: all 0.35s ease;
}

.lav-service-card { padding: 36px 30px; }

.lav-service-card:hover {
	transform: translateY(-8px);
	background: #fff;
	box-shadow: var(--lav-shadow);
	border-color: rgba(255, 118, 109, 0.4);
}

.lav-service-icon {
	display: inline-grid;
	place-items: center;
	width: 62px;
	height: 62px;
	margin-bottom: 20px;
	background: var(--lav-navy);
	color: var(--lav-coral);
	border-radius: 18px;
}

.lav-service-icon svg { width: 30px; height: 30px; }

.lav-service-card h3 { font-size: 21px; color: var(--lav-navy); }
.lav-service-card p { color: var(--lav-muted); margin: 0; font-size: 16px; }

.lav-section-cta { text-align: center; margin-top: 45px; }

/* ---------- معرض الأعمال ---------- */
.lav-portfolio-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	grid-auto-rows: 260px;
	gap: 18px;
}

.lav-shot {
	margin: 0;
	border-radius: var(--lav-radius);
	overflow: hidden;
	position: relative;
}

.lav-shot:first-child { grid-row: span 2; grid-column: span 1; }
.lav-shot:nth-child(4) { grid-column: span 2; }

.lav-shot img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.5s ease;
}

.lav-shot:hover img { transform: scale(1.06); }

.lav-shot.is-placeholder {
	display: grid;
	place-items: center;
	background: linear-gradient(145deg, var(--lav-navy-700), var(--lav-navy));
	color: rgba(255, 118, 109, 0.5);
}

.lav-shot.is-placeholder svg { width: 54px; height: 54px; }

/* ---------- بنر الحجز ---------- */
.lav-cta-band { padding-block: 70px; background: var(--lav-bg); }

.lav-cta-inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 30px;
	background:
		radial-gradient(600px 300px at 90% 0%, rgba(255, 118, 109, 0.25), transparent 60%),
		linear-gradient(135deg, var(--lav-navy-700), var(--lav-navy));
	color: #fff;
	border-radius: var(--lav-radius);
	padding: 55px 50px;
}

.lav-cta-inner h2 { font-size: clamp(26px, 3.5vw, 38px); margin-bottom: 8px; }
.lav-cta-inner p { color: rgba(255, 255, 255, 0.8); margin: 0; font-size: 18px; }

/* ---------- الصفحات الداخلية ---------- */
.lav-page-hero {
	background:
		radial-gradient(700px 350px at 80% 0%, rgba(255, 118, 109, 0.18), transparent 60%),
		linear-gradient(135deg, #05101f, var(--lav-navy));
	color: #fff;
	padding: 70px 0 55px;
	text-align: center;
}

.lav-page-title { font-size: clamp(30px, 4.5vw, 46px); margin: 0; }
.lav-page-meta { color: rgba(255, 255, 255, 0.65); margin: 10px 0 0; }

.lav-page-body { padding-block: 60px; }

.lav-single-thumb { margin-bottom: 30px; }
.lav-single-thumb img { border-radius: var(--lav-radius); }

/* ---------- المدونة ---------- */
.lav-posts-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 24px;
}

.lav-post-card { overflow: hidden; background: #fff; }

.lav-post-thumb { display: block; aspect-ratio: 16/10; overflow: hidden; }
.lav-post-thumb img { width: 100%; height: 100%; object-fit: cover; }

.lav-post-card-body { padding: 24px; }
.lav-post-card-title { font-size: 20px; }
.lav-post-card-title a { color: var(--lav-navy); }
.lav-post-excerpt { color: var(--lav-muted); font-size: 15.5px; }

.lav-more { font-weight: 700; }

.lav-pagination { margin-top: 40px; text-align: center; }
.lav-pagination .page-numbers {
	display: inline-grid;
	place-items: center;
	min-width: 42px;
	height: 42px;
	padding-inline: 8px;
	border-radius: 12px;
	background: #fff;
	border: 1px solid var(--lav-line);
	color: var(--lav-navy);
	font-weight: 700;
	margin-inline: 3px;
}
.lav-pagination .page-numbers.current { background: var(--lav-coral); border-color: var(--lav-coral); color: #fff; }

/* ---------- 404 ---------- */
.lav-404 {
	min-height: 70vh;
	display: flex;
	align-items: center;
	text-align: center;
	background: linear-gradient(135deg, #05101f, var(--lav-navy));
	color: #fff;
	padding: 120px 0 80px;
}

.lav-404 .lav-container { display: flex; flex-direction: column; align-items: center; gap: 6px; }
.lav-404-code { font-size: clamp(80px, 15vw, 150px); font-weight: 700; color: var(--lav-coral); line-height: 1; }
.lav-404 p { color: rgba(255, 255, 255, 0.8); max-width: 480px; }
.lav-404 .lav-hero-buttons { justify-content: center; margin-top: 20px; }

/* ---------- الفوتر ---------- */
.lav-footer {
	background: var(--lav-navy);
	color: rgba(255, 255, 255, 0.8);
	padding: 80px 0 0;
}

.lav-footer-grid {
	display: grid;
	grid-template-columns: 1.4fr 1fr 1.2fr;
	gap: 50px;
	padding-bottom: 50px;
}

.lav-footer .custom-logo { max-height: 56px; width: auto; margin-bottom: 18px; }

.lav-footer h3 {
	color: #fff;
	font-size: 19px;
	margin-bottom: 20px;
	position: relative;
	padding-bottom: 12px;
}

.lav-footer h3::after {
	content: "";
	position: absolute;
	bottom: 0;
	inset-inline-start: 0;
	width: 38px;
	height: 3px;
	border-radius: 3px;
	background: var(--lav-coral);
}

.lav-footer-menu, .lav-footer-contact { list-style: none; margin: 0; padding: 0; }

.lav-footer-menu li, .lav-footer-contact li { padding-block: 6px; }

.lav-footer a { color: rgba(255, 255, 255, 0.75); }
.lav-footer a:hover { color: var(--lav-coral); }

.lav-footer-contact { margin-bottom: 22px; }

.lav-socials { display: flex; gap: 10px; margin-top: 18px; }

.lav-social {
	display: grid;
	place-items: center;
	width: 42px;
	height: 42px;
	border-radius: 12px;
	background: rgba(255, 255, 255, 0.07);
	border: 1px solid rgba(255, 255, 255, 0.12);
	color: #fff !important;
	transition: all 0.3s ease;
}

.lav-social:hover { background: var(--lav-coral); border-color: var(--lav-coral); transform: translateY(-3px); }
.lav-social svg { width: 20px; height: 20px; }

.lav-footer-bottom {
	border-top: 1px solid rgba(255, 255, 255, 0.09);
	padding: 22px 0;
	text-align: center;
	font-size: 15px;
	color: rgba(255, 255, 255, 0.55);
}
.lav-footer-bottom p { margin: 0; }

/* ---------- زر واتساب العائم ---------- */
.lav-whatsapp-fab {
	position: fixed;
	bottom: 24px;
	inset-inline-start: 24px;
	z-index: 998;
	display: grid;
	place-items: center;
	width: 58px;
	height: 58px;
	border-radius: 50%;
	background: #25d366;
	color: #fff !important;
	box-shadow: 0 10px 25px rgba(37, 211, 102, 0.4);
	transition: transform 0.3s ease;
}

.lav-whatsapp-fab:hover { transform: scale(1.1); }
.lav-whatsapp-fab svg { width: 30px; height: 30px; }

/* ---------- حركة الظهور ---------- */
[data-lav-reveal] {
	opacity: 0;
	transform: translateY(28px);
	transition: opacity 0.7s ease, transform 0.7s ease;
}

[data-lav-reveal].is-visible { opacity: 1; transform: translateY(0); }

@media (prefers-reduced-motion: reduce) {
	[data-lav-reveal] { opacity: 1; transform: none; transition: none; }
	.lav-aperture, .lav-marquee-track { animation: none; }
}

/* ---------- استجابة الشاشات ---------- */
@media (max-width: 1024px) {
	.lav-services-grid { grid-template-columns: repeat(2, 1fr); }
	.lav-posts-grid { grid-template-columns: repeat(2, 1fr); }
	.lav-about-grid { grid-template-columns: 1fr; gap: 40px; }
	.lav-hero-decor { opacity: 0.15; }
}

@media (max-width: 860px) {
	.lav-nav { display: none; }
	.lav-menu-toggle { display: flex; }
	.lav-mobile-nav.is-open { display: block; }
	.lav-header-actions .lav-btn { display: none; }

	.lav-section { padding: 60px 0; }

	.lav-hero { min-height: 0; padding: 130px 0 60px; text-align: center; }
	.lav-hero-buttons { justify-content: center; }
	.lav-hero-stats { justify-content: center; gap: 26px; }
	.lav-stat { flex-direction: column; align-items: center; gap: 2px; }
	.lav-stat-label { margin: 0; }

	.lav-portfolio-grid { grid-template-columns: repeat(2, 1fr); grid-auto-rows: 200px; }
	.lav-shot:first-child, .lav-shot:nth-child(4) { grid-row: auto; grid-column: auto; }

	.lav-cta-inner { flex-direction: column; text-align: center; padding: 45px 28px; }
}

@media (max-width: 576px) {
	.lav-services-grid, .lav-posts-grid, .lav-portfolio-grid { grid-template-columns: 1fr; }
	.lav-footer-grid { grid-template-columns: 1fr; gap: 36px; }
	.lav-hero-buttons .lav-btn { width: 100%; }
	.lav-whatsapp-fab { width: 52px; height: 52px; bottom: 18px; inset-inline-start: 18px; }
}

/* ---------- توافق Elementor ---------- */
.elementor-page .lav-page-hero { display: none; }

body.elementor-default { background: var(--lav-bg); }

/* ---------- المشاريع والعملاء ---------- */
.lav-filter {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-bottom: 40px;
	justify-content: center;
}

.lav-filter-link {
	padding: 9px 22px;
	border-radius: 999px;
	background: #fff;
	border: 1px solid var(--lav-line);
	color: var(--lav-navy);
	font-weight: 600;
	font-size: 15.5px;
}

.lav-filter-link:hover { border-color: var(--lav-coral); color: var(--lav-coral-dark); }
.lav-filter-link.is-active { background: var(--lav-navy); border-color: var(--lav-navy); color: #fff; }

.lav-projects-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 24px;
}

.lav-project-card {
	background: #fff;
	border: 1px solid var(--lav-line);
	border-radius: var(--lav-radius);
	overflow: hidden;
	transition: all 0.35s ease;
}

.lav-project-card:hover { transform: translateY(-6px); box-shadow: var(--lav-shadow); }

.lav-project-thumb { display: block; aspect-ratio: 4/3; overflow: hidden; background: var(--lav-navy); }
.lav-project-thumb img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.5s ease; }
.lav-project-card:hover .lav-project-thumb img { transform: scale(1.05); }

.lav-thumb-placeholder {
	display: grid;
	place-items: center;
	width: 100%;
	height: 100%;
	color: rgba(255, 118, 109, 0.45);
}
.lav-thumb-placeholder svg { width: 46px; height: 46px; }

.lav-project-card-body { padding: 20px 22px 24px; }
.lav-project-card-body h2, .lav-project-card-body h3 { font-size: 19px; margin: 10px 0 6px; }
.lav-project-card-body a { color: var(--lav-navy); }
.lav-project-card-body a:hover { color: var(--lav-coral-dark); }

.lav-project-client { font-size: 14.5px; color: var(--lav-muted); margin: 0; }

.lav-tag {
	display: inline-block;
	padding: 3px 12px;
	border-radius: 999px;
	background: var(--lav-coral-soft);
	color: var(--lav-coral-dark);
	font-size: 13px;
	font-weight: 700;
}

.lav-clients-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 22px;
}

.lav-client-card {
	background: #fff;
	border: 1px solid var(--lav-line);
	border-radius: var(--lav-radius);
	padding: 30px 22px;
	text-align: center;
	transition: all 0.35s ease;
}

.lav-client-card:hover { transform: translateY(-6px); box-shadow: var(--lav-shadow); }

.lav-client-logo {
	display: grid;
	place-items: center;
	width: 96px;
	height: 96px;
	margin: 0 auto 16px;
	border-radius: 24px;
	background: var(--lav-bg);
	border: 1px solid var(--lav-line);
	overflow: hidden;
}

.lav-client-logo img { width: 100%; height: 100%; object-fit: contain; padding: 10px; }

.lav-client-initial {
	font-size: 38px;
	font-weight: 700;
	color: var(--lav-coral);
}

.lav-client-card-body h2 { font-size: 19px; margin-bottom: 8px; }
.lav-client-card-body a { color: var(--lav-navy); }
.lav-client-count { color: var(--lav-muted); font-size: 14.5px; margin: 10px 0 0; }

.lav-client-hero { text-align: center; }
.lav-client-hero-logo {
	display: inline-grid;
	place-items: center;
	width: 110px;
	height: 110px;
	margin-bottom: 18px;
	border-radius: 28px;
	background: #fff;
	overflow: hidden;
}
.lav-client-hero-logo img { width: 100%; height: 100%; object-fit: contain; padding: 12px; }

.lav-related { margin-top: 70px; }
.lav-related h2 { font-size: 28px; color: var(--lav-navy); margin-bottom: 28px; }

.lav-empty {
	text-align: center;
	color: var(--lav-muted);
	background: #fff;
	border: 1px dashed var(--lav-line);
	border-radius: var(--lav-radius);
	padding: 50px 20px;
}

/* ---------- تنسيق محتوى الصفحات ---------- */
.lav-entry, .lav-page-body { font-size: 17.5px; }

.lav-page-body h2 { color: var(--lav-navy); font-size: clamp(24px, 3vw, 32px); margin-top: 1.6em; }
.lav-page-body h3 { color: var(--lav-navy); font-size: clamp(20px, 2.4vw, 24px); margin-top: 1.4em; }
.lav-page-body h2:first-child, .lav-page-body h3:first-child { margin-top: 0; }
.lav-page-body ul { padding-inline-start: 22px; }
.lav-page-body li { margin-bottom: 8px; }

.lav-lead { font-size: 20px; color: var(--lav-muted); line-height: 2; }

.lav-info-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 22px;
	margin: 35px 0;
}

.lav-info-card {
	background: #fff;
	border: 1px solid var(--lav-line);
	border-radius: var(--lav-radius);
	padding: 30px 26px;
}

.lav-info-card h3 { margin-top: 0; font-size: 20px; }
.lav-info-card p:last-child { margin-bottom: 0; }
.lav-info-card a { font-weight: 700; word-break: break-word; }

/* ---------- بطاقات الأسعار ---------- */
.lav-pricing-section { margin: 50px 0 20px; }
.lav-pricing-section > h2 {
	text-align: center;
	position: relative;
	padding-bottom: 16px;
	margin-bottom: 35px;
}
.lav-pricing-section > h2::after {
	content: "";
	position: absolute;
	bottom: 0;
	inset-inline-start: 50%;
	transform: translateX(50%);
	width: 56px;
	height: 4px;
	border-radius: 4px;
	background: var(--lav-coral);
}

.lav-pricing-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 24px;
	align-items: stretch;
}

.lav-price-card {
	display: flex;
	flex-direction: column;
	background: #fff;
	border: 1px solid var(--lav-line);
	border-radius: var(--lav-radius);
	padding: 34px 28px;
	transition: all 0.35s ease;
}

.lav-price-card:hover { transform: translateY(-6px); box-shadow: var(--lav-shadow); border-color: rgba(255, 118, 109, 0.45); }

.lav-price-card.is-featured {
	background: linear-gradient(160deg, var(--lav-navy-700), var(--lav-navy));
	color: #fff;
	border-color: var(--lav-navy);
}

.lav-price-card h3 { margin: 0 0 6px; font-size: 21px; color: inherit; }

.lav-price {
	font-size: 34px;
	font-weight: 700;
	color: var(--lav-coral);
	margin-bottom: 4px;
}

.lav-price small { font-size: 15px; font-weight: 600; color: var(--lav-muted); }
.lav-price-card.is-featured .lav-price small { color: rgba(255, 255, 255, 0.7); }

.lav-price-card ul {
	list-style: none;
	margin: 18px 0 24px;
	padding: 0;
	flex: 1;
}

.lav-price-card li {
	position: relative;
	padding-inline-start: 26px;
	padding-block: 6px;
	font-size: 15.5px;
	border-bottom: 1px dashed var(--lav-line);
}

.lav-price-card.is-featured li { border-bottom-color: rgba(255, 255, 255, 0.12); }

.lav-price-card li::before {
	content: "✓";
	position: absolute;
	inset-inline-start: 0;
	color: var(--lav-coral);
	font-weight: 800;
}

.lav-price-card .lav-btn { width: 100%; }

.lav-pay-note {
	text-align: center;
	color: var(--lav-muted);
	font-size: 15px;
	margin-top: 26px;
}

/* ---------- استجابة إضافية ---------- */
@media (max-width: 1024px) {
	.lav-projects-grid, .lav-pricing-grid, .lav-info-grid { grid-template-columns: repeat(2, 1fr); }
	.lav-clients-grid { grid-template-columns: repeat(3, 1fr); }
}

@media (max-width: 700px) {
	.lav-projects-grid, .lav-pricing-grid, .lav-info-grid { grid-template-columns: 1fr; }
	.lav-clients-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 420px) {
	.lav-clients-grid { grid-template-columns: 1fr; }
}

/* ---------- عرض الخدمات (الأرشيف) ---------- */
.lav-services-list { display: flex; flex-direction: column; gap: 60px; }

.lav-service-row {
	display: grid;
	grid-template-columns: 1fr 1.15fr;
	gap: 50px;
	align-items: center;
	background: #fff;
	border: 1px solid var(--lav-line);
	border-radius: var(--lav-radius);
	padding: 34px;
	transition: box-shadow 0.35s ease;
}

.lav-service-row:hover { box-shadow: var(--lav-shadow); }
.lav-service-row.is-flipped { grid-template-columns: 1.15fr 1fr; }
.lav-service-row.is-flipped .lav-service-media { order: 2; }

.lav-service-media {
	position: relative;
	display: block;
	aspect-ratio: 4/3;
	border-radius: 18px;
	overflow: hidden;
	background: var(--lav-navy);
}

.lav-service-media img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.5s ease; }
.lav-service-row:hover .lav-service-media img { transform: scale(1.04); }

.lav-service-num {
	position: absolute;
	top: 14px;
	inset-inline-start: 14px;
	background: rgba(2, 10, 24, 0.75);
	color: var(--lav-coral);
	font-weight: 700;
	font-size: 15px;
	padding: 4px 14px;
	border-radius: 999px;
	backdrop-filter: blur(6px);
}

.lav-service-info h2 { font-size: clamp(24px, 3vw, 32px); margin-bottom: 4px; }
.lav-service-info h2 a { color: var(--lav-navy); }
.lav-service-info h2 a:hover { color: var(--lav-coral-dark); }

.lav-service-tagline { color: var(--lav-coral-dark); font-weight: 700; margin-bottom: 10px; }
.lav-service-desc { color: var(--lav-muted); margin-bottom: 14px; }

.lav-service-features { margin-bottom: 18px; }
.lav-service-features li { padding-block: 5px; font-size: 15.5px; }
.lav-service-features li::before { top: 6px; }

.lav-service-meta { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 20px; }

.lav-service-chip {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	background: var(--lav-bg);
	border: 1px solid var(--lav-line);
	color: var(--lav-navy);
	font-weight: 700;
	font-size: 14.5px;
	padding: 7px 16px;
	border-radius: 999px;
}

.lav-service-chip svg { width: 17px; height: 17px; color: var(--lav-coral); }

.lav-service-actions { display: flex; flex-wrap: wrap; gap: 12px; }

/* ---------- صفحة الخدمة المفردة ---------- */
.lav-service-single {
	display: grid;
	grid-template-columns: 1fr 340px;
	gap: 40px;
	align-items: start;
}

.lav-service-offer {
	background: #fff;
	border: 1px solid var(--lav-line);
	border-radius: var(--lav-radius);
	padding: 34px 30px;
	margin-top: 35px;
}

.lav-service-offer h2 { margin-top: 0; }
.lav-service-offer .lav-checklist { columns: 2; column-gap: 40px; }
.lav-service-offer .lav-checklist li { break-inside: avoid; }

.lav-service-aside { position: sticky; top: 110px; display: flex; flex-direction: column; gap: 20px; }

.lav-service-box {
	background: linear-gradient(160deg, var(--lav-navy-700), var(--lav-navy));
	color: #fff;
	border-radius: var(--lav-radius);
	padding: 30px 26px;
	text-align: center;
}

.lav-service-box h3 { color: #fff; font-size: 20px; }
.lav-service-box .lav-btn { margin-bottom: 10px; }
.lav-service-box .lav-btn-outline-dark { border-color: rgba(255,255,255,0.4); color: #fff !important; }
.lav-service-box .lav-btn-outline-dark:hover { background: rgba(255,255,255,0.1); }
.lav-service-box .lav-price { color: var(--lav-coral); }
.lav-service-box .lav-pay-note { color: rgba(255,255,255,0.6); margin: 6px 0 0; }
.lav-service-duration { color: rgba(255,255,255,0.75); margin-top: -4px; }

.lav-service-box-light { background: #fff; border: 1px solid var(--lav-line); color: var(--lav-text); }
.lav-service-box-light h3 { color: var(--lav-navy); }
.lav-service-box-light p { color: var(--lav-muted); }

@media (max-width: 1024px) {
	.lav-service-single { grid-template-columns: 1fr; }
	.lav-service-aside { position: static; }
}

@media (max-width: 860px) {
	.lav-service-row, .lav-service-row.is-flipped { grid-template-columns: 1fr; gap: 24px; padding: 22px; }
	.lav-service-row.is-flipped .lav-service-media { order: 0; }
	.lav-service-offer .lav-checklist { columns: 1; }
}
