@import url("https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,300;0,400;0,500;0,600;1,100;1,300&display=swap");
@import url("https://fonts.googleapis.com/css?family=Quicksand:400,500,700&subset=latin-ext");
@import url('https://fonts.googleapis.com/css2?family=Bebas+Neue&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Baskervville:ital,wght@0,400..700;1,400..700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Quintessential&display=swap');


* {
    font-family: "Quintessential", serif;
    margin: 0;
    padding: 0;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    outline: none;
    border: none;
    text-decoration: none;
   
    -webkit-transition: .2s linear;
    transition: .2s linear;
}





.box {
    height: 10000px;
}
/* 
 .map-area .background-img {
    height: 75vh;
    width: 100%;
    background: url(../images/mainmap.jpg) no-repeat;
    background-color: #eee;
    background-attachment: fixed;
    background-position: center center;
    background-size: cover; 
} 

  
.map-area .background-img {
     position: relative;

}

.map-area .background-img img {
    height: 100%;
    width: 100%;
    display: block;
}

.landmark-icons img {
     width: 30px;
    height: 30px;
}

img, svg {
    vertical-align: middle;
    width: 30px;
    height: 30px;
} */

/* .main img {
    animation: shake 5s;
    animation-iteration-count: infinite;
}

@keyframes shake {
  0% { transform: translate(1px, 1px) rotate(0deg); }
  10% { transform: translate(-1px, -2px) rotate(-1deg); }
  20% { transform: translate(-3px, 0px) rotate(1deg); }
  30% { transform: translate(3px, 2px) rotate(0deg); }
  40% { transform: translate(1px, -1px) rotate(1deg); }
  50% { transform: translate(-1px, 2px) rotate(-1deg); }
  60% { transform: translate(-3px, 1px) rotate(0deg); }
  70% { transform: translate(3px, 1px) rotate(-1deg); }
  80% { transform: translate(-1px, -1px) rotate(1deg); }
  90% { transform: translate(1px, 2px) rotate(0deg); }
  100% { transform: translate(1px, -2px) rotate(-1deg); }
} */

.main img {
  animation: shake 5s;
  animation-iteration-count: infinite;
}

@keyframes shake {
0% { transform: translate(1px, 1px) rotate(0deg); }
10% { transform: translate(1px, 1px) rotate(-1deg); }
20% { transform: translate(1px, 1px) rotate(1deg); }
30% { transform: translate(-1px, -1px) rotate(0deg); }
40% { transform: translate(1px, 1px) rotate(1deg); }
50% { transform: translate(-1px, -1px) rotate(-1deg); }
60% { transform: translate(1px, 1px) rotate(0deg); }
70% { transform: translate(-1px, -1px) rotate(-1deg); }
80% { transform: translate(1px, 1px) rotate(1deg); }
90% { transform: translate(-1px, -1px) rotate(0deg); }
100% { transform: translate(1px, 1px) rotate(-1deg); }
}

.main .kandy {
    position: absolute;
    top: 350px;
    
    right: 52%;
    left: 48%;
   
}



.main .trinco {
    position: absolute;
    top: 158px;
    right: 46%;
    left: 54%;
}

.main .galle {
    position: absolute;
    top: 570px;
    right: 68%;
    left: 32%;
}

.main .colombo {
    position: absolute;
    top: 425px;
    right: 77%;
    left: 23%;
}

.main .katharagama {
    position: absolute;
    top: 510px;
    right: 40%;
    left: 60%;
}

.main .nuwaraeliya {
    position: absolute;
    top: 400px;
    right: 48%;
    left: 52%;
}

.main .anuradhapura {
    position: absolute;
    top: 197px;
    right: 61%;
    left: 39%;
}


/* .main {
    width: 1920px;
    height: 750px;
     background: url(../images/mainmap.jpg) no-repeat;
}
 */

.main {
    position: absolute;
    display:block;
    top: 80px;
    /* left: 25vw;
    right: 25vw; */
    width: 498px;
    height: 664px;
    background: url(../images/map1.jpg);
    background-position: center center;
    background-size: cover;
    border-radius: 15px;
    
}



.align {
    width: 100vw;
    height: auto;
    align-items: center;
    justify-content: center;
    display: flex;
}

.main img {
    vertical-align: middle;
    width: 30px;
    height: 30px;
}

.main .jaffna {
    position: absolute;
    top: 30px;
    right: 70%;
    left: 30%;
}



/* .align .main .jaffna:hover {
    
} */

.blur {
    width: 100vw;
    height: 750px;
    background: url(../images/mainmap2.jpg);
    
}

/* ------------------------------banner, sl map section ends ---------------------------*/









/* ----------------------------------------cards section start----------------------------- */

body {
    /* Created with https://www.css-gradient.com */
    background: #ffffff;
    /* background: -webkit-radial-gradient(top right, #23EC55, #2D51C1);
    background: -moz-radial-gradient(top right, #23EC55, #2D51C1);
    background: radial-gradient(to bottom left, #23EC55, #2D51C1); */
  }
  
  .wrapper {
    margin: 10vh;
  }
  
  .card {
    border: none;
    transition: all 500ms cubic-bezier(0.19, 1, 0.22, 1);
    overflow: hidden;
    border-radius: 20px;
    min-height: 450px;
    box-shadow: 0 0 12px 0 rgba(0, 0, 0, 0.2);
  }
  .card.card-has-bg {
    transition: all 500ms cubic-bezier(0.19, 1, 0.22, 1);
    background-size: 120%;
    background-repeat: no-repeat;
    background-position: center center;
  }
  .card.card-has-bg:before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: inherit;
    /* -webkit-filter: grayscale(1);
    -moz-filter: grayscale(100%);
    -ms-filter: grayscale(100%);
    -o-filter: grayscale(100%);
    filter: grayscale(100%); */
  }
  .card.card-has-bg:hover {
    transform: scale(0.98);
    box-shadow: 0 0 5px -2px rgba(0, 0, 0, 0.3);
    background-size: 130%;
    transition: all 500ms cubic-bezier(0.19, 1, 0.22, 1);
  }
  .card.card-has-bg:hover .card-img-overlay {
    transition: all 800ms cubic-bezier(0.19, 1, 0.22, 1);
    background: #234f6d;
    background: linear-gradient(0deg, rgba(4, 68, 114, 0) 0%, #04447200 100%);
  }
  .card .card-footer {
    background: none;
    border-top: none;
  }
  .card .card-footer .media img {
    border: solid 3px rgba(255, 255, 255, 0.3);
  }
  .card .card-meta {
    color: #26BD75;
  }
  .card .card-body {
    transition: all 500ms cubic-bezier(0.19, 1, 0.22, 1);
  }
  .card:hover {
    cursor: pointer;
    transition: all 800ms cubic-bezier(0.19, 1, 0.22, 1);
  }
  .card:hover .card-body {
    margin-top: 30px;
    transition: all 800ms cubic-bezier(0.19, 1, 0.22, 1);
  }
  .card .card-img-overlay {
    transition: all 800ms cubic-bezier(0.19, 1, 0.22, 1);
    background: #234f6d;
    background: linear-gradient(0deg, rgba(35, 79, 109, 0) 0%, #455f7100 100%);
  }
  
  
  @media (max-width: 768px) {
    .card {
      min-height: 350px;
    }
  }
  @media (max-width: 420px) {
    .card {
      min-height: 300px;
    }
  }





/* ------------------scroller to top css------------------------------------ */


.to-top {
    background: rgb(22, 21, 25);
    position: fixed;
    bottom: 16px;
    right:32px;
    width:50px;
    height:50px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size:32px;
    /* color:#1f1f1f; */
    color: #fff;
    text-decoration: none;
    opacity:0;
    pointer-events: none;
    transition: all .4s;
    cursor: pointer;
  }
  
  .to-top.active {
    bottom:32px;
    pointer-events: auto;
    opacity:1;
  }
  
  
  
  

















@media (max-width: 991px) {
    html {
      font-size: 55%;
      scroll-padding-top: 7rem;
    }
}


@media (max-width: 450px) {
    html {
      font-size: 50%;
    }
}

@media (max-width: 450px) {
  .wrapper {
    margin: 10vh 5vh 10vh 5vh;
  }

}


@media (max-width: 500px) {
    .main {
        width: 360px;
        height: 480px;
    }
    
    .blur {
        height: 630px;
    }
    .main .jaffna {
        position: absolute;
        top: 15px;
        right: 70%;
        left: 30%;
    }  
    .main .kandy {
    position: absolute;
    top: 220px;
    
    right: 52%;
    left: 48%;
   
    }
    .main .trinco {
    position: absolute;
    top: 112px;
    right: 44%;
    left: 56%;
    }

    .main .galle {
    position: absolute;
    top: 400px;
    right: 68%;
    left: 32%;
    }

    .main .colombo {
    position: absolute;
    top: 300px;
    right: 77%;
    left: 23%;
    }

    .main .katharagama {
    position: absolute;
    top: 350px;
    right: 38%;
    left: 62%;
    }

    .main .nuwaraeliya {
    position: absolute;
    top: 280px;
    right: 48%;
    left: 52%;
    }

    .main .anuradhapura {
    position: absolute;
    top: 130px;
    right: 61%;
    left: 39%;
    }
}

footer {
    background-color: #333;
    color: #fff;
    padding: 20px 15px; /* ↓ reduced padding */
    position: relative;
    width: 100%;
    animation: fadeIn 1.2s ease-in-out;
    font-size: 14px; /* ↓ slightly smaller text */
}

.footer-content {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    max-width: 1200px;
    margin: 0 auto;
}

.footer-section {
    flex: 1;
    min-width: 200px; /* ↓ slightly smaller minimum width */
    margin: 8px; /* ↓ less margin */
    animation: slideIn 0.8s ease-in-out;
}

.footer-section h3 {
    border-bottom: 1px solid #fff; /* ↓ thinner border */
    padding-bottom: 6px;           /* ↓ less padding */
    margin-bottom: 10px;
    font-size: 16px;               /* ↓ smaller heading */
}

.social-media a {
    margin: 0 8px;
    color: #fff;
    text-decoration: none;
    font-size: 1.3em; /* ↓ slightly smaller icons */
    transition: color 0.3s;
}

.social-media a:hover {
    color: #1da1f2;
}

.map-container {
    width: 100%;
    height: 150px; /* ↓ reduced height */
    margin-top: 15px;
}

.newsletter input[type="email"] {
    padding: 8px;
    width: 100%;
    margin-bottom: 8px;
    border: none;
    border-radius: 4px;
    font-size: 14px;
}

.newsletter button {
    padding: 8px 16px;
    background-color: #555;
    color: #fff;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    font-size: 14px;
    transition: background-color 0.3s;
}

.newsletter button:hover {
    background-color: #777;
}

@keyframes fadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes slideIn {
    from { transform: translateY(15px); opacity: 0; }
    to { transform: translateY(0); opacity: 1; }
}


