*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;background:#f6fbff;color:#071f3d}a{text-decoration:none;color:inherit}.header{position:sticky;top:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:14px 5%;background:rgba(255,255,255,.94);backdrop-filter:blur(16px);box-shadow:0 12px 35px rgba(6,45,90,.08)}.brand{display:flex;align-items:center;gap:12px}.brand img{width:62px;height:62px;object-fit:cover;border-radius:18px}.brand strong{display:block;font-size:1.45rem}.brand span{display:block;color:#5f7085}.hamburger{border:0;background:#071f3d;color:white;width:52px;height:52px;border-radius:16px;font-size:1.7rem;font-weight:900}.drawer{position:fixed;top:0;right:-330px;width:330px;height:100vh;background:#071f3d;color:white;z-index:999;padding:26px;transition:.3s;box-shadow:-20px 0 60px rgba(0,0,0,.25)}.drawer.open{right:0}.drawer a{display:block;padding:16px 0;border-bottom:1px solid rgba(255,255,255,.12);font-weight:800}.close{border:0;background:white;color:#071f3d;width:48px;height:48px;border-radius:14px;font-size:2rem;margin-bottom:18px}.hero{min-height:82vh;position:relative;display:flex;align-items:center;padding:70px 5%;background:url('https://images.unsplash.com/photo-1581578731548-c64695cc6952?auto=format&fit=crop&w=1900&q=80') center/cover}.heroShade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,24,52,.86),rgba(3,24,52,.35),rgba(3,24,52,.08))}.heroContent{position:relative;color:white;max-width:790px}.eyebrow,.sectionHead span,.quoteHeader span{display:inline-block;background:#dff5ff;color:#006bd6;border-radius:999px;padding:10px 16px;font-weight:950}.eyebrow{background:rgba(255,255,255,.18);color:white}.eyebrow.dark{background:#dff5ff;color:#006bd6}.hero h1{font-size:clamp(3rem,8vw,6.3rem);line-height:.9;margin:20px 0;letter-spacing:-2px}.hero p{font-size:1.25rem;line-height:1.65;color:#e7f5ff}.heroButtons{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}.btn{padding:17px 22px;border-radius:18px;font-weight:950}.primary{background:#00a8ff;color:white;box-shadow:0 18px 35px rgba(0,168,255,.3)}.secondary{background:white;color:#071f3d}.section{padding:78px 5%}.sectionHead,.quoteHeader{text-align:center;max-width:850px;margin:0 auto 38px}.sectionHead h2,.why h2,.quoteHeader h2,.contact h2{font-size:clamp(2.2rem,5vw,4rem);line-height:1;margin-top:14px}.serviceGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.serviceCard{background:white;border-radius:28px;overflow:hidden;box-shadow:0 18px 45px rgba(6,50,100,.09);font-weight:950}.serviceCard img{width:100%;height:230px;object-fit:cover;display:block}.serviceCard h3{font-size:1.45rem;padding:20px}.why{display:grid;grid-template-columns:1fr 1fr;gap:30px;padding:80px 5%;background:#071f3d;color:white}.why p{color:#cfe2f4;line-height:1.7;font-size:1.1rem;margin-top:20px}.whyList{display:grid;gap:16px}.whyList div{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.14);border-radius:22px;padding:22px;font-weight:950}.quoteSection{padding:80px 5%;background:linear-gradient(180deg,#fff,#edf8ff)}.quoteHeader p{color:#60758d;margin-top:12px}.quoteForm{max-width:980px;margin:auto;background:white;border-radius:34px;padding:28px;display:grid;grid-template-columns:1fr 1fr;gap:16px;box-shadow:0 22px 60px rgba(7,50,95,.11)}.quoteForm label{display:grid;gap:8px;font-weight:900}.quoteForm input,.quoteForm select,.quoteForm textarea{width:100%;border:1px solid #d3e4f5;background:#f8fcff;border-radius:18px;padding:17px;font:inherit;min-height:58px}.quoteForm textarea{resize:vertical}.full{grid-column:1/-1}.quoteForm button{border:0;border-radius:18px;background:linear-gradient(135deg,#00a8ff,#0066ff);color:white;padding:18px;font-weight:950;font-size:1.05rem}.quoteForm p{text-align:center;font-weight:950}.contact{display:grid;grid-template-columns:160px 1fr;gap:26px;align-items:center;background:white;padding:70px 5%}.contact img{width:140px;height:140px;border-radius:28px;object-fit:cover}.contact p{margin-top:10px;color:#40566e}.contact a{color:#0074e8;font-weight:900}footer{text-align:center;padding:26px;color:#667891}.bottomBar{display:none}
@media(max-width:850px){.hero{min-height:72vh;padding:60px 5%}.hero h1{font-size:3.15rem}.serviceGrid,.why,.quoteForm,.contact{grid-template-columns:1fr}.quoteForm{padding:20px;border-radius:26px}.quoteForm input,.quoteForm select,.quoteForm textarea{font-size:16px;width:100%;min-width:0}.serviceCard img{height:210px}.bottomBar{position:fixed;bottom:0;left:0;right:0;z-index:90;display:grid;grid-template-columns:1fr 1fr;background:white;box-shadow:0 -10px 30px rgba(0,0,0,.14)}.bottomBar a{text-align:center;padding:16px;font-weight:950;color:#006bd6}body{padding-bottom:58px}.brand strong{font-size:1.2rem}.brand img{width:54px;height:54px}}
.autoGallery{padding:80px 5%;background:#ffffff}
.autoGallery .sectionHead p{color:#60758d;margin-top:10px}
.slider{position:relative;height:520px;border-radius:36px;overflow:hidden;box-shadow:0 25px 70px rgba(6,50,100,.16)}
.slide{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;transform:scale(1.04);transition:opacity .8s ease, transform 1.2s ease;display:flex;align-items:flex-end}
.slide.active{opacity:1;transform:scale(1)}
.slide:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.05),rgba(3,24,52,.78))}
.slide div{position:relative;z-index:2;color:white;padding:42px;max-width:700px}
.slide h3{font-size:clamp(2rem,5vw,4rem);line-height:1;margin-bottom:12px}
.slide p{font-size:1.2rem;color:#e7f5ff}
@media(max-width:850px){
  .slider{height:380px;border-radius:26px}
  .slide div{padding:24px}
}


.videoShowcase{
  padding:80px 5%;
  background:linear-gradient(180deg,#ffffff,#eef8ff);
}

.videoText{
  text-align:center;
  max-width:850px;
  margin:0 auto 34px;
}

.videoText span{
  display:inline-block;
  background:#dff5ff;
  color:#006bd6;
  border-radius:999px;
  padding:10px 16px;
  font-weight:950;
}

.videoText h2{
  font-size:clamp(2.2rem,5vw,4rem);
  line-height:1;
  margin:16px 0;
  color:#071f3d;
}

.videoText p{
  color:#60758d;
  font-size:1.1rem;
  line-height:1.6;
}

.videoFrame{
  max-width:1080px;
  margin:auto;
  border-radius:34px;
  overflow:hidden;
  box-shadow:0 28px 80px rgba(6,50,100,.18);
  background:#071f3d;
  border:8px solid white;
}

.videoFrame video{
  width:100%;
  display:block;
  aspect-ratio:16/9;
  object-fit:cover;
}

@media(max-width:850px){
  .videoShowcase{padding:58px 5%}
  .videoFrame{border-radius:24px;border-width:5px}
}


.contactPro{
  padding:90px 5%;
  background:
    radial-gradient(circle at 15% 20%, rgba(0,168,255,.12), transparent 32%),
    linear-gradient(180deg,#ffffff,#eef8ff);
}

.contactCard{
  max-width:1150px;
  margin:auto;
  display:grid;
  grid-template-columns:280px 1fr;
  gap:34px;
  align-items:center;
  background:white;
  border-radius:42px;
  padding:34px;
  box-shadow:0 30px 90px rgba(6,50,100,.14);
  border:1px solid #e4f1ff;
}

.contactLogo{
  min-height:310px;
  border-radius:34px;
  background:linear-gradient(135deg,#e8f8ff,#ffffff);
  display:grid;
  place-items:center;
  border:1px solid #d8ecff;
}

.contactLogo img{
  width:210px;
  height:210px;
  object-fit:cover;
  border-radius:50%;
  box-shadow:0 20px 50px rgba(0,120,220,.16);
}

.contactContent span{
  display:inline-block;
  background:#dff5ff;
  color:#006bd6;
  border-radius:999px;
  padding:10px 16px;
  font-weight:950;
}

.contactContent h2{
  font-size:clamp(2.2rem,5vw,4rem);
  line-height:1;
  margin:16px 0 12px;
  color:#071f3d;
}

.contactSub{
  color:#60758d;
  font-size:1.1rem;
  line-height:1.6;
  margin-bottom:22px;
}

.contactGrid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:14px;
  margin:26px 0;
}

.contactItem{
  background:#f6fbff;
  border:1px solid #d9ecff;
  border-radius:24px;
  padding:20px;
  min-height:150px;
}

.contactItem b{
  display:block;
  color:#60758d;
  margin-bottom:14px;
}

.contactItem strong{
  display:block;
  color:#071f3d;
  font-size:1.08rem;
  line-height:1.35;
  word-break:break-word;
}

.contactItem small{
  display:block;
  margin-top:8px;
  color:#0074e8;
  font-weight:900;
}

.contactActions{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
}

.contactBtn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:16px 20px;
  border-radius:18px;
  font-weight:950;
}

.contactBtn.main{
  background:linear-gradient(135deg,#00a8ff,#0066ff);
  color:white;
  box-shadow:0 16px 32px rgba(0,120,255,.24);
}

.contactBtn.light{
  background:#eef8ff;
  color:#006bd6;
}

.footerPro{
  text-align:center;
  padding:30px 5% 90px;
  color:#60758d;
  background:#eef8ff;
  font-weight:700;
}

@media(max-width:850px){
  .contactPro{padding:58px 5%}
  .contactCard{
    grid-template-columns:1fr;
    padding:22px;
    border-radius:30px;
  }
  .contactLogo{
    min-height:220px;
    border-radius:26px;
  }
  .contactLogo img{
    width:160px;
    height:160px;
  }
  .contactGrid{
    grid-template-columns:1fr;
  }
  .contactActions{
    display:grid;
    grid-template-columns:1fr;
  }
}


.footerLuxury{
  background:
    linear-gradient(135deg,#03152d,#08264d);
  color:white;
  padding:70px 5% 30px;
  position:relative;
  overflow:hidden;
}

.footerLuxury:before{
  content:"";
  position:absolute;
  top:-120px;
  right:-120px;
  width:320px;
  height:320px;
  background:rgba(0,168,255,.12);
  border-radius:50%;
}

.footerLuxury:after{
  content:"";
  position:absolute;
  bottom:-140px;
  left:-140px;
  width:360px;
  height:360px;
  background:rgba(255,255,255,.04);
  border-radius:50%;
}

.footerTop{
  position:relative;
  z-index:2;
  max-width:1300px;
  margin:auto;
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:40px;
  align-items:start;
}

.footerBrand img{
  width:120px;
  height:120px;
  object-fit:cover;
  border-radius:28px;
  margin-bottom:24px;
  background:white;
  padding:8px;
}

.footerBrand h2{
  font-size:clamp(2.2rem,5vw,4rem);
  line-height:1;
  margin-bottom:18px;
}

.footerBrand p{
  max-width:650px;
  color:#c8d9ea;
  line-height:1.8;
  font-size:1.08rem;
}

.footerButtons{
  display:flex;
  gap:14px;
  flex-wrap:wrap;
  margin-top:28px;
}

.footerBtn{
  padding:16px 24px;
  border-radius:18px;
  font-weight:900;
  display:inline-flex;
  align-items:center;
  justify-content:center;
}

.footerBtn.blue{
  background:linear-gradient(135deg,#00a8ff,#0066ff);
  color:white;
  box-shadow:0 15px 35px rgba(0,120,255,.35);
}

.footerBtn.white{
  background:white;
  color:#03152d;
}

.footerInfo{
  display:grid;
  gap:18px;
}

.footerBox{
  background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.08);
  border-radius:26px;
  padding:24px;
  backdrop-filter:blur(10px);
}

.footerBox span{
  display:block;
  color:#77cfff;
  font-weight:900;
  margin-bottom:14px;
  font-size:.95rem;
  text-transform:uppercase;
  letter-spacing:1px;
}

.footerBox a{
  display:block;
  color:white;
  font-size:1.2rem;
  font-weight:800;
  margin-bottom:8px;
  word-break:break-word;
}

.footerBox p{
  color:#d8e6f5;
  line-height:1.7;
  font-size:1.05rem;
}

.footerBottom{
  position:relative;
  z-index:2;
  margin-top:55px;
  padding-top:28px;
  border-top:1px solid rgba(255,255,255,.08);
  text-align:center;
  color:#9db4cc;
  font-weight:700;
}

@media(max-width:850px){

  .footerLuxury{
    padding:55px 5% 90px;
  }

  .footerTop{
    grid-template-columns:1fr;
  }

  .footerBrand img{
    width:95px;
    height:95px;
  }

  .footerButtons{
    display:grid;
    grid-template-columns:1fr;
  }

  .footerBtn{
    width:100%;
  }

  .footerBox{
    padding:20px;
    border-radius:22px;
  }

  .footerBrand h2{
    font-size:2.5rem;
  }

}
