@font-face {
  font-family: "Mulish";
  src: url("img/Mulish-VariableFont_wght.ttf") format("truetype");
}
body,
div,
p,
li,
a,
input,
textarea,
select,
h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "Mulish";
}
/* Logo size */
.logo-img {
    width: 200px;
    height: auto;
}

/* Nav links styling */
.nav-link {
    font-weight: 500;
    color: #333 !important;
}

.nav-link:hover {
    color: #e63946 !important;
}

/* CTA Button */
.book-btn {
    background: linear-gradient(90deg, #e02828, #ff4b2b);
    color: #fff;
    font-weight: 600;
    padding: 10px 20px;
    border-radius: 10px;
    box-shadow: 0 4px 12px rgba(255, 0, 0, 0.25);
    transition: 0.3s ease;
}

.book-btn:hover {
    background: linear-gradient(90deg, #c91919, #ff2b2b);
    color: #fff;
    transform: translateY(-2px);
}
/* --------------------------
   HERO SECTION
--------------------------- */
#hero-section {
    background: url("img/hero-bg.webp") center/cover no-repeat;
    position: relative;
    padding: 60px 0;
}

/* Badge */
.hero-badge {
    background: rgba(255, 255, 255, 0.2);
    padding: 8px 18px;
    backdrop-filter: blur(4px);
    border-radius: 20px;
    font-size: 14px;
}

.hero-badge .badge-icon {
    width: 20px;
    height: 20px;
    background: white;
    color: red;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
}

/* Text */
.hero-title {
    font-weight: 700;
    font-size: 52px;
    line-height: 1.2;
}

.hero-subtext {
    font-size: 18px;
    max-width: 450px;
}

/* Buttons */
.hero-btn-red {
    background: linear-gradient(90deg, #e02828, #ff4b2b);
    border-radius: 8px;
    font-weight: 600;
}

.hero-btn-red:hover {
    background: linear-gradient(90deg, #c21919, #ff2b2b);
}

/* Stats */
.hero-stats div {
    background: rgba(255, 255, 255, 0.05);
    padding: 15px 25px;
    border-radius: 12px;
    backdrop-filter: blur(3px);
}

.hero-stats h3 {
    font-size: 28px;
    font-weight: 700;
}

/* Form Box */
.hero-form {
    border-radius: 16px;
    background: #ffffffee;
    backdrop-filter: blur(6px);
}

.hero-submit-btn {
    background: linear-gradient(90deg, #ffb300, #ff8500);
    color: #fff;
    border: none;
    font-weight: 600;
    border-radius: 8px;
}

.hero-submit-btn:hover {
    background: linear-gradient(90deg, #e59a00, #e56d00);
}
/* ---------------------------------------
   TRUSTED BUILDERS SECTION
---------------------------------------- */
#trusted-builders {
    background: #ffffff;
}

#trusted-builders .section-title {
    font-weight: 700;
    letter-spacing: 1px;
    color: #1c1c1c;
}

.builder-card {
    border-radius: 36px;
    box-shadow: 0 4px 15px rgba(0,0,0,0.06);
    transition: all 0.3s ease;
}

.builder-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 20px rgba(0,0,0,0.1);
}

/* ------------------------------
   ABOUT SECTION
--------------------------------*/
#about-section {
    background-image: url("img/about-bg.webp");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: relative;
}

/* ABOUT US tag */
.about-tag {
    background: #fde9e9;
    color: #d63333;
    padding: 6px 16px;
    border-radius: 20px;
    font-weight: 600;
    font-size: 14px;
}

/* Text styles */
.about-title {
    font-size: 36px;
    line-height: 1.3;
}

.about-text {
    color: #555;
    font-size: 16px;
    line-height: 1.7;
}
/* -----------------------------------
   WHY CHOOSE US
--------------------------------------*/
#why-choose-section {
    padding-top: 80px;
    padding-bottom: 80px;
    position: relative;
}

/* LIGHT BACKGROUND GLOW */
#why-choose-section::before,
#why-choose-section::after {
    content: "";
    position: absolute;
    width: 300px;
    height: 300px;
    background: radial-gradient(rgba(255, 0, 0, 0.1), transparent 70%);
    border-radius: 50%;
    z-index: -1;
}

#why-choose-section::before {
    top: 20%;
    left: -100px;
}

#why-choose-section::after {
    bottom: 10%;
    right: 0;
}

/* Tag */
.choose-tag {
    background: #fde9e9;
    color: #d63333;
    padding: 6px 18px;
    border-radius: 20px;
    font-weight: 600;
    font-size: 14px;
}

/* Heading */
.choose-title {
    font-size: 36px;
}

/* Subtitle */
.choose-subtitle {
    color: #555;
    font-size: 16px;
    line-height: 1.6;
}

/* Cards */
.choose-card {
    background: #ffffff;
    border-radius: 16px;
    padding: 35px 25px;
    transition: 0.3s ease;
    height: 100%;
    border: 1px solid #f2f2f2;
}

/* Hover effect */
.choose-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.08);
}

/* Icon box */
.icon-box {
    width: 55px;
    height: 55px;
    background: #d63333;
    color: #fff;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 26px;
    margin: 0 auto;
}

.choose-card p {
    color: #777;
    margin-top: 8px;
}
/* ---------------------------------------
   PROCESS SECTION
----------------------------------------*/


/* Tag */
.process-tag {
    background: #fde9e9;
    color: #d63333;
    padding: 6px 18px;
    border-radius: 20px;
    font-weight: 600;
    font-size: 14px;
}

/* Heading */
.process-title {
    font-size: 36px;
}

.process-subtitle {
    color: #555;
    font-size: 16px;
}

/* Step Circles */
.step-circle {
    width: 50px;
    height: 50px;
    background: #f8dada;
    color: #333;
    border-radius: 50%;
    margin: 0 auto 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
}

.active-step {
    background: #d63333;
    color: #fff;
}

/* Process Cards */
.process-card {
    background: #fff;
    border-radius: 16px;
    padding: 30px 20px;
    border: 1px solid #eee;
    transition: 0.3s ease;
}

/* Hover */
.process-card:hover {
    transform: translateY(-5px);
    box-shadow: 0px 12px 28px rgba(0,0,0,0.08);
}

/* Icons */
.process-icon {
    width: 55px;
    height: 55px;
    background: #d63333;
    color: #fff;
    border-radius: 12px;
    margin: 0 auto;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 26px;
}

/* Card text */
.process-card p {
    color: #777;
    margin-top: 8px;
    font-size: 14px;
}
/* -----------------------------------------
   SERVICES SECTION
------------------------------------------*/

#services-section {
    background: #fdeff0;
    padding-top: 80px;
    padding-bottom: 80px;
}

/* Tag */
.services-tag {
    background: #fde9e9;
    color: #d63333;
    padding: 6px 18px;
    border-radius: 20px;
    font-weight: 600;
    font-size: 14px;
}

/* Heading */
.services-title {
    font-size: 36px;
}

.services-subtitle {
    color: #555;
    font-size: 16px;
}

/* Service Card */
.service-card {
    background: #fff;
    border-radius: 18px;
    overflow: hidden;
    transition: 0.3s ease;
    border: 1px solid #f1f1f1;
    height: 100%;
}

/* Hover animation */
.service-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 12px 28px rgba(0,0,0,0.08);
}

.service-img {
    width: 100%;
    height: 260px;
    object-fit: cover;
    border-bottom: 1px solid #eee;
}

/* Card Content */
.service-content {
    padding: 20px 25px;
    text-align: left;
}

.service-content p {
    color: #777;
    margin-bottom: 10px;
}

/* Install Now Link */
.service-link {
    color: #d63333;
    font-weight: 600;
    font-size: 14px;
    text-decoration: none;
}

.service-link:hover {
    text-decoration: underline;
}
#contact-cta {
    background: url("img/footer-bg.webp") center/cover no-repeat;
    position: relative;
}

#contact-cta .cta-box {
    background: rgba(255, 255, 255, 0.1);
    border-radius: 14px;
    border: 1px solid rgba(255, 255, 255, 0.15);
    color: #fff;
    transition: 0.3s ease;
    height: 100%;
}

#contact-cta .cta-box:hover {
    background: rgba(255, 255, 255, 0.18);
    transform: translateY(-5px);
}
#contact-cta .cta-box .bi{
    font-size: 32px;
}
#contact-cta .cta-box a{
    text-decoration: none;
}
#contact-cta h2 {
    font-size: 28px;
}

#contact-cta p {
    color: #f1f1f1;
}

#contact-cta .btn-light {
    border-radius: 30px;
}

#contact-cta .btn-success {
    border-radius: 30px;
}

#next_button {
		position: fixed;
		left: 0;
		bottom: 0;
		width: 100%;
		text-align: center;
		display: table
	}

	#next_button a {
		text-decoration: none;
	}


	.below-button-container {
		border-radius: 12px 12px 0px 0px;
		width: 90%;
		margin:auto;
		background: linear-gradient(90deg, #e02828, #ff4b2b);
		padding: 3%;
	}
@media (min-width:680px) {
	#next_button {
	  display: none
	}
}

@media screen and (max-width:680px) {
    .hero-title {
    font-size: 30px;
}
}
@media screen and (max-width:800px) {
    .hero-form{
    margin-top: 20px;
}
.hero-stats{
    flex-wrap: wrap;
}
#why-choose-section::before {
    top: 20%;
    left: 0;
}
#why-choose-section::after{
    bottom: 10%;
    right: 0;
}
}