:root{
  --navy:#062b57;
  --navy-2:#021d3d;
  --blue:#075ea8;
  --gold:#d99a19;
  --gold-2:#f0b53f;
  --soft:#f5f8fc;
  --text:#13213a;
  --muted:#667085;
  --white:#fff;
  --shadow:0 20px 55px rgba(6,43,87,.13);
  --radius:26px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  color:var(--text);
  background:#fff;
  overflow-x:hidden;
}
a{color:inherit}
img{max-width:100%}

.top-strip{
  background:linear-gradient(90deg,var(--navy),#0d4583);
  color:#fff;
  font-size:.86rem;
  padding:8px 0;
  position:fixed;
  top:0;
  width:100%;
  z-index:1040;
}

.navbar-rotamar{
  top:0;
  background:rgba(255,255,255,.94);
  backdrop-filter:blur(14px);
  box-shadow:0 12px 35px rgba(0,0,0,.08);
  padding:12px 0;
  z-index:1035;
}
@media(min-width:992px){.navbar-rotamar{top:36px}}
.brand-logo{
  width:168px;
  height:64px;
  object-fit:contain;
  mix-blend-mode:multiply;
}
.nav-link{
  color:var(--navy)!important;
  font-weight:700;
  font-size:.95rem;
  position:relative;
}
.nav-link.active::after,.nav-link:hover::after{
  content:"";
  position:absolute;
  left:.5rem;
  right:.5rem;
  bottom:2px;
  height:3px;
  background:var(--gold);
  border-radius:999px;
}
.btn-gold{
  background:linear-gradient(135deg,var(--gold),#c17c06);
  border:0;
  color:#fff!important;
  font-weight:800;
  box-shadow:0 12px 28px rgba(217,154,25,.32);
}
.btn-gold:hover{background:linear-gradient(135deg,#f0b53f,#c17c06);transform:translateY(-1px)}
.btn-outline-gold{
  border:1.5px solid rgba(217,154,25,.55);
  color:var(--gold);
  font-weight:800;
  background:#fff;
}
.btn-outline-gold:hover{background:var(--gold);color:#fff}
.btn-ghost{
  color:#fff!important;
  border:1px solid rgba(255,255,255,.55);
  background:rgba(255,255,255,.12);
  backdrop-filter:blur(8px);
}
.section-padding{padding:88px 0}
.bg-soft{background:var(--soft)}
.section-kicker{
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:var(--gold);
  text-transform:uppercase;
  font-size:.78rem;
  letter-spacing:.12em;
  font-weight:900;
}
.section-title{
  font-family:"Playfair Display",serif;
  color:var(--navy);
  font-size:clamp(2rem,3.8vw,3.1rem);
  line-height:1.05;
  margin:8px 0 0;
}
.text-gold{color:var(--gold)!important}

/* HERO */
.hero-carousel{
  position:relative;
  margin-top:88px;
}
@media(min-width:992px){.hero-carousel{margin-top:124px}}
.min-vh-hero{min-height:720px}
.hero-slide{
  min-height:720px;
  background-size:cover;
  background-position:center;
  position:relative;
}
.slide-maceio{background-image:url("https://commons.wikimedia.org/wiki/Special:FilePath/Praia%20Paju%C3%A7ara%20Macei%C3%B3%2004%202015%203258.JPG")}
.slide-piscinas{background-image:url("https://commons.wikimedia.org/wiki/Special:FilePath/Maragogi%2C%20Alagoas%2C%20Brazil%20%2851383254672%29.jpg")}
.slide-transfer{background-image:url("https://commons.wikimedia.org/wiki/Special:FilePath/Aeroporto%20Internacional%20Zumbi%20dos%20Palmares%20-%2004.jpg")}
.hero-overlay{
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(2,29,61,.88),rgba(6,43,87,.55),rgba(6,43,87,.12));
}
.hero-content{position:relative;z-index:2}
.hero-title{
  font-family:"Playfair Display",serif;
  font-size:clamp(2.65rem,5.8vw,5.8rem);
  line-height:.98;
  color:#fff;
  max-width:850px;
  margin:14px 0 22px;
}
.hero-text{
  color:rgba(255,255,255,.92);
  font-size:1.22rem;
  max-width:610px;
}
.hero-badges{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:24px;
}
.hero-badges span{
  color:#fff;
  border:1px solid rgba(255,255,255,.28);
  background:rgba(255,255,255,.10);
  padding:10px 14px;
  border-radius:999px;
  font-weight:800;
  backdrop-filter:blur(10px);
}
.hero-badges i{color:var(--gold);margin-right:7px}
.carousel-indicators [data-bs-target]{
  width:11px;height:11px;border-radius:50%;background:#fff;opacity:1;border:0;
}
.carousel-indicators .active{background:var(--gold)}
.carousel-control-prev,.carousel-control-next{width:7%}
.carousel-control-prev-icon,.carousel-control-next-icon{
  width:3rem;height:3rem;
  background-color:rgba(2,29,61,.75);
  border-radius:50%;
  background-size:54%;
}
.floating-quote{
  position:absolute;
  right:7%;
  bottom:-72px;
  z-index:5;
  width:360px;
}
.quote-card{
  background:#fff;
  padding:28px;
  border-radius:28px;
  box-shadow:var(--shadow);
}
.quote-card h3{
  color:var(--navy);
  font-family:"Playfair Display",serif;
  margin:6px 0 10px;
}
.icon-lg{
  font-size:2rem;
  color:var(--gold);
}

/* Tourist cards */
.tour-card{
  background:#fff;
  border-radius:22px;
  box-shadow:0 15px 35px rgba(6,43,87,.10);
  overflow:hidden;
  transition:.25s;
  height:100%;
}
.tour-card:hover{transform:translateY(-7px);box-shadow:0 24px 55px rgba(6,43,87,.16)}
.tour-img{
  height:210px;
  background-size:cover;
  background-position:center;
}
.img-orla-maceio{background-image:url("https://commons.wikimedia.org/wiki/Special:FilePath/Praia%20Paju%C3%A7ara%20Macei%C3%B3%2004%202015%203258.JPG")}
.img-maragogi{background-image:url("https://commons.wikimedia.org/wiki/Special:FilePath/Maragogi%2C%20Alagoas%2C%20Brazil%20%2851383254672%29.jpg")}
.img-milagres{background-image:url("https://commons.wikimedia.org/wiki/Special:FilePath/Beach%20Sao%20Miguel%20Dos%20Milagres%20Alagoas%20%28140207749%29.jpeg")}
.img-piscinas{background-image:url("https://commons.wikimedia.org/wiki/Special:FilePath/Maragogi%2C%20Alagoas%2C%20Brazil%20%2851383254672%29.jpg")}
.img-frances{background-image:url("https://commons.wikimedia.org/wiki/Special:FilePath/Praia%20do%20Franc%C3%AAs%20-%20AL.jpg")}
.img-marape{background-image:url("https://commons.wikimedia.org/wiki/Special:FilePath/MARAP%C3%89.jpg")}
.img-xingo{background-image:url("https://commons.wikimedia.org/wiki/Special:FilePath/C%C3%A2nion%20Xing%C3%B3.jpg")}
.img-gunga{background-image:url("https://commons.wikimedia.org/wiki/Special:FilePath/Fal%C3%A9sias%20em%20-%20GUNGA%20-%20AL.jpg")}
.tour-body{
  padding:17px;
  display:grid;
  gap:2px;
}
.tour-body i{color:var(--gold)}
.tour-body strong{color:var(--navy);font-size:1.05rem}
.tour-body span{color:var(--muted);font-size:.88rem}

/* Transfers */
.transfer-card{
  background:#fff;
  border:1px solid rgba(6,43,87,.08);
  border-radius:26px;
  box-shadow:0 14px 38px rgba(6,43,87,.10);
  text-align:center;
  transition:.25s;
  overflow:hidden;
}
.transfer-cover{
  height:170px;
  background-size:cover;
  background-position:center;
}
.transfer-content{padding:26px 24px 30px}
.transfer-card:hover{transform:translateY(-7px)}
.transfer-icon{
  width:82px;height:82px;
  display:grid;place-items:center;
  margin:0 auto 18px;
  border-radius:50%;
  background:linear-gradient(135deg,var(--navy),#0a5ea2);
  color:#fff;
  border:5px solid rgba(217,154,25,.25);
  font-size:2.1rem;
}
.transfer-card h3{
  color:var(--navy);
  font-family:"Playfair Display",serif;
  font-size:1.6rem;
}
.transfer-card p{color:var(--muted);margin:0}
.transfer-img-airport{background-image:url("https://commons.wikimedia.org/wiki/Special:FilePath/Aeroporto%20Internacional%20de%20Macei%C3%B3-Zumbi%20dos%20Palmares.jpg")}
.transfer-img-hotel{background-image:url("https://commons.wikimedia.org/wiki/Special:FilePath/Panoramica%20do%20Porto%20de%20Jaragu%C3%A1%20Macei%C3%B3%20Alagoas.jpg")}
.transfer-img-tour{background-image:url("https://commons.wikimedia.org/wiki/Special:FilePath/Maragogi%2C%20Alagoas%2C%20Brazil%20%2851383254672%29.jpg")}

/* Packages */
.package-card{
  min-height:340px;
  border-radius:28px;
  overflow:hidden;
  padding:24px;
  display:flex;
  align-items:flex-end;
  color:#fff;
  background-size:cover;
  background-position:center;
  position:relative;
  box-shadow:0 18px 45px rgba(6,43,87,.15);
}
.package-card::before{
  content:"";
  position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(0,0,0,.08),rgba(2,29,61,.86));
}
.package-card>div{position:relative;z-index:1}
.package-card span{
  color:var(--gold-2);
  font-weight:900;
  text-transform:uppercase;
  font-size:.78rem;
  letter-spacing:.1em;
}
.package-card h3{
  font-family:"Playfair Display",serif;
  font-size:1.9rem;
  margin:5px 0;
}
.package-card p{margin:0;color:rgba(255,255,255,.88)}
.package-casal{background-image:url("https://images.unsplash.com/photo-1516589178581-6cd7833ae3b2?auto=format&fit=crop&w=900&q=85")}
.package-familia{background-image:url("https://images.unsplash.com/photo-1504150558240-0b4fd8946624?auto=format&fit=crop&w=900&q=85")}
.package-lua{background-image:url("https://images.unsplash.com/photo-1506929562872-bb421503ef21?auto=format&fit=crop&w=900&q=85")}
.package-aventura{background-image:url("https://images.unsplash.com/photo-1527631746610-bca00a040d60?auto=format&fit=crop&w=900&q=85")}
.package-fds{background-image:url("https://images.unsplash.com/photo-1517760444937-f6397edcbbcd?auto=format&fit=crop&w=900&q=85")}
.package-ferias{background-image:url("https://commons.wikimedia.org/wiki/Special:FilePath/Praia%20Paju%C3%A7ara%20Macei%C3%B3%2004%202015%203258.JPG")}
.package-milagres{background-image:url("https://commons.wikimedia.org/wiki/Special:FilePath/Beach%20Sao%20Miguel%20Dos%20Milagres%20Alagoas%20%28140207749%29.jpeg")}
.package-maragogi{background-image:url("https://commons.wikimedia.org/wiki/Special:FilePath/Maragogi%2C%20Alagoas%2C%20Brazil%20%2851383254672%29.jpg")}
.carousel-control-pack{width:44px}
.carousel-control-pack.carousel-control-prev{left:-18px}
.carousel-control-pack.carousel-control-next{right:-18px}

/* News */
.news-intro{
  background:#fff;
  border-radius:30px;
  padding:34px;
  box-shadow:var(--shadow);
}
.news-intro h2{
  font-family:"Playfair Display",serif;
  color:var(--navy);
  font-size:2.4rem;
}
.promo-banner{
  min-height:360px;
  height:100%;
  padding:44px;
  display:flex;
  align-items:center;
  color:#fff;
  background-size:cover;
  background-position:center;
  position:relative;
}
.promo-banner::before{
  content:"";
  position:absolute;inset:0;
  background:linear-gradient(90deg,rgba(2,29,61,.90),rgba(2,29,61,.30));
}
.promo-banner>div{position:relative;z-index:1;max-width:520px}
.promo-banner span{
  color:var(--gold-2);
  text-transform:uppercase;
  font-weight:900;
  letter-spacing:.1em;
}
.promo-banner h3{
  font-family:"Playfair Display",serif;
  font-size:3rem;
  margin:8px 0;
}
.promo-verao{background-image:url("https://commons.wikimedia.org/wiki/Special:FilePath/Maragogi%2C%20Alagoas%2C%20Brazil%20%2851383254672%29.jpg")}
.promo-transfer{background-image:url("https://commons.wikimedia.org/wiki/Special:FilePath/C%C3%A2nion%20Xing%C3%B3.jpg")}

/* CTA */
.cta-box{
  background:linear-gradient(135deg,var(--navy),#0b5c9d);
  color:#fff;
  border-radius:36px;
  padding:46px;
  box-shadow:var(--shadow);
  overflow:hidden;
  position:relative;
}
.cta-box::after{
  content:"";
  position:absolute;
  width:280px;height:280px;
  right:-90px;top:-90px;
  border-radius:50%;
  background:rgba(217,154,25,.20);
}
.cta-box h2{
  font-family:"Playfair Display",serif;
  font-size:2.7rem;
  margin:8px 0;
}
.cta-box p{color:rgba(255,255,255,.84);margin:0}

/* Modal */
.cotacao-modal{
  border:0;
  border-radius:32px;
  overflow:hidden;
  box-shadow:0 30px 90px rgba(2,29,61,.28);
}
.modal-close{
  position:absolute;
  right:22px;
  top:22px;
  z-index:5;
}
.modal-brand{
  min-height:100%;
  background:
    linear-gradient(180deg,rgba(2,29,61,.92),rgba(2,29,61,.82)),
    url("https://commons.wikimedia.org/wiki/Special:FilePath/Praia%20Paju%C3%A7ara%20Macei%C3%B3%2004%202015%203258.JPG");
  background-size:cover;
  background-position:center;
  color:#fff;
  padding:46px;
  align-items:end;
}
.modal-brand h3{
  font-family:"Playfair Display",serif;
  font-size:2.4rem;
}
.modal-brand p,.modal-brand li{color:rgba(255,255,255,.86)}
.modal-brand ul{list-style:none;padding:0;margin:24px 0 0;display:grid;gap:10px}
.modal-brand i{color:var(--gold)}
.modal-form{padding:44px}
.modal-form h2{
  color:var(--navy);
  font-family:"Playfair Display",serif;
  font-size:2.4rem;
}
.form-control,.form-select{
  border:1px solid #dde5ef;
  border-radius:16px;
}
.form-control:focus,.form-select:focus{
  border-color:var(--gold);
  box-shadow:0 0 0 .25rem rgba(217,154,25,.15);
}

/* Footer */
.footer{
  background:var(--navy-2);
  color:#fff;
  padding:58px 0 24px;
  border-top:5px solid var(--gold);
}
.footer-logo{
  width:180px;
  height:72px;
  object-fit:contain;
  background:#fff;
  border-radius:18px;
  padding:6px;
  margin-bottom:18px;
}
.footer p{color:rgba(255,255,255,.76)}
.footer h4{font-size:1rem;font-weight:900;color:#fff;margin-bottom:18px}
.footer a{display:block;color:rgba(255,255,255,.78);text-decoration:none;margin:8px 0}
.footer a:hover{color:var(--gold)}
.social-links{display:flex;gap:10px}
.social-links a{
  width:40px;height:40px;
  display:grid;place-items:center;
  border-radius:50%;
  color:#fff;
  background:rgba(255,255,255,.12);
}
.footer-bottom{
  border-top:1px solid rgba(255,255,255,.14);
  margin-top:34px;
  padding-top:20px;
  display:flex;
  justify-content:space-between;
  gap:16px;
  flex-wrap:wrap;
  color:rgba(255,255,255,.68);
}
.footer-bottom a{margin:0;color:#fff}

.whatsapp-float{
  position:fixed;
  right:22px;
  bottom:22px;
  width:60px;height:60px;
  display:grid;place-items:center;
  border-radius:50%;
  background:#25d366;
  color:#fff;
  font-size:1.9rem;
  box-shadow:0 18px 35px rgba(37,211,102,.35);
  z-index:1040;
  text-decoration:none;
}

@media(max-width:991px){
  .brand-logo{width:138px;height:52px}
  .hero-carousel{margin-top:76px}
  .min-vh-hero,.hero-slide{min-height:680px}
  .section-padding{padding:64px 0}
  .tour-img{height:160px}
  .cta-box{padding:32px}
  .modal-form{padding:34px 24px}
}
@media(max-width:575px){
  .hero-title{font-size:2.75rem}
  .hero-text{font-size:1rem}
  .hero-badges span{font-size:.83rem}
  .package-card{min-height:280px}
  .promo-banner{padding:28px;min-height:310px}
  .promo-banner h3{font-size:2.2rem}
}


/* Refinamento mobile premium */
.mobile-cta-bar{
  position:fixed;
  left:12px;
  right:12px;
  bottom:12px;
  z-index:1050;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  padding:10px;
  border-radius:999px;
  background:rgba(255,255,255,.94);
  box-shadow:0 18px 45px rgba(2,29,61,.22);
  backdrop-filter:blur(14px);
}
.mobile-cta-bar .btn{
  min-height:44px;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:.92rem;
  font-weight:900;
}
.btn-whatsapp{
  background:#25d366;
  color:#fff!important;
  font-weight:900;
  box-shadow:0 10px 24px rgba(37,211,102,.30);
}
.btn-whatsapp:hover{
  background:#1fbd5a;
  color:#fff!important;
}
.navbar-toggler{
  padding:.65rem .75rem;
  background:rgba(6,43,87,.05);
  border-radius:14px;
}
.navbar-collapse.show,
.navbar-collapse.collapsing{
  background:#fff;
  border-radius:22px;
  padding:12px;
  margin-top:12px;
  box-shadow:0 20px 45px rgba(6,43,87,.13);
}
.navbar-collapse.show .nav-link,
.navbar-collapse.collapsing .nav-link{
  padding:12px 14px;
  border-radius:14px;
}
.navbar-collapse.show .nav-link:hover{
  background:var(--soft);
}
.navbar-collapse.show .nav-link::after,
.navbar-collapse.collapsing .nav-link::after{
  display:none;
}

@media(max-width:991px){
  body{padding-bottom:82px}
  .top-strip{display:none!important}
  .navbar-rotamar{
    top:0;
    padding:9px 0;
  }
  .navbar-brand{max-width:70%}
  .brand-logo{
    width:128px;
    height:48px;
  }
  .hero-carousel{
    margin-top:70px;
  }
  .min-vh-hero,
  .hero-slide{
    min-height:600px;
  }
  .hero-overlay{
    background:linear-gradient(180deg,rgba(2,29,61,.88),rgba(6,43,87,.62),rgba(6,43,87,.35));
  }
  .hero-content .row{
    align-items:end!important;
    padding-bottom:72px;
  }
  .hero-title{
    font-size:clamp(2.15rem,11vw,3.35rem);
    line-height:1.02;
    margin-bottom:16px;
  }
  .hero-text{
    font-size:1rem;
    max-width:100%;
  }
  .hero-badges{
    gap:8px;
    margin-top:18px;
  }
  .hero-badges span{
    font-size:.78rem;
    padding:8px 10px;
  }
  .hero-content .btn-lg{
    padding:.82rem 1.05rem;
    font-size:.95rem;
  }
  .carousel-control-prev,
  .carousel-control-next{
    width:14%;
  }
  .carousel-control-prev-icon,
  .carousel-control-next-icon{
    width:2.4rem;
    height:2.4rem;
  }
  .carousel-indicators{
    margin-bottom:22px;
  }
  .section-padding{
    padding:56px 0;
  }
  .section-title{
    font-size:clamp(1.85rem,8.5vw,2.55rem);
  }
  .section-heading{
    margin-bottom:24px!important;
  }
  .section-heading .btn{
    width:100%;
  }
  .tour-card{
    border-radius:18px;
  }
  .tour-img{
    height:136px;
  }
  .tour-body{
    padding:13px;
  }
  .tour-body strong{
    font-size:.94rem;
    line-height:1.15;
  }
  .tour-body span{
    font-size:.76rem;
    line-height:1.2;
  }
  .transfer-cover{
    height:150px;
  }
  .transfer-content{
    padding:22px 18px 24px;
  }
  .transfer-icon{
    width:66px;
    height:66px;
    font-size:1.65rem;
    margin-top:-54px;
    position:relative;
    z-index:2;
    box-shadow:0 12px 25px rgba(6,43,87,.22);
  }
  .transfer-card h3{
    font-size:1.35rem;
  }
  .package-card{
    min-height:250px;
    border-radius:22px;
  }
  .package-card h3{
    font-size:1.55rem;
  }
  .carousel-control-pack.carousel-control-prev{
    left:0;
  }
  .carousel-control-pack.carousel-control-next{
    right:0;
  }
  .news-intro{
    padding:26px;
    border-radius:24px;
  }
  .news-intro h2{
    font-size:2rem;
  }
  .promo-banner{
    min-height:315px;
    padding:28px;
    border-radius:24px;
  }
  .promo-banner h3{
    font-size:2.25rem;
  }
  .cta-box{
    border-radius:26px;
    padding:30px 22px;
    text-align:left;
  }
  .cta-box h2{
    font-size:2rem;
  }
  .cta-box .btn{
    width:100%;
  }
  .footer{
    padding-bottom:104px;
  }
  .footer-logo{
    width:150px;
    height:60px;
  }
  .footer-bottom{
    flex-direction:column;
  }
  .whatsapp-float{
    display:none;
  }
}

@media(max-width:575px){
  .container{
    padding-left:18px;
    padding-right:18px;
  }
  .min-vh-hero,
  .hero-slide{
    min-height:570px;
  }
  .hero-content .row{
    padding-bottom:62px;
  }
  .hero-title{
    font-size:2.35rem;
  }
  .hero-badges span:nth-child(3){
    width:100%;
  }
  .tour-img{
    height:124px;
  }
  .tour-body{
    min-height:94px;
  }
  .transfer-card{
    border-radius:22px;
  }
  .package-card{
    min-height:235px;
  }
  .modal-dialog{
    margin:.75rem;
  }
  .cotacao-modal{
    border-radius:24px;
  }
  .modal-close{
    right:16px;
    top:16px;
  }
  .modal-form{
    padding:34px 20px 24px;
  }
  .modal-form h2{
    font-size:2rem;
    padding-right:32px;
  }
  .modal-form p{
    font-size:.92rem;
  }
  .modal-form .form-control-lg,
  .modal-form .form-select-lg{
    min-height:48px;
    font-size:.96rem;
    border-radius:14px;
  }
  .modal-form textarea.form-control-lg{
    min-height:94px;
  }
  .modal-form .btn-lg{
    min-height:50px;
    font-size:.94rem;
  }
}

@media(max-width:380px){
  .hero-title{
    font-size:2.05rem;
  }
  .brand-logo{
    width:116px;
  }
  .mobile-cta-bar{
    left:8px;
    right:8px;
    gap:8px;
  }
  .mobile-cta-bar .btn{
    font-size:.84rem;
    padding-left:8px;
    padding-right:8px;
  }
}
