* {margin:0; padding:0; box-sizing:border-box;}
  body {
    font-family: 'Poppins', sans-serif; 
    scroll-behavior: smooth; 
    line-height:1.6;
    font-size: calc(14px + 0.2vw);
    background-color: #1e2847;
  }
  section{padding:80px 20px;text-align:center;}

--------------------------------------------------------------*/
.header {
  --background-color: #3d4d6a;
  --heading-color: #ffffff;
  color: var(--default-color);
  background-color: var(--background-color);
  padding: 15px 0;
  transition: all 0.5s;
  z-index: 997;
}

.header .logo {
  line-height: 1;
}

.header .logo img {
  max-height: 36px;
  margin-right: 8px;
}

.header .logo h1 {
  font-size: 30px;
  margin: 0;
  font-weight: 500;
  color: var(--heading-color);
  letter-spacing: 2px;
  text-transform: uppercase;
}

.header .btn-getstarted,
.header .btn-getstarted:focus {
  color: var(--contrast-color);
  background: var(--accent-color);
  font-size: 14px;
  padding: 8px 25px;
  margin: 0 0 0 30px;
  border-radius: 50px;
  transition: 0.3s;
}

.header .btn-getstarted:hover,
.header .btn-getstarted:focus:hover {
  color: var(--contrast-color);
  background: color-mix(in srgb, var(--accent-color), transparent 15%);
}

@media (max-width: 1200px) {
  .header .logo {
    order: 1;
  }

  .header .btn-getstarted {
    order: 2;
    margin: 0 15px 0 0;
    padding: 6px 15px;
  }

  .header .navmenu {
    order: 3;
  }
}

/* Index Page Header
------------------------------*/
.index-page .header {
  --background-color: rgba(255, 255, 255, 0);
  --heading-color: #ffffff;
  --nav-color: #ffffff;
}

/* Index Page Header on Scroll
------------------------------*/
.index-page.scrolled .header {
  --background-color: rgba(40, 58, 90, 0.9);
}


  .hero{
    height:100vh;
    position:relative;
       display:flex;
        flex-direction:column;
         justify-content:center;
          align-items:center;
           color:white;
            text-align:center;
        }
  .hero::after{content:"";
     position:absolute; 
     top:0; left:0; 
     right:0;
      bottom:0;
       background:rgba(0,0,0,0.5);
    }
  .hero-content{
    position:relative;
     z-index:1;
    }
  .hero h1{
    font-size:2.4em;
     margin-bottom:20px;
    }
  .hero p{
    font-size:1.3em;
    margin: 20px 0;
    opacity: 0;
    transform: translateY(30px);
    animation: fadeUp 1s forwards 1s;
}
  .hero a{
    margin-top:20px;
     padding:4px 30px;
      background:skyblue;
       color:black; 
       text-decoration:none; 
       border-radius:30px; 
       font-weight:bold; 
       font-size:1.1em; 
       transition:transform 0.3s;
        display:inline-block;
    }
  .hero a:hover{
    transform:scale(1.1);
}
  .hero {
    position: relative;
    height: 100vh;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    color: white;
    overflow: hidden;
  }
  
  .hero-video {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transform: translate(-50%, -50%);
    z-index: 0;
  }
  
  .hero-content {
    position: relative;
    z-index: 1;
  }
  .section-title{font-size:2.2em; margin-bottom:40px; color:#ffffff;}
  .p{
    font-size:20spx; margin-bottom:40px;color: #000000;background-color: lightgrey;
  }
  .cards{
    display:grid; 
    grid-template-columns: repeat(4, 1fr);
    grid-gap: 20px;
    margin: 10px auto;
    justify-content:center; 
    gap:5px; 
    
  }

  .image-section{

    width: 80%;
    height: 30%;

  }

    .galleryimgs{

    height: 18vw;
    width: 18vw;

  }


  /* Mobile Navigation */
  @media (max-width: 1199px) {
    .mobile-nav-toggle {
      color: var(--nav-color);
      font-size: 28px;
      line-height: 0;
      margin-right: 10px;
  z-index: 9999;     /* Make sure it's on top */     cursor: pointer;
      transition: color 0.3s;
      z-index: 9999;
      
    }
  
    .navmenu {
      padding: 0;
      z-index: 999700;
    }
  
    .navmenu ul {
      display: none;
      list-style: none;
      position: absolute;
  z-index: 9999;     /* Make sure it's on top */     inset: 60px 0px 20px 9px;
      padding: 10px 0;
      max-width: 30%;
      margin: 0;
      height: fit-content;
      border-radius: 6px;
      background-color: rgb(0, 140, 255);
      overflow-y: auto;
      transition: 0.3s;
      z-index: 9998;
      box-shadow: 0px 0px 30px rgba(0, 0, 0, 0.1);
    }
  
    .navmenu a,
    .navmenu a:focus {
      color: whitesmoke;
      padding: 10px 20px;
      font-family: var(--nav-font);
      font-size: 17px;
      font-weight: 500;
      display: flex;
      align-items: center;
      justify-content: space-between;
      white-space: nowrap;
      transition: 0.3s;
    }
  
    .navmenu a i,
    .navmenu a:focus i {
      font-size: 12px;
      line-height: 0;
      margin-left: 5px;
      width: 30px;
      height: 30px;
      display: flex;
      align-items: center;
      justify-content: center;
      border-radius: 50%;
      transition: 0.3s;
      background-color: color-mix(in srgb, var(--accent-color), transparent 90%);
    }
  
    .navmenu a i:hover,
    .navmenu a:focus i:hover {
      background-color:rgb(139, 11, 11);
      color: white;
    }
  
    .navmenu a:hover,
    .navmenu .active,
    .navmenu .active:focus {
        background-color:rgb(247, 236, 236);
        max-width: 90%;
        border-radius: 20px;
      color: rgb(175, 0, 0);
    }
    .navmenu .active i,
    .navmenu .active:focus i {
      background-color: var(--accent-color);
      color: var(--contrast-color);
      transform: rotate(180deg);
    }
  
    .navmenu .dropdown ul {
      position: static;
      display: none;
      z-index: 99;
      padding: 10px 0;
      margin: 10px 20px;
      background-color: var(--nav-dropdown-background-color);
      border: 1px solid color-mix(in srgb, var(--default-color), transparent 90%);
      box-shadow: none;
      transition: all 0.5s ease-in-out;
    }
  
    .navmenu .dropdown ul ul {
      background-color: rgba(33, 37, 41, 0.1);
    }
   z-index: 9999;     /* Make sure it's on top */
    .navmenu .dropdown>.dropdown-active {
      display: block;
      background-color: rgba(33, 37, 41, 0.03);
    }
  
    .mobile-nav-active {
      overflow: hidden;
    }
  
    .mobile-nav-active .mobile-nav-toggle {
      color: #fff;
      position: absolute;
      font-size: 32px;
      top: 15px;
      right: 15px;
      margin-right: 0;
      z-index: 9999;
    }
  
    .mobile-nav-active .navmenu {
      position: fixed;
      overflow: hidden;
      inset: 0;
      background: transparent;
      backdrop-filter: blur(3px);
      transition: 0.3s;
    }
  
    .mobile-nav-active .navmenu>ul {
      display: block;
    }
  }

  @media screen and (max-width: 900px) {
    .cards{
      grid-template-columns: repeat(2, 1fr);
      max-width: 80;
      grid-gap: 0px;
      gap:30px; 
      pointer-events: none;
      
    }
    .card{
      padding:19px; 
      max-width:150px;
      pointer-events: none;
    }
  }

  .card{background:#fff; padding:25px; width:290px; border-radius:15px; box-shadow:0 4px 12px rgba(17, 51, 174, 0.988); transition: transform 0.3s, box-shadow 0.3s;}
  .card:hover{transform:translateY(-10px); box-shadow:0 8px 20px rgb(255, 234, 2);}
  .card i{font-size:2.5em; color:#f3f016; margin-bottom:15px;}

 .wrapper h2{
  margin: 10px 0;
  color: rgb(255, 255, 255);
  font-size: 2.2rem;
 }

  form{
    max-width:350px; 
    margin-top: -2px;
    margin:auto; 
    border-radius: 10px;
    background-color: #404035;
  }
  form input, form textarea{
    width:90%; 
    padding:12px; 
    margin-bottom:15px; 
    border:1px solid #ccc; 
    border-radius:8px; 
    font-size:1em;
  }
  form button{
    width:100%; 
    padding:14px; 
    background:skyblue; 
    color:white; 
    border:none; 
    border-radius:8px; 
    font-size:1.1em; 
    font-weight:bold; 
    cursor:pointer; 
    transition: background 0.3s
    ;
  }
  form button:hover{background:skyblue;}

  footer{background:#695151; color:#ccc; padding:20px; text-align:center; font-size:0.9em;}
  footer a{color:#ffcc00; text-decoration:none;}

  /* Fade-in animation */
  .fade-in{opacity:0; transform:translateY(20px); transition:opacity 1s ease-out, transform 1s ease-out;}
  .fade-in.visible{opacity:1; transform:translateY(0);}

  /* Floating emergency button */
  .emergency-btn{position:fixed; bottom:30px; right:30px; background: skyblue; color:white; border:none; padding:18px 22px; border-radius:50%; font-size:1.5em; z-index:999; cursor:pointer; box-shadow:0 4px 12px rgba(0,0,0,0.3); transition: transform 0.3s;}
  .emergency-btn:hover{transform:scale(1.2);}

  .services-section {
    background-color: #22274a;
    color: white;
  }

  

  .services-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 10px;
    max-width: 1100px;
    margin: auto;
  }

  .service-card {
    background: rgba(0, 0, 0, 0.6);
    padding: 10px;
    border-radius: 12px;
    text-align: center;
    transition: transform 0.3s ease, background 0.3s ease;
  }

  .service-card img {
    width: 120px;
    height: 120px;
    object-fit: cover;
    border-radius: 10px;
    margin-bottom: 15px;
    border: 3px solid white;
  }

  .service-card:hover {
    transform: translateY(-5px);
    background: rgba(0, 0, 0, 0.8);
  }

  .service-card h3 {
    margin: 10px 0;
    color: #e5b701;
    font-size: 1.2rem;
  }

  .service-card p {
    font-size: 0.95rem;
  }

  /* Force 2 rows x 3 columns on phones */
  @media (max-width: 768px) {
    .services-grid {
      grid-template-columns: repeat(2, 1fr);
      padding :0;
    }
    .service-card{
             max-width: 169px;
    }
    .service-card img {
      width: 140px;
    height: 150px;
    }

    .cards{
      pointer-events: none;
    }
    
   
#buttontxt{

      font-size: 5vw;   }

    #button{

      width: fit-content;   }
  }

  @media (max-width: 500px) {
    .services-grid {
      grid-template-columns: repeat(2, 1fr);
    }
    .cards{
      pointer-events: none;
    }
   
    
#buttontxt{

      font-size: 5vw;   }

    #button{

      width: fit-content;   }
  }
  /* Footer */
footer {
    background: black;
    color: white;
    text-align: center;
    padding: 30px 15px;
    margin-top: 50px;
  }
  
  .footer-container p {
    margin: 8px 0;
    font-size: 0.95rem;
  }
  
  .footer-container a {
    color: #0abfbc;
    text-decoration: none;
    font-weight: 600;
  }
  
  .footer-container a:hover {
    text-decoration: underline;
  }
  
  .socials {
    margin-top: 12px;
  }
  
  .socials a {
    margin: 0 10px;
    color: white;
    font-size: 1.2rem;
    transition: color 0.3s ease;
  }
  
  .socials a:hover {
    color: #0abfbc;
  }
  .about{
    margin: 0px;
    padding: 0px;
    width: 100%;
    height: 70%;
  }
  .about .about-title{
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    text-transform: uppercase;
    font-size: 14px;
    color: #222;
    letter-spacing: 1.5px;
    padding: 10px 10px;
  }
  .about .about-title h1::after{
    content: "";
    height: 6px;
    color: #FFf;
    width: 180px;
    background-color: skyblue;
    border-radius: 6px;
    position: relative;
    display: block;
    margin: auto;
  }

  .content{
    width: 100%;
    backdrop-filter: blur(3px);
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 40px;
    margin: 20px auto;
  }
  .content .article{
    box-shadow: 0px 0px 2px 0px rgba(0, 0, 0, 0.2);
    border-radius: 29px;
    padding: 25px 25px;
    height: auto;
  }
  .content .article h2{
    color: skyblue;
    font-size: 20px;
    line-height: 1;
    letter-spacing: 1px;
  }

   .content .article h4{
    color: skyblue;
    font-size: 8px;
    line-height: 1;
    letter-spacing: 1px;
  }

  .content .article h3{
    color: skyblue;
    font-size: 13px;
    line-height: 1;
    letter-spacing: 1px;
  }
  .content .article p{
    margin-top: 30px;
    font-size: 19px;
    padding: -2px;
    font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
    line-height: 1;
    color: #ffffff;
  }
  .content .article a i{
    font-size: 22px;
    text-decoration: none;
    display: inline-block;
    padding: 12px 35px;
    background-color: #7b6f6f;
    border-radius: 25px;
    color: #01e509;
    border: 1px solid #7b6f6f;
  }
  .content .article a i:hover{
    background-color: #fff;
    color: black;
  }


  /* Mobile Navigation */
  @media (max-width: 1199px) {
    .mobile-nav-toggle {
      color: var(--nav-color);
      font-size: 28px;
      line-height: 0;
      margin-right: 10px;
  z-index: 9999;     /* Make sure it's on top */     cursor: pointer;
      transition: color 0.3s;
      z-index: 9999;
      
    }
  
    .navmenu {
      padding: 0;
      z-index: 999700;
    }
  
    .navmenu ul {
      display: none;
      list-style: none;
      position: absolute;
  z-index: 9999;     /* Make sure it's on top */     inset: 60px 0px 20px 9px;
      padding: 10px 0;
      max-width: 30%;
      margin: 0;
      height: fit-content;
      border-radius: 6px;
      background-color: rgb(0, 140, 255);
      overflow-y: auto;
      transition: 0.3s;
      z-index: 9998;
      box-shadow: 0px 0px 30px rgba(0, 0, 0, 0.1);
    }
  
    .navmenu a,
    .navmenu a:focus {
      color: whitesmoke;
      padding: 10px 20px;
      font-family: var(--nav-font);
      font-size: 17px;
      font-weight: 500;
      display: flex;
      align-items: center;
      justify-content: space-between;
      white-space: nowrap;
      transition: 0.3s;
    }
  
    .navmenu a i,
    .navmenu a:focus i {
      font-size: 12px;
      line-height: 0;
      margin-left: 5px;
      width: 30px;
      height: 30px;
      display: flex;
      align-items: center;
      justify-content: center;
      border-radius: 50%;
      transition: 0.3s;
      background-color: color-mix(in srgb, var(--accent-color), transparent 90%);
    }
  
    .navmenu a i:hover,
    .navmenu a:focus i:hover {
      background-color:rgb(139, 11, 11);
      color: white;
    }
  
    .navmenu a:hover,
    .navmenu .active,
    .navmenu .active:focus {
        background-color:rgb(247, 236, 236);
        max-width: 90%;
        border-radius: 20px;
      color: rgb(175, 0, 0);
    }
    .navmenu .active i,
    .navmenu .active:focus i {
      background-color: var(--accent-color);
      color: var(--contrast-color);
      transform: rotate(180deg);
    }
  
    .navmenu .dropdown ul {
      position: static;
      display: none;
      z-index: 99;
      padding: 10px 0;
      margin: 10px 20px;
      background-color: var(--nav-dropdown-background-color);
      border: 1px solid color-mix(in srgb, var(--default-color), transparent 90%);
      box-shadow: none;
      transition: all 0.5s ease-in-out;
    }
  
    .navmenu .dropdown ul ul {
      background-color: rgba(33, 37, 41, 0.1);
    }
  
    .navmenu .dropdown>.dropdown-active {
      display: block;
      background-color: rgba(33, 37, 41, 0.03);
    }
  
    .mobile-nav-active {
      overflow: hidden;
    }
  
    .mobile-nav-active .mobile-nav-toggle {
      color: #fff;
      position: absolute;
      font-size: 32px;
      top: 15px;
      right: 15px;
      margin-right: 0;
      z-index: 9999;
    }
  
    .mobile-nav-active .navmenu {
      position: fixed;
      overflow: hidden;
      inset: 0;
      background: transparent;
      backdrop-filter: blur(3px);
      transition: 0.3s;
    }
  
    .mobile-nav-active .navmenu>ul {
      display: block;
    }
  }



  @media screen and (max-width: 900px) {
 .content{

  flex-direction: column;
}
    .article{
      text-align: center;
    }
     
  .galleryimgs{

    height: 29vw;

  }

  .scroller__inner{

       height: 28vw;
    width: 34 vw;


  }
  }
  .gallery {
    display: grid;
    grid-template-columns: repeat(2,  1fr);
    gap: 15px;
    padding: 20px;
    max-width: 1200px;
    margin: auto;
  }

  .gallery-item {
    position: relative;
    overflow: hidden;
    cursor: pointer;
    border-radius: 10px;
    box-shadow: 0 4px 10px rgba(0,0,0,0.2);
  }

  .gallery-item img {
    width: 500px;
    height: 250px;
    object-fit: cover;
    transition: transform 0.3s ease;
    display: block;
  }

  .gallery-item:hover img {
    transform: scale(1.1);
  }

  .overlay  h3{
    position: absolute;
    bottom: 30px;
    top: 40%;
    color: #fff;
    width: 100%;
    text-align: center;
    padding: 10px;
  
    transition: opacity 0.3s ease;
  }

  .gallery-item:hover .overlay {
    opacity: 1;
  }

  /* Modal */
  .modal {
    display: none;
    position: fixed;
    z-index: 1000;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.8);
    justify-content: center;
    align-items: center;
  }

  .modal img {
    max-width: 90%;
    max-height: 80%;
    border-radius: 10px;
  }

  .modal:target {
    display: flex;
  }

  .close {
    position: absolute;
    top: 20px;
    right: 30px;
    color: #fff;
    font-size: 30px;
    text-decoration: none;
  }

/*--------------------------------------------------------------
# Team Section
--------------------------------------------------------------*/
.gallery .overlay {
  position: absolute;
  bottom: 0;
  background: rgba(0, 0, 0, 0.6);
  color: #fff;
  width: 100%;
  top: 0;
  text-align: center;
  padding: 10px;
  opacity: 0;
  transition: opacity 0.3s ease;
}
.about1 .gallery .gallery-item{
  height: 300px;
}
.about1 .gallery .gallery-item img{
  width: 100%;
  height: 298px;
}
.gallery .gallery-item{
  border-radius: 10%;
}
.gallery .overlay p{
  margin-top: 30px;
  margin-bottom: 0;
  font-size: 14px;
}
.gallery .overlay .social i {
  color: yellow;
  font-size: 28px;
}
.gallery .overlay h4 {
  font-weight: 700;
  margin-top: 50px;
  margin-bottom: 6px;
  font-size: 28px;
}
.gallery .overlay .social i:hover{
  color: #01e509;
}
/*hide bout-image on small screens*/
@media (max-width: 500px){
  .image-section{
  display: block;
}
  .about-title{
    display: block;
  
}

.content{

  flex-direction: column;
  flex-wrap: nowrap;
}

        .galleryimgs{

    height: 25vw;
    width: 30 vw;

  }

.galleryimgs{

    height: 29vw;

  }
}

@media only screen and(min-width: 768px) {
  .about-title{
    display: block;
  }
  .image-section{
    display: block;
  }

  .content{

  flex-direction: column;
}

  .galleryimgs{

    height: 25vw;
    width: 30 vw;

  }

.galleryimgs{

    height: 29vw;

  }
}











/*scrolling of images*/


.scroller {
  max-width: 100vw;
}

.scroller__inner {
  padding-block: 1rem;
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
}

.scroller[data-animated="true"] {
  overflow: hidden;
  -webkit-mask: linear-gradient(
    90deg,
    transparent,
    white 20%,
    white 80%,
    transparent
  );
  mask: linear-gradient(90deg, transparent, white 20%, white 80%, transparent);
}


.scroller[data-animated="true"] .scroller__inner {
  width: max-content;
  flex-wrap: nowrap;
  animation: scroll var(--_animation-duration, 70s)
    var(--_animation-direction, forwards) linear infinite;
}

.scroller[data-direction="right"] {
  --_animation-direction: reverse;
}

.scroller[data-direction="left"] {
  --_animation-direction: forwards;
}

.scroller[data-speed="fast"] {
  --_animation-duration: 20s;
}

.scroller[data-speed="slow"] {
  --_animation-duration: 100s;
}

@keyframes scroll {
  to {
    transform: translate(calc(-50% - 0.5rem));
  }
}


  .scroller:hover{

      -webkit-animation-play-state: paused;
      -moz-animation-play-state: paused;
      -o-animation-play-state: paused;
      animation-play-state: paused;
  }