/* general styles start */
html, body {
	scroll-behavior: smooth !important;
}
.pb-0, .pb-0 .col-inner {
	padding-bottom: 0;
}
@media(max-width: 850px) {
	.center-mobile {
		margin-inline: auto;
	}
}
.img-radius-1, .img-radius-1 img {
	border-radius: 10px;
}
.phone-box {
	display: flex;
	align-items: center;
	& .icon, .icon-box-text h3 {
		transition: 0.2s ease !important;
	}
}
.phone-box:hover {
	& .icon, .icon-box-text h3 {
		color: var(--fs-experimental-link-color-hover) !important;
	}
	& .icon {
		animation-name: trin;
		animation-duration: 1s;
		animation-iteration-count: infinite;
		animation-timing-function: linear;
	}
}
@keyframes trin {

	from {
		transform:rotate3d(0, 0, 1, 0deg);
	}
	20%, 32%, 44%, 56%, 68% {
		transform: rotate3d(0, 0, 1, 0deg);
	}
	23%, 35%, 47%, 59%, 71% {
		transform: rotate3d(0,0,1,15deg);
	}
	26%, 38%, 50%, 62%, 74% {
		transform: rotate3d(0,0,1,0deg);
	}
	29%, 41%, 53%, 65%, 77% {
		transform: rotate3d(0,0,1,-15deg);
	}
	80% {
		transform:rotate3d(0, 0, 1, 0deg);
	}

}
.custom-list li {
	margin-left: 0 !important;
	position: relative;
	list-style: none;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	gap: 0.5rem;
}
.custom-list li::before {
	content: "";
	position: relative;
	min-width: 20px;
	height: 20px;
	background-image: url("https://bvigilant.ca/wp-content/uploads/2025/04/shield-divided-four.svg");
	background-repeat: no-repeat;
}
.smoke-bottom, .smoke-top {
	position: relative;
}
.smoke-bottom::after, .smoke-top::before {
	content: "";
	position: absolute;
	width: 100%;
	height: 70px;
	z-index:1;
}
.smoke-bottom::after {
	bottom: 0;
	background: linear-gradient(to top, #f1f1f1, transparent);
}
.smoke-top::before {
	top: 0;
	background: linear-gradient(to bottom, #f1f1f1, transparent);
}

@media (min-width: 850px) {
	.only-desktop-smoke.smoke-bottom::after, .only-desktop-smoke.smoke-top::before
	{
		content: none !important;
	}
}
.glass-blur, .glass-blur-col .col-inner {
	background-color: rgba(255, 255, 255, 0.8) !important;
	border-radius: 10px;
	box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
	backdrop-filter: blur(15px);
	-webkit-backdrop-filter: blur(15px);
	border: 1px solid rgba(255, 255, 255, 0.3);
}
.gray.glass-blur-col .col-inner {
	background-color: rgba(241, 241, 241, 0.8) !important;
}
.box-blog-post img {
	border-radius: 10px !important;
}
.box-blog-post .post-title {
	color: var(--fs-color-primary);
}
.box-blog-post:hover .post-title {
	color: var(--fs-experimental-link-color-hover) !important;
}
.absolute-footer {
	color: #fff !important;
}
.footer-primary {
	padding:7.5px 0;
}
/* typography start */
h1 {
	font-size: 60px !important;
}
h2, .h2 {
	font-size: 50px;
}
p {
	font-size: 17px;
}
.blog-title {
	font-size: 50px !important;
}
@media(max-width: 1500px) {
	h1 {
		font-size: 45px !important;
	}
	.blog-title {
		font-size: 35px !important;
	}
}
@media(max-width: 930px) {
	h1 {
		font-size: 40px !important;
	}
	h2, .h2 {
		font-size: 30px;
	}
}
/* buttons start */
.button {
	width: fit-content;
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	transition: 0.4s ease;
}
.uacf7-next, .uacf7-prev, .button.primary:not(.is-outline) {
	background: var(--fs-color-primary);
	color: #fff;
	box-shadow: 0px 8px 16px rgba(72, 141, 255, 0.24);

	&:hover {
		box-shadow: none;
		background: #488dff;
	}
}
.button.primary.is-outline {
	background: transparent;
	color: var(--fs-color-primary);
	box-shadow: 0px 8px 16px rgba(72, 141, 255, 0.24);

	&:hover {
		color: #fff;
		box-shadow: none;
		background: var(--fs-color-primary);
	}
}
.button.secondary:not(.is-outline) {
	background: var(--fs-color-secondary);
	box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px;

	&:hover {
		box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 4px;
		background: #4E4E4E;
	}
}
.button.secondary.is-outline {
	background: transparent;
	color: var(--fs-color-secondary);
	box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px;

	&:hover {
		color: #fff;
		box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 4px;
		background: var(--fs-color-secondary);
	}
}
.uacf7-next, .uacf7-prev {
	padding: 0rem 2rem !important;
}
.uacf7-prev {
	background-color: tomato;
	box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px;
	&:hover {
		background-color: red !important;
	}
}
/* chips start */
.subtitle {
	background: var(--fs-color-primary);
	border-radius: 50px;
	width: fit-content;
	padding: 0.2rem 1rem;
}
.subtitle p {
	margin: 0 !important;
}
.center.subtitle {
	margin-inline: auto;
}
/* navbar start */
.nav-left {
	justify-content: center;
}
@media(max-width: 600px) {
	.main-banner .bg {
		display: none;
	}
}
@media (max-width: 1400px) {
	.header-nav-main li a {
		font-size: 12px;
	}
}
.nav-dropdown {
	border: none !important;
	border-radius: 10px;
	box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 4px;
}
/* plans row */
.plans-row .col-inner {
	display: flex;
	flex-direction: column;
	box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 4px;
	background: #fff;
	transition: 0.4s ease;
}
.plans-row .col-inner:hover {
	transform: scale(1.01);
}
.plans-row h3 {
	line-height: 38px;
}
/* .recommended-badge .col-inner div:nth-of-type(5) {
vertical-align: middle;
min-height: 150px !important;
} */
.plans-row .col-inner div:nth-of-type(5), .plans-row .col-inner .entry-text {
	min-height: 120px !important;
} 
.plans-page-row .col-inner .entry-text {
	min-height: 100px;
}
.plans-page-row .col-inner .button {
	width: 100%;
}
.plans-row .col-inner a {
	height: 45px;
}
.plans-row .col-inner .button.secondary {
	width: 100% !important;
}
.recommended-badge .col-inner  {
	position: relative;
}
.recommended-badge .col-inner::before {
	content: "Recommended";
	position: absolute;
	top: -15px;
	z-index: 100;
	left: 50%;
	background-color: #000;
	color: #fff;
	padding: 0.1rem 1rem;
	border-radius: 50px;
	transform: translatex(-50%);
}
/* form start */
.form-col form {
	padding: 0;
}
form .col {
	padding-bottom: 0;
}
.input {
	border: none !important;
	border-radius: 8px !important;
}
.input:focus {
	box-shadow: 0px 8px 16px rgba(72, 141, 255, 0.24) !important;
}

/* custom sections start */
.stats-section h3 {
	font-size: 28px;
	margin-bottom: 0;
}
.stats-section .is-border{
	border-color: #fff !important;
}
.benefits-row .icon-box-img {
	margin-bottom: 0;
}
.benefits-row p {
	color: #3E3E3E
}
.bio-column .box-image {

	margin-top: -18%;
	border: 5px solid var(--fs-color-primary);
	padding: 4px;
	& img {
		border-radius: 50%;

	}
}
@media (max-width: 850px) {
	.bio-column .box-image {
		width: 40% !important;
		margin-top: -30%;
		border-width: 3px;
	}
}
#sgpb-popup-dialog-main-div>div {
	background: #f1f1f1 !important;
	border-radius: 7px;
}

.plan-quote-row {
	display: flex !important;
	align-items: center;
	& input {
		box-shadow: none;
		border: none;
		margin: 0;
		color: var(--fs-color-primary);
		background: transparent;
		&:focus, :active {
			background: transparent !important;
			box-shadow: none !important;
			color: var(--fs-color-primary) !important;
		}
	}
}
:has(.wqoecf_form_title) {
	background: #f1f1f1;
	border-radius: 12px;
}
.wqoecf_enquiry_button {
	padding: unset !important;
}
#video-section {
	position: relative;
	height: 100vh;
	width: 100%;
	overflow: hidden;
	z-index: 1;
}

#bg-video {
	position: absolute;
	top: 0;
	left: 0;
	width: 100vw;
	height: calc(100vh - 70px);
	object-fit: cover;
	z-index: 1;
}

.floating-content {
	position: relative;
	z-index: 2;
}
@media (min-width: 850px) {
	.blog-single .entry-header {
		display: flex;
		& .entry-header-text {
			width: 80%;
		}
		& .entry-image {
			max-height: 250px;
		}
		& .entry-image img{
			border-radius: 10px;
			aspect-ratio: 1;
			object-fit: cover;
			max-height: 100%;
		}
	}
}
@media (max-width: 600px) {
	.hide-mobile {
		display: none;
	}
}
.uacf7-steps .steps-row {
	margin-bottom: 1rem;
	& .steps-step {
		border-radius: 4px;
		& a {
			border-radius: 4px !important;
			height: 100% !important;
			& p {
				margin-top: 0 !important;
				display: block !important;
			}
		}
	}
}
.steps-form .steps-row .steps-step .btn-circle.uacf7-btn-active {
	background-color: var(--fs-color-primary) !important;
}
.cust-icon img {
	margin-bottom: 8px
}

.type-card , .banner-bg, .type-card .box-image {
	border-radius: 12px !important;
}
@media(min-width: 850px) {
	.type-card {
		overflow: hidden;
		position: relative;
	}
	.type-card:hover {
		& .icon-box, .desc-text {
			transform: translatey(0);
		}
	}
	.type-card { 
		& .icon-box {
			transition: 0.3s ease;
			transform: translatey(50px);
		}
		& .desc-text {
			transition: 0.3s ease;
			transform: translatey(200%);
		}
	}
}
.inner-banner img {
	border-radius: 12px;
}
.money-back-guarantee {
	position: relative;
}
.money-back-guarantee::after {
	content: "";
	position: absolute;
	top: -50px;
	right: -10px;
	width: 100px;
	height: 100px;
	background-image: url("https://bvigilant.ca/wp-content/uploads/2025/04/boney-back-guarantee.svg");
	background-size: cover;
	transform: rotate(8deg);
}
.read-more-section {
	max-height: 150px;
	overflow: hidden;
	position: relative;
	transition: all 0.3s ease;
}
.read-more-section::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	background-image: linear-gradient(to top, #fff, transparent);
	width: 100%;
	height: 40px;
	transition: all 0.3s ease;
}
.read-more-section.active::after {
	display: none;
} 
.read-more-btn {
	padding: 0;
	margin: 0;
	width: 100%;
	font-size: 14px;
	display: flex;
	justify-content: center;
	gap: 0.3rem;
	transition: all 0.3s ease;
}
.read-more-btn::after {
	content: "▼";
	font-size: 10px;
	position: relative;
	transition: all 0.3s ease;
}
.active::after {
	transform: rotate(180deg);
}
.read-more-btn:hover {
	color: var(--fs-color-primary);
}
.read-more-section.active {
	max-height: 1000px;
}

.cog-section__inner .cog-row .cog-col {
	width: 100% !important;
}
.captcha-image {
	border: none;
	width: 100%;
}
.captcha-image label>input:checked+svg, .captcha-image label>input:focus+svg {
	border: 2px solid var(--fs-color-primary);
	border-radius: 50%;
}