video.size-full {height: 100%;}

.caption-banner{text-align: center; padding-left: 0px !important; bottom: 150px !important; position: absolute; width: 100%;}
.caption-banner h1 {font-size: 120px; width: 100%; margin-top: -15px;}

.section-intro{height: 70vh;}

.bg-lightturquoise{padding-top: 0px;}

.section-form-reserv{margin-top: -50px; position: relative; z-index: 999999;}

.section-intro .site-button{margin-top: 40px;}

.menu-header-sec ul li a.fab, .header-template ul li a.fab{background: #fff;border-radius: 50%; margin-right: 6px;}

.menu-header-sec .social-logo, .header-template .social-logo{margin-top: 14px; right: 0; position: absolute;}

.menu-header-sec ul.navbar-nav li a, .header-template ul.navbar-nav li a{font-size: 13px; padding: 12px 15px;}

.menu-header-sec ul li a.btn-entrar, .header-template ul li a.btn-entrar{border-radius: 35px; color: #fff; padding: 10px 30px; font-size: 16px; font-weight: 600; top: -2px;}

.menu-header-sec ul li a.btn-entrar i, .header-template ul li a.btn-entrar i{color: #fff; margin-right: 10px; font-size: 16px; position: relative;top: 3px;}

.overlay-video{background: rgba(9, 69, 73, 0.2); height: 70vh;}

.text-aquamist {color: #c9f2f2; padding-left: 0px !important}

.text-quarto-title{font-size: 20px;}

.bloco-promo-index .text-citrusyellow{font-size: 20px; line-height: 17px;}

.bloco-avaliacoes{position: relative;top: -8px;}

.bloco-promo-index .font-medium{font-size: 18px;}
.bloco-promo-index .font-medium span{font-size: 14px;
  font-weight: 800;}
.bloco-promo-index .font-medium .title-promo{font-size: 16px; line-height: 19px; display: block; height: 55px; position: relative; top: -1px;}

.info-alimentacao{margin-bottom: 20px; font-size: 13px; font-style: italic; margin-top: -15px; font-weight: 600; color: var(--color-primary);}

.trv-step-bx1-section p{height: 70px;}

.title-depoimentos-index{font-size: 80px; letter-spacing: 0;}

.bloco-news{z-index: 999999999 !important; position: relative;}

.testimonial-content-sld{margin-bottom: 60px;}

.testimonial-content-sld p{font-size: 20px;height: 180px;}

.telefone-footer a span{font-size: 22px;}

.bloco-index-pe-na-areia{max-width: 90%;}

.img-praia-flutuante{bottom: 4px;}

.header-template .navbar-nav a{font-size: 16px;}

.header-template .navbar-nav a {font-size: 15px; padding: 10px 15px !important;}

.header-template .social-logo {margin-top: 0px; right: 60px;}

.titulo-video {background: linear-gradient(to top, rgba(0, 0, 0, 0.85), transparent); position: absolute; left: 0;  min-width: 100%; min-height: 170px; height: 170px; z-index: 99999999 !important; text-align: center; bottom: 0px; color: #fff; padding-top: 40px;}

.titulo-video h2{color: #c9f2f2}

.titulo-video p{font-size: 16px; font-weight: 600;}

.text-atracao-thumb p{color: #fff; padding: 8px; font-size: 16px; font-weight: 600;}

.bloc-pro{margin-bottom: 60px;}

.dzForm-promos{background-color: #fff;}

.select-items{z-index: 999999999;}

.bloc-pro-form{width: 60%; margin-bottom: 60px; margin-top: -30px;}

.sec-cont-index-acomo{padding: 0 80px;}

.bloco-acomod-detail{width: 80%;}

.altura-header{height: 400px;}

.btn-custom{color: #fff;}

.form-control-admin{background-color: var(--color-white); border-radius: calc(infinity * 1px); border-color: #77a8ad66;  padding: 14px 25px; font-weight: 500;}

table tr th, table tr td{padding: 16px; background: white;}
table tr td.fc-widget-header{background: #0f766e;}
table tr td.fc-widget-header th{background: #0f766e; color: #fff;}
table .fc-body{border: 1px solid #e9e9e9;}
table tr td.fc-past .fc-day-number{opacity: .4;}
table tr td .fc-day-number {
  font-weight: 800 !important;
  font-size: 15px;
}
.avatar-investidor{margin-right: 15px;}

.badge-success, .badge-alert, .badge-danger{padding: 8px 12px; text-align: center; border-radius: 35px; font-weight: 600;}

.badge-success{background-color: #c6f6d5;color: #22543d;}

.badge-alert{color: #7b341e;background-color: #feebc8;}

.badge-danger{color: #742a2a; background-color: #fed7d7;}

.buttons-tabela a{display: inline-block; padding: 5px; margin-left: 10px;}

.buttons-tabela svg{display: inline-block;}

.unidades-cout{width: 36px; height: 35px; text-align: center; border-radius: 50%; padding-top: 7px; background-color: #a9abad40; display: block; font-weight: 600;}

.menu-listado{left: -100px; position: relative; align-items: center; top: -5px;}

.buttons-bottom-card .trv-book{width: 100%; text-align: center; margin-bottom: 10px;}

.buttons-bottom-card .trv-star{width: 100%; text-align: center; min-height: 42px;}

.button-reservar-list{margin-bottom: 15px;}

.button-reservar-list a.titulo-acomo{height: 40px; display: block; font-size: 18px;}

.menu-header-sec ul.navbar-nav li ul.sub-menu a, .header-template ul.navbar-nav li ul.sub-menu a {font-size: 13px; padding: 10px 15px;}

.logo-site{width: 210px; top: -4px;}

@layer utilities {

  .\[\.site-header\.is-fixed\]\:bg-primary {

    &:is(.site-header.is-fixed) {

      background-color: var(--color-primary);

      padding: 0px 0px;

    }

  }

}

.sticky-header{width: 100%; left: 0; border-radius: 0px; height: 85px !important;}

.menu-heig{top: -13px;}

.border-paleaqua label{font-size: 12px; font-weight: 600;}

.custom-select.style-1 .select-selected, .border-paleaqua input{font-size: 15px; width: 100%;}

footer .text-base {font-size: 14px;}

.endereco-footer span, .email-footer a, .telefone-footer a span{font-size: 16px;}

.depoimentos-index h4{font-size: 24px;}

.depoimentos-index{padding-bottom: 0px !important}

h1, h2, h3, h4, h5, h6{line-height: .9;}

.site-button{font-size: 1rem;}

.site-header {

    position: fixed;

    width: 100%;

    z-index: 999;

    transition: transform 0.4s ease, background 0.4s ease;

    top: 0;

}



.site-header.hide-header {

    transform: translateY(-120%);

}



.site-header.show-header {

    transform: translateY(0);

}

.imagem-fundo-depo{width: 375px; height: 375px;}

.bloco-dep-index{width: 70%; margin-left: 15%;}

.testimonial-content-sld-control {

  padding: 0 !important;

  width: auto !important;

  text-align: center !important;

  margin: 0 auto;

  position: relative !important;

  right: inherit !important;

  top: -100px;

}

.flatpickr-day {

    position: relative;

    height: 65px;

    line-height: 24px;

    padding-top: 8px;

}



.calendar-price {

    position: absolute;

    bottom: 0px;

    left: 50%;

    transform: translateX(-50%);

    font-size: 10px;

    font-weight: 600;

    color: #16a34a;

    white-space: nowrap;

}



.flatpickr-calendar {

    border-radius: 20px;

    overflow: hidden;

    box-shadow: 0 10px 40px rgba(0,0,0,.12);

}



.flatpickr-day.selected {

    background: #0f172a;

    border-color: #0f172a;

}



.flatpickr-day {

    position: relative;

    height: 40px !important;

    max-height: 70px !important;

    line-height: 34px !important;

    padding-top: 2px;

}



ce {

    position: absolute;

	bottom: 0px;

	left: 50%;

	transform: translateX(-50%);

	font-size: 10px;

	font-weight: 600;

	color: #a0a0a0;

	white-space: nowrap;

	opacity: 1;

}

.selected .calendar-price{color: #fff;} 

.flatpickr-calendar {

    border-radius: 20px !important;

    overflow: hidden;

    box-shadow: 0 15px 40px rgba(0,0,0,.12);

}



.flatpickr-day.selected {

    background: #1e293b !important;

    border-color: #1e293b !important;

}

.bloco-datas{width: 265px;}

.flatpickr-day.selected.startRange, .flatpickr-day.startRange.startRange, .flatpickr-day.endRange.startRange, {

  border-radius: 10px 0px 0px 10px;

}

.flatpickr-day.selected.endRange, .flatpickr-day.startRange.endRange, .flatpickr-day.endRange.endRange{border-radius: 0 10px 10px 0;}

.flatpickr-day.selected.startRange, .flatpickr-day.startRange.startRange, .flatpickr-day.endRange.startRange {

  border-radius: 10px 0 0 10px;

}

.site-header-template{top: 0 !important;}

.text-atracao-thumb p {font-size: 13px; font-weight: 500;}

footer h3{font-size: 24px;}

.categorys-sobre{padding: 70px 0px;}

.div-imagem-apre{padding: 0px 70px; margin-top: -80px;}

.swiper-horizontal {touch-action: pan-y; padding: 0 40px;}

.segunda-apre-jessika{font-size: 18px; padding-top: 70px; padding-left: 150px; padding-right: 150px; text-align: center;}

.text-number-procces{font-size: 50px; color: #066168; margin-left: 0px;}

.bg-gradi{padding-bottom: 110px;}

.back-planos{padding-bottom: 80px; padding-top: 0px; background: #fff;}

.bloco-plano{padding-top: 30px;}

.dados-count h4{font-size: 20px; height: 40px;}

.btn-cadastro-invest{margin: 0 auto; margin-bottom: 90px; margin-top: -50px;}

.radios-invest input{position: relative; top: 1px;}

.remover-unidade, .remover-data {position: relative;

  display: inline-flex;

  cursor: pointer;

  overflow: hidden;

  border-radius: calc(infinity * 1px);

  border-style: var(--tw-border-style);

  border-width: 0px;

  background-color: #CB0D0D;

  padding-inline: calc(var(--spacing) * 5.5);

  padding-block: calc(var(--spacing) * 2.35);

  font-size: 13px;

  line-height: var(--tw-leading, var(--text-lg--line-height));

  --tw-font-weight: var(--font-weight-medium);

  font-weight: var(--font-weight-medium);

  white-space: nowrap;

  color: #fff;

  --tw-duration: 500ms;

  transition-duration: 500ms;

  --tw-outline-style: none;

  outline-style: none;
  height: 48px !important;
  padding: 12px 24px !important;
  border-radius: 999px !important;
  border: 1px solid #fca5a5 !important;
  background: #fff9f9 !important;
  color: #dc2626 !important;
  font-size: 0.85rem !important;
  cursor: pointer !important;
  top: 0px !important;
}
input[type="file"]::file-selector-button {
  background-color: #fff;
  color: #000;
  border: 0px !important;
  border-right: 0px;
  padding: 10px 10px;
  margin-right: 10px;
  transition: .5s;
  height: 30px !important;
  border-radius: calc(infinity * 1px);
}

.dropzone {

  min-height: 150px;

  border: 1px solid rgb(229, 229, 229);

  background: #fff;

  padding: 20px 20px;

  border-radius: 15px;

  margin-top: 10px;

}
.editar-btn{}
.bloco-resort-index-admin{width: 30%; float: left; margin-right: 15px;}

.dashboard{overflow: hidden;}

.site-header-admin img{width: 82px;}

form label{font-weight: 600;}
form label.label-form{padding-left: 18px;}

#modalReserva{

    position: fixed;

    top: 0;

    left: 0;

    right: 0;

    bottom: 0;



    z-index: 999999999;



    display: none;



    justify-content: center;

    align-items: center;



    background: rgba(0,0,0,.6);

    height: auto;

}



#modalReserva.show, #modalPlanos.show{

    display:flex;

}

#modalReserva .modal-content, #modalPlanos .modal-content{

    width: 100%;

    max-width: 600px;



    background: #fff;

    border-radius: 12px;



    padding: 30px;

    overflow: hidden;



    box-shadow:

        0 20px 25px -5px rgb(0 0 0 / 0.1),

        0 8px 10px -6px rgb(0 0 0 / 0.1);



    animation: modalFade .25s ease;

}



@keyframes modalFade {

    from {

        opacity: 0;

        transform: translateY(-20px);

    }

    to {

        opacity: 1;

        transform: translateY(0);

    }

}

#modalPlanos{

    position: fixed;

    inset: 0;



    z-index: 999999;



    display: none;

    justify-content: center;

    align-items: center;



    background: rgba(0,0,0,.6);

}

#modalPlanos .modal-content {width: 900px; max-width: 900px;}

#modalPlanos ul {columns: 2;}

.iti {display: block !important;}

#add-data, .btn_plano {margin-top: 21px;}

.w-40 {width: 40%;}

.w-20 {width: 20%;}



/*MENU DESTINOS*/

.menu-item{

    position: relative;

}

.submenu-1, .submenu-2{

    display: none;

    position: absolute;

    background: #fff;

    min-width: 250px;

    box-shadow: 0 5px 20px rgba(0,0,0,.15);

    z-index: 999;
    border-radius: 0px;

}



.submenu-1{

    top: 100%;

    left: 0;
}



.submenu-2{

    top: 0;

    left: 100%;

}



.submenu-1 li, .submenu-2 li{

    position: relative;

}



.submenu-1 a, .submenu-2 a{

    display: block;

    padding: 12px 15px;

    color: #066168;

    text-decoration: none;

    white-space: nowrap;
    font-weight: 600;

}



.header-template .navbar-nav .submenu-1 a{padding: 12px 15px !important; color: #2f7b81; font-weight: 600;}



.submenu-1 a:hover, .submenu-2 a:hover{

    background: #f5f5f5;

}



.menu-item:hover > .submenu-1{

    display: block;

}



.submenu-1 li:hover > .submenu-2{

    display: block;

}

/*FIM MENU DESTINOS*/

.bg-red-text-white {color: #fff; background-color: #ff0000;}



/*MENU ACOMODAÇÕES*/

.justify-content-center {

  justify-content: center !important;

}

.acomodacoes-drop {height: 251px;

  bottom: 0;

  position: absolute;

  width: 100%;

  top: 79px;

  background: transparent;

  display: none;

}

.acomodacoes-drop a.box_cat_rooms{

  border-radius: 0px;

  padding: 0px !important;

}

.bloco-dropdown {

  padding: 0px;
  border: 2px solid #fff;

}
@layer utilities {
  .before\:bg-white {
    &::before {
      content: var(--tw-content);
      background-color: transparent !important;
      box-shadow: none !important;
    }
  }
}
.iti--separate-dial-code .iti__selected-flag {
  background-color: rgba(0, 0, 0, 0.05);
  border-top-left-radius: 28px;
  border-bottom-left-radius: 28px;
}
.bloco-dropdown a.box_cat_rooms h3 {

  /*position: absolute;*/
  position: unset;

  color: #fff;

  font-size: .9rem;

  font-weight: 500;

  top: 84%;

  transition: all 0.3s ease;

}

.bloco-dropdown a.box_cat_rooms .imgas:hover h3 {

    transform: translateY(-10px);

}

.bloco-dropdown a.box_cat_rooms .imgas {    

    z-index: 9999999999 !important;

    height: 247px;

    display: flex;

    justify-content: center;

    align-items: center;

}

/*FIM MENU ACOMODAÇÕES*/

.bloco-datas span{bottom: 2px;}
.bloco-datas label{top: 6px;position: relative;}
.div-form-acomod{border: 5px solid #DBEEEE; border-radius: 60px; text-align: center; padding: 10px 40px; padding-top: 13px; width: 70%; margin-left: 15%; margin-top: -76px; background: #fff; position: relative;}
.submit-form-aco{padding-left: 10px; position: absolute; right: 20px;}
.div-form-acomod .border-paleaqua label {
  font-size: 14px;
  font-weight: 600;
  color: #346065;
}
.datas-form-acomo input{font-size: 16px;}
.datas-form-acomo{top: -5px;}
#atracoes h3{font-size: 22px;}
#atracoes i{position: relative; top: 1px; margin-right: 5px;}
.empreendimento-outro{margin-top: 15px;}
.divisao-menu{padding: 3px 14px; color: #066168; font-weight: 600; line-height: 24px; padding-top: 8px;}
.divisao-menu hr{color: #066168;}
.back-planos{padding-top: 80px; padding-bottom: 0px; min-height: 940px; background-size: cover;}
.bloco-plano h4{font-size: 22px}
.bloco-plano li{font-size: 15px}
.bloco-plano li i{top: -3px;}
.bloco-plano span.text-34{font-size: 25px;}
.data-item{padding: 20px;}
.dropzone-custom {
    border: 2px dashed #c7d2fe;
    border-radius: 16px;
    padding: 24px;
    text-align: center;
    background: #f8fafc;
    cursor: pointer;
    transition: all 0.2s;
}
.dropzone-custom.dragover {
    border-color: #4f46e5;
    background: #eef2ff;
}
.dropzone-placeholder p { margin: 6px 0 2px; color: #374151; font-size: 0.92rem; }
.dropzone-placeholder small { color: #9ca3af; }

.dropzone-preview {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 16px;
    justify-content: center;
}
.dropzone-file {
    display: flex;
    align-items: center;
    gap: 8px;
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    padding: 8px 12px;
    font-size: 0.82rem;
    color: #374151;
}
.dropzone-file button {
    border: none;
    background: none;
    color: #dc2626;
    cursor: pointer;
    font-size: 0.9rem;
}
.links-bloco-junto{width: 100%;}
.links-bloco-junto a, .button-reservar-list a.titulo-acomo{display: inline-block !important;}
.button-reservar-list a.site-button{float: right; position: relative; top: -5px;}
.padding-links-bloco-junto{padding-bottom: 1px;}
.acomodacao-nome {height: 58px;}
/* MEGA MENU - Atrações & Acomodações */
.mega-menu {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    width: 100vw;
    max-height: 0;
    overflow: hidden;
    background: #066168;
    z-index: 1000;
    border-radius: 0 0 24px 24px;
    transition: max-height 0.4s ease, padding 0.4s ease;
}
.mega-menu-template{
  background: #fff;
}
.mega-menu-template .mega-menu-item{border:0px;}
.site-header{background-color: #066168}
/* posiciona abaixo do header (ajuste conforme a altura real do seu header) */
.site-header.is-fixed ~ .mega-menu,
.mega-menu {
    top: 82px; /* altura aproximada do header - ajuste se necessário */
}

.mega-menu.is-open {
    display: block;
    max-height: 80vh;
    overflow-y: auto;
    padding: 40px 60px;
}

.mega-menu-inner {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px;
    max-width: 1400px;
    margin: 0 auto;
}

.mega-menu-item {
    display: block;
    border-radius: 20px;
    overflow: hidden;
    text-decoration: none;
    border: 4px solid #356a6e;
}

.mega-menu-img {
    height: 230px;
    background-position: center !important;
    background-size: cover !important;
    background-repeat: no-repeat !important;
    display: flex;
    align-items: flex-end;
    padding: 16px;
    border-radius: 16px;
    transition: transform 0.4s ease;
}

.mega-menu-item:hover .mega-menu-img {
    transform: scale(1.04);
}

.mega-menu-img h3 {
    color: #fff;
    font-size: 18px;
    margin: 0;
    font-weight: 600;
}

.img-principal-resort{width: 100%; height: 600px; border-radius: 16px;}
.img-jessika-main {
  margin-left: 0;
  border-radius: 20px !important;
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow) !important;
}
.header-template .navbar-nav a.mega-menu-item{
  padding: 0px 0px !important;
  border: 6px solid #356a6e14 !important;
}
.dados-bloco-junto p{margin-bottom: 5px;}
.date-card {transition: .2s; position: relative; border-radius: 16px; padding: 18px; background: #fff; box-shadow: 0 4px 12px rgba(0,0,0,.06); width: 23%; margin: 15px 1%; border: 1px solid #c9a45c3d;}
.tag { display: inline-block; padding: 3px 10px; border-radius: 999px; font-size: .75rem; margin-right: 0px; }
.tag-top-right {position: absolute; top: 0; right: 0; background: #c9a45c; color: #fff; border-radius: 0 13px 0 12px;  padding: 6px 14px; font-weight: 600; text-transform: capitalize;}
.tag-neutral {background: #e4ecee; color: #4a6b71; text-transform: uppercase; font-size: .65rem; margin-bottom: 5px;}
.dt { font-weight: 700; margin-top: 8px; }
.yr { font-size: .8rem; color: #5b7a80; }
.preco { font-size: 1.25rem; margin-top: 8px; color: #289c5c; font-weight: 600; }
.preco-obs { font-size: .68rem; color: #5b7a80; font-weight: 600; }
.go { display: inline-block; margin-top: 12px; font-weight: 700; text-decoration: none; }
.ano-btn { border: 1px solid rgba(212,175,106,.5); background: transparent; color: #a9843e; font-weight: 700; padding: 8px 18px; border-radius: 999px; cursor: pointer; margin-left: 5px;}
.ano-ativo { background: #d4af6a; color: #fff; }
.ano-separator { display: flex; align-items: center; gap: 14px; grid-column: 1/-1; margin: 20px 0 4px; width: 100%; }
.ano-label { color: #a9843e; font-size: 1.15rem; }
.ano-line { flex: 1; height: 2px; background: linear-gradient(90deg, rgba(212,175,106,.55), transparent); }

.data-exata .date-card.date-card-destaque{max-width: 30% !important; width: 30% !important; padding-top: 25px !important; border: 2px solid #c9a45c;}
.date-card.date-card-destaque{border: 2px solid #c9a45c;}
.date-card:hover{transform: scale(1.01); transition: .2s;}



.modal-reserva {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.55);
    z-index: 9999;
    align-items: center;
    justify-content: center;
}

.modal-reserva.active {
    display: flex !important;
}
body.modal-aberto {
    overflow: hidden;
}
.modal-reserva__box {
    background: #fff;
    border-radius: 1.25rem;
    width: 100%;
    max-width: 700px;
    margin: 0 16px;
    max-height: 90vh;
    overflow-y: auto;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.2);
}

.modal-reserva__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 24px 28px 0;
}

.modal-reserva__titulo {
    font-size: 1.25rem;
    font-weight: 700;
    color: #1f2937;
    margin: 0;
}

.modal-reserva__close {
    background: none;
    border: none;
    font-size: 1.75rem;
    color: #9ca3af;
    cursor: pointer;
    line-height: 1;
}

.modal-reserva__close:hover {
    color: #4b5563;
}

.modal-reserva__info {
    margin: 16px 28px 0;
    background: #f9fafb;
    border-radius: 0.75rem;
    padding: 12px 16px;
}

.modal-reserva__info-texto {
    margin: 0;
    font-size: 0.9rem;
    color: #374151;
    font-weight: 600;
}

.modal-reserva__form {
    padding: 20px 28px 28px;
}

.form-group {
    margin-bottom: 16px;
}

.form-label {
    display: block;
    font-size: 0.85rem;
    color: #374151;
    margin-bottom: 6px;
}

.form-input {
    width: 100%;
    height: 48px;
    padding: 0 16px;
    border-radius: 999px;
    border: 1px solid #d1d5db;
    font-size: 0.95rem;
    box-sizing: border-box;
}

.form-input:focus {
    outline: none;
    border-color: #66b08c;
    box-shadow: 0 0 0 3px rgba(102, 176, 140, 0.15);
}

.modal-reserva__erro {
    color: #b13535;
    font-size: 0.85rem;
    font-weight: 600;
    margin-bottom: 12px;
    display: none;
}

.modal-reserva__botoes {
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    margin-top: 8px;
}

.btn-cancelar {
    height: 44px;
    padding: 0 24px;
    border-radius: 999px;
    border: 1px solid #e5e7eb;
    background: #fff;
    color: #6b7280;
    font-size: 0.9rem;
    cursor: pointer;
}

.btn-confirmar {
    height: 44px;
    padding: 0 28px;
    border-radius: 999px;
    border: none;
    background: #66b08c;
    color: #fff;
    font-size: 0.9rem;
    font-weight: 600;
    cursor: pointer;
}

.btn-confirmar:disabled {
    opacity: 0.6;
    cursor: not-allowed;
}

.btn-reservar {
    margin-left: 8px;
    background: #66b08c;
    color: #fff;
    border: none;
    border-radius: 999px;
    padding: 8px 20px;
    font-size: 0.85rem;
    cursor: pointer;
}

.btn-reservar:hover {
    background: #559b7a;
}
.modal-reserva__alimentacao {
    margin: 0 0px 20px;
    background: #f0fdfab5;
    border: 1px solid #99d8c9bd;
    border-radius: 1rem;
    padding: 16px;
}

.alimentacao-titulo {
    font-size: 0.95rem;
    font-weight: 700;
    color: #0f766e;
    margin: 0 0 4px;
}

.alimentacao-cambio {
    font-size: 0.75rem;
    color: #6b7280;
    margin: 0 0 12px;
}

.alimentacao-grid {
    display: grid;
    grid-template-columns: 1.4fr 1fr 1fr;
    gap: 10px;
}

.alimentacao-total {
    margin-top: 14px;
    background: #ffffff;
    border-radius: 0.75rem;
    padding: 12px 16px;
    font-size: 0.9rem;
    color: #1f2937;
    border: 1px solid #d1fae5;
}

.alimentacao-total strong {
    color: #0f766e;
    font-size: 1.05rem;
}

.modal-reserva__resumo {
    margin: 16px 28px 0;
    background: #f0fdfa;
    border: 1px solid #99d8c9;
    border-radius: 1rem;
    padding: 16px 18px;
}

.resumo-linha {
    display: flex;
    align-items: center;
    gap: 8px;
}

.resumo-destaque {
    margin-bottom: 14px;
    padding-bottom: 12px;
    border-bottom: 1px dashed #99d8c9;
}

.resumo-icone {
    font-size: 1.1rem;
}

.resumo-valor {
    font-size: 1rem;
    font-weight: 700;
    color: #0f766e;
}

.resumo-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
}

.resumo-item {
    display: flex;
    flex-direction: column;
}

.resumo-label {
    font-size: 0.7rem;
    font-weight: 600;
    color: #6b7280;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    margin-bottom: 2px;
}

.resumo-dado {
    font-size: 0.9rem;
    font-weight: 600;
    color: #1f2937;
}

.resumo-item-valor {
    grid-column: 1 / -1;
    background: #ffffff;
    border-radius: 0.6rem;
    padding: 8px 12px;
    margin-top: 2px;
    border: 1px solid #d1fae5;
}

.resumo-preco {
    font-size: 1.15rem;
    color: #0b7d3e;
    font-weight: 800;
}
.alimentacao-titulo-linha {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 8px;
}

.btn-ver-tabela {
    background: #0f766e;
    color: #fff;
    border: none;
    border-radius: 0.6rem;
    padding: 6px 12px;
    font-size: 0.75rem;
    font-weight: 700;
    cursor: pointer;
    white-space: nowrap;
}

.btn-ver-tabela:hover {
    background: #0b7d3e;
}

.modal-tabela__box {
    max-width: 480px;
}

.tabela-subtitulo {
    font-size: 0.75rem;
    color: #6b7280;
    margin: 0 28px 12px;
}

.tabela-valores {
    width: calc(100% - 56px);
    margin: 0 28px 20px;
    border-collapse: collapse;
    font-size: 0.85rem;
}

.tabela-valores thead tr {
    background: #0f766e;
    color: #fff;
}

.tabela-valores th, .tabela-valores td {
    padding: 8px 10px;
    text-align: left;
}

.tabela-valores tbody tr:nth-child(even) {
    background: #f0fdfa;
}
.tabela-valores th{background: #066168;}
.tabela-valores tr td {background: inherit;}
#modalTabelaValores, #modalTabelaValoresTransfer {
    z-index: 10000; /* acima do modalReserva */
}

#modalReserva {
    z-index: 9999;
}
.titulo-video .badges {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 20px;
}
.titulo-video .badge {
  background: rgba(79, 199, 24, 0.12);
  border: 1px solid rgba(133, 210, 0, 0.35);
  backdrop-filter: blur(4px);
  padding: 7px 14px;
  border-radius: 999px;
  font-size: .82rem;
  font-weight: 600;
  color: #fff;
}
.titulo-resort-main h3{font-size: 18px; line-height: 22px; text-align: center; padding: 0 100px;}
.foto-resort-int{background-position: center; background-size: cover; background-repeat: no-repeat; height: 280px;}
.foto-resort-int a{  position: absolute; height: 100%; top: 0; width: 100%; left: 0;}
.titulo-prin-resort{margin-bottom: 70px;}
.btn-ver-datas{text-align: center; margin-top: 30px;}
.categorys-sobre .trv-mini-card__body{}
















/* RESPONSIVO */
@media (max-width: 1400px) {
    .mega-menu-inner {
        grid-template-columns: repeat(3, 1fr);
    }
    .trv-popular-tours-row img{height: 240px !important;}
    .trv-popular-tours-row h3{font-size: 19px !important;}
    .trv-popular-tours-row .padding-links-bloco-junto{padding: 15px !important;}
    .trv-popular-tours-row .dados-bloco-junto p {margin-bottom: 5px; height: 35px;}
    .button-reservar-list a.site-button{display: block; width: 100%; text-align: center;}
    .trv-step-bx1-section .font-title{height: 45px; line-height: 20px;}
}

@media (max-width: 1200px) {
    .mega-menu-inner {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 900px) {
    .mega-menu-inner {
        grid-template-columns: repeat(2, 1fr);
    }
    .mega-menu.is-open {
        padding: 24px;
    }
}

/* Reset geral: no mobile, submenus ficam em fluxo normal (accordion) */
@media (max-width: 1023.98px) {
    .submenu-1,
    .submenu-2,
    .acomodacoes-drop,
    .mega-menu {
        position: static !important;
        display: none; /* escondido até clicar */
        width: 100% !important;
        opacity: 1 !important;
        visibility: visible !important;
        transform: none !important;
        box-shadow: none !important;
        background: #f7f7f7 !important;
        padding-left: 1rem;
    }

    /* Quando o item estiver "aberto" via JS */
    .menu-item.open > .submenu-1,
    .menu-item.open > .submenu-2,
    .open .acomodacoes-drop,
    .open .mega-menu {
        display: block !important;
    }

    .submenu-2 {
        padding-left: 1.5rem;
    }

    /* Gira o ícone de seta quando abrir */
    .menu-item.open > a .fa-chevron-right {
        transform: rotate(90deg);
        transition: transform 0.2s;
    }
}


@media (max-width: 640px) {
    .mega-menu-inner {
        grid-template-columns: 1fr;
    }
    .mega-menu-img {
        height: 160px;
    }
    .mega-menu.is-open {
        top: 80px;
        max-height: calc(100vh - 80px);
    }
    .caption-banner h1 {font-size: 60px;}
    .bloco-datas {width: 100%;}
    .sec-cont-index-acomo {padding: 0 20px;}
    .trv-we-off-content{margin-top: 50px;}
    .trv-step-bx1-wrap{padding-top: 50px;}
    .bloco-news{margin-top: 50px;}
    .overlay-video{height: 60vh;}
    .section-intro {height: 60vh;}
    .menu-heig {top: 6px;}
    .xmenu-toggler{position: absolute;right: 10px; top: -7px;}
    .header-nav.show {width: 90%;}
    .menu-listado {left: 0;}
    .menu-header-sec .social-logo, .header-template .social-logo {margin-top: 0px; bottom: 0; position: absolute;margin-bottom:  width: 94%;}
    .show-submenu-atracoes{display: none !important;}
    .menu-header-sec img.object-contain, .header-template img.object-contain{height: 45px; margin: 0 auto;}
    .titulo-video{height: auto; padding-bottom: 25px;}
    .titulo-video .badge{margin-left: 10px;}
    .titulo-video .badges {gap: 7px;}
    .titulo-resort-main h3 {font-size: 17px; line-height: 22px; text-align: center; padding: 0 20px;}
    .date-card{width: 100%;}
    #anoSel span{display: block; width: 100%; margin-top: 30px; margin-bottom: 12px;}
    .ano-btn{margin-bottom: 6px;}
    .alimentacao-grid {display: grid; grid-template-columns: 1fr; gap: 0px;}
    .title-depoimentos-index {font-size: 22px;}
    .testimonial-content-sld p {font-size: 14px; height: auto; text-align: center;}
    .testimonial-content-sld .swiper-button-next {top: -125px !important; right: -20px;}
    .testimonial-content-sld .swiper-button-prev {top: -125px !important; left: -20px;}
    .text-citrusyellow {color: var(--color-citrusyellow); text-align: center;}



}










/*CSS ADMIN*/

.w-25-inb {display: inline-block; width: 30%; margin-bottom: 12px; padding: 0.25rem 1rem;}

input[type=file]::file-selector-button {background-color: #fff;color: #000;border: 0px;border-right: 1px solid #e5e5e5;padding: 10px 24px;margin-right: 20px;transition: .5s;height: 56px;border-radius: calc(infinity * 1px);}

input[type=file]::file-selector-button:hover {background-color: #eee;border: 0px;border-right: 1px solid #e5e5e5;}

#id01, #erroCampos{display: block;color: #fff;font-size: 16px;margin-top: 10px;background-color: #a8cf45;width: 100%;padding: 14px;border-radius: 12px;}

/*FIM CSS ADMIN*/


.linha-diarias-valor {
    flex-basis: 100%;
    display: flex;
    gap: 12px;
    margin-top: 8px;
    flex-wrap: wrap;
}

.campo-diaria {
    flex: 1;
    min-width: 140px;
}

@media (max-width: 767px) {
    .flex.flex-wrap.-mx-2 > div,
    .flex.flex-wrap.p-4 > div {
        width: 100% !important;
    }

    .data-item {
        flex-direction: column;
        align-items: stretch !important;
    }

    .data-item > div {
        width: 100% !important;
        min-width: 0 !important;
    }

    .titulo-video h2 span {
        font-size: 32px !important;
    }
    .linha-diarias-valor {
        flex-direction: column;
        gap: 12px;
    }

    .campo-diaria {
        width: 100%;
        min-width: 0;
    }
}
