/* =========================
   GLOBAL
========================= */

*{
  margin:0;
  padding:0;
  box-sizing:border-box;
}

html{
  scroll-behavior:smooth;
}

body{
  font-family:'Montserrat',sans-serif;
  overflow-x:hidden;
  background:#ffffff;
  color:#111827;
}

img{
  width:100%;
  display:block;
}

section{
  overflow:hidden;
}

/* =========================
   HERO SECTION
========================= */

.hero{
  width:100%;
  min-height:100vh;

  padding:30px 7% 80px;

  background:
  radial-gradient(circle at top left,#dff6ff 0%,transparent 35%),
  radial-gradient(circle at bottom right,#d8f4ff 0%,transparent 35%),
  #ffffff;
}

/* NAVBAR */


.logo{
  font-size:34px;
  font-weight:800;
  color:#00a3da;
}

/* HERO CONTENT */

.hero-content{
  width:100%;
  max-width:1350px;
  margin:auto;

  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:70px;
}

.hero-left,
.hero-right{
  flex:1;
}

/* LEFT */

.mini-title{
  background:transparent;
  color:#00a3da;
  padding:0;
  border-radius:0;
  display:inline-block;
  margin-bottom:25px;
  font-weight:800;
  font-size:30px;
  letter-spacing:1px;
}

.hero-left h1{
  font-size:68px;
  line-height:1.08;
  font-weight:800;

  margin-bottom:24px;
}

.hero-left h1 span{
  color:#00a3da;
}

.hero-left p{
  font-size:18px;
  line-height:1.9;
  color:#6b7280;

  max-width:620px;
  margin-bottom:35px;
}

/* BUTTONS */

.hero-buttons{
  display:flex;
  gap:18px;
  flex-wrap:wrap;
}

.primary-btn,
.secondary-btn,
.donation-btn{
  text-decoration:none;
  padding:16px 34px;
  border-radius:50px;

  font-weight:700;
  transition:0.35s;
}

.primary-btn,
.donation-btn{
  background:#00a3da;
  color:#fff;
}

.secondary-btn{
  border:2px solid #00a3da;
  color:#00a3da;
}

.primary-btn:hover,
.secondary-btn:hover,
.donation-btn:hover{
  transform:translateY(-5px) scale(1.03);
}

/* =========================
   HERO IMAGE
========================= */

.image-box{
  width:100%;
  max-width:560px;
  margin:auto;

  position:relative;
}

.image-box img{
  width:100%;
  height:680px;

  object-fit:cover;

  border-radius:40px;

  transition:0.6s ease;
  transform:perspective(1000px) rotateY(-10deg);
  box-shadow:0 30px 60px rgba(0,0,0,0.18);
  animation:floatImage 4s ease-in-out infinite;
}

.image-box:hover img{
  transform:perspective(1000px) rotateY(0deg) scale(1.05);
  box-shadow:0 40px 90px rgba(0,0,0,0.25);
}

@keyframes floatImage{
  0%{transform:perspective(1000px) rotateY(-10deg) translateY(0);}
  50%{transform:perspective(1000px) rotateY(-10deg) translateY(-12px);}
  100%{transform:perspective(1000px) rotateY(-10deg) translateY(0);}
}

/* FLOATING CARDS */

.floating-card{
  position:absolute;

  background:#fff;
  padding:20px 24px;

  border-radius:22px;

  box-shadow:0 10px 30px rgba(0,0,0,0.08);

  animation:float 3s ease-in-out infinite;

  z-index:5;
}

.card1{
  top:35px;
  left:-35px;
}

.card2{
  bottom:35px;
  right:-35px;
}

.floating-card h3{
  color:#00a3da;
  font-size:34px;
  margin-bottom:5px;
}

.floating-card p{
  font-size:14px;
  color:#6b7280;
}

/* FLOAT */

@keyframes float{

  0%{
    transform:translateY(0px);
  }

  50%{
    transform:translateY(-12px);
  }

  100%{
    transform:translateY(0px);
  }
}

/* =========================
   ABOUT SECTION
========================= */

.about-section{
  width:100%;

  padding:0px 7%;

  display:flex;
  align-items:center;
  justify-content:space-between;

  gap:70px;
}

.about-image,
.about-content{
  flex:1;
}

/* IMAGE */

.about-image{
  position:relative;
}

.about-image img{
  width:100%;
  height:600px;

  object-fit:cover;

  border-radius:35px;

  transition:0.5s;

  box-shadow:0 18px 45px rgba(0,0,0,0.08);
}

.about-image:hover img{
  transform:scale(1.04) rotate(-1deg);
}

/* CONTENT */

.about-content span,
.section-title span,
.impact-content span,
.gallery-title span,
.donation-box span{
  color:#00a3da;

  font-size:14px;
  font-weight:700;
  letter-spacing:1px;

  text-transform:uppercase;

  display:block;
  margin-bottom:15px;
}

.about-content h2,
.section-title h2,
.impact-content h2,
.gallery-title h2,
.donation-box h2{
  font-size:52px;
  line-height:1.15;

  margin-bottom:20px;

  font-weight:800;
}

.about-content p,
.impact-content p,
.gallery-title p,
.donation-box p{
  color:#6b7280;
  line-height:1.9;
  font-size:16px;
}

/* ABOUT GRID */

.about-grid{
  margin-top:35px;

  display:grid;
  grid-template-columns:repeat(2,1fr);

  gap:22px;
}

.about-box{
  background:#f8fbfd;

  padding:25px;

  border-radius:24px;

  transition:0.4s;

  border:1px solid #eef2f7;
}

.about-box:hover{
  transform:translateY(-8px);

  background:#00a3da;
}

.about-box:hover h3,
.about-box:hover p{
  color:#fff;
}

.about-box h3{
  margin-bottom:10px;
  transition:0.3s;
}

.about-box p{
  font-size:14px;
  transition:0.3s;
}

/* =========================
   MISSION
========================= */

.mission-section{
  width:100%;

  padding:0px 7%;

  background:#f8fbfd;
}

.section-title{
  text-align:center;
  margin-bottom:60px;
}

.mission-cards{
  display:grid;
  grid-template-columns:repeat(3,1fr);

  gap:28px;
}

.mission-card{
  background:#fff;

  padding:40px 30px;

  border-radius:30px;

  transition:0.4s;

  position:relative;

  overflow:hidden;
}

.mission-card::before{
  content:'';

  position:absolute;

  width:100%;
  height:0;

  left:0;
  bottom:0;

  background:#00a3da;

  transition:0.4s;

  z-index:0;
}

.mission-card:hover::before{
  height:100%;
}

.mission-card *{
  position:relative;
  z-index:2;
}

.mission-card:hover h3,
.mission-card:hover p,
.mission-card:hover .icon{
  color:#fff;
}

.mission-card:hover .icon{
  background:rgba(255,255,255,0.2);
}

.icon{
  width:75px;
  height:75px;

  border-radius:50%;

  background:#dff6ff;
  color:#00a3da;

  display:flex;
  align-items:center;
  justify-content:center;

  font-weight:800;

  margin-bottom:22px;

  transition:0.3s;
}

.mission-card h3{
  margin-bottom:15px;
  transition:0.3s;
}

.mission-card p{
  color:#6b7280;
  line-height:1.8;
  transition:0.3s;
}

/* =========================
   IMPACT
========================= */

.impact-section2{
  width:100%;
  padding:0px 7%;
}

.impact-wrapper2{
  width:100%;

  display:flex;
  align-items:center;
  justify-content:space-between;

  gap:70px;
}

.impact-content2,
.impact-image2{
  flex:1;
}

.impact-image2 img{
  width:100%;
  height:620px;

  object-fit:cover;

  border-radius:35px;

  transition:0.5s;

  box-shadow:0 18px 45px rgba(0,0,0,0.08);
}

.impact-image2:hover img{
  transform:scale(1.04);
}

/* STATS */

.impact-stats2{
  display:flex;
  gap:22px;

  margin-top:35px;

  flex-wrap:wrap;
}

.impact-stats2 div{
  background:#f8fbfd;

  padding:24px 26px;

  border-radius:22px;

  min-width:160px;

  text-align:center;

  transition:0.4s;
}

.impact-stats2 div:hover{
  background:#00a3da;
  transform:translateY(-6px);
}

.impact-stats2 div:hover h3,
.impact-stats2 div:hover p{
  color:#fff;
}

.impact-stats2 h3{
  font-size:34px;
  color:#00a3da;
  margin-bottom:6px;
}

.impact-stats2 p{
  font-size:14px;
}

/* =========================
   GALLERY
========================= */

.gallery-section{
  width:100%;
  padding:10px 7%;
  background:#f8fbfd;
}

.gallery-title{
  text-align:center;
  margin-bottom:60px;
}

.gallery-grid{
  display:grid;

  grid-template-columns:repeat(4,1fr);
  grid-auto-rows:250px;

  gap:22px;
}

.gallery-item{
  position:relative;

  overflow:hidden;

  border-radius:28px;

  cursor:pointer;
}

.gallery-item img{
  width:100%;
  height:100%;

  object-fit:cover;

  transition:0.7s;
}

.gallery-item:hover img{
  transform:scale(1.12) rotate(2deg);
}

.large{
  grid-column:span 2;
  grid-row:span 2;
}

.wide{
  grid-column:span 2;
}

/* OVERLAY */

.gallery-item::before{
  content:'';

  position:absolute;
  inset:0;

  background:linear-gradient(
    to top,
    rgba(0,0,0,0.7),
    transparent
  );

  opacity:0;

  transition:0.5s;

  z-index:1;
}

.gallery-item:hover::before{
  opacity:1;
}



/* =========================
DONATION
========================= */

/* =========================
DONATION
========================= */

.sevak-donation{
  width:100%;
  background: linear-gradient(to right, #009BD4 0%, #0285C3 25%, #046FB1 50%, #074D97 75%, #083D8B 100%);
  padding:55px 4%;
  min-height:120px;
  display:flex;
  align-items:center;
}

.sevak-donation-content{
  width:100%;
  display:flex;
  justify-content:space-between;
  align-items:center;
  min-height:120px; /* Height */
  padding:0px 0;   /* Top-Bottom Padding */
}

.sevak-left{
  display:flex;
  flex-direction:column;
  gap:4px;
}

.sevak-tag{
  font-size:20px;
  font-weight:700;
  color:#fff;
}

.sevak-title{
  font-size:41px;
  margin:0;
  line-height:1.2;
  color:#fff;
}

.sevak-desc{
  font-size:15px;
  margin:0;
  color:#fff;
}

.sevak-btn{
  display:inline-block;
  padding:15px 36px;
  background:#00a3da;
  color:#fff;
  text-decoration:none;
  border-radius:6px;
  font-weight:700;
  font-size:16px;
  white-space:nowrap;
  transition:0.3s;
}

.sevak-btn:hover{
  transform:translateY(-2px);
}
/* =========================
RESPONSIVE
========================= */

@media(max-width:991px){

  .hero-section,
  .about-section{
    flex-direction:column;
    text-align:center;
  }

  .hero-left,
  .about-content{
    max-width:100%;
  }

  .hero-buttons{
    justify-content:center;
  }

  .hero-left h1{
    font-size:46px;
  }

  .about-content h2,
  .section-heading h2,
  .donation-content h2{
    font-size:34px;
  }

  .impact-grid{
    grid-template-columns:repeat(2,1fr);
  }

  .gallery-grid{
    grid-template-columns:1fr;
  }

  .gallery-item.big{
    height:240px;
  }

  .feature-boxes{
    flex-direction:column;
  }

  .floating-card{
    min-width:130px;
  }
}


@media(max-width:600px){

  .hero-left h1{
    font-size:38px;
  }

  .hero-buttons{
    flex-direction:column;
  }

  .impact-grid{
    grid-template-columns:1fr;
  }

  .hero-right{
    min-height:auto;
    padding-bottom:40px;
  }

  .main-image-card{
    max-width:100%;
  }

  .floating-card{
    position:relative;

    top:auto;
    left:auto;
    right:auto;
    bottom:auto;

    margin-top:15px;

    width:100%;
    max-width:220px;
  }
}

/* TESTIMONIALS */

* TESTIMONIALS */

/* SECTION HEADER  font mate*/
.section-header{
    text-align:center;
}


.section-header span {
    color: #00a3da;
    font-weight: 700;
    letter-spacing: 2px;
    display:block;
    text-align:center;
}

.section-header h2 {
    font-size: 42px;
    margin: 18px 0;
    text-align: center;
}

.section-header p{
  color:#6b7d8f;
}

.light h2,
.light span{
  color:#fff;
}
/* SECTION HEADER  font mate*/

.testimonial-grid{
  width:100%;
  max-width:1200px;

  margin:auto;

  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(280px,1fr));

  gap:25px;

  align-items:stretch;
}

.testimonial-card{
  width:100%;

  background:#fff;
  padding:30px;

  border-radius:28px;

  box-shadow:0 20px 40px rgba(0,0,0,0.07);

  transition:0.4s;

  overflow:hidden;
}

.testimonial-card:hover{
  transform:translateY(-10px);
}

.testimonial-card p{
  line-height:2;
  color:#6c7d8e;
  margin-bottom:25px;
}

.testimonial-card h4{
  color:#00a3da;
}

/* TEXT ALWAYS ABOVE BLUE LAYER */
.testimonial-card h4,
.testimonial-card p{
  position:relative;
  z-index:3;
  transition:0.4s ease;
}

/* WHITE TEXT ON HOVER */
.testimonial-card:hover h4,
.testimonial-card:hover p{
  color:#fff !important;
}
/* ADD ONLY - BLUE FILL HOVER EFFECT */
.testimonial-card{
  position:relative;
  overflow:hidden;
}

/* BLUE BACKGROUND FILL */
.testimonial-card::before{
  content:"";
  position:absolute;
  left:0;
  bottom:0;
  width:100%;
  height:0%;
  background:#00a3da;
  transition:0.4s ease;
  z-index:1;
  border-radius:28px;
}

/* ON HOVER FILL UP */
.testimonial-card:hover::before{
  height:100%;
}

/* KEEP CONTENT ABOVE BLUE LAYER */
.testimonial-card > *{
  position:relative;
  z-index:2;
}

.tax-box{
  width:100%;
  height:70px;

  display:flex;
  justify-content:center;
  align-items:center;
  text-align:center;

  background:linear-gradient(135deg,#00a3da,#315270);
  color:#fff;

  border-radius:0px;
  margin:20px 0;
  padding:10px;

  box-shadow:0 15px 40px rgba(0,0,0,0.15);

  position:relative;
  overflow:hidden;
  transition:0.4s ease;
}
/* text box*/
/* Glow animation effect */
.tax-box::before{
  content:"";
  position:absolute;
  width:200%;
  height:200%;
  background:radial-gradient(circle,rgba(255,255,255,0.15),transparent);
  top:-50%;
  left:-50%;
  animation:shine 6s linear infinite;
}

@keyframes shine{
  0%{transform:rotate(0deg);}
  100%{transform:rotate(360deg);}
}

.tax-box p{
  font-size:16px;
  line-height:1.6;
  position:relative;
  z-index:2;
}

/* Hover effect */
.tax-box:hover{
  transform:translateY(-5px) scale(1.01);
  box-shadow:0 25px 60px rgba(0,163,218,0.35);
}

/* ===============================
   PAW CARE CENTER SECTION
================================= */

.pawzen-main-wrap{
  width:100%;
  padding:90px 7%;
  background:#ffffff;
  overflow:hidden;
}

.pawzen-content-box{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:60px;
  flex-wrap:wrap;
}

/* LEFT */

.pawzen-left-zone{
  flex:1;
  min-width:320px;
}

.pawzen-main-image{
  width:100%;
  height:420px;
  border-radius:28px;
  overflow:hidden;
  box-shadow:0 15px 40px rgba(0,0,0,0.08);
}

.pawzen-main-image img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

.pawzen-gallery-row{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:15px;
  margin-top:18px;
}

.pawzen-gallery-row img{
  width:100%;
  height:120px;
  object-fit:cover;
  border-radius:18px;
  transition:0.4s;
  cursor:pointer;
}

.pawzen-gallery-row img:hover{
  transform:translateY(-5px);
}

/* RIGHT */

.pawzen-right-zone{
  flex:1;
  min-width:320px;
}

.pawzen-mini-title{
  display:inline-block;
  padding:10px 18px;
  background:#e8f0ff;
  color:#00a3da;
  border-radius:50px;
  font-size:14px;
  font-weight:600;
  margin-bottom:20px;
}

.pawzen-right-zone h2{
  font-size:56px;
  line-height:1.1;
  color:#00a3da;
  margin-bottom:25px;
  font-weight:800;
}

.pawzen-right-zone p{
  font-size:17px;
  line-height:1.9;
  color:#555;
  margin-bottom:18px;
}

.pawzen-feature-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
  margin-top:35px;
}

.pawzen-feature-card{
  background:#ffffff;
  border:1px solid #dce6ff;
  border-radius:22px;
  padding:25px 20px;
  transition:0.4s;
  box-shadow:0 10px 25px rgba(0,58,188,0.06);
}

.pawzen-feature-card:hover{
  transform:translateY(-6px);
  background:#00a3da;
}

.pawzen-feature-card h3{
  color:#00a3da;
  font-size:20px;
  margin-bottom:10px;
  transition:0.4s;
}

.pawzen-feature-card span{
  color:#666;
  font-size:14px;
  transition:0.4s;
}

.pawzen-feature-card:hover h3,
.pawzen-feature-card:hover span{
  color:#fff;
}

/* RESPONSIVE */

@media(max-width:991px){

  .pawzen-content-box{
    flex-direction:column;
  }

  .pawzen-right-zone h2{
    font-size:42px;
  }

  .pawzen-feature-grid{
    grid-template-columns:1fr;
  }

}

@media(max-width:600px){

  .pawzen-main-wrap{
    padding:70px 5%;
  }

  .pawzen-main-image{
    height:300px;
  }

  .pawzen-gallery-row{
    grid-template-columns:1fr 1fr 1fr;
  }

  .pawzen-gallery-row img{
    height:85px;
  }

  .pawzen-right-zone h2{
    font-size:34px;
  }

  .pawzen-right-zone p{
    font-size:15px;
  }

}

