/* ================= RESET & BASE ================= */
*{
  margin:0;
  padding:0;
  box-sizing:border-box;
  font-family: Arial, Helvetica, sans-serif;
}

body{
  background:#fff;
}

/* ================= HEADER ================= */
.header{
  position:sticky;
  top:0;
  z-index:1000;
  background:#ffd93d;
}

.header-inner{
  max-width:1200px;
  margin:auto;
  padding:18px 20px;
  display:flex;
  align-items:center;
}

.logo{
  font-size:26px;
  font-weight:800;
}

/* ================= LOGO IMAGE ================= */
.logo a{
  display:flex;
  align-items:center;
  text-decoration:none;
}

.logo img{
  height:55px;
  width:auto;
  display:block;
}

/* Responsive Logo */
@media(max-width:900px){
  .logo img{
    height:45px;
  }
}

/* ================= NAVIGATION ================= */
.nav{
  margin-left:auto;
  display:flex;
  align-items:center;
  gap:28px;
}

.nav a,
.dropdown-toggle{
  text-decoration:none;
  color:#000;
  font-weight:600;
  cursor:pointer;
  position:relative;
}

/* ================= DROPDOWN ================= */
.dropdown{
  position:relative;
}

.dropdown-menu{
  position:absolute;
  top:100%;
  left:0;
  min-width:260px;
  background:#2f3336;
  padding:14px 0;
  display:none;
  flex-direction:column;
  z-index:999;
}

.dropdown-menu a{
  padding:12px 22px;
  color:#fff;
  font-size:14px;
}

.dropdown-menu a:hover{
  background:#ffd93d;
  color:#000;
}

/* Desktop hover */
@media(min-width:901px){
  .dropdown:hover .dropdown-menu{
    display:flex;
  }
}

/* ================= MOBILE MENU ================= */
.menu-icon{
  display:none;
  font-size:26px;
  cursor:pointer;
  margin-left:auto;
}

@media(max-width:900px){

  .menu-icon{
    display:block;
  }

  .nav{
    position:absolute;
    top:100%;
    left:0;
    width:100%;
    background:#ffd93d;
    flex-direction:column;
    align-items:flex-start;
    padding:20px;
    display:none;
  }

  .nav.active{
    display:flex;
  }

  .dropdown-menu{
    position:static;
    width:100%;
    margin-top:10px;
  }

  .dropdown-menu.active{
    display:flex;
  }
}

/* ================= PAGE HERO ================= */
.page-hero{
  position:relative;
  padding:120px 20px;
}

.page-hero::after{
  content:"";
  position:absolute;
  inset:0;
  background:rgba(255,217,61,.88);
}

.page-hero-inner{
  max-width:1200px;
  margin:auto;
  position:relative;
  z-index:2;
}

.page-title h1{
  font-size:48px;
  font-weight:800;
}

.page-title p{
  margin-top:10px;
  font-weight:600;
}

/* ================= SECTION TAG ================= */
.section-tag{
  font-size:13px;
  font-weight:700;
  position:relative;
  padding-bottom:8px;
  display:inline-block;
}

.section-tag::after{
  content:"";
  width:40px;
  height:3px;
  background:#ffd93d;
  position:absolute;
  left:0;
  bottom:0;
}

.section-tag.center{
  display:inline-block;
}

/* ================= FOOTER ================= */
.site-footer{
  background:#0f1b24;
  color:#bfc7cd;
}

/* Footer top */
.footer-top{
  border-bottom:1px solid rgba(255,255,255,.1);
}

.footer-top-inner{
  max-width:1200px;
  margin:auto;
  padding:40px 20px;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:30px;
}

.contact-box{
  display:flex;
  gap:15px;
  align-items:center;
}

.icon-circle{
  width:60px;
  height:60px;
  background:#ffd93d;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:24px;
  color:#000;
}

.contact-box strong{
  color:#fff;
}

/* ================= FOOTER ================= */
.site-footer{
  background:#0f1b24;
  color:#bfc7cd;
  position:relative;
}

/* TOP BAR */
.footer-top{
  border-bottom:1px solid rgba(255,255,255,.1);
}

.footer-top-inner{
  max-width:1200px;
  margin:auto;
  padding:40px 20px;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:30px;
}

.contact-box{
  display:flex;
  align-items:center;
  gap:15px;
}

.icon-circle{
  width:60px;
  height:60px;
  background:#ffd93d;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:24px;
  color:#000;
}

.contact-box small{
  display:block;
  font-size:13px;
  opacity:.8;
}

.contact-box strong{
  color:#fff;
}

/* MAIN FOOTER */
.footer-main{
  padding:70px 20px;
}

.footer-inner{
  max-width:1200px;
  margin:auto;
  display:grid;
  grid-template-columns:2fr 1fr 1fr 1.5fr;
  gap:50px;
}

.footer-logo{
  color:#ffd93d;
  font-size:28px;
  margin-bottom:15px;
}

.footer-col h4{
  color:#fff;
  margin-bottom:20px;
  position:relative;
}

.footer-col h4::after{
  content:"";
  width:40px;
  height:3px;
  background:#ffd93d;
  position:absolute;
  left:0;
  bottom:-8px;
}

.footer-col ul{
  list-style:none;
}

.footer-col ul li{
  margin-bottom:12px;
}

.footer-col a{
  text-decoration:none;
  color:#bfc7cd;
}

.footer-col a:hover{
  color:#ffd93d;
}

/* SOCIAL */
.social-links{
  display:flex;
  gap:12px;
  margin-top:20px;
}

.social-links a{
  width:40px;
  height:40px;
  border:1px solid rgba(255,255,255,.2);
  display:flex;
  align-items:center;
  justify-content:center;
  color:#fff;
  border-radius:50%;
}

.social-links a:hover{
  background:#ffd93d;
  color:#000;
}

/* NEWSLETTER */
.newsletter input{
  width:100%;
  padding:14px;
  border:none;
  margin-bottom:12px;
}

.newsletter button{
  width:100%;
  padding:14px;
  background:#ffd93d;
  border:none;
  font-weight:700;
  cursor:pointer;
}

/* COPYRIGHT */
.footer-bottom{
  border-top:1px solid rgba(255,255,255,.1);
  padding:25px 20px;
  text-align:center;
  font-size:14px;
}

.footer-bottom span, a{
  color:#ffd93d;
  font-weight:600;
}

/* ================= FLOATING ================= */
.float-card{
  position:fixed;
  right:20px;
  top:50%;
  transform:translateY(-50%);
  background:#fff;
  border-radius:8px;
  overflow:hidden;
  z-index:999;
}

.float-card a{
  width:54px;
  height:54px;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#fff;
  font-size:22px;
}

.float-call{ background:#111; }
.float-whatsapp{ background:#25D366; }

/* ================= BACK TO TOP ================= */
#backToTop{
  position:fixed;
  bottom:25px;
  right:25px;
  width:48px;
  height:48px;
  background:#ffd93d;
  border:none;
  border-radius:50%;
  font-size:22px;
  cursor:pointer;
  display:none;
  align-items:center;
  justify-content:center;
  z-index:999;
}

/* RESPONSIVE */
@media(max-width:900px){
  .footer-top-inner{
    grid-template-columns:1fr;
  }
  .footer-inner{
    grid-template-columns:1fr;
  }
}