:root{
--primary:#2563eb;
--secondary:#22c55e;
--dark:#0f172a;
--light:#f8fafc;
}

body{
margin:0;
font-family:'Poppins',sans-serif;
background:var(--light);
color:var(--dark);
}

.container{
max-width:1200px;
margin:auto;
padding:0 20px;
}

/* AUTO POPUP */
.auto-popup{
position:fixed;
top:0;
left:0;
width:100%;
height:100%;
background:rgba(0,0,0,0.6);
display:flex;
align-items:center;
justify-content:center;
z-index:9999;
visibility:hidden;
opacity:0;
transition:.4s;
}

.auto-popup.active{
visibility:visible;
opacity:1;
}

.about-section{
padding:100px 0;
background:#ffffff;
}

.about-grid{
display:grid;
grid-template-columns:1fr 1fr;
gap:50px;
align-items:center;
}

/* IMAGES */
.about-images{
position:relative;
}

.img-main{
width:100%;
border-radius:20px;
box-shadow:0 20px 50px rgba(0,0,0,.15);
}

.img-small{
width:60%;
position:absolute;
bottom:-30px;
right:-20px;
border-radius:20px;
border:5px solid #fff;
box-shadow:0 15px 40px rgba(0,0,0,.2);
}

/* CONTENT */
.about-content h2{font-size: 25px;margin-bottom:20px;color:#1e40af;}

.about-content p{
color:#475569;
margin-bottom:15px;
line-height:1.7;
}

.about-highlights{
display:grid;
grid-template-columns:repeat(2,1fr);
gap:10px;
margin-top:20px;
font-weight:500;
color:#0f172a;
}

/* MOBILE */
@media(max-width:768px){
.about-grid{
grid-template-columns:1fr;
}

.img-small{
position:static;
width:100%;
margin-top:15px;
}
}

.popup-box{
background:rgba(255,255,255,0.9);
backdrop-filter:blur(15px);
padding:30px;
border-radius:20px;
width:90%;
max-width:350px;
text-align:center;
box-shadow:0 20px 50px rgba(0,0,0,.3);
animation:popupScale .4s ease;
}

@keyframes popupScale{
from{transform:scale(0.7);opacity:0}
to{transform:scale(1);opacity:1}
}

/* MOBILE FLOAT BAR */
.mobile-float-bar{
position:fixed;
bottom:0;
left:0;
width:100%;
display:none;
z-index:9999;
box-shadow:0 -5px 20px rgba(0,0,0,0.15);
}

.mobile-float-bar a{
flex:1;
display:flex;
align-items:center;
justify-content:center;
gap:8px;
padding:14px;
font-weight:600;
color:#fff;
text-decoration:none;
font-size:15px;
}

.float-call{
background:linear-gradient(135deg,#16a34a,#22c55e);
}

.float-wa{
background:linear-gradient(135deg,#0ea5e9,#2563eb);
}

/* show only mobile */
@media(max-width:768px){
.mobile-float-bar{
display:flex;
}
body{
padding-bottom:65px; /* space for bar */
}
}

.mobile-float-bar a{
transition:0.3s;
}

.mobile-float-bar a:active{
transform:scale(0.95);
}
.popup-box h2{
margin-bottom:10px;
}

.popup-box p{
font-size:14px;
color:#555;
margin-bottom:15px;
}

.popup-box input{
width:100%;
padding:12px;
margin-bottom:10px;
border-radius:10px;
border:1px solid #ddd;
}

.popup-box button{
width:100%;
padding:12px;
background:#2563eb;
color:#fff;
border:none;
border-radius:10px;
font-weight:600;
}

.close-btn{
position:absolute;
top:15px;
right:20px;
font-size:22px;
cursor:pointer;
color:#333;
}

/* HEADER */
header{
background:#fff;
padding:15px 0;
box-shadow:0 5px 20px rgba(0,0,0,.05);
position:sticky;
top:0;
z-index:99;
}

.flex{
display:flex;
justify-content:space-between;
align-items:center;
}

.logo{font-size: 18px;font-weight:700;color:var(--primary);}

.call-btn{background:var(--secondary);color:#fff;padding: 10px 16px;border-radius:50px;}

/* HERO */
.hero-new{
  /* background: linear-gradient(135deg,#f0fdf4,#e0f2fe); */
  padding:100px 0;
  background-image: url(.//bg.jpg);
}

.hero-flex{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:60px;
  flex-wrap:wrap;
}

.hero-content{
  flex:1;
}

.hero-content h1{
  font-size:46px;
  font-weight:700;
  color: #ffffff;
  margin-bottom:20px;
}

.hero-content p{
  font-size:18px;
  color: #ffffff;
  margin-bottom:30px;
}

.hero-buttons{
  display:flex;
  gap:15px;
}

.btn-main{
  background:#22c55e;
  color:#fff;
  padding:14px 28px;
  border-radius:12px;
  font-weight:600;
}

.btn-light{
  background:#fff;
  border:1px solid #cbd5f5;
  padding:14px 28px;
  border-radius:12px;
  color:#0f172a;
}

/* FORM CARD */
.hero-card{
  flex:0.5;
  background:rgba(255,255,255,0.8);
  backdrop-filter: blur(12px);
  padding:30px;
  border-radius:20px;
  box-shadow:0 20px 50px rgba(0,0,0,0.1);
}

.hero-card h3{
  margin-bottom:15px;
}

.hero-card input,
.hero-card textarea{
  width:100%;
  padding:12px;
  margin-bottom:12px;
  border-radius:10px;
  border:1px solid #e2e8f0;
}

.hero-card button{
  width:100%;
  padding:14px;
  background:#1e40af;
  color:#fff;
  border:none;
  border-radius:10px;
  font-weight:600;
}

.btn{
display:inline-block;
margin-top:20px;
padding:14px 25px;
background:var(--secondary);
color:#fff;
border-radius:10px;
}

/* SECTION */
.section{padding: 20px 0;}

.grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
gap:25px;
}

.card{
background:#fff;
border-radius:15px;
padding:20px;
box-shadow:0 10px 25px rgba(0,0,0,.08);
}

.card img{width:100%;border-radius:10px;margin-bottom: -10px;}

/* GALLERY */
.gallery img{
width:100%;
border-radius:12px;
cursor:pointer;
}

/* MODAL */
.modal{
display:none;
position:fixed;
top:0;
left:0;
width:100%;
height:100%;
background:rgba(0,0,0,.8);
justify-content:center;
align-items:center;
z-index:999;
}

.modal img{
max-width:90%;
max-height:80%;
border-radius:10px;
}

.close{
position:absolute;
top:30px;
right:40px;
color:#fff;
font-size:30px;
cursor:pointer;
}

/* CTA */
.cta{
background:linear-gradient(135deg,#22c55e,#16a34a);
color:#fff;
text-align:center;
padding:70px 20px;
}

/* FOOTER */
footer{
background:#0f172a;
color:#cbd5e1;
padding:40px;
text-align:center;
}

@media(max-width:768px){
.hero-grid{grid-template-columns:1fr}
.hero h1{font-size:32px}
.hero-flex {
    display: grid;
    align-items: center;
    justify-content: space-between;
    gap: 60px;
    flex-wrap: wrap;
}
.hero-content h1 {
    font-size: 20px;
    font-weight: 700;
    color: #ffdb9c;
    margin-bottom: 20px;
}

.hero-new {
    /* background: linear-gradient(135deg, #f0fdf4, #e0f2fe); */
    padding: 30px 0;
}

}
