* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	font-family: Poppins, sans-serif;
}

body {

	background: #fff;

	color: #222;

}

.container {

	width: 1200px;

	margin: auto;

}

.topbar {

	background: #c40000;

	color: #fff;

	padding: 10px 0;

	font-size: 14px;

}

.topbar .container {

	display: flex;

	justify-content: space-between;

}

.topbar a {

	color: #fff;

	text-decoration: none;

	margin-left: 20px;

}

header {

	background: #fff;

	box-shadow: 0 5px 20px rgba(0, 0, 0, .08);

	position: sticky;

	top: 0;

	z-index: 999;

}

.nav {

	display: flex;

	align-items: center;

	justify-content: space-between;

	padding: 5px 0;

}

.logo {

	display: flex;

	align-items: center;

}

.logo img {

	width: 100%;
	margin-right: 10px;

}

.logo h2 {

	font-size: 30px;

	color: #d60000;

}

.logo p {

	font-size: 13px;

}

nav ul {

	display: flex;

	list-style: none;

}

nav li {

	margin: 0 18px;

}

nav a {

	text-decoration: none;

	font-weight: 600;

	color: #333;

	transition: .3s;

}

nav a:hover {

	color: #ff5c00;

}

.btn {

	background: #e60000;

	padding: 14px 28px;

	border-radius: 40px;

	color: #fff;

	text-decoration: none;

	font-weight: 600;

}

.hero {

	background: linear-gradient(135deg, #430000, #8c0000, #ff6600);

	padding: 90px 0;

	overflow: hidden;

}

.hero-grid {

	display: grid;

	grid-template-columns: 1fr 1fr;

	align-items: center;

	gap: 50px;

}

.hero h5 {

	font-size: 28px;

	color: #fff;

}

.hero h1 {

	font-size: 68px;

	color: #fff;

	line-height: 70px;

	margin: 15px 0;

}

.hero p {

	color: #fff;

	font-size: 19px;

	line-height: 34px;

	margin-bottom: 25px;

}

.hero ul {

	list-style: none;

	margin-bottom: 30px;

}

.hero ul li {

	color: #fff;

	margin: 15px 0;

	font-size: 18px;

}

.hero-btn {

	display: flex;

	gap: 20px;

}

.call-btn {

	background: #ff2b00;

	padding: 16px 35px;

	border-radius: 50px;

	color: #fff;

	text-decoration: none;

	font-weight: 700;

}

.chat-btn {

	background: #fff;

	padding: 16px 35px;

	border-radius: 50px;

	color: #d60000;

	text-decoration: none;

	font-weight: 700;

}

.hero-image img {

	width: 100%;

}
/*==========================
FEATURES
==========================*/

.features {	padding: 40px 0;background: #f8f8f8;position: relative;z-index: 10;}

.feature-grid {display: grid;grid-template-columns: repeat(4, 1fr);gap: 30px;}

.feature-box {background: #fff;padding: 40px 30px;border-radius: 20px;text-align: center;box-shadow: 0 15px 40px rgba(0, 0, 0, .08);transition: .4s;cursor: pointer;}

.feature-box:hover {transform: translateY(-12px);box-shadow: 0 20px 50px rgba(0, 0, 0, .15);}

.feature-icon {	width: 90px;height: 90px;margin: auto;	border-radius: 50%;	background: #d90000;display: flex;justify-content: center;align-items: center;font-size: 38px;color: #fff;margin-bottom: 25px;}

.feature-icon.orange {

	background: #ff7b00;

}

.feature-icon.red {

	background: #ff3d00;

}

.feature-icon.yellow {

	background: #ff9800;

}

.feature-box h3 {

	font-size: 20px;
	margin-bottom: 15px;
	font-weight: 700;

}

.feature-box p {

	font-size: 14.5px;
    line-height: 28px;
    color: #666;
    font-weight: 500;
    text-align: justify;

}
/*==========================
OUR SERVICES
==========================*/

.services {

	padding: 100px 0;

	background: #fff;

}

.section-title {

	text-align: center;

	margin-bottom: 70px;

}

.section-title span {

	color: #ff5500;

	font-weight: 700;

	letter-spacing: 2px;

	text-transform: uppercase;

}

.section-title h2 {

	font-size: 46px;

	margin: 15px 0;

	font-weight: 700;

}

.section-title p {

	max-width: 750px;

	margin: auto;

	color: #666;

	font-size: 18px;

	line-height: 32px;

}

.service-grid {

	display: grid;

	grid-template-columns: repeat(3, 1fr);

	gap: 35px;

}

.service-card {

	background: #fff;

	padding: 45px 35px;

	border-radius: 18px;

	box-shadow: 0 12px 35px rgba(0, 0, 0, .08);

	transition: .4s;

	position: relative;

	overflow: hidden;

}

.service-card::before {

	content: "";

	position: absolute;

	left: 0;

	top: 0;

	width: 100%;

	height: 5px;

	background: linear-gradient(90deg, #d80000, #ff8800);

}

.service-card:hover {

	transform: translateY(-12px);

	box-shadow: 0 20px 45px rgba(0, 0, 0, .18);

}

.service-icon {

	width: 85px;

	height: 85px;

	border-radius: 50%;

	background: linear-gradient(135deg, #d80000, #ff8c00);

	display: flex;

	justify-content: center;

	align-items: center;

	font-size: 34px;

	color: #fff;

	margin-bottom: 25px;

}

.service-card h3 {
    
	font-size: 26px;
	margin-bottom: 18px;
	color: #000;
    font-weight: 600;

}

.service-card p {
    font-size: 17px;
    color: #666;
    line-height: 30px;
    margin-bottom: 25px;
    text-align: justify;
    font-weight: 500;

}

.service-card a {

	text-decoration: none;

	font-weight: 700;

	color: #d80000;

	transition: .3s;

}

.service-card a:hover {

	color: #ff6600;

}

.service-card i {

	transition: .3s;

}

.service-card:hover i {

	transform: translateX(6px);

}
/*===========================
HOW IT WORKS
===========================*/

.work-process {

	padding: 50px 0;

	background: linear-gradient(135deg, #4d0000, #a30000, #ff6600);

	color: #fff;

	overflow: hidden;

}

.process-title {

	text-align: center;

	margin-bottom: 70px;

}

.process-title span {

	color: #ffb347;

	font-weight: 700;

	letter-spacing: 2px;

}

.process-title h2 {

	font-size: 46px;

	margin: 20px 0;

}

.process-title p {

	font-size: 18px;

	max-width: 750px;

	margin: auto;

	line-height: 32px;

}

.process-wrapper {

	display: flex;

	justify-content: space-between;

	align-items: flex-start;

	position: relative;

}

.process-item {

	width: 22%;

	text-align: center;

	position: relative;

	z-index: 2;

}

.process-icon {

	width: 100px;

	height: 100px;

	margin: auto;

	background: #fff;

	border-radius: 50%;

	display: flex;

	align-items: center;

	justify-content: center;

	font-size: 38px;

	color: #d50000;

	box-shadow: 0 15px 35px rgba(0, 0, 0, .25);

	transition: .4s;

}

.process-item:hover .process-icon {

	transform: translateY(-12px) rotate(5deg);

}

.process-item h3 {

	margin-top: 25px;

	font-size: 16px;

	color: #ffcc80;

	text-transform: uppercase;

}

.process-item h4 {

	font-size: 24px;

	margin: 12px 0;

}

.process-item p {

	font-size: 16px;

	line-height: 28px;

	color: #eee;

}

.process-line {

	width: 70px;

	height: 4px;

	background: #ffffff80;

	margin-top: 48px;

	border-radius: 50px;

}
/*===========================
WHY CHOOSE US
===========================*/

.why-us {

	padding: 50px 0;

	background: #f8fafc;

}

.why-grid {

	display: grid;

	grid-template-columns: 1fr 1fr;

	gap: 70px;

	align-items: center;

}

.why-image {

	position: relative;

}

.why-image img {

	width: 100%;

	border-radius: 25px;

	box-shadow: 0 20px 60px rgba(0, 0, 0, .12);

}

.experience {

	position: absolute;

	bottom: 25px;

	left: 25px;

	background: #d60000;

	color: #fff;

	padding: 25px 35px;

	border-radius: 20px;

	text-align: center;

}

.experience h2 {

	font-size: 42px;

}

.experience p {

	margin-top: 8px;

}

.why-content span {

	color: #ff6600;

	font-weight: 700;

	letter-spacing: 2px;

}

.why-content h2 {

	font-size: 46px;

	margin: 20px 0;

	line-height: 58px;

}

.why-content>p {

	color: #666;

	line-height: 32px;

	font-size: 18px;

	margin-bottom: 40px;

}

.why-list {

	display: grid;

	grid-template-columns: 1fr 1fr;

	gap: 25px;

	margin-bottom: 45px;

}

.why-box {

	display: flex;

	gap: 18px;

	padding: 22px;

	background: #fff;

	border-radius: 18px;

	box-shadow: 0 10px 30px rgba(0, 0, 0, .08);

	transition: .35s;

}

.why-box:hover {

	transform: translateY(-8px);

}

.why-box i {

	width: 65px;

	height: 65px;

	background: linear-gradient(135deg, #d60000, #ff8c00);

	border-radius: 50%;

	display: flex;

	align-items: center;

	justify-content: center;

	color: #fff;

	font-size: 28px;

	flex-shrink: 0;

}

.why-box h4 {

	margin-bottom: 8px;

	font-size: 20px;

}

.why-box p {

	color: #666;

	font-size: 15px;

	line-height: 26px;

}

.counter-grid {

	display: grid;

	grid-template-columns: repeat(4, 1fr);

	gap: 20px;

	margin-bottom: 35px;

}

.counter {

	background: #fff;

	padding: 25px;

	border-radius: 18px;

	text-align: center;

	box-shadow: 0 10px 30px rgba(0, 0, 0, .08);

}

.counter h3 {

	font-size: 34px;

	color: #d60000;

	margin-bottom: 10px;

}

.counter p {

	font-size: 15px;

	color: #666;

}
/*============================
BRANDS
=============================*/

.brands {

	padding: 100px 0;

	background: #fff;

}

.brand-grid {

	display: grid;

	grid-template-columns: repeat(6, 1fr);

	gap: 30px;

	margin-top: 60px;

}

.brand-box {

	background: #fff;

	border-radius: 18px;

	padding: 35px;

	display: flex;

	justify-content: center;

	align-items: center;

	box-shadow: 0 10px 30px rgba(0, 0, 0, .08);

	transition: .3s;

}

.brand-box:hover {

	transform: translateY(-8px);

}

.brand-box img {

	max-width: 120px;

	filter: grayscale(100%);

	transition: .4s;

}

.brand-box:hover img {

	filter: none;

}

/*============================
TESTIMONIALS
=============================*/

.testimonials {

	padding: 50px 0;

	background: #f7f8fb;

}

.testimonial-grid {

	display: grid;

	grid-template-columns: repeat(3, 1fr);

	gap: 35px;

	margin-top: 60px;

}

.testimonial-card {

	background: #fff;

	padding: 35px;

	border-radius: 20px;

	box-shadow: 0 15px 35px rgba(0, 0, 0, .08);

	transition: .4s;

}

.testimonial-card:hover {

	transform: translateY(-10px);

}

.stars {

	font-size: 22px;

	color: #ff9800;

	margin-bottom: 20px;

}

.testimonial-card p {

	color: #666;

	font-size: 17px;

	line-height: 30px;

	margin-bottom: 30px;

}

.client {

	display: flex;

	align-items: center;

}

.client img {

	width: 70px;

	height: 70px;

	border-radius: 50%;

	margin-right: 18px;

	object-fit: cover;

}

.client h4 {

	font-size: 20px;

}

.client span {

	color: #888;

	font-size: 14px;

}
/*==========================
FOOTER
==========================*/

.footer {

	background: #0d1117;

	color: #fff;

	padding: 90px 0 30px;

}

.footer-grid {

	display: grid;

	grid-template-columns: 2fr 1fr 1fr 1.5fr;

	gap: 50px;

	margin-bottom: 50px;

}

.footer-logo {

	display: flex;

	align-items: center;

	margin-bottom: 20px;

}

.footer-logo img {

	width: 65px;

	margin-right: 12px;

}

.footer-logo h2 {

	font-size: 28px;

}

.footer p {

	color: #fff;
	line-height: 30px;

}

.footer h3 {

	margin-bottom: 25px;

	font-size: 24px;

	position: relative;

}

.footer h3::after {

	content: "";

	width: 45px;

	height: 3px;

	background: #ff6b00;

	position: absolute;

	left: 0;

	bottom: -10px;

}

.footer ul {

	list-style: none;

}

.footer ul li {margin: 15px 0;}

.footer ul li a {color: #fff;text-decoration: none;transition: .3s;}

.footer ul li a:hover {color: #ff6b00;padding-left: 8px;}

.social {display: flex;margin-top: 30px;gap: 12px;}

.social a {

	width: 45px;

	height: 45px;

	border-radius: 50%;

	background: #1f2937;

	display: flex;

	justify-content: center;

	align-items: center;

	color: #fff;

	transition: .3s;

	text-decoration: none;

}

.social a:hover {

	background: #ff6b00;

	transform: translateY(-6px);

}

.footer input {

	width: 100%;

	padding: 15px;

	border: none;

	border-radius: 8px;

	margin: 18px 0;

	outline: none;

}

.footer button {width: 100%;padding: 15px;background: #ff6b00;border: none;color: #fff;font-size: 16px;font-weight: 600;border-radius: 8px;cursor: pointer;transition: .3s;}

.footer button:hover {background: #d9480f;}

.contact-info {margin-top: 25px;}

.contact-info p {margin: 5px 0;}

.contact-info i {color: #ff6b00;margin-right: 10px;}

.footer hr {border: 1px solid #222;margin: 40px 0;}

.copyright {display: flex;justify-content: space-between;align-items: center;}

.copyright a {color: #fff;text-decoration: none;margin-left: 20px;transition: .3s;}

.copyright a:hover {color: #ff6b00;}

#topBtn {position: fixed;right: 25px;bottom: 25px;width: 55px;height: 55px;border-radius: 50%;background: #ff6b00;color: #fff;display: flex;justify-content: center;align-items: center;text-decoration: none;font-size: 22px;box-shadow: 0 10px 30px rgba(0, 0, 0, .3);transition: .3s;}

#topBtn:hover {transform: translateY(-8px);background: #d9480f;}

/*==========================
PAGE BANNER
==========================*/

.page-banner {

	padding: 120px 0;

	background: linear-gradient(135deg, #5d0000, #d60000, #ff7b00);

	color: #fff;

	text-align: center;

}

.page-banner h1 {

	font-size: 60px;

	margin-bottom: 15px;

}

.page-banner p {

	font-size: 18px;

}

/*==========================
ABOUT PAGE
==========================*/

.about-company {

	padding: 100px 0;

}

.about-grid {

	display: grid;

	grid-template-columns: 1fr 1fr;

	gap: 70px;

	align-items: center;

}

.about-image img {

	width: 100%;

	border-radius: 25px;

	box-shadow: 0 20px 50px rgba(0, 0, 0, .12);

}

.about-content span {

	color: #ff6600;

	font-weight: 700;

}

.about-content h2 {

	font-size: 45px;

	margin: 20px 0;

	line-height: 55px;

}

.about-content p {
    font-size: 16px;
    line-height: 30px;
    color: #666;
    margin-bottom: 13px;
    font-weight: 500;
    text-align: justify;

}

.about-list {

	display: grid;

	grid-template-columns: 1fr 1fr;

	gap: 20px;

	margin-bottom: 35px;

}

.about-list div {

	font-size: 18px;

}

.about-list i {

	color: #ff6600;

	margin-right: 10px;

}

/*==========================
MISSION
==========================*/

.mission {

	padding: 90px 0;

	background: #f7f8fb;

}

.mission-grid {

	display: grid;

	grid-template-columns: repeat(3, 1fr);

	gap: 35px;

}

.mission-card {

	background: #fff;

	padding: 45px;

	border-radius: 20px;

	text-align: center;

	box-shadow: 0 15px 35px rgba(0, 0, 0, .08);

	transition: .35s;

}

.mission-card:hover {

	transform: translateY(-10px);

}

.mission-card i {

	font-size: 55px;

	color: #ff6600;

	margin-bottom: 25px;

}

.mission-card h3 {
    margin-bottom: 15px;
    color: #e60000;
    font-size: 28px;
    font-weight: 600;

}

.mission-card p {

	color: #000;
    font-size: 15px;
    font-weight: 500;
    text-align: justify;
    line-height: 28px;

}
/*==========================
SERVICES PAGE
==========================*/

.services-page {

	padding: 100px 0;

	background: #fff;

}

.services-page .service-grid {

	display: grid;

	grid-template-columns: repeat(3, 1fr);

	gap: 35px;

}

.services-page .service-card {

	padding: 40px;

	background: #fff;

	border-radius: 20px;

	box-shadow: 0 15px 35px rgba(0, 0, 0, .08);

	transition: .4s;

}

.services-page .service-card:hover {

	transform: translateY(-10px);

}

.services-page .service-icon {

	width: 90px;

	height: 90px;

	background: linear-gradient(135deg, #d60000, #ff7b00);

	border-radius: 50%;

	display: flex;

	justify-content: center;

	align-items: center;

	font-size: 36px;

	color: #fff;

	margin-bottom: 25px;

}

.services-page h3 {

	font-size: 26px;

	margin-bottom: 15px;

}

.services-page p {
    line-height: 28px;
    color: #000;
    margin-bottom: 20px;
    font-size: 15px;
    font-weight: 500;
    text-align: justify;
}

.services-page a {

	text-decoration: none;

	color: #d60000;

	font-weight: 700;

}

/*=========================
Top Banner
=========================*/

.top-banner{

    width:100%;
    background:linear-gradient(90deg,#9d0000,#c50000,#d70000,#b30000);
    position:relative;
    overflow:hidden;

}

/* Background Glow */

.top-banner::before{

    content:'';
    position:absolute;
    left:-120px;
    top:-120px;
    width:320px;
    height:320px;
    border-radius:50%;
    background:rgba(255,255,255,.05);

}

.top-banner::after{

    content:'';
    position:absolute;
    right:-120px;
    bottom:-120px;
    width:320px;
    height:320px;
    border-radius:50%;
    background:rgba(255,255,255,.05);

}

.banner-container{

    max-width:1200px;
    margin:auto;
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:12px 20px;
    position:relative;
    z-index:2;

}

.left-side{

    display:flex;
    align-items:center;
    gap:18px;

}

.call-icon{

    width:62px;
    height:62px;
    background:#fff;
    border-radius:50%;
    display:flex;
    justify-content:center;
    align-items:center;
    flex-shrink:0;

    box-shadow:0 8px 25px rgba(0,0,0,.2);

}

.call-icon i{

    color:#d50000;
    font-size:30px;

}

.banner-text h2{

    color:#fff;
    font-size:33px;
    font-weight:700;
    line-height:1.2;

}

.banner-text p{

    color:#fff;
    font-size:15px;
    opacity:.95;
    margin-top:3px;

}

.call-btn{

    background:#fff;
    text-decoration:none;
    color:#d60000;
    padding:15px 34px;
    border-radius:14px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    transition:.3s;

    box-shadow:0 10px 25px rgba(0,0,0,.18);

}

.call-btn span{

    font-size:20px;
    font-weight:700;

}

.call-btn small{

    margin-top:5px;
    font-size:15px;
    font-weight:600;

}

.call-btn:hover{

    transform:translateY(-4px);

}

/*=========================
Responsive
=========================*/

@media(max-width:991px){

.banner-container{

    flex-direction:column;
    text-align:center;
    gap:18px;

}

.left-side{

    flex-direction:column;

}

.banner-text h2{

    font-size:28px;

}

}

@media(max-width:576px){

.banner-container{

    padding:18px;

}

.call-icon{

    width:55px;
    height:55px;

}

.call-icon i{

    font-size:24px;

}

.banner-text h2{

    font-size:22px;

}

.banner-text p{

    font-size:13px;

}

.call-btn{

    width:100%;

}

.call-btn span{

    font-size:18px;

}

}



/* Hero */

.contact-hero {

	height: 350px;

	background: url('../images/contact-banner.jpg') center/cover;

	position: relative;

	display: flex;
	justify-content: center;
	align-items: center;

}

.overlay {

	position: absolute;
	width: 100%;
	height: 100%;
	background: rgba(120, 0, 0, .65);

}

.hero-content {

	position: relative;
	color: #fff;
	text-align: center;

}

.hero-content h1 {

	font-size: 60px;
	margin-bottom: 10px;

}

.hero-content p {

	font-size: 22px;

}

/* Cards */

.contact-info {

	margin-top: -70px;
	position: relative;
	z-index: 5;

}

.contact-info .container {

	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 25px;

}

.card {

	background: #fff;
	padding: 35px;
	text-align: center;
	border-radius: 15px;
	box-shadow: 0 10px 25px rgba(0, 0, 0, .08);

}

.card i {

	font-size: 45px;
	color: #ff4d00;
	margin-bottom: 20px;

}

.card h3 {

	margin-bottom: 10px;

}

/* Form */

.contact-section {

	padding: 80px 0;

}

.contact-section .container {

	display: grid;
	grid-template-columns: 2fr 1fr;
	gap: 50px;

}

.contact-left h2 {

	font-size: 38px;
	margin-bottom: 20px;

}

.contact-left p {

	margin-bottom: 30px;

}

form {

	display: grid;
	gap: 18px;

}

input,
textarea {

	padding: 18px;
	border: 1px solid #ddd;
	border-radius: 10px;
	font-size: 16px;

}

textarea {

	height: 180px;
	resize: none;

}

button {

	background: #d80000;
	color: #fff;
	border: none;
	padding: 18px;
	border-radius: 10px;
	cursor: pointer;
	font-size: 18px;
	transition: .3s;

}

button:hover {

	background: #ff5e00;

}

.help-box {

	background: linear-gradient(135deg, #d40000, #ff6a00);

	padding: 40px;
	color: #fff;
	border-radius: 15px;
	text-align: center;

}

.help-box a {

	display: inline-block;
	margin-top: 25px;
	background: #fff;
	color: #d40000;
	padding: 15px 30px;
	border-radius: 8px;
	text-decoration: none;
	font-weight: bold;

}

/* Map */

.map iframe {

	width: 100%;
	height: 450px;
	border: none;

}

/* FAQ */

.faq {

	padding: 80px 10%;

}

.faq h2 {

	text-align: center;
	margin-bottom: 40px;

}

.faq-box {

	background: #fff;
	padding: 25px;
	margin-bottom: 20px;
	border-radius: 10px;
	box-shadow: 0 5px 15px rgba(0, 0, 0, .08);

}

/* Responsive */

@media(max-width:991px) {

	.contact-info .container {

		grid-template-columns: repeat(2, 1fr);

	}

	.contact-section .container {

		grid-template-columns: 1fr;

	}

	.hero-content h1 {

		font-size: 42px;

	}

}

@media(max-width:600px) {

	.contact-info .container {

		grid-template-columns: 1fr;

	}

	.hero-content h1 {

		font-size: 34px;

	}

	.hero-content p {

		font-size: 18px;

	}

}

