:root {
	--rh-red: #b11c1c;
	--rh-red-glow: #d32f2f;
	--rh-red-dark: #8e1f1f;
	--rh-ink: #0f172a;
	--rh-ink-soft: #1e293b;
	--rh-slate: #64748b;
	--rh-slate-light: #94a3b8;
	--rh-mist: #f8fafc;
	--rh-border: #e2e8f0;
	--rh-white: #ffffff;
	--rh-shell: min(95vw, 1280px);
	--rh-heading-font: Besley, Georgia, serif;
}

* {
	box-sizing: border-box;
}

html.rh-menu-open,
html.rh-menu-open body {
	overflow: hidden;
}

body {
	margin: 0;
	background: var(--rh-white);
	color: var(--rh-ink);
	font-family: Alata, system-ui, sans-serif;
}

h1,
h2,
h3,
h4,
h5,
h6,
.has-dancing-script-font-family,
.has-amsterdam-two-font-family,
body [style*="Dancing Script"],
body [style*="Amsterdam Two"] {
	font-family: var(--rh-heading-font) !important;
}

body .wp-site-blocks > * {
	margin-block-start: 0;
}

a {
	color: inherit;
	text-decoration: none;
}

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

.rh-icon {
	display: block;
	width: 1em;
	height: 1em;
	flex: 0 0 auto;
	max-width: none;
}

.rh-icon--stroke {
	fill: none;
	stroke: currentColor;
	stroke-width: 2;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.rh-icon--brand {
	fill: currentColor;
}

.rh-icon--brand.rh-icon--stroke {
	fill: none;
}

.screen-reader-text {
	position: absolute !important;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.rh-shell {
	width: var(--rh-shell);
	margin-inline: auto;
}

	.rh-site-header {
		position: sticky;
		top: 0;
		z-index: 9990;
		box-shadow: 0 1px 0 rgba(15, 23, 42, 0.08);
	}

	.admin-bar .rh-site-header {
		top: 32px;
	}

	.rh-promo-bar {
		background: linear-gradient(135deg, var(--rh-red) 0%, var(--rh-red-glow) 100%);
		color: var(--rh-white);
	}

	.rh-promo-bar__inner {
		position: relative;
		display: flex;
		align-items: center;
		justify-content: center;
		min-height: 42px;
		padding: 8px 42px;
		text-align: center;
	}

	.rh-promo-bar__link {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		gap: 12px;
		min-width: 0;
		color: var(--rh-white);
		font-size: 12px;
		font-weight: 800;
		letter-spacing: 1.2px;
		line-height: 1.25;
		text-transform: uppercase;
	}

	.rh-promo-bar__link strong {
		font-weight: 900;
	}

	.rh-promo-bar__link span {
		font-weight: 700;
		letter-spacing: 0.6px;
	}

	.rh-promo-bar__link em {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		min-height: 24px;
		padding: 0 12px;
		border-radius: 999px;
		background: rgba(255, 255, 255, 0.18);
		font-style: normal;
		white-space: nowrap;
	}

	.rh-promo-bar__link:hover em {
		background: var(--rh-white);
		color: var(--rh-red);
	}

	.rh-promo-bar__close {
		position: absolute;
		top: 50%;
		right: 0;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 30px;
		height: 30px;
		border: 0;
		border-radius: 999px;
		background: transparent;
		color: var(--rh-white);
		font: inherit;
		font-size: 20px;
		line-height: 1;
		cursor: pointer;
		transform: translateY(-50%);
		transition: background 180ms ease;
	}

	.rh-promo-bar__close:hover,
	.rh-promo-bar__close:focus-visible {
		background: rgba(255, 255, 255, 0.16);
		outline: none;
	}

	.rh-topbar {
		background: var(--rh-ink);
		color: var(--rh-white);
	font-size: 12px;
	font-weight: 700;
	line-height: 1;
}

.rh-topbar__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	min-height: 29px;
}

.rh-topbar__booking {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	min-width: 0;
	transition: color 180ms ease;
}

.rh-topbar__booking .rh-icon {
	width: 14px;
	height: 14px;
	color: var(--rh-red);
}

.rh-topbar__booking:hover {
	color: var(--rh-red);
}

.rh-socials {
	display: flex;
	align-items: center;
	gap: 8px;
}

.rh-social-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	border-radius: 999px;
	color: var(--rh-white);
	font-size: 10px;
	font-weight: 800;
	text-transform: uppercase;
	transition: background 180ms ease, color 180ms ease, transform 180ms ease;
}

.rh-social-link .rh-icon {
	width: 14px;
	height: 14px;
}

.rh-topbar .rh-social-link:hover {
	color: var(--rh-red);
}

.rh-socials--footer .rh-social-link,
.rh-footer-brand .rh-social-link {
	background: var(--rh-ink-soft);
}

.rh-socials--footer .rh-social-link:hover,
.rh-footer-brand .rh-social-link:hover {
	background: var(--rh-red);
	color: var(--rh-white);
	transform: translateY(-3px);
}

.rh-mainbar {
	background: rgba(255, 255, 255, 0.86);
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
}

.rh-mainbar__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	min-height: 80px;
	gap: 24px;
}

.rh-brand-lockup {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	flex: 0 0 auto;
	min-width: 0;
	color: #000;
}

.rh-brand-lockup__logo {
	width: 50px;
	height: 50px;
	object-fit: contain;
	flex: 0 0 auto;
}

.rh-brand-lockup__name {
	display: block;
	width: 130px;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.2;
	text-transform: uppercase;
}

.rh-desktop-nav {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: clamp(14px, 2vw, 28px);
	margin-inline: auto;
	color: var(--rh-slate);
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

.rh-desktop-nav a {
	padding-block: 30px;
	transition: color 180ms ease;
	white-space: nowrap;
}

.rh-desktop-nav a:hover {
	color: var(--rh-red);
}

.rh-header-actions {
	display: inline-flex;
	align-items: center;
	gap: 18px;
	flex: 0 0 auto;
}

.rh-account-link {
	color: var(--rh-slate-light);
	font-size: 14px;
	letter-spacing: 0.1em;
	transition: color 180ms ease;
}

.rh-account-link:hover {
	color: var(--rh-red);
}

.rh-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border: 0;
	border-radius: 999px;
	background: linear-gradient(135deg, var(--rh-red) 0%, var(--rh-red-glow) 100%);
	color: var(--rh-white);
	font-family: Alata, system-ui, sans-serif;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	line-height: 1.2;
	box-shadow: 0 12px 18px -6px rgba(177, 28, 28, 0);
	transition: transform 180ms ease, box-shadow 180ms ease;
}

.rh-button:hover {
	color: var(--rh-white);
	transform: scale(1.04);
	box-shadow: 0 12px 18px -6px rgba(177, 28, 28, 0.3);
}

.rh-button--small {
	min-height: 36px;
	padding: 9px 24px;
	font-size: 11px;
}

.rh-button--large {
	min-height: 54px;
	padding: 14px 42px;
	font-size: clamp(1rem, 4vw, 1.87rem);
}

.rh-menu-toggle {
	display: none;
	width: 48px;
	height: 48px;
	border: 0;
	background: transparent;
	padding: 8px;
	cursor: pointer;
}

.rh-menu-toggle__line {
	display: block;
	width: 30px;
	height: 2px;
	margin: 6px auto;
	background: var(--rh-ink);
	border-radius: 999px;
}

.rh-mobile-menu[hidden] {
	display: none;
}

.rh-mobile-menu {
	position: fixed;
	inset: 0;
	z-index: 10000;
	display: flex;
	flex-direction: column;
	min-height: 100vh;
	overflow-y: auto;
	background: rgba(255, 255, 255, 0.98);
	color: var(--rh-ink);
}

.rh-mobile-menu__bar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: var(--rh-shell);
	margin-inline: auto;
	min-height: 86px;
}

.rh-mobile-menu__close {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 52px;
	height: 52px;
	border: 0;
	background: transparent;
	color: var(--rh-ink);
	font-size: 50px;
	line-height: 1;
	cursor: pointer;
}

.rh-mobile-menu__nav {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: clamp(12px, 4vh, 22px);
	width: var(--rh-shell);
	margin-inline: auto;
	padding: 24px 0;
	text-align: center;
}

.rh-mobile-menu__nav a {
	color: var(--rh-ink);
	font-size: clamp(1.35rem, 7vw, 1.875rem);
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	transition: color 180ms ease;
}

.rh-mobile-menu__nav a:hover,
.rh-mobile-menu__nav .rh-mobile-menu__account {
	color: var(--rh-red);
}

.rh-mobile-menu__nav::after {
	content: "";
	width: min(260px, 80vw);
	height: 1px;
	background: var(--rh-border);
	margin-top: 4px;
}

.rh-mobile-menu__cta {
	display: flex;
	justify-content: center;
	width: var(--rh-shell);
	margin-inline: auto;
	padding: 0 0 clamp(32px, 8vh, 70px);
}

.rhs-main {
	min-height: 50vh;
}

.rhs-main .wp-block-post-content {
	margin-block-start: 0;
}

.rhs-single {
	width: min(100% - 40px, 860px);
	margin-inline: auto;
}

.rhs-single .wp-block-post-title {
	max-width: 860px;
	margin: 0 auto 24px;
	color: var(--rh-ink);
	font-size: 2.85rem;
	font-weight: 700;
	letter-spacing: 0;
	line-height: 1.08;
	text-wrap: balance;
}

.rhs-single .wp-block-post-featured-image,
.rhs-single .wp-block-post-content {
	max-width: 760px;
	margin-inline: auto;
}

.rhs-single .wp-block-post-content {
	color: var(--rh-ink);
	font-size: 1.05rem;
	line-height: 1.75;
}

.rhs-single .wp-block-post-content > * + * {
	margin-block-start: 1.15em;
}

.rhs-single .wp-block-post-content h2,
.rhs-single .wp-block-post-content h3 {
	color: var(--rh-ink);
	font-weight: 700;
	letter-spacing: 0;
	line-height: 1.18;
	text-wrap: balance;
}

.rhs-single .wp-block-post-content h2 {
	margin-block-start: 1.55em;
	font-size: 1.9rem;
}

.rhs-single .wp-block-post-content h3 {
	font-size: 1.35rem;
}

.rhs-single .wp-block-post-content ul,
.rhs-single .wp-block-post-content ol {
	padding-left: 1.35rem;
}

.rhs-single .wp-block-post-content li + li {
	margin-block-start: 0.35rem;
}

.rhs-single .wp-block-table {
	overflow-x: auto;
	border: 1px solid var(--rh-border);
	border-radius: 18px;
}

.rhs-single .wp-block-table table {
	min-width: 620px;
	border-collapse: collapse;
}

.rhs-single .wp-block-table th,
.rhs-single .wp-block-table td {
	padding: 14px 16px;
	border: 1px solid var(--rh-border);
	text-align: left;
	vertical-align: top;
}

.rhs-single .wp-block-table th {
	color: var(--rh-red);
	font-size: 0.74rem;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.rhs-single .wp-block-button__link {
	padding: 13px 22px;
	border-radius: 999px;
	background: var(--rh-red);
	color: var(--rh-white);
	font-size: 0.74rem;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.rh-site-footer {
	background: var(--rh-ink);
	color: var(--rh-slate-light);
	padding-top: 80px;
}

.rh-footer-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 44px;
}

.rh-footer-col h2 {
	margin: 0 0 16px;
	color: var(--rh-red);
	font-family: var(--rh-heading-font);
	font-size: clamp(2.4rem, 5vw, 3.6rem);
	font-weight: 700;
	line-height: 1;
}

.rh-footer-col h2 span {
	color: var(--rh-white);
}

.rh-footer-col h3 {
	margin: 0 0 25px;
	color: var(--rh-red);
	font-size: 10px;
	font-weight: 700;
	letter-spacing: 0.15em;
	line-height: 1.4;
	text-transform: uppercase;
}

.rh-footer-col p {
	margin: 0 0 18px;
	font-size: 14px;
	line-height: 1.65;
}

.rh-footer-col ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.rh-footer-col li {
	margin-bottom: 12px;
	font-size: 14px;
}

.rh-footer-col a {
	color: #cbd5e1;
	transition: color 180ms ease;
}

.rh-footer-col a:hover {
	color: var(--rh-white);
}

.rh-footer-brand p {
	max-width: 34ch;
	margin-bottom: 24px;
}

.rh-footer-contact p {
	display: flex;
	gap: 12px;
	align-items: flex-start;
}

.rh-footer-contact .rh-icon {
	width: 16px;
	height: 16px;
	margin-top: 3px;
	color: var(--rh-slate);
}

.rh-footer-contact__booking a {
	color: var(--rh-white);
	font-weight: 700;
}

.rh-footer-contact__booking .rh-icon {
	color: var(--rh-red);
}

.rh-footer-contact p > span {
	display: inline-block;
	min-width: 0;
}

.rh-footer-bottom {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	margin-top: 56px;
	padding-block: 30px;
	border-top: 1px solid var(--rh-ink-soft);
	color: var(--rh-slate);
	font-size: 10px;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

.rh-footer-bottom p {
	margin: 0;
}

.rh-footer-bottom nav {
	display: flex;
	gap: 20px;
}

.rh-footer-bottom a {
	color: var(--rh-slate-light);
	transition: color 180ms ease;
}

.rh-footer-bottom a:hover {
	color: var(--rh-red);
}

.rh-footer-divider {
	margin-inline: 8px;
}

.rhs-divi-text,
.rhs-divi-image,
.rhs-divi-menu,
.rhs-divi-button,
.rhs-divi-link,
.rhs-divi-icon,
.rhs-divi-social {
	font-family: Alata, system-ui, sans-serif;
}

.rhs-divi-menu {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
}

.rhs-divi-divider {
	width: min(260px, 80vw);
	height: 1px;
	margin: 16px auto;
	border: 0;
	background: var(--rh-border);
}

.font-alata {
	font-family: Alata, system-ui, sans-serif !important;
}

.rh-wrap,
.rh-home-optimized {
	font-family: Alata, sans-serif !important;
	background-color: #ffffff;
	overflow-x: hidden;
	position: relative;
}

.rh-wrap h1,
.rh-wrap h2,
.rh-wrap h3,
.rh-home-optimized h1,
.rh-home-optimized h2,
.rh-home-optimized h3,
.rh-wrap .font-script {
	font-family: var(--rh-heading-font) !important;
	text-transform: none !important;
	font-weight: 700 !important;
	display: block;
	line-height: 1.1 !important;
}

.rh-wrap h1,
.rh-home-optimized h1 {
	font-size: clamp(3.5rem, 12vw, 8rem) !important;
}

.rh-wrap h2,
.rh-home-optimized h2 {
	font-size: clamp(2.5rem, 8vw, 5rem) !important;
}

.rh-wrap h3,
.rh-home-optimized h3 {
	font-size: clamp(1.8rem, 5vw, 3rem) !important;
}

.rh-bg-pattern-dots {
	background-image: radial-gradient(#b11c1c 0.5px, transparent 0.5px);
	background-size: 24px 24px;
	opacity: 0.08;
}

.rh-reveal {
	opacity: 0;
	transform: translateY(30px);
	transition: all 0.8s cubic-bezier(0.22, 1, 0.36, 1);
}

.rh-reveal.active {
	opacity: 1;
	transform: translateY(0);
}

@keyframes rh-float {
	0%,
	100% {
		transform: translateY(0);
	}
	50% {
		transform: translateY(-15px);
	}
}

.rh-animate-float {
	animation: rh-float 6s ease-in-out infinite;
}

.rhs-compat-blog {
	max-width: 1280px;
	margin-inline: auto;
	padding-inline: 24px;
}

.et_pb_blog_posts.et_grid_module {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 30px;
}

.glow-blog article.et_pb_post {
	position: relative !important;
	display: flex !important;
	flex-direction: column !important;
	min-width: 0;
	margin-bottom: 30px !important;
	padding: 30px !important;
	overflow: visible !important;
	background: #f8fafc !important;
	border: 1px solid transparent !important;
	border-radius: 45px !important;
	transition: all 0.5s cubic-bezier(0.22, 1, 0.36, 1) !important;
}

.glow-blog article.et_pb_post:hover {
	background: #ffffff !important;
	border-color: rgba(177, 28, 28, 0.1) !important;
	box-shadow: 0 40px 70px -15px rgba(0, 0, 0, 0.08) !important;
}

.glow-blog .post-meta {
	position: absolute !important;
	top: 15px !important;
	right: 18px !important;
	z-index: 30 !important;
	order: -2 !important;
	margin: 0 !important;
	font-size: 0 !important;
}

.glow-blog .entry-categories a {
	display: inline-block !important;
	padding: 6px 14px !important;
	background: #ffffff !important;
	border: 1px solid rgba(177, 28, 28, 0.1) !important;
	border-radius: 100px !important;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1) !important;
	color: #b11c1c !important;
	font-family: Alata, sans-serif !important;
	font-size: 9px !important;
	font-weight: 700 !important;
	letter-spacing: 1px !important;
	line-height: 1 !important;
	text-transform: uppercase !important;
}

.glow-blog .et_pb_image_container {
	position: relative !important;
	z-index: 10 !important;
	margin-bottom: 24px !important;
	overflow: hidden !important;
	background: #000 !important;
	border-radius: 30px !important;
}

.glow-blog .et_pb_image_container img {
	display: block !important;
	width: 100% !important;
	height: auto !important;
	object-fit: cover !important;
	transition: transform 0.8s cubic-bezier(0.22, 1, 0.36, 1) !important;
}

.glow-blog article.et_pb_post:hover .et_pb_image_container img {
	opacity: 0.9 !important;
	transform: scale(1.1) !important;
}

.glow-blog h2.entry-title {
	margin: 0 0 20px !important;
	font-family: var(--rh-heading-font) !important;
	font-size: 26px !important;
	font-weight: 700 !important;
	line-height: 1.2 !important;
}

.glow-blog h2.entry-title a {
	color: #0f172a !important;
}

.glow-blog .post-content {
	margin-top: auto;
}

	.glow-blog a.more-link {
		display: inline-block !important;
		margin-top: auto !important;
		color: #b11c1c !important;
		font-size: 10px !important;
		font-weight: 700 !important;
		letter-spacing: 2px !important;
		text-transform: uppercase !important;
	}

	.rh-package-fallback {
		padding: 80px 20px;
	}

	.rh-package-fallback__inner {
		width: min(92vw, 860px);
		margin-inline: auto;
	}

	.rh-package-detail {
		max-width: 100vw;
		overflow-x: hidden;
		background: #fff;
		color: #1a1a1a;
		font-family: Alata, system-ui, sans-serif;
	}

	.rh-package-detail h1,
	.rh-package-detail h2,
	.rh-package-detail h3 {
		margin: 0;
		font-family: var(--rh-heading-font);
		font-weight: 700;
		line-height: 1.1;
		letter-spacing: 0;
		text-transform: none;
	}

	.rh-package-detail p {
		margin: 0;
	}

	.rh-package-hero {
		position: relative;
		padding: clamp(96px, 12vw, 150px) 20px clamp(72px, 9vw, 110px);
		overflow: hidden;
		background: #f8fafc;
		text-align: center;
		border-bottom: 1px solid var(--rh-border);
	}

	.rh-package-bg-dots {
		position: absolute;
		inset: 0;
		background-image: radial-gradient(#b11c1c 0.5px, transparent 0.5px);
		background-size: 24px 24px;
		opacity: 0.05;
		pointer-events: none;
	}

	.rh-package-glow {
		position: absolute;
		top: 22%;
		left: 50%;
		width: min(80vw, 500px);
		height: 350px;
		border-radius: 999px;
		background: #b11c1c;
		filter: blur(80px);
		opacity: 0.12;
		transform: translateX(-50%);
		animation: rh-package-glow 8s ease-in-out infinite alternate;
		pointer-events: none;
	}

	@keyframes rh-package-glow {
		from {
			transform: translateX(-50%) scale(1);
		}

		to {
			transform: translateX(-48%) translateY(-15px) scale(1.12);
		}
	}

	.rh-package-hero__inner {
		position: relative;
		z-index: 1;
		width: min(92vw, 900px);
		margin-inline: auto;
	}

	.rh-package-pill {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		margin-bottom: 24px;
		padding: 7px 16px;
		border-radius: 999px;
		background: #fff1f2;
		color: var(--rh-red);
		font-size: 10px;
		font-weight: 800;
		letter-spacing: 2px;
		line-height: 1;
		text-transform: uppercase;
		box-shadow: 0 2px 10px rgba(177, 28, 28, 0.05);
	}

	.rh-package-pill--solid {
		margin-bottom: 18px;
		background: var(--rh-red);
		color: #fff;
		box-shadow: none;
	}

	.rh-package-detail h1 {
		color: var(--rh-ink);
		font-size: clamp(3.5rem, 10vw, 6.5rem);
	}

	.rh-package-detail h2 {
		color: var(--rh-ink);
		font-size: clamp(2.7rem, 7vw, 4.5rem);
	}

	.rh-package-hero__price {
		margin-top: 24px;
		color: var(--rh-ink);
		font-size: clamp(1.35rem, 4vw, 2.2rem);
		font-weight: 900;
		line-height: 1.2;
	}

	.rh-package-hero__price span {
		color: var(--rh-red);
		text-decoration: underline;
		text-decoration-color: #fda4af;
		text-decoration-thickness: 2px;
		text-underline-offset: 5px;
	}

	.rh-package-hero__copy {
		max-width: 680px;
		margin: 22px auto 0;
		color: var(--rh-slate);
		font-size: 17px;
		font-weight: 700;
		line-height: 1.8;
	}

	.rh-package-stats {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 24px;
		max-width: 560px;
		margin: 48px auto 0;
		padding-top: 28px;
		border-top: 1px solid rgba(148, 163, 184, 0.25);
	}

	.rh-package-stats strong,
	.rh-package-stats span {
		display: block;
	}

	.rh-package-stats strong {
		color: var(--rh-ink);
		font-size: clamp(1.6rem, 4vw, 2.1rem);
		font-weight: 900;
		line-height: 1;
	}

	.rh-package-stats span {
		margin-top: 8px;
		color: #94a3b8;
		font-size: 9px;
		font-weight: 900;
		letter-spacing: 1.6px;
		text-transform: uppercase;
	}

	.rh-package-button {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		gap: 10px;
		min-height: 58px;
		padding: 0 34px;
		border-radius: 999px;
		color: #fff;
		font-size: 11px;
		font-weight: 800;
		letter-spacing: 1.5px;
		line-height: 1;
		text-transform: uppercase;
		text-decoration: none;
		transition: transform 180ms ease, box-shadow 180ms ease, background 180ms ease;
	}

	.rh-package-button--primary {
		background: linear-gradient(135deg, #b11c1c 0%, #d32f2f 100%);
		box-shadow: 0 15px 35px rgba(177, 28, 28, 0.3);
	}

	.rh-package-button--primary:hover {
		color: #fff;
		transform: translateY(-2px);
		box-shadow: 0 20px 45px rgba(177, 28, 28, 0.36);
	}

	.rh-package-button .rh-icon {
		width: 16px;
		height: 16px;
	}

	.rh-package-hero .rh-package-button {
		margin-top: 40px;
	}

	.rh-package-section {
		position: relative;
		padding: clamp(72px, 9vw, 104px) 20px;
	}

	.rh-package-shell {
		position: relative;
		z-index: 1;
		width: min(92vw, 1180px);
		margin-inline: auto;
	}

	.rh-package-shell--mid {
		width: min(92vw, 900px);
	}

	.rh-package-shell--narrow {
		width: min(92vw, 760px);
	}

	.rh-package-section-heading {
		max-width: 680px;
		margin: 0 auto 56px;
		text-align: center;
	}

	.rh-package-section-heading > span:not(.rh-package-pill) {
		display: block;
		margin-bottom: 10px;
		color: var(--rh-red);
		font-size: 11px;
		font-weight: 800;
		letter-spacing: 2px;
		text-transform: uppercase;
	}

	.rh-package-section-heading p {
		max-width: 580px;
		margin: 16px auto 0;
		color: var(--rh-slate);
		font-size: 14px;
		font-weight: 700;
		line-height: 1.8;
	}

	.rh-trial-card-section {
		background: #fff;
	}

	.rh-trial-offer-card {
		position: relative;
		padding: clamp(34px, 6vw, 52px);
		border: 2px solid var(--rh-red);
		border-radius: 42px;
		background: #fff;
		box-shadow: 0 28px 70px rgba(15, 23, 42, 0.12);
	}

	.rh-trial-offer-card__flag {
		position: absolute;
		top: 0;
		left: 50%;
		padding: 9px 24px;
		border-radius: 16px;
		background: var(--rh-ink);
		color: #fff;
		font-size: 9px;
		font-weight: 800;
		letter-spacing: 1.5px;
		line-height: 1;
		text-transform: uppercase;
		transform: translate(-50%, -50%);
		white-space: nowrap;
	}

	.rh-trial-offer-card header {
		text-align: center;
	}

	.rh-trial-offer-card header span {
		display: block;
		margin-bottom: 6px;
		color: var(--rh-red);
		font-size: 11px;
		font-weight: 800;
		letter-spacing: 1.5px;
		text-transform: uppercase;
	}

	.rh-trial-offer-card h2,
	.rh-trial-offer-card h3 {
		font-family: Alata, system-ui, sans-serif;
		text-transform: none;
	}

	.rh-trial-offer-card h2 {
		color: var(--rh-ink);
		font-size: clamp(1.8rem, 5vw, 2.45rem);
		font-weight: 900;
		line-height: 1.1;
	}

	.rh-trial-inclusions {
		display: grid;
		gap: 24px;
		margin: 36px auto;
	}

	.rh-trial-inclusion {
		display: grid;
		grid-template-columns: 46px minmax(0, 1fr);
		gap: 16px;
		align-items: start;
	}

	.rh-package-icon-badge {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 48px;
		height: 48px;
		border-radius: 18px;
		background: #fff1f2;
		color: var(--rh-red);
	}

	.rh-package-icon-badge .rh-icon {
		width: 23px;
		height: 23px;
	}

	.rh-trial-inclusion h3 {
		margin-bottom: 7px;
		color: var(--rh-ink);
		font-size: 12px;
		font-weight: 900;
		letter-spacing: 1.4px;
		text-transform: uppercase;
	}

	.rh-trial-inclusion p,
	.rh-package-card p {
		color: var(--rh-slate);
		font-size: 13px;
		line-height: 1.75;
	}

	.rh-trial-investment {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 24px;
		padding: 24px;
		border: 1px solid #f1f5f9;
		border-radius: 30px;
		background: #f8fafc;
	}

	.rh-trial-investment span,
	.rh-booking-secure {
		color: #94a3b8;
		font-size: 10px;
		font-weight: 800;
		letter-spacing: 1.5px;
		text-transform: uppercase;
	}

	.rh-trial-investment strong {
		display: block;
		margin-top: 3px;
		color: var(--rh-ink);
		font-size: 2.8rem;
		font-weight: 900;
		line-height: 1;
	}

	.rh-trial-investment a {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		min-height: 52px;
		padding: 0 28px;
		border-radius: 18px;
		background: var(--rh-red);
		color: #fff;
		font-size: 10px;
		font-weight: 800;
		letter-spacing: 1.5px;
		text-align: center;
		text-transform: uppercase;
		transition: background 180ms ease, transform 180ms ease;
	}

	.rh-trial-investment a:hover {
		background: var(--rh-ink);
		color: #fff;
		transform: translateY(-2px);
	}

	.rh-trial-timeline-section,
	.rh-booking-section {
		background: rgba(248, 250, 252, 0.72);
		border-block: 1px solid #f1f5f9;
	}

	.rh-timeline-tabs {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		gap: 12px;
		margin-bottom: 32px;
	}

	.rh-timeline-tabs button {
		min-height: 46px;
		padding: 0 18px;
		border: 1px solid #e2e8f0;
		border-radius: 16px;
		background: #fff;
		color: var(--rh-ink-soft);
		font: inherit;
		font-size: 11px;
		font-weight: 800;
		letter-spacing: 1px;
		text-transform: uppercase;
		cursor: pointer;
		transition: background 180ms ease, color 180ms ease, box-shadow 180ms ease;
	}

	.rh-timeline-tabs button.is-active {
		border-color: var(--rh-red);
		background: var(--rh-red);
		color: #fff;
		box-shadow: 0 10px 20px rgba(177, 28, 28, 0.25);
	}

	.rh-timeline-card {
		min-height: 220px;
		padding: clamp(30px, 5vw, 46px);
		border: 1px solid #f1f5f9;
		border-radius: 34px;
		background: #fff;
		box-shadow: 0 18px 44px rgba(15, 23, 42, 0.08);
		transition: opacity 180ms ease, transform 180ms ease;
	}

	.rh-timeline-card.is-updating {
		opacity: 0.35;
		transform: scale(0.99);
	}

	.rh-timeline-card h3 {
		margin-bottom: 12px;
		font-family: Alata, system-ui, sans-serif;
		color: var(--rh-ink);
		font-size: 22px;
		font-weight: 900;
		line-height: 1.25;
	}

	.rh-timeline-card p {
		color: var(--rh-slate);
		font-size: 14px;
		line-height: 1.8;
	}

	.rh-timeline-tags {
		display: flex;
		flex-wrap: wrap;
		gap: 10px;
		margin-top: 24px;
	}

	.rh-timeline-tags span {
		display: inline-flex;
		align-items: center;
		gap: 6px;
		padding: 7px 12px;
		border-radius: 999px;
		background: #fff1f2;
		color: var(--rh-red);
		font-size: 10px;
		font-weight: 800;
		letter-spacing: 1.1px;
		text-transform: uppercase;
	}

	.rh-timeline-tags .rh-icon {
		width: 14px;
		height: 14px;
	}

	.rh-package-card-grid {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 28px;
	}

	.rh-package-card {
		padding: 32px;
		border: 1px solid #f1f5f9;
		border-radius: 32px;
		background: #f8fafc;
		transition: border-color 220ms ease, box-shadow 220ms ease, transform 220ms ease;
	}

	.rh-package-card:hover {
		border-color: rgba(177, 28, 28, 0.4);
		box-shadow: 0 26px 52px rgba(177, 28, 28, 0.08);
		transform: translateY(-7px);
	}

	.rh-package-card h3 {
		margin: 22px 0 12px;
		font-family: Alata, system-ui, sans-serif;
		color: var(--rh-ink);
		font-size: 19px;
		font-weight: 900;
		line-height: 1.25;
	}

	.rh-package-card--large {
		padding: 44px 36px;
		background: #fff;
	}

	.rh-package-card--large h3 {
		font-family: var(--rh-heading-font);
		font-size: 2.25rem;
		font-weight: 700;
	}

	.rh-packages-index__hero {
		background: #fff7f7;
	}

	.rh-packages-index__membership {
		background: #fff;
	}

	.rh-packages-index .rh-package-hero__inner,
	.rh-packages-index .rh-package-shell,
	.rh-packages-index .rh-package-shell--mid {
		max-width: 100%;
	}

	.rh-packages-index h1,
	.rh-packages-index h2,
	.rh-packages-index h3,
	.rh-packages-index p {
		min-width: 0;
	}

	.rh-packages-feature {
		display: grid;
		grid-template-columns: minmax(0, 1fr) minmax(260px, 0.36fr);
		gap: clamp(28px, 5vw, 56px);
		align-items: center;
		width: 100%;
		max-width: 100%;
		padding: clamp(30px, 6vw, 54px);
		border: 3px solid rgba(177, 28, 28, 0.92);
		border-radius: 42px;
		background: #fff;
		box-shadow: 0 32px 78px rgba(177, 28, 28, 0.12);
		overflow: hidden;
	}

	.rh-packages-feature > *,
	.rh-packages-card > *,
	.rh-packages-compare__grid > div {
		min-width: 0;
	}

	.rh-packages-feature__content > span,
	.rh-packages-card__eyebrow {
		display: block;
		margin-bottom: 10px;
		color: var(--rh-red);
		font-size: 10px;
		font-weight: 900;
		letter-spacing: 1.8px;
		text-transform: uppercase;
	}

	.rh-packages-feature__content p {
		max-width: 620px;
		margin-top: 18px;
		color: var(--rh-slate);
		font-size: 15px;
		font-weight: 700;
		line-height: 1.75;
	}

	.rh-packages-perks {
		display: grid;
		gap: 12px;
		margin: 26px 0 0;
		padding: 0;
		list-style: none;
	}

	.rh-packages-perks li {
		display: flex;
		align-items: center;
		gap: 10px;
		color: var(--rh-ink);
		font-size: 13px;
		font-weight: 900;
	}

	.rh-packages-perks .rh-icon {
		width: 18px;
		height: 18px;
		color: var(--rh-red);
	}

	.rh-packages-feature__price {
		display: grid;
		justify-items: stretch;
		gap: 18px;
		text-align: center;
	}

	.rh-packages-feature__price > div {
		padding: 24px;
		border-radius: 30px;
		background: #fff7f7;
	}

	.rh-packages-feature__price strong,
	.rh-packages-card__footer strong {
		display: block;
		color: var(--rh-red);
		font-family: Alata, system-ui, sans-serif;
		font-size: clamp(3.2rem, 7vw, 5rem);
		font-weight: 900;
		line-height: 0.95;
	}

	.rh-packages-feature__price small {
		display: block;
		margin-top: 8px;
		color: var(--rh-slate);
		font-size: 10px;
		font-weight: 900;
		letter-spacing: 1.3px;
		text-transform: uppercase;
	}

	.rh-packages-feature__was {
		display: inline-block;
		margin-bottom: 6px;
		color: #94a3b8;
		font-size: 1.6rem;
		font-weight: 900;
		line-height: 1;
		text-decoration: line-through;
	}

	.rh-packages-feature__price p {
		color: #94a3b8;
		font-size: 10px;
		font-weight: 900;
		letter-spacing: 1.3px;
		line-height: 1.5;
		text-transform: uppercase;
	}

	.rh-packages-grid {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 24px;
	}

	.rh-packages-card {
		position: relative;
		display: flex;
		width: 100%;
		max-width: 100%;
		min-height: 360px;
		flex-direction: column;
		padding: 30px;
		border: 1px solid #e2e8f0;
		border-radius: 32px;
		background: #f8fafc;
		transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
	}

	.rh-packages-card.is-featured {
		border-color: rgba(177, 28, 28, 0.48);
		background: #fff7f7;
	}

	.rh-packages-card:hover {
		border-color: rgba(177, 28, 28, 0.55);
		box-shadow: 0 22px 48px rgba(15, 23, 42, 0.09);
		transform: translateY(-5px);
	}

	.rh-packages-card__badge {
		position: absolute;
		top: 18px;
		right: 18px;
		padding: 7px 10px;
		border-radius: 999px;
		background: var(--rh-red);
		color: #fff;
		font-size: 8px;
		font-weight: 900;
		letter-spacing: 1.4px;
		line-height: 1;
		text-transform: uppercase;
	}

	.rh-packages-card h3 {
		max-width: 82%;
		margin: 0 0 12px;
		font-family: var(--rh-heading-font);
		color: var(--rh-ink);
		font-size: clamp(2rem, 4vw, 2.7rem);
		font-weight: 700;
		line-height: 1.05;
	}

	.rh-packages-card p {
		color: var(--rh-slate);
		font-size: 13px;
		font-weight: 700;
		line-height: 1.7;
	}

	.rh-packages-card__footer {
		display: grid;
		gap: 20px;
		margin-top: auto;
		padding-top: 28px;
	}

	.rh-packages-card__footer strong {
		font-size: 3.1rem;
	}

	.rh-packages-card__footer a {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		min-height: 52px;
		padding: 0 18px;
		border: 2px solid rgba(177, 28, 28, 0.22);
		border-radius: 18px;
		background: #fff;
		color: var(--rh-red);
		font-size: 10px;
		font-weight: 900;
		letter-spacing: 1.4px;
		text-align: center;
		text-transform: uppercase;
		text-decoration: none;
		transition: background 180ms ease, color 180ms ease, border-color 180ms ease;
	}

	.rh-packages-card.is-featured .rh-packages-card__footer a,
	.rh-packages-card__footer a:hover {
		border-color: var(--rh-red);
		background: var(--rh-red);
		color: #fff;
	}

	.rh-packages-compare {
		background: #f8fafc;
		border-top: 1px solid #f1f5f9;
	}

	.rh-packages-compare__grid {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 22px;
	}

	.rh-packages-compare__grid > div {
		padding: 30px;
		border: 1px solid #e2e8f0;
		border-radius: 28px;
		background: #fff;
	}

	.rh-packages-compare__grid h3 {
		margin-bottom: 12px;
		color: var(--rh-ink);
		font-family: Alata, system-ui, sans-serif;
		font-size: 18px;
		font-weight: 900;
	}

	.rh-packages-compare__grid p {
		color: var(--rh-slate);
		font-size: 13px;
		font-weight: 700;
		line-height: 1.75;
	}

	.rh-booking-card {
		padding: clamp(24px, 5vw, 42px);
		border: 1px solid #f1f5f9;
		border-radius: 38px;
		background: #fff;
		box-shadow: 0 28px 70px rgba(15, 23, 42, 0.12);
	}

	.rh-booking-card .amelia-v2-booking {
		max-width: 100%;
	}

	.rh-booking-portal-cta {
		display: grid;
		justify-items: center;
		gap: 18px;
		max-width: 620px;
		margin: 0 auto;
		text-align: center;
	}

	.rh-booking-portal-cta h3 {
		margin: 0;
		color: var(--rh-ink);
		font-size: clamp(1.6rem, 3vw, 2.4rem);
		font-weight: 900;
		line-height: 1.1;
	}

	.rh-booking-portal-cta p {
		margin: 0;
		color: var(--rh-muted);
		font-size: 1rem;
		line-height: 1.7;
	}

	.rh-booking-back {
		margin-top: 36px;
		text-align: center;
	}

	.rh-booking-back a {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		min-height: 44px;
		padding: 0 22px;
		border: 1px solid #e2e8f0;
		border-radius: 999px;
		color: var(--rh-slate);
		font-size: 11px;
		font-weight: 800;
		letter-spacing: 1.3px;
		text-transform: uppercase;
		transition: border-color 180ms ease, color 180ms ease;
	}

	.rh-booking-back a::before {
		content: "<";
		margin-right: 8px;
	}

	.rh-booking-back a:hover {
		border-color: rgba(177, 28, 28, 0.45);
		color: var(--rh-red);
	}

	.rh-booking-secure {
		display: flex;
		align-items: center;
		justify-content: center;
		gap: 7px;
		margin-top: 26px;
		text-align: center;
	}

	.rh-booking-secure .rh-icon {
		width: 13px;
		height: 13px;
	}

	.rh-unlimited-steps {
		padding: clamp(38px, 7vw, 74px) clamp(24px, 5vw, 42px);
		border-radius: 48px;
		background: var(--rh-ink);
		color: #fff;
	}

	.rh-unlimited-steps__heading {
		max-width: 720px;
		margin: 0 auto;
		text-align: center;
	}

	.rh-unlimited-steps h2 {
		margin: 0 0 16px;
		color: #fff;
		font-family: Montserrat, Alata, system-ui, sans-serif;
		font-size: clamp(2rem, 5vw, 2.8rem);
		font-weight: 900;
		line-height: 1.05;
		letter-spacing: 0;
		text-transform: uppercase;
	}

	.rh-unlimited-steps__heading p,
	.rh-step-list p,
	.rh-unlimited-steps__action p {
		color: #94a3b8;
		font-size: 14px;
		line-height: 1.8;
	}

	.rh-step-list {
		max-width: 680px;
		margin: 42px auto;
		padding: 0;
		list-style: none;
	}

	.rh-step-list li {
		display: grid;
		grid-template-columns: 38px minmax(0, 1fr);
		gap: 20px;
		padding-bottom: 28px;
		margin-bottom: 28px;
		border-bottom: 1px solid rgba(255, 255, 255, 0.12);
	}

	.rh-step-list li:last-child {
		padding-bottom: 0;
		margin-bottom: 0;
		border-bottom: 0;
	}

	.rh-step-list li > span {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 36px;
		height: 36px;
		border-radius: 999px;
		background: linear-gradient(135deg, #b11c1c 0%, #d32f2f 100%);
		color: #fff;
		font-size: 14px;
		font-weight: 900;
	}

	.rh-step-list h3 {
		margin-bottom: 6px;
		color: #fff;
		font-family: Alata, system-ui, sans-serif;
		font-size: 16px;
		font-weight: 900;
	}

	.rh-unlimited-steps__action {
		text-align: center;
	}

	.rh-unlimited-steps__action p {
		margin-top: 22px;
		font-size: 12px;
	}

	.rh-unlimited-steps__action a:not(.rh-package-button) {
		color: #fff;
		text-decoration: underline;
		text-underline-offset: 3px;
	}

	.rh-blog-index {
		background: #fff;
		color: var(--rh-ink);
	}

	.rh-blog-hero {
		padding: clamp(84px, 10vw, 128px) 0 clamp(64px, 8vw, 96px);
		background: linear-gradient(180deg, #f8fafc 0%, #fff 100%);
		border-bottom: 1px solid var(--rh-border);
		text-align: center;
	}

	.rh-blog-hero__inner {
		max-width: 780px;
	}

	.rh-blog-hero span {
		display: inline-flex;
		margin-bottom: 20px;
		padding: 7px 16px;
		border-radius: 999px;
		background: #fff1f2;
		color: var(--rh-red);
		font-size: 10px;
		font-weight: 800;
		letter-spacing: 2px;
		line-height: 1;
		text-transform: uppercase;
	}

	.rh-blog-hero h1 {
		margin: 0;
		color: var(--rh-ink);
		font-family: var(--rh-heading-font);
		font-size: clamp(4rem, 10vw, 7rem);
		font-weight: 700;
		line-height: 1;
		text-transform: none;
	}

	.rh-blog-hero p {
		max-width: 620px;
		margin: 20px auto 0;
		color: var(--rh-slate);
		font-size: 17px;
		font-weight: 700;
		line-height: 1.8;
	}

	.rh-blog-listing {
		padding: clamp(64px, 8vw, 96px) 0;
	}

	.rh-blog-grid {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 28px;
	}

	.rh-blog-card {
		display: flex;
		flex-direction: column;
		min-width: 0;
		overflow: hidden;
		border: 1px solid var(--rh-border);
		border-radius: 8px;
		background: #fff;
		box-shadow: 0 18px 45px rgba(15, 23, 42, 0.05);
		transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
	}

	.rh-blog-card:hover {
		border-color: rgba(177, 28, 28, 0.35);
		box-shadow: 0 24px 60px rgba(15, 23, 42, 0.1);
		transform: translateY(-4px);
	}

	.rh-blog-card__media {
		display: block;
		position: relative;
		aspect-ratio: 16 / 10;
		overflow: hidden;
		background: #f8fafc;
	}

	.rh-blog-card__media img {
		display: block;
		width: 100%;
		height: 100%;
		object-fit: cover;
		transition: transform 220ms ease;
	}

	.rh-blog-card:hover .rh-blog-card__media img {
		transform: scale(1.04);
	}

	.rh-blog-card__fallback {
		display: flex;
		align-items: center;
		justify-content: center;
		width: 100%;
		height: 100%;
		background:
			radial-gradient(circle at center, rgba(177, 28, 28, 0.08), transparent 58%),
			#f8fafc;
	}

	.rh-blog-card__fallback img {
		width: 92px;
		height: 92px;
		object-fit: contain;
		opacity: 0.85;
	}

	.rh-blog-card__body {
		display: flex;
		flex: 1;
		flex-direction: column;
		padding: 26px;
	}

	.rh-blog-card__meta {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		gap: 9px;
		margin-bottom: 14px;
		color: var(--rh-slate);
		font-size: 10px;
		font-weight: 800;
		letter-spacing: 1.3px;
		line-height: 1.4;
		text-transform: uppercase;
	}

	.rh-blog-card__meta span {
		color: var(--rh-red);
	}

	.rh-blog-card h2 {
		margin: 0 0 14px;
		font-family: var(--rh-heading-font);
		font-size: clamp(2rem, 3vw, 2.55rem);
		font-weight: 700;
		line-height: 1.05;
		text-transform: none;
	}

	.rh-blog-card h2 a {
		color: var(--rh-ink);
	}

	.rh-blog-card h2 a:hover {
		color: var(--rh-red);
	}

	.rh-blog-card p {
		margin: 0 0 22px;
		color: var(--rh-slate);
		font-size: 14px;
		line-height: 1.75;
	}

	.rh-blog-card__link {
		display: inline-flex;
		align-items: center;
		margin-top: auto;
		color: var(--rh-red);
		font-size: 10px;
		font-weight: 800;
		letter-spacing: 1.5px;
		text-transform: uppercase;
	}

	.rh-blog-card__link:hover {
		color: var(--rh-ink);
	}

	.rh-blog-card__link::after {
		content: ">";
		margin-left: 8px;
	}

	.rh-blog-pagination {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		gap: 10px;
		margin-top: 48px;
	}

	.rh-blog-pagination .page-numbers {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		min-width: 42px;
		height: 42px;
		padding: 0 14px;
		border: 1px solid var(--rh-border);
		border-radius: 999px;
		color: var(--rh-slate);
		font-size: 11px;
		font-weight: 800;
		letter-spacing: 1px;
		text-transform: uppercase;
	}

	.rh-blog-pagination .page-numbers.current,
	.rh-blog-pagination .page-numbers:hover {
		border-color: var(--rh-red);
		background: var(--rh-red);
		color: #fff;
	}

	.rh-blog-empty {
		max-width: 620px;
		margin-inline: auto;
		padding: 56px 24px;
		border: 1px solid var(--rh-border);
		border-radius: 8px;
		text-align: center;
	}

	.rh-blog-empty h2 {
		margin: 0 0 10px;
		font-family: var(--rh-heading-font);
		font-size: 3rem;
		font-weight: 700;
	}

	.rh-blog-empty p {
		margin: 0;
		color: var(--rh-slate);
	}

	@media (max-width: 1100px) {
		.rh-desktop-nav {
			gap: 14px;
			font-size: 12px;
	}

	.rh-header-actions {
		gap: 12px;
	}
}

	@media (max-width: 980px) {
	.admin-bar .rh-site-header {
		top: 46px;
	}

	.rh-desktop-nav,
	.rh-header-actions {
		display: none;
	}

	.rh-menu-toggle {
		display: block;
	}

	.rh-mainbar__inner {
		min-height: 80px;
	}

	.rh-brand-lockup__logo {
		width: 55px;
		height: 55px;
	}

	.rh-footer-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

		.et_pb_blog_posts.et_grid_module {
			grid-template-columns: repeat(2, minmax(0, 1fr));
		}

		.rh-package-card-grid {
			grid-template-columns: 1fr;
		}

		.rh-packages-feature,
		.rh-packages-grid {
			grid-template-columns: 1fr;
		}

		.rh-packages-feature__price {
			justify-items: stretch;
		}

		.rh-blog-grid {
			grid-template-columns: repeat(2, minmax(0, 1fr));
		}
	}

	@media (max-width: 767px) {
		.rh-promo-bar__inner {
			min-height: 58px;
			padding: 10px 38px 10px 10px;
		}

		.rh-promo-bar__link {
			flex-wrap: wrap;
			gap: 5px 8px;
			font-size: 10px;
			letter-spacing: 1px;
		}

		.rh-promo-bar__link span {
			flex-basis: 100%;
			letter-spacing: 0.4px;
		}

	.rh-topbar__inner {
		justify-content: center;
	}

	.rh-topbar__booking {
		font-size: 11px;
		letter-spacing: 0.02em;
		text-align: center;
	}

	.rh-topbar .rh-socials {
		display: none;
	}

	.rh-brand-lockup__name {
		width: 126px;
	}

	.rh-footer-grid,
	.et_pb_blog_posts.et_grid_module {
		grid-template-columns: 1fr;
	}

	.rh-footer-bottom {
		flex-direction: column;
		text-align: center;
	}

		.rh-footer-bottom nav {
			flex-wrap: wrap;
			justify-content: center;
		}

		.rh-package-hero {
			padding: 84px 18px 60px;
			overflow-x: hidden;
		}

		.rh-package-detail h1 {
			max-width: 100%;
			font-size: clamp(2.45rem, 11vw, 3.05rem);
			text-wrap: balance;
		}

		.rh-package-detail h2 {
			max-width: 100%;
			font-size: clamp(2rem, 10vw, 2.65rem);
			text-wrap: balance;
		}

		.rh-trial-offer-card h2 {
			font-size: clamp(1.8rem, 8.5vw, 2.15rem);
			line-height: 1.16;
		}

		.rh-package-card--large h3 {
			font-size: 1.85rem;
		}

		.rh-package-hero__inner,
		.rh-package-shell,
		.rh-package-shell--mid,
		.rh-package-shell--narrow {
			width: min(90vw, 340px);
		}

		.rh-package-hero__copy {
			font-size: 15px;
		}

		.rh-package-stats {
			gap: 12px;
			margin-top: 36px;
		}

		.rh-package-stats strong {
			font-size: 1.45rem;
		}

		.rh-package-button {
			width: 100%;
			max-width: 360px;
			padding-inline: 22px;
		}

		.rh-package-section {
			padding: 64px 18px;
		}

		.rh-package-section-heading {
			margin-bottom: 38px;
		}

		.rh-trial-offer-card,
		.rh-booking-card {
			border-radius: 28px;
		}

		.rh-packages-feature {
			width: 100%;
			max-width: 100%;
			padding: 26px;
			border-radius: 30px;
		}

		.rh-packages-index .rh-package-hero__inner,
		.rh-packages-index .rh-package-shell,
		.rh-packages-index .rh-package-shell--mid,
		.rh-packages-index .rh-package-shell--narrow {
			width: calc(100% - 36px);
			max-width: 100%;
		}

		.rh-packages-index h1 {
			max-width: 290px;
			margin-inline: auto;
			font-size: clamp(1.9rem, 8vw, 2.2rem);
			line-height: 1.04;
			white-space: normal;
			overflow-wrap: normal;
		}

		.rh-packages-index h2 {
			max-width: 100%;
			font-size: clamp(1.95rem, 8.5vw, 2.25rem);
			line-height: 1.08;
		}

		.rh-packages-feature h2 {
			max-width: 265px;
		}

		.rh-packages-index .rh-package-hero__copy {
			max-width: 32rem;
			white-space: normal;
			overflow-wrap: break-word;
		}

		.rh-packages-feature__content p {
			font-size: 14px;
		}

		.rh-packages-perks li {
			align-items: flex-start;
			font-size: 12px;
			line-height: 1.5;
		}

		.rh-packages-feature__price > div {
			width: 100%;
			max-width: 100%;
			padding: 22px 16px;
			border-radius: 24px;
		}

		.rh-packages-feature__price strong {
			font-size: clamp(3.15rem, 16vw, 3.8rem);
		}

		.rh-packages-feature__price small,
		.rh-packages-feature__price p {
			letter-spacing: 1px;
		}

		.rh-packages-grid {
			gap: 18px;
		}

		.rh-packages-card {
			min-height: auto;
			padding: 24px;
			border-radius: 26px;
		}

		.rh-packages-card h3 {
			max-width: 100%;
			font-size: 2.1rem;
		}

		.rh-packages-card__badge {
			position: static;
			width: max-content;
			margin-bottom: 16px;
		}

		.rh-packages-card__footer {
			gap: 16px;
			padding-top: 24px;
		}

		.rh-packages-card__footer strong {
			font-size: 2.7rem;
		}

		.rh-packages-compare__grid {
			grid-template-columns: 1fr;
		}

		.rh-trial-inclusion {
			grid-template-columns: 42px minmax(0, 1fr);
			gap: 14px;
		}

		.rh-package-icon-badge {
			width: 42px;
			height: 42px;
			border-radius: 14px;
		}

		.rh-trial-investment {
			align-items: stretch;
			flex-direction: column;
			text-align: center;
		}

		.rh-timeline-tabs {
			display: grid;
			grid-template-columns: repeat(2, minmax(0, 1fr));
		}

		.rh-timeline-tabs button {
			padding-inline: 10px;
			font-size: 10px;
		}

		.rh-unlimited-steps {
			border-radius: 30px;
		}

		.rh-step-list li {
			grid-template-columns: 34px minmax(0, 1fr);
			gap: 14px;
		}

		.rh-blog-hero {
			padding: 72px 0 56px;
		}

		.rh-blog-hero h1 {
			font-size: clamp(3.2rem, 17vw, 4.5rem);
		}

		.rh-blog-hero p {
			font-size: 15px;
		}

		.rh-blog-grid {
			grid-template-columns: 1fr;
			gap: 22px;
		}

		.rh-blog-card__body {
			padding: 22px;
		}

		.rhs-single {
			width: min(100% - 32px, 760px);
		}

		.rhs-single .wp-block-post-title {
			margin-bottom: 18px;
			font-size: 2.05rem;
			line-height: 1.12;
		}

		.rhs-single .wp-block-post-content {
			font-size: 1rem;
			line-height: 1.68;
		}

		.rhs-single .wp-block-post-content h2 {
			font-size: 1.45rem;
		}

		.rhs-single .wp-block-post-content h3 {
			font-size: 1.18rem;
		}

		.rhs-single .wp-block-buttons {
			align-items: stretch;
			flex-direction: column;
		}

		.rhs-single .wp-block-button,
		.rhs-single .wp-block-button__link {
			width: 100%;
		}
	}
