/* t1175u CH00 Arrival — 1.0.0-ch00-arrival-t1175u
   Logo rule is global because header template 18230 (widget 40256bd) is shared.
   Visual size is 140% via transform so the masthead layout height does not grow.
   The logo widget clips overflow so the scaled file's blank margin cannot cover
   the utility bar or the menu. The mark itself stays inside the original box. */

.elementor-element-40256bd {
	overflow: hidden;
}
.elementor-element-40256bd .favethemes-site-logo img {
	transform: scale(1.4);
	transform-origin: center center;
}

/* ---------- CH00 hero (homepage only) ---------- */

.page-id-18 #video-background:before {
	background: linear-gradient(100deg, rgba(16, 28, 44, 0.78) 0%, rgba(39, 69, 101, 0.5) 34%, rgba(39, 69, 101, 0.16) 62%, rgba(39, 69, 101, 0) 100%) !important;
	opacity: 1 !important;
}

.page-id-18 .banner-caption {
	text-align: left !important;
	left: 7vw !important;
	right: auto !important;
	width: min(640px, 48vw) !important;
	top: 50% !important;
	bottom: auto !important;
	transform: translateY(-46%) !important;
	z-index: 2;
}

.t1175u-ch00 {
	color: #F7F3EA;
}

.t1175u-ch00__eyebrow {
	margin: 0 0 16px;
	font-family: Inter, Helvetica, Arial, sans-serif;
	font-size: 18px; /* t1178u: 1.5x the previous 12px. Phone is reduced below. */
	font-weight: 500;
	letter-spacing: 0.22em;
	line-height: 1.4;
	color: #C4A574;
	animation: t1175u-rise 0.45s ease 0.2s both;
}

.t1175u-ch00__headline {
	margin: 0;
	font-family: Cinzel, "Times New Roman", serif;
	font-weight: 500;
	font-size: 46px;
	line-height: 1.08;
	letter-spacing: 0.015em;
	color: #F7F3EA;
}

.t1175u-ch00__line {
	display: block;
	overflow: hidden;
}

.t1175u-ch00__line > span {
	display: block;
	animation: t1175u-mask 0.22s cubic-bezier(0.2, 0.7, 0.2, 1) both;
}

.t1175u-ch00__line:nth-child(1) > span { animation-delay: 0.4s; }
.t1175u-ch00__line:nth-child(2) > span { animation-delay: 0.6s; }
.t1175u-ch00__line:nth-child(3) > span { animation-delay: 0.78s; }

.t1175u-ch00__journey {
	position: relative;
	height: 18px;
	margin: 4px 0 14px;
}

.t1175u-ch00__journey-h {
	position: absolute;
	top: 8px;
	left: 0;
	width: 112px;
	height: 1px;
	background: transparent;
	animation: none;
}
/* t1176u correction 01: the visible line is the SVG path, not this anchor. */
.t1175u-ch00__draw {
	position: absolute;
	left: 0;
	top: 0;
	z-index: 3;
	pointer-events: none;
	overflow: visible;
}
.t1175u-ch00__draw path {
	fill: none;
	stroke: #C4A574;
	stroke-width: 1px;
	stroke-linecap: butt;
	stroke-linejoin: miter;
}

.t1175u-ch00__drop {
	position: absolute;
	left: 0;
	top: 0;
	width: 1px;
	height: 0;
	background: #C4A574;
	z-index: 3;
	pointer-events: none;
	animation: t1175u-fade 0.45s ease 0.9s both;
}

.t1175u-ch00__support {
	margin: 0 0 22px;
	max-width: 34em;
	font-family: Inter, Helvetica, Arial, sans-serif;
	font-size: 17px;
	font-weight: 400;
	line-height: 1.5;
	color: #F7F3EA;
	animation: t1175u-rise 0.4s ease 1.1s both;
}

.t1175u-ch00__ctas {
	display: flex;
	flex-wrap: wrap;
	gap: 18px 28px;
	animation: t1175u-rise 0.4s ease 1.3s both;
}

.t1175u-ch00__cta {
	display: inline-block;
	font-family: Inter, Helvetica, Arial, sans-serif;
	font-size: 13px;
	font-weight: 500;
	letter-spacing: 0.14em;
	line-height: 1.3;
	color: #F7F3EA;
	text-decoration: none;
	border-bottom: 1px solid #C4A574;
	padding: 2px 0 5px;
}

.t1175u-ch00__cta:hover {
	color: #C4A574;
}

.t1175u-ch00__cta:focus-visible {
	outline: 2px solid #C4A574;
	outline-offset: 4px;
}

#sundance-real-estate-services {
	scroll-margin-top: 16px;
}

@keyframes t1175u-rise {
	from { opacity: 0; transform: translateY(10px); }
	to { opacity: 1; transform: translateY(0); }
}

@keyframes t1175u-mask {
	from { opacity: 0; transform: translateY(110%); }
	to { opacity: 1; transform: translateY(0); }
}

@keyframes t1175u-fade {
	from { opacity: 0; }
	to { opacity: 1; }
}

@media (max-width: 1180px) {
	.t1175u-ch00__headline { font-size: 40px; }
	.page-id-18 .banner-caption { width: min(560px, 52vw) !important; }
}

@media (max-width: 1024px) {
	.t1175u-ch00__headline { font-size: 36px; }
}

@media (max-width: 767px) {
	.page-id-18 .top-banner-wrap {
		height: 580px !important;
		min-height: 580px !important;
	}
	.page-id-18 #video-background,
	.page-id-18 #video-background video {
		height: 580px !important;
	}
	.page-id-18 #video-background:before {
		background: linear-gradient(180deg, rgba(16, 28, 44, 0.42) 0%, rgba(20, 32, 48, 0.62) 28%, rgba(39, 69, 101, 0.42) 70%, rgba(39, 69, 101, 0.2) 100%) !important;
	}
	.page-id-18 .banner-caption {
		left: 20px !important;
		width: calc(100% - 40px) !important;
		top: 32px !important;
		transform: none !important;
	}
	.t1175u-ch00__headline {
		font-size: 30px;
		line-height: 1.14;
	}
	/* t1178u: 18px plus 0.22em tracking wraps on a 350px caption. 15px stays one line. */
	.t1175u-ch00__eyebrow { font-size: 15px; }
	.t1175u-ch00__support { font-size: 15px; }
	.t1175u-ch00__ctas {
		flex-direction: column;
		align-items: flex-start;
		gap: 14px;
	}
}

@media (min-width: 768px) {
	.t1175u-ch00__line > span { white-space: nowrap; }
}

@media (prefers-reduced-motion: reduce) {
	.t1175u-ch00__eyebrow,
	.t1175u-ch00__line > span,
	.t1175u-ch00__support,
	.t1175u-ch00__ctas,
	.t1175u-ch00__journey-h,
	.t1175u-ch00__drop {
		animation: none !important;
		opacity: 1 !important;
		transform: none !important;
	}
}
