/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */

.header-main {
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
}
.bnr-main {
	max-width: 1580px;
	margin: auto;
	margin-right: 0;
	padding-left: 15px;
}
.bdr-rds img {
	display: block !important;
	width: 100%;
	border-radius: 0px 0px 0px 50px;
	box-shadow: rgba(50, 50, 93, 0.25) 0px 6px 12px -2px, rgba(0, 0, 0, 0.3) 0px 3px 7px -3px;
}
.pad100 {
	padding: 100px 15px;
}
.pt100 {
	padding-top: 200px;
}
.pt0 {
	padding-top: 0px !important;
}
.pb0 {
	padding-bottom: 0px !important;
}
.pl60 {
	padding-left: 60px;
}
.pr60 {
	padding-right: 60px;
}
.mt50 {
	margin-top: 50px;
}
.mt30 {
	margin-top: 30px;
}
.mt20 {
	margin-top: 20px;
}
.bnr-hd > .elementor-widget-container, .big-hd > .elementor-widget-container, .main-hd > .elementor-widget-container {
	margin-bottom: 25px;
}
.bnr-hd h1 {
	font-size: 60px;
	line-height: 75px;
}
.bnr-hd h1::after {
	content: "";
	width: 84px;
	height: 84px;
	top: -20px;
	left: -30px;
	position: absolute;
	z-index: -1;
	background: url(http://localhost/virtual-office/wp-content/uploads/2024/10/hero-star.png) 0 0/contain no-repeat;
	display: block;
	-webkit-animation: 25s linear infinite rotate;
	animation: 25s linear infinite rotate;
	filter: invert(100) brightness(100);
}
.bnr-hd h1 span, .big-hd h2 span, .main-hd h3 span {
	background-image: linear-gradient(45deg, #ff1cbf, #0ca7ff, #0500e2);
	background-size: 100%;
	-webkit-background-clip: text;
	-moz-background-clip: text;
	-webkit-text-fill-color: transparent;
	-moz-text-fill-color: transparent;
	margin: 0;
}
.big-hd h2 {
	font-size: 50px;
	line-height: 65px;
}
.main-hd h3 {
	font-size: 40px;
	line-height: 55px;
}
.defbtn .elementor-widget-container {
	margin-top: 20px;
}
.defbtn a {
	background: linear-gradient(45deg, #ff1cbf, #0ca7ff, #0500e2);
	color: #fff !important;
	font-size: 16px;
	line-height: normal;
	border-radius: 10px;
	padding: 15px 26px;
	text-transform: uppercase;
	transition: 0.5s ease-in-out;
}
.defbtn a:hover {
	background: linear-gradient(45deg, #0500e2, #ff1cbf, #0ca7ff);
}
.loc-card {
	margin: 10px;
	position: relative;
	overflow: hidden;
	border-radius: 10px;
	box-shadow: 0px 6px 17px 0px #00000040;
}
.loc-card .caption {
	position: absolute;
	z-index: 1;
	max-width: max-content;
	padding: 7px 20px;
	border-radius: 5px;
	background: #ffffffd4;
}
.loc-card .caption h6 {
	color: #fff;
	text-transform: uppercase;
	font-size: 13px;
	background-image: linear-gradient(45deg, #ff1cbf, #0ca7ff, #0500e2);
	background-size: 100%;
	-webkit-background-clip: text;
	-moz-background-clip: text;
	-webkit-text-fill-color: transparent;
	-moz-text-fill-color: transparent;
}
.loc-card img {
	display: block !important;
	width: 100%;
	transition: 0.5s all ease-in-out;
}
.loc-card:hover img {
	transform: rotate(2deg) scale(1.1);
}
.steps {
	padding: 0px 20px;
	position: relative;
	border-left: 1px solid #00000029;
}
.steps h6 {
	font-size: 14px;
	margin-bottom: 24px;
	text-transform: uppercase;
	border: 1px solid #000;
	padding: 10px;
	max-width: max-content;
	border-radius: 10px;
	transform: rotate(10deg);
	transition: 0.5s ease-in-out;
}
.steps:hover h6 {
	transform: rotate(0deg);
	margin-bottom: 15px;
	background: linear-gradient(90deg, #ff1cbf 0, #a151d8 48.5%, #0ca7ff 100%), linear-gradient(0deg, #101113, #101113);
	background-clip: border-box, border-box;
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	border: 1px solid #ff00002e;
}
.steps img {
	display: block;
	width: 100%;
	border-radius: 10px;
	margin-bottom: 10px;
}
.plan-card {
	margin: 20px;
	padding: 20px 20px 90px;
	background: #fff;
}
.plan-card img {
	max-width: 100px;
	margin-bottom: 15px;
}
.plan-card h5 {
	margin-bottom: 16px;
	border-bottom: 1px solid #00000021;
	padding-bottom: 20px;
	font-size: 16px;
}
.plan-card h5 span {
	font-size: 35px;
	background: linear-gradient(90deg, #ff1cbf 0, #a151d8 48.5%, #0ca7ff 100%), linear-gradient(0deg, #101113, #101113);
	background-clip: border-box, border-box;
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}
.plan-card h4 {
	margin-bottom: 20px;
	font-size: 30px;
	line-height: normal;
}
.plan-card .defbtn {
	position: absolute;
	bottom: -60px;
}
.site-list ul {
	padding: 0;
	list-style: none;
}
.site-list ul li {
	position: relative;
	padding-left: 30px;
	margin-bottom: 10px;
}
.site-list ul li::before {
	position: absolute;
	content: "";
	background-image: url("https://www.virtualbase.in/wp-content/uploads/2024/10/check-mark-icon.png");
	width: 20px;
	height: 20px;
	left: 0;
	top: 0;
	background-repeat: no-repeat;
	background-size: 16px;
}
.pl40 {
	padding-left: 40px;
}
.pr40 {
	padding-right: 40px;
}
.timeline-story .twae-start, .timeline-story .twae-end {
	background-color: #e02dc7 !important;
}
.cont-form {
    padding: 40px;
}
.cont-form .wpforms-field-container {
	display: flex;
	flex-wrap: wrap;
}
.half-col {
	width: calc(100% / 2 - 20px) !important;
	display: inline-block;
	margin: 0px 8px !important;
	padding-top: 0px !important;
}
.full-col {
	width: 100% !important;
	padding-top: 0px !important;
}
.wpforms-error {
	font-size: 0px !important;
	margin: 0px !important;
	padding: 0px !important;
}
.wpforms-error::before {
	display: none !important;
}
.cont-form form button[type="submit"] {
	background: linear-gradient(45deg, #ff1cbf, #0ca7ff, #0500e2);
	background-color: rgba(0, 0, 0, 0);
	color: #fff !important;
	font-size: 16px;
	line-height: normal;
	border-radius: 10px;
	padding: 9px 26px;
	text-transform: uppercase;
	transition: 0.5s ease-in-out;
	font-weight: bold;
}
.cont-form form button[type="submit"]:hover {
	background: linear-gradient(45deg, #0500e2, #ff1cbf, #0ca7ff);
}

.hd-menu .elementskit-dropdown {
	padding: 0px !important;
}
.hd-menu .elementskit-dropdown li a {
	padding: 7px 15px !important;
}
.hd-menu .elementskit-dropdown li a:hover {
	background: #0594fe !important;
	color: #fff !important;
}
.sub-hd h5 {
	border: 1px solid #e8dede;
	padding: 10px 20px;
	border-radius: 10px;
	max-width: max-content;
	margin-bottom: 15px;
	font-size: 18px;
}
.custom .steps {
	padding: 20px;
	transition: 0.5s all ease-in-out;
}
.custom .steps:hover {
	background-image: linear-gradient(90deg, #ff1cbf, #0ca7ff, #0500e2);
	background-size: 100%;
}
.custom .steps h5 {
	margin-bottom: 10px;
}
.custom .steps p {
	margin: 0px;
}
.custom .steps:hover h5, .custom .steps:hover p {
	color: #fff;
}
.icon-box .steps img {
	max-width: 60px !important;
	text-align: left;
	display: block !important;
	border-radius: 0px;
	
}
.icon-box .steps h5 {
	margin-bottom: 10px;
}
.liner-bg {
	background: linear-gradient(278deg, rgb(241, 241, 241) 6%, rgb(255, 255, 255) 50%, rgb(241, 241, 241) 100%);
	padding: 20px 10px 10px;
}
.list-half {
	width: calc(100% / 2 - 30px) !important;
	margin-bottom: 20px !important;
	padding: 20px;
	border-bottom: 1px dashed #000;
	transition: 0.5s all ease-in-out;
}
.list-half:last-child {
	margin-bottom: 0px !important;
}
.list-half:hover {
	background-image: linear-gradient(90deg, #ff1cbf, #0ca7ff, #0500e2);
}
.list-half h5 {
	margin-top: 0px;
}
.list-half:hover h5, .list-half:hover p {
	color: #fff;
}
.fix-icons {
	position: fixed;
	right: 0;
	top: 50%;
}
.fix-icons li a svg {
	fill: #fff !important;
	padding: 9px;
	width: 40px !important;
	height: 40px !important;
	border-radius: 5px;
	margin: 0px !important;
	transition: 0.5s all ease-in-out !important;
	border: 1px solid #fff;
}
.fix-icons li:first-child a svg {
	background: #0ca7ff;
}
.fix-icons li:last-child a svg {
	background: #ff1cbf;
}
.fix-icons li:first-child:hover a svg, 
.fix-icons li:last-child:hover a svg {
	background: #0500e2;
}


@media screen and (max-width: 1600px) {
	.pt100 {
		padding-top: 140px;
	}
	.bnr-main {
		max-width: 1410px;
	}
}
@media screen and (max-width: 1400px) {
	.bnr-main {
		max-width: 1300px;
	}
}

@media screen and (max-width: 999px) {
	.pad100 {
		padding: 70px 15px;
	}
	.pl60 {
		padding-left: 40px;
	}
	.pr60 {
		padding-right: 40px;
	}
	.mt50 {
		margin-top: 40px;
	}
	.bnr-hd h1 {
		font-size: 40px;
		line-height: 55px;
	}
	.big-hd h2 {
		font-size: 40px;
		line-height: 55px;
	}
	.main-hd h3 {
		font-size: 30px;
		line-height: 45px;
	}	
	.pt100 {
		padding-top: 100px;
		padding-left: 15px;
	}
	.elementskit-menu-close.elementskit-menu-toggler:hover {
		background: #058eff;
	}
	.bnr-main {
		padding-left: 0px;
	}
}


@media screen and (max-width: 767px) {
	.sub-hd h5 {
		margin: 0px auto 10px;
		font-size: 16px;
	}
	.pad100 {
		padding: 50px 15px;
	}
	.pl60 {
		padding-left: 00px;
	}
	.pr60 {
		padding-right: 00px;
	}
	.mt50 {
		margin-top: 30px;
	}
	.bnr-hd h1 {
		font-size: 30px;
		line-height: 45px;
	}
	.big-hd h2 {
		font-size: 25px;
		line-height: 40px;
	}
	.main-hd h3 {
		font-size: 25px;
		line-height: 40px;
	}	
	.plan-card h4 {
		font-size: 20px;
	}
	.plan-card h5 span {
		font-size: 25px;
	}
	.plan-card h5 {
		font-size: 13px;
	}
	.pl40 {
		padding-left: 0px;
	}
	.pr40 {
		padding-right: 0px;
	}
	.cont-form {
		padding: 20px;
	}
	.half-col {
		width: 100% !important;
		margin: 0px !important;
	}
	.pt100 {
		padding-top: 40px;
		padding-left: 15px;
		padding-right: 15px !important;
	}
	.list-half {
		width: 100% !important;
	}
	.list-half h5, .list-half p {
		text-align: center;
	}
	.fix-icons li a svg {
		width: 35px !important;
		height: 35px !important;
	}
	.icon-box .steps img {
	max-width: 60px !important;
	text-align: left;
	display: block !important;
	border-radius: 0px;
	margin: 0 auto !important;
}
	.elementor-element.elementor-element-8d6041f .elementor-button-wrapper {
    text-align: center !important;
}
	.cont-form .wpforms-submit-container {
    text-align: center;
}
	div#talk-expert {
    text-align: center;
}
}
