/* CSS Document */ 
html{scroll-behavior:smooth}
body{ width:100%; font-family: "Poppins", sans-serif; font-size:14px; color:var(--text); line-height:22px; font-weight:400; background:#fff; overflow-x:hidden; padding:0; margin:0; }
h1,h2,h3,h4,h5,h6{padding:0; margin:0;}
a, a:focus, a:hover{ outline:none; text-decoration:none; }
ul, ul li{ padding:0; margin:0; list-style:none; }
*{ padding:0; margin:0; box-sizing:border-box; }
p{ font-family: "Poppins", sans-serif; font-size:14px; color:var(--text); line-height:22px; font-weight:400; padding:0 0 20px 0; margin:0; }
p:last-child{ padding:0; }

:root{
	--red:#e30620;
	--red-dark:#c90018;
	--navy:#07151d;
	--navy-2:#0c202a;
	--text:#18232b;
	--muted:#69737a;
	--light:#f6f7f8;
	--border:#e6e8ea;
}

.container-xl{max-width:1200px}

/*======= Topbar =========*/
.topbar{ background:#070d11; color:#fff; min-height:32px; padding:0 10px; }
.topbar p{ color:#fff; padding:0; margin:0; }
.topbar p i{ color:var(--red); line-height:0; padding:0 5px 0 0; position:relative; top:2px; }
.topbar a{color:#fff; transition:all 300ms ease-in-out; }
.topbar .phone{ font-weight:600; letter-spacing:.2px; }
.topbar .phone i{ padding-right:5px; }
.topbar .phone:hover{ color:var(--red); }
.quote-mini{ background:var(--red); padding:.48rem .9rem; font-weight:600; display:inline-flex; align-items:center; gap:.35rem; }
.quote-mini:hover{ background:var(--red-dark); }


/*======= Header =========*/
.navbar{ min-height:76px; background:#fff; box-shadow:0 1px 0 rgba(0,0,0,.08); padding-left:10px; padding-right:10px; }
.brand{ display:flex; align-items:center; gap:.6rem; }
.brand img{ width:150px; height:auto; }

.navbar .navbar-nav .nav-item{ padding:0 30px 0 0; }
.navbar .navbar-nav .nav-item:last-child{ padding-right:0; }
.navbar .nav-link{ color:#28343b; font-size:.86rem; font-weight:500; padding:3px 0 !important; }
.navbar .nav-link:hover,
.navbar .nav-link.active{ color:var(--red); }
.navbar .nav-link.active{ border-bottom:2px solid var(--red); }

.btn-danger-custom{
  --bs-btn-bg:var(--red);
  --bs-btn-border-color:var(--red);
  --bs-btn-hover-bg:var(--red-dark);
  --bs-btn-hover-border-color:var(--red-dark); font-size:15px; font-weight:600; padding:.78rem 1.25rem; }
.btn-outline-light-custom{ border:1px solid rgba(255,255,255,.75); font-size:15px; color:#fff; font-weight:600; padding:.78rem 1.25rem; }
.btn-outline-light-custom:hover{background:#fff;color:#111}

/*======= Hero =========*/
.hero{ padding:100px 10px; position:relative; display:flex; align-items:center; color:#fff; background:linear-gradient(90deg,rgba(4,18,27,.97) 0%,rgba(4,18,27,.88) 37%,rgba(4,18,27,.25) 72%,rgba(4,18,27,.35) 100%), url(../images/banner-img.jpg) no-repeat center; background-size:cover; }
.hero .eyebrow{ font-size:.9rem; color:#fff; font-weight:600; letter-spacing:2px; margin-bottom:.65rem; }
.hero h1{ font-size:clamp(2.2rem,4.3vw,4rem); line-height:1.03; font-weight:700; margin-bottom:1rem; text-transform:uppercase; }
.hero h1 span{color:var(--red)}
.hero p{ color:#e6ecef; font-size:1rem; line-height:1.65; }
.hero-note{ position:absolute; right:7%; top:24%; font-family:cursive; font-size:1.9rem; line-height:1.05; transform:rotate(-7deg); color:#fff; max-width:235px; }
.hero-note:after{ content:""; display:block; width:100%; height:2px; background:var(--red); transform:rotate(0deg); margin-top:8px; }

/*======= Common Section =========*/
.section{ padding:90px 10px; }
.section-sm{ padding:70px 0; }
.section-label{ color:var(--text); font-size:.8rem; font-weight:600; letter-spacing:1.4px; text-transform:uppercase; position:relative; padding-left:25px; margin-bottom:.55rem; }
.section-label:before{ content:""; position:absolute; left:0; top:50%; width:15px; height:2px; background:var(--red); transform:translateY(-50%); }
.section h2{ font-weight:700; line-height:1.05; font-size:clamp(2rem,3.5vw,3rem); margin-bottom:1rem; }
.section h3{ font-weight:600; }
.section p{ line-height:1.65; color:var(--muted); }

.services-sec{ background:#fff; }
.service-intro{ padding-right:30px; }
.service-grid{ display:grid; grid-template-columns:repeat(4,1fr); border-left:1px solid var(--border); border-top:1px solid var(--border); }
.service-card{ min-height:150px; padding:25px 13px; text-align:center; border-right:1px solid var(--border); border-bottom:1px solid var(--border); display:flex; flex-direction:column; align-items:center; justify-content:center; transition:.2s ease; }
.service-card:hover{ background:#f0f0f0; transform:translateY(-2px); }
.service-icon{ width:54px; height:54px; border:2px solid var(--red); border-radius:50%; display:grid; place-items:center; color:#111; font-size:1.4rem; margin-bottom:12px; }
.service-card h3{ font-size:.82rem; line-height:1.25; margin:0; }

.dark-section{ padding:90px 10px; background:var(--navy); color:#fff; position:relative; }
.dark-section .section-label{ color:#fff; }
.dark-section h2{ font-weight:700; line-height:1.05; font-size:clamp(2rem,3.5vw,3rem); margin-bottom:1rem; }
.dark-section p{ color:#c7d0d4; }
.about-sec:after{ content:""; width:50%; height:100%; position:absolute; right:0; top:0; background:url(../images/about-img.jpg) no-repeat center; background-size:cover; }
.about-sec .feature-image{ display:none; }
.about-sec .feature-image img{ width:100%; height:auto; }
.about-sec .feature-content{ padding-right:40px; }

.feature-content{  }
.feature-list{ display:flex; gap:25px; flex-wrap:wrap; margin:25px 0 15px; }
.feature-list .item{ width:calc(33.33% - 17px); border-left:1px solid rgba(255,255,255,.2); padding-left:20px; }
.feature-list .item:first-child{ border-left:none; padding-left:0; }
.feature-list i{color:var(--red);font-size:1.3rem}
.feature-list strong{ display:block; font-size:.8rem; line-height:1.25; margin-top:12px; color:#c7d0d4; font-weight:600; }

.areas{ background:#fff; overflow:hidden; }
.area-checks{border-left:1px solid #ddd;padding-left:40px}
.area-check{ display:flex;gap:10px;align-items:flex-start; font-size:.88rem;font-weight:700; margin-bottom:14px; }
.area-check i{color:var(--red);font-size:1.05rem}

.why{ background:linear-gradient(90deg,rgba(3,15,22,.96) 0%,rgba(3,15,22,.88) 47%,rgba(3,15,22,.5) 100%), url(../images/why-bg.jpg) no-repeat center; background-size:cover; color:#fff; overflow:hidden; }
.why .section-label{ color:#fff; }
.why p{color:#d1d9dd}
.why-grid{ display:grid; grid-template-columns:repeat(3,1fr); border-left:1px solid rgba(255,255,255,.2); border-top:1px solid rgba(255,255,255,.2); }
.why-card{ padding:28px 20px; min-height:145px; border-right:1px solid rgba(255,255,255,.2); border-bottom:1px solid rgba(255,255,255,.2); text-align:center; }
.why-card i{ font-size:1.6rem; color:#fff; }
.why-card h3{ font-size:1rem; font-weight:500; text-transform:uppercase; margin-top:10px; margin-bottom:0; }

.process{background:#fff}
.process-step{text-align:center;position:relative;padding:15px}
.step-number{ width:25px; height:25px; background:var(--red); color:#fff; border-radius:50%; display:inline-grid; place-items:center; font-size:.72rem; font-weight:600; margin-bottom:10px; }
.process-icon{ width:60px; height:60px; border:2px solid var(--red); color:#1b272e; border-radius:50%; display:grid; place-items:center; margin:0 auto 13px; font-size:1.4rem; }
.process-step h3{ font-size:1rem; margin-bottom:5px; }
.process-step p{ margin:0; }
.process-arrow{ position:absolute; right:-12px; top:30%; color:var(--red); font-size:1.4rem; }

.cta{ background:linear-gradient(90deg,rgba(0,0,0,.86),rgba(0,0,0,.55)), url(../images/cta-bg.jpg) center/cover; color:#fff; padding:60px 10px; }
.cta .section-label{ color:#fff; }
.cta h2{ font-size:2rem; font-weight:700; margin:0; text-transform:uppercase; }
.cta .phone{ display:flex; flex-wrap:wrap; font-size:1.3rem; font-weight:600; align-items:center; }
.cta .phone i{ display:flex; flex-wrap:wrap; align-items:center; justify-content:center; width:35px; height:35px; font-size:16px; border:1px solid var(--red); border-radius:50%; }


#footer{ background:#061016; color:#fff; padding:50px 10px 20px; }
#footer p{ padding-bottom:0; }
#footer p, #footer li, #footer a{color:#aeb9be;font-size:.78rem}
#footer a:hover{color:#fff}
#footer .footer-logo{ width:190px; padding:0 0 10px 0; }
#footer .footer-logo img{ width:100%; height:auto; }
#footer .social{ width:32px;height:32px;border:1px solid #405058; display:grid;place-items:center;border-radius:50%; color:#fff; }
#footer .footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding-top:18px;margin-top:30px}

@media(max-width:991px){
  .hero-note{display:none}
  .service-grid{grid-template-columns:repeat(2,1fr)}
  /*.feature-content{padding:55px 30px}*/
  .about-sec::after{ display:none; }
  .about-sec .feature-image{ display:block; padding-bottom:35px; }
  .map-wrap{clip-path:none}
  .area-checks{border-left:0;padding-left:0;margin-top:30px}
  .process-arrow{display:none}
  .why-grid{margin-top:30px}
}
@media(max-width:767px){
  .topbar .container-xl{justify-content:center!important}
  .topbar .desktop-only{display:none}
  .navbar{min-height:65px}
  .hero{ padding:70px 10px; }
  .hero h1{font-size:2.3rem}
  .section{padding:60px 10px}
  .service-grid{grid-template-columns:repeat(2,1fr)}
  .dark-section{ padding:60px 0 }
  .feature-image{min-height:280px}
  .why-grid{grid-template-columns:repeat(2,1fr); margin-top:0; }
  .cta .actions{margin-top:20px}
}
@media(max-width:575px){
  .hero h1{ font-size:2rem; }
  .section h2{ font-size:1.5rem; }
  .dark-section h2{ font-size:1.5rem; }
  .service-grid{grid-template-columns:1fr 1fr}
  .service-card{min-height:135px;padding:18px 8px}
  .service-icon{width:48px;height:48px}
  .why-grid{grid-template-columns:1fr 1fr}
  .why-card{min-height:120px;padding:20px 14px}
  .cta h2{ font-size:1.5rem; }
  #footer .footer-bottom{ text-align:center; }
  #footer .footer-bottom p{ width:100%; text-align:center; }
}