/* Rome Home: homepage blocks (hero, why us, destinations, steps, call to action). Front page only. */
.rh {
	--rh-accent: #fd4c5c;
	--rh-accent-dark: #e63a4a;
	--rh-ink: #111b19;
	--rh-muted: #5f6b67;
	--rh-line: #e5eae8;
	--rh-soft: #f5f8f7;
	--rh-navy: #101a2e;
	--rh-ok: #05977c;
	font-family: inherit;
	color: var(--rh-ink);
}
.rh *, .rh *::before, .rh *::after { box-sizing: border-box; }
.rh-wrap { width: 100%; max-width: 1296px; margin: 0 auto; padding: 0 20px; }
.rh a { text-decoration: none; }

/* Buttons */
.rh-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	height: 54px;
	padding: 0 30px;
	border-radius: 12px;
	font-size: 16px;
	font-weight: 700;
	line-height: 1;
	transition: transform .15s, background .15s, box-shadow .15s, border-color .15s;
}
.rh-btn--primary { background: var(--rh-accent); color: #fff !important; box-shadow: 0 12px 26px rgba(253, 76, 92, .35); }
.rh-btn--primary:hover { background: var(--rh-accent-dark); transform: translateY(-2px); }
.rh-btn--ghost { background: rgba(255, 255, 255, .12); color: #fff !important; border: 1.5px solid rgba(255, 255, 255, .55); backdrop-filter: blur(4px); }
.rh-btn--ghost:hover { background: rgba(255, 255, 255, .22); border-color: #fff; }

/* Hero */
.rh-hero {
	position: relative;
	min-height: 640px;
	display: flex;
	align-items: center;
	color: #fff;
	background: var(--rh-navy) center / cover no-repeat;
	isolation: isolate;
}
.rh-hero::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	background: linear-gradient(95deg, rgba(10, 17, 32, .88) 0%, rgba(10, 17, 32, .66) 48%, rgba(10, 17, 32, .25) 100%);
}
.rh-hero .rh-wrap { padding-top: 90px; padding-bottom: 90px; }
.rh-eyebrow {
	display: inline-block;
	margin-bottom: 18px;
	padding: 7px 16px;
	border-radius: 999px;
	background: rgba(255, 255, 255, .14);
	border: 1px solid rgba(255, 255, 255, .28);
	font-size: 13px;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
}
.rh-hero h1 {
	max-width: 760px;
	margin: 0 0 20px;
	font-size: clamp(34px, 5vw, 62px);
	line-height: 1.08;
	font-weight: 800;
	letter-spacing: -.02em;
	color: #fff;
}
.rh-hero h1 em { font-style: normal; color: #ffb3ba; }
.rh-hero p.rh-lead { max-width: 600px; margin: 0 0 34px; font-size: clamp(16px, 1.6vw, 19px); line-height: 1.65; color: rgba(255, 255, 255, .88); }
.rh-actions { display: flex; flex-wrap: wrap; gap: 14px; }
.rh-chips { display: flex; flex-wrap: wrap; gap: 12px 26px; margin: 38px 0 0; padding: 0; list-style: none; }
.rh-chips li { display: flex; align-items: center; gap: 9px; margin: 0; font-size: 14.5px; font-weight: 600; color: rgba(255, 255, 255, .92); }

/* Sections */
.rh-section { padding: 90px 0; }
.rh-section--soft { background: var(--rh-soft); }
.rh-head { max-width: 640px; margin: 0 auto 50px; text-align: center; }
.rh-kicker { display: block; margin-bottom: 10px; font-size: 13px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; color: var(--rh-accent); }
.rh-head h2 { margin: 0 0 14px; font-size: clamp(28px, 3.4vw, 40px); line-height: 1.15; font-weight: 800; letter-spacing: -.01em; color: var(--rh-ink); }
.rh-head p { margin: 0; font-size: 17px; line-height: 1.65; color: var(--rh-muted); }

/* Why us */
.rh-grid { display: grid; gap: 24px; }
.rh-grid--4 { grid-template-columns: repeat(4, 1fr); }
.rh-card {
	padding: 32px 28px;
	border: 1px solid var(--rh-line);
	border-radius: 18px;
	background: #fff;
	transition: transform .2s, box-shadow .2s, border-color .2s;
}
.rh-card:hover { transform: translateY(-5px); box-shadow: 0 18px 40px rgba(17, 27, 25, .09); border-color: transparent; }
.rh-ico {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 58px;
	height: 58px;
	margin-bottom: 20px;
	border-radius: 16px;
	background: #fff1f2;
}
.rh-card h3 { margin: 0 0 10px; font-size: 20px; line-height: 1.3; font-weight: 700; color: var(--rh-ink); }
.rh-card p { margin: 0; font-size: 15.5px; line-height: 1.65; color: var(--rh-muted); }

/* Destinations */
.rh-grid--2 { grid-template-columns: repeat(2, 1fr); }
.rh-dest {
	position: relative;
	display: flex;
	align-items: flex-end;
	min-height: 400px;
	padding: 34px;
	border-radius: 22px;
	overflow: hidden;
	color: #fff !important;
	background: var(--rh-navy) center / cover no-repeat;
	isolation: isolate;
	transition: transform .25s, box-shadow .25s;
}
.rh-dest::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg, rgba(10, 17, 32, 0) 35%, rgba(10, 17, 32, .85) 100%); transition: opacity .25s; }
.rh-dest:hover { transform: translateY(-5px); box-shadow: 0 24px 50px rgba(10, 17, 32, .28); }
.rh-dest h3 { margin: 0 0 6px; font-size: 30px; font-weight: 800; color: #fff; }
.rh-dest p { margin: 0 0 16px; font-size: 16px; color: rgba(255, 255, 255, .88); max-width: 420px; line-height: 1.55; }
.rh-dest span.rh-more { display: inline-flex; align-items: center; gap: 8px; font-size: 15px; font-weight: 700; }

/* Steps */
.rh-grid--3 { grid-template-columns: repeat(3, 1fr); }
.rh-step { position: relative; text-align: center; padding: 0 12px; }
.rh-num {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 64px;
	height: 64px;
	margin-bottom: 20px;
	border-radius: 50%;
	background: var(--rh-accent);
	color: #fff;
	font-size: 26px;
	font-weight: 800;
	box-shadow: 0 12px 26px rgba(253, 76, 92, .3);
}
.rh-step h3 { margin: 0 0 10px; font-size: 21px; font-weight: 700; color: var(--rh-ink); }
.rh-step p { margin: 0 auto; max-width: 320px; font-size: 15.5px; line-height: 1.65; color: var(--rh-muted); }

/* Call to action */
.rh-cta { padding: 0 0 90px; }
.rh-cta-box {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 30px;
	padding: 56px 60px;
	border-radius: 26px;
	color: #fff;
	background: linear-gradient(120deg, #101a2e 0%, #1c2b4d 100%);
}
.rh-cta-box h2 { margin: 0 0 10px; font-size: clamp(26px, 3vw, 36px); line-height: 1.2; font-weight: 800; color: #fff; }
.rh-cta-box p { margin: 0; font-size: 17px; line-height: 1.6; color: rgba(255, 255, 255, .8); max-width: 560px; }
.rh-cta-box .rh-actions { flex: none; }

/* Product cards on the homepage: the wishlist label sat on top of the photo */
.home .ova-product-wishlist .yith-wcwl-add-to-wishlist-button__label,
.page-template-elementor_header_footer .ova-product-wishlist .yith-wcwl-add-to-wishlist-button__label { display: none !important; }

@media (max-width: 1024px) {
	.rh-grid--4 { grid-template-columns: repeat(2, 1fr); }
	.rh-cta-box { flex-direction: column; align-items: flex-start; padding: 44px 36px; }
}
@media (max-width: 767px) {
	.rh-hero { min-height: 560px; }
	.rh-hero::before { background: linear-gradient(180deg, rgba(10, 17, 32, .8) 0%, rgba(10, 17, 32, .7) 100%); }
	.rh-hero .rh-wrap { padding-top: 70px; padding-bottom: 70px; }
	.rh-section { padding: 64px 0; }
	.rh-head { margin-bottom: 36px; }
	.rh-grid--4, .rh-grid--2, .rh-grid--3 { grid-template-columns: 1fr; }
	.rh-grid--3 { gap: 38px; }
	.rh-dest { min-height: 320px; padding: 26px; }
	.rh-btn { width: 100%; }
	.rh-cta { padding-bottom: 64px; }
	.rh-cta-box { padding: 36px 24px; }
	.rh-cta-box .rh-actions, .rh-cta-box .rh-btn { width: 100%; }
}

/* Icons as CSS masks (the page builder strips inline SVG from HTML blocks) */
.rh-i { display: inline-block; flex: none; width: 1.25em; height: 1.25em; background-color: currentColor; -webkit-mask: var(--rh-mask) center / contain no-repeat; mask: var(--rh-mask) center / contain no-repeat; }
.rh-i-check { --rh-mask: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='black'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M20%206%209%2017l-5-5'/%3E%3C/svg%3E"); }
.rh-i-arrow { --rh-mask: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='black'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M5%2012h14M13%206l6%206-6%206'/%3E%3C/svg%3E"); }
.rh-i-chat { --rh-mask: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='black'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M21%2012a8%208%200%200%201-11.7%207.1L4%2020l1-4.6A8%208%200%201%201%2021%2012z'/%3E%3C/svg%3E"); }
.rh-i-bolt { --rh-mask: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='black'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M13%202%204%2014h7l-1%208%209-12h-7z'/%3E%3C/svg%3E"); }
.rh-i-guide { --rh-mask: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='black'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Ccircle%20cx='12'%20cy='8'%20r='4'/%3E%3Cpath%20d='M4%2021c0-4.4%203.6-7%208-7s8%202.6%208%207'/%3E%3C/svg%3E"); }
.rh-i-cal { --rh-mask: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='black'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Crect%20x='3'%20y='5'%20width='18'%20height='16'%20rx='3'/%3E%3Cpath%20d='M3%2010h18M8%203v4M16%203v4'/%3E%3C/svg%3E"); }
.rh-i-lock { --rh-mask: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='black'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Crect%20x='4'%20y='10'%20width='16'%20height='10'%20rx='2.5'/%3E%3Cpath%20d='M8%2010V7a4%204%200%200%201%208%200v3'/%3E%3C/svg%3E"); }
.rh-ico .rh-i { width: 28px; height: 28px; color: var(--rh-accent); }
.rh-chips .rh-i { width: 20px; height: 20px; color: #7ee0c8; }
.rh-btn .rh-i { width: 20px; height: 20px; }
.rh-dest .rh-more .rh-i { width: 18px; height: 18px; transition: transform .2s; }
.rh-dest:hover .rh-more .rh-i { transform: translateX(5px); }

/* Hero: leave room for the photo ribbon that overlaps its bottom edge */
.rh-hero { min-height: 600px; }
.rh-hero .rh-wrap { padding-bottom: 170px; }

/* Photo ribbon */
.rh-ribbon { position: relative; z-index: 3; margin-top: -110px; padding: 0 20px; }
.rh-ribbon-in { display: flex; justify-content: center; align-items: flex-end; gap: 18px; max-width: 1296px; margin: 0 auto; }
.rh-tile {
	flex: 1 1 0;
	min-width: 0;
	border-radius: 22px;
	background: var(--rh-navy) center / cover no-repeat;
	box-shadow: 0 18px 40px rgba(10, 17, 32, .22);
	border: 4px solid #fff;
}
.rh-tile:nth-child(1) { height: 210px; }
.rh-tile:nth-child(2) { height: 270px; }
.rh-tile:nth-child(3) { height: 230px; }
.rh-tile:nth-child(4) { height: 290px; }
.rh-tile:nth-child(5) { height: 240px; }
.rh-tile:nth-child(6) { height: 200px; }

/* Value points under the ribbon */
.rh-feats { padding: 70px 0 20px; }
.rh-feats .rh-grid { gap: 36px; }
.rh-feat { display: flex; flex-direction: column; gap: 6px; }
.rh-feat .rh-fi { display: inline-flex; align-items: center; justify-content: center; width: 52px; height: 52px; margin-bottom: 12px; border-radius: 14px; }
.rh-feat .rh-fi .rh-i { width: 26px; height: 26px; }
.rh-feat:nth-child(1) .rh-fi { background: #fff1f2; color: #fd4c5c; }
.rh-feat:nth-child(2) .rh-fi { background: #eaf1ff; color: #3b6ff0; }
.rh-feat:nth-child(3) .rh-fi { background: #fff3e6; color: #e8801a; }
.rh-feat:nth-child(4) .rh-fi { background: #e6f7f2; color: #05977c; }
.rh-feat h3 { margin: 0; font-size: 18px; font-weight: 700; color: var(--rh-ink); }
.rh-feat p { margin: 0; font-size: 15px; line-height: 1.6; color: var(--rh-muted); }

/* Section header: title on the left, link on the right */
.rh-head--row { display: flex; align-items: flex-end; justify-content: space-between; gap: 20px; max-width: none; margin: 0 0 36px; text-align: left; }
.rh-head--row h2 { margin-bottom: 8px; }
.rh-pill {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	flex: none;
	padding: 12px 22px;
	border: 1.5px solid var(--rh-line);
	border-radius: 999px;
	font-size: 15px;
	font-weight: 700;
	color: var(--rh-ink) !important;
	background: #fff;
	transition: border-color .15s, color .15s;
}
.rh-pill:hover { border-color: var(--rh-accent); color: var(--rh-accent) !important; }
.rh-pill .rh-i { width: 16px; height: 16px; }

/* Tour cards ([rome_tours]) */
.rt-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 28px 24px; }
.rt-card { display: flex; flex-direction: column; min-width: 0; }
.rt-media { position: relative; display: block; aspect-ratio: 4 / 3; border-radius: 20px; overflow: hidden; background: var(--rh-soft); }
.rt-media img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .5s; }
.rt-card:hover .rt-media img { transform: scale(1.06); }
.rt-chip, .rt-off, .rt-rating { position: absolute; z-index: 2; font-size: 12px; font-weight: 800; letter-spacing: .05em; line-height: 1; }
.rt-chip { top: 14px; left: 14px; padding: 7px 12px; border-radius: 999px; background: rgba(255, 255, 255, .95); color: var(--rh-ink); text-transform: uppercase; }
.rt-off { top: 14px; right: 14px; padding: 7px 12px; border-radius: 999px; background: #e5162d; color: #fff; text-transform: uppercase; }
.rt-rating { left: 14px; bottom: 14px; display: inline-flex; align-items: center; gap: 6px; padding: 7px 11px; border-radius: 999px; background: rgba(17, 27, 25, .72); color: #fff; letter-spacing: 0; }
.rt-rating small { font-size: 12px; font-weight: 600; opacity: .8; }
.rt-rating i { width: 14px; height: 14px; background: #ffc61a; -webkit-mask: var(--rh-star) center / contain no-repeat; mask: var(--rh-star) center / contain no-repeat; }
.rt-media { --rh-star: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2l3 6.9 7.5.7-5.7 5 1.7 7.4L12 18l-6.5 4 1.7-7.4-5.7-5 7.5-.7z'/%3E%3C/svg%3E"); }
.rt-body { display: flex; flex-direction: column; flex: 1; padding: 18px 2px 0; }
.rt-title { margin: 0 0 8px; font-size: 19px; line-height: 1.35; font-weight: 800; letter-spacing: -.005em; }
.rt-title a { color: var(--rh-ink); }
.rt-title a:hover { color: var(--rh-accent); }
.rt-text { margin: 0 0 18px; font-size: 14.5px; line-height: 1.6; color: var(--rh-muted); }
.rt-foot { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: auto; }
.rt-price small { display: block; margin-bottom: 3px; font-size: 13px; color: var(--rh-muted); }
.rt-price span { font-size: 22px; font-weight: 800; color: var(--rh-ink); line-height: 1; }
.rt-price del { margin-right: 4px; font-size: 14px; font-weight: 600; color: #8a9591; }
.rt-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	height: 46px;
	padding: 0 26px;
	border-radius: 999px;
	background: #eef1f0;
	font-size: 15px;
	font-weight: 700;
	color: var(--rh-ink) !important;
	transition: background .15s, color .15s;
}
.rt-card:hover .rt-btn, .rt-btn:hover { background: var(--rh-accent); color: #fff !important; }

@media (max-width: 1100px) {
	.rt-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 767px) {
	.rh-ribbon { display: none; }
	.rh-hero .rh-wrap { padding-bottom: 70px; }
	.rh-feats { padding-top: 50px; }
	.rh-head--row { flex-direction: column; align-items: flex-start; }
	.rt-grid { grid-template-columns: 1fr; }
}

/* column count follows the number of cards */
.rt-grid.rt-cols-1 { grid-template-columns: minmax(0, 420px); }
.rt-grid.rt-cols-2 { grid-template-columns: repeat(2, 1fr); }
.rt-grid.rt-cols-3 { grid-template-columns: repeat(3, 1fr); }

/* "You May Also Like" on the single tour page */
.rt-related { background: var(--rh-soft, #f5f8f7); padding: 70px 0 80px; margin-top: 30px; }
.rt-related .rh-head--row { margin-bottom: 30px; }
.rt-related .rh-head h2 { font-size: clamp(24px, 3vw, 32px); }
.rt-related .rt-grid { padding-bottom: 0; }
.single-product .single-product-related { display: none !important; }
@media (max-width: 1100px) { .rt-grid.rt-cols-3, .rt-grid.rt-cols-4 { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 767px) { .rt-grid.rt-cols-2, .rt-grid.rt-cols-3, .rt-grid.rt-cols-4, .rt-grid.rt-cols-1 { grid-template-columns: 1fr; } .rt-related { padding: 50px 0 60px; } }

/* equal photo boxes on every page (the single tour page theme styles stretched some images) */
.rt-media { aspect-ratio: 4 / 3 !important; height: auto !important; }
.rt-media img { position: absolute !important; inset: 0 !important; width: 100% !important; height: 100% !important; max-width: none !important; object-fit: cover !important; border-radius: 0 !important; }

/* ---- Hero v2: clean navy panel, text left, two photos right (no busy photo behind the text) ---- */
.rh-hero.rh-hero--split {
	min-height: 0;
	background: radial-gradient(900px 500px at 85% 20%, rgba(253, 76, 92, .16), transparent 60%), linear-gradient(135deg, #0c1424 0%, #14233f 62%, #1b2f55 100%);
	isolation: isolate;
}
.rh-hero.rh-hero--split::before { display: none; }
.rh-hero.rh-hero--split .rh-wrap { padding-top: 84px; padding-bottom: 96px; }
.rh-hero-grid { display: grid; grid-template-columns: 1.08fr .92fr; gap: 56px; align-items: center; }
.rh-hero-copy h1 { max-width: 640px; }
.rh-hero-media { position: relative; height: 470px; }
.rh-hero-img { position: absolute; background: #14233f center / cover no-repeat; }
.rh-hero-img1 { top: 0; right: 0; width: 76%; height: 100%; border-radius: 28px; box-shadow: 0 30px 70px rgba(0, 0, 0, .4); }
.rh-hero-img2 { left: 0; bottom: -24px; width: 46%; aspect-ratio: 3 / 4; border-radius: 24px; border: 6px solid #14233f; box-shadow: 0 24px 56px rgba(0, 0, 0, .45); }

@media (max-width: 1024px) {
	.rh-hero-grid { grid-template-columns: 1fr; gap: 48px; }
	.rh-hero-media { height: 400px; max-width: 560px; }
}
@media (max-width: 767px) {
	.rh-hero.rh-hero--split .rh-wrap { padding-top: 60px; padding-bottom: 70px; }
	.rh-hero-media { height: 300px; }
}

/* ---- Hero v3: one soft background photo, calm dark overlay, text on the left ---- */
.rh-hero.rh-hero--bg {
	position: relative;
	min-height: 600px;
	display: flex;
	align-items: center;
	overflow: hidden;
	background: #0c1424;
	isolation: isolate;
}
.rh-hero.rh-hero--bg::before {
	content: "";
	position: absolute;
	inset: -12px;
	z-index: -2;
	background: var(--hero-img) center 35% / cover no-repeat;
	filter: blur(4px) saturate(.9);
	transform: scale(1.04);
}
.rh-hero.rh-hero--bg::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	display: block !important;
	background:
		linear-gradient(90deg, rgba(10, 17, 32, .94) 0%, rgba(10, 17, 32, .82) 42%, rgba(10, 17, 32, .55) 100%),
		radial-gradient(900px 480px at 85% 30%, rgba(253, 76, 92, .12), transparent 65%);
}
.rh-hero.rh-hero--bg .rh-wrap { padding-top: 92px; padding-bottom: 96px; }
.rh-hero.rh-hero--bg .rh-hero-copy { max-width: 700px; }
@media (max-width: 767px) {
	.rh-hero.rh-hero--bg { min-height: 0; }
	.rh-hero.rh-hero--bg::after { background: linear-gradient(180deg, rgba(10, 17, 32, .86), rgba(10, 17, 32, .8)); }
	.rh-hero.rh-hero--bg .rh-wrap { padding-top: 64px; padding-bottom: 70px; }
}

/* ---- Hero v4: sunset over St. Peter's, colours kept vivid, dark only behind the text ---- */
.rh-hero.rh-hero--bg { min-height: 640px; }
.rh-hero.rh-hero--bg::before {
	inset: 0;
	background: var(--hero-img) 0% 38% / 150% auto no-repeat;
	filter: none;
	transform: none;
}
.rh-hero.rh-hero--bg::after {
	background:
		linear-gradient(90deg, rgba(8, 14, 28, .88) 0%, rgba(8, 14, 28, .66) 38%, rgba(8, 14, 28, .12) 72%, rgba(8, 14, 28, 0) 100%),
		linear-gradient(0deg, rgba(8, 14, 28, .35) 0%, rgba(8, 14, 28, 0) 35%);
}
@media (max-width: 1024px) { .rh-hero.rh-hero--bg::before { background-size: cover; background-position: 50% 40%; } }
@media (max-width: 767px) {
	.rh-hero.rh-hero--bg::before { background-position: 50% 38%; }
	.rh-hero.rh-hero--bg::after { background: linear-gradient(180deg, rgba(8, 14, 28, .72), rgba(8, 14, 28, .58)); }
}

/* ---- Hero v5: three photos of the museums fade into each other (CSS only) ---- */
.rh-hero.rh-hero--bg::before { display: none !important; }
.rh-slides { position: absolute; inset: 0; z-index: -2; overflow: hidden; background: #0c1424; }
.rh-slide { position: absolute; inset: 0; background-size: cover; background-repeat: no-repeat; opacity: 0; animation: rh-slide 18s linear infinite; will-change: opacity, transform; }
.rh-s1 { background-position: center 58%; animation-delay: -1s; }
.rh-s2 { background-position: center 46%; animation-delay: 5s; }
.rh-s3 { background-position: center 35%; animation-delay: 11s; }
@keyframes rh-slide {
	0%   { opacity: 0; transform: scale(1.02); }
	6%   { opacity: 1; }
	33%  { opacity: 1; }
	40%  { opacity: 0; transform: scale(1.1); }
	100% { opacity: 0; transform: scale(1.1); }
}
/* the photos are bright (white marble), so the dark side behind the text is stronger */
.rh-hero.rh-hero--bg::after {
	background:
		linear-gradient(90deg, rgba(8, 14, 28, .92) 0%, rgba(8, 14, 28, .78) 40%, rgba(8, 14, 28, .42) 75%, rgba(8, 14, 28, .3) 100%),
		linear-gradient(0deg, rgba(8, 14, 28, .35) 0%, rgba(8, 14, 28, 0) 40%);
}
@media (prefers-reduced-motion: reduce) {
	.rh-slide { animation: none; }
	.rh-s1 { opacity: 1; }
}
@media (max-width: 767px) {
	.rh-hero.rh-hero--bg::after { background: linear-gradient(180deg, rgba(8, 14, 28, .82), rgba(8, 14, 28, .72)); }
}
