/* Ardhsight — Desert Light homepage sections (block patterns). */

.ardh {
	--dl-sand: #F6F1E7;
	--dl-sand-deep: #EDE3D1;
	--dl-line: #E0D2B8;
	--dl-line-soft: #EFE6D6;
	--dl-navy: #1F4E79;
	--dl-navy-2: #2A5E8C;
	--dl-ink: #4A5B6C;
	--dl-muted: #5B6B7B;
	--dl-accent: #A34E26;
	--dl-accent-dark: #7E3B1C;
	--dl-tint: #F3E3D8;
	--dl-gold: #D6C79A;
	--dl-serif: 'Fraunces', Georgia, serif;
	--dl-sans: 'Manrope', system-ui, sans-serif;
	--dl-pad: clamp(20px, 5vw, 96px);
	font-family: var(--dl-sans);
	color: var(--dl-navy);
	box-sizing: border-box;
}
.ardh *, .ardh *::before, .ardh *::after { box-sizing: border-box; }

/* ---------- Section frame ---------- */
body .ardh.ardh-section {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
	padding: clamp(64px, 8vw, 112px) var(--dl-pad) 0 !important;
	background: transparent;
}
body .ardh .ardh-inner {
	max-width: 1248px;
	margin-left: auto !important;
	margin-right: auto !important;
	width: 100%;
}
.ardh .wp-block-columns { margin-bottom: 0; }

/* ---------- Type ---------- */
.ardh .ardh-eyebrow {
	font-family: var(--dl-sans) !important;
	font-size: 13px !important;
	font-weight: 700 !important;
	letter-spacing: 0.14em;
	color: var(--dl-accent) !important;
	margin: 0 0 12px !important;
}
.ardh .ardh-h2 {
	font-family: var(--dl-serif) !important;
	font-weight: 500 !important;
	font-size: clamp(32px, 3.4vw, 46px) !important;
	line-height: 1.1 !important;
	letter-spacing: -0.01em !important;
	color: var(--dl-navy) !important;
	margin: 0 !important;
}
.ardh .ardh-lead {
	font-size: 17px !important;
	line-height: 1.6 !important;
	color: var(--dl-ink) !important;
	margin: 16px 0 0 !important;
}
.ardh p { line-height: 1.6; }
.ardh h3 { font-family: var(--dl-sans) !important; font-weight: 700 !important; letter-spacing: 0 !important; }
.ardh a:not(.wp-block-button__link) { color: var(--dl-accent); }

/* ---------- Buttons ---------- */
.ardh .wp-block-buttons { gap: 12px; margin-top: 8px; }
body .ardh .wp-block-button .wp-block-button__link {
	border-radius: 999px !important;
	padding: 15px 28px !important;
	font-family: var(--dl-sans) !important;
	font-weight: 700 !important;
	font-size: 16px !important;
	line-height: 1.2 !important;
	background: var(--dl-accent) !important;
	color: #FFFFFF !important;
	border: 1.5px solid var(--dl-accent) !important;
	text-decoration: none !important;
	display: inline-block !important;
	text-align: center;
}
body .ardh .wp-block-button .wp-block-button__link:hover { background: var(--dl-accent-dark) !important; border-color: var(--dl-accent-dark) !important; }
body .ardh .wp-block-button.ardh-btn-outline .wp-block-button__link {
	background: transparent !important;
	color: var(--dl-navy) !important;
	border-color: var(--dl-navy) !important;
}
body .ardh .wp-block-button.ardh-btn-outline .wp-block-button__link:hover { background: var(--dl-navy) !important; color: #FFFFFF !important; }
body .ardh .wp-block-button.ardh-btn-ghost .wp-block-button__link {
	background: transparent !important;
	color: var(--dl-sand) !important;
	border-color: var(--dl-sand) !important;
}
body .ardh .wp-block-button.ardh-btn-ghost .wp-block-button__link:hover { background: var(--dl-sand) !important; color: var(--dl-navy) !important; }
.ardh .ardh-stack { flex-direction: column; align-items: stretch; }
.ardh .ardh-stack .wp-block-button { width: 100%; }
body .ardh .ardh-stack .wp-block-button .wp-block-button__link { display: block !important; width: 100%; text-align: center; }

/* ---------- Hero ---------- */
body .ardh.ardh-hero { padding-top: 28px !important; }
.ardh .ardh-hero-panel {
	background: var(--dl-navy);
	border-radius: 20px;
	overflow: hidden;
	gap: 0 !important;
	min-height: 600px;
	align-items: stretch !important;
}
.ardh .ardh-hero-text {
	padding: clamp(40px, 5vw, 72px) !important;
	display: flex;
	flex-direction: column;
	justify-content: center;
}
.ardh .ardh-hero-text .ardh-eyebrow { color: var(--dl-gold) !important; }
.ardh .ardh-hero-title {
	font-family: var(--dl-serif) !important;
	font-weight: 500 !important;
	font-size: clamp(38px, 4.4vw, 60px) !important;
	line-height: 1.06 !important;
	letter-spacing: -0.015em !important;
	color: var(--dl-sand) !important;
	margin: 0 0 20px !important;
}
.ardh .ardh-hero-lead {
	font-size: clamp(17px, 1.4vw, 19px) !important;
	line-height: 1.6 !important;
	color: #D5DEE7 !important;
	max-width: 560px;
	margin: 0 0 24px !important;
}
.ardh .ardh-chips {
	list-style: none;
	padding: 0 !important;
	margin: 22px 0 0 !important;
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}
.ardh .ardh-chips li {
	padding: 8px 14px;
	border: 1px solid #4A77A3;
	border-radius: 999px;
	font-size: 14px;
	color: #D5DEE7;
	margin: 0 !important;
}
.ardh .ardh-hero-media { position: relative; min-height: 320px; background: var(--dl-navy-2); }
.ardh .ardh-fill { margin: 0 !important; height: 100%; position: absolute; inset: 0; }
.ardh .ardh-fill img { width: 100% !important; height: 100% !important; object-fit: cover; display: block; }
.ardh .ardh-credit {
	position: absolute;
	right: 14px;
	bottom: 10px;
	margin: 0 !important;
	font-size: 11px !important;
	line-height: 1.3 !important;
	color: rgba(255, 255, 255, 0.85) !important;
	text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);
	max-width: 90%;
	text-align: right;
}

/* ---------- Section headers ---------- */
.ardh .ardh-head-split { gap: 64px !important; margin-bottom: 44px !important; }
.ardh .ardh-head-center { text-align: center; max-width: 680px; margin: 0 auto 44px !important; }
.ardh .ardh-head-center .ardh-eyebrow, .ardh .ardh-head-center .ardh-h2, .ardh .ardh-head-center .ardh-lead { text-align: center !important; }

/* ---------- Cards ---------- */
.ardh .ardh-grid3 { gap: 24px !important; align-items: stretch !important; }
.ardh .ardh-card {
	background: #FFFFFF;
	border: 1px solid #E8DECB;
	border-radius: 16px;
	padding: 36px 32px !important;
	display: flex;
	flex-direction: column;
}
.ardh .ardh-card h3 { font-size: 21px !important; line-height: 1.3 !important; margin: 0 0 12px !important; color: var(--dl-navy) !important; }
.ardh .ardh-card p { font-size: 16px !important; color: var(--dl-ink) !important; margin: 0; }

/* Icons (drawn with CSS so they stay editable-free) */
.ardh .ardh-ico::before {
	content: "";
	display: block;
	width: 52px;
	height: 52px;
	border-radius: 12px;
	background-color: var(--dl-tint);
	background-repeat: no-repeat;
	background-position: center;
	background-size: 26px 26px;
	margin-bottom: 20px;
}
.ardh-why .ardh-ico::before { background-color: var(--dl-sand); }
.ardh .ardh-ico-change::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23A34E26' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='18' height='18' rx='2'/%3E%3Cpath d='M12 3v18'/%3E%3Cpath d='M12 9l3-3M12 15l6-6M12 21l9-9M16 21l5-5'/%3E%3C/svg%3E"); }
.ardh .ardh-ico-trend::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23A34E26' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 20h18'/%3E%3Cpath d='M4 16l5-6 4 3 7-8'/%3E%3C/svg%3E"); }
.ardh .ardh-ico-custom::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23A34E26' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 4 3 6v14l6-2 3.5 1.2'/%3E%3Cpath d='M9 4v14'/%3E%3Cpath d='M9 4l6 2 6-2v7.5'/%3E%3Ccircle cx='17' cy='16' r='3.2'/%3E%3Cpath d='m19.3 18.3 2.2 2.2'/%3E%3C/svg%3E"); }
.ardh .ardh-ico-pin::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23A34E26' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21s-7-6.2-7-11.5a7 7 0 0 1 14 0C19 14.8 12 21 12 21Z'/%3E%3Ccircle cx='12' cy='9.5' r='2.5'/%3E%3C/svg%3E"); }
.ardh .ardh-ico-shield::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23A34E26' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3 4 6v6c0 4.5 3.4 7.8 8 9 4.6-1.2 8-4.5 8-9V6l-8-3Z'/%3E%3Cpath d='m8.5 12 2.5 2.5 4.5-5'/%3E%3C/svg%3E"); }
.ardh .ardh-ico-target::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23A34E26' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='8.5'/%3E%3Ccircle cx='12' cy='12' r='4.5'/%3E%3Ccircle cx='12' cy='12' r='1' fill='%23A34E26'/%3E%3C/svg%3E"); }

/* ---------- How it works ---------- */
.ardh .ardh-gap-xl { gap: clamp(40px, 6vw, 72px) !important; }
.ardh .ardh-steps { margin-top: 28px; counter-reset: ardh-step; border-bottom: 1px solid var(--dl-gold); }
.ardh .ardh-step {
	counter-increment: ardh-step;
	display: grid;
	grid-template-columns: 40px 1fr;
	column-gap: 16px;
	padding: 22px 0;
	border-top: 1px solid var(--dl-gold);
	margin: 0 !important;
}
.ardh .ardh-step::before {
	content: counter(ardh-step);
	grid-row: 1 / span 2;
	font-family: var(--dl-serif);
	font-size: 28px;
	line-height: 1;
	color: var(--dl-accent);
}
.ardh .ardh-step h3 { font-size: 20px !important; margin: 0 0 6px !important; color: var(--dl-navy) !important; }
.ardh .ardh-step p { margin: 0 !important; font-size: 16px !important; color: var(--dl-ink) !important; }
.ardh .ardh-ba { gap: 12px !important; }
.ardh .ardh-ba .wp-block-image { position: relative; margin: 0 !important; border-radius: 14px; overflow: hidden; background: #E6DAC4; aspect-ratio: 3 / 4; }
.ardh .ardh-ba .ardh-ba-after { background: #D9D3B2; }
.ardh .ardh-ba img { width: 100%; height: 100%; object-fit: cover; display: block; }
.ardh .ardh-ba img:not([src]), .ardh .ardh-ba img[src=""] { visibility: hidden; }
.ardh .ardh-ba figcaption {
	position: absolute;
	top: 14px;
	left: 14px;
	margin: 0 !important;
	padding: 6px 12px;
	border-radius: 999px;
	background: var(--dl-gold);
	color: var(--dl-navy) !important;
	font-size: 13px !important;
	font-weight: 700;
}
.ardh .ardh-ba .ardh-ba-after figcaption { background: var(--dl-accent); color: #FFFFFF !important; }
.ardh .ardh-caption { font-size: 14px !important; color: var(--dl-muted) !important; margin: 14px 0 0 !important; }

/* ---------- Services ---------- */
.ardh .ardh-svc > * { margin-top: 0 !important; margin-bottom: 0 !important; }
.ardh .ardh-svc { gap: 0; }
.ardh .ardh-num { font-size: 13px !important; font-weight: 700; letter-spacing: 0.1em; color: #7A8794 !important; margin-bottom: 8px !important; }
.ardh .ardh-svc .ardh-svc-title {
	font-family: var(--dl-serif) !important;
	font-weight: 500 !important;
	font-size: 30px !important;
	margin-bottom: 8px !important;
}
.ardh .ardh-sub { font-size: 16px !important; font-weight: 600; color: var(--dl-accent) !important; }
.ardh .ardh-who {
	margin: 14px 0 22px !important;
	padding: 12px 14px;
	border-radius: 10px;
	background: var(--dl-sand);
	font-size: 15px !important;
	line-height: 1.5 !important;
	color: var(--dl-navy) !important;
}
.ardh .ardh-label { font-size: 12px !important; font-weight: 700; letter-spacing: 0.1em; color: var(--dl-navy) !important; margin: 0 0 10px !important; }
.ardh .ardh-svc ul.wp-block-list:not(.ardh-tags) {
	margin: 0 0 22px !important;
	padding-left: 18px;
	font-size: 15px;
	line-height: 1.7;
	color: var(--dl-ink);
}
.ardh .ardh-svc ul.wp-block-list:not(.ardh-tags) li::marker { color: var(--dl-accent); }
.ardh .ardh-tags { list-style: none; padding: 0 !important; margin: 0 0 22px !important; display: flex; flex-wrap: wrap; gap: 8px; }
.ardh .ardh-tags li {
	margin: 0 !important;
	padding: 6px 12px;
	border-radius: 999px;
	background: var(--dl-tint);
	color: var(--dl-accent-dark);
	font-size: 13px;
	font-weight: 600;
}
.ardh .ardh-ideal {
	padding-top: 16px;
	border-top: 1px solid var(--dl-line-soft);
	font-size: 14px !important;
	color: var(--dl-muted) !important;
	margin-bottom: 24px !important;
}
.ardh .ardh-ideal strong { color: var(--dl-navy); }
.ardh .ardh-svc .wp-block-buttons { margin-top: auto !important; }

.ardh .ardh-svc--featured { background: var(--dl-navy); border-color: var(--dl-navy); }
.ardh .ardh-svc--featured .ardh-svc-title,
.ardh .ardh-svc--featured .ardh-label { color: var(--dl-sand) !important; }
.ardh .ardh-svc--featured .ardh-num { color: #B9C7D4 !important; }
.ardh .ardh-svc--featured .ardh-sub { color: var(--dl-gold) !important; }
.ardh .ardh-svc--featured .ardh-who { background: var(--dl-navy-2); color: var(--dl-sand) !important; }
.ardh .ardh-svc--featured ul.wp-block-list:not(.ardh-tags) { color: #D5DEE7; }
.ardh .ardh-svc--featured .ardh-tags li { background: #2F6090; color: var(--dl-sand); }
.ardh .ardh-svc--featured .ardh-ideal { color: #B9C7D4 !important; border-top-color: #3A6891; }
.ardh .ardh-svc--featured .ardh-ideal strong { color: var(--dl-sand); }
.ardh .ardh-center-note { text-align: center; font-size: 16px !important; color: var(--dl-ink) !important; margin: 28px 0 0 !important; }
.ardh .ardh-center-note a { font-weight: 700; text-decoration: none; }

/* ---------- Why ---------- */
.ardh .ardh-panel-sand {
	background: var(--dl-sand-deep);
	border-radius: 20px;
	padding: clamp(36px, 5vw, 72px) !important;
}
.ardh .ardh-panel-sand .ardh-h2 { max-width: 900px; margin-bottom: 44px !important; }
.ardh-why .ardh-grid3 { gap: 48px !important; }
.ardh-why h3 { font-size: 20px !important; margin: 0 0 10px !important; color: var(--dl-navy) !important; }
.ardh-why p { font-size: 16px !important; line-height: 1.65 !important; color: #3E4F60 !important; }

/* ---------- Platform ---------- */
.ardh .ardh-badge {
	display: inline-block;
	padding: 6px 14px;
	border-radius: 999px;
	background: var(--dl-tint);
	color: var(--dl-accent) !important;
	font-size: 13px !important;
	font-weight: 700;
	letter-spacing: 0.08em;
	margin: 0 0 18px !important;
}
.ardh .ardh-features {
	list-style: none;
	padding: 0 !important;
	margin: 28px 0 32px !important;
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 20px 28px;
}
.ardh .ardh-features li {
	position: relative;
	padding-left: 34px;
	font-size: 15px;
	line-height: 1.5;
	color: var(--dl-ink);
	margin: 0 !important;
}
.ardh .ardh-features li strong { display: block; font-size: 16px; color: var(--dl-navy); }
.ardh .ardh-features li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 2px;
	width: 22px;
	height: 22px;
	background-repeat: no-repeat;
	background-size: 22px 22px;
}
.ardh .ardh-features li:nth-child(1)::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23A34E26' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 4 3 6v14l6-2 6 2 6-2V4l-6 2-6-2Z'/%3E%3Cpath d='M9 4v14M15 6v14'/%3E%3C/svg%3E"); }
.ardh .ardh-features li:nth-child(2)::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23A34E26' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 21h18'/%3E%3Cpath d='M6 18v-4M11 18v-6M16 18v-8'/%3E%3Cpath d='m4 10 5-3 4 2 7-5'/%3E%3C/svg%3E"); }
.ardh .ardh-features li:nth-child(3)::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23A34E26' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 8a6 6 0 1 1 12 0c0 7 3 9 3 9H3s3-2 3-9'/%3E%3Cpath d='M10 21h4'/%3E%3C/svg%3E"); }
.ardh .ardh-features li:nth-child(4)::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23A34E26' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 3H6a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V9Z'/%3E%3Cpath d='M14 3v6h6M12 12v6M9 15l3 3 3-3'/%3E%3C/svg%3E"); }
.ardh .ardh-frame {
	margin: 0 !important;
	padding: 14px;
	background: #FFFFFF;
	border: 1px solid #E8DECB;
	border-radius: 16px;
}
.ardh .ardh-frame img { border-radius: 10px; width: 100%; height: auto; display: block; }

/* ---------- Final call to action ---------- */
body .ardh.ardh-cta { padding-bottom: clamp(64px, 8vw, 112px) !important; }
.ardh .ardh-panel-navy {
	background: var(--dl-navy);
	border-radius: 20px;
	padding: clamp(36px, 5vw, 72px) !important;
	gap: 48px !important;
}
.ardh .ardh-panel-navy .ardh-h2 { color: var(--dl-sand) !important; }
.ardh .ardh-panel-navy .ardh-lead { color: #D5DEE7 !important; }

/* ---------- Footer ---------- */
body .ardh.ardh-footer {
	margin: 0 !important;
	padding: 36px var(--dl-pad) !important;
	background: var(--dl-sand) !important;
	border-top: 1px solid var(--dl-line);
}
.ardh .ardh-footer-row { display: flex; align-items: center; justify-content: space-between; gap: 32px; flex-wrap: wrap; }
.ardh .ardh-footer-logo { margin: 0 !important; }
.ardh .ardh-footer-meta { display: flex; align-items: center; gap: 12px 24px; flex-wrap: wrap; justify-content: flex-end; }
.ardh .ardh-footer-meta p { margin: 0 !important; font-size: 14px !important; color: var(--dl-muted) !important; }
.ardh .ardh-footer-meta p a { color: var(--dl-navy); }
.ardh .ardh-footer-credits { font-size: 13px !important; }
.ardh .ardh-social { margin: 0 !important; }
.ardh .ardh-social .wp-social-link a { color: var(--dl-navy) !important; }
.ardh .ardh-social .wp-social-link svg { width: 26px; height: 26px; }

/* ---------- Tablet & phone ---------- */
@media (max-width: 781px) {
	.ardh .ardh-hero-panel { min-height: 0; }
	.ardh .ardh-hero-media { min-height: 260px; }
	.ardh .ardh-head-split { gap: 16px !important; margin-bottom: 28px !important; }
	.ardh .ardh-features { grid-template-columns: 1fr; }
	.ardh .ardh-card { padding: 28px 22px !important; }
	.ardh .ardh-panel-navy { gap: 24px !important; }
	.ardh .ardh-footer-row, .ardh .ardh-footer-meta { justify-content: flex-start; }
}
