﻿:root {
	--color-cream: #ffffff;
	--color-cream-dark: #f0ebe169;
}

/* Global container */
.har-container {
	max-width: 1400px !important;
	width: 100% !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding-left: 24px !important;
	padding-right: 24px !important;
	box-sizing: border-box !important;
}

.har-site-header {
	overflow: visible;
}

.har-skip-link {
	position: absolute;
	inset-inline-start: 1rem;
	top: -100%;
	z-index: 100;
	padding: 0.75rem 1rem;
	background: #043C36;
	color: #fff;
	border-radius: 0.5rem;
	font-weight: 600;
}

.har-skip-link:focus {
	top: 1rem;
}

.har-site-header {
	position: sticky;
	top: 0;
	z-index: 50;
	background: #FFFFFF;
	border-bottom: 1px solid #E5DFD4;
	transition:
		background-color 280ms ease,
		box-shadow 280ms ease,
		border-color 280ms ease;
}

.har-site-header.is-scrolled {
	box-shadow: 0 4px 16px rgba(26, 31, 30, 0.08);
}

.har-site-header--overlay {
	position: fixed;
	inset-inline: 0;
	top: 0;
	width: 100%;
	background: transparent;
	border-bottom-color: transparent;
	box-shadow: none;
}

body.har-has-hero #main-content {
	padding-top: 0;
}

body.har-has-hero .har-hero {
	margin-top: 0;
}

.har-site-header--overlay.is-scrolled {
	background: #FFFFFF;
	border-bottom-color: #E5DFD4;
	box-shadow: 0 4px 16px rgba(26, 31, 30, 0.08);
}

.har-site-header--overlay:not(.is-scrolled) .har-brand-fallback,
.har-site-header--overlay:not(.is-scrolled) .har-lang-switch,
.har-site-header--overlay:not(.is-scrolled) .har-nav-toggle,
.har-site-header--overlay:not(.is-scrolled) .har-nav-submenu-toggle {
	color: #FCFBF9;
}

.har-site-header--overlay:not(.is-scrolled) .har-lang-switch:hover {
	color: #FFFFFF;
}

.har-site-header--overlay:not(.is-scrolled) .har-nav-toggle {
	border-color: color-mix(in srgb, #FCFBF9 40%, transparent);
	background: color-mix(in srgb, #FCFBF9 8%, transparent);
}

.har-site-header--overlay.is-nav-open:not(.is-scrolled) .har-nav-toggle,
.har-site-header--overlay.is-nav-open .har-nav-toggle {
	color: #353535;
	border-color: #E5DFD4;
	background: #fff;
}

.har-site-header--overlay:not(.is-scrolled) .custom-logo,
.har-site-header--overlay:not(.is-scrolled) .custom-logo-link img {
	filter: brightness(0) invert(1);
	transition: filter 280ms ease;
}

@media (min-width: 1024px) {
	.har-site-header--overlay:not(.is-scrolled) .har-nav-link {
		color: #FCFBF9;
	}

	.har-site-header--overlay:not(.is-scrolled) .har-nav-link:hover,
	.har-site-header--overlay:not(.is-scrolled) .har-nav-link.is-current,
	.har-site-header--overlay:not(.is-scrolled) .har-nav-link[aria-current="page"] {
		color: #FFFFFF;
		background: color-mix(in srgb, #FCFBF9 12%, transparent);
	}

	.har-site-header--overlay:not(.is-scrolled) .har-submenu .har-nav-link,
	.har-site-header--overlay:not(.is-scrolled) .har-submenu .har-nav-link:hover,
	.har-site-header--overlay:not(.is-scrolled) .har-submenu .har-nav-link.is-current {
		color: #353535;
		background: transparent;
	}

	.har-site-header--overlay:not(.is-scrolled) .har-submenu .har-nav-link:hover {
		background: #FCFBF9;
	}
}

.har-site-header .har-header-inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	min-height: 4.5rem;
	gap: 1rem;
	position: relative;
}

.har-site-header.is-nav-open {
	z-index: 80;
}

.har-nav-toggle {
	position: relative;
	z-index: 60;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.75rem;
	height: 2.75rem;
	padding: 0;
	border: 1px solid #E5DFD4;
	border-radius: 12px;
	background: #fff;
	color: #353535;
	cursor: pointer;
	transition:
		border-color 280ms ease,
		background-color 280ms ease,
		color 280ms ease,
		box-shadow 280ms ease,
		opacity 200ms ease;
}

.har-nav-toggle:hover,
.har-nav-toggle:focus-visible {
	border-color: #A79570;
	outline: none;
}

.har-nav-toggle:focus-visible {
	box-shadow: 0 0 0 3px color-mix(in srgb, #A79570 35%, transparent);
}

/* Header hamburger stays for opening; close lives inside the drawer. */
.har-site-header.is-nav-open .har-nav-toggle {
	opacity: 0;
	pointer-events: none;
}

.har-nav-toggle__box {
	position: relative;
	display: block;
	width: 1.15rem;
	height: 0.85rem;
}

.har-nav-toggle__bar {
	position: absolute;
	inset-inline: 0;
	height: 1.75px;
	border-radius: 999px;
	background: currentColor;
	transition:
		transform 320ms cubic-bezier(0.22, 1, 0.36, 1),
		opacity 220ms ease,
		top 320ms cubic-bezier(0.22, 1, 0.36, 1);
}

.har-nav-toggle__bar:nth-child(1) {
	top: 0;
}

.har-nav-toggle__bar:nth-child(2) {
	top: 50%;
	transform: translateY(-50%);
}

.har-nav-toggle__bar:nth-child(3) {
	top: 100%;
	transform: translateY(-100%);
}

.har-nav-close {
	position: absolute;
	top: calc(0.85rem + env(safe-area-inset-top, 0px));
	right: 1rem;
	z-index: 2;
	display: none;
	align-items: center;
	justify-content: center;
	width: 2.75rem;
	height: 2.75rem;
	margin: 0;
	padding: 0;
	border: 1px solid #E5DFD4;
	border-radius: 12px;
	background: #FCFBF9;
	color: #353535;
	cursor: pointer;
	transition:
		border-color 200ms ease,
		background-color 200ms ease,
		color 200ms ease,
		box-shadow 200ms ease;
}

html[dir="rtl"] .har-nav-close {
	right: auto;
	left: 1rem;
}

.har-primary-nav.is-open .har-nav-close {
	display: inline-flex;
}

.har-nav-close:hover,
.har-nav-close:focus-visible {
	border-color: #A79570;
	background: #fff;
	color: #043C36;
	outline: none;
}

.har-nav-close:focus-visible {
	box-shadow: 0 0 0 3px color-mix(in srgb, #A79570 35%, transparent);
}

.har-nav-close__icon {
	display: block;
	width: 1.15rem;
	height: 1.15rem;
	line-height: 0;
}

.har-nav-close__icon svg {
	display: block;
	width: 100%;
	height: 100%;
}

.har-nav-backdrop {
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 70;
	background: rgba(4, 60, 54, 0.42);
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition:
		opacity 320ms ease,
		visibility 320ms ease;
}

body.har-nav-open .har-nav-backdrop,
.har-nav-backdrop.is-visible {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
}

.har-nav-anchor {
	display: contents;
}

.har-primary-nav {
	/* Physical edges for Safari — logical inset-inline is unreliable in older iOS. */
	position: fixed;
	top: 0;
	right: 0;
	bottom: auto;
	left: auto;
	z-index: 75;
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: 1.5rem;
	box-sizing: border-box;
	width: 22.5rem;
	max-width: 100%;
	/* Explicit viewport height — avoids Safari shrinking the drawer to the header. */
	height: 100%;
	height: 100vh;
	height: 100dvh;
	max-height: 100%;
	max-height: 100vh;
	max-height: 100dvh;
	margin: 0;
	padding: 1.35rem;
	padding-top: calc(4.75rem + env(safe-area-inset-top, 0px));
	padding-bottom: calc(2rem + env(safe-area-inset-bottom, 0px));
	background: #FFFFFF;
	box-shadow: -12px 0 40px rgba(26, 31, 30, 0.12);
	text-align: start;
	-webkit-transform: translate3d(105%, 0, 0);
	transform: translate3d(105%, 0, 0);
	opacity: 0.96;
	visibility: hidden;
	pointer-events: none;
	overflow-x: hidden;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
	overscroll-behavior: contain;
	transition:
		transform 360ms cubic-bezier(0.22, 1, 0.36, 1),
		visibility 360ms ease,
		opacity 280ms ease;
}

/* RTL: drawer from the left (toggle side). */
html[dir="rtl"] .har-primary-nav {
	right: auto;
	left: 0;
}

html[dir="rtl"] .har-primary-nav:not(.is-open) {
	-webkit-transform: translate3d(-105%, 0, 0);
	transform: translate3d(-105%, 0, 0);
}

/* Ensure LTR desktop nav stays readable when header is over light pages. */
html[dir="ltr"] .har-site-header:not(.har-site-header--overlay) .har-nav-link,
html[dir="rtl"] .har-site-header:not(.har-site-header--overlay) .har-nav-link {
	color: #353535;
}

html[dir="ltr"] .har-site-header:not(.har-site-header--overlay) .har-nav-link.is-current,
html[dir="rtl"] .har-site-header:not(.har-site-header--overlay) .har-nav-link.is-current {
	color: #043C36;
}

.har-primary-nav.is-open,
html[dir="rtl"] .har-primary-nav.is-open {
	-webkit-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
	z-index: 999;
}

body.har-nav-open {
	overflow: hidden;
	touch-action: none;
}

@media (min-width: 1024px) {

	.har-nav-toggle,
	.har-nav-close,
	.har-nav-backdrop {
		display: none !important;
	}

	.har-primary-nav {
		position: static;
		top: auto;
		right: auto;
		bottom: auto;
		left: auto;
		inset: auto;
		z-index: auto;
		flex-direction: row;
		align-items: center;
		gap: 2rem;
		width: auto;
		height: auto;
		max-height: none;
		margin: 0;
		padding: 0;
		background: transparent;
		box-shadow: none;
		-webkit-transform: none !important;
		transform: none !important;
		opacity: 1 !important;
		visibility: visible !important;
		pointer-events: auto !important;
		overflow: visible;
		transition: none;
	}

	body.har-nav-open {
		overflow: visible;
		touch-action: auto;
	}

	.har-site-header.is-nav-open {
		z-index: 50;
	}
}

@media (prefers-reduced-motion: reduce) {

	.har-primary-nav,
	.har-nav-backdrop,
	.har-nav-toggle__bar {
		transition: none !important;
	}
}

.har-lang-switch {
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: #353535;
	text-decoration: none;
}

.har-lang-switch:hover {
	color: #043C36;
}

.har-logo {
	display: inline-flex;
	align-items: center;
	flex-shrink: 0;
	line-height: 0;
	max-width: 180px;
}

.har-logo .custom-logo-link {
	display: inline-flex;
	align-items: center;
	line-height: 0;
	max-width: 100%;
}

.har-logo .custom-logo,
.har-logo img,
.har-site-header .custom-logo,
.har-site-header .custom-logo-link img {
	display: block;
	width: auto;
	max-width: 220px;
	height: 114px;
	max-height: 80px;
	object-fit: contain;
}

.har-site-header nav[role="navigation"] {
	align-items: center;
}

/* â”€â”€â”€ Primary nav: multi-level dropdowns â”€â”€â”€ */
.har-primary-menu {
	position: relative;
}

.har-nav-item__row {
	display: flex;
	align-items: center;
	gap: 0.15rem;
	min-width: 0;
	width: 100%;
}

.har-nav-item__row .har-nav-link {
	flex: 1 1 auto;
	min-width: 0;
}

.har-nav-submenu-toggle {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	width: 2rem;
	height: 2rem;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 999px;
	background: transparent;
	color: #6b7280;
	cursor: pointer;
	transition:
		background-color 200ms ease,
		color 200ms ease,
		transform 200ms ease;
}

.har-nav-submenu-toggle:hover,
.har-nav-submenu-toggle:focus-visible {
	background: color-mix(in srgb, #818047 10%, transparent);
	color: #818047;
	outline: none;
}

.har-nav-submenu-toggle:focus-visible {
	box-shadow: 0 0 0 2px color-mix(in srgb, #818047 35%, transparent);
}

.har-nav-chevron {
	display: block;
	transition: transform 250ms ease;
	transform-origin: center;
}

.har-has-children.is-open>.har-nav-item__row .har-nav-chevron,
.har-has-children[aria-expanded="true"]>.har-nav-item__row .har-nav-chevron {
	transform: rotate(180deg);
}

/* Mobile / drawer: accordion submenus */
.har-submenu {
	list-style: none;
	margin: 0;
	padding: 0;
	max-height: 0;
	overflow: hidden;
	opacity: 0;
	visibility: hidden;
	transition:
		max-height 320ms ease,
		opacity 220ms ease,
		visibility 220ms ease,
		padding 220ms ease;
}

.har-has-children.is-open>.har-submenu {
	max-height: 80vh;
	opacity: 1;
	visibility: visible;
	padding: 0.35rem 0 0.5rem;
	overflow: visible;
}

.har-submenu .har-primary-menu__item {
	margin: 0;
}

.har-submenu .har-nav-link--sub {
	padding-inline-start: 1.15rem;
}

.har-submenu .har-submenu .har-nav-link--sub {
	padding-inline-start: 1.75rem;
}

.har-submenu .har-submenu .har-submenu .har-nav-link--sub {
	padding-inline-start: 2.35rem;
}

.har-site-header nav[role="navigation"] {
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
}

/* Mobile drawer: center menu item labels */
@media (max-width: 1023px) {
	.har-primary-menu {
		width: 100%;
		align-items: stretch;
	}

	.har-header-actions {
		margin-top: 0.5rem;
		padding-top: 1rem;
		border-top: 1px solid #E5DFD4;
		align-items: center;
	}

	.har-header-actions .har-lang-switch {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		min-height: 2.75rem;
		padding: 0.55rem 1.15rem;
		border: 1px solid #E5DFD4;
		border-radius: 999px;
		background: #FCFBF9;
	}

	.har-primary-menu>.har-primary-menu__item>.har-nav-link,
	.har-primary-menu>.har-primary-menu__item>.har-nav-item__row>.har-nav-link {
		text-align: center;
		justify-content: center;
	}

	.har-nav-item__row {
		position: relative;
		justify-content: center;
	}

	.har-nav-item__row .har-nav-link {
		flex: 1 1 auto;
		text-align: center;
		padding-inline: 2.75rem;
	}

	.har-nav-submenu-toggle {
		position: absolute;
		inset-inline-end: 0.15rem;
		top: 50%;
		transform: translateY(-50%);
		z-index: 1;
	}

	.har-has-children.is-open>.har-nav-item__row .har-nav-submenu-toggle .har-nav-chevron,
	.har-has-children.is-open>.har-nav-item__row .har-nav-chevron {
		transform: rotate(180deg);
	}

	.har-submenu .har-nav-link,
	.har-submenu .har-nav-link--sub {
		text-align: center;
		padding-inline: 2.5rem 2.5rem;
	}

	.har-submenu .har-nav-item__row .har-nav-link--sub {
		padding-inline: 2.75rem;
	}

	.har-submenu .har-submenu .har-nav-link--sub,
	.har-submenu .har-submenu .har-submenu .har-nav-link--sub {
		padding-inline: 2.75rem;
	}
}

@media (min-width: 1024px) {
	.har-site-header nav[role="navigation"] {
		overflow: visible;
	}

	.har-primary-menu>.har-has-children {
		position: relative;
	}

	.har-nav-item__row {
		width: auto;
	}

	.har-nav-submenu-toggle {
		width: 1.65rem;
		height: 1.65rem;
		margin-inline-start: -0.15rem;
	}

	/* Top-level dropdown panel */
	.har-primary-menu>.har-has-children>.har-submenu {
		position: absolute;
		top: calc(100% + 0.55rem);
		inset-inline-start: 0;
		z-index: 60;
		min-width: 240px;
		max-width: min(320px, calc(100vw - 2rem));
		max-height: none;
		padding: 0.55rem;
		border-radius: 18px;
		background: #ffffff;
		border: 1px solid color-mix(in srgb, #E7E2D6 85%, transparent);
		box-shadow:
			0 18px 40px rgba(31, 31, 31, 0.08),
			0 4px 12px rgba(31, 31, 31, 0.04);
		opacity: 0;
		visibility: hidden;
		pointer-events: none;
		transform: translate3d(0, 10px, 0);
		transition:
			opacity 220ms ease,
			transform 220ms ease,
			visibility 220ms ease;
		overflow: visible;
	}

	/* Hover bridge so the pointer can travel into the panel */
	.har-primary-menu>.har-has-children>.har-submenu::before {
		content: "";
		position: absolute;
		inset-inline: 0;
		bottom: 100%;
		height: 0.7rem;
	}

	.har-primary-menu>.har-has-children:hover>.har-submenu,
	.har-primary-menu>.har-has-children.is-open>.har-submenu,
	.har-primary-menu>.har-has-children:focus-within>.har-submenu {
		opacity: 1;
		visibility: visible;
		pointer-events: auto;
		transform: translate3d(0, 0, 0);
		padding: 0.55rem;
	}

	.har-primary-menu>.har-has-children:hover>.har-nav-item__row .har-nav-chevron,
	.har-primary-menu>.har-has-children.is-open>.har-nav-item__row .har-nav-chevron,
	.har-primary-menu>.har-has-children:focus-within>.har-nav-item__row .har-nav-chevron {
		transform: rotate(180deg);
		color: #818047;
	}

	/* Nested flyouts (2nd / 3rd level) */
	.har-submenu .har-has-children {
		position: relative;
	}

	.har-submenu .har-submenu {
		position: absolute;
		top: -0.35rem;
		inset-inline-start: calc(100% + 0.4rem);
		z-index: 61;
		min-width: 240px;
		max-width: min(300px, calc(100vw - 2rem));
		max-height: none;
		padding: 0.55rem;
		border-radius: 18px;
		background: #ffffff;
		border: 1px solid color-mix(in srgb, #E7E2D6 85%, transparent);
		box-shadow:
			0 18px 40px rgba(31, 31, 31, 0.08),
			0 4px 12px rgba(31, 31, 31, 0.04);
		opacity: 0;
		visibility: hidden;
		pointer-events: none;
		transform: translate3d(8px, 0, 0);
		transition:
			opacity 220ms ease,
			transform 220ms ease,
			visibility 220ms ease;
		overflow: visible;
	}

	[dir="rtl"] .har-submenu .har-submenu {
		transform: translate3d(-8px, 0, 0);
	}

	.har-submenu .har-has-children:hover>.har-submenu,
	.har-submenu .har-has-children.is-open>.har-submenu,
	.har-submenu .har-has-children:focus-within>.har-submenu {
		opacity: 1;
		visibility: visible;
		pointer-events: auto;
		transform: translate3d(0, 0, 0);
	}

	.har-submenu .har-has-children:hover>.har-nav-item__row .har-nav-chevron,
	.har-submenu .har-has-children.is-open>.har-nav-item__row .har-nav-chevron,
	.har-submenu .har-has-children:focus-within>.har-nav-item__row .har-nav-chevron {
		transform: rotate(-90deg);
	}

	[dir="rtl"] .har-submenu .har-has-children:hover>.har-nav-item__row .har-nav-chevron,
	[dir="rtl"] .har-submenu .har-has-children.is-open>.har-nav-item__row .har-nav-chevron,
	[dir="rtl"] .har-submenu .har-has-children:focus-within>.har-nav-item__row .har-nav-chevron {
		transform: rotate(90deg);
	}

	/* Viewport-aware flips (applied by JS) */
	.har-submenu.har-submenu--flip-x {
		inset-inline-start: auto;
		inset-inline-end: calc(100% + 0.4rem);
	}

	.har-primary-menu>.har-has-children>.har-submenu.har-submenu--flip-x {
		inset-inline-start: auto;
		inset-inline-end: 0;
	}

	.har-submenu.har-submenu--flip-y {
		top: auto;
		bottom: -0.35rem;
	}

	.har-submenu .har-nav-link--sub {
		padding-inline-start: 0.9rem;
		white-space: normal;
		overflow-wrap: anywhere;
		word-break: break-word;
	}

	.har-submenu .har-submenu .har-nav-link--sub,
	.har-submenu .har-submenu .har-submenu .har-nav-link--sub {
		padding-inline-start: 0.9rem;
	}

	.har-submenu .har-nav-item__row .har-nav-link--sub {
		flex: 1 1 auto;
	}

	.har-submenu .har-nav-link--sub:hover,
	.har-submenu .har-nav-link--sub:focus-visible {
		background: color-mix(in srgb, #818047 8%, #F7F4EC);
		color: #818047;
	}

	.har-submenu .har-nav-link--sub.is-current,
	.har-submenu .har-nav-link--sub[aria-current="page"] {
		background: color-mix(in srgb, #818047 12%, transparent);
		color: #818047;
	}
}

@media (prefers-reduced-motion: reduce) {

	.har-submenu,
	.har-nav-chevron,
	.har-nav-submenu-toggle {
		transition: none !important;
	}
}


/* Programs: 2-column grid + badge above title */
.har-programs__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.75rem;
	align-items: stretch;
}

@media (min-width: 768px) {
	.har-programs__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 2rem;
	}
}

@media (min-width: 1100px) {
	.har-programs__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 2rem;
	}
}

.har-program-card__media {
	aspect-ratio: 16 / 10;
	margin: 1rem 1rem 0;
}

.har-program-card__badge {
	position: static;
	inset: auto;
	align-self: flex-start;
	margin: 0 0 0.85rem;
	padding: 0.45rem 0.9rem;
	border: 0;
	background: rgba(129, 128, 71, 0.1);
	backdrop-filter: none;
	-webkit-backdrop-filter: none;
	box-shadow: none;
	font-size: 0.6875rem;
	letter-spacing: 0.16em;
	color: #818047;
}

.har-program-card--gold .har-program-card__badge {
	color: #b98e1c;
	background: rgba(214, 167, 37, 0.14);
}

.har-program-card__body {
	padding: 1.75rem 1.75rem 1.85rem;
}

.har-program-card__title {
	margin: 0 0 0.9rem;
	font-size: clamp(1.35rem, 2vw, 1.65rem);
	letter-spacing: -0.025em;
}

.har-program-card__desc {
	margin: 0 0 1.4rem;
	font-size: 1rem;
	line-height: 1.8;
}

.har-program-card__features {
	gap: 0.8rem;
	margin: 0 0 1.75rem;
}

.har-program-card__features li {
	gap: 0.75rem;
	font-size: 0.9375rem;
	line-height: 1.5;
}

.har-program-card__cta {
	padding: 1rem 1.35rem;
	font-size: 0.875rem;
}

.har-hero {
	--har-hero-gold: #d6a725;
	--har-hero-gold-soft: #f2d36a;
	--har-hero-olive: #818047;
	--har-hero-ink: #000000;
	position: relative;
	isolation: isolate;
	overflow: hidden;
	display: flex;
	align-items: center;
	min-height: 100vh;
	margin-top: -5.25rem;
	padding-block: clamp(6.75rem, 9vw, 8.75rem) clamp(3.5rem, 5.5vw, 5rem);
	color: #ffffff;
	background: #000000;
}

body.har-has-hero .har-hero {
	margin-top: 0;
}

.har-hero__bg {
	position: absolute;
	inset: 0;
	z-index: 0;
	pointer-events: none;
	overflow: hidden;
}

.har-hero__bg-photo {
	position: absolute;
	inset: 0;
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
	opacity: 1;
	transform: scale(1);
}

@media (prefers-reduced-motion: no-preference) {

	html.har-motion-on .har-hero__bg-photo,
	html.har-motion-pending .har-hero__bg-photo {
		animation: har-hero-bg-settle var(--har-motion-slow, 700ms) var(--har-ease-out, cubic-bezier(0.22, 1, 0.36, 1)) both;
	}
}

@keyframes har-hero-bg-settle {
	from {
		opacity: 0.55;
		transform: scale(1.04);
	}

	to {
		opacity: 1;
		transform: scale(1);
	}
}

.har-hero__gradient {
	position: absolute;
	inset: 0;
	background: linear-gradient(88deg, #000000bd, transparent);
}

.har-hero__pattern {
	position: absolute;
	inset: 0;
	opacity: 0.05;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='90' height='90' viewBox='0 0 90 90'%3E%3Cg fill='none' stroke='%23d6a725' stroke-width='1'%3E%3Cpath d='M45 6L84 45 45 84 6 45Z'/%3E%3Cpath d='M45 22L68 45 45 68 22 45Z'/%3E%3Ccircle cx='45' cy='45' r='5'/%3E%3C/g%3E%3C/svg%3E");
	background-size: 90px 90px;
	mask-image: radial-gradient(ellipse 80% 70% at 60% 40%, #000 15%, transparent 72%);
	-webkit-mask-image: radial-gradient(ellipse 80% 70% at 60% 40%, #000 15%, transparent 72%);
}

.har-hero__glow {
	position: absolute;
	border-radius: 999px;
	filter: blur(70px);
	animation: har-cta-glow 11s ease-in-out infinite alternate;
}

.har-hero__glow--1 {
	top: -12%;
	inset-inline-end: -8%;
	width: min(50vw, 520px);
	height: min(50vw, 520px);
	background: rgba(214, 167, 37, 0.26);
}

.har-hero__glow--2 {
	bottom: -18%;
	inset-inline-start: -10%;
	width: min(55vw, 560px);
	height: min(55vw, 560px);
	animation-delay: -4s;
}

.har-hero__glow--3 {
	top: 35%;
	inset-inline-start: 38%;
	width: 200px;
	height: 200px;
	background: rgba(242, 211, 106, 0.1);
	filter: blur(48px);
	animation-delay: -7s;
}

/*
 * Quarantined ambient art — unused by current hero/CTA markup (Quiet Architecture).
 * Selectors kept so a future markup restore works; animations stay off until wired.
 */
.har-hero__particles,
.har-banner-cta__particles,
.har-banner-cta__orbit,
.har-banner-cta__book,
.har-banner-cta__blob,
.har-banner-cta__float {
	animation: none !important;
}

.har-hero__particles span {
	position: absolute;
	width: 3px;
	height: 3px;
	border-radius: 999px;
	background: rgba(242, 211, 106, 0.75);
	box-shadow: 0 0 12px rgba(214, 167, 37, 0.55);
	animation: none;
}

.har-hero__particles span:nth-child(1) {
	top: 16%;
	inset-inline-start: 10%;
}

.har-hero__particles span:nth-child(2) {
	top: 28%;
	inset-inline-end: 22%;
	width: 4px;
	height: 4px;
	animation-delay: -1.2s;
}

.har-hero__particles span:nth-child(3) {
	top: 58%;
	inset-inline-start: 18%;
	animation-delay: -2.8s;
}

.har-hero__particles span:nth-child(4) {
	top: 20%;
	inset-inline-end: 42%;
	animation-delay: -4s;
}

.har-hero__particles span:nth-child(5) {
	bottom: 24%;
	inset-inline-end: 14%;
	width: 2px;
	height: 2px;
	animation-delay: -3.4s;
}

.har-hero__particles span:nth-child(6) {
	bottom: 32%;
	inset-inline-start: 44%;
	animation-delay: -5.5s;
}

.har-hero__particles span:nth-child(7) {
	top: 42%;
	inset-inline-start: 6%;
	animation-delay: -6.2s;
}

.har-hero__particles span:nth-child(8) {
	top: 72%;
	inset-inline-end: 32%;
	animation-delay: -1.8s;
}

.har-hero__lines span {
	position: absolute;
	height: 1px;
	background: linear-gradient(90deg, transparent, rgba(214, 167, 37, 0.28), transparent);
	opacity: 0.45;
	transform-origin: center;
}

.har-hero__lines span:nth-child(1) {
	width: 42%;
	top: 22%;
	inset-inline-end: -4%;
	transform: rotate(-18deg);
}

.har-hero__lines span:nth-child(2) {
	width: 28%;
	bottom: 30%;
	inset-inline-start: 8%;
	transform: rotate(12deg);
}

.har-hero__lines span:nth-child(3) {
	width: 18%;
	top: 48%;
	inset-inline-end: 36%;
	transform: rotate(-8deg);
	opacity: 0.3;
}

.har-hero__inner {
	position: relative;
	z-index: 1;
	width: 100%;
}

.har-hero__content {
	display: flex;
	flex-direction: column;
	align-items: center;
	width: 100%;
	min-width: 0;
}

.har-hero__label {
	display: inline-flex;
	align-items: center;
	gap: 0.55rem;
	margin: 0 0 1.35rem;
	padding: 0.45rem 1rem;
	border: 1px solid rgba(255, 255, 255, 0.14);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.06);
	backdrop-filter: blur(14px);
	-webkit-backdrop-filter: blur(14px);
	font-family: var(--font-ui, Manrope, system-ui, sans-serif);
	font-size: 0.6875rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: #f0ebe1;
}

.har-hero__label-dot {
	width: 0.4rem;
	height: 0.4rem;
	border-radius: 999px;
	background: #ffffff;
	box-shadow: 0 0 12px rgb(243 243 243 / 85%);
}

html[dir="rtl"] .har-split-heading,
html[dir="rtl"] .har-split-heading__line,
html[dir="rtl"] .har-hero__title .har-split-heading__line--primary,
html[dir="rtl"] .har-hero__title .har-split-heading__line--accent,
html[dir="rtl"] .har-banner-cta__title .har-split-heading__line--primary,
html[dir="rtl"] .har-banner-cta__title .har-split-heading__line--accent {
	letter-spacing: 0;
}

.har-hero__title.har-split-heading {
	gap: 16px;
	width: 100%;
}

.har-hero__title .har-split-heading__line--primary {
	font-size: clamp(2.4rem, 5.6vw, 4.1rem);
	font-weight: 800;
	letter-spacing: 0;
	line-height: 1.2;
	color: #ffffff;
	text-align: center;
}

.har-hero__title .har-split-heading__line--accent {
	font-size: clamp(1.55rem, 3.6vw, 2.65rem);
	font-weight: 700;
	letter-spacing: 0;
	text-align: center;
	line-height: 1.3;
	color: #C4B596;
	-webkit-text-fill-color: #C4B596;
	background: none;
}

.har-hero__desc {
	margin-top: 1.5rem;
	width: 100%;
	max-width: 100%;
}

.har-hero__desc,
.har-hero__desc p,
.har-hero-desc,
.har-hero-desc p {
	margin: 0;
	font-family: var(--font-body, Manrope, system-ui, sans-serif);
	font-size: clamp(1rem, 1.35vw, 1.125rem);
	line-height: 1.85;
	color: rgba(255, 255, 255, 0.78);
	text-align: start;
}

.har-hero__desc p+p,
.har-hero-desc p+p {
	margin-top: 0.8rem;
}

.har-hero-desc.har-rich strong,
.har-hero-desc.har-rich b,
.har-hero__desc.har-rich strong,
.har-hero__desc.har-rich b {
	color: #ffffff;
	font-weight: 700;
}

.har-hero__actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-start;
	gap: 0.95rem;
	margin-top: 2.15rem;
}

.har-hero__btn-primary {
	min-height: 3.25rem;
	padding-inline: 1.95rem;
	box-shadow: 0 14px 36px rgba(214, 167, 37, 0.34);
}

.har-hero__btn-primary:hover {
	box-shadow: 0 18px 42px rgba(214, 167, 37, 0.42);
}

.har-hero__btn-secondary {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.5rem;
	min-height: 3.25rem;
	padding: 0.9rem 1.75rem;
	border: 1px solid rgba(255, 255, 255, 0.22);
	border-radius: 14px;
	background: rgba(255, 255, 255, 0.06);
	backdrop-filter: blur(14px);
	-webkit-backdrop-filter: blur(14px);
	color: #ffffff;
	font-family: var(--font-ui, Manrope, system-ui, sans-serif);
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.02em;
	text-decoration: none;
	transition: background 300ms ease, border-color 300ms ease, transform 300ms ease, box-shadow 300ms ease;
}

.har-hero__btn-secondary:hover {
	background: rgba(255, 255, 255, 0.14);
	border-color: rgba(242, 211, 106, 0.45);
	color: #ffffff;
	transform: translateY(-2px);
	box-shadow: 0 14px 30px rgba(0, 0, 0, 0.28);
}

.har-hero__stats {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.85rem;
	width: 100%;
	margin-top: clamp(2.35rem, 4vw, 3.15rem);
}

@media (min-width: 720px) {
	.har-hero__stats {
		grid-template-columns: repeat(4, minmax(0, 1fr));
		gap: 0.9rem;
	}
}

.har-hero__stat {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 0.35rem;
	padding: 1.15rem 1.2rem;
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: 1.15rem;
	background: rgba(255, 255, 255, 0.06);
	backdrop-filter: blur(16px);
	-webkit-backdrop-filter: blur(16px);
	box-shadow: 0 14px 36px rgba(0, 0, 0, 0.2);
	transition: transform 300ms ease, background 300ms ease, border-color 300ms ease, box-shadow 300ms ease;
}

.har-hero__stat:hover {
	transform: translateY(-4px);
	background: rgba(255, 255, 255, 0.1);
	border-color: rgba(214, 167, 37, 0.28);
	box-shadow: 0 18px 40px rgba(0, 0, 0, 0.28);
}

.har-hero__stat-number {
	font-family: var(--font-heading, Manrope, system-ui, sans-serif);
	font-size: clamp(1.45rem, 2.2vw, 1.9rem);
	font-weight: 800;
	letter-spacing: -0.03em;
	line-height: 1.1;
	color: #ffffff;
}

.har-hero__stat-label {
	font-family: var(--font-ui, Manrope, system-ui, sans-serif);
	font-size: 0.6875rem;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: rgba(242, 211, 106, 0.88);
}

@keyframes har-hero-particle {

	0%,
	100% {
		opacity: 0.25;
		transform: translateY(0);
	}

	50% {
		opacity: 0.9;
		transform: translateY(-12px);
	}
}

@media (max-width: 767px) {
	.har-hero__content {
		max-width: 100%;
		align-items: center;
		text-align: center;
	}

	.har-hero__desc,
	.har-hero__desc p,
	.har-hero-desc,
	.har-hero-desc p {
		text-align: center;
	}

	.har-hero__actions {
		justify-content: center;
	}

	.har-hero__stat {
		align-items: center;
		text-align: center;
	}
}

@media (max-width: 640px) {
	.har-hero {
		padding-block: 5.75rem 3.25rem;
	}

	.har-hero__actions {
		flex-direction: column;
		align-items: stretch;
		width: 100%;
	}

	.har-hero__btn-primary,
	.har-hero__btn-secondary {
		width: 100%;
	}
}

@media (prefers-reduced-motion: reduce) {

	.har-hero__glow,
	.har-hero__particles span,
	.har-hero__label-dot,
	.har-hero__title .har-split-heading__line--accent,
	.har-hero__bg-photo {
		animation: none !important;
	}

	.har-hero__btn-secondary:hover,
	.har-hero__stat:hover {
		transform: none;
	}
}

.har-btn-gold {
	font-weight: 900;
	transition:
		transform var(--har-motion-fast, 180ms) var(--har-ease-out, cubic-bezier(0.22, 1, 0.36, 1)),
		box-shadow var(--har-motion-fast, 180ms) ease,
		background-color var(--har-motion-fast, 180ms) ease;
}

.har-btn-gold:active,
.har-banner-cta__btn-primary:active,
.har-banner-cta__btn-secondary:active,
.har-hero__category:active {
	transform: scale(0.98);
}

@media (prefers-reduced-motion: reduce) {

	.har-btn-gold:active,
	.har-banner-cta__btn-primary:active,
	.har-banner-cta__btn-secondary:active,
	.har-hero__category:active {
		transform: none;
	}
}


/* Ã¢â€â‚¬Ã¢â€â‚¬Ã¢â€â‚¬ Quran PDF Downloads Ã¢â€â‚¬Ã¢â€â‚¬Ã¢â€â‚¬ */
.har-pdf__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.5rem;
	align-items: stretch;
}

@media (min-width: 640px) {
	.har-pdf__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (min-width: 1024px) {
	.har-pdf__grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 1.75rem;
	}
}

.har-pdf-card {
	display: flex;
	flex-direction: column;
	height: 100%;
	overflow: hidden;
	border-radius: 1.5rem;
	border: 1px solid #e7e2d6;
	background: #ffffff;
	box-shadow: 0 8px 28px rgba(31, 31, 31, 0.05);
	transition: transform 450ms cubic-bezier(0.22, 1, 0.36, 1), box-shadow 450ms ease, border-color 450ms ease;
}

.har-pdf-card:hover {
	transform: translateY(-6px);
	border-color: color-mix(in srgb, #818047 22%, #e7e2d6);
	box-shadow: 0 22px 50px rgba(129, 128, 71, 0.14);
}

.har-pdf-card__media {
	position: relative;
	aspect-ratio: 4 / 3;
	overflow: hidden;
	background: #f5f3eb;
}

.har-pdf-card__img,
.har-pdf-card__placeholder {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 700ms cubic-bezier(0.22, 1, 0.36, 1);
}

.har-pdf-card__placeholder {
	display: flex;
	align-items: center;
	justify-content: center;
	color: rgba(255, 255, 255, 0.85);
	background:
		radial-gradient(circle at 20% 20%, rgba(214, 167, 37, 0.35), transparent 50%),
		linear-gradient(145deg, #646437, #2a2a21);
}

.har-pdf-card:hover .har-pdf-card__img {
	transform: scale(1.06);
}

.har-pdf-card__badge {
	position: absolute;
	z-index: 2;
	top: 1rem;
	inset-inline-start: 1rem;
	display: inline-flex;
	align-items: center;
	padding: 0.4rem 0.75rem;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.94);
	border: 1px solid rgba(255, 255, 255, 0.5);
	color: #818047;
	font-family: var(--font-ui, Manrope, system-ui, sans-serif);
	font-size: 0.625rem;
	font-weight: 800;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	box-shadow: 0 8px 18px rgba(31, 31, 31, 0.12);
}

.har-pdf-card__body {
	display: flex;
	flex: 1;
	flex-direction: column;
	padding: 1.4rem 1.35rem 1.5rem;
}

.har-pdf-card__title {
	margin: 0 0 0.7rem;
	font-size: 1.15rem;
	font-weight: 800;
	line-height: 1.3;
	letter-spacing: -0.02em;
	color: #1f1f1f;
}

.har-pdf-card__desc {
	margin: 0 0 1.25rem;
	flex: 1;
	font-size: 0.9rem;
	line-height: 1.75;
	color: #5c5c5c;
}

.har-pdf-card__cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.5rem;
	margin-top: auto;
	W width: 100%;
	min-height: 2.9rem;
	padding: 0.85rem 1.2rem;
	border-radius: 0.9rem;
	background: #818047;
	color: #ffffff;
	font-family: var(--font-ui, Manrope, system-ui, sans-serif);
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.03em;
	text-decoration: none;
	box-shadow: 0 10px 24px rgba(129, 128, 71, 0.25);
	transition: background 300ms ease, transform 300ms ease, gap 300ms ease, box-shadow 300ms ease;
}

.har-pdf-card__cta:hover {
	background: #646437;
	color: #ffffff;
	transform: translateY(-2px);
	gap: 0.7rem;
	box-shadow: 0 14px 28px rgba(100, 100, 55, 0.3);
}

.har-pdf-card__cta-icon {
	transition: transform 300ms ease;
}

.har-pdf-card__cta:hover .har-pdf-card__cta-icon {
	transform: translateY(2px);
}

/* Footer logo Ã¢â‚¬â€ keep proportional, never oversized */
footer .custom-logo-link,
footer .custom-logo-link img,
footer .custom-logo {
	display: inline-block;
	max-height: 110px;
	width: auto;
	max-width: 180px;
	filter: brightness(0) invert(1);
	object-fit: contain;
}


[x-cloak] {
	display: none !important;
}

Premium Section CTA / Banner .har-banner-cta {
	--har-cta-gold: #d6a725;
	--har-cta-gold-soft: #f2d36a;
	--har-cta-olive: #818047;
	--har-cta-ink: #070605;
	position: relative;
	isolation: isolate;
	overflow: hidden;
	padding-block: clamp(4.5rem, 9vw, 7.5rem);
	color: #ffffff;
	background: var(--har-cta-ink);
}

.har-banner-cta__bg {
	position: absolute;
	inset: 0;
	z-index: 0;
	pointer-events: none;
	overflow: hidden;
}

.har-banner-cta__gradient {
	position: absolute;
	inset: 0;
	background:
		radial-gradient(at 100% 0, #2019059c, #000000a3 55%),
		radial-gradient(ellipse 70% 55% at 12% 85%, rgba(129, 128, 71, 0.28), transparent 60%),
		radial-gradient(ellipse 45% 40% at 78% 70%, rgba(214, 167, 37, 0.16), transparent 55%),
		linear-gradient(160deg, #0c0b09 0%, #14110c 42%, #0a0908 100%);
}

.har-banner-cta__pattern {
	position: absolute;
	inset: 0;
	opacity: 0.055;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='80' viewBox='0 0 80 80'%3E%3Cg fill='none' stroke='%23d6a725' stroke-width='1'%3E%3Cpath d='M40 8L72 40 40 72 8 40Z'/%3E%3Cpath d='M40 20L60 40 40 60 20 40Z'/%3E%3Ccircle cx='40' cy='40' r='6'/%3E%3C/g%3E%3C/svg%3E");
	background-size: 80px 80px;
	mask-image: radial-gradient(ellipse 75% 70% at 50% 50%, #000 20%, transparent 75%);
	-webkit-mask-image: radial-gradient(ellipse 75% 70% at 50% 50%, #000 20%, transparent 75%);
}

.har-banner-cta__glow {
	position: absolute;
	border-radius: 999px;
	filter: blur(60px);
	opacity: 0.55;
	animation: har-cta-glow 10s ease-in-out infinite alternate;
}

.har-banner-cta__glow--1 {
	top: -8%;
	inset-inline-end: -4%;
	width: min(42vw, 420px);
	height: min(42vw, 420px);
	background: rgba(214, 167, 37, 0.28);
}

.har-banner-cta__glow--2 {
	bottom: -12%;
	inset-inline-start: -6%;
	width: min(48vw, 480px);
	height: min(48vw, 480px);
	background: rgba(129, 128, 71, 0.32);
	animation-delay: -3s;
}

.har-banner-cta__glow--3 {
	top: 38%;
	inset-inline-start: 42%;
	width: 180px;
	height: 180px;
	background: rgba(242, 211, 106, 0.12);
	filter: blur(40px);
	animation-delay: -6s;
}

.har-banner-cta__particles span {
	position: absolute;
	width: 3px;
	height: 3px;
	border-radius: 999px;
	background: rgba(242, 211, 106, 0.7);
	box-shadow: 0 0 10px rgba(214, 167, 37, 0.55);
	animation: none;
}

.har-banner-cta__particles span:nth-child(1) {
	top: 18%;
	inset-inline-start: 12%;
	animation-delay: 0s;
}

.har-banner-cta__particles span:nth-child(2) {
	top: 32%;
	inset-inline-end: 18%;
	width: 4px;
	height: 4px;
	animation-delay: -1.5s;
}

.har-banner-cta__particles span:nth-child(3) {
	top: 68%;
	inset-inline-start: 28%;
	animation-delay: -3s;
}

.har-banner-cta__particles span:nth-child(4) {
	top: 22%;
	inset-inline-end: 38%;
	animation-delay: -4.2s;
}

.har-banner-cta__particles span:nth-child(5) {
	bottom: 20%;
	inset-inline-end: 12%;
	width: 2px;
	height: 2px;
	animation-delay: -2.4s;
}

.har-banner-cta__particles span:nth-child(6) {
	bottom: 28%;
	inset-inline-start: 48%;
	animation-delay: -5.1s;
}

.har-banner-cta__inner {
	position: relative;
	z-index: 1;
}

.har-banner-cta__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: clamp(2.5rem, 5vw, 4rem);
	align-items: center;
}

@media (min-width: 1024px) {
	.har-banner-cta__grid {
		grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
		gap: 3.5rem;
	}

	.har-banner-cta__grid--solo {
		grid-template-columns: minmax(0, 1fr);
		max-width: 720px;
	}
}

.har-banner-cta__label {
	display: inline-flex;
	align-items: center;
	gap: 0.55rem;
	margin: 0 0 1.35rem;
	padding: 0.4rem 0.9rem;
	border: 1px solid rgba(255, 255, 255, 0.14);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.06);
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
	font-family: var(--font-ui, Manrope, system-ui, sans-serif);
	font-size: 0.6875rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: var(--har-cta-gold-soft);
}

.har-banner-cta__label-dot {
	width: 0.4rem;
	height: 0.4rem;
	border-radius: 999px;
	background: var(--har-cta-gold);
	box-shadow: 0 0 10px rgba(214, 167, 37, 0.8);
}

.har-banner-cta__title.har-split-heading {
	gap: 0.12em;
}

.har-banner-cta__title .har-split-heading__line--primary {
	font-size: clamp(2.35rem, 5.2vw, 3.75rem);
	font-weight: 800;
	letter-spacing: 0;
	line-height: 1.2;
	color: #ffffff;
}

.har-banner-cta__title .har-split-heading__line--accent {
	font-size: clamp(1.55rem, 3.4vw, 2.45rem);
	font-weight: 700;
	letter-spacing: 0;
	line-height: 1.3;
	color: #C4B596;
	-webkit-text-fill-color: #C4B596;
	background: none;
}

.har-banner-cta__desc {
	margin-top: 1.5rem;
	max-width: 600px;
}

.har-banner-cta__desc,
.har-banner-cta__desc p {
	margin: 0;
	font-family: var(--font-body, Manrope, system-ui, sans-serif);
	font-size: clamp(0.975rem, 1.3vw, 1.0625rem);
	line-height: 1.85;
	color: rgba(255, 255, 255, 0.78);
}

.har-banner-cta__desc p+p {
	margin-top: 0.75rem;
}

.har-banner-cta__actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.9rem;
	margin-top: 2.15rem;
}

.har-banner-cta__btn-primary {
	min-height: 3.15rem;
	padding-inline: 1.85rem;
	box-shadow: 0 12px 32px rgba(214, 167, 37, 0.32);
}

.har-banner-cta__btn-primary:hover {
	box-shadow: 0 16px 36px rgba(214, 167, 37, 0.4);
}

.har-banner-cta__btn-secondary {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.5rem;
	min-height: 3.15rem;
	padding: 0.85rem 1.7rem;
	border: 1px solid rgba(255, 255, 255, 0.22);
	border-radius: 14px;
	background: rgba(255, 255, 255, 0.06);
	backdrop-filter: blur(14px);
	-webkit-backdrop-filter: blur(14px);
	color: #ffffff;
	font-family: var(--font-ui, Manrope, system-ui, sans-serif);
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.02em;
	text-decoration: none;
	transition: background 300ms ease, border-color 300ms ease, transform 300ms ease, box-shadow 300ms ease, color 300ms ease;
}

.har-banner-cta__btn-secondary:hover {
	background: rgba(255, 255, 255, 0.14);
	border-color: rgba(242, 211, 106, 0.45);
	color: #ffffff;
	transform: translateY(-2px);
	box-shadow: 0 12px 28px rgba(0, 0, 0, 0.25);
}

/* Visual composition */
.har-banner-cta__visual {
	position: relative;
	min-height: clamp(320px, 42vw, 460px);
	display: grid;
	place-items: center;
}

.har-banner-cta__orbit {
	position: absolute;
	border-radius: 999px;
	border: 1px solid rgba(214, 167, 37, 0.18);
	pointer-events: none;
}

.har-banner-cta__orbit--outer {
	width: min(92%, 420px);
	aspect-ratio: 1;
	animation: none;
}

.har-banner-cta__orbit--inner {
	width: min(68%, 300px);
	aspect-ratio: 1;
	border-style: dashed;
	border-color: rgba(255, 255, 255, 0.1);
	animation: none;
}

.har-banner-cta__blob {
	position: absolute;
	border-radius: 999px;
	filter: blur(28px);
	pointer-events: none;
}

.har-banner-cta__blob--a {
	width: 160px;
	height: 160px;
	background: rgba(214, 167, 37, 0.22);
	top: 12%;
	inset-inline-end: 10%;
	animation: none;
}

.har-banner-cta__blob--b {
	width: 190px;
	height: 190px;
	background: rgba(129, 128, 71, 0.28);
	bottom: 8%;
	inset-inline-start: 8%;
	animation: none;
}

.har-banner-cta__book {
	position: relative;
	z-index: 2;
	width: min(58%, 210px);
	aspect-ratio: 3 / 4;
	transform: rotate(-8deg) translateY(4px);
	transform-style: preserve-3d;
	animation: none;
	filter: drop-shadow(0 28px 40px rgba(0, 0, 0, 0.45));
}

.har-banner-cta__book-spine {
	position: absolute;
	inset-block: 4%;
	inset-inline-start: -10px;
	width: 14px;
	border-radius: 6px 0 0 6px;
	background: linear-gradient(180deg, #b98e1c 0%, #8a6a12 100%);
	box-shadow: inset -2px 0 0 rgba(0, 0, 0, 0.2);
}

.har-banner-cta__book-cover {
	position: absolute;
	inset: 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 0.85rem;
	padding: 1.25rem;
	border-radius: 14px 18px 18px 14px;
	background:
		radial-gradient(circle at 30% 20%, rgba(242, 211, 106, 0.18), transparent 45%),
		linear-gradient(155deg, #2a2618 0%, #17140e 55%, #0f0d09 100%);
	border: 1px solid rgba(214, 167, 37, 0.35);
	overflow: hidden;
}

.har-banner-cta__book-cover::after {
	content: "";
	position: absolute;
	inset: 10px;
	border-radius: 10px;
	border: 1px solid rgba(214, 167, 37, 0.18);
	pointer-events: none;
}

.har-banner-cta__book-ornament {
	width: 58%;
	color: var(--har-cta-gold-soft);
	opacity: 0.9;
}

.har-banner-cta__book-title {
	position: relative;
	z-index: 1;
	font-family: var(--font-heading, Manrope, system-ui, sans-serif);
	font-size: 0.8rem;
	font-weight: 800;
	letter-spacing: 0.22em;
	text-transform: uppercase;
	color: rgba(242, 211, 106, 0.92);
}

.har-banner-cta__book-pages {
	position: absolute;
	inset-block: 6%;
	inset-inline-end: -8px;
	width: 10px;
	border-radius: 0 8px 8px 0;
	background: repeating-linear-gradient(180deg,
			#f7f2e6 0px,
			#f7f2e6 3px,
			#e8dfc8 3px,
			#e8dfc8 4px);
	box-shadow: 2px 0 8px rgba(0, 0, 0, 0.2);
}

.har-banner-cta__glass {
	position: absolute;
	z-index: 3;
	padding: 0.85rem 1.05rem;
	border: 1px solid rgba(255, 255, 255, 0.16);
	border-radius: 1.1rem;
	background: rgba(255, 255, 255, 0.08);
	backdrop-filter: blur(16px);
	-webkit-backdrop-filter: blur(16px);
	box-shadow: 0 16px 40px rgba(0, 0, 0, 0.28);
}

.har-banner-cta__glass--main {
	bottom: 14%;
	inset-inline-end: 6%;
	display: flex;
	flex-direction: column;
	gap: 0.2rem;
	max-width: 180px;
	animation: har-cta-float 7.5s ease-in-out infinite;
	animation-delay: -1.2s;
}

.har-banner-cta__glass-kicker {
	font-family: var(--font-ui, Manrope, system-ui, sans-serif);
	font-size: 0.625rem;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--har-cta-gold-soft);
}

.har-banner-cta__glass-text {
	font-size: 0.875rem;
	font-weight: 700;
	line-height: 1.35;
	color: #ffffff;
}

.har-banner-cta__float {
	position: absolute;
	z-index: 4;
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	padding: 0.65rem 0.9rem;
	border: 1px solid rgba(255, 255, 255, 0.14);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.08);
	backdrop-filter: blur(14px);
	-webkit-backdrop-filter: blur(14px);
	box-shadow: 0 12px 30px rgba(0, 0, 0, 0.22);
	font-family: var(--font-ui, Manrope, system-ui, sans-serif);
	font-size: 0.75rem;
	font-weight: 700;
	color: rgba(255, 255, 255, 0.92);
	white-space: nowrap;
	animation: har-cta-float 6s ease-in-out infinite;
	animation-delay: var(--har-float-delay, 0s);
	transition: transform 300ms ease, box-shadow 300ms ease, background 300ms ease;
}

.har-banner-cta__float:hover {
	background: rgba(255, 255, 255, 0.14);
	box-shadow: 0 16px 36px rgba(0, 0, 0, 0.3);
	transform: translateY(-4px);
}

.har-banner-cta__float-dot {
	width: 0.45rem;
	height: 0.45rem;
	border-radius: 999px;
	background: var(--har-cta-gold);
	box-shadow: 0 0 8px rgba(214, 167, 37, 0.7);
	flex-shrink: 0;
}

.har-banner-cta__float--1 {
	top: 8%;
	inset-inline-start: 2%;
}

.har-banner-cta__float--2 {
	top: 18%;
	inset-inline-end: 0;
}

.har-banner-cta__float--3 {
	bottom: 28%;
	inset-inline-start: 0;
}

.har-banner-cta__float--4 {
	bottom: 6%;
	inset-inline-start: 22%;
}

@keyframes har-cta-float {

	0%,
	100% {
		transform: translateY(0);
	}

	50% {
		transform: translateY(-10px);
	}
}

@keyframes har-cta-book-float {

	0%,
	100% {
		transform: rotate(-8deg) translateY(0);
	}

	50% {
		transform: rotate(-8deg) translateY(-12px);
	}
}

@keyframes har-cta-glow {
	0% {
		opacity: 0.4;
		transform: scale(1);
	}

	100% {
		opacity: 0.7;
		transform: scale(1.08);
	}
}

@keyframes har-cta-particle {

	0%,
	100% {
		opacity: 0.25;
		transform: translateY(0);
	}

	50% {
		opacity: 0.9;
		transform: translateY(-12px);
	}
}

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

@keyframes har-cta-gradient-shift {
	0% {
		background-position: 0% 50%;
	}

	100% {
		background-position: 100% 50%;
	}
}

@media (max-width: 1023px) {
	.har-banner-cta__copy {
		text-align: center;
	}

	.har-banner-cta__label {
		margin-inline: auto;
	}

	.har-banner-cta__desc {
		margin-inline: auto;
	}

	.har-banner-cta__actions {
		justify-content: center;
	}

	.har-banner-cta__visual {
		min-height: 340px;
		margin-inline: auto;
		width: min(100%, 420px);
	}

	.har-banner-cta__float--1 {
		top: 4%;
		inset-inline-start: 0;
	}

	.har-banner-cta__float--2 {
		top: 10%;
		inset-inline-end: 0;
	}

	.har-banner-cta__float--3 {
		bottom: 22%;
		inset-inline-start: 2%;
	}

	.har-banner-cta__float--4 {
		bottom: 4%;
		inset-inline-end: 8%;
	}
}

@media (max-width: 640px) {
	.har-banner-cta {
		padding-block: 3.75rem 4.25rem;
	}

	.har-banner-cta__actions {
		flex-direction: column;
		align-items: stretch;
	}

	.har-banner-cta__btn-primary,
	.har-banner-cta__btn-secondary {
		width: 100%;
	}

	.har-banner-cta__float {
		font-size: 0.6875rem;
		padding: 0.55rem 0.75rem;
	}

	.har-banner-cta__glass--main {
		max-width: 150px;
		padding: 0.7rem 0.85rem;
	}
}

@media (prefers-reduced-motion: reduce) {

	.har-banner-cta__glow,
	.har-banner-cta__particles span,
	.har-banner-cta__orbit,
	.har-banner-cta__blob,
	.har-banner-cta__book,
	.har-banner-cta__glass,
	.har-banner-cta__float,
	.har-banner-cta__title .har-split-heading__line--accent {
		animation: none !important;
	}

	.har-banner-cta__book {
		transform: rotate(-8deg);
	}

	.har-banner-cta__btn-secondary:hover,
	.har-banner-cta__float:hover {
		transform: none;
	}
}

/* --- Header premium CTA --- */
.har-header-cta {
	--har-cta-gold: #d6a725;
	--har-cta-gold-deep: #b98e1c;
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.45rem;
	overflow: hidden;
	isolation: isolate;
	min-height: 2.65rem;
	padding: 0.7rem 1.35rem;
	border-radius: 999px;
	border: 1px solid color-mix(in srgb, #d6a725 55%, #fff);
	background: linear-gradient(180deg, rgb(255 255 255 / 20%) 0%, rgb(255 255 255 / 0%) 42%, transparent 100%), linear-gradient(135deg, #f2d36a 0%, #d6a725 48%, #c7b35a 100%);
	color: #1f1f1f;
	font-family: var(--font-ui, Manrope, system-ui, sans-serif);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.02em;
	line-height: 1;
	text-decoration: none;
	box-shadow:
		0 1px 0 rgba(255, 255, 255, 0.55) inset,
		0 8px 22px rgba(214, 167, 37, 0.28),
		0 2px 8px rgba(31, 31, 31, 0.06);
	transition:
		transform 260ms cubic-bezier(0.22, 1, 0.36, 1),
		box-shadow 260ms ease,
		filter 260ms ease;
}

.har-header-cta__shine {
	position: absolute;
	inset: 0;
	z-index: 0;
	pointer-events: none;
	background: linear-gradient(115deg,
			transparent 30%,
			rgba(255, 255, 255, 0.55) 48%,
			transparent 62%);
	transform: translateX(-120%);
	transition: transform 0.75s ease;
}

.har-header-cta__label,
.har-header-cta__arrow {
	position: relative;
	z-index: 1;
}

.har-header-cta__arrow {
	transition: transform 260ms cubic-bezier(0.22, 1, 0.36, 1);
}

.har-header-cta:hover {
	transform: translateY(-2px) scale(1.035);
	filter: saturate(1.05);
	box-shadow:
		0 1px 0 rgba(255, 255, 255, 0.65) inset,
		0 0 0 4px rgba(214, 167, 37, 0.14),
		0 14px 30px rgba(214, 167, 37, 0.36),
		0 4px 12px rgba(31, 31, 31, 0.08);
}

.har-header-cta:hover .har-header-cta__shine {
	transform: translateX(120%);
}

.har-header-cta:hover .har-header-cta__arrow {
	transform: translateX(3px);
}

.har-header-cta:active {
	transform: translateY(0) scale(0.985);
}

.har-header-cta:focus-visible {
	outline: none;
	box-shadow:
		0 0 0 3px #fff,
		0 0 0 6px color-mix(in srgb, var(--har-cta-gold) 70%, #818047),
		0 10px 24px rgba(214, 167, 37, 0.3);
}

[dir="rtl"] .har-header-cta:hover .har-header-cta__arrow {
	transform: translateX(-3px) scaleX(-1);
}

[dir="rtl"] .har-header-cta__arrow {
	transform: scaleX(-1);
}

@media (max-width: 1023px) {
	.har-header-cta {
		width: 100%;
		min-height: 3rem;
		font-size: 13px;
	}
}

/* --- Floating WhatsApp --- */
.har-whatsapp {
	position: fixed;
	inset-inline-end: 1.25rem;
	bottom: max(1.25rem, env(safe-area-inset-bottom, 0px) + 1rem);
	z-index: 55;
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 0.65rem;
	pointer-events: none;
}

.har-whatsapp__tooltip {
	pointer-events: none;
	opacity: 0;
	visibility: hidden;
	transform: translateY(6px) scale(0.96);
	display: flex;
	flex-direction: column;
	gap: 0.15rem;
	max-width: 200px;
	padding: 0.75rem 0.9rem;
	border-radius: 16px;
	border: 1px solid rgba(255, 255, 255, 0.55);
	background: rgba(255, 255, 255, 0.82);
	backdrop-filter: blur(14px);
	-webkit-backdrop-filter: blur(14px);
	color: #1f1f1f;
	box-shadow: 0 12px 32px rgba(31, 31, 31, 0.12);
	transition:
		opacity 220ms ease,
		transform 220ms ease,
		visibility 220ms ease;
}

.har-whatsapp__tooltip strong {
	font-family: var(--font-ui, Manrope, system-ui, sans-serif);
	font-size: 12px;
	font-weight: 700;
}

.har-whatsapp__tooltip span {
	font-family: var(--font-body, Manrope, system-ui, sans-serif);
	font-size: 12px;
	color: #5c5c5c;
	line-height: 1.4;
}

.har-whatsapp:hover .har-whatsapp__tooltip,
.har-whatsapp:focus-within .har-whatsapp__tooltip {
	opacity: 1;
	visibility: visible;
	transform: translateY(0) scale(1);
}

.har-whatsapp-float {
	pointer-events: auto;
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 3.6rem;
	height: 3.6rem;
	border-radius: 999px;
	border: 1px solid rgba(255, 255, 255, 0.45);
	background:
		linear-gradient(160deg, rgba(255, 255, 255, 0.35), transparent 55%),
		linear-gradient(145deg, #3ce078 0%, #25d366 55%, #128c7e 100%);
	color: #ffffff;
	box-shadow:
		0 1px 0 rgba(255, 255, 255, 0.4) inset,
		0 12px 28px rgba(37, 211, 102, 0.35),
		0 4px 12px rgba(31, 31, 31, 0.1);
	transition:
		transform 240ms cubic-bezier(0.22, 1, 0.36, 1),
		box-shadow 240ms ease;
	animation: har-whatsapp-float 4.5s ease-in-out infinite;
}

.har-whatsapp-float__ring {
	position: absolute;
	inset: -3px;
	border-radius: inherit;
	border: 2px solid rgba(37, 211, 102, 0.35);
	animation: har-whatsapp-pulse-ring 3.2s ease-out infinite;
	pointer-events: none;
}

.har-whatsapp-float__icon {
	position: relative;
	z-index: 1;
	width: 1.7rem;
	height: 1.7rem;
	display: block;
}

.har-whatsapp-float:hover {
	transform: translateY(-4px) scale(1.06);
	box-shadow:
		0 1px 0 rgba(255, 255, 255, 0.5) inset,
		0 16px 34px rgba(37, 211, 102, 0.42),
		0 0 0 6px rgba(37, 211, 102, 0.12);
}

.har-whatsapp-float:focus-visible {
	outline: none;
	box-shadow:
		0 0 0 3px #ffffff,
		0 0 0 6px color-mix(in srgb, #25d366 65%, #818047);
}

@keyframes har-whatsapp-float {

	0%,
	100% {
		transform: translateY(0);
	}

	50% {
		transform: translateY(-5px);
	}
}

@keyframes har-whatsapp-pulse-ring {
	0% {
		transform: scale(1);
		opacity: 0.7;
	}

	70% {
		transform: scale(1.35);
		opacity: 0;
	}

	100% {
		transform: scale(1.35);
		opacity: 0;
	}
}

@media (max-width: 640px) {
	.har-whatsapp {
		inset-inline-end: 1rem;
		bottom: max(5.25rem, env(safe-area-inset-bottom, 0px) + 4.5rem);
	}

	.har-whatsapp-float {
		width: 3.3rem;
		height: 3.3rem;
	}

	.har-whatsapp-float__icon {
		width: 1.55rem;
		height: 1.55rem;
	}

	.har-whatsapp__tooltip {
		display: none;
	}
}

@media (prefers-reduced-motion: reduce) {

	.har-header-cta,
	.har-header-cta__shine,
	.har-header-cta__arrow,
	.har-whatsapp-float,
	.har-whatsapp-float__ring,
	.har-whatsapp__tooltip {
		animation: none !important;
		transition: none !important;
	}

	.har-header-cta:hover,
	.har-whatsapp-float:hover {
		transform: none;
	}
}


/* learning-journey CSS removed (Phase 4) */

/* ─── Single blog article ─── */
.har-single {
	width: 100%;
	background: #fff;
}

.har-single__meta-bar {
	padding-block: 1.25rem 0.5rem;
	background: #fff;
}

.har-single__meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.35rem 0.65rem;
	font-size: 0.75rem;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #8a8a8a;
}

.har-single__meta-sep {
	opacity: 0.55;
}

.har-single__cats,
.har-single__tags {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	margin-top: 0.85rem;
}

.har-single__chip {
	display: inline-flex;
	align-items: center;
	padding: 0.35rem 0.85rem;
	border: 1px solid #e5dfd4;
	border-radius: 999px;
	background: #fcfbf9;
	color: #043c36;
	font-size: 0.6875rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-decoration: none;
	text-transform: uppercase;
	transition:
		border-color 180ms ease,
		background-color 180ms ease,
		color 180ms ease;
}

.har-single__chip:hover,
.har-single__chip:focus-visible {
	border-color: #a79570;
	background: #a79570;
	color: #353535;
}

.har-single__chip--tag {
	color: #8a8a8a;
}

.har-single__hero-media {
	padding-block: 1.25rem 0.5rem;
}

.har-single__featured {
	margin: 0;
	overflow: hidden;
	border-radius: 1.25rem;
	box-shadow: 0 18px 42px rgba(21, 21, 21, 0.08);
}

.har-single__featured-img {
	display: block;
	width: 100%;
	aspect-ratio: 21 / 9;
	object-fit: cover;
}

.har-single__body {
	padding-block: 2rem 4rem;
}

.har-single__layout {
	display: grid;
	gap: 2.5rem;
	align-items: start;
}

@media (min-width: 1024px) {
	.har-single__layout {
		grid-template-columns: minmax(0, 1fr) 320px;
		gap: 3rem;
	}
}

.har-single__main {
	min-width: 0;
}

.har-single__share {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.65rem;
	margin-bottom: 1.75rem;
}

.har-single__share-label {
	font-size: 0.6875rem;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: #8a8a8a;
	margin-inline-end: 0.25rem;
}

.har-single__share-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.5rem;
	height: 2.5rem;
	padding: 0;
	border: 1px solid #e5dfd4;
	border-radius: 999px;
	background: #fff;
	color: #353535;
	text-decoration: none;
	cursor: pointer;
	transition:
		border-color 180ms ease,
		background-color 180ms ease,
		color 180ms ease,
		transform 180ms ease;
}

.har-single__share-btn svg {
	width: 0.95rem;
	height: 0.95rem;
	display: block;
}

.har-single__share-btn:hover,
.har-single__share-btn:focus-visible {
	border-color: #a79570;
	background: #a79570;
	color: #353535;
	transform: translateY(-1px);
}

.har-single__toc {
	margin-bottom: 2rem;
	border: 1px solid #e5dfd4;
	border-radius: 1rem;
	background: #fcfbf9;
	overflow: hidden;
}

.har-single__toc summary {
	cursor: pointer;
	padding: 1rem 1.25rem;
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: #043c36;
	list-style: none;
}

.har-single__toc summary::-webkit-details-marker {
	display: none;
}

.har-single__toc ol {
	margin: 0;
	padding: 0 1.25rem 1.15rem;
	list-style: none;
	border-top: 1px solid #e5dfd4;
	display: grid;
	gap: 0.55rem;
	padding-top: 1rem;
}

.har-single__toc a {
	color: #353535;
	text-decoration: none;
	font-size: 0.9375rem;
	line-height: 1.5;
}

.har-single__toc a:hover,
.har-single__toc a:focus-visible {
	color: #043c36;
}

.har-single__toc-child {
	padding-inline-start: 1rem;
}

.har-single__content,
.har-single .har-rich {
	max-width: 100%;
	font-size: 1.0625rem;
	line-height: 1.9;
	color: #353535;
}

.har-single .har-rich>*+* {
	margin-top: 1.15em;
}

.har-single .har-rich h2,
.har-single .har-rich h3,
.har-single .har-rich h4 {
	margin-top: 1.75em;
	margin-bottom: 0.55em;
	color: #043c36;
	line-height: 1.3;
}

.har-single .har-rich a {
	color: #043c36;
	text-decoration-thickness: 1px;
	text-underline-offset: 0.18em;
}

.har-single .har-rich a:hover {
	color: #a79570;
}

.har-single .har-rich img,
.har-single .har-rich iframe,
.har-single .har-rich table,
.har-single .har-rich pre,
.har-single .har-rich figure {
	max-width: 100%;
	height: auto;
}

.har-single .har-rich ul,
.har-single .har-rich ol {
	padding-inline-start: 1.25rem;
}

.har-single .har-rich blockquote {
	margin: 1.5em 0;
	padding: 1rem 1.25rem;
	border-inline-start: 3px solid #a79570;
	background: #fcfbf9;
	color: #353535;
	font-style: italic;
}

.har-single__tags {
	margin-top: 2rem;
	padding-top: 1.5rem;
	border-top: 1px solid #e5dfd4;
}

.har-single__eyebrow {
	margin: 0 0 0.35rem;
	font-size: 0.6875rem;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: #8a8a8a;
}

.har-single__author {
	display: flex;
	gap: 1rem;
	align-items: flex-start;
	margin-top: 2rem;
	padding: 1.35rem 1.5rem;
}

.har-single__author-avatar {
	width: 4.5rem;
	height: 4.5rem;
	border-radius: 999px;
	object-fit: cover;
	flex-shrink: 0;
}

.har-single__author-name {
	margin: 0;
	font-size: 1.15rem;
	color: #043c36;
}

.har-single__author-bio {
	margin: 0.45rem 0 0;
	font-size: 0.9375rem;
	line-height: 1.7;
	color: #8a8a8a;
}

.har-single__pager {
	display: grid;
	gap: 1rem;
	margin-top: 2rem;
}

@media (min-width: 640px) {
	.har-single__pager {
		grid-template-columns: 1fr 1fr;
	}
}

.har-single__pager-link {
	display: flex;
	flex-direction: column;
	gap: 0.4rem;
	padding: 1.15rem 1.25rem;
	text-decoration: none;
	transition:
		border-color 180ms ease,
		transform 180ms ease,
		box-shadow 180ms ease;
}

.har-single__pager-link:hover,
.har-single__pager-link:focus-visible {
	border-color: #a79570;
	transform: translateY(-2px);
	box-shadow: 0 12px 28px rgba(4, 60, 54, 0.08);
}

.har-single__pager-link--next {
	text-align: end;
}

.har-single__pager-title {
	font-size: 1rem;
	font-weight: 700;
	color: #353535;
	line-height: 1.4;
}

.har-single__cta {
	margin-top: 2rem;
	padding: 2rem 1.5rem;
	text-align: center;
	background: color-mix(in srgb, #a79570 14%, #fff);
	border-color: color-mix(in srgb, #a79570 28%, #e5dfd4);
}

.har-single__cta-title {
	margin: 0 0 0.65rem;
	font-size: 1.35rem;
	color: #043c36;
}

.har-single__cta-text {
	margin: 0 auto 1.25rem;
	max-width: 28rem;
	font-size: 0.9375rem;
	line-height: 1.7;
	color: #8a8a8a;
}

.har-single__comments {
	margin-top: 2.5rem;
	padding-top: 2rem;
	border-top: 1px solid #e5dfd4;
}

.har-single__related {
	padding-block: 3.5rem 4.5rem;
	background: #fcfbf9;
	border-top: 1px solid #e5dfd4;
}

.har-single__related-head {
	margin-bottom: 1.75rem;
}

.har-single__related-title {
	margin: 0.35rem 0 0;
	font-size: clamp(1.4rem, 2.4vw, 1.85rem);
	color: #043c36;
}

.har-single__related-grid {
	display: grid;
	gap: 1.5rem;
}

@media (min-width: 768px) {
	.har-single__related-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

/* Blog card */
.har-blog-card {
	display: flex;
	flex-direction: column;
	height: 100%;
	overflow: hidden;
}

.har-blog-card__media {
	display: block;
	aspect-ratio: 16 / 10;
	overflow: hidden;
	background: #f0ebe1;
	text-decoration: none;
}

.har-blog-card__img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform 500ms ease;
}

.har-blog-card:hover .har-blog-card__img {
	transform: scale(1.03);
}

.har-blog-card__placeholder {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100%;
	font-size: 0.75rem;
	font-style: italic;
	color: #8a8a8a;
}

.har-blog-card__body {
	display: flex;
	flex: 1;
	flex-direction: column;
	padding: 1.35rem 1.4rem 1.5rem;
}

.har-blog-card__meta {
	display: flex;
	flex-wrap: wrap;
	gap: 0.55rem 0.85rem;
	margin-bottom: 0.75rem;
	font-size: 0.6875rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: #8a8a8a;
}

.har-blog-card__cat {
	color: #043c36;
}

.har-blog-card__title {
	margin: 0 0 0.75rem;
	font-size: 1.15rem;
	line-height: 1.35;
}

.har-blog-card__title a {
	color: #353535;
	text-decoration: none;
}

.har-blog-card__title a:hover,
.har-blog-card__title a:focus-visible {
	color: #043c36;
}

.har-blog-card__excerpt {
	margin: 0 0 1.15rem;
	flex: 1;
	font-size: 0.9375rem;
	line-height: 1.75;
	color: #8a8a8a;
}

.har-blog-card__more {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	text-decoration: none;
	color: #353535;
}

.har-blog-card:hover .har-blog-card__more {
	color: #043c36;
}

html[dir="rtl"] .har-blog-card__more span {
	display: inline-block;
	transform: scaleX(-1);
}

/* Blog sidebar */
.har-blog-sidebar {
	display: grid;
	gap: 1.25rem;
}

@media (min-width: 1024px) {
	.har-blog-sidebar {
		position: sticky;
		top: 6.5rem;
	}
}

.har-blog-sidebar__card {
	padding: 1.25rem;
}

.har-blog-sidebar__heading {
	margin: 0 0 1rem;
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: #043c36;
}

.har-blog-sidebar__search input {
	width: 100%;
	border: 1px solid #e5dfd4;
	border-radius: 0.75rem;
	background: #fcfbf9;
	padding: 0.75rem 1rem;
	font-size: 0.9375rem;
	color: #353535;
	outline: none;
	transition: border-color 180ms ease;
}

.har-blog-sidebar__search input:focus {
	border-color: #043c36;
}

.har-blog-sidebar__list,
.har-blog-sidebar__posts {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: 0.75rem;
}

.har-blog-sidebar__list a,
.har-blog-sidebar__posts a {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 0.75rem;
	text-decoration: none;
	color: #353535;
	font-size: 0.9375rem;
	line-height: 1.45;
	transition: color 180ms ease;
}

.har-blog-sidebar__list a:hover,
.har-blog-sidebar__posts a:hover {
	color: #043c36;
}

.har-blog-sidebar__count {
	flex-shrink: 0;
	font-size: 0.6875rem;
	font-weight: 700;
	color: #8a8a8a;
}

.har-blog-sidebar__posts a {
	flex-direction: column;
	align-items: stretch;
	gap: 0.25rem;
}

.har-blog-sidebar__post-title {
	font-weight: 700;
	line-height: 1.4;
}

.har-blog-sidebar__post-date {
	font-size: 0.6875rem;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #8a8a8a;
}

.har-blog-sidebar__cta {
	padding: 1.5rem;
	border-radius: 1.25rem;
	background: #043c36;
	color: #fcfbf9;
}

.har-blog-sidebar__cta-label {
	margin: 0 0 0.4rem;
	font-size: 0.6875rem;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: #a79570;
}

.har-blog-sidebar__cta-title {
	margin: 0 0 0.65rem;
	font-size: 1.25rem;
	color: #fff;
}

.har-blog-sidebar__cta-text {
	margin: 0 0 1.15rem;
	font-size: 0.875rem;
	line-height: 1.7;
	color: rgba(252, 251, 249, 0.72);
}

/* Comments */
.har-comments__title,
.har-comments__reply-title {
	margin: 0 0 1.15rem;
	font-size: 1.25rem;
	color: #043c36;
}

.har-comments__list {
	list-style: none;
	margin: 0 0 2rem;
	padding: 0;
	display: grid;
	gap: 1.25rem;
}

.har-comments__list .comment-body {
	padding: 1.15rem 1.25rem;
	border: 1px solid #e5dfd4;
	border-radius: 1rem;
	background: #fcfbf9;
}

.har-comments__list .comment-author {
	font-weight: 700;
	color: #353535;
}

.har-comments__list .comment-meta,
.har-comments__list .reply {
	font-size: 0.8125rem;
	color: #8a8a8a;
}

.har-comments__list .reply a {
	color: #043c36;
	text-decoration: none;
}

.har-comments__closed {
	font-size: 0.9375rem;
	color: #8a8a8a;
}

.har-comments__form {
	display: grid;
	gap: 1rem;
}

.har-comments__form .comment-form-cookies-consent,
.har-comments__form .comment-notes {
	font-size: 0.8125rem;
	color: #8a8a8a;
}

.har-comments__field {
	margin: 0;
}

.har-comments__field label {
	display: block;
	margin-bottom: 0.4rem;
	font-size: 0.6875rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: #8a8a8a;
}

.har-comments__field input,
.har-comments__field textarea,
.har-comments__form input[type="text"],
.har-comments__form input[type="email"],
.har-comments__form input[type="url"],
.har-comments__form textarea {
	width: 100%;
	border: 1px solid #e5dfd4;
	border-radius: 0.85rem;
	background: #fcfbf9;
	padding: 0.85rem 1rem;
	font-size: 0.9375rem;
	color: #353535;
	outline: none;
	transition: border-color 180ms ease;
}

.har-comments__field input:focus,
.har-comments__field textarea:focus,
.har-comments__form input:focus,
.har-comments__form textarea:focus {
	border-color: #043c36;
}

.har-comments__form .form-submit {
	margin: 0.25rem 0 0;
}

/* Blog index / archive */
.har-blog-index {
	padding-block: 3rem 4.5rem;
	background: #fff;
}

.har-blog-index__layout {
	display: grid;
	gap: 2.5rem;
	align-items: start;
}

@media (min-width: 1024px) {
	.har-blog-index__layout {
		grid-template-columns: minmax(0, 1fr) 320px;
		gap: 3rem;
	}
}

.har-blog-index__grid {
	display: grid;
	gap: 1.5rem;
}

@media (min-width: 640px) {
	.har-blog-index__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

.har-blog-index__pagination {
	margin-top: 2.5rem;
}

.har-blog-index__empty {
	margin: 0;
	padding: 3rem 1.5rem;
	border: 1px dashed #e5dfd4;
	border-radius: 1rem;
	background: #fcfbf9;
	text-align: center;
	font-size: 0.9375rem;
	color: #8a8a8a;
}

/* ==========================================================================
   Wajahah Phase 4 � property UI + chrome (SYSTEM_DESIGN)
   ========================================================================== */

.har-site-footer {
	background: #043C36;
	color: #FCFBF9;
}

.har-site-footer__grid {
	display: grid;
	gap: 3rem;
	padding-block: 4rem;
}

@media (min-width: 1024px) {
	.har-site-footer__grid {
		grid-template-columns: 1.2fr 2fr;
		gap: 3rem;
		padding-block: 5rem;
	}
}

.har-site-footer__logo,
.har-site-footer__logo a {
	color: #fff;
	font-size: 1.35rem;
	font-weight: 800;
	text-decoration: none;
}

.har-site-footer__blurb {
	margin-top: 1.25rem;
	max-width: 22rem;
	font-size: 0.9375rem;
	line-height: 1.75;
	color: rgba(252, 251, 249, 0.65);
}

.har-site-footer__heading {
	margin: 0 0 1.25rem;
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: #fff;
}

.har-site-footer__heading a {
	color: inherit;
	text-decoration: none;
}

.har-site-footer__heading a:hover {
	color: #C4B596;
}

.har-site-footer__links {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: 0.75rem;
}

.har-site-footer__links--grid {
	grid-template-columns: 1fr 1fr;
}

.har-site-footer__links a {
	color: rgba(252, 251, 249, 0.55);
	text-decoration: none;
	font-size: 0.875rem;
}

.har-site-footer__links a:hover {
	color: #C4B596;
}

.har-site-footer__columns {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 2rem;
}

@media (min-width: 768px) {
	.har-site-footer__columns {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

.har-site-footer__social {
	margin-top: 1.5rem;
}

.har-site-footer__social-list {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.har-site-footer__social a,
.har-site-footer__social-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.5rem;
	height: 2.5rem;
	padding: 0;
	border: 1px solid rgba(255, 255, 255, 0.15);
	border-radius: 999px;
	color: rgba(252, 251, 249, 0.7);
	text-decoration: none;
	font-size: 0.75rem;
	font-weight: 600;
	line-height: 1;
	transition:
		background-color var(--har-motion-fast, 180ms) ease,
		border-color var(--har-motion-fast, 180ms) ease,
		color var(--har-motion-fast, 180ms) ease,
		transform var(--har-motion-fast, 180ms) ease;
}

.har-site-footer__social-icon {
	width: 1.05rem;
	height: 1.05rem;
	display: block;
	flex-shrink: 0;
}

.har-site-footer__social a:hover,
.har-site-footer__social-link:hover {
	border-color: #A79570;
	background: #A79570;
	color: #353535;
	transform: translateY(-1px);
}

.har-site-footer__contact-list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: 0.85rem;
}

.har-site-footer__contact-label {
	display: block;
	margin-bottom: 0.2rem;
	font-size: 0.6875rem;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: rgba(196, 181, 150, 0.9);
}

.har-site-footer__contact-list a {
	color: rgba(252, 251, 249, 0.75);
	text-decoration: none;
	font-size: 0.9375rem;
	word-break: break-word;
}

.har-site-footer__contact-list a:hover {
	color: #C4B596;
}

.har-site-footer__contact-cta {
	display: inline-flex;
	align-items: center;
	margin-top: 0.25rem;
	font-weight: 700 !important;
	color: #C4B596 !important;
}

.har-site-footer__rule {
	border: 0;
	border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.har-site-footer__utility {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: space-between;
	gap: 1.25rem;
	padding-block: 1.75rem;
}

@media (min-width: 768px) {
	.har-site-footer__utility {
		flex-direction: row;
	}
}

.har-site-footer__copy,
.har-site-footer__utility-links a,
.har-lang-switch--footer {
	font-size: 0.75rem;
	color: rgba(252, 251, 249, 0.45);
	text-decoration: none;
}

.har-site-footer__utility-links {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 1.25rem;
}

.har-site-footer__utility-links a:hover,
.har-lang-switch--footer:hover {
	color: #fff;
}

.har-pill-tab {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 40px;
	padding: 0.5rem 1rem;
	border: 1px solid #E5DFD4;
	border-radius: 999px;
	background: #FCFBF9;
	color: #353535;
	font-size: 0.8125rem;
	font-weight: 600;
	cursor: pointer;
}

.har-pill-tab.is-active {
	background: #043C36;
	border-color: #043C36;
	color: #fff;
}

.har-pill-tab,
.har-filter-tabs__tab {
	transition:
		background-color 240ms ease,
		border-color 240ms ease,
		color 240ms ease;
}

.har-badge {
	display: inline-flex;
	align-items: center;
	min-height: 24px;
	padding: 0 10px;
	border-radius: 999px;
	font-size: 0.6875rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	background: #F0EBE1;
	color: #353535;
}

.har-badge--sale {
	background: color-mix(in srgb, #043C36 14%, white);
	color: #043C36;
}

.har-badge--rent {
	background: color-mix(in srgb, #A79570 22%, white);
	color: #5C4F35;
}

.har-property-search {
	background: transparent;
	border: 0;
	border-radius: 0;
	padding: 0;
	box-shadow: none;
}

.har-property-search__tabs {
	display: inline-flex;
	flex-wrap: nowrap;
	align-items: stretch;
	max-width: 100%;
	margin: 0;
	padding: 0;
	position: relative;
	z-index: 1;
	inset-inline-start: 0;
}

.har-property-search__tab {
	appearance: none;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	margin: 0;
	padding: 0.7rem 1.35rem;
	border: 0;
	border-radius: 0;
	background: #F0EBE1;
	color: #353535;
	font-family: inherit;
	font-size: 0.8125rem;
	font-weight: 600;
	line-height: 1.2;
	cursor: pointer;
	transition:
		background-color 240ms ease,
		color 240ms ease;
}

/* Divider between tabs — logical, works in LTR and RTL. */
.har-property-search__tab+.har-property-search__tab {
	border-inline-start: 1px solid #E5DFD4;
	box-shadow: none;
}

/* Outer top corners of the tab strip (logical start/end). */
.har-property-search__tab:first-child {
	border-start-start-radius: 14px;
}

.har-property-search__tab:last-child {
	border-start-end-radius: 14px;
}

.har-property-search__tab.is-active {
	background: #FFFFFF;
	color: #043C36;
	font-weight: 700;
	box-shadow: none;
	border-inline-start-color: transparent;
	position: relative;
	z-index: 2;
}

.har-property-search__tab.is-active+.har-property-search__tab {
	border-inline-start-color: transparent;
}

.har-property-search__tab:focus-visible {
	outline: 2px solid #043C36;
	outline-offset: -2px;
	z-index: 3;
}

.har-property-search__panel {
	position: relative;
	z-index: 0;
	overflow: hidden;
	background: #FFFFFF;
	border: 1px solid #E5DFD4;
	/* Under the first (sale) tab: square on the inline-start edge. */
	border-start-start-radius: 0;
	border-start-end-radius: 20px;
	border-end-start-radius: 20px;
	border-end-end-radius: 20px;
	padding: 1.25rem;
	box-shadow: 0 12px 40px rgba(26, 31, 30, 0.10);
}

/* When the last (rent) tab is active, square the inline-end edge instead. */
.har-property-search[data-status="rent"] .har-property-search__panel {
	border-start-start-radius: 20px;
	border-start-end-radius: 0;
}

.har-property-search.is-swapping .har-property-search__panel {
	animation: har-search-panel-in var(--har-motion-base, 480ms) var(--har-ease-out, cubic-bezier(0.22, 1, 0.36, 1));
}

.har-property-search.is-swapping.is-swap-prev .har-property-search__panel {
	animation-name: har-search-panel-in-prev;
}

@keyframes har-search-panel-in {
	from {
		opacity: 0.35;
		transform: translate3d(18px, 6px, 0);
	}

	to {
		opacity: 1;
		transform: translate3d(0, 0, 0);
	}
}

@keyframes har-search-panel-in-prev {
	from {
		opacity: 0.35;
		transform: translate3d(-18px, 6px, 0);
	}

	to {
		opacity: 1;
		transform: translate3d(0, 0, 0);
	}
}

.har-property-search__advanced {
	margin-top: 1.25rem;
	padding-top: 1.15rem;
	border-top: 1px solid #E5DFD4;
}

.har-property-search__advanced-title {
	margin: 0 0 0.85rem;
	font-size: 0.8125rem;
	font-weight: 700;
	color: #043C36;
}

.har-property-search__advanced-grid {
	display: grid;
	gap: 0.875rem;
}

@media (min-width: 768px) {
	.har-property-search__advanced-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (min-width: 1024px) {
	.har-property-search__advanced-grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

@media (prefers-reduced-motion: reduce) {

	.har-site-header,
	.har-site-header--overlay:not(.is-scrolled) .custom-logo,
	.har-site-header--overlay:not(.is-scrolled) .custom-logo-link img,
	.har-property-search__tab,
	.har-property-search.is-swapping .har-property-search__panel {
		transition: none;
		animation: none;
	}
}

.har-property-search__fields {
	display: grid;
	gap: 0.875rem;
}

@media (min-width: 768px) {
	.har-property-search__fields {
		grid-template-columns: 1fr 1fr;
	}
}

@media (min-width: 1024px) {
	.har-property-search__fields {
		grid-template-columns: 1.4fr 1fr 1fr auto;
		align-items: end;
	}
}

.har-property-search__label {
	display: block;
	margin-bottom: 0.35rem;
	font-size: 0.75rem;
	font-weight: 600;
	color: #353535;
}

.har-property-search__unit {
	font-weight: 500;
	color: #6b6b6b;
}

.har-property-search__field input,
.har-property-search__field select {
	width: 100%;
	min-height: 48px;
	border: 1px solid #E5DFD4;
	border-radius: 12px;
	background: #FCFBF9;
	padding: 0.65rem 0.9rem;
	color: #353535;
}

.har-property-search__btn {
	width: 100%;
}

@media (min-width: 1024px) {
	.har-property-search__btn {
		width: auto;
		min-width: 8rem;
	}
}

.har-property-grid {
	display: grid;
	gap: 1.5rem;
	grid-template-columns: 1fr;
}

@media (min-width: 768px) {
	.har-property-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (min-width: 1024px) {
	.har-property-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

.har-property-card {
	display: flex;
	flex-direction: column;
	overflow: hidden;
	border: 1px solid #E5DFD4;
	border-radius: 16px;
	background: #fff;
	text-decoration: none;
	color: inherit;
	transition: box-shadow 220ms ease, transform 220ms ease;
}

.har-property-card:hover,
.har-property-card:focus-visible {
	box-shadow: 0 12px 28px rgba(26, 31, 30, 0.10);
	transform: translateY(-2px);
}

.har-property-card__media {
	position: relative;
	aspect-ratio: 4 / 3;
	background: #F0EBE1;
	overflow: hidden;
}

.har-property-card__img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform var(--har-motion-slow, 700ms) var(--har-ease-out, cubic-bezier(0.22, 1, 0.36, 1));
}

.har-property-card:hover .har-property-card__img,
.har-property-card:focus-visible .har-property-card__img {
	transform: scale(1.04);
}

@media (prefers-reduced-motion: reduce) {

	.har-property-card:hover,
	.har-property-card:focus-visible {
		transform: none;
	}

	.har-property-card__img,
	.har-property-card:hover .har-property-card__img,
	.har-property-card:focus-visible .har-property-card__img {
		transform: none;
		transition: none;
	}
}

.har-property-card__placeholder {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	color: #A79570;
}

.har-property-card__badges {
	position: absolute;
	inset-block-start: 0.75rem;
	inset-inline-start: 0.75rem;
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem;
}

.har-property-card__body {
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
	padding: 1.1rem 1.15rem 1.25rem;
}

.har-property-card__title {
	margin: 0;
	font-size: 1.05rem;
	font-weight: 700;
	line-height: 1.35;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.har-property-card__location,
.har-property-card__price {
	margin: 0;
	font-size: 0.875rem;
	color: #353535;
}

.har-property-card__location {
	display: flex;
	align-items: flex-start;
	gap: 0.35rem;
	line-height: 1.45;
}

.har-property-card__price {
	font-size: 1rem;
	font-weight: 800;
	color: #043C36;
}

.har-property-card__meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.45rem 0.85rem;
	margin: 0.15rem 0 0;
	padding: 0;
	list-style: none;
	font-size: 0.8125rem;
	color: #6b6b6b;
}

.har-property-card__meta li {
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
}

.har-property-card__icon {
	display: inline-flex;
	flex-shrink: 0;
	color: #A79570;
}

.har-property-card__cta {
	margin-top: 0.35rem;
	font-size: 0.75rem;
	font-weight: 700;
	color: #043C36;
}

.har-empty-state {
	margin: 0;
	padding: 2rem 1rem;
	text-align: center;
	color: #6b6b6b;
}

.har-latest-properties__head {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	justify-content: space-between;
	gap: 1rem;
	margin-bottom: 1.5rem;
}

.har-latest-properties__tabs {
	display: grid;
	gap: 0.85rem;
	margin-bottom: 1.75rem;
}

.har-filter-tabs {
	display: inline-flex;
	flex-wrap: wrap;
	border: 1px solid #E5DFD4;
	border-radius: 999px;
	width: fit-content;
	overflow: hidden;
	background: #F0EBE1;
}

.har-filter-tabs__tab {
	appearance: none;
	min-height: 44px;
	padding: 0.55rem 1.2rem;
	border: 0;
	background: transparent;
	color: #353535;
	font: inherit;
	font-size: 0.8125rem;
	font-weight: 600;
	cursor: pointer;
	transition:
		background-color var(--har-motion-fast, 180ms) ease,
		color var(--har-motion-fast, 180ms) ease;
}

.har-filter-tabs__tab.is-active {
	background: #043C36;
	color: #fff;
}

.har-filter-pills {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

.har-latest-properties__results {
	min-height: 12rem;
	transition: opacity var(--har-motion-fast, 180ms) ease;
}

.har-latest-properties__results.is-loading {
	opacity: 0.4;
	pointer-events: none;
}

.har-latest-properties__retry {
	margin-inline-start: 0.5rem;
	border: 0;
	background: none;
	color: #043C36;
	font: inherit;
	font-weight: 700;
	cursor: pointer;
	text-decoration: underline;
}

.har-featured-properties__head {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	justify-content: space-between;
	gap: 1rem;
	margin-bottom: 1.5rem;
}

.har-featured-properties__nav {
	display: flex;
	gap: 0.5rem;
}

.har-slider-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border-radius: 999px;
	border: 1px solid #E5DFD4;
	background: #fff;
	color: #043C36;
	font-size: 1.35rem;
	cursor: pointer;
}

.har-slider-btn:disabled {
	opacity: 0.35;
	cursor: not-allowed;
}

.har-featured-properties__track-wrap {
	overflow: hidden;
	width: 100%;
	--har-slides-visible: 1;
	--har-slide-gap: 1rem;
	--har-slide-step: 100%;
}

@media (min-width: 768px) {
	.har-featured-properties__track-wrap {
		--har-slides-visible: 2;
		--har-slide-step: 50%;
	}
}

@media (min-width: 1024px) {
	.har-featured-properties__track-wrap {
		--har-slides-visible: 3;
		--har-slide-step: 33.333%;
	}
}

.har-featured-properties__track {
	display: flex;
	width: 100%;
	will-change: transform;
	transition: transform 320ms ease;
}

.har-featured-properties__slide {
	box-sizing: border-box;
	flex: 0 0 var(--har-slide-step);
	width: var(--har-slide-step);
	max-width: var(--har-slide-step);
	min-width: 0;
	padding-inline-end: var(--har-slide-gap);
}

.har-featured-properties__slide .har-property-card {
	width: 100%;
	height: 100%;
}

@media (prefers-reduced-motion: reduce) {
	.har-featured-properties__track {
		transition: none;
	}
}

.har-property-archive {
	padding-top: 2.5rem;
	padding-bottom: 4rem;
}

.har-property-archive__header {
	margin-bottom: 1.5rem;
}

.har-property-archive__title {
	margin: 0 0 0.5rem;
	font-size: clamp(1.75rem, 3vw, 2.5rem);
	color: #043C36;
}

.har-property-archive__intro {
	margin: 0 0 0.75rem;
	color: #6b6b6b;
}

.har-property-archive__count,
.har-property-archive__toolbar-count {
	margin: 0;
	font-weight: 700;
	color: #043C36;
}

.har-property-archive__chips {
	display: flex;
	flex-wrap: wrap;
	gap: 0.4rem;
	list-style: none;
	margin: 0.75rem 0 0;
	padding: 0;
}

.har-property-archive__chips li {
	padding: 0.25rem 0.7rem;
	border-radius: 999px;
	background: #F0EBE1;
	font-size: 0.8125rem;
}

.har-property-archive__layout {
	display: grid;
	gap: 1.75rem;
	align-items: start;
}

@media (min-width: 1024px) {
	.har-property-archive__layout {
		grid-template-columns: minmax(16.5rem, 20.5rem) minmax(0, 1fr);
	}

	.har-property-grid--archive {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (min-width: 1280px) {
	.har-property-grid--archive {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

.har-property-archive__filters-toggle {
	display: none;
	width: 100%;
	margin-bottom: 0.75rem;
}

@media (max-width: 1023px) {
	.har-property-archive__filters-toggle {
		display: inline-flex;
	}

	.har-property-archive__filters-panel {
		display: none;
	}

	.har-property-archive__filters.is-open .har-property-archive__filters-panel {
		display: block;
	}
}

.har-property-search--archive .har-property-search__panel {
	border-start-start-radius: 20px;
	box-shadow: 0 8px 24px rgba(26, 31, 30, 0.06);
}

.har-property-search--archive .har-property-search__fields,
.har-property-search--archive .har-property-search__advanced-grid {
	grid-template-columns: 1fr;
}

.har-property-search--archive .har-property-search__btn {
	width: 100%;
}

.har-property-search__reset {
	display: block;
	margin-top: 0.65rem;
	text-align: center;
	color: #043C36;
	font-weight: 700;
	font-size: 0.875rem;
}

.har-property-archive__toolbar {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: end;
	gap: 0.75rem 1.25rem;
	margin-bottom: 1.25rem;
}

.har-property-archive__sort select {
	min-height: 48px;
	min-width: 12rem;
	border: 1px solid #E5DFD4;
	border-radius: 12px;
	background: #FCFBF9;
	padding: 0.5rem 0.75rem;
	font: inherit;
}

.har-property-archive__pagination {
	margin-top: 2rem;
	display: flex;
	flex-wrap: wrap;
	gap: 0.4rem;
}

.har-property-archive__pagination .page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 2.5rem;
	min-height: 2.5rem;
	padding: 0 0.6rem;
	border-radius: 10px;
	border: 1px solid #E5DFD4;
	color: #043C36;
	text-decoration: none;
}

.har-property-archive__pagination .page-numbers.current {
	background: #043C36;
	border-color: #043C36;
	color: #fff;
}

.har-property-archive__empty {
	padding: 2rem 1.25rem;
	border: 1px solid #E5DFD4;
	border-radius: 16px;
	background: #fff;
	text-align: center;
}

.har-property-section__cta {
	display: inline-flex;
	align-items: center;
	font-weight: 700;
	color: #043C36;
	text-decoration: none;
	white-space: nowrap;
}

.har-property-section__cta:hover,
.har-property-section__cta:focus-visible {
	text-decoration: underline;
}

.har-property-section__cta-wrap {
	margin: 0 0 1rem;
}

.har-property-single {
	padding-block: 1.5rem 3.5rem;
	overflow-x: clip;
}

.har-property-single__crumbs {
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem 0.5rem;
	margin-bottom: 1rem;
	font-size: 0.8125rem;
	color: #6b6b6b;
	line-height: 1.5;
}

.har-property-single__crumbs a {
	color: #043C36;
	text-decoration: none;
	font-weight: 600;
}

.har-property-single__top {
	display: flex;
	flex-direction: column;
	gap: 1rem;
	margin-bottom: 1.25rem;
	align-items: stretch;
}

@media (min-width: 768px) {
	.har-property-single {
		padding-block: 2.5rem 4rem;
	}

	.har-property-single__top {
		flex-direction: row;
		flex-wrap: wrap;
		justify-content: space-between;
		gap: 1rem 1.5rem;
		align-items: flex-start;
		margin-bottom: 1.5rem;
	}

	.har-property-single__crumbs {
		margin-bottom: 1.25rem;
		font-size: 0.875rem;
	}
}

.har-property-single__badges {
	display: flex;
	flex-wrap: wrap;
	gap: 0.4rem;
	margin-bottom: 0.75rem;
}

.har-badge--featured {
	background: #A79570;
	color: #fff;
}

.har-badge--type {
	background: #F0EBE1;
	color: #353535;
}

.har-property-single__header {
	min-width: 0;
	flex: 1 1 16rem;
}

.har-property-single__title {
	margin: 0.35rem 0 0.5rem;
	font-size: clamp(1.35rem, 5.2vw, 2.75rem);
	line-height: 1.25;
	overflow-wrap: anywhere;
	word-break: break-word;
}

.har-property-single__location,
.har-property-single__location-text {
	margin: 0 0 0.85rem;
	color: #6b6b6b;
	overflow-wrap: anywhere;
}

.har-property-single__meta-row {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.65rem 1rem;
}

.har-property-single__price {
	margin: 0;
	font-size: clamp(1.15rem, 3.5vw, 1.35rem);
	font-weight: 700;
	color: #043C36;
}

.har-property-copy {
	border: 1px solid #E5DFD4;
	background: #fff;
	border-radius: 999px;
	padding: 0.45rem 0.85rem;
	cursor: pointer;
	font: inherit;
	color: inherit;
	max-width: 100%;
}

.har-property-copy:focus-visible,
.har-property-gallery__hero:focus-visible,
.har-property-gallery__thumb:focus-visible,
.har-lightbox__close:focus-visible,
.har-lightbox__nav:focus-visible,
.har-property-inquiry input:focus-visible {
	outline: 2px solid #043C36;
	outline-offset: 2px;
}

.har-property-share {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	width: 100%;
}

.har-property-share .har-btn-secondary,
.har-property-share .har-property-copy {
	flex: 1 1 9.5rem;
	justify-content: center;
	text-align: center;
	min-height: 2.75rem;
}

.har-property-single__highlights {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0.55rem;
	list-style: none;
	margin: 1rem 0 0;
	padding: 0;
}

.har-property-single__highlights li {
	display: flex;
	flex-direction: column;
	gap: 0.2rem;
	min-width: 0;
	padding: 0.7rem 0.65rem;
	border: 1px solid #E5DFD4;
	border-radius: 12px;
	background: #FCFBF9;
	text-align: center;
}

.har-property-single__highlights span {
	font-size: 0.6875rem;
	color: #6b6b6b;
}

.har-property-single__highlights strong {
	font-size: 0.95rem;
	overflow-wrap: anywhere;
}

.har-property-single__layout {
	display: grid;
	gap: 1.25rem;
	margin-block: 1.25rem 1.75rem;
	align-items: start;
}

@media (min-width: 768px) {
	.har-property-share {
		width: auto;
		max-width: 18rem;
	}

	.har-property-single__highlights {
		display: flex;
		flex-wrap: wrap;
		gap: 0.75rem 1.25rem;
	}

	.har-property-single__highlights li {
		min-width: 4.5rem;
		padding: 0;
		border: 0;
		background: transparent;
		text-align: start;
	}

	.har-property-single__highlights span {
		font-size: 0.75rem;
	}
}

@media (min-width: 1024px) {
	.har-property-single__layout {
		grid-template-columns: minmax(0, 1.7fr) minmax(17rem, 0.85fr);
		gap: 1.75rem;
		margin-block: 1.75rem;
	}

	.har-property-inquiry {
		position: sticky;
		top: 6.5rem;
	}
}

@media (max-width: 1023px) {
	.har-property-single__aside {
		order: -1;
	}
}

.har-property-gallery {
	position: relative;
	margin-bottom: 1.25rem;
	min-width: 0;
}

.har-property-gallery__hero {
	display: block;
	width: 100%;
	padding: 0;
	border: 0;
	background: #F0EBE1;
	border-radius: 14px;
	overflow: hidden;
	cursor: zoom-in;
	aspect-ratio: 4 / 3;
}

.har-property-gallery__hero-img,
.har-property-single__placeholder {
	width: 100%;
	height: 100%;
	border-radius: inherit;
	aspect-ratio: inherit;
	object-fit: cover;
	background: #F0EBE1;
	display: block;
}

.har-property-gallery__nav {
	position: absolute;
	inset-inline: 0.5rem;
	top: 42%;
	display: flex;
	justify-content: space-between;
	pointer-events: none;
}

.har-property-gallery__step {
	pointer-events: auto;
	width: 2.5rem;
	height: 2.5rem;
	border: 0;
	border-radius: 999px;
	background: rgba(4, 60, 54, 0.82);
	color: #fff;
	font-size: 1.35rem;
	line-height: 1;
	cursor: pointer;
}

@media (min-width: 768px) {
	.har-property-gallery {
		margin-bottom: 1.75rem;
	}

	.har-property-gallery__hero,
	.har-property-gallery__hero-img,
	.har-property-single__placeholder {
		aspect-ratio: 16 / 10;
		border-radius: 16px;
	}

	.har-property-gallery__nav {
		inset-inline: 0.75rem;
		top: 38%;
	}

	.har-property-gallery__step {
		width: 2.25rem;
		height: 2.25rem;
	}
}

.har-property-gallery__thumbs {
	display: flex;
	gap: 0.5rem;
	margin-top: 0.75rem;
	overflow-x: auto;
	padding-block: 0.15rem;
	-webkit-overflow-scrolling: touch;
}

.har-property-gallery__thumb {
	flex: 0 0 4.5rem;
	width: 4.5rem;
	height: 3.25rem;
	padding: 0;
	border: 2px solid transparent;
	border-radius: 8px;
	overflow: hidden;
	background: #F0EBE1;
	cursor: pointer;
}

.har-property-gallery__thumb img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.har-property-gallery__thumb.is-active {
	border-color: #043C36;
}

.har-property-single__section {
	margin-bottom: 2rem;
}

.har-property-single__section-title {
	margin: 0 0 0.85rem;
	font-size: 1.25rem;
	color: #043C36;
}

.har-property-single__facts {
	list-style: none;
	margin: 0;
	padding: 1rem;
	border: 1px solid #E5DFD4;
	border-radius: 14px;
	background: #fff;
	display: grid;
	gap: 0.75rem;
}

@media (min-width: 640px) {
	.har-property-single__facts {
		grid-template-columns: 1fr 1fr;
		padding: 1.25rem;
		border-radius: 16px;
		gap: 0.85rem;
	}
}

.har-property-single__facts li {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 0.75rem 1rem;
	font-size: 0.875rem;
	padding-bottom: 0.65rem;
	border-bottom: 1px solid #F0EBE1;
}

.har-property-single__facts li:last-child {
	padding-bottom: 0;
	border-bottom: 0;
}

@media (min-width: 640px) {
	.har-property-single__facts li {
		font-size: 0.9rem;
		padding-bottom: 0;
		border-bottom: 0;
	}
}

.har-property-single__facts span {
	color: #6b6b6b;
	flex: 1 1 auto;
}

.har-property-single__facts strong {
	flex: 0 1 auto;
	text-align: end;
	overflow-wrap: anywhere;
}

.har-property-desc.is-collapsed:not(.is-open) .har-property-desc__inner {
	max-height: 12.5rem;
	overflow: hidden;
	mask-image: linear-gradient(#000 60%, transparent);
}

.har-property-desc__inner {
	transition: max-height 280ms ease;
}

.har-property-desc__toggle {
	margin-top: 0.75rem;
	border: 0;
	background: none;
	color: #043C36;
	font-weight: 700;
	cursor: pointer;
	padding: 0;
}

.har-property-desc__less {
	display: none;
}

.har-property-desc.is-open .har-property-desc__more {
	display: none;
}

.har-property-desc.is-open .har-property-desc__less {
	display: inline;
}

.har-property-amenities {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(9rem, 1fr));
	gap: 0.65rem 0.85rem;
	list-style: none;
	margin: 0;
	padding: 0;
}

@media (min-width: 640px) {
	.har-property-amenities {
		grid-template-columns: repeat(auto-fill, minmax(10.5rem, 1fr));
		gap: 0.65rem 1rem;
	}
}

.har-property-amenities li {
	position: relative;
	padding-inline-start: 1.15rem;
}

.har-property-amenities li::before {
	content: "";
	position: absolute;
	inset-inline-start: 0;
	top: 0.45em;
	width: 0.45rem;
	height: 0.45rem;
	border-radius: 999px;
	background: #A79570;
}

.har-property-tour {
	position: relative;
	border-radius: 16px;
	overflow: hidden;
	background: #111;
	aspect-ratio: 16 / 9;
}

.har-property-tour iframe,
.har-property-tour video {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	border: 0;
}

.har-property-inquiry {
	padding: 1.15rem;
	border: 1px solid #E5DFD4;
	border-radius: 16px;
	background: #fff;
	box-shadow: 0 8px 24px rgba(26, 31, 30, 0.06);
}

@media (min-width: 768px) {
	.har-property-inquiry {
		padding: 1.35rem;
	}
}

.har-property-inquiry__wa {
	margin: 0 0 1rem;
}

.har-property-inquiry__wa .har-btn-primary,
.har-property-inquiry__submit {
	width: 100%;
}

.har-property-inquiry__form {
	display: grid;
	gap: 0.85rem;
}

.har-property-inquiry label {
	display: grid;
	gap: 0.35rem;
	font-size: 0.875rem;
}

.har-property-inquiry input {
	width: 100%;
	max-width: 100%;
	border: 1px solid #E5DFD4;
	border-radius: 10px;
	padding: 0.75rem 0.85rem;
	font: inherit;
	background: #FCFBF9;
	box-sizing: border-box;
}

.har-property-inquiry__feedback {
	margin: 0;
	font-size: 0.875rem;
}

.har-property-inquiry__feedback.is-success {
	color: #043C36;
}

.har-property-inquiry__feedback.is-error {
	color: #8a1f1f;
}

.har-property-similar {
	margin-top: 1rem;
}

.har-lightbox {
	position: fixed;
	inset: 0;
	z-index: 80;
	display: grid;
	place-items: center;
}

.har-lightbox[hidden] {
	display: none !important;
}

.har-lightbox__backdrop {
	position: absolute;
	inset: 0;
	background: rgba(4, 60, 54, 0.78);
}

.har-lightbox__dialog {
	position: relative;
	z-index: 1;
	max-width: min(92vw, 1100px);
	max-height: 90vh;
}

.har-lightbox__img {
	display: block;
	max-width: 92vw;
	max-height: 82vh;
	object-fit: contain;
	border-radius: 8px;
}

.har-lightbox__close,
.har-lightbox__nav {
	position: absolute;
	border: 0;
	background: rgba(255, 255, 255, 0.92);
	color: #043C36;
	width: 2.5rem;
	height: 2.5rem;
	border-radius: 999px;
	cursor: pointer;
	font-size: 1.5rem;
	line-height: 1;
}

.har-lightbox__close {
	top: 0.75rem;
	inset-inline-end: 0.75rem;
	z-index: 2;
}

.har-lightbox__prev {
	inset-inline-start: 0.5rem;
	top: 50%;
	transform: translateY(-50%);
}

.har-lightbox__next {
	inset-inline-end: 0.5rem;
	top: 50%;
	transform: translateY(-50%);
}

@media (min-width: 768px) {
	.har-lightbox__close {
		top: -0.5rem;
		inset-inline-end: -0.5rem;
	}

	.har-lightbox__prev {
		inset-inline-start: -0.75rem;
	}

	.har-lightbox__next {
		inset-inline-end: -0.75rem;
	}
}

body.har-lightbox-open {
	overflow: hidden;
}

@media (prefers-reduced-motion: reduce) {

	.har-property-desc__inner,
	.har-property-gallery__hero-img,
	.har-pill-tab,
	.har-filter-tabs__tab,
	.har-latest-properties__results,
	.har-customer-reviews__track {
		transition: none;
	}
}

.har-customer-reviews__head {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	justify-content: space-between;
	gap: 1rem;
	margin-bottom: 1.5rem;
}

.har-customer-reviews__nav {
	display: flex;
	gap: 0.5rem;
}

.har-customer-reviews__track-wrap {
	overflow: hidden;
	width: 100%;
	--har-review-step: 100%;
}

@media (min-width: 768px) {
	.har-customer-reviews__track-wrap {
		--har-review-step: 50%;
	}
}

@media (min-width: 1024px) {
	.har-customer-reviews__track-wrap {
		--har-review-step: 33.333%;
	}
}

.har-customer-reviews__track {
	display: flex;
	width: 100%;
	will-change: transform;
	transition: transform 280ms ease;
}

.har-customer-reviews__slide {
	box-sizing: border-box;
	flex: 0 0 var(--har-review-step);
	width: var(--har-review-step);
	max-width: var(--har-review-step);
	min-width: 0;
	padding-inline-end: 1rem;
}

.har-customer-reviews__single {
	max-width: 36rem;
	margin-inline: auto;
}

.har-review-card {
	display: flex;
	flex-direction: column;
	height: 100%;
	margin: 0;
	padding: 1.35rem 1.4rem;
	border: 1px solid #E5DFD4;
	border-radius: 16px;
	background: #fff;
	box-shadow: 0 8px 24px rgba(26, 31, 30, 0.05);
}

.har-review-card__stars {
	display: flex;
	align-items: center;
	gap: 0.15rem;
	margin-bottom: 0.85rem;
	color: #A79570;
}

.har-review-card__star {
	display: inline-flex;
	color: #E5DFD4;
}

.har-review-card__star.is-filled {
	color: #A79570;
}

.har-review-card__body p {
	margin: 0 0 1.1rem;
	color: #353535;
	line-height: 1.75;
}

.har-review-card__footer {
	display: flex;
	align-items: center;
	gap: 0.75rem;
}

.har-review-card__portrait {
	flex-shrink: 0;
	width: 3.25rem;
	height: 3.25rem;
	border-radius: 999px;
	object-fit: cover;
	background: #F0EBE1;
}

.har-review-card__name {
	font-style: normal;
	font-weight: 700;
	color: #043C36;
}

.har-review-card__context,
.har-review-card__date,
.har-review-card__rating {
	margin: 0.15rem 0 0;
	font-size: 0.8125rem;
	color: #6b6b6b;
}

.har-hero__search {
	margin-top: 2rem;
	position: relative;
	z-index: 2;
	width: 100%;
}

.har-hero__categories {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 1rem;
	width: 100%;
	margin-top: 1.75rem;
}

.har-hero__categories-label {
	margin: 0;
	color: #ffffff;
	font-size: 0.9375rem;
	font-weight: 600;
	line-height: 1.4;
	text-align: center;
}

.har-hero__category-list {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 1.5rem 2.25rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.har-hero__category {
	display: inline-flex;
	align-items: center;
	gap: 0.75rem;
	color: #ffffff;
	text-decoration: none;
	font-size: 0.9375rem;
	font-weight: 600;
	line-height: 1.2;
	transition: color 220ms ease;
}

.har-hero__category-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 3.5rem;
	height: 3.5rem;
	border-radius: 999px;
	background: #ffffff;
	color: #1a1f1e;
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.18);
	transition: transform 220ms ease, box-shadow 220ms ease;
}

.har-hero__category:hover,
.har-hero__category:focus-visible {
	color: #ffffff;
}

.har-hero__category:hover .har-hero__category-icon,
.har-hero__category:focus-visible .har-hero__category-icon {
	transform: translateY(-2px);
	box-shadow: 0 12px 28px rgba(0, 0, 0, 0.26);
}

.har-hero__category:focus-visible {
	outline: 2px solid #ffffff;
	outline-offset: 4px;
	border-radius: 999px;
}

@media (prefers-reduced-motion: reduce) {

	.har-hero__category,
	.har-hero__category-icon {
		transition: none;
	}

	.har-hero__category:hover .har-hero__category-icon,
	.har-hero__category:focus-visible .har-hero__category-icon {
		transform: none;
	}
}

.har-hero__gradient {
	background: linear-gradient(0deg, #000000b3, #00000040);
}

.har-services__grid {
	display: grid;
	gap: 1.5rem;
	grid-template-columns: 1fr;
}

@media (min-width: 768px) {
	.har-services__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (min-width: 1200px) {
	.har-services__grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

.har-service-card {
	display: flex;
	flex-direction: column;
	min-width: 0;
	overflow: hidden;
	border: 1px solid #E5DFD4;
	border-radius: 16px;
	background: #ffffff;
	color: inherit;
	text-decoration: none;
	box-shadow: 0 8px 24px rgba(26, 31, 30, 0.05);
	transition: transform 220ms ease, box-shadow 220ms ease, border-color 220ms ease;
}

a.har-service-card:hover,
a.har-service-card:focus-visible {
	border-color: color-mix(in srgb, #043C36 22%, #E5DFD4);
	box-shadow: 0 16px 36px rgba(26, 31, 30, 0.10);
	transform: translateY(-4px);
	color: inherit;
}

a.har-service-card:focus-visible {
	outline: 2px solid #043C36;
	outline-offset: 3px;
}

.har-service-card__media {
	position: relative;
	aspect-ratio: 4 / 3;
	overflow: hidden;
	background: #F0EBE1;
}

.har-service-card__img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 280ms ease;
}

a.har-service-card:hover .har-service-card__img,
a.har-service-card:focus-visible .har-service-card__img {
	transform: scale(1.04);
}

.har-service-card__placeholder {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	color: #043C36;
	background:
		linear-gradient(180deg, rgba(4, 60, 54, 0.06), rgba(167, 149, 112, 0.12));
}

.har-service-card__body {
	display: flex;
	flex-direction: column;
	flex: 1 1 auto;
	padding: 1.2rem 1.25rem 1.35rem;
}

.har-service-card__title {
	margin: 0 0 0.55rem;
	font-size: 1.0625rem;
	font-weight: 700;
	line-height: 1.35;
	color: #043C36;
}

.har-service-card__text {
	margin: 0 0 1.1rem;
	flex: 1 1 auto;
	font-size: 0.875rem;
	line-height: 1.75;
	color: #353535;
}

.har-service-card__cta {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	font-size: 0.8125rem;
	font-weight: 700;
	color: #A79570;
	transition: gap 220ms ease, color 220ms ease;
}

a.har-service-card:hover .har-service-card__cta,
a.har-service-card:focus-visible .har-service-card__cta {
	gap: 0.65rem;
	color: #043C36;
}

html[dir="rtl"] .har-service-card__cta span {
	display: inline-block;
	transform: scaleX(-1);
}

.har-page-header {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	display: flex;
	align-items: flex-end;
	color: #ffffff;
	background: #043C36;
}

.har-page-header--editorial {
	min-height: clamp(22rem, 46vh, 30rem);
	padding-block: 7.5rem 3.25rem;
}

.har-page-header--compact {
	min-height: clamp(14.5rem, 28vh, 18.5rem);
	padding-block: 12.75rem 2.25rem;
}

.har-page-header__bg {
	position: absolute;
	inset: 0;
	z-index: 0;
}

.har-page-header__photo {
	position: absolute;
	inset: 0;
	background-position: center 38%;
	background-size: cover;
	background-repeat: no-repeat;
	transform: scale(1.02);
}

.har-page-header__overlay {
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(4, 60, 54, 0.28) 0%, rgba(4, 60, 54, 0.42) 48%, rgba(4, 60, 54, 0.78) 100%), linear-gradient(90deg, rgba(4, 60, 54, 0.78) 0%, rgba(4, 60, 54, 0.42) 52%, rgba(4, 60, 54, 0.18) 100%);
}

html[dir="rtl"] .har-page-header__overlay {
	background: linear-gradient(180deg, rgb(0 0 0 / 28%) 0%, rgba(4, 60, 54, 0.42) 48%, rgb(0 0 0 / 78%) 100%), linear-gradient(270deg, rgb(0 0 0 / 55%) 0%, rgb(0 0 0 / 42%) 52%, rgb(0 0 0 / 18%) 100%);
}

.har-page-header:not(.has-image) .har-page-header__overlay {
	background:
		radial-gradient(ellipse at 18% 20%, rgba(167, 149, 112, 0.18), transparent 46%),
		linear-gradient(165deg, #0A524A 0%, #043C36 55%, #032E29 100%);
}

html[dir="rtl"] .har-page-header:not(.has-image) .har-page-header__overlay {
	background:
		radial-gradient(ellipse at 82% 20%, rgba(167, 149, 112, 0.18), transparent 46%),
		linear-gradient(195deg, #0A524A 0%, #043C36 55%, #032E29 100%);
}

.har-page-header__inner {
	position: relative;
	z-index: 1;
	width: 100%;
}

.har-page-header__cluster {
	position: relative;
	max-width: 40rem;
	padding-inline-start: 1.15rem;
}

.har-page-header--center .har-page-header__inner {
	display: flex;
	justify-content: center;
	text-align: center;
}

.har-page-header--center .har-page-header__cluster {
	padding-inline-start: 0;
	margin-inline: auto;
}

.har-page-header--start .har-page-header__cluster::before {
	content: "";
	position: absolute;
	inset-inline-start: 0;
	top: 0.15rem;
	bottom: 0.15rem;
	width: 2px;
	background: #A79570;
}

.har-page-header__crumbs {
	margin: 0 0 1rem;
}

.har-page-header__crumbs ol {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.25rem 0.15rem;
	margin: 0;
	padding: 0;
	list-style: none;
	font-size: 0.75rem;
	color: rgba(255, 255, 255, 0.7);
}

.har-page-header__crumbs li:not(:last-child)::after {
	content: "/";
	margin-inline: 0.45rem;
	color: rgba(255, 255, 255, 0.38);
}

.har-page-header__crumbs a {
	color: rgba(255, 255, 255, 0.86);
	text-decoration: none;
}

.har-page-header__crumbs a:hover,
.har-page-header__crumbs a:focus-visible {
	color: #ffffff;
}

.har-page-header__crumbs a:focus-visible {
	outline: 2px solid #ffffff;
	outline-offset: 3px;
}

.har-page-header__eyebrow {
	margin: 0 0 0.7rem;
	font-size: 0.6875rem;
	font-weight: 700;
	letter-spacing: 0.16em;
	color: #C4B596;
}

.har-page-header__title {
	margin: 0;
	font-size: clamp(1.85rem, 4.2vw, 3.15rem);
	font-weight: 800;
	letter-spacing: -0.035em;
	line-height: 1.15;
	color: #ffffff;
}

.har-page-header--compact .har-page-header__title {
	font-size: clamp(1.55rem, 3.2vw, 2.35rem);
}

.har-page-header__desc {
	margin-top: 1rem;
	max-width: 34rem;
	font-size: clamp(0.9375rem, 1.3vw, 1.0625rem);
	line-height: 1.75;
	color: rgba(255, 255, 255, 0.82);
}

.har-page-header__desc p {
	margin: 0;
}

.har-page-header__desc p+p {
	margin-top: 0.65rem;
}

.har-page-header__cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 2.85rem;
	margin-top: 1.35rem;
	padding: 0.7rem 1.35rem;
	border: 1px solid rgba(255, 255, 255, 0.38);
	border-radius: 12px;
	color: #ffffff;
	font-size: 0.8125rem;
	font-weight: 700;
	text-decoration: none;
	transition: background 220ms ease, color 220ms ease, border-color 220ms ease;
}

.har-page-header__cta:hover,
.har-page-header__cta:focus-visible {
	background: #ffffff;
	border-color: #ffffff;
	color: #043C36;
}

.har-page-header__cta:focus-visible {
	outline: 2px solid #ffffff;
	outline-offset: 3px;
}

@media (max-width: 640px) {
	.har-page-header--editorial {
		padding-block: 6.5rem 2.5rem;
		min-height: 18.5rem;
	}

	.har-page-header--compact {
		padding-block: 6.25rem 1.85rem;
	}
}

@media (prefers-reduced-motion: reduce) {
	.har-page-header__photo {
		transform: none;
	}

	.har-page-header__cta {
		transition: none;
	}
}

@media (prefers-reduced-motion: reduce) {

	.har-service-card,
	.har-service-card__img,
	.har-service-card__cta {
		transition: none;
	}

	a.har-service-card:hover,
	a.har-service-card:focus-visible {
		transform: none;
	}

	a.har-service-card:hover .har-service-card__img,
	a.har-service-card:focus-visible .har-service-card__img {
		transform: none;
	}
}

.har-mv__layout {
	display: grid;
	gap: 2.25rem;
}

@media (min-width: 1024px) {
	.har-mv__layout {
		grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.2fr);
		gap: 3.5rem 4rem;
		align-items: start;
	}
}

.har-mv__intro {
	max-width: 28rem;
}

.har-mv__intro .har-section-intro {
	margin-bottom: 0;
}

.har-mv__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.25rem;
}

@media (min-width: 768px) and (max-width: 1023px) {
	.har-mv__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		align-items: stretch;
	}
}

@media (min-width: 1024px) {
	.har-mv__grid {
		gap: 1.5rem;
	}

	.har-mv-card--vision {
		margin-inline-start: 2.5rem;
	}
}

.har-mv-card {
	position: relative;
	display: flex;
	flex-direction: column;
	min-width: 0;
	overflow: hidden;
	padding: 1.85rem 1.7rem 1.9rem;
	border-radius: 16px;
	background: #ffffff;
	border: 1px solid #E5DFD4;
	box-shadow: 0 8px 24px rgba(26, 31, 30, 0.05);
	transition: border-color 220ms ease, box-shadow 220ms ease;
}

.har-mv-card--vision {
	background: #043C36;
	border-color: #043C36;
	color: #ffffff;
	box-shadow: 0 16px 36px rgba(4, 60, 54, 0.22);
}

.har-mv-card:hover {
	border-color: color-mix(in srgb, #A79570 35%, #E5DFD4);
	box-shadow: 0 14px 32px rgba(26, 31, 30, 0.08);
}

.har-mv-card--vision:hover {
	border-color: #A79570;
	box-shadow: 0 18px 40px rgba(4, 60, 54, 0.28);
}

.har-mv-card__num {
	position: absolute;
	inset-block-start: 0.85rem;
	inset-inline-end: 1.1rem;
	font-size: clamp(2.4rem, 5vw, 3.4rem);
	font-weight: 800;
	letter-spacing: -0.06em;
	line-height: 1;
	color: rgba(4, 60, 54, 0.08);
	pointer-events: none;
	user-select: none;
}

.har-mv-card--vision .har-mv-card__num {
	color: rgba(255, 255, 255, 0.08);
}

.har-mv-card__top {
	display: flex;
	align-items: center;
	gap: 0.85rem;
	margin-bottom: 1.15rem;
}

.har-mv-card__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.75rem;
	height: 2.75rem;
	flex-shrink: 0;
	border-radius: 999px;
	background: color-mix(in srgb, #A79570 16%, white);
	color: #043C36;
}

.har-mv-card--vision .har-mv-card__icon {
	background: color-mix(in srgb, #A79570 22%, #043C36);
	color: #C4B596;
}

.har-mv-card__label {
	margin: 0;
	font-size: 0.6875rem;
	font-weight: 700;
	letter-spacing: 0.12em;
	color: #A79570;
}

.har-mv-card--vision .har-mv-card__label {
	color: #C4B596;
}

.har-mv-card__title {
	margin: 0 0 0.85rem;
	max-width: 12ch;
	font-size: clamp(1.45rem, 2.2vw, 1.85rem);
	font-weight: 800;
	line-height: 1.25;
	letter-spacing: -0.03em;
	color: #043C36;
}

.har-mv-card--vision .har-mv-card__title {
	color: #ffffff;
}

.har-mv-card__body {
	margin: 0;
	font-size: 0.9375rem;
	line-height: 1.8;
	color: #353535;
}

.har-mv-card--vision .har-mv-card__body {
	color: rgba(255, 255, 255, 0.82);
}

.har-mv-card__quote {
	position: relative;
	margin: 1.15rem 0 0;
	padding: 0.35rem 0 0 0;
	border: 0;
}

.har-mv-card__mark {
	display: block;
	margin-bottom: 0.15rem;
	font-size: 2rem;
	line-height: 1;
	color: #A79570;
}

.har-mv-card__quote p {
	margin: 0;
	font-size: 1.05rem;
	font-weight: 600;
	line-height: 1.65;
	letter-spacing: -0.015em;
	color: #043C36;
}

.har-mv-card--vision .har-mv-card__quote p {
	color: #FCFBF9;
}

@media (prefers-reduced-motion: reduce) {
	.har-mv-card {
		transition: none;
	}
}

/* ─── Authorized Agents ─── */
.har-agents-archive {
	padding: 2.5rem 0 4rem;
}

.har-agents-archive__count {
	margin: 0 0 1.5rem;
	font-size: 0.9375rem;
	font-weight: 600;
	color: #6b6b6b;
}

.har-agents-grid {
	display: grid;
	gap: 1.25rem;
	grid-template-columns: 1fr;
}

@media (min-width: 640px) {
	.har-agents-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (min-width: 1024px) {
	.har-agents-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 1.5rem;
	}
}

.har-agent-card {
	margin: 0;
	border: 1px solid #E5DFD4;
	border-radius: 20px;
	background: #fff;
	overflow: hidden;
	transition:
		border-color 240ms ease,
		box-shadow 240ms ease,
		transform 240ms ease;
}

.har-agent-card:hover,
.har-agent-card:focus-within {
	border-color: color-mix(in srgb, #043C36 22%, #E5DFD4);
	box-shadow: 0 14px 36px rgba(26, 31, 30, 0.08);
	transform: translateY(-2px);
}

.har-agent-card__link {
	display: flex;
	flex-direction: column;
	height: 100%;
	color: inherit;
	text-decoration: none;
}

.har-agent-card__link:focus-visible {
	outline: 2px solid #043C36;
	outline-offset: 3px;
}

.har-agent-card__media {
	position: relative;
	aspect-ratio: 4 / 5;
	background: #F0EBE1;
	overflow: hidden;
}

.har-agent-card__img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 420ms ease;
}

.har-agent-card:hover .har-agent-card__img,
.har-agent-card:focus-within .har-agent-card__img {
	transform: scale(1.04);
}

.har-agent-card__placeholder {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	color: #A79570;
}

.har-agent-card__body {
	display: flex;
	flex-direction: column;
	gap: 0.4rem;
	padding: 1.15rem 1.2rem 1.25rem;
	flex: 1 1 auto;
}

.har-agent-card__name {
	margin: 0;
	font-size: 1.125rem;
	font-weight: 800;
	letter-spacing: -0.02em;
	color: #043C36;
	line-height: 1.35;
}

.har-agent-card__role {
	margin: 0;
	font-size: 0.875rem;
	font-weight: 600;
	color: #A79570;
}

.har-agent-card__excerpt {
	margin: 0.25rem 0 0;
	font-size: 0.875rem;
	line-height: 1.55;
	color: #6b6b6b;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.har-agent-card__cta {
	margin-top: auto;
	padding-top: 0.85rem;
	font-size: 0.8125rem;
	font-weight: 700;
	color: #043C36;
}

.har-agents-empty {
	max-width: 36rem;
	margin: 1rem auto 0;
	padding: 2.5rem 1.5rem;
	border: 1px dashed #E5DFD4;
	border-radius: 20px;
	background: #FCFBF9;
	text-align: center;
}

.har-agents-empty__title {
	margin: 0 0 0.5rem;
	font-size: 1.25rem;
	font-weight: 800;
	color: #043C36;
}

.har-agents-empty__text {
	margin: 0;
	font-size: 0.9375rem;
	line-height: 1.6;
	color: #6b6b6b;
}

.har-agent-single {
	padding: 2rem 0 4rem;
}

.har-agent-single__layout {
	display: grid;
	gap: 2rem;
}

@media (min-width: 900px) {
	.har-agent-single__layout {
		grid-template-columns: minmax(16rem, 20rem) minmax(0, 1fr);
		gap: 2.5rem;
		align-items: start;
	}
}

.har-agent-single__aside {
	display: flex;
	flex-direction: column;
	gap: 1.25rem;
	padding: 1.25rem;
	border: 1px solid #E5DFD4;
	border-radius: 20px;
	background: #fff;
}

.har-agent-single__portrait {
	aspect-ratio: 4 / 5;
	border-radius: 16px;
	overflow: hidden;
	background: #F0EBE1;
}

.har-agent-single__img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.har-agent-single__placeholder {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	min-height: 16rem;
	color: #A79570;
}

.har-agent-single__name {
	margin: 0;
	font-size: clamp(1.35rem, 3vw, 1.65rem);
	font-weight: 800;
	letter-spacing: -0.02em;
	color: #043C36;
	line-height: 1.3;
}

.har-agent-single__role {
	margin: 0.35rem 0 0;
	font-size: 0.9375rem;
	font-weight: 600;
	color: #A79570;
}

.har-agent-single__contact-heading,
.har-agent-single__section-title {
	margin: 0 0 0.85rem;
	font-size: 1rem;
	font-weight: 800;
	color: #043C36;
}

.har-agent-single__contact-list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 0.65rem;
}

.har-agent-contact-btn {
	display: flex;
	flex-direction: column;
	gap: 0.15rem;
	padding: 0.75rem 0.9rem;
	border: 1px solid #E5DFD4;
	border-radius: 14px;
	background: #FCFBF9;
	color: inherit;
	text-decoration: none;
	transition:
		border-color 200ms ease,
		background-color 200ms ease,
		transform 200ms ease;
}

.har-agent-contact-btn:hover,
.har-agent-contact-btn:focus-visible {
	border-color: #A79570;
	background: #fff;
	outline: none;
}

.har-agent-contact-btn:focus-visible {
	box-shadow: 0 0 0 3px color-mix(in srgb, #A79570 35%, transparent);
}

.har-agent-contact-btn__label {
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: #A79570;
}

.har-agent-contact-btn__value {
	font-size: 0.9375rem;
	font-weight: 600;
	color: #043C36;
	word-break: break-word;
}

.har-agent-contact-btn--whatsapp:hover,
.har-agent-contact-btn--whatsapp:focus-visible {
	border-color: #25D366;
}

.har-agent-single__back {
	margin: 0.25rem 0 0;
}

.har-agent-single__back a {
	font-size: 0.875rem;
	font-weight: 700;
	color: #043C36;
	text-decoration: none;
}

.har-agent-single__back a:hover,
.har-agent-single__back a:focus-visible {
	color: #A79570;
	outline: none;
}

.har-agent-single__main {
	display: flex;
	flex-direction: column;
	gap: 1.75rem;
}

.har-agent-single__bio,
.har-agent-single__list-block {
	padding: 1.35rem 1.4rem;
	border: 1px solid #E5DFD4;
	border-radius: 20px;
	background: #fff;
}

.har-agent-single__content>*:first-child {
	margin-top: 0;
}

.har-agent-single__content>*:last-child {
	margin-bottom: 0;
}

.har-agent-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.har-agent-chips li {
	padding: 0.4rem 0.75rem;
	border-radius: 999px;
	background: #F0EBE1;
	font-size: 0.8125rem;
	font-weight: 600;
	color: #353535;
}

@media (prefers-reduced-motion: reduce) {

	.har-agent-card,
	.har-agent-card__img,
	.har-agent-contact-btn {
		transition: none;
	}

	.har-agent-card:hover,
	.har-agent-card:focus-within {
		transform: none;
	}

	.har-agent-card:hover .har-agent-card__img,
	.har-agent-card:focus-within .har-agent-card__img {
		transform: none;
	}
}