/* =========================
   GLOBAL
========================= */
/* =========================
   GLOBAL
========================= */

*{
  margin:0;
  padding:0;
  box-sizing:border-box;
  font-family:Arial,sans-serif;
}

html{
  scroll-behavior:smooth;
}

body{
  background:#f5f7fb;
  overflow-x:hidden;
  color:#222;
}

/* =========================
   WHATSAPP
========================= */

.whatsapp-float{
  position:fixed;
  width:60px;
  height:60px;
  bottom:20px;
  right:20px;
  z-index:1000;
  border-radius:50%;
}

.whatsapp-float img{
  width:100%;
  height:100%;
}

/* =========================
   NAVBAR
========================= */

nav{
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:22px 40px;
  background:white;
  position:sticky;
  top:0;
  z-index:1000;
  box-shadow:0 2px 12px rgba(0,0,0,0.08);
}

.logo{
  display:flex;
  align-items:center;
  gap:15px;
}

.logo img{
  width:60px;
  height:60px;
  border-radius:50%;
  object-fit:cover;
}

.logo h2{
  font-size:22px;
  font-weight:800;
  color:#0b0b3f;
  line-height:1.2;
}

.logo h2 span{
  font-size:22px;
  color:#9d6a01;
}

nav ul{
  display:flex;
  list-style:none;
  gap:45px;
}

nav ul li a{
  text-decoration:none;
  color:#0b0b3f;
  font-size:20px;
  font-weight:600;
}

nav ul li a:hover{
  color:#9d6a01;
}

.menu-icon{
  display:none;
  font-size:30px;
  cursor:pointer;
}

/* =========================
   HERO
========================= */

/* =========================
   HERO
========================= */

.hero{
  min-height:88vh;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:60px 7%;
  position:relative;
  overflow:hidden;
  background:#f1f1f1;
}

.hero-content{
  flex:1;
  max-width:600px;
  z-index:2;
}

.hero h1{
  font-size:75px;
  line-height:1.2;
  margin-bottom:25px;
  font-weight:900;
  color:rgb(15,2,67);
}

.hero p{
  font-size:20px;
  color:#b99110;
  line-height:1.7;
  font-weight:500;
}

.hero button{
  margin-top:30px;
  padding:16px 40px;
  border:none;
  border-radius:50px;
  background:#9d6a01;
  color:white;
  font-size:18px;
  font-weight:700;
  cursor:pointer;
  transition:0.3s;
}

/* HERO IMAGE */

.hero::before{
  content:"";
  position:absolute;
  top:50%;
  right:7%;
  transform:translateY(-50%);
  width:420px;
  height:620px;
  background:url("www.png") center/cover no-repeat;
  border-radius:30px;
  z-index:1;
  border:3px solid transparent;
  animation:borderMove 3s linear infinite;
}

@keyframes borderMove{
  0%{
    box-shadow:0 0 0 0 rgba(157,106,1,0.4);
  }

  50%{
    box-shadow:0 0 25px 6px rgba(157,106,1,0.6);
  }

  100%{
    box-shadow:0 0 0 0 rgba(157,106,1,0.4);
  }
}

/* =========================
   MOBILE
========================= */

@media (max-width:768px){

  nav{
    padding:15px 20px;
    position:relative;
  }

  .logo{
    gap:10px;
  }

  .logo img{
    width:30px !important;
    height:30px !important;
  }

  .logo h2{
    font-size:25px !important;
    line-height:1.2;
    font-weight: 1200;
  }

  .logo h2 span{
    font-size:24px !important;
  }

  .menu-icon{
    display:block;
    position:absolute;
    right:20px;
    top:50%;
    transform:translateY(-50%);
    color:#0b0b3f;
  }

  nav ul{
    display:none;
    flex-direction:column;
    position:absolute;
    top:90px;
    left:0;
    width:100%;
    background:white;
    padding:20px 0;
    text-align:center;
    gap:10px;
    box-shadow:0 6px 18px rgba(0,0,0,0.1);
  }

  nav ul.active{
    display:flex;
  }

  nav ul li a{
    font-size:18px;
    padding:10px 0;
  }
/* FORCE MOBILE LOGO SIZE */

@media only screen and (max-width:768px){

  nav .logo img{
    width:50px !important;
    height:50px !important;
    min-width:50px !important;
    min-height:50px !important;
  }

  nav .logo h2{
    font-size:19px !important;
    line-height:1.2 !important;
    font-weight: 1000;
  }

  nav .logo h2 span{
    font-size:18px !important;
  }

}
  /* HERO MOBILE */

  .hero{
    min-height:auto;
    padding:50px 20px 420px;
    text-align:center;
    justify-content:center;
  }

  .hero-content{
    max-width:100%;
  }

  .hero h1{
    font-size:42px;
  }

  .hero p{
    font-size:18px;
  }

  .hero::before{
    width:280px;
    height:380px;
    left:50%;
    right:auto;
    top:auto;
    bottom:20px;
    transform:translateX(-50%);
  }

}
/* =========================
   ABOUT
========================= */
.about-mini {
  padding: 80px 7%;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.about-heading {
  text-align: center;
  margin-bottom: 35px;
}

.about-heading h2 {
  font-size: 42px;
  color: #071133;
  font-weight: 700;
}

.about-box {
  max-width: 1100px;
  width: 100%;
  padding: 55px;
  background: rgba(7, 7, 51, 0.96);
  border-radius: 28px;
  position: relative;
  overflow: hidden;
  box-shadow: 0 15px 40px rgba(0, 0, 0, 0.18);
}

.about-box::before {
  content: "";
  position: absolute;
  top: -40%; left: -40%;
  width: 180%; height: 180%;
  background: radial-gradient(circle, rgba(212, 175, 55, 0.14), transparent 65%);
  animation: glowMove 8s linear infinite;
  pointer-events: none;
}

.about-box p {
  position: relative;
  z-index: 1;
  font-size: 17px;
  line-height: 2;
  color: #f1f1f1;
  margin-bottom: 18px;
}

.brand-name { color: #d4af37; font-weight: 700; }

@media (max-width: 768px) {
  .about-mini { padding: 60px 5%; }
  .about-heading h2 { font-size: 32px; }
  .about-box { padding: 30px 22px; border-radius: 18px; }
  .about-box p { font-size: 15px; }
}

/* =========================
   STATS
========================= */
.stats-premium {
  padding: 80px 7%;
  background: linear-gradient(135deg, #050b2c, #0a0f3f);
  position: relative;
  overflow: hidden;
}

.stats-premium::before {
  content: "";
  position: absolute;
  width: 500px; height: 500px;
  background: radial-gradient(circle, rgba(212,175,55,0.15), transparent 70%);
  top: -150px; right: -150px;
  animation: floatGlow 8s ease-in-out infinite;
}

.stats-wrapper {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 50px;
  position: relative;
  z-index: 1;
}

.stats-left { flex: 1; color: white; }
.stats-left h2 { font-size: 42px; color: #d4af37; margin-bottom: 10px; }
.stats-left p  { font-size: 16px; color: #cfd6ff; }

.stats-right {
  flex: 1;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
}

.stat-box {
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(212,175,55,0.25);
  backdrop-filter: blur(14px);
  border-radius: 16px;
  padding: 25px;
  text-align: center;
  transition: 0.4s ease;
  position: relative;
  overflow: hidden;
}

.stat-box::before {
  content: "";
  position: absolute;
  width: 200%; height: 200%;
  background: radial-gradient(circle, rgba(212,175,55,0.18), transparent 60%);
  top: -50%; left: -50%;
  opacity: 0; transition: 0.4s;
}

.stat-box:hover::before { opacity: 1; }
.stat-box:hover { transform: translateY(-10px) scale(1.05); border-color: #d4af37; }
.stat-box h3 { font-size: 32px; color: #d4af37; margin-bottom: 6px; animation: pop 1.5s ease infinite alternate; }
.stat-box p  { font-size: 14px; color: #e6e6e6; }

@media (max-width: 768px) {
  .stats-wrapper { flex-direction: column; text-align: center; }
  .stats-left h2 { font-size: 28px; }
  .stats-right { grid-template-columns: 1fr; width: 100%; }
}

/* =========================
   CALCULATORS
========================= */

/* scroll-margin — sticky nav ke neeche nahi jayega */
#tax-calculator {
  scroll-margin-top: 80px;
}

.calculator-wrapper {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
  width: 96%;
  max-width: 1200px;
  margin: 50px auto;
}

.calculator {
  padding: 32px 36px;
  background: rgba(255, 255, 255, 0.95);
  backdrop-filter: blur(10px);
  border: 1px solid rgba(11, 11, 63, 0.1);
  border-radius: 22px;
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.07);
  position: relative;
  overflow: hidden;
}

.calculator.single {
  grid-column: 1 / -1;
  max-width: 580px;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
}

.calculator::before {
  content: "";
  position: absolute;
  top: -50%; right: -20%;
  width: 350px; height: 350px;
  background: radial-gradient(circle, rgba(212, 175, 55, 0.10), transparent 70%);
  pointer-events: none;
}

.calculator h2 {
  font-size: 26px;
  margin-bottom: 22px;
  text-align: center;
  color: #0b0b3f;
  font-weight: 900;
  position: relative;
  z-index: 1;
}

.tax-form {
  display: flex;
  gap: 18px;
  flex-wrap: wrap;
  margin-bottom: 20px;
}

.input-box { flex: 1; min-width: 180px; }

.input-box label {
  display: block;
  margin-bottom: 8px;
  font-size: 14px;
  font-weight: 700;
  color: #0b0b3f;
}

.input-box input,
.input-box select {
  width: 100%;
  padding: 12px 14px;
  border-radius: 12px;
  border: 1px solid #d8d8d8;
  font-size: 14px;
  outline: none;
  transition: 0.3s;
  background: white;
}

.input-box input:focus,
.input-box select:focus {
  border-color: #9d6a01;
  box-shadow: 0 0 10px rgba(157, 106, 1, 0.2);
}

.calculator button {
  padding: 12px 30px;
  border: none;
  border-radius: 50px;
  background: #0b0b3f;
  color: white;
  font-size: 15px;
  font-weight: 700;
  cursor: pointer;
  transition: 0.3s;
  position: relative;
  z-index: 1;
}

.calculator button:hover {
  transform: translateY(-3px);
  background: #121268;
  box-shadow: 0 8px 18px rgba(0, 0, 0, 0.15);
}

#result,
#businessResult,
#propertyResult {
  margin-top: 16px;
  padding: 14px 18px;
  border-radius: 10px;
  background: #ffffff;
  box-shadow: 0 4px 14px rgba(0,0,0,0.07);
  font-size: 15px;
  line-height: 1.7;
  color: #222;
  font-weight: 500;
  position: relative;
  z-index: 1;
}

@media (max-width: 768px) {
  .calculator-wrapper {
    grid-template-columns: 1fr;
    width: 92%;
    margin: 40px auto;
    gap: 20px;
  }

  .calculator.single {
    grid-column: 1 / -1;
    max-width: 100%;
  }

  .calculator { padding: 25px 20px; border-radius: 16px; margin: 0; }
  .calculator h2 { font-size: 22px; margin-bottom: 18px; font-weight: 900; }
  .input-box { min-width: 100%; }
  .input-box label { font-size: 14px; }
  .input-box input, .input-box select { padding: 12px 14px; font-size: 14px; border-radius: 10px; }
  .calculator button { padding: 12px 24px; font-size: 15px; }
  #result, #businessResult, #propertyResult { font-size: 14px; padding: 14px 16px; }
}

/* =========================
   SERVICES
========================= */
.services {
  padding: 90px 7%;
  background: linear-gradient(135deg, #080836, #0a0a49);
  position: relative;
  overflow: hidden;
}

.services::before {
  content: "";
  position: absolute;
  top: -20%; left: -10%;
  width: 500px; height: 500px;
  background: radial-gradient(circle, rgba(212,175,55,0.12), transparent 70%);
  animation: glowMove 10s linear infinite;
  pointer-events: none;
}

.services h2 {
  text-align: center;
  font-size: 42px;
  margin-bottom: 45px;
  color: white;
  position: relative;
  z-index: 1;
}

.cards {
  display: flex;
  flex-wrap: nowrap;
  gap: 25px;
  overflow-x: auto;
  padding-bottom: 10px;
  position: relative;
  z-index: 1;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
}

.cards::-webkit-scrollbar { height: 5px; }
.cards::-webkit-scrollbar-thumb { background: #9d6a01; border-radius: 10px; }

.card {
  flex: 0 0 220px;
  min-height: 190px;
  padding: 25px 20px;
  border-radius: 16px;
  background: rgba(255,255,255,0.08);
  backdrop-filter: blur(12px);
  border: 1px solid rgba(255,255,255,0.15);
  color: white;
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: relative;
  overflow: hidden;
  transition: 0.3s ease;
  scroll-snap-align: start;
}

.card:hover { transform: translateY(-10px); border: 1px solid #d4af37; }
.card h3 { font-size: 20px; margin-bottom: 10px; color: #d4af37; }
.card p  { font-size: 14px; line-height: 1.6; color: #f1f1f1; }

@media (max-width: 768px) {
  .services { padding: 60px 5%; }
  .services h2 { font-size: 32px; margin-bottom: 25px; }
  .card { flex: 0 0 75%; min-height: 150px; padding: 15px; }
}

@media (min-width: 992px) {
  .cards { justify-content: center; overflow-x: visible; }
}

/* =========================
   PARTNERS
========================= */
.partners-section {
  padding: 70px 7%;
  text-align: center;
  background: #f5f7fb;
}

.partners-section h2 {
  font-size: 36px;
  font-weight: 800;
  color: #0b0b3f;
  margin-bottom: 35px;
  display: inline-block;
  position: relative;
}

.partners-section h2::after {
  content: "";
  display: block;
  width: 60px; height: 4px;
  background: #9d6a01;
  border-radius: 2px;
  margin: 12px auto 0;
}

.partners-img-wrapper {
  max-width: 1000px;
  margin: 0 auto;
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.10);
  border: 1px solid rgba(11, 11, 63, 0.08);
}

.partners-img-wrapper img { width: 100%; height: auto; display: block; object-fit: cover; }

@media (max-width: 768px) {
  .partners-section { padding: 50px 5%; }
  .partners-section h2 { font-size: 24px; }
  .partners-img-wrapper { border-radius: 12px; }
}

/* =========================
   TEAM
========================= */
.team-section {
  padding: 80px 10%;
  background: linear-gradient(135deg, #160b3f, #111827);
  text-align: center;
  overflow: hidden;
}

.team-title {
  font-size: 28px;
  color: #ffffff;
  margin-bottom: 45px;
  letter-spacing: 1px;
  position: relative;
  animation: fadeDown 1s ease forwards;
}

.team-title::after {
  content: "";
  width: 80px; height: 3px;
  background: gold;
  display: block;
  margin: 10px auto 0;
  border-radius: 5px;
}

.team-container {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 30px;
}

.team-card {
  background: rgba(255, 255, 255, 0.08);
  backdrop-filter: blur(10px);
  border: 1px solid rgba(255, 255, 255, 0.15);
  padding: 28px 20px;
  border-radius: 18px;
  color: #fff;
  position: relative;
  overflow: hidden;
  opacity: 0;
  transform: translateY(40px);
  animation: fadeUp 0.8s ease forwards;
}

.team-card:nth-child(1) { animation-delay: 0.2s; }
.team-card:nth-child(2) { animation-delay: 0.4s; }
.team-card:nth-child(3) { animation-delay: 0.6s; }
.team-card:nth-child(4) { animation-delay: 0.8s; }

.team-card::before {
  content: "";
  position: absolute;
  top: -50%; left: -50%;
  width: 200%; height: 200%;
  background: radial-gradient(circle, rgba(255,215,0,0.15), transparent 60%);
  transform: rotate(0deg);
  transition: 0.5s;
}

.team-card:hover::before { transform: rotate(180deg); }
.team-card:hover { transform: translateY(-10px) scale(1.03); box-shadow: 0 15px 35px rgba(0,0,0,0.5); border-color: gold; }
.team-card h3 { font-size: 18px; margin-bottom: 8px; color: gold; }
.team-card p  { font-size: 14px; color: #e5e7eb; }
.team-card span { font-size: 12px; color: #9ca3af; display: block; margin-top: 6px; line-height: 1.4; }

@media (max-width: 600px) {
  .team-container { grid-template-columns: repeat(2, 1fr); gap: 15px; }
  .team-card { text-align: center; padding: 18px 10px; }
  .team-card h3 { font-size: 14px; }
  .team-card p  { font-size: 12px; }
  .team-card span { font-size: 11px; }
}

/* =========================
   WHY CHOOSE US
========================= */
.why-wrapper {
  width: 90%;
  margin: 90px auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 60px;
  flex-wrap: wrap;
}

.why-left { flex: 1; min-width: 320px; }
.why-left h2 { font-size: 44px; margin-bottom: 15px; color: #0b0b3f; }

.experience-text {
  font-size: 26px;
  font-weight: 700;
  color: #d4af37;
  margin-bottom: 25px;
  animation: pulseText 2s infinite;
}

.why-left p { font-size: 17px; line-height: 2; color: #444; }

.why-choose {
  flex: 1;
  min-width: 320px;
  padding: 40px;
  background: linear-gradient(135deg, #0b0b3f, #0a0a49);
  border-radius: 24px;
  position: relative;
  overflow: hidden;
  box-shadow: 0 12px 35px rgba(0, 0, 0, 0.18);
}

.why-choose::before {
  content: "";
  position: absolute;
  top: -50%; left: -50%;
  width: 200%; height: 200%;
  background: radial-gradient(circle, rgba(212, 175, 55, 0.15), transparent 70%);
  animation: glowMove 7s linear infinite;
  pointer-events: none;
}

.why-choose ul { list-style: none; position: relative; z-index: 1; }

.why-choose li {
  margin: 14px 0;
  padding: 14px 18px;
  background: rgba(255, 255, 255, 0.08);
  border-left: 3px solid #d4af37;
  border-radius: 0 12px 12px 0;
  font-size: 16px;
  color: #d4af37;
  transition: 0.3s;
}

.why-choose li:hover { transform: translateX(10px); background: rgba(255, 255, 255, 0.15); }

@media (max-width: 768px) {
  .why-wrapper { width: 92%; margin: 60px auto; gap: 30px; }
  .why-left { min-width: 100%; }
  .why-left h2 { font-size: 34px !important; }
  .experience-text { font-size: 20px; }
  .why-choose { min-width: 100%; padding: 28px 18px; }
}

/* =========================
   CLIENTS
========================= */
.clients-section {
  padding: 90px 7%;
  background: linear-gradient(135deg, #0b0b3f, #0a0a49);
  position: relative;
  overflow: hidden;
}

.clients-section h2 {
  text-align: center;
  font-size: 42px;
  margin-bottom: 45px;
  color: #d4af37;
  position: relative;
  z-index: 1;
}

.clients-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 22px;
  position: relative;
  z-index: 1;
}

.client-card {
  padding: 26px;
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.08);
  backdrop-filter: blur(14px);
  border: 1px solid rgba(255, 255, 255, 0.12);
  color: white;
  font-size: 16px;
  font-weight: 600;
  text-align: center;
  transition: 0.4s ease;
  position: relative;
  overflow: hidden;
}

.client-card::before {
  content: "";
  position: absolute;
  top: -50%; left: -50%;
  width: 200%; height: 200%;
  background: radial-gradient(circle, rgba(212, 175, 55, 0.12), transparent 65%);
  opacity: 0; transition: 0.4s;
  pointer-events: none;
}

.client-card:hover::before { opacity: 1; }
.client-card:hover { transform: translateY(-8px) scale(1.02); border: 1px solid rgba(212, 175, 55, 0.5); color: #d4af37; }

@media (max-width: 768px) {
  .clients-section { padding: 60px 5%; }
  .clients-section h2 { font-size: 36px !important; margin-bottom: 25px; }
  .clients-grid { grid-template-columns: repeat(3, 1fr); gap: 10px; }
  .client-card { padding: 12px; font-size: 12px; border-radius: 10px; }
}

/* =========================
   SERVICE AREAS
========================= */
.service-areas { padding: 70px 10%; text-align: center; }

.service-areas h2 {
  font-size: 34px;
  margin-bottom: 35px;
  color: #121149;
  letter-spacing: 1px;
  font-weight: 700;
}

.areas-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 16px;
}

.area-box {
  padding: 16px 18px;
  border-radius: 12px;
  background: transparent;
  border: 1px solid rgba(18, 17, 73, 0.2);
  color: #121149;
  font-size: 16px;
  font-weight: 600;
  transition: 0.3s ease;
}

.area-box:hover { transform: translateY(-6px); border-color: #9d6a01; color: #9d6a01; box-shadow: 0 10px 25px rgba(0, 0, 0, 0.08); }

@media (max-width: 768px) {
  .service-areas { padding: 50px 6%; }
  .service-areas h2 { font-size: 24px; margin-bottom: 22px; }
  .areas-grid { grid-template-columns: repeat(3, 1fr); gap: 10px; }
  .area-box { padding: 12px 8px; font-size: 13px; }
}

/* =========================
   BLOG
========================= */

.blog-section {
  padding: 80px 7%;
  background: #f7f9ff;
  margin-bottom: 20px;
}

.blog-header {
  text-align: center;
  margin-bottom: 35px;
}

.blog-header h2 {
  font-size: 34px;
  color: #0b0b3f;
}

.blog-header p{
  color: rgb(11, 0, 51);
  margin-top: 8px;
}

.blog-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
}

.blog-card {
  background: white;
  border-radius: 14px;
  overflow: hidden;
  cursor: pointer;
  box-shadow: 0 6px 18px rgba(0,0,0,0.08);
  transition: 0.3s;
  text-decoration: none;
  color: inherit;
}

.blog-card:hover {
  transform: translateY(-5px);
  text-decoration: none;
}

.blog-card h3 {
  font-size: 16px;
  margin: 12px 14px 6px;
}

.blog-card p{
  font-size: 13px;
  margin: 0 14px 14px;
  color: #131313;
  line-height: 1.5;
}

/* =========================
   BLOG IMAGES
========================= */

.blog-img{
  height:180px;
  background-position:center;
  background-size:cover;
}

/* DIFFERENT BLOG IMAGES */

.blog1-img{
  background-image:url("ff.jpg");
}

.blog2-img{
  background-image:url("dd2.jpg");
}

.blog3-img{
  background-image:url("DD3.jpg");
}

.blog4-img{
  background-image:url("DD4.jpg");
}

.blog5-img{
  background-image:url("DD5.jpg");
}

.blog6-img{
  background-image:url("DD6.jpg");
}

/* =========================
   MOBILE
========================= */

@media (max-width:768px){

  .blog-grid{
    grid-template-columns:1fr;
  }

}

/* =========================
   DESKTOP
========================= */

@media only screen and (min-width:769px){

  .blog-section{
    max-width:1400px;
    margin:auto;
  }

  .blog-grid{
    gap:18px;
  }

  .blog-card{
    width:90%;
    margin:auto;
  }

}
/* =========================
   FOOTER
========================= */
.footer {
  width: 100%;
  background: #0b0b3f;
  padding: 70px 7% 30px;
}

.footer-container {
  display: flex;
  justify-content: space-between;
  gap: 45px;
  flex-wrap: wrap;
}

.footer-box { flex: 1; min-width: 250px; }
.footer-box h3 { font-size: 26px; font-weight: 800; margin-bottom: 22px; color: #d4af37; }
.footer-box p  { font-size: 15px; line-height: 1.9; margin-bottom: 10px; color: #ddd; }

.footer-bottom {
  margin-top: 40px;
  padding-top: 22px;
  border-top: 1px solid rgba(255, 255, 255, 0.15);
  text-align: center;
}

.footer-bottom p { margin: 8px 0; color: #cfcfcf; font-size: 14px; }

@media (max-width: 768px) {
  .footer { padding: 50px 5% 25px; }
  .footer-container { display: grid; grid-template-columns: repeat(2, 1fr); gap: 15px; }
  .footer-box { min-width: unset; }
  .footer-box h3 { font-size: 20px; margin-bottom: 10px; }
  .footer-box p  { font-size: 13px; line-height: 1.6; }
  /* Office address center */
  .footer-box:last-child { text-align: center; grid-column: 1 / -1; }
}

/* =========================
   ANIMATIONS
========================= */
@keyframes glowMove   { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } }
@keyframes floatGlow  { 0% { transform: translate(0,0) scale(1); } 50% { transform: translate(-30px,30px) scale(1.1); } 100% { transform: translate(0,0) scale(1); } }
@keyframes pulseText  { 0% { transform: scale(1); } 50% { transform: scale(1.05); } 100% { transform: scale(1); } }
@keyframes pop        { 0% { transform: scale(1); } 100% { transform: scale(1.08); } }
@keyframes fadeUp     { to { opacity: 1; transform: translateY(0); } }
@keyframes fadeDown   { from { opacity: 0; transform: translateY(-20px); } to { opacity: 1; transform: translateY(0); } }
@keyframes slideLeft  { from { opacity: 0; transform: translateX(-60px); } to { opacity: 1; transform: translateX(0); } }

/* =========================
   RESPONSIVE BREAKPOINTS
========================= */
@media (max-width: 992px) {
  .hero h1 { font-size: 50px; }
  nav { padding: 18px 5%; }
  .services, .clients-section, .about-mini { padding-left: 5%; padding-right: 5%; }
}

@media (max-width: 480px) {
  .hero h1 { font-size: 28px; }
  .hero p  { font-size: 15px; }
  .logo img { width: 32px !important; height: 32px !important; }
  .logo h2  { font-size: 13px !important; }
  nav ul li a { font-size: 15px; }
  .experience-text { font-size: 18px; }
  .why-left h2 { font-size: 24px; }
}

@media (min-width: 1200px) {
  .hero { min-height: 80vh; }
  .hero h1 { font-size: 62px; }
  .hero p  { font-size: 20px; }
  .hero::before { width: 390px; height: 590px; }
  .hero, .services, .clients-section, .stats-premium, .partners-section, .team-section { padding-top: 75px; padding-bottom: 75px; }
  .about-mini, .service-areas { padding-top: 65px; padding-bottom: 65px; }
  .about-box { padding: 50px; }
  .about-box p { font-size: 16px; line-height: 1.8; }
  .card { flex: 0 0 210px; }
  .team-card { padding: 25px 18px; }
  .client-card { padding: 22px; }
  .why-wrapper { margin: 80px auto; gap: 45px; }
  .why-left h2 { font-size: 42px; }
  .experience-text { font-size: 24px; }
  .footer { padding: 60px 7% 25px; }
}