:root{

--primary:#00AFFF;
--dark:#050B14;
--dark2:#09101D;
--white:#fff;

}

*{
margin:0;
padding:0;
box-sizing:border-box;
}

body{

background:var(--dark);
font-family:Poppins,sans-serif;
overflow-x:hidden;
color:white
}

/* =======================
PRELOADER
======================= */

#preloader{

position:fixed;
width:100%;
height:100%;
background:#000;
z-index:9999;

display:flex;
justify-content:center;
align-items:center;

}

.loader-logo{

display:flex;
align-items:center;
gap:10px;

}

.loader-logo span{

background:#fff;
color:#000;
padding:12px 15px;
border-radius:12px;
font-weight:700;

}

.loader-logo h1{

color:#fff;
font-size:60px;

}

/* =======================
NAVBAR
======================= */

.custom-navbar{

background:rgb(0 0 0 / 34%);

backdrop-filter:blur(20px);

border-bottom:1px solid rgba(255,255,255,.1);

}

.navbar-brand{

display:flex;
align-items:center;
gap:10px;

font-size:35px;
font-weight:700;

color:#fff;

}

.brand-box{
width: 54px;
    height: 39px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff;
    padding: 10px;
    color: #000;
    border-radius: 10px;
    font-weight: 700;
}

.nav-link{

color:#fff !important;
margin:0 12px;

}
.fa-bars{
   color:#fff !important; 
}
.nav-link:hover, .nav-link .active{

color:var(--primary) !important;

}

.btn-primary{

background:linear-gradient(linear-gradient(to right, #0a0a0a, #f1ba05, #0a0a0a));
border:none;

padding:12px 30px;

}

/* =======================
HERO
======================= */

.hero-section{

position:relative;
overflow:hidden;

}

.hero-video{

position:absolute;
width:100%;
height:100%;

}

.hero-video video{

width:100%;
height:100%;
object-fit:cover;

}

.hero-overlay{

position:absolute;
inset:0;

background:
linear-gradient(
90deg,
rgba(0,0,0,.8),
rgba(0,0,0,.4)
);

}

.hero-content{
margin-top: 20%;
position:relative;
z-index:5;
margin-left: 5%;
color:#fff;

}

.hero-tag{
color: var(--primary);
    letter-spacing: 3px;
    font-weight: 900;
}

.hero-title{

font-size:50px;
font-weight:800;
line-height:1.1;

margin-bottom:20px;

}

.hero-description{

font-size:22px;
color:#ddd;

}

.hero-slogan{

margin-top:20px;
color:var(--primary);

font-style:italic;

}

.hero-buttons{

margin-top:35px;
display:flex;
gap:20px;

}

.hero-btn{

padding:15px 35px;

}

.hero-features{

display:flex;
gap:20px;

margin-top:50px;

}

.feature-box{

padding:20px;

background:rgba(255,255,255,.05);

border:1px solid rgba(255,255,255,.1);

backdrop-filter:blur(20px);

border-radius:20px;

}

.feature-box i{

color:var(--primary);
margin-right:8px;

}

.hero-car img{

width:100%;

filter:
drop-shadow(0 0 50px rgba(0,174,255,.5));

}

/* =======================
BUBBLES
======================= */

.floating-bubbles span{

position:absolute;

width:25px;
height:25px;

border-radius:50%;

background:
rgba(255,255,255,.15);

animation:bubble 10s linear infinite;

}

@keyframes bubble{

0%{
transform:translateY(100vh);
}

100%{
transform:translateY(-100vh);
}

}


/* =======================
SERVICES
======================= */

.services-section{

padding:120px 0;
background:#07111f;

}

.section-header h2{

color:#fff;
font-size:50px;
font-weight:700;

}

.section-tag{

color:var(--primary);
letter-spacing:3px;

}

.service-card{

height:100%;
padding:35px;

background:
rgba(255,255,255,.04);

border:
1px solid rgba(255,255,255,.08);

border-radius:25px;

transition:.5s;

backdrop-filter:blur(20px);

}

.service-card:hover{

transform:
translateY(-12px);

border-color:var(--primary);

box-shadow:
0 0 40px rgba(0,174,255,.25);

}

.service-icon{

width:70px;
height:70px;

border-radius:50%;

display:flex;
align-items:center;
justify-content:center;

font-size:25px;

background:
rgba(0,174,255,.15);

color:var(--primary);

margin-bottom:25px;

}

.service-card h4{

color:#fff;

}

.service-card p{

color:#c9d2dc;

}

.service-card a{

text-decoration:none;
color:var(--primary);

}

/* =======================
WHY US
======================= */

.why-section{

padding:120px 0;
background:#050b14;

}

.why-image img{
width:100%;
border-radius: 20px;
filter:
drop-shadow(
0 0 50px rgba(0,174,255,.35)
);

}

.why-section h2{

font-size:55px;
font-weight:700;
color:#fff;

margin:20px 0;

}

.why-section p{

color:#bfc8d3;
font-size:18px;

}

.why-list{

margin-top:35px;

}

.why-list div{

margin-bottom:18px;
font-size:18px;
color:#fff;

}

.why-list i{

color:var(--primary);
margin-right:12px;

}

/* =======================
STATS
======================= */

.stats-section{

padding:50px 0;

background:
linear-gradient(
180deg,
#050b14,
#081726
);

}

.stat-box{

padding:40px;

text-align:center;

background:
rgba(255,255,255,.04);

border-radius:25px;

border:
1px solid rgba(255,255,255,.08);

}

.stat-box h2{

font-size:40px;
font-weight:700;

color:var(--primary);

}

.stat-box p{
color:#fff;
font-size:16px;
margin-top:10px;
}


/* ===================
PRICING
=================== */

.pricing-section{
padding:120px 0;	
background:#081726;
}
	
.price-card{
padding:50px;
border-radius:30px;
background:rgba(255,255,255,.04);
border:1px solid rgba(255,255,255,.08);
position:relative;
height:100%;
}

.price-card h4,
.price-card h2{
color:#fff;
}

.price-card ul{
padding-left:20px;
color:#ddd;
}

.featured{
border:1px solid var(--primary);
box-shadow:0 0 40px rgba(0,174,255,.2);
}

.badge-plan{
position:absolute;
top:-15px;
left:50%;
transform:translateX(-50%);
background:var(--primary);
padding:8px 18px;
border-radius:30px;
}

/* ===================
COMPARE
=================== */

.before-after-section{
padding:120px 0;
background:#050b14;
}

.compare-container{
position:relative;
overflow:hidden;
border-radius:20px;
}

.compare-container img{
width:100%;
display:block;
}

.after-image{
position:absolute;
top:0;
left:0;
width:50%;
overflow:hidden;
height:100%;
}

#slider{
position:absolute;
bottom:20px;
left:50%;
transform:translateX(-50%);
width:80%;
}

/* ===================
GALLERY
=================== */

.gallery-section{
padding:50px 0;
background:#081726;
}

.gallery-grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:20px;
margin-top:50px;
}

.gallery-grid img{
    width: 100%;
    border-radius: 20px;
    transition: .5s;
    height: 300px;
    object-fit: cover;
}

.gallery-grid img:hover{
transform:scale(1.05);
}

/* ===================
TESTIMONIALS
=================== */

.testimonial-section{
padding:120px 0;
background:#050b14;
}

.testimonial-card{
padding:40px;
background:rgba(255,255,255,.05);
border-radius:20px;
color:#fff;
}

/* ===================
BOOKING
=================== */
.nav-link{
    font-weight:700;
}
.booking-section{
padding:120px 0;
background:#081726;
}

.booking-section form{
display:flex;
flex-direction:column;
gap:20px;
}

.booking-section input,
.booking-section select{
    height: 60px;
    background:#ffffffad;
    border: none;
    color: #fff;
    border: 1px solid #8080806b;

}
a {text-decoration: none;}
/* ===================
CONTACT
=================== */

.contact-section{
padding:120px 0;
background:#050b14;
color:#fff;
}

/* ===================
FOOTER
=================== */

footer{
padding:60px 0 30px 0;
background:#000;
color:#fff;

}
.footer-menu a::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: -8px;
    width: 0%;
    height: 2px;
    background: #fe7c36;
    transition: 0.4s;
}
.footer-text {
    color: #8c9099;
    font-size: 16px;
    line-height: 1.8;
    max-width: 540px;
    margin: auto;
    margin-bottom: 40px;
    font-weight: 400;
}
footer a{
    color: #ffffff;
    text-decoration: none;
    font-size: 16px;
    font-weight: 400;
    transition: 0.4s;
    position: relative;
}
.footer-menu {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 60px;
    flex-wrap: wrap;
    margin-bottom: 28px;
}
.footer-logo{
display:flex;
align-items:center;
gap:10px;
font-size:40px;
font-weight:700;
justify-content: center;
}
.footer-logo img{
   height: 68px;
    margin-bottom: 35px;
}
.socials{
display:flex;
gap:15px;
margin-top:20px;
}

.socials a{
width:45px;
height:45px;
display:flex;
align-items:center;
justify-content:center;
border-radius:50%;
background:#111;
color:#fff;
}

/* ===================
WHATSAPP
=================== */

.whatsapp-btn{
position:fixed;
right:25px;
bottom:25px;
width:65px;
height:65px;
border-radius:50%;
background:#25d366;
display:flex;
justify-content:center;
align-items:center;
font-size:30px;
color:#fff;
z-index:999;
}
#preloader{
position:fixed;
inset:0;
background:#000;
z-index:99999;
display:flex;
justify-content:center;
align-items:center;
}

.loader-circle{
width:140px;
height:140px;
border-radius:50%;
border:4px solid rgba(255,255,255,.1);
border-top:4px solid var(--primary);
animation:spin 1.5s linear infinite;
}

@keyframes spin{
100%{
transform:rotate(360deg);
}
}
/* ================= Privacy Policy ================= */

    .privacy-policy-hero{
      width:100%;
      min-height:320px;
      background:linear-gradient(135deg, #00243f, #002440d4);
      padding:120px 8%;
      color:#fff;
      position:relative;
      overflow:hidden;
    }

    .privacy-policy-hero::before{
      content:"";
      position:absolute;
      width:350px;
      height:350px;
      border-radius:50%;
      background:rgba(255,255,255,.08);
      top:-120px;
      right:-100px;
    }

    .privacy-policy-hero::after{
      content:"";
      position:absolute;
      width:240px;
      height:240px;
      border-radius:50%;
      background:rgba(255,255,255,.05);
      bottom:-100px;
      left:-50px;
    }

    .privacy-policy-title{
      font-size:62px;
      margin-bottom:15px;
      position:relative;
      z-index:2;
    }

    .privacy-policy-description{
      max-width:700px;
      line-height:1.7;
      font-size:22px;
      opacity:.92;
      position:relative;
      z-index:2;
    }

    /* CONTAINER */

    .privacy-policy-container{
      width:90%;
      max-width:1200px;
      margin:-70px auto 80px;
      position:relative;
      z-index:5;
    }

    .privacy-policy-card{
      background:#fff;
      border-radius:24px;
      padding:50px;
      box-shadow:0 15px 40px rgba(0,0,0,.08);
    }

    .privacy-policy-updated{
      display:inline-block;
      background:#dbe9eb;
      color:#002143;
      padding:10px 20px;
      border-radius:40px;
      font-weight:600;
      margin-bottom:40px;
    }

    /* SECTION */

    .privacy-policy-section{
      margin-bottom:50px;
      animation:privacyPolicyFade .7s ease;
    }

    .privacy-policy-section-title{
      display:flex;
      align-items:center;
      gap:14px;
      font-size:34px;
      color:#002341;
      margin-bottom:20px;
      font-weight:700;
    }

    .privacy-policy-icon{
      width:52px;
      height:52px;
      background:#dbe9eb;
      border-radius:50%;
      display:flex;
      align-items:center;
      justify-content:center;
      color:#002143;
      font-size:20px;
      display:none;
    }

    .privacy-policy-text{
      font-size:18px !important;
      line-height:1.9;
      color:#555;
      margin-bottom:15px  !important;
    }

    .privacy-policy-list{
      padding-left:25px;
    }

    .privacy-policy-list li{
      font-size:18px;
      line-height:1.8;
      margin-bottom:12px;
      color:#444;
    }

    /* ACCORDION */

    .privacy-policy-accordion{
      margin-top:25px;
    }

    .privacy-policy-accordion-item{
      border:1px solid #eee;
      border-radius:16px;
      overflow:hidden;
      margin-bottom:18px;
      transition:.3s;
    }

    .privacy-policy-accordion-header{
      width:100%;
      padding:22px 25px;
      border:none;
      outline:none;
      background:#fff;
      display:flex;
      align-items:center;
      justify-content:space-between;
      cursor:pointer;
      font-size:20px;
      font-weight:600;
      color:#002341;
    }

    .privacy-policy-accordion-header:hover{
      background:#fafafa;
    }

    .privacy-policy-accordion-content{
      max-height:0;
      overflow:hidden;
      transition:max-height .4s ease;
      background:#fcfcfc;
    }

    .privacy-policy-accordion-content p{
      padding:0 25px 25px;
      line-height:1.8;
      color:#555;
      font-size:17px;
    }

    .privacy-policy-accordion-item.active 
    .privacy-policy-accordion-content{
      max-height:250px;
    }

    .privacy-policy-accordion-icon{
      transition:.3s;
    }

    .privacy-policy-accordion-item.active 
    .privacy-policy-accordion-icon{
      transform:rotate(180deg);
    }

    /* CONTACT BOX */

    .privacy-policy-contact-box{
      background:linear-gradient(135deg,#002341,#002143);
      border-radius:22px;
      padding:45px;
      text-align:center;
      color:#fff;
      margin-top:45px;
    }

    .privacy-policy-contact-title{
      font-size:36px;
      margin-bottom:15px;
    }

    .privacy-policy-contact-text{
      font-size:18px;
      line-height:1.7;
      margin-bottom:25px;
      color:#f3f3f3;
    }

    .privacy-policy-contact-btn{
      display:inline-block;
      padding:16px 35px;
      background:#fff;
      color:#002341;
      text-decoration:none;
      border-radius:50px;
      font-size:18px;
      font-weight:600;
      transition:.3s;
    }

    .privacy-policy-contact-btn:hover{
      transform:translateY(-3px);
    }

    /* FOOTER */

    .privacy-policy-footer{
      text-align:center;
      padding:25px;
      color:#666;
      font-size:16px;
    }

    /* ANIMATION */

    @keyframes privacyPolicyFade{

      from{
        opacity:0;
        transform:translateY(20px);
      }

      to{
        opacity:1;
        transform:translateY(0);
      }
    }

    /* RESPONSIVE */

    @media(max-width:768px){

      .privacy-policy-hero{
        padding:60px 25px;
      }

      .privacy-policy-title{
        font-size:42px;
        padding-top: 79px;
      }

      .privacy-policy-description{
        font-size:18px;
      }

      .privacy-policy-container{
        width:94%;
      }

      .privacy-policy-card{
        padding:30px 22px;
      }

      .privacy-policy-section-title{
        font-size:26px;
      }

      .privacy-policy-text,
      .privacy-policy-list li{
        font-size:16px;
      }

      .privacy-policy-accordion-header{
        font-size:17px;
      }

      .privacy-policy-contact-title{
        font-size:28px;
      }
      

    }
    
.navbar-nav .nav-link{
    position:relative;
    padding:10px 18px;
    transition:.3s;
}

.navbar-nav .nav-link::after{

    content:"";

    position:absolute;

    left:50%;
    bottom:-5px;

    width:0;
    height:3px;

    background:#4f7cff;

    border-radius:50px;

    transform:translateX(-50%);

    transition:.3s;
}

.navbar-nav .nav-link:hover{
    color:#4f7cff;
}

.navbar-nav .nav-link:hover::after{
    width:70%;
}

.navbar-nav .nav-link.active{
    color:#4f7cff !important;
}

.navbar-nav .nav-link.active::after{
    width:70%;
}
.fa-solid, .fas {
    font-weight: 900;
    color: white;
}    
    table{
        width:100%;
    }
  /* Tablet */
@media (max-width: 991px) {
    .gallery-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

/* Mobile */
@media (max-width: 767px) {
    .gallery-grid {
        grid-template-columns: 1fr;
    }
}  
.booking-section select {
    height: 60px;
    background: #ffffff14;
    border: none;
    color: #fff;
    border: 1px solid #8080806b;
}
    
    .navbar-brand:focus, .navbar-brand:hover {
    color: rgb(255 255 255);
}
h6 {
    font-size: 18px;
    color: black;
    font-weight: 600;
}
table th{
  background: #000000;
    color: white !important;
}
table th, table td{
        color: black;
    border: 1px solid grey;
    padding: 10px;
}
a:hover {
    --bs-link-color-rgb: var(--bs-link-hover-color-rgb);
}
.privacy-policy-card h5{
color: #181818;
    font-size: 25px;
    font-weight: 700;
}
ul .privacy-policy-text{
    line-height: inherit;
     margin-bottom: 0px;
}

/* Mobile */
@media (max-width: 767px) {
    .section-header h2 {
    font-size: 29px;}
    .section-tag{
        margin-top:10px;
    }
    .why-section h2 {
    font-size: 28px;}
    .hero-title {
    font-size: 28px;}
    .hero-description {
    font-size: 16px;}
    .hero-btn {
    padding: 4px 13px;
}
.services-section {
    padding: 35px 0;}
    .why-section {
  padding: 35px 0;}
  .stats-section {
    padding: 0px 0;}
    .booking-section {
    padding: 35px 0;}
}























