/*
Theme Name: RL Ventures Group
Theme URI: https://rlventuresgroup.local/
Author: RL Ventures Group
Author URI: https://rlventuresgroup.local/
Description: A premium block theme for RL Ventures Group, focused on consulting, automation, web development, and planned local service expansion.
Requires at least: 6.5
Tested up to: 6.8
Requires PHP: 8.1
Version: 1.0.0
Text Domain: rl-ventures-group
*/

:root {
	--rl-navy: #172033;
	--rl-ink: #202838;
	--rl-slate: #556170;
	--rl-muted: #eff3f6;
	--rl-line: #d9e0e7;
	--rl-teal: #0f766e;
	--rl-teal-dark: #0a5f59;
	--rl-gold: #c99a3d;
	--rl-white: #ffffff;
	--rl-radius: 8px;
	--rl-shadow: 0 24px 70px rgba(23, 32, 51, 0.12);
}

html {
	scroll-behavior: smooth;
}

body {
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
}

a {
	text-underline-offset: 0.18em;
}

.rl-site-header {
	backdrop-filter: blur(18px);
	background: rgba(255, 255, 255, 0.92);
	border-bottom: 1px solid rgba(217, 224, 231, 0.9);
	position: sticky;
	top: 0;
	z-index: 20;
}

.rl-header-inner {
	min-height: 76px;
}

.rl-brand-mark {
	align-items: center;
	background: var(--rl-navy);
	border-radius: 8px;
	color: var(--rl-white);
	display: inline-flex;
	font-size: 0.78rem;
	font-weight: 800;
	height: 38px;
	justify-content: center;
	letter-spacing: 0;
	width: 38px;
}

.rl-nav a {
	color: var(--rl-ink);
	font-size: 0.95rem;
	font-weight: 650;
	text-decoration: none;
}

.rl-nav a:hover,
.rl-footer a:hover {
	color: var(--rl-teal);
}

.rl-button .wp-block-button__link,
.wp-block-button.rl-button .wp-block-button__link {
	border-radius: 8px;
	box-shadow: 0 12px 30px rgba(15, 118, 110, 0.2);
	font-size: 0.94rem;
	font-weight: 750;
	letter-spacing: 0;
	padding: 0.86rem 1.18rem;
}

.rl-button-secondary .wp-block-button__link {
	border-radius: 8px;
	font-size: 0.94rem;
	font-weight: 750;
	letter-spacing: 0;
	padding: 0.82rem 1.12rem;
}

.rl-hero {
	background:
		linear-gradient(120deg, rgba(23, 32, 51, 0.035), transparent 34%),
		linear-gradient(180deg, #ffffff 0%, #f7f9fb 100%);
	border-bottom: 1px solid var(--rl-line);
	overflow: hidden;
}

.rl-hero h1 {
	font-size: clamp(2.45rem, 4.8vw, 3.45rem);
	letter-spacing: 0;
	line-height: 1.02;
	max-width: 760px;
}

.rl-hero-copy {
	max-width: 670px;
}

.rl-proof-strip {
	border-top: 1px solid rgba(217, 224, 231, 0.9);
	color: var(--rl-slate);
	font-size: 0.9rem;
	padding-top: 1.4rem;
}

.rl-hero-panel {
	background: var(--rl-white);
	border: 1px solid var(--rl-line);
	border-radius: 8px;
	box-shadow: var(--rl-shadow);
	color: var(--rl-ink);
	margin-left: auto;
	max-width: 520px;
	padding: clamp(1.2rem, 3vw, 1.8rem);
}

.rl-panel-top {
	border-bottom: 1px solid var(--rl-line);
	padding-bottom: 1rem;
}

.rl-status-dot {
	background: var(--rl-teal);
	border-radius: 999px;
	box-shadow: 0 0 0 6px rgba(15, 118, 110, 0.12);
	display: inline-block;
	height: 9px;
	width: 9px;
}

.rl-workflow-row {
	align-items: center;
	border: 1px solid var(--rl-line);
	border-radius: 8px;
	display: grid;
	gap: 0.8rem;
	grid-template-columns: 42px 1fr auto;
	padding: 0.9rem;
}

.rl-workflow-icon,
.rl-service-icon {
	align-items: center;
	background: rgba(15, 118, 110, 0.1);
	border-radius: 8px;
	color: var(--rl-teal);
	display: inline-flex;
	height: 42px;
	justify-content: center;
	width: 42px;
}

.rl-mini-line {
	background: var(--rl-line);
	border-radius: 999px;
	display: block;
	height: 6px;
	margin-top: 0.42rem;
	width: min(100%, 170px);
}

.rl-mini-line.short {
	width: min(72%, 120px);
}

.rl-section {
	padding-bottom: clamp(4rem, 8vw, 7rem);
	padding-top: clamp(4rem, 8vw, 7rem);
}

.rl-section-tight {
	padding-bottom: clamp(3rem, 6vw, 5rem);
	padding-top: clamp(3rem, 6vw, 5rem);
}

.rl-section-title {
	max-width: 760px;
}

.rl-muted-band {
	background: var(--rl-muted);
}

.rl-dark-band {
	background:
		linear-gradient(135deg, rgba(15, 118, 110, 0.22), transparent 38%),
		var(--rl-navy);
	color: var(--rl-white);
}

.rl-card {
	background: var(--rl-white);
	border: 1px solid var(--rl-line);
	border-radius: 8px;
	box-shadow: 0 14px 40px rgba(23, 32, 51, 0.06);
	height: 100%;
	padding: clamp(1.25rem, 3vw, 1.7rem);
}

.rl-card h3 {
	margin-top: 0;
}

.rl-card p {
	color: var(--rl-slate);
}

.rl-card-link {
	color: var(--rl-teal);
	font-weight: 750;
	text-decoration: none;
}

.rl-card-link:hover {
	color: var(--rl-teal-dark);
	text-decoration: underline;
}

.rl-stat {
	border-left: 3px solid var(--rl-gold);
	padding-left: 1rem;
}

.rl-use-case {
	border-top: 1px solid rgba(217, 224, 231, 0.8);
	padding-top: 1.2rem;
}

.rl-use-case strong {
	color: var(--rl-ink);
	display: block;
	margin-bottom: 0.25rem;
}

.rl-contact-panel {
	background: var(--rl-white);
	border: 1px solid rgba(217, 224, 231, 0.7);
	border-radius: 8px;
	box-shadow: var(--rl-shadow);
	color: var(--rl-ink);
	padding: clamp(1.35rem, 3vw, 2rem);
}

.rl-form-grid {
	display: grid;
	gap: 0.85rem;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.rl-form-grid label,
.rl-form-full label {
	color: var(--rl-ink);
	display: grid;
	font-size: 0.86rem;
	font-weight: 750;
	gap: 0.35rem;
}

.rl-form-grid input,
.rl-form-full textarea,
.rl-form-full select {
	background: #f8fafc;
	border: 1px solid var(--rl-line);
	border-radius: 8px;
	color: var(--rl-ink);
	font: inherit;
	font-size: 0.95rem;
	padding: 0.82rem 0.9rem;
	width: 100%;
}

.rl-form-full {
	display: grid;
	gap: 0.85rem;
	margin-top: 0.85rem;
}

.rl-submit-note {
	color: var(--rl-slate);
	font-size: 0.86rem;
	margin-top: 0.8rem;
}

.rl-footer {
	background: #101827;
	color: rgba(255, 255, 255, 0.78);
}

.rl-footer h2,
.rl-footer h3,
.rl-footer strong {
	color: var(--rl-white);
}

.rl-footer a {
	color: rgba(255, 255, 255, 0.82);
	text-decoration: none;
}

.rl-footer-list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.rl-footer-list li + li {
	margin-top: 0.55rem;
}

.rl-page-hero {
	background: linear-gradient(180deg, #ffffff 0%, #f7f9fb 100%);
	border-bottom: 1px solid var(--rl-line);
}

.rl-service-list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.rl-service-list li {
	border-top: 1px solid var(--rl-line);
	padding: 0.9rem 0;
}

.rl-service-list li:first-child {
	border-top: 0;
	padding-top: 0;
}

@media (max-width: 900px) {
	.rl-header-inner {
		gap: 1rem;
		min-height: auto;
		padding-bottom: 1rem;
		padding-top: 1rem;
	}

	.rl-nav {
		justify-content: flex-start !important;
	}

	.rl-hero-panel {
		margin-left: 0;
		max-width: none;
	}
}

@media (max-width: 640px) {
	.rl-nav {
		gap: 0.8rem !important;
	}

	.rl-nav a {
		font-size: 0.88rem;
	}

	.rl-workflow-row,
	.rl-form-grid {
		grid-template-columns: 1fr;
	}

	.rl-workflow-row {
		align-items: start;
	}

	.rl-workflow-icon {
		height: 38px;
		width: 38px;
	}
}
