/* ========= Global colours ========= */

:root{
	--yellow: #FFD60A;
	--navy: #000080;
	--red: #FF0042;
	--red-dark: #b3002e;
	--blue: #4645f9;
	--blue-light: #4996e3;
}

/* ============= Links ============ */

a{
	color:var(--red);
}

a:hover,
a:active{
	color:var(--red-dark);
}

/* ============= Typography ========== */

h1,h2,h3,h4,h5,h6,.blog-card-title,.h3 p{
	font-family: "Work Sans", sans-serif;
	text-transform:uppercase;
	letter-spacing:-0.01em;
	line-height:1.2em!important;
	font-weight:800;
	color:#000;
}

h1{
	font-size:clamp(28px, 4.8vw, 52px);
}

h2 {
  font-size: clamp(34px, 8.5vw, 50px);
}

h3,
.h3 h2,
.h3 p{
  font-size: clamp(28px, 6.8vw, 42px);
  line-height: 1.3;
}

h4 {
  font-size: clamp(24px, 5.5vw, 36px);
  line-height: 1.4;
}

h5 {
  font-size: clamp(20px, 4.2vw, 30px);
  line-height: 1.4;
}

h6,
.h6 h2,
.blog-card-title,
.h6 h3{
  font-size: clamp(16px, 3vw, 24px);
  line-height: 1.5;
}

p,
.elementor-icon-list-text,
ul li{
	font-family: "Roboto",sans-serif;
	line-height:2;	
  font-size: clamp(16px, 1.8vw, 18px);
	color:#000;
}

.elementor-icon-list-item .elementor-icon-list-text:last-child,
ul li:last-child{
	margin-bottom:10px;
}

header ul li:last-child{
	margin-bottom:0;
}

.text-highlight{
	display:inline-block;
	padding:0.02em 0.28em;
	border-radius:6px;
	box-shadow:0 4px 14px rgba(255, 214, 10, 0.25);
	margin:0.05em 0;
	background:var(--yellow);
}

.tilted{
	transform:rotate(-2deg);
}

.wpforms-field-label{
	font-family:"Roboto",sans-serif;
}

/* ============ Flashy heading ========= */

.flashy-heading{
	padding:2em;
	border-radius:10px!important;
	position:relative;
	animation: pulseBtn 2s ease infinite;
	width:90%
}

.flashy-heading::before{
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	border-radius: 10px;
	animation: pulseBtn-2 2.5s ease infinite;
	animation-delay: 1s;
}

.flashy-heading h2{
	font-family:"Work Sans",sans-serif;
	text-transform:initial;
	font-weight:500;
	letter-spacing:-0.1em;
}

.flashy-heading h2 span{
	letter-spacing:-0.05em;
}


/* ============== Buttons ============= */


.btn-navy a,
.btn-red a{
	background:var(--navy);
	font-family:'Work Sans', sans-serif;
	font-size:clamp(12px, 1.3vw, 15px);
	font-weight:500;
	text-transform: capitalize;
	padding:clamp(8px, 1vw, 11px) clamp(18px, 2.4vw, 26px);
	border-radius:9999px;
	letter-spacing:0.01em;
	line-height:1.5;
}

.btn-red a{
	background:var(--red);
}

.btn-red a:hover,
.btn-red a:focus{
	background:var(--red-dark);
}


.cta-btn a{
	background:var(--red);
	border-radius:999999px;
	font-family:'oswald', sans-serif;
	font-weight:500;
		text-transform: uppercase;
	line-height:1.5;
	letter-spacing:-0.05em;
	font-size:20px;
	padding:0.6em 2em;
	position:relative;
	animation: pulseBtn 2s ease infinite;
}

.cta-btn a:before {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    border-radius: 50px;
    animation: pulseBtn-2 2.5s ease infinite;
    animation-delay: 1s;
}

.orange-cta-btn a{
	font-family:"DM Mono", sans-serif;
	font-size:21px;
	max-width:350px;
	font-weight:500;
	line-height:1.2;
	background:#FF5D19;
	padding:11px 30px!important;
	border-radius:7px;
	animation: pulseBtn-orange 2s ease infinite;
	position:relative;
}

.orange-cta-btn a::before{
	content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  border-radius: 7px;
  animation: pulseBtn-2-orange 2.5s ease infinite;
  animation-delay: 1s;
}

@keyframes pulseBtn-2{
    0%{
        -webkit-box-shadow: 0 0 0 0px rgb(251, 31, 64, .5);
        box-shadow: 0 0 0 0px rgb(251, 31, 64, .5);
    }
    25%{
        -webkit-box-shadow: 0 0 0 20px rgb(251, 31, 64, .5);
        box-shadow: 0 0 0 20px rgb(251, 31, 64, .5);
    }
    75%{
        -webkit-box-shadow: 0 0 0 20px rgb(251, 31, 64, 0);
        box-shadow: 0 0 0 20px rgb(251, 31, 64, 0);
    }
    100%{
        -webkit-box-shadow: 0 0 0 0px rgb(251, 31, 64, 0);
        box-shadow: 0 0 0 0px rgb(251, 31, 64, 0);
    }
}


@keyframes pulseBtn{
    0%{
        -webkit-box-shadow: 0 0 0 0px rgb(251, 31, 64, .5);
        box-shadow: 0 0 0 0px rgb(251, 31, 64, .5);
    }
    25%{
        -webkit-box-shadow: 0 0 0 10px rgb(251, 31, 64, .5);
        box-shadow: 0 0 0 10px rgb(251, 31, 64, .5);
    }
    75%{
        -webkit-box-shadow: 0 0 0 10px rgb(251, 31, 64, 0);
        box-shadow: 0 0 0 10px rgb(251, 31, 64, 0);
    }
    100%{
        -webkit-box-shadow: 0 0 0 0px rgb(251, 31, 64, 0);
        box-shadow: 0 0 0 0px rgb(251, 31, 64, 0);
    }
}

.cta-btn.navy a{
	background:var(--navy);
	 animation: pulseBtn-navy 2s ease infinite;
}

.cta-btn.navy a::before,
.cta-btn.no-animation a::before{
	animation: pulseBtn-2-navy 2.5s ease infinite;
  animation-delay: 1s;
}


/* Navy Button Animations */

@keyframes pulseBtn-navy {
  0% {
    -webkit-box-shadow: 0 0 0 0px rgb(0, 0, 128, 0.3);
    box-shadow: 0 0 0 0px rgb(0, 0, 128, 0.3);
  }
  25% {
    -webkit-box-shadow: 0 0 0 10px rgb(0, 0, 128, 0.3);
    box-shadow: 0 0 0 10px rgb(0, 0, 128, 0.3);
  }
  75% {
    -webkit-box-shadow: 0 0 0 10px rgb(0, 0, 128, 0);
    box-shadow: 0 0 0 10px rgb(0, 0, 128, 0);
  }
  100% {
    -webkit-box-shadow: 0 0 0 0px rgb(0, 0, 128, 0);
    box-shadow: 0 0 0 0px rgb(0, 0, 128, 0);
  }
}

@keyframes pulseBtn-2-navy {
  0% {
    -webkit-box-shadow: 0 0 0 0px rgb(0, 0, 128, 0.3);
    box-shadow: 0 0 0 0px rgb(0, 0, 128, 0.3);
  }
  25% {
    -webkit-box-shadow: 0 0 0 20px rgb(0, 0, 128, 0.3);
    box-shadow: 0 0 0 20px rgb(0, 0, 128, 0.3);
  }
  75% {
    -webkit-box-shadow: 0 0 0 20px rgb(0, 0, 128, 0);
    box-shadow: 0 0 0 20px rgb(0, 0, 128, 0);
  }
  100% {
    -webkit-box-shadow: 0 0 0 0px rgb(0, 0, 128, 0);
    box-shadow: 0 0 0 0px rgb(0, 0, 128, 0);
  }
}

.btn-navy.flash a{
	position: relative;
	transition: transform 0.2s ease;
	animation: hard-blink 1s steps(1) infinite;
}

.btn-navy.flash a:hover {
	transform: scale(1.02); 
}

/* Orange button animations */

@keyframes pulseBtn-orange {
  0% {
    -webkit-box-shadow: 0 0 0 0px rgb(255, 93, 25, 0.3);
    box-shadow: 0 0 0 0px rgb(255, 93, 25, 0.3);
  }
  25% {
    -webkit-box-shadow: 0 0 0 10px rgb(255, 93, 25, 0.3);
    box-shadow: 0 0 0 10px rgb(255, 93, 25, 0.3);
  }
  75% {
    -webkit-box-shadow: 0 0 0 10px rgb(255, 93, 25, 0);
    box-shadow: 0 0 0 10px rgb(255, 93, 25, 0);
  }
  100% {
    -webkit-box-shadow: 0 0 0 0px rgb(255, 93, 25, 0);
    box-shadow: 0 0 0 0px rgb(255, 93, 25, 0);
  }
}

@keyframes pulseBtn-2-orange {
  0% {
    -webkit-box-shadow: 0 0 0 0px rgb(255, 93, 25, 0.3);
    box-shadow: 0 0 0 0px rgb(255, 93, 25, 0.3);
  }
  25% {
    -webkit-box-shadow: 0 0 0 20px rgb(255, 93, 25, 0.3);
    box-shadow: 0 0 0 20px rgb(255, 93, 25, 0.3);
  }
  75% {
    -webkit-box-shadow: 0 0 0 20px rgb(255, 93, 25, 0);
    box-shadow: 0 0 0 20px rgb(255, 93, 25, 0);
  }
  100% {
    -webkit-box-shadow: 0 0 0 0px rgb(255, 93, 25, 0);
    box-shadow: 0 0 0 0px rgb(255, 93, 25, 0);
  }
}

.cta-btn.no-animation a{
	animation:none!important;
}

@media only screen and (max-width:768px){
	.cta-btn a{
		font-size:16px;
	}
}


/* =========== Topbar =========== */


.top-bar{
	gap:clamp(16px, 2.5vw, 32px);
	padding:clamp(12px, 1.6vw, 14px) clamp(16px, 3vw, 32px);
	padding-top:1.52em;
	padding-bottom:1.52em;
}

.top-bar p{
	    font-family: 'Work Sans', sans-serif;
	font-size:clamp(12px, 1.2vw, 15px);
    font-weight: 500;
    color: #ffffff;
    line-height: 1.4;
    letter-spacing: 0.01em;
    margin: 0;
}

@media only screen and (max-width:350px){
	.top-bar p{
		font-size:10px;
	}
}

.top-bar p span{
	display:inline-block;
	background: var(--yellow);
	color: #020310;
	padding: 0.04em 0.4em;
	border-radius: 4px;
	font-weight: 700;
	transform: rotate(-1deg);
	margin-right: 0.25em;
	box-shadow: 0 2px 10px rgba(255, 214, 10, 0.2);
	font-family:"Heebo", Helvetica Neue, Helvetica, sans-serif;
	margin-left:0.25em;
}

@media only screen and (max-width:768px){
	.top-bar{
		padding:1em
	}
}


/* ========= Navbar =========== */

.nav-wrapper{
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06)
}

.nav-wrapper .btn-red a,
.nav-wrapper .btn-navy a,
.nav-wrapper .btn-black a{
	background:#fb1f40!important;
	font-family:"Heebo","Work Sans",sans-serif!important;
	border-radius:99px!important;
	font-size:14px!important;
	padding:1em 2em!important;
	line-height:1!important;
}

.nav-wrapper .btn-navy a{
	background:var(--navy)!important;
	
}

.nav-wrapper .btn-black a{
	border-radius:0px!important;
	background:#000!important;
	text-transform:capitalize;
}

.nav-wrapper li a{
	font-size:clamp( 1rem, 1vw, 1.5rem);
	font-family:"Heebo","Work Sans",sans-serif;
}

@media only screen and (max-width:768px){
	.nav-wrapper .btn-red a,
.nav-wrapper .btn-navy a,
	.nav-wrapper .btn-black a{
		font-size:12px!important;
		padding:1em 1.5em!important;
	}
}

/* ========= Ofcanvas mobile nav ======== */

.mob-nav li a{
	font-family:"Oswald",sans-serif;
	font-size:28px;
	color:#fff;
	text-transform:uppercase;
	line-height:1;
	font-weight:500;
}

.mob-nav-btn-black a{
	font-family:"Heebo","Work Sans",sans-serif!important;
	font-size:12px!important;
	padding:1em 2em!important;
	line-height:1!important;
	background:#000;
	text-transform:capitalize;
}

.mob-nav-social-icons a{
background:transparent!important;
}



/* ========= Newsletter Popup Button ======== */

#wpforms-submit-470,
#wpforms-submit-1097{
	background:var(--red)!important;
	text-transform:uppercase!important;
	font-family:"Heebo",sans-serif;
	font-weight:500;
	padding:1em 2em;
	height:unset!important;
	line-height:1!important;
	font-size:14px;
	width:100%;
}

#wpforms-submit-470:hover,
#wpforms-submit-470:active,
#wpforms-submit-1097:hover,
#wpforms-submit-1097:active{
	background:var(--red-dark);
}

/* ======= Company logo section ======== */

.companies-wrapper .logos-title p{
	font-size:18px;
	color:#fff;
	font-family:"Oswald","Work Sans",sans-serif;
	text-transform:uppercase;
	line-height:24px;
	margin:0 0 15px;
	font-weight:500
}

.companies-wrapper .content-wrapper{
	background:#0F1214;
	border-bottom-left-radius:20px;
	border-bottom-right-radius:20px;
	padding:15px 20px 20px;
}


@media only screen and (max-width:768px){
	
	.companies-wrapper .content-wrapper{
		padding:10px 0 15px	
	}
	.companies-wrapper .logos-title p{
	font-size:14px;	
	}
	
}



/* ========== Grid Boxes =========== */

.grid-box{
	box-shadow:0px 0px 55px 1.25px rgba(0, 0, 0, 0.15);
	padding:3em 2em;
	position:relative;
	transition:box-shadow 150ms ease 0s;
	min-height:300px;
	
}

.grid-box:hover{
	box-shadow: 0px 8px 30px 2px rgba(0, 0, 0, 0.25);
}

.grid-box .content-wrapper{
	z-index:2;
}

.grid-box h3{
	font-family:"Heebo","Work Sans",sans-serif;
	font-size:20px;
	line-height:1.5!important;
	letter-spacing:-0.5px
}

.grid-box p{
	font-size:16px;
}

.grid-box::before{
	content : '';
	position:absolute;
	width:100%;
	height:100%;
	left:0;
	top:0;
	background:var(--red);
	top:10px;
	left:-10px;

}

.grid-box::after{
	content : '';
	position:absolute;
	width:100%;
	left:0;
	height:100%;
	top:0;
	background:#fff;
}

@media only screen and (max-width:768px){
	.grid-box{
		min-height:125px;
		padding:1em 1em;
	}
	
	.grid-box::before{
		top:5px;
		left:-5px;
	}
	
	.grid-box h3{
		font-size:16px
	}
	
	.grid-box p{
		font-size:14px;
	}
}


@media only screen and (max-width:500px){
	.grid-box{
		min-height:220px;
	}
}


/* ========== Footer =========== */

footer p{
	font-family:"Heebo","Work Sans",sans-serif;
}

footer .text-md p{
	font-size:14px;
}

footer .text-sm p{
	font-size:12px;
	line-height:1.8;
}

footer .footer-links {
	font-size:14px;
	font-family:"Heebo","Work Sans",sans-serif;
	line-height:1.2;
}

footer .footer-links a{
	color:var(--black);
}
footer .footer-links a:hover{
	color:var(--red);
}

footer .text-sm p a{
	color:var(--black);
}

footer .text-sm p a:hover{
	color:var(--red);
}


.social-icons-full-width
.elementor-social-icons-wrapper{
	display:flex!important;
	justify-content:space-between!important;
}

@media only screen and (max-width:500px){
	footer .text-highlight{
		font-size:30px;
	}
}


/* ============= Testimonial Carousel =========== */

.elementor-testimonial__name{
	font-family:"Heebo","Work Sans"!important;
	text-transform:capitalize;
	font-size:16px!important;
	font-weight:600!important;
	line-height:1.5em!important;
}

.elementor-testimonial__text{
	font-size:14px;
	line-height:1.8em!important;
	letter-spacing:-0.25px;
	font-family:"Roboto", "Work sans",sans-serif;
}

.trustpilot-style-reviews .elementor-testimonial__name{
	font-size:14px!important;
	font-family:"Roboto","Work Sans"!important;
}

.trustpilot-style-reviews .elementor-testimonial__header{
	position:relative;
}

.trustpilot-style-reviews .elementor-testimonial__header cite{
	margin-left:30px
}

.trustpilot-style-reviews .elementor-testimonial__header::before{
	content : "";
	width:25px;
	height:25px;
	position:absolute;
	background:#d1f9ea;
	top:50%;
	transform:translateY(-50%);
	border-radius:99px;
	left:12px
}

.trustpilot-style-reviews .elementor-testimonial__header::after{
	position:absolute;
	top:50%;
	transform:translateY(-50%);
	font-size:10px;
	font-family:"Roboto","Work Sans",sans-serif;
	font-weight:bold;
	left:18px
}

.trustpilot-style-reviews .swiper-slide[data-swiper-slide-index="0"] .elementor-testimonial__header::after{
	content : "CD";
}

.trustpilot-style-reviews .swiper-slide[data-swiper-slide-index="1"] .elementor-testimonial__header::after{
	content : "KW";
}

.trustpilot-style-reviews .swiper-slide[data-swiper-slide-index="2"] .elementor-testimonial__header::after{
	content : "MO";
}

.trustpilot-style-reviews .swiper-slide[data-swiper-slide-index="3"] .elementor-testimonial__header::after{
	content : "KG";
}

.trustpilot-style-reviews .swiper-slide[data-swiper-slide-index="4"] .elementor-testimonial__header::after{
	content : "RC";
}

.trustpilot-style-reviews .swiper-slide[data-swiper-slide-index="5"] .elementor-testimonial__header::after{
	content : "AS";
}

.trustpilot-style-reviews .swiper-slide[data-swiper-slide-index="6"] .elementor-testimonial__header::after{
	content : "KM";
}

.trustpilot-style-reviews .swiper-slide[data-swiper-slide-index="7"] .elementor-testimonial__header::after{
	content : "TF";
}

.trustpilot-style-reviews .swiper-slide[data-swiper-slide-index="8"] .elementor-testimonial__header::after{
	content : "ZH";
}

.trustpilot-style-reviews .swiper-slide[data-swiper-slide-index="9"] .elementor-testimonial__header::after{
	content : "BW";
}

.elementor-testimonial__text{
	max-height:300px!important;
	overflow-y:auto;
	padding-right:10px;
}

.elementor-testimonial__text::-webkit-scrollbar {
    width: 6px;
}

.elementor-testimonial__text::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 10px;
}

.elementor-testimonial__text::-webkit-scrollbar-thumb {
    background: #888;
    border-radius: 10px;
}

.elementor-testimonial__text::-webkit-scrollbar-thumb:hover {
    background: #555;
}

.elementor-testimonial__title{
	font-size:12px!important;
	font-family:"Roboto"!important;
}

.trustpilot-section-txt{
	font-size:16px;
	font-family: "Heebo", "Work Sans",sans-serif;
	color:#191919!important;
	letter-spacing:0.1px;
	margin-bottom:1em;
	font-weight:bold;
	
}

@media only screen and (max-width:768px){
	
	.elementor-element-a85de80{
		padding:1em;
	}
	
	.slider-btn{
		padding:4px 8px!important;
	}
	
	.carousel-nav[data-index="2"] .slider-next{
		display:none;
	}
	
	.carousel-nav[data-index="0"] .slider-prev{
		display:none;
	}
	
}

.slider-btn{
	opacity:1!important;
	background:var(--red)!important;
}

.slider-btn:hover,
.slider-btn:focus{
	background-color:#000!important;
}


.trustpilot-style-reviews .elementor-testimonial__text strong{
	display:block;
	margin-bottom:15px;
	font-family:"Heebo", "Work Sans",sans-serif!important;
	text-transform:capitalize;
	font-size:16px;
	font-weight:600;
	line-height:1.5em;
}

/* ========== Breadcrumbs ============ */

#breadcrumbs{
	font-size:12px;
	font-family:"Heebo","Work Sans",sans-serif;
	line-height:1;
	color:var(--yellow);
}

#breadcrumbs a{
	color:#fff;
}

#breadcrumbs .breadcrumb_last{
color:rgba(255,255,255,0.7)!important;
}

/* ========== Icon List ============== */

.icon-list li span{
	font-family:"Roboto",sans-serif;
	line-height:1.5;
	color:#000!important;
	font-size:clamp(16px, 1.8vw, 18px);
}

/* ========== cards =================== */

.card{
	box-shadow:0 0px 4px rgba(0, 0, 0, 0.1), 0 0 0px rgba(0, 0, 0, 0.1) inset!important;
	background:#fff;
	position:relative;
	z-index:2;
}

.card::before,
.card::after{
	content: "";
  position: absolute;
 box-shadow:inset 0 -4em 3em rgb(0 0 0 / 10%), 0 0 0 0px rgb(255 255 255), 0.6em 0.6em 8em rgb(156 154 154 / 30%);
	top:0;
	bottom:0;
	left:0;
	right:0;
	z-index:-1
}

.card::after{
	right:10px;
	left:auto;
	transform:skew(8deg) rotate(3deg);
}


.card h2{
	font-family:"Oswald","Work Sans","Roboto",sans-serif;
	font-size:31px;
	line-height:0.5em!important;
}

.card .elementor-widget-text-editor p{
	font-size:17px;
	color:#717272;
	line-height:1.7;
	font-family:"Roboto","Work Sans",sans-serif!important;
	line-height:24px;
	font-weight:300!important;
}

.card .sub-title p{
	font-family:"Oswald","Work Sans","Roboto",sans-serif;
	text-transform:uppercase;
	font-weight:300;
	margin-top:-0.25em;
	font-size:22px;
	letter-spacing:-0.5px;
	color:#000;
	line-height:1;
}

.card img{
	min-height:100%;
	object-fit:contain;
}


@media only screen and (max-width:992px){
	.card .sub-title p{
		font-size:12px!important;
	}
	
	.card h2{
		line-height:1em!important;
		font-size:31px!important;
	}
	
	.card .sub-title p{
		font-size:22px!important;
	}
	
	.card{
		overflow:hidden;
	}
	
}

/* ========= FAQs section ============ */


.faq-section{
	padding-bottom:2rem;
}

.faq-question {
	display: flex;
	align-items: center;           
  justify-content: space-between; 
  cursor: pointer;
  list-style: none;
}

.faq-question h3{
    font-size:clamp(16px, 1.8vw, 18px);
    text-transform:initial;
    font-weight:400;
    margin:0.25em 0;
    font-family:"Heebo","Work Sans",sans-serif;
}

.faq-section h2{
	margin-bottom:1em;
	font-size:24px;
	text-transform:initial;
	font-weight:500;
}

.faq-section h2::first-letter,
.faq-question h3::first-letter{
    text-transform:uppercase;
}

.faq-question::-webkit-details-marker {
	display: none;
}
  
.faq-question::after {
	content: "";
	flex-shrink: 0;
  margin-left: 1rem;
  width: 10px;
  height: 10px;
  border-right: 2px solid var(--red);
   border-bottom: 2px solid var(--red);
	transform: rotate(-45deg);       
	transition: transform 0.2s ease;
}

  
.faq-item[open] .faq-question::after {
	transform: rotate(45deg);
}

.faq-item {
	border-bottom: 1px solid #ddd;
	padding: 0.05rem 0.15rem;
}

.faq-item p{
    font-family:"Heebo","Work Sans",sans-serif;
    font-size:clamp(16px, 1.8vw, 18px);
    line-height:2;
}


