/* =====================================================================
   RedDelta Market — main.css
   Editorial-luxe + cinematic. Light/Dark via [data-theme]. RTL aware.
   ===================================================================== */

/* ---------- Design tokens ---------- */
:root {
	--red: #DC2626;
	--red-600: #DC2626;
	--red-700: #B91C1C;
	--red-400: #EF4444;
	--red-300: #FCA5A5;

	--font-display: 'Sora', system-ui, sans-serif;
	--font-body: 'Inter', system-ui, sans-serif;
	--font-serif: 'Fraunces', Georgia, serif;

	--maxw: 1240px;
	--gutter: clamp(20px, 5vw, 64px);
	--radius: 18px;
	--radius-sm: 12px;

	--ease: cubic-bezier(0.22, 1, 0.36, 1);
	--dur: 0.5s;

	--header-h: 76px;
}

/* Light theme */
[data-theme='light'] {
	--bg: #FAFAF9;
	--bg-2: #F1F0EE;
	--surface: #FFFFFF;
	--surface-2: #F7F6F4;
	--ink: #0C0A09;
	--ink-2: #3A3531;
	--muted: #6B645E;
	--border: #E7E5E4;
	--border-strong: #D6D3D1;
	--brand: var(--red-600);
	--brand-ink: #FFFFFF;
	--glow: rgba(220, 38, 38, 0.16);
	--shadow: 0 24px 60px -30px rgba(12, 10, 9, 0.30);
	--hero-grad: radial-gradient(120% 90% at 70% 0%, rgba(220,38,38,0.10), transparent 60%);
	color-scheme: light;
}

/* Dark theme */
[data-theme='dark'] {
	--bg: #0A0A0B;
	--bg-2: #0F0F11;
	--surface: #141416;
	--surface-2: #1B1B1F;
	--ink: #F5F5F4;
	--ink-2: #D7D3CF;
	--muted: #9A938D;
	--border: #26262A;
	--border-strong: #34343A;
	--brand: var(--red-400);
	--brand-ink: #FFFFFF;
	--glow: rgba(239, 68, 68, 0.22);
	--shadow: 0 30px 80px -40px rgba(0, 0, 0, 0.8);
	--hero-grad: radial-gradient(120% 90% at 70% 0%, rgba(239,68,68,0.16), transparent 60%);
	color-scheme: dark;
}

/* ---------- Reset / base ---------- */
*, *::before, *::after { box-sizing: border-box; }
* { margin: 0; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; overflow-x: clip; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }

body {
	font-family: var(--font-body);
	background: var(--bg);
	color: var(--ink);
	line-height: 1.6;
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
	overflow-x: hidden;
	transition: background var(--dur) var(--ease), color var(--dur) var(--ease);
}
[dir='rtl'] body { font-family: 'IBM Plex Sans Arabic', var(--font-body); }

img, svg { max-width: 100%; display: block; }
a { color: inherit; text-decoration: none; }
button { font: inherit; cursor: pointer; }
::selection { background: var(--red); color: #fff; }

.rd-container {
	width: 100%;
	max-width: var(--maxw);
	margin-inline: auto;
	padding-inline: var(--gutter);
}
.rd-container--narrow { max-width: 820px; }

.rd-skip {
	position: fixed; inset-inline-start: 12px; top: -80px; z-index: 200;
	background: var(--brand); color: #fff; padding: 10px 16px; border-radius: 0 0 8px 8px;
	transition: top var(--dur) var(--ease);
}
.rd-skip:focus { top: 0; }

/* ---------- Typography ---------- */
.rd-kicker {
	font-family: var(--font-display);
	font-size: 0.78rem; font-weight: 600; letter-spacing: 0.18em;
	text-transform: uppercase; color: var(--brand);
	margin-bottom: 18px;
}
.rd-h2 {
	font-family: var(--font-display);
	font-weight: 700;
	font-size: clamp(1.9rem, 4.6vw, 3.3rem);
	line-height: 1.08; letter-spacing: -0.02em;
}
.rd-lead {
	font-size: clamp(1rem, 1.5vw, 1.18rem);
	color: var(--muted); max-width: 56ch; margin-top: 18px;
}
.rd-lead--center { margin-inline: auto; text-align: center; }
.rd-hl { color: var(--brand); font-style: italic; font-family: var(--font-serif); font-weight: 600; }

.rd-link-arrow {
	display: inline-flex; align-items: center; gap: 8px;
	font-family: var(--font-display); font-weight: 600; color: var(--ink);
	margin-top: 26px; position: relative;
}
.rd-link-arrow::after { content: ''; position: absolute; left: 0; bottom: -4px; height: 1.5px; width: 0; background: var(--brand); transition: width var(--dur) var(--ease); }
.rd-link-arrow:hover::after { width: 100%; }

/* ---------- Buttons ---------- */
.rd-btn {
	display: inline-flex; align-items: center; gap: 10px;
	font-family: var(--font-display); font-weight: 600; font-size: 0.95rem;
	padding: 13px 24px; border-radius: 999px; border: 1.5px solid transparent;
	transition: transform var(--dur) var(--ease), background var(--dur) var(--ease), box-shadow var(--dur) var(--ease), color var(--dur) var(--ease);
	will-change: transform;
}
.rd-btn--lg { padding: 16px 30px; font-size: 1rem; }
.rd-btn--primary { background: var(--brand); color: var(--brand-ink); box-shadow: 0 12px 30px -12px var(--glow); }
.rd-btn--primary:hover { background: var(--red-700); transform: translateY(-2px); box-shadow: 0 18px 40px -14px var(--glow); }
.rd-btn--ghost { border-color: var(--border-strong); color: var(--ink); background: transparent; }
.rd-btn--ghost:hover { border-color: var(--brand); color: var(--brand); transform: translateY(-2px); }

/* ---------- Header ---------- */
.rd-header {
	position: fixed; inset-block-start: 0; inset-inline: 0; z-index: 100;
	height: var(--header-h);
	display: flex; align-items: center;
	transition: background var(--dur) var(--ease), border-color var(--dur) var(--ease), height var(--dur) var(--ease);
	border-bottom: 1px solid transparent;
}
.rd-header.is-scrolled {
	background: color-mix(in srgb, var(--bg) 82%, transparent);
	backdrop-filter: blur(16px) saturate(140%);
	-webkit-backdrop-filter: blur(16px) saturate(140%);
	border-bottom-color: var(--border);
	height: 64px;
}
.rd-header__inner { display: flex; align-items: center; justify-content: space-between; gap: 24px; width: 100%; }

.rd-logo { display: inline-flex; align-items: center; gap: 11px; }
.rd-logo__mark { flex: none; transition: transform var(--dur) var(--ease); }
.rd-logo:hover .rd-logo__mark { transform: rotate(-8deg) scale(1.06); }
.rd-logo__text { font-family: var(--font-display); font-weight: 800; font-size: 1.16rem; letter-spacing: -0.02em; }
.rd-logo__delta { color: var(--brand); }
.rd-logo__market { font-weight: 400; opacity: 0.6; margin-inline-start: 6px; }

.rd-nav { display: flex; gap: 6px; }
.rd-nav__link {
	font-family: var(--font-display); font-weight: 500; font-size: 0.94rem;
	color: var(--ink-2); padding: 8px 14px; border-radius: 999px; position: relative;
	transition: color var(--dur) var(--ease), background var(--dur) var(--ease);
}
.rd-nav__link:hover { color: var(--ink); }
.rd-nav__link.is-active { color: var(--brand); }

.rd-header__actions { display: flex; align-items: center; gap: 10px; }

/* Language dropdown */
.rd-lang { position: relative; }
.rd-lang__btn {
	display: inline-flex; align-items: center; gap: 6px;
	font-family: var(--font-display); font-weight: 600; font-size: 0.85rem;
	background: transparent; border: 1.5px solid var(--border); color: var(--ink);
	padding: 8px 12px; border-radius: 999px; transition: border-color var(--dur) var(--ease);
}
.rd-lang__btn:hover { border-color: var(--brand); }
.rd-lang__menu {
	position: absolute; inset-inline-end: 0; top: calc(100% + 8px);
	background: var(--surface); border: 1px solid var(--border); border-radius: 14px;
	list-style: none; padding: 6px; min-width: 150px; box-shadow: var(--shadow);
	opacity: 0; visibility: hidden; transform: translateY(-6px);
	transition: opacity var(--dur) var(--ease), transform var(--dur) var(--ease), visibility var(--dur);
}
.rd-lang.is-open .rd-lang__menu { opacity: 1; visibility: visible; transform: translateY(0); }
.rd-lang__menu a { display: block; padding: 9px 12px; border-radius: 9px; font-size: 0.9rem; color: var(--ink-2); transition: background var(--dur) var(--ease), color var(--dur) var(--ease); }
.rd-lang__menu a:hover { background: var(--surface-2); color: var(--ink); }
.rd-lang__menu a.is-active { color: var(--brand); font-weight: 600; }

/* Theme toggle */
.rd-theme-toggle {
	width: 42px; height: 42px; border-radius: 999px; flex: none;
	display: grid; place-items: center; background: transparent;
	border: 1.5px solid var(--border); color: var(--ink);
	transition: border-color var(--dur) var(--ease), color var(--dur) var(--ease), transform var(--dur) var(--ease);
}
.rd-theme-toggle:hover { border-color: var(--brand); color: var(--brand); transform: rotate(20deg); }
.rd-icon-sun, .rd-icon-moon { position: absolute; transition: opacity var(--dur) var(--ease), transform var(--dur) var(--ease); }
[data-theme='dark'] .rd-icon-sun { opacity: 1; transform: scale(1); }
[data-theme='dark'] .rd-icon-moon { opacity: 0; transform: scale(0.4); }
[data-theme='light'] .rd-icon-sun { opacity: 0; transform: scale(0.4); }
[data-theme='light'] .rd-icon-moon { opacity: 1; transform: scale(1); }
.rd-theme-toggle { position: relative; }

.rd-header__cta { padding: 10px 20px; font-size: 0.9rem; }

/* Burger */
.rd-burger { display: none; width: 42px; height: 42px; border: 1.5px solid var(--border); border-radius: 999px; background: transparent; position: relative; }
.rd-burger span { position: absolute; left: 11px; right: 11px; height: 1.8px; background: var(--ink); transition: transform var(--dur) var(--ease), opacity var(--dur) var(--ease); }
.rd-burger span:nth-child(1) { top: 15px; }
.rd-burger span:nth-child(2) { top: 20px; }
.rd-burger span:nth-child(3) { top: 25px; }
body.rd-menu-open .rd-burger span:nth-child(1) { transform: translateY(5px) rotate(45deg); }
body.rd-menu-open .rd-burger span:nth-child(2) { opacity: 0; }
body.rd-menu-open .rd-burger span:nth-child(3) { transform: translateY(-5px) rotate(-45deg); }

/* Mobile menu */
.rd-mobile {
	position: fixed; inset: 0; z-index: 90; background: var(--bg);
	display: grid; place-items: center; opacity: 0; visibility: hidden;
	transition: opacity var(--dur) var(--ease), visibility var(--dur);
}
body.rd-menu-open .rd-mobile { opacity: 1; visibility: visible; }
.rd-mobile__nav { display: flex; flex-direction: column; gap: 8px; text-align: center; }
.rd-mobile__nav a { font-family: var(--font-display); font-weight: 600; font-size: 1.6rem; padding: 10px; }
.rd-mobile__nav a.rd-btn { font-size: 1rem; margin-top: 16px; }
.rd-mobile__langs { display: flex; justify-content: center; gap: 8px; margin-top: 30px; }
.rd-mobile__langs a { font-family: var(--font-display); font-weight: 600; font-size: 0.95rem; color: var(--muted); padding: 9px 18px; border: 1.5px solid var(--border); border-radius: 999px; transition: color var(--dur) var(--ease), border-color var(--dur) var(--ease); }
.rd-mobile__langs a.is-active, .rd-mobile__langs a:hover { color: var(--brand); border-color: var(--brand); }

/* ---------- Sections ---------- */
.rd-main { display: block; }
.rd-section { padding-block: clamp(52px, 6.5vw, 92px); position: relative; }
.rd-section__head { text-align: center; max-width: 760px; margin-inline: auto; margin-bottom: clamp(26px, 4vw, 48px); }
.rd-section__head .rd-kicker { text-align: center; }

/* ---------- Hero ---------- */
.rd-hero {
	position: relative; min-height: 100svh; display: flex; align-items: center;
	padding-block: calc(var(--header-h) + 40px) 60px; overflow: hidden;
	background: var(--hero-grad), var(--bg);
}
.rd-hero__canvas { position: absolute; inset: 0; width: 100%; height: 100%; z-index: 0; opacity: 0.9; }
.rd-hero__glow {
	position: absolute; z-index: 0; width: 60vw; height: 60vw; max-width: 760px; max-height: 760px;
	inset-inline-end: -10vw; inset-block-start: -12vw; border-radius: 50%;
	background: radial-gradient(circle, var(--glow), transparent 65%); filter: blur(20px); pointer-events: none;
}
.rd-hero__delta {
	position: absolute; z-index: 0; pointer-events: none; opacity: 0.5;
	width: 0; height: 0; border-style: solid;
}
.rd-hero__delta--1 {
	inset-inline-start: 6%; inset-block-end: 12%;
	border-width: 0 70px 120px 70px; border-color: transparent transparent var(--red-700) transparent;
	opacity: 0.16; transform: rotate(12deg);
}
.rd-hero__delta--2 {
	inset-inline-end: 14%; inset-block-start: 22%;
	border-width: 0 44px 76px 44px; border-color: transparent transparent var(--red-400) transparent;
	opacity: 0.14; transform: rotate(-18deg);
}
.rd-hero__inner { position: relative; z-index: 2; max-width: 920px; }
.rd-hero__kicker {
	display: inline-flex; align-items: center; gap: 10px;
	font-family: var(--font-display); font-weight: 600; font-size: 0.82rem;
	letter-spacing: 0.14em; text-transform: uppercase; color: var(--ink-2);
	padding: 8px 16px; border: 1px solid var(--border); border-radius: 999px;
	background: color-mix(in srgb, var(--surface) 60%, transparent); margin-bottom: 30px;
}
.rd-dot { width: 7px; height: 7px; border-radius: 50%; background: var(--brand); box-shadow: 0 0 0 4px var(--glow); }
.rd-hero__title {
	font-family: var(--font-display); font-weight: 800;
	font-size: clamp(2.6rem, 7vw, 5.7rem); line-height: 1.02; letter-spacing: -0.03em;
}
.rd-hero__subtitle { font-size: clamp(1.05rem, 2vw, 1.35rem); color: var(--muted); max-width: 60ch; margin-top: 28px; }
.rd-hero__actions { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 40px; }
.rd-hero__scroll {
	position: absolute; inset-block-end: 28px; inset-inline-end: var(--gutter);
	display: inline-flex; flex-direction: column; align-items: center; gap: 9px; z-index: 2;
	font-family: var(--font-display); font-size: 0.66rem; font-weight: 500; letter-spacing: 0.22em; text-transform: uppercase; color: var(--muted);
	opacity: 0.65; transition: opacity var(--dur) var(--ease);
}
.rd-hero__scroll:hover { opacity: 1; color: var(--brand); }
@media (max-width: 700px) { .rd-hero__scroll { display: none; } }
.rd-hero__scroll-line { width: 1.5px; height: 46px; background: linear-gradient(var(--brand), transparent); animation: rd-scroll 2s var(--ease) infinite; }
@keyframes rd-scroll { 0% { transform: scaleY(0); transform-origin: top; } 50% { transform: scaleY(1); transform-origin: top; } 51% { transform-origin: bottom; } 100% { transform: scaleY(0); transform-origin: bottom; } }

/* ---------- Stats ---------- */
.rd-stats { padding-block: clamp(40px, 5vw, 68px); border-block: 1px solid var(--border); background: var(--bg-2); }
.rd-stats__grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: clamp(20px, 4vw, 50px); }
.rd-stat { text-align: center; }
.rd-stat__value { display: block; font-family: var(--font-display); font-weight: 800; font-size: clamp(2.2rem, 5vw, 3.6rem); line-height: 1; letter-spacing: -0.03em; color: var(--ink); }
.rd-stat__label { display: block; margin-top: 12px; font-size: 0.9rem; color: var(--muted); }

/* ---------- About teaser ---------- */
.rd-about-teaser__grid { display: grid; grid-template-columns: 1.1fr 0.9fr; gap: clamp(40px, 6vw, 90px); align-items: center; }
.rd-about-teaser__visual { position: relative; aspect-ratio: 1; }
.rd-delta-art {
	position: absolute; inset: 0; border-radius: var(--radius);
	background:
		radial-gradient(60% 60% at 70% 20%, var(--glow), transparent 60%),
		conic-gradient(from 220deg at 50% 50%, var(--red-700), var(--red-400), var(--red-700));
	-webkit-mask: linear-gradient(#000, #000) padding-box, conic-gradient(#000 0 0);
	clip-path: polygon(50% 4%, 96% 92%, 4% 92%);
	box-shadow: var(--shadow);
}

/* ---------- Brands ---------- */
.rd-brands__grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: clamp(16px, 2.4vw, 26px); }
.rd-brand-card {
	position: relative; display: flex; flex-direction: column; gap: 8px;
	padding: clamp(26px, 3.4vw, 42px); border: 1px solid var(--border); border-radius: var(--radius);
	background: var(--surface); overflow: hidden;
	transition: transform var(--dur) var(--ease), border-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease);
}
.rd-brand-card::before {
	content: ''; position: absolute; inset-block-start: 0; inset-inline-start: 0; width: 100%; height: 3px;
	background: linear-gradient(90deg, var(--red-700), var(--red-400)); transform: scaleX(0); transform-origin: inline-start;
	transition: transform var(--dur) var(--ease);
}
.rd-brand-card:hover { transform: translateY(-6px); border-color: var(--border-strong); box-shadow: var(--shadow); }
.rd-brand-card:hover::before { transform: scaleX(1); }
.rd-brand-card__index { position: absolute; inset-block-start: 22px; inset-inline-end: 26px; font-family: var(--font-display); font-weight: 700; font-size: 0.85rem; color: var(--muted); opacity: 0.5; }
.rd-brand-card__cat { font-family: var(--font-display); font-size: 0.74rem; letter-spacing: 0.14em; text-transform: uppercase; color: var(--brand); }
.rd-brand-card__name { font-family: var(--font-display); font-weight: 700; font-size: clamp(1.5rem, 2.6vw, 2.1rem); letter-spacing: -0.02em; }
.rd-brand-card__desc { color: var(--muted); margin-top: 2px; }
.rd-brand-card__visit { display: inline-flex; align-items: center; gap: 7px; margin-top: 16px; font-family: var(--font-display); font-weight: 600; font-size: 0.88rem; color: var(--ink); }
.rd-brand-card:hover .rd-brand-card__visit { color: var(--brand); }
.rd-brands__soon { text-align: center; margin-top: 34px; color: var(--muted); font-family: var(--font-display); letter-spacing: 0.04em; }

/* ---------- Services ---------- */
.rd-services { background: var(--bg-2); border-block: 1px solid var(--border); }
.rd-services__grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: clamp(16px, 2vw, 24px); }
.rd-service { padding: clamp(24px, 3vw, 34px); border: 1px solid var(--border); border-radius: var(--radius); background: var(--surface); transition: transform var(--dur) var(--ease), border-color var(--dur) var(--ease); }
.rd-service:hover { transform: translateY(-5px); border-color: var(--brand); }
.rd-service__num { font-family: var(--font-serif); font-weight: 600; font-size: 1.6rem; color: var(--brand); }
.rd-service__title { font-family: var(--font-display); font-weight: 600; font-size: 1.2rem; margin-top: 14px; }
.rd-service__desc { color: var(--muted); margin-top: 10px; font-size: 0.96rem; }

/* ---------- CTA ---------- */
.rd-cta__inner {
	position: relative; text-align: center; padding: clamp(48px, 7vw, 90px) clamp(24px, 5vw, 80px);
	border-radius: calc(var(--radius) + 8px); overflow: hidden;
	background: var(--surface); border: 1px solid var(--border);
}
.rd-cta__glow { position: absolute; inset: 0; background: radial-gradient(70% 120% at 50% 0%, var(--glow), transparent 60%); pointer-events: none; }
.rd-cta__title { position: relative; font-family: var(--font-display); font-weight: 800; font-size: clamp(1.8rem, 4vw, 3rem); letter-spacing: -0.02em; }
.rd-cta__subtitle { position: relative; color: var(--muted); margin-top: 16px; font-size: 1.1rem; }
.rd-cta__inner .rd-btn { position: relative; margin-top: 32px; }

/* ---------- Footer ---------- */
.rd-footer { background: var(--bg-2); border-top: 1px solid var(--border); padding-block: clamp(56px, 7vw, 84px) 30px; }
.rd-footer__grid { display: grid; grid-template-columns: 1.6fr 1fr 1fr 1.2fr; gap: clamp(30px, 4vw, 56px); }
.rd-logo--footer { margin-bottom: 20px; }
.rd-footer__about { color: var(--muted); max-width: 38ch; font-size: 0.96rem; }
.rd-footer__title { font-family: var(--font-display); font-weight: 600; font-size: 0.82rem; letter-spacing: 0.12em; text-transform: uppercase; color: var(--ink); margin-bottom: 18px; }
.rd-footer__col ul { list-style: none; padding: 0; display: flex; flex-direction: column; gap: 11px; }
.rd-footer__col a { color: var(--muted); transition: color var(--dur) var(--ease); }
.rd-footer__col a:hover { color: var(--brand); }
.rd-footer__contact li { color: var(--muted); }
.rd-footer__bottom { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-top: clamp(40px, 5vw, 60px); padding-top: 24px; border-top: 1px solid var(--border); flex-wrap: wrap; }
.rd-footer__bottom p { color: var(--muted); font-size: 0.88rem; }
.rd-footer__langs { display: flex; gap: 6px; }
.rd-footer__langs a { font-family: var(--font-display); font-weight: 600; font-size: 0.82rem; color: var(--muted); padding: 6px 11px; border: 1px solid var(--border); border-radius: 999px; }
.rd-footer__langs a.is-active, .rd-footer__langs a:hover { color: var(--brand); border-color: var(--brand); }

/* ---------- Fallback / blog ---------- */
.rd-fallback { padding-block: calc(var(--header-h) + 60px) 120px; }
.rd-posts { display: grid; gap: 28px; }
.rd-post-card { border: 1px solid var(--border); border-radius: var(--radius); overflow: hidden; background: var(--surface); }
.rd-post-card__body { padding: 26px; }
.rd-post-card__date { color: var(--brand); font-family: var(--font-display); font-size: 0.82rem; }
.rd-post-card__title { font-family: var(--font-display); font-size: 1.4rem; margin: 8px 0 12px; }
.rd-post-card__excerpt { color: var(--muted); }
.rd-empty { text-align: center; padding-block: 80px; }
.rd-empty__code { font-family: var(--font-display); font-weight: 800; font-size: clamp(4rem, 14vw, 9rem); color: var(--brand); line-height: 1; }
.rd-empty .rd-btn { margin-top: 24px; }
.rd-section__title { font-family: var(--font-display); font-weight: 700; font-size: clamp(1.8rem, 4vw, 2.6rem); }

/* ---------- Back to top ---------- */
.rd-totop {
	position: fixed; inset-block-end: 24px; inset-inline-end: 24px; z-index: 95;
	width: 48px; height: 48px; border-radius: 50%; border: none;
	background: var(--brand); color: #fff; display: grid; place-items: center;
	box-shadow: 0 14px 32px -10px var(--glow);
	opacity: 0; visibility: hidden; transform: translateY(16px) scale(0.9);
	transition: opacity var(--dur) var(--ease), transform var(--dur) var(--ease), visibility var(--dur), background var(--dur) var(--ease);
}
.rd-totop.is-visible { opacity: 1; visibility: visible; transform: none; }
.rd-totop:hover { background: var(--red-700); transform: translateY(-3px); }
@media (max-width: 560px) { .rd-totop { inset-block-end: 16px; inset-inline-end: 16px; width: 44px; height: 44px; } }

/* ---------- Contact ---------- */
.rd-contact__grid { display: grid; grid-template-columns: 1.3fr 0.7fr; gap: clamp(32px, 5vw, 64px); align-items: start; }
.rd-form { display: grid; gap: 18px; }
.rd-field { display: grid; gap: 8px; }
.rd-field label { font-family: var(--font-display); font-weight: 500; font-size: 0.9rem; color: var(--ink-2); }
.rd-field input, .rd-field textarea {
	font: inherit; color: var(--ink); background: var(--surface); border: 1.5px solid var(--border);
	border-radius: var(--radius-sm); padding: 13px 16px; transition: border-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease); width: 100%;
}
.rd-field input:focus, .rd-field textarea:focus { outline: none; border-color: var(--brand); box-shadow: 0 0 0 4px var(--glow); }
.rd-form .rd-btn { justify-self: start; margin-top: 6px; }
.rd-hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.rd-alert { max-width: 760px; margin: 0 auto 36px; padding: 16px 20px; border-radius: var(--radius-sm); font-weight: 500; }
.rd-alert--ok { background: color-mix(in srgb, #16a34a 14%, var(--surface)); border: 1px solid #16a34a; color: var(--ink); }
.rd-alert--err { background: color-mix(in srgb, var(--red) 12%, var(--surface)); border: 1px solid var(--red); color: var(--ink); }
.rd-contact__info { border: 1px solid var(--border); border-radius: var(--radius); padding: clamp(24px, 3vw, 36px); background: var(--surface); }
.rd-contact__list { list-style: none; padding: 0; display: grid; gap: 16px; margin-bottom: 24px; }
.rd-contact__list li { display: grid; gap: 3px; color: var(--ink); }
.rd-contact__list span { font-family: var(--font-display); font-size: 0.74rem; letter-spacing: 0.12em; text-transform: uppercase; color: var(--brand); }
.rd-contact__list a { color: var(--ink-2); }
.rd-contact__brands { display: flex; flex-wrap: wrap; gap: 8px; padding-top: 20px; border-top: 1px solid var(--border); }
.rd-contact__brands a { font-family: var(--font-display); font-size: 0.82rem; color: var(--muted); padding: 6px 12px; border: 1px solid var(--border); border-radius: 999px; transition: color var(--dur) var(--ease), border-color var(--dur) var(--ease); }
.rd-contact__brands a:hover { color: var(--brand); border-color: var(--brand); }
@media (max-width: 820px) { .rd-contact__grid { grid-template-columns: 1fr; } }

/* Contact — details only (no form) */
.rd-contact-methods { display: grid; grid-template-columns: repeat(2, 1fr); gap: clamp(16px, 2.4vw, 24px); max-width: 760px; margin-inline: auto; }
.rd-contact-method {
	display: flex; flex-direction: column; align-items: center; text-align: center; gap: 10px;
	padding: clamp(30px, 4vw, 46px); border: 1px solid var(--border); border-radius: var(--radius);
	background: var(--surface);
	transition: transform var(--dur) var(--ease), border-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease);
}
.rd-contact-method:hover { transform: translateY(-5px); border-color: var(--brand); box-shadow: var(--shadow); }
.rd-contact-method__icon { width: 56px; height: 56px; border-radius: 50%; display: grid; place-items: center; color: var(--brand); background: color-mix(in srgb, var(--brand) 12%, transparent); margin-bottom: 4px; }
.rd-contact-method__label { font-family: var(--font-display); font-size: 0.76rem; letter-spacing: 0.14em; text-transform: uppercase; color: var(--muted); }
.rd-contact-method__value { font-family: var(--font-display); font-weight: 600; font-size: clamp(1.05rem, 2vw, 1.3rem); color: var(--ink); letter-spacing: -0.01em; word-break: break-word; }
.rd-contact-loc { display: flex; align-items: center; justify-content: center; gap: 8px; margin-top: 28px; color: var(--muted); font-family: var(--font-display); }
.rd-contact-loc svg { color: var(--brand); flex: none; }
.rd-contact__brands--center { justify-content: center; margin-top: 28px; border-top: none; padding-top: 0; }
@media (max-width: 560px) { .rd-contact-methods { grid-template-columns: 1fr; } }

/* ---------- Section decorations (parallax) ---------- */
.rd-section > .rd-container { position: relative; z-index: 1; }

.rd-deco { position: absolute; z-index: 0; pointer-events: none; color: var(--brand); will-change: transform; }
.rd-deco svg { width: 100%; height: 100%; display: block; }
.rd-deco--dots { background-image: radial-gradient(currentColor 1.4px, transparent 1.4px); background-size: 26px 26px; opacity: 0.05; }

/* Hero */
.rd-deco--h1 { width: 120px; height: 120px; inset-inline-start: 7%; inset-block-start: 26%; opacity: 0.18; }
.rd-deco--h2 { width: 184px; height: 184px; inset-inline-end: 9%; inset-block-end: 17%; opacity: 0.12; }
.rd-deco--h3 { width: 58px; height: 58px; inset-inline-start: 43%; inset-block-start: 15%; opacity: 0.16; }

/* Stats */
.rd-deco--s1 { inset: 0; }

/* About — rotating dashed orbit around the delta art */
.rd-deco--orbit { position: absolute; inset: -7%; z-index: 0; color: var(--brand); opacity: 0.45; animation: rd-spin 28s linear infinite; }

/* Brands — large faint delta */
.rd-deco--b1 { width: 380px; height: 380px; inset-inline-end: -70px; inset-block-start: 8%; opacity: 0.05; }

/* Services */
.rd-deco--srv { inset: 0; }
.rd-deco--srv-ring { width: 150px; height: 150px; inset-inline-start: 4%; inset-block-end: 9%; opacity: 0.12; }

/* CTA */
.rd-deco--c1 { width: 132px; height: 132px; inset-inline-start: 6%; inset-block-start: 16%; opacity: 0.14; }
.rd-deco--c2 { width: 92px; height: 92px; inset-inline-end: 8%; inset-block-end: 14%; opacity: 0.14; }

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

/* 3D card tilt */
.rd-brand-card[data-rd-tilt] { transform-style: preserve-3d; transition: transform 0.18s var(--ease), border-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease); }

@media (prefers-reduced-motion: reduce) {
	.rd-deco--orbit { animation: none; }
	.rd-deco { transform: none !important; }
}
@media (max-width: 700px) {
	.rd-deco--h2, .rd-deco--b1, .rd-deco--srv-ring, .rd-deco--c1 { display: none; }
}

/* ---------- Reveal animations ---------- */
[data-rd-reveal] { opacity: 0; transform: translateY(26px); }
.rd-revealed [data-rd-reveal], [data-rd-reveal].is-in { opacity: 1; transform: none; transition: opacity 0.7s var(--ease), transform 0.7s var(--ease); }
@media (prefers-reduced-motion: reduce) {
	[data-rd-reveal] { opacity: 1 !important; transform: none !important; }
	.rd-hero__scroll-line { animation: none; }
}

/* ---------- Responsive ---------- */
@media (max-width: 1080px) {
	.rd-header__cta { display: none; }
}
@media (max-width: 900px) {
	.rd-nav { display: none; }
	.rd-burger { display: block; }
	.rd-about-teaser__grid { grid-template-columns: 1fr; }
	.rd-about-teaser__visual { max-width: 380px; }
	.rd-services__grid { grid-template-columns: repeat(2, 1fr); }
	.rd-stats__grid { grid-template-columns: repeat(2, 1fr); gap: 36px; }
	.rd-footer__grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 560px) {
	.rd-brands__grid { grid-template-columns: 1fr; }
	.rd-services__grid { grid-template-columns: 1fr; }
	.rd-footer__grid { grid-template-columns: 1fr; }
	.rd-header__actions .rd-lang { display: none; }
}
