/*basic css starts*/
body {
	margin: 0;
	padding: 0;
	width: 100%;
	font-family: 'Work Sans', sans-serif;
	font-size: 100%;
	color: #000;
}
html {
  scroll-behavior: smooth;
}
*,*:focus,*:hover{
    outline:none;
}
a {
	color: #000; 
	text-decoration: none;
}
a:hover {
	color: #7bbf2b; 
	text-decoration: none;
}
a.anchor {
    display: block;
    position: relative;
    top: -90px;
    visibility: hidden;
}
article, aside, figcaption, figure, footer, header, main, nav, section, p, h1, h2, h3, h4, h5, h6, ul {
	margin: 0;
	padding: 0;
}
a img {
	border: none;
}
*, ::after, ::before {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
.clear {
	clear: both;
}
.responsive {
	width: 100%;
	height: auto;
	max-width: 100%;
	max-height: none;
	margin: 0;
}
.center {text-align: center;}
.right{text-align: right;}
.main-wrapper {
	width: 89%;
	margin: 0 auto;
	padding: 0px;
}
footer {width: 100%; overflow: auto; padding:0;}

.bounce-eff{-webkit-transform: perspective(1px) translateZ(0);
transform: perspective(1px) translateZ(0); transition-property: transform; transition-duration: 0.3s;}
.bounce-eff:hover{-webkit-transform: translateY(-5px);
transform: translateY(-5px);}
article {margin-bottom: 7vw;}
/*basic css ends*/

header {
  width: 100%;
  display: block;
  padding: 0; margin: 0 0 8.5vw 0;
}
aside {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%; /*background-color: #EEE;*/
  background-color: #fff;
  box-sizing: border-box;
  padding: 0px;
  transition: all .25s ease-in-out;
  z-index: 2;}
aside.scroll {
  background-color: #fff;
  z-index: 9;
  position: fixed;
  top: 0vw;
  left: 0;
  box-shadow: rgb(33 35 38 / 20%) 0px 10px 10px -10px;
  transition: all .25s ease-in-out;
  background: #fff;
  height: auto;
}
.logo-menu {
  width: 100%;
  display: block;
  padding: 0.5vw 0;
  vertical-align: top;
  font-size: 0;
  transition: all .25s ease-in-out;
}
.logo-menu-left {
  width: 10%; margin: 0 5% 0 0;
  padding: 0;
  display: inline-block;
  vertical-align: middle;
  transition: all .25s ease-in-out;
}
.logo-menu-right {
  width: 85%; display: inline-block;
  vertical-align: middle;
  text-align: right;
  transition: all .25s ease-in-out;
}
aside.scroll .logo-menu {
 padding: 0.4vw 0;
  transition: all .25s ease-in-out;
}
aside.scroll .logo-menu-left {
  width: 8%; margin: 0 7% 0 0;
  transition: all .25s ease-in-out;
}
aside.scroll .logo-menu-right {
  width: 85%; transition: all .25s ease-in-out;
}
.headers{width:100%; display:block; position:relative; margin: 7vw 0 0 0; padding:0;}

.headers::after{content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    box-shadow: inset 0 0 8px #cecece; pointer-events: none; 
    z-index: 1;}

.headers figure{display:block;}
.headers figcaption{font-family: "Playfair Display", serif; font-size:4vw; line-height:4.5vw; position:absolute; top:4.5vw; left:5.1vw; font-weight:700; width: 37%; color: #1a5cb5;}
.headers figcaption p{font-family: 'Work Sans', sans-serif; display: block; margin: 1.5vw 0 2vw 0; font-size: 1.1vw; font-weight: 500; line-height: 1.9vw; color: #000;}

.h-btn{font-family: 'Work Sans', sans-serif; font-size: 1.3vw; line-height: 2vw; font-weight: 600; width: auto; display: inline-block; vertical-align: middle; background: #90b723; text-align: center; border-radius: 0.3vw; transition: all .25s ease-in-out;}
.h-btn:hover{background: #1a5cb5; transition: all .25s ease-in-out;}
.h-btn a{padding: 1.1vw 2vw; color: #fff; display: block;}
.h-btn i{margin: 0 0 0 0.5vw;}

.phead-01{font-family: "Playfair Display", serif; font-size: 3.1vw; font-weight: 400; margin: 0 0 2vw 0;}

.block-area-01{width: 100%; font-size: 0; display: block; margin: 3vw 0 0 0;}
.block-area-01 li{list-style-type: none; width: 32%; display: inline-block; vertical-align: top; margin: 0 2% 0 0;}
.block-area-01 li:last-child{margin: 0;}

.card {
    position: relative;
    width: 100%; 
    height: auto;
    border-radius: 0.5vw;
    overflow: hidden;
}
.card img {
    width: 100%;
    height: 100%;
    object-fit: cover; transition: transform 0.6s ease;
}
.card:hover img {
    transform: scale(1.1);
}
.card-overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 80%;
    background: linear-gradient(to top, rgba(0,0,0,0.9) 10%, rgba(0,0,0,0.4) 40%, transparent 100%);
    display: flex;
    align-items: flex-end;
    padding: 2vw 2vw 1vw 2vw;
    box-sizing: border-box;
}
.card-content {
    color: white;
    transition: transform 0.4s ease; 
    transform: translateY(40px);
}
.card-content h2 {
    margin: 0;
    font-size: 1.5vw;
    font-weight: 600;
}
.detail-text {
    margin-top: 1vw;
    font-size: 1.1vw; line-height: 1.5vw;
    opacity: 0;
    transition: opacity 0.4s ease;
}
.card:hover .card-content {
    transform: translateY(0);
}
.card:hover .detail-text {
    opacity: 1;
}
.c-margin{margin: 0 0 2vw 0;}


.info-card {
    width: 100%;
    background: #ffffff;
    border-radius: 0.5vw;
    overflow: hidden;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1); 
    transition: transform 0.3s ease;
}
.info-card:hover {
    transform: translateY(-5px);
}
.image-box {
    width: 100%;
    height: auto;
    overflow: hidden;
}
.image-box img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.text-content {
    padding: 2vw;
}
.text-content h2 {
    margin: 0 0 1vw 0;
    font-size: 1.5vw;
    font-weight: 600;
}
.text-content p {
    margin: 0;
    font-size: 1.1vw; line-height: 1.5vw;
}

.explore-bg{background-image: url("../images/explore-bg.webp"); background-repeat: no-repeat;
    background-size: 100% 100%;
    padding: 6vw 0 8vw 0; box-shadow: inset 0 0 8px #cecece;
    margin: 9vw 0 7vw 0 !important;}
.block02{width: 100%; font-size: 0; margin: 3vw 0 0 0;}
.block02-box{width:23%; height: 14vw; display:inline-block; vertical-align:top; margin: 0 1%; padding: 2vw; text-align: center; background: #1a5cb5; box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px; position: relative; border-radius: 0.5vw; transition: all .25s ease-in-out;}
.block02-box:hover{background: #90b723; color: #fff; transition: all .25s ease-in-out;}
.cloud-img{width: 47%; height: auto; display: block; margin-left: auto; margin-right: auto; position: absolute; left: 0; right: 0; opacity: 0.1;}
.block02-box figure{width: 30%; height: 100%; margin-left: auto; margin-right: auto; position: absolute; left: 0; right: 0;}
.block02-box figcaption{font-size: 1.5vw; width: 100%; font-weight: 700; color: #fff; margin-left: auto; margin-right: auto; position: absolute; left: 0; right: 0; top:10vw;}
.gap-below{margin-bottom: 1.8vw;}

.mid-txt{width: 65%; margin: 0 auto; text-align: center;}
.body-txt{font-size:1.1vw; line-height:2vw;}

.block03-area{width: 100%; font-size: 0; margin: 4vw 0 0 0;}
.block03-left{width: 50%; display: inline-block; vertical-align: top; margin: 0 5% 0 0;}
.block03-area ul{margin: 0 0 2vw 0;}
.block03-area ul:last-child{margin: 0;}
.block03-left li{list-style-type: none; display: block; margin: 0 0 0.7vw 0;}
.block03-left li img{width: 1.1vw; vertical-align: middle; display: inline-block; margin: 0 0.5vw 0 0;}
.block03-right{width: 45%; display: inline-block; vertical-align: top;}

.phead-02{font-size: 1.7vw; line-height: 2.2vw; font-weight: 600; margin: 0 0 1vw 0;}

.blue-bg{background: #1a5cb5; padding: 6vw 0 8vw 0; color: #fff;}

.ltabs{display:flex; gap:10px;flex-wrap:wrap; margin: 0 0 2vw 0;}
.ltab{padding:0.6vw 1.5vw; border-radius:0.5vw; font-family:'Work Sans',sans-serif; font-size:1.1vw; font-weight:600; cursor:pointer; border:1.5px solid rgba(255,255,255,.42); color:#fff; background:transparent; transition:background .15s}
.ltab.active,.ltab:hover{background:rgba(255,255,255,.22);border-color:rgba(255,255,255,.75)}

.plist{display:flex; flex-direction:column; gap:12px; margin: 2vw 0 0 0;}
.pitem{background:#fff; color: #000; border-radius:0.5vw; padding:1.4vw 1.6vw; display:flex; align-items:center; justify-content:space-between; font-size:1.1vw; cursor:pointer; font-weight:600; gap:12px; transition:box-shadow .15s}
.pitem:hover{box-shadow:0 4px 14px rgba(0,0,0,.15)}
.pitem img{width:1.5vw; height:1.5vw; flex-shrink:0;}

/*Chatbox CSS Start*/
:root{
  --blue:#2d5ec8;--blue-dk:#1d4aaa;
  --green:#6aaa28;--green-dk:#4d8018;
  --cream:#f5f0e6;
  --text:#111;--grey:#555;
}
.chatbox{background:#fff;border-radius:14px;overflow:hidden;box-shadow:0 12px 48px rgba(0,0,0,.22)}
.ch-hdr{padding:14px 18px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #eee;background:#fff}
.chdots{display:flex;gap:6px;align-items:center}
.chdots span{width:12px;height:12px;border-radius:50%}
.dr{background:#ff5f57}.dy{background:#febc2e}.dg{background:#28c840}
.chtitle{font-size:13px;font-weight:700;margin-left:12px;color:#111}
.chonline{display:flex;align-items:center;gap:6px;font-size:12px;color:#28c840;font-weight:600}
.chonline::before{content:'';width:7px;height:7px;background:#28c840;border-radius:50%}
.chbody{padding:18px 16px;background:#f5f8fa;display:flex;flex-direction:column;gap:12px}
.mu{align-self:flex-end;background:#d8eaf8;border-radius:14px 14px 4px 14px;padding:11px 14px;font-size:13px;max-width:88%;line-height:1.52;color:#111}
.ma{background:#eef5e0; border-radius:4px 14px 14px 14px;padding:13px 15px;font-size:13px;max-width:92%;line-height:1.62;color:#111; border-left:3px solid var(--green)}
.ma-lbl{font-weight:700;font-size:10px;letter-spacing:.7px;color:#4a7e1c;margin-bottom:6px}
.chinp{padding:12px 14px;display:flex;align-items:center;gap:8px;border-top:1px solid #eee;background:#fff}
.chinp input{flex:1;border:none;outline:none;font-size:12px;color:#888;background:transparent}
.chsend{width:36px;height:36px;background:var(--blue);border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.chsend svg{width:14px;height:14px;fill:#fff}
/*Chatbox CSS End*/

.block04{width:100%; display:block; margin: 3vw 2vw 2vw 2vw;}
.block04 figure{display: block; padding: 1vw; box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1); background: #fff; border-radius: 0.5vw;}
.block04 figure img{border-radius: 0.5vw;}
.block04 figcaption{text-align: center; padding: 1.5vw 0 0 0;}

.h-btn-02{font-family: 'Work Sans', sans-serif; font-size: 1.3vw; line-height: 2vw; font-weight: 600; width: auto; display: inline-block; vertical-align: middle; background: #1a5cb5; text-align: center; border-radius: 0.3vw; transition: all .25s ease-in-out; margin: 0 0 0 1vw;}
.h-btn-02:hover{background: #90b723; transition: all .25s ease-in-out;}
.h-btn-02 a{padding: 1.1vw 2vw; color: #fff; display: block;}
.h-btn-02 i{margin: 0 0 0 0.5vw;}


.block05{width:100%; display:block; margin: 3vw 1.5vw 1vw 1.5vw; padding: 1vw; box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1); background: #fff; border-radius: 0.5vw; font-size: 0;}
.block05 figure{display: inline-block; width: 30%; vertical-align: top; margin: 0 5% 0 0;}
.block05 figure img{border-radius: 0.5vw;}
.block05 figcaption{display: inline-block; width: 65%; vertical-align: top; font-size:1vw; line-height:1.6vw;}
.block05 figcaption p{margin: 0 0 1vw 0;}
.block05 figcaption p:last-child{margin: 0;}
.block05 figcaption p a{color: #ff7200; font-weight: 500;}

.north-bg{background: #fbf5e9; padding: 6vw 0 8vw 0; box-shadow: inset 0 0 8px #efd49e; overflow: auto; margin: 9vw 0 7vw 0 !important;}

.block06-area{width: 100%; font-size: 0;}
.block06-area-left{width: 30%; display: inline-block; margin: 0 5% 0 0; vertical-align: top;}
.block06-area-right{width: 65%; display: inline-block;  vertical-align: top; text-align: center;}
.btn-margin{margin: 3vw 0 0 0;}
.block06-box{background: #fff; padding: 1.5vw 2vw; border-radius: 0.5vw; display: inline-block; width: 31%; margin:0 1.16% 1.5vw 1.16%; box-shadow: 0 4px 15px rgba(239, 212, 158, 0.5); font-size: 1.1vw; font-weight: 600; text-align: center;}
.block06-box img{width: 30%; margin-left: auto; margin-right: auto; margin-bottom: 0.7vw; display: block;}

.block07-area{width: 100%; font-size: 0; display: block; margin: 3vw 0 0 0;}
.block07-box{width: 15%; display: inline-block; vertical-align: top; text-align:center; margin: 0 2.5%;}
.block07-box figure{background: #1a5cb5; border-radius: 0.5vw; display: block; width: 50%; margin-left: auto; margin-right: auto; margin-bottom: 1.5vw; transition: all .25s ease-in-out; padding: 1vw;}
.block07-box figure:hover{background: #90b723; transition: all .25s ease-in-out;}
.block07-box figcaption{font-size: 1.1vw; font-weight: 600; }

.footer-01{background: #1a5cb5; padding: 6vw 0 4vw 0; width: 100%; font-size: 0; border-top: solid 6px #1f549b; color: #fff;}
.footer-01 li{list-style-type: none; width: 25%; display: inline-block; vertical-align: top;}
.footer-01 li figure{width: 70%; display: block; margin: 0 0 1.5vw 0; background: #fff; border-radius: 0.5vw; 
padding: 1vw 3vw;}
.footer-01 h3{font-size: 1.3vw; font-weight: 600; margin: 0 0 1.5vw 0;}
.footer-social i{font-size: 1.1vw; display: inline-block; padding: 0.7vw 0.5vw 0.5vw 0.5vw; border-radius: 50%; border: solid 2px #fff; width: 2.7vw; height: 2.7vw; text-align: center; transition: all .25s ease-in-out; margin: 0 1vw 0 0;}
.footer-social i:hover{background: #4c76d0; transition: all .25s ease-in-out; }
.footer-social a{color: #fff;}
.footer-mid{margin: 0 12.5%; font-size: 0;}

.footer-mid li{list-style-type: none; width: 50% !important; display: inline-block; vertical-align: top; margin: 0 0 1vw 0; font-size: 0.9vw; font-weight: 600;}
.footer-mid li a{color: #fff;}
.footer-mid li a:hover{color: #fff; text-decoration: underline;}

.footer-mid li i{font-size: 0.6vw; vertical-align: middle; margin: 0 0.3vw 0 0;}
.footer-01 li:last-child{font-size: 0.9vw; line-height: 1.6vw;}
.footer-01 li:last-child a{color: #fff;}
.footer-01 li:last-child p{margin: 0 0 1.5vw 0;}
.footer-01 li:last-child i{margin: 0 0.5vw 0 0;}

.footer-02{font-size: 0; width: 100%; background: #333; padding: 1.9vw 0; color: #fff;}
.footer-02-left{width: 50%; display: inline-block; vertical-align: top; font-size: 0.8vw;}
.footer-02-right{width: 50%; display: inline-block; vertical-align: top; font-size: 0.8vw; text-align: right;}

#topBtn {
  display: none; /* Hidden by default */
  position: fixed; 
  bottom: 20px; 
  right: 30px; 
  z-index: 99; 
  border: none; 
  outline: none; 
  background-color: #555; 
  color: white; 
  cursor: pointer; 
  padding: 1vw; 
  border-radius: 50%; 
  font-size: 18px; width: 3vw; height: 3vw;
  transition: background-color 0.3s;
}
#topBtn:hover {
  background-color: #000; /* Darker on hover */
}

.call-btn {
  /* Positioning */
  position: fixed;
  top: 50%;
  right: 0;
  transform: translateY(-50%); /* Perfectly centers it vertically */
  z-index: 1000; /* Ensures it stays on top of other content */
  
  /* Vertical Text Setup */
  writing-mode: vertical-rl;
  text-orientation: mixed;
  
  /* Visual Styling */
  background-color: #2c3f7e; /* Adjust color as needed */
  color: #ffffff;
  font-family: Arial, sans-serif;
  font-weight: bold;
  font-size: 16px;
  text-decoration: none;
  padding: 20px 12px;
  
  /* Rounded corners on the left side */
  border-radius: 8px 0 0 8px; 
  box-shadow: -2px 0 8px rgba(0, 0, 0, 0.15);
  transition: background-color 0.3s ease;
}

/* Hover effect for desktop */
.call-btn:hover {
  background-color: #1f2d5a; color: #fff;
}