:root{
  --primary:#0d6efd;
  --secondary:#0b5ed7;
  --accent:#ffce3d;
  --dark:#1e1e1e;
  --light:#ffffff;
  --bg-light:#f4f8ff;
  --font:'Roboto', Arial, Helvetica, sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:var(--font);color:var(--dark);background:var(--light);scroll-behavior:smooth}
img{max-width:100%;height:auto}
.container{width:90%;max-width:1100px;margin:0 auto;padding:0 15px}
header{
  position:relative;
  background:url('{hero_bg_url}') center/cover no-repeat;
  min-height:70vh;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  color:var(--light);
}
header .overlay{
  position:absolute;inset:0;
  background:rgba(13,110,253,0.6);
}
header .hero{position:relative;z-index:1}
.logo{font-size:2.5rem;font-weight:700;letter-spacing:1px}
.tagline{font-size:1.3rem;margin:15px 0 25px}
.cta-btn{
  display:inline-block;
  background:var(--accent);
  color:#000;
  padding:15px 35px;
  border-radius:50px;
  font-weight:700;
  text-decoration:none;
  transition:transform 0.3s;
}
.cta-btn:hover{transform:translateY(-3px)}
.pulse{animation:pulse 2s infinite}
@keyframes pulse{0%,100%{box-shadow:0 0 0 0 rgba(255,206,61,0.7)}50%{box-shadow:0 0 0 15px rgba(255,206,61,0)}}
.contact-info{margin-top:20px;font-size:1rem}
.contact-info a{color:var(--light);margin:0 10px;text-decoration:none}
section{padding:80px 0}
.services{background:var(--bg-light)}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:25px}
.card{
  background:var(--light);
  border-radius:10px;
  padding:30px 20px;
  text-align:center;
  box-shadow:0 2px 6px rgba(0,0,0,0.08);
  transition:transform .3s;
}
.card i{font-size:2.2rem;color:var(--primary);margin-bottom:10px}
.card:hover{transform:translateY(-6px)}
.brand-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:20px;align-items:center;justify-items:center}
.brand-grid img{max-height:60px;filter:grayscale(100%);opacity:0.85;transition:opacity .3s}
.brand-grid img:hover{opacity:1}
.benefit-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:30px}
.benefit{
  background:var(--light);
  border:1px solid #e0e0e0;
  border-radius:10px;
  padding:25px 20px;
  text-align:center;
  box-shadow:0 2px 6px rgba(0,0,0,0.05);
}
.benefit i{font-size:2rem;color:var(--primary);margin-bottom:12px}
.testimonials{background:var(--bg-light)}
.slider{position:relative;overflow:hidden}
.slide{opacity:0;transition:opacity .5s ease-in-out;position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:0 15px}
.slide.active{opacity:1;position:relative}
.slide p{font-size:1.2rem;font-style:italic;margin-bottom:10px;text-align:center}
.slide cite{font-size:1rem;font-weight:500}
.coupon{background:var(--accent);text-align:center;color:#000;font-size:1.1rem}
.faq details{margin-bottom:15px;border:1px solid #ddd;border-radius:6px;padding:15px;background:#fff}
.faq summary{cursor:pointer;font-weight:600}
.contact{background:var(--bg-light)}
.contact form{max-width:550px;margin:0 auto;display:grid;gap:20px}
.field input,.field textarea{width:100%;padding:12px;border:1px solid #ccc;border-radius:6px;font-size:1rem}
.contact button{border:none}
.privacy{font-size:0.85rem;color:#555;text-align:center}
footer{background:var(--dark);color:#ccc;text-align:center;padding:30px 0;font-size:0.9rem}
.call-now{
  position:fixed;bottom:20px;right:20px;z-index:999;
  background:var(--accent);color:#000;border:none;padding:14px 18px;border-radius:50%;font-size:1.25rem;text-align:center;line-height:1;
  box-shadow:0 4px 8px rgba(0,0,0,0.2);
}
.call-now:hover{transform:scale(1.1)}
@media(max-width:600px){
  header{min-height:60vh}
  .tagline{font-size:1.1rem}
}
/* Fade-in on scroll */
.fade-in{opacity:0;transform:translateY(40px);transition:opacity .6s ease-out,transform .6s ease-out}
.fade-in.show{opacity:1;transform:none}
