section.section-bento-box {
	padding: 2rem;
}

.bento-box-container {
	display: grid;
	grid-gap: 2rem;
	grid-template-columns: repeat(6, 1fr);
}

.bento-tile,
.bento-third-width,
.bento-half-width,
.bento-two-third-width,
.bento-full-width {
  	grid-column: span 6;
}

.bento-tile {
	align-items: center;
	display: flex;
	border-radius: 1rem;
	flex-direction: column;
	min-height: 380px;
  	padding: 2.5rem;
	a:link.cta-button-arrow-pill {
		font-size: var(--14px);
		line-height: 2rem;
		padding-bottom: 3px;
		padding-top: 3px;
	}
	&:has(.bento-tile-media.media-overflow) {
		min-height: 350px;
	}
	&.brand-background-image.dark,
	&.brand-color-background-petrol,
	&.brand-color-background-gradient-dark {
		.eyebrow-text {
			color: var(--color-green-light);
		}
	}
}

.bento-third-width {
	background-size: cover;
	background-position: bottom right;
	background-repeat: no-repeat;
}

.bento-two-third-width {
	&:has(.bento-tile-media) {
		gap: 1.25rem;
		.bento-tile-text {
			order: 1;
		}
	}
	&:has(.bento-tile-media-ss) {
		.bento-tile-media {
			display: none;
		}
	}
}

.bento-full-width {
	padding: 0;
	.bento-tile-text {
		padding: 2.5rem;
		p {
			font-size: var(--18px);
			line-height: 140%; /* 1.575rem */
			letter-spacing: -0.02719rem;
		}
	}
}

.bento-tile-text {
	align-items: flex-start;
  	align-self: flex-start;
  	display: flex;
  	flex-direction: column;
  	height: 100%;
  	justify-content: space-around;
  	width: 100%;
	h4, .headline-four {
		letter-spacing: -0.03125rem;
	}
	h5, .headline-five {
		font-size: clamp(1.15rem, 1vw + 1rem, 1.375rem);
		letter-spacing: -0.03125rem;
	}
  	h6, .headline-six {
		font-weight: 400;
	}
	p.eyebrow-text {
		color: var(--color-petrol-50);
		font-size: var(--14px);
		line-height: 140%;  /* 1.225rem */
		&.bottom {
			margin-top: .69rem;
		}
	}
}

.bento-tile-media {
	display: flex;
	justify-content: center;
	align-self: center;
	&.media-overflow {
		flex: 1 1;
  		margin-top: -1.5rem;
	}
}

@media screen and (min-width: 768px) {
	.bento-tile,
	.bento-third-width,
	.bento-half-width,
	.bento-two-third-width {
		grid-column: span 3;
	}
	.bento-tile {
		flex-direction: row;
	}
	.bento-two-third-width {
		.bento-tile-text {
			width: 70%;
		}
		&:has(.bento-tile-media) {
			flex-direction: column;
			.bento-tile-text {
				align-self: flex-start;
				width: 100%;
			}
		}
	}
	.bento-full-width {
		grid-column: span 6;
		.bento-tile-text {
			width: 50%;
		}
		.bento-tile-media {
			align-self: flex-end;
		}
	}
	.bento-tile-text {
		justify-content: space-between;
	}
}

@media screen and (min-width: 1271px) {
	section.section-bento-box {
		&:has(.bento-tile-media.media-overflow) {
			padding-top: 6rem;
		}
	}
	.bento-tile {
		grid-column: span 1;
	}
	.bento-third-width {
		grid-column: span 2;
		background-size: 150%;
		.bento-tile-text {
			width: 280px;
        	max-width: 100%;
		}
	}
	.bento-half-width {
		grid-column: span 3;
	}
	.bento-two-third-width {
		grid-column: span 4;
		&:has(.bento-tile-media) {
			flex-direction: row;
			gap: 0;
			justify-content: space-between;
			.bento-tile-text {
				order: 0;
				width: 55%;
			}
		}
		&:has(.bento-tile-media-ss) {
			.bento-tile-media {
				display: flex;
                justify-content: center;
                align-items: center;
                width: calc(50% - 40px);
                padding-left: 40px;
			}
			.bento-tile-media-ss {
				display: none;
			}
		}
	}
	.bento-full-width {
		grid-column: span 6;
		justify-content: space-between;
		.bento-tile-text {
			padding: 3.3125rem 5.9rem;
		}
	}
	.bento-tile-media {
		&.media-overflow {
			margin-top: -5.5rem;
		}
	}
}
@media screen and (min-width: 1371px) {
	.bento-tile-media {
		&.media-overflow {
			padding-right: 4rem;
		}
	}
}

@media (max-width: 580px) {
	section.section-bento-box {
		padding: 2rem 1.5rem;
	}
}