.elementor-widget-wcc-hero { width: 100%; }
.elementor-widget-wcc-hero > .elementor-widget-container { width: 100%; }
.wcc-hero {
	--wcc-hero-content: var(--wcc-white);
	--wcc-hero-overlay: color-mix(in srgb,var(--wcc-navy-ligth) 64%, transparent);
	align-items: center;
	background-image: var(--wcc-hero-image);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	color: var(--wcc-hero-content);
	display: flex;
	justify-content: center;
	min-height: calc(100vh - 64px);
	min-height: calc(100svh - 64px);
	overflow: hidden;
	padding: 80px 28px;
	position: relative;
	text-align: center;
}
.wcc-hero__overlay { background: var(--wcc-hero-overlay); inset: 0; position: absolute; }
.wcc-hero__content { margin: 0 auto; max-width: 1050px; position: relative; z-index: 1; }
.wcc-hero__eyebrow { color: var(--wcc-sky); font-family: "Inter", Arial, sans-serif; font-size: 13px; font-weight: 700; letter-spacing: .2em; margin: 0 0 20px; text-transform: uppercase; }
.wcc-hero__title { color: inherit; font-family: "Newsreader", Georgia, serif; font-size: clamp(54px, 7.1vw, 106px); font-weight: 600; letter-spacing: -.045em; line-height: .91; margin: 0 auto; max-width: 1000px; text-wrap: balance; }
.wcc-hero__description { color:var(--wcc-navy-ligth); font-family: "Inter", Arial, sans-serif; font-size: clamp(16px, 1.4vw, 22px); line-height: 1.55; margin: 34px auto 35px; max-width: 820px; }
.wcc-hero__actions { display: flex; flex-wrap: wrap; gap: 14px; justify-content: center; }
.wcc-hero .wcc-button { border-radius: 8px; min-height: 56px; padding: 16px 25px; }
.wcc-hero .wcc-button--primary { background: var(--wcc-red); color: var(--wcc-white); }
.wcc-hero .wcc-button--secondary { background: var(--wcc-sky); color:var(--wcc-navy-ligth); }
.wcc-hero--market .wcc-hero__description { color: var(--wcc-cream); }
.wcc-hero--market .wcc-button--secondary {     background: #0d1c2e8c; border: 1px solid var(--wcc-sky); color: var(--wcc-sky); }
.wcc-hero--home {
	align-items: center;
	background-position: center;
	color:var(--wcc-navy-ligth);
	justify-content: flex-start;
	min-height: calc(100vh - 104px);
	min-height: calc(100svh - 104px);
	padding: 90px max(32px, calc((100vw - 1420px) / 2)) 105px;
	text-align: left;
}
.wcc-hero--home .wcc-hero__overlay { background: linear-gradient(90deg, rgb(255 255 255 / 94%) 0%, rgb(255 255 255 / 76%) 39%, rgb(255 255 255 / 20%) 68%, transparent 84%); }
.wcc-hero--home .wcc-hero__content { margin: 0 auto; max-width: 1050px; text-align: left; width: 100%; }
.wcc-hero--home .wcc-hero__eyebrow { align-items: center; color: var(--wcc-red); display: flex; font-size: 14px; font-weight: 700; gap: 16px; letter-spacing: .15em; margin-bottom: 28px; text-transform: uppercase; }
.wcc-hero--home .wcc-hero__eyebrow::before { background: var(--wcc-red); border-radius: 999px; content: ""; flex: 0 0 50px; height: 4px; }
.wcc-hero--home .wcc-hero__title { font-size: clamp(58px, 5.3vw, 84px); font-weight: 400; letter-spacing: -.025em; line-height: 1.08; margin: 0; max-width: 850px; text-wrap: balance; }
.wcc-hero--home .wcc-hero__description { font-size: clamp(17px, 1.3vw, 21px); font-weight: 500; letter-spacing: 0; line-height: 1.6; margin: 32px 0 36px; max-width: 740px; }
.wcc-hero--home .wcc-hero__description p { color:var(--wcc-navy-ligth); margin: 0; }
.wcc-hero--home .wcc-hero__description strong { font-weight: 700; }
.wcc-hero--home .wcc-hero__actions { justify-content: flex-start; }
.wcc-hero--home .wcc-button { border-radius: 9px; font-size: 16px; font-weight: 700; min-height: 60px; padding-inline: 32px; transition: box-shadow 220ms ease, filter 220ms ease, transform 220ms ease; }
.wcc-hero--home .wcc-button--secondary { background-color:var(--wcc-navy-ligth) !important; color: var(--wcc-white) !important; }
body.admin-bar .wcc-hero { min-height: calc(100vh - 96px); min-height: calc(100svh - 96px); }
body.home.admin-bar .wcc-hero--home { min-height: calc(100vh - 136px); min-height: calc(100svh - 136px); }
@media (hover: hover) and (pointer: fine) {
	.wcc-hero--home .wcc-button:hover { box-shadow: 0 12px 24px rgb(13 27 61 / 20%); filter: brightness(1.06); transform: translateY(-3px); }
}
.wcc-hero--home .wcc-button:active { box-shadow: 0 4px 10px rgb(13 27 61 / 15%); transform: translateY(0) scale(.98); }
.wcc-hero--home .wcc-button:focus-visible { outline: 3px solid color-mix(in srgb, var(--wcc-sky) 72%, white); outline-offset: 4px; }
@media (prefers-reduced-motion: reduce) {
	.wcc-hero--home .wcc-button { transition: none; }
}
@media (max-width: 640px) {
	.wcc-hero { min-height: calc(100vh - 68px); min-height: calc(100svh - 68px); padding: 72px 20px; }
	.wcc-hero__title { font-size: 49px; }
	.wcc-hero__description { font-size: 16px; margin-block: 25px 29px; }
	.wcc-hero__actions { align-items: stretch; flex-direction: column; }
	.wcc-hero--home { background-position: 62% center; min-height: calc(100vh - 76px); min-height: calc(100svh - 76px); padding: 64px 20px 72px; }
	.wcc-hero--home .wcc-hero__overlay { background: linear-gradient(90deg, rgb(255 255 255 / 96%) 0%, rgb(255 255 255 / 80%) 68%, rgb(255 255 255 / 42%) 100%); }
	.wcc-hero--home .wcc-hero__eyebrow { font-size: 12px; gap: 12px; letter-spacing: .12em; }
	.wcc-hero--home .wcc-hero__eyebrow::before { flex-basis: 34px; }
	.wcc-hero--home .wcc-hero__title { font-size: 48px; }
	.wcc-hero--home .wcc-hero__description { font-size: 16px; }
}
@media (max-width: 782px) {
	body.admin-bar .wcc-hero { min-height: calc(100vh - 114px); min-height: calc(100svh - 114px); }
	body.home.admin-bar .wcc-hero--home { min-height: calc(100vh - 122px); min-height: calc(100svh - 122px); }
}
