/* Parent gateway: shared identity and three equal entrances. */
body { --bb-section-accent: var(--bb-yellow); }

/* Keep the gateway compact so the three venture entrances lead the page. */
.bb-parent-hero {
	padding-block: clamp(1.25rem, 3vw, 2rem);
}

.bb-parent-hero::after {
	right: -5rem;
	bottom: -11rem;
	width: 22rem;
	border-width: 3.5rem;
}

.bb-parent-hero__inner {
	grid-template-columns: minmax(7rem, 9rem) minmax(0, 1fr);
	gap: clamp(1.5rem, 4vw, 3rem);
}

.bb-parent-logo {
	width: 100%;
	padding: 0.5rem;
	box-shadow: 0.55rem 0.55rem 0 var(--bb-yellow);
}

.bb-parent-hero__copy h1 {
	max-width: none;
	margin-block: 0.2rem 0.45rem;
	font-size: clamp(2.1rem, 4.5vw, 3.75rem);
	line-height: 0.95;
}

.bb-parent-hero__copy > p:not(.bb-eyebrow) {
	margin-block: 0;
	font-size: 1rem;
}

.bb-parent-entrances {
	padding-block: clamp(2rem, 5vw, 4rem);
}
.bb-parent-hero { background: var(--bb-teal); color: var(--bb-white); }
.bb-parent-entrances__grid { align-items: stretch; }

.bb-entrance {
	position: relative;
	isolation: isolate;
	min-height: clamp(32rem, 48vw, 40rem);
	overflow: hidden;
	padding: 0;
	color: var(--bb-white);
	background: var(--bb-teal);
}

.bb-entrance::before {
	position: absolute;
	inset: 30% 0 0;
	z-index: -1;
	background: linear-gradient(to bottom, transparent 0%, rgb(3 27 36 / 42%) 34%, rgb(3 27 36 / 96%) 100%);
	content: "";
	pointer-events: none;
}

.bb-entrance::after {
	display: none;
}

.bb-entrance__media {
	position: absolute;
	inset: 0;
	z-index: -2;
}

.bb-entrance__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 350ms ease;
}

.bb-entrance:hover .bb-entrance__media img,
.bb-entrance:focus-visible .bb-entrance__media img {
	transform: scale(1.025);
}

.bb-entrance__title {
	position: absolute;
	top: clamp(1.25rem, 3vw, 2rem);
	left: 0;
	z-index: 2;
	display: grid;
	min-width: min(82%, 18rem);
	padding: 0.75rem clamp(1.25rem, 3vw, 2rem) 0.9rem;
	box-shadow: 0.45rem 0.45rem 0 rgb(3 27 36 / 34%);
	color: var(--bb-teal);
	background: var(--bb-yellow);
}

.bb-entrance__title > span {
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.14em;
	line-height: 1.2;
	text-transform: uppercase;
}

.bb-entrance__title > strong {
	margin: 0.15rem 0 0;
	padding: 0;
	font-family: "Cormorant Garamond", Georgia, serif;
	font-size: clamp(2rem, 3.6vw, 3rem);
	line-height: 0.95;
}

.bb-entrance--willow .bb-entrance__title {
	color: var(--bb-white);
	background: #5a302f;
}

.bb-entrance--homestead .bb-entrance__title {
	color: var(--bb-white);
	background: var(--bb-teal);
}

.bb-entrance__caption {
	display: grid;
	align-content: end;
	gap: 1.25rem;
	width: 100%;
	margin-top: auto;
	padding: clamp(7rem, 14vw, 10rem) clamp(1.5rem, 3vw, 2.25rem) clamp(1.5rem, 3vw, 2.25rem);
}

.bb-entrance__caption > strong {
	max-width: 18ch;
	margin: 0;
	padding: 0;
	color: var(--bb-white);
	font-family: "Cormorant Garamond", Georgia, serif;
	font-size: clamp(1.85rem, 3vw, 2.65rem);
	line-height: 1.05;
	text-wrap: balance;
	text-shadow: 0 0.12rem 0.3rem rgb(0 0 0 / 35%);
}

.bb-entrance__link {
	justify-self: start;
	border-bottom: 0.15rem solid currentcolor;
	padding-bottom: 0.15rem;
	color: var(--bb-white);
	font-weight: 700;
	text-decoration: none;
}

.bb-entrance__link span {
	display: inline-block;
	transition: transform 180ms ease;
}

.bb-entrance:hover .bb-entrance__link span,
.bb-entrance:focus-visible .bb-entrance__link span {
	transform: translateX(0.25rem);
}

@media (max-width: 48rem) {
	.bb-parent-hero__inner {
		grid-template-columns: minmax(5.5rem, 7rem) minmax(0, 1fr);
		gap: 1.25rem;
	}

	.bb-parent-logo {
		width: 100%;
		margin-inline: 0;
		box-shadow: 0.4rem 0.4rem 0 var(--bb-yellow);
	}

	.bb-parent-hero__copy h1 {
		font-size: clamp(1.8rem, 8vw, 2.65rem);
	}

	.bb-parent-hero__copy > p:not(.bb-eyebrow) {
		display: none;
	}

	.bb-entrance {
		min-height: 31rem;
	}

	.bb-entrance__title {
		min-width: min(78%, 20rem);
	}

	.bb-entrance__caption > strong {
		font-size: clamp(1.8rem, 8vw, 2.5rem);
	}
}

@media (prefers-reduced-motion: reduce) {
	.bb-entrance__media img,
	.bb-entrance__link span {
		transition: none;
	}
}


/* Current parent gateway hero. Venture cards below are the only primary actions. */
.bb-parent-hero{
	position:relative;
	isolation:isolate;
	padding:0;
	background-image:
		linear-gradient(90deg, rgb(3 61 80 / 93%) 0%, rgb(3 61 80 / 86%) 45%, rgb(3 61 80 / 58%) 72%, rgb(3 61 80 / 42%) 100%),
		var(--bb-parent-hero-image);
	background-position:center 56%;
	background-size:cover;
	background-repeat:no-repeat;
	color:var(--bb-white);
}
.bb-parent-hero::after{
	display:none;
}
.bb-parent-hero__inner{
	display:flex;
	min-height:clamp(18rem,33vh,23rem);
	grid-template-columns:none;
	align-items:center;
	padding-block:clamp(1.75rem,3.5vw,2.75rem);
}
.bb-parent-hero__copy{
	max-width:52rem;
}
.bb-parent-hero__copy h1{
	max-width:16ch;
	margin:.2rem 0 .55rem;
	font-size:clamp(2.5rem,5vw,4.5rem);
	line-height:.9;
}
.bb-parent-hero__copy > p.bb-parent-hero__lede{
	dis:block;
	max-width:46rem;
	margin:0;
	font-size:clamp(.98rem,1.45vw,1.12rem);
	line-height:1.42;
}
.bb-parent-hero__direction{
	display:block!important;
	margin:.7rem 0 0!important;
	color:var(--bb-yellow)!important;
	font-size:.92rem!important;
	font-weight:700;
}
.bb-parent-logo,
.bb-parent-hero__callout{
	display:none!important;
}
@media(max-width:48rem){
	.bb-parent-hero{
		background-image:
			linear-gradient(90deg, rgb(3 61 80 / 92%), rgb(3 61 80 / 72%)),
			var(--bb-parent-hero-image);
		background-position:center;
	}
	.bb-parent-hero__inner{
		display:flex;
		min-height:auto;
		padding-block:2.25rem;
	}
	.bb-parent-hero__copy h1{
		font-size:clamp(2.55rem,12vw,4rem);
	}
	.bb-parent-hero__copy > p.bb-parent-hero__lede{
		dis:block;
		font-size:.98rem;
	}
}
