html {
	--tv-blue: #4584ed;
	--tv-red: #ba0000;
	--tv-grey: #6e6e6e;
	--tv-grey-dark: #343b43;
	--tv-grey-darker: #30363d;
	--tv-grey-light: #eee;
	--tv-green: #00a37f;
}

body {
	font-family: 'Open Sans', system-ui, sans-serif;
}

.h1,
.h2,
.h3,
h1,
h2,
h3 {
	font-weight: 700;
}

.fw-600 {
	font-weight: 600;
}

.text-tv-blue {
	color: var(--tv-blue) !important;
}
.bg-tv-blue,
.bg-tv-blue:hover {
	background-color: var(--tv-blue) !important;
	color: white;
}

.text-tv-red {
	color: var(--tv-red) !important;
}
.bg-tv-red,
.bg-tv-red:hover {
	background-color: var(--tv-red) !important;
	color: white;
}

.text-tv-grey {
	color: var(--tv-grey) !important;
}
.bg-tv-grey,
.bg-tv-grey:hover {
	background-color: var(--tv-grey) !important;
	color: white;
}

.bg-tv-grey-dark,
.bg-tv-grey-dark:hover {
	background-color: var(--tv-grey-dark) !important;
	color: white;
}

.bg-tv-grey-light {
	background-color: var(--tv-grey-light) !important;
}

.text-tv-green {
	color: var(--tv-green) !important;
}
.bg-tv-green,
.bg-tv-green:hover {
	background-color: var(--tv-green) !important;
	color: white;
}

.btn-primary,
.btn-primary:hover {
	background-color: var(--tv-red);
	color: white;
}

.bg-tv-red-gradient,
.bg-tv-red-gradient:hover {
	background: linear-gradient(to right, #ba0000 0%, #ba0000 20%, red 100%) !important;
	color: white;
}

.btn:focus-visible,
button:focus-visible {
	outline: 2px solid var(--tv-blue);
}

.tv-shadow {
	box-shadow:
		rgba(0, 0, 0, 0.2) 0px 4px 10px 0px,
		rgba(0, 0, 0, 0.19) 0px 4px 20px 0px;
}

.tv-banner-red {
	background-image: url(/images/banners/ExecTeam_banner.png);
	min-height: 250px;
	margin-bottom: 2.5rem;
	padding-top: 1.875rem;
	padding-bottom: 1.875rem;
	background-position: center center;
	background-repeat: no-repeat;
	background-color: var(--tv-red);
	color: white;
	display: flex;
}

.tv-banner-new {
	background-image: url(/images/banners/Privacy_Policy.png);
	min-height: 255px;
	padding-top: 0rem;
	padding-bottom: 4rem;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	color: white;
	display: flex;
}

.tv-glass {
	background: rgba(255, 255, 255, 0.8);
	backdrop-filter: blur(3px);
	-webkit-backdrop-filter: blur(3px);
}
.tv-glass-dark {
	background: rgba(255, 255, 255, 0.1);
	backdrop-filter: blur(3px);
	-webkit-backdrop-filter: blur(3px);
}

.tv-circle {
	background-color: var(--tv-red);
	border-radius: 50%;
	border: 6px solid var(--tv-red);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: white;
	text-decoration: none !important;
}
.tv-circle i {
	font-size: xx-large;
	font-weight: 400;
}

.text-balance {
	text-wrap: balance;
}

@media screen and (max-width: 991px) {
	.bgAtLg {
		background-image: none !important;
	}
}
@media screen and (max-width: 1199px) {
	.bgAtXL {
		background-image: none !important;
	}
}

.tv-bg-swoosh {
	background-position: left bottom;
	background-repeat: no-repeat;
	background-size: cover;
}
.checkout-partner-pics {
	max-height: 70vh;
	max-width: 100%;
}
.product-text {
	max-width: 300px;
	margin: 1rem auto;
	text-align: left;
}

/* begin flip card css */
.flip-card {
	background-color: transparent;
	width: 325px;
	height: 435px;
	border: 1px solid rgba(255, 255, 255, 0.3);
	perspective: 1000px; /* Remove this if you don't want the 3D effect */
}

/* This container is needed to position the front and back side */
.flip-card-inner {
	position: relative;
	width: 100%;
	height: 100%;
	text-align: center;
	transition: transform 0.8s;
	transform-style: preserve-3d;
}

/* Do an horizontal flip when you move the mouse over the flip box container */
.flip-card:hover .flip-card-inner,
.flip-card:focus .flip-card-inner {
	transform: rotateY(180deg);
}

/* Position the front and back side */
.flip-card-front,
.flip-card-back {
	position: absolute;
	width: 100%;
	height: 100%;
	-webkit-backface-visibility: hidden; /* Safari */
	backface-visibility: hidden;
}

/* Style the front side (fallback if image is missing) */
.flip-card-front {
	background-color: #333333;
	color: white;
}

/* Style the back side */
.flip-card-back {
	background-color: #333;
	color: white;
	transform: rotateY(180deg);
}

.tv-h-align .card {
	height: 100%;
}

.tv-blog {
	img {
		max-width: 100%;
	}
	figcaption {
		font-size: small;
		margin: 0.5rem auto;
	}
	h1 {
		margin-block: 2.5rem 2rem;
		font-weight: normal;
	}
	h2 {
		margin-block: 2.5rem 1.5rem;
		font-weight: normal;
	}
	p,
	li {
		line-height: 1.8;
	}
}
