.ROW .row::before,
.ROW .row::after {
	content: "";
	display: block;
	overflow: hidden;
}

.ROW .image {
	margin: 0 20rem 0 0;
}

.ROW .content hr {
	margin: 20rem 0;
}

.ROW .image[data-modal] {
	cursor: pointer;
	position: relative;
}

.ROW .image[data-modal]::after {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	width: 80rem;
	height: 80rem;
	background: var(--black) url(../svg/ui-play.svg) no-repeat center / 100%;
	border-radius: 100%;
	transform: translate(-50%, -50%);
	transition: background-color 0.25s;
}

.ROW .image[data-modal]:hover::after {
	background-color: var(--orange);
}

.ROW.alt-orange .b-button:not(.alt-outline) {background: var(--orange); color: var(--black);}
.ROW.alt-green .b-button:not(.alt-outline) {background: var(--green); color: var(--black);}
.ROW.alt-blue .b-button:not(.alt-outline) {background: var(--blue); color: var(--white);}

.ROW.alt-orange .b-button:hover,
.ROW.alt-green .b-button:hover,
.ROW.alt-blue .b-button:hover {background: var(--black); color: var(--white);}

.b-inverted .ROW.alt-orange .b-button:hover,
.b-inverted .ROW.alt-green .b-button:hover,
.b-inverted .ROW.alt-blue .b-button:hover {background: var(--white); color: var(--black);}

.ROW.alt-orange ul > li::before {background: var(--orange);}
.ROW.alt-green  ul > li::before {background: var(--green);}
.ROW.alt-blue ul > li::before {background: var(--blue);}


.ROW:not([data-style="product"], [data-style="full-img"]) .content :is(h1, h2, h3, h4, .b-h1, .b-h2, .b-h3, .b-h4) {
	border-bottom: 1px solid currentColor;
	padding-bottom: 0.75em;
	margin-bottom: 0.75em;
}

.ROW[data-style="product"] .b-livenx,
.ROW[data-style="product"] .b-threateye,
.ROW[data-style="product"] .b-livewire {
	display: inline-block;
	vertical-align: middle;
	margin-right: 30rem;
}

.ROW.no-underline h2 {
	border-bottom: none !important;
	margin-bottom: 0 !important;
}

.ROW[data-style="product"] .b-livenx + .b-tag,
.ROW[data-style="product"] .b-threateye + .b-tag,
.ROW[data-style="product"] .b-livewire + .b-tag {
	margin-top: 0;
}

.ROW[data-style="full-img"] .image {margin: 0 0 0 -100rem;}
.ROW[data-style="align-top"] .b-columns {align-items: flex-start;}

@media screen and (min-width: 961px) {
	.ROW[data-style="data-reverse"] .b-columns {flex-direction: row-reverse;}
	.ROW[data-style="data-reverse"] .image {margin: 0 0 0 20rem;}

	.ROW.alt-extended .image {margin: 0 20rem 0 -100rem;}
	.ROW[data-reverse].alt-extended .image {margin: 0 -100rem 0 20rem;}

	.ROW[data-style="full-img"] .content {margin: -40rem 0;}
	.ROW[data-style="full-img"][data-reverse] .image {margin: -100rem -100rem -100rem 0;}
	.ROW[data-style="full-img"][data-reverse].alt-img-right .image {margin-right: -380rem;}

	.b-section[data-style=""] .ROW[data-style="full-img"] .image {margin-bottom: -101rem;}
}

@media screen and (max-width: 960px) {
	.ROW .image {margin: 0;}
	.ROW .content h3 {display: block; margin: 0 0 10rem 0;}

	.ROW[data-style="full-img"] .b-column:first-child {display: none;}
}



/* ROW--MODAL */

.ROW--MODAL {
	background: var(--black);
}

.homepage-header {
	background: var(--black);
  overflow: hidden;
	color: var(--white);
	padding-top: 100rem !important;
}

.homepage-header .row {
	box-sizing: border-box;
  	max-width: 1180px;
  	padding: 0 20px;
	margin: 0 auto;
	position: relative;
}

.homepage-header h2 {
	border-bottom: none !important;
	margin-bottom: 0 !important;
	padding-bottom: 0 !important;
}

.homepage-header .b-button {
	background: var(--orange);
	color: var(--black);
}

.homepage-header .b-button:hover {
	background: var(--white);
}

.homepage-header .b-button.alt-outline {
	color: var(--white);
	background: var(--black);
	box-shadow: 0 0 0 1px var(--white);
}

.homepage-header .b-button.alt-outline:hover {
	color: var(--black);
	background: var(--white);
}

.homepage-header .b-columns ul {
	padding-left: 0;
	color: var(--orange);
	font-family: 'dm-sans', sans-serif;
}

.homepage-header .b-columns ul li {
	margin-bottom: 20px;
	font-size: 18px !important;
	line-height: 24px !important;
}

.homepage-header .b-columns ul li:before {
	content: none;
}

.homepage-header .b-columns {
	flex-wrap: nowrap;
	margin: 0;
	flex-direction: row !important;
}

.homepage-header .b-columns .b-column:nth-of-type(1) {
	order: 2;
  align-self: stretch;
	width: 100%;
	flex: 0 0 725px;
  padding: 144px 0 30px;
  position: relative;
	
}

.homepage-header .b-columns .b-column:nth-of-type(1):before {
  content: "";
  height: 700px;
  width: 795px;
  background: url(../svg/hero-background.svg) 0 0/cover no-repeat;
  position: absolute;
  right: 69px;
  top: 42px;
}

.banner-closed .homepage-header .b-columns .b-column:nth-of-type(1):before { 
	height: 100% !important;
	top: 0 !important;
	
}

.banner-closed .homepage-header {
	padding-top: 0 !important;
}


.homepage-header .b-columns .b-column:nth-of-type(2) {
	order: 1;
	flex: 0 0 590px;
  width: 100%;
  padding: 0;
  margin: 66px 48px 0 0;
}

.homepage-header .b-columns .b-column .image {
	position: relative;
	z-index: 1;
}

@media (max-width: 960px) { 
	.homepage-header:before {
		content: "";
    position: absolute;
    inset: 0;
    height: 105%;
    width: 100%;
    background: url(../svg/hero-background-mobile.svg) 405px 163px/cover no-repeat; 
	}
	
	.homepage-header {
		padding: 162px 0 64px !important;
    position: relative;
	}
	
	.homepage-header .b-columns {
		flex-direction: column !important;
		gap: 64px;
			padding: 65px 60px 0 !important;
	}
	
	.homepage-header .b-columns .b-column:nth-of-type(2) {
		flex: 1 1 auto;
    margin: 0;
    width: 100% !important;
	}
	
	.homepage-header .b-columns .b-column:nth-of-type(1):before {
		display: none;

	} 
	
	.homepage-header .b-columns .b-column:nth-of-type(1) {
		width: 100%;
		flex: 1 1 auto;
		padding: 0;
	}
}