@charset "utf-8";
/*
  Learning Experience — home
  Base: CSS do tema "learning-exp" (Iunique Studio) + reset original.
  Slider (Smart Slider 3) e carrossel de depoimentos (Owl) reescritos sem dependências.

  Cores: #333333 texto · #003773 azul · #b72e2d vermelho · #f7f7f7 cinza bg · #dcdcdc borda
*/

@font-face {
  font-family: 'Better Times';
  src: url('assets/fonts/better_times_alt.woff') format('woff');
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

/* ---------- RESET ---------- */
* {margin: 0; padding: 0;}
*:not(.container), input {box-sizing: border-box;}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {display: block;}
blockquote, q {quotes: none;}
table {border-collapse: collapse; border-spacing: 0;}
button {font: inherit;}

/* clearfix */
.clearfix::after {content: ''; display: block; clear: both; visibility: hidden; line-height: 0; height: 0;}

/* ---------- BASE ---------- */
html {font-size: 62.5%;}
body {background: url('assets/img/bg-topo_2.png') repeat-x center top; font-family: 'Open Sans', Helvetica, sans-serif; text-rendering: optimizeLegibility; -webkit-font-smoothing: antialiased; color: #333333; animation: page-fade-in 1.5s ease;}
header, aside, footer {font-size: 1.5rem;}

@keyframes page-fade-in {from {opacity: 0;} to {opacity: 1;}}
@keyframes fade-in {from {opacity: 0;} to {opacity: 1;}}

.container {max-width: 1300px; padding: 0 25px; margin: auto;}

a {text-decoration: none; cursor: pointer; color: inherit;}
nav ul li {list-style: none; display: inline;}

h1 {font-size: 2.6rem;}
h2 {font-size: 2.4rem;}
h3 {font-size: 2.2rem;}
h4 {font-size: 2.0rem;}
h5 {font-size: 1.8rem;}
h6 {font-size: 1.6rem;}


/* ---------- HEADER ---------- */
header#topo {width: 100%; padding-top: 35px; padding-bottom: 30px;}

header #logo {text-align: left; float: left;}
header #logo a {display: inline-block;}
header #logo img {max-width: 100%; height: auto; display: block; margin: auto; transition: .5s;}
header #logo:hover img {opacity: 0.8;}

header #menu-social-busca {float: right; margin-top: 25px; display: flex;}

header #menu-principal {text-align: right; font-size: 1.5rem; font-family: Poppins; font-weight: 600; color: #000; margin-right: 40px;}
header #menu-principal ul.menu > li {display: inline-block; margin-left: 40px; position: relative;}
header #menu-principal ul.menu > li:first-child {margin-left: 0;}
header ul.menu li a {display: inline-block; vertical-align: middle; transition: .5s; color: #000;}
header ul.menu li:not(.current-menu-item) > a:hover {color: #003773;}
body:not(.home) header ul.menu li.current-menu-item > a {color: #003773;}
header .abre-menu {display: none; font-size: 17px; cursor: pointer;}

header .social {font-size: 16px; text-align: right; display: inline-block;}
header .social a {color: #000; margin-right: 20px;}
header .social a:hover {color: #b72e2d;}
header .social a:last-child {margin-right: 0;}
header .social > * {display: inline-block; vertical-align: middle;}


/* ---------- HERO SLIDER ---------- */
/* Base 1300×770; tudo escala pela largura (cqw), como no Smart Slider */
#slider {width: 100%; background: #fff; margin-bottom: 80px; position: relative; container-type: inline-size;}

/* altura proporcional à largura (1300×770), limitada a 600px; aspect-ratio + max-height encolheria a largura */
.hero {position: relative; height: min(600px, 100cqw * 770 / 1300); overflow: hidden; container-type: inline-size; user-select: none; -webkit-user-select: none; touch-action: pan-y;}

.hero-slide {position: absolute; inset: 0; opacity: 0; visibility: hidden; z-index: 1; transition: opacity 2s cubic-bezier(.25, .46, .45, .94), visibility 0s 2s;}
.hero-slide.is-active {opacity: 1; visibility: visible; z-index: 2; transition: opacity 2s cubic-bezier(.25, .46, .45, .94);}

/* enquanto /api/youtube carrega */
.hero.is-loading {background: #0b1220;}

/* vídeo 16:9 recortado para cobrir o slide em qualquer proporção (como object-fit: cover) */
.hero-video {position: absolute; inset: 0; background: #000; overflow: hidden; container-type: size;}
/* capa fica por cima do iframe e só some depois que o ícone de play do YouTube desaparece (ver script.js) */
.hero-cover {position: absolute; inset: 0; z-index: 1; display: block; width: 100%; height: 100%; object-fit: cover; transition: opacity .6s;}
.hero-video iframe {position: absolute; top: 50%; left: 50%; width: max(100cqw, 100cqh * 16 / 9); height: max(100cqh, 100cqw * 9 / 16); transform: translate(-50%, -50%) scale(1.02); border: 0; pointer-events: none;}
.hero-video.is-revealed .hero-cover {opacity: 0;}
/* película escura sobre vídeo e capa, abaixo do texto (.hero-content, z-index 3) */
.hero-video::after {content: ''; position: absolute; inset: 0; z-index: 2; background: rgba(0, 0, 0, 0.2); pointer-events: none;}

/* título e subtítulo vêm do vídeo (tamanho variável): coluna centralizada, título em até 2 linhas */
.hero-content {position: absolute; inset: 0; z-index: 3; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: calc(100cqw * 19 / 1300); padding: 0 calc(100cqw * 60 / 1300); text-align: center; pointer-events: none;}
.hero-content a {pointer-events: auto;}
.hero-title,
.hero-sub {display: block; max-width: calc(100cqw * 868 / 1300); text-shadow: none;}
.hero-title {font-family: 'Better Times'; font-weight: normal; font-size: calc(100cqw * 80 / 1300); line-height: 1.1; padding: .12em 0; color: #fff; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden;}
.hero-sub {font-family: Poppins; font-weight: 600; font-size: calc(100cqw * 24 / 1300); line-height: 1.3; letter-spacing: 2px; color: rgba(255, 255, 255, 0.82);}
.hero-sub:empty {display: none;}

/* setas: aparecem com o mouse sobre o slider; em telas de toque ficam sempre visíveis */
.hero-arrow {position: absolute; top: 50%; z-index: 5; width: 30px; height: 30px; padding: 2px; margin-top: -15px; border: 0; border-radius: 3px; cursor: pointer; background: rgba(0, 0, 0, 0.67); opacity: 0; transition: opacity .4s, background .3s;}
.hero:hover .hero-arrow {opacity: 1;}
.hero-arrow img {display: block; width: 100%; height: 100%; opacity: .8; transition: opacity .3s;}
.hero-arrow:hover {background: rgba(1, 173, 211, 0.85);}
.hero-arrow:hover img {opacity: 1;}
.hero-arrow--prev {left: 15px;}
.hero-arrow--next {right: 15px;}
@media (hover: none) {
  .hero-arrow {opacity: 1;}
}


/* ---------- FUNDOS FIXOS (parallax) ---------- */
.fixed-bg {min-height: 460px; background-size: cover; background-attachment: fixed; background-repeat: no-repeat; background-position: center center; position: relative;}
.fixed-bg::before {content: ''; background: rgba(56, 56, 56, 0.5); position: absolute; width: 100%; min-height: inherit;}
.fixed-bg.bg1 {background-image: url('assets/img/img1_2.jpg');}
.fixed-bg.bg2 {background-image: url('assets/img/img2_2.jpg');}


/* ---------- BOTÃO ---------- */
.btn {background: linear-gradient(to right, #b72e2d 50%, transparent 50%) repeat scroll right bottom / 200% 100% transparent; font-size: 1.2rem; font-family: Poppins; letter-spacing: 1px; text-transform: uppercase; font-weight: 600; padding: 12px 22px; border: 1px solid #b72e2d; transition: .5s;}
.btn:hover {background-position: left bottom; color: #fff;}
.fill-right {overflow: hidden; position: relative; z-index: 2; transition: color 1s ease;}


/* ---------- DIFERENCIAIS ---------- */
#list {padding-bottom: 80px;}
#list .list-items {display: flex; flex-wrap: nowrap; justify-content: space-between; gap: 30px;}
#list .item {flex: 1 1 0;}
#list .item img.icon {display: table; width: 70px; height: 70px; object-fit: contain; margin: 0 auto 10px;}
#list .item .texto {text-align: center;}
#list .item .texto h3.titulo {font-size: 3.2rem; font-family: 'Better Times'; font-weight: 400; color: #003773; margin-bottom: 8px;}
#list .item .texto p {font-size: 1.5rem; line-height: 1.4;}


/* ---------- DESTINOS ---------- */
#destinos {position: relative;}
#destinos .texto {text-align: center; color: #fff; padding-top: 55px; padding-right: 25px; padding-left: 25px; max-width: 830px; position: relative; margin: auto;}
#destinos .texto h1 {font-size: 4rem; font-family: Poppins; letter-spacing: -1px; font-weight: 600; line-height: 1; margin-bottom: 20px;}
#destinos .texto p {font-size: 1.8rem; margin: 5px 0 0;}
#destinos .destinos-list {position: relative; margin-top: -260px;}
#destinos .destinos-list .container {background: #fff; padding: 40px 30px 50px;}
#destinos .destinos-kicker {font-family: 'Better Times'; font-size: 3.2rem; color: #003773; text-align: center; margin: 0 0 25px;}
#destinos .destinos-cidades {display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; list-style: none; margin: 0; padding: 0;}
#destinos .destino {display: inline-flex; align-items: center; gap: 8px; padding: 8px 16px; background: #fff; border: 1px solid #e5e5e5; border-radius: 999px; white-space: nowrap; cursor: default; transition: background-color .3s;}
#destinos .destino:hover {background: #f5f5f5;}
#destinos .destino--sonho {border-style: dashed; border-color: #ccc;}
#destinos .destino-bandeira {font-family: 'Noto Color Emoji', sans-serif; font-size: 1.8rem; line-height: 1;}
#destinos .destino-cidade {font-family: Poppins; font-weight: 600; font-size: 1.5rem; color: #000;}
#destinos .destino-pais {font-size: 1.3rem; color: #777;}
#destinos .pais-curto {display: none;}
#destinos .destinos-mais {display: none; margin: 25px auto 0; color: #000; cursor: pointer;}


/* ---------- NOVIDADES ---------- */
#galeria-grupos {background: #f7f7f7; padding-top: 80px; padding-bottom: 60px;}
#galeria-grupos .texto, .section-title {text-align: center; color: #000; max-width: 670px; margin: auto; padding-bottom: 50px;}
#galeria-grupos .texto h1, .section-title h1 {font-size: 4rem; font-family: Poppins; letter-spacing: -1px; font-weight: 600; line-height: 1; margin-bottom: 20px;}
#galeria-grupos .texto p, .section-title p {font-size: 1.8rem; margin: 5px 0 0; font-weight: 300;}
#galeria-grupos a.btn {display: table; margin: 40px auto 0;}
#galeria-grupos a.btn:hover {color: #fff;}


/* ---------- DEPOIMENTOS ---------- */
#depoimentos {position: relative;}
#depoimentos .fixed-bg::before {background: rgba(141, 54, 54, 0.8);}
#depoimentos .texto {text-align: left; color: #fff; padding-top: 110px; position: relative; width: 26.7%; margin-left: 10%;}
#depoimentos .texto h1 {font-size: 8rem; font-family: 'Better Times'; font-weight: 400;}
#depoimentos .texto p {font-size: 1.8rem; line-height: 23px; font-family: Poppins; font-weight: 600;}

#depoimentos .area-depo {position: absolute; width: 100%; top: 110px;}

#depoimentos .grid-depo {background: #fff; width: 60%; max-height: 440px; overflow: hidden; float: right; padding: 0; position: relative;}
#depoimentos .grid-depo .item {position: relative;}
#depoimentos .grid-depo .item > * {position: relative; z-index: 2;}
#depoimentos .grid-depo .item img {display: block; width: 100%; max-width: 222px; margin: 0; position: relative; z-index: 3; float: left; margin-right: 45px;}
#depoimentos .grid-depo .item .conteudo {max-width: 100%; margin: 0; padding-top: 0; padding-right: 50px; min-height: 250px; overflow: hidden;}
#depoimentos .grid-depo .item h4.nome {font-size: 2rem; font-family: Poppins; letter-spacing: -1px; font-weight: 700; display: inline-block; padding: 45px 0 20px;}
#depoimentos .grid-depo .item .conteudo p {font-size: 13px; line-height: 1.5; text-align: left; color: #000; font-family: 'Open Sans'; font-weight: 300; width: 100%;}

/* carrossel (substitui Owl Carousel: 1 item, loop, 250ms) */
.carousel-viewport {overflow: hidden; position: relative; transition: height .25s ease;}
.carousel-track {display: flex; align-items: flex-start;}
.carousel-track.is-animating {transition: transform .25s ease;}
.carousel-track > .item {flex: 0 0 100%; min-width: 0;}

#depoimentos .owl-dots {position: absolute; bottom: 45px; right: 50px; z-index: 5;}
#depoimentos .owl-dot {width: 10px; height: 10px; border-radius: 50%; margin-left: 10px; display: inline-block; background: #003773; border: 0; padding: 0; cursor: pointer; vertical-align: middle;}
#depoimentos .owl-dot.active {background: transparent; border: 2px solid #003773;}


/* ---------- CONTATO ---------- */
#contato {background: #f7f7f7; color: #333333; padding-top: 170px; padding-bottom: 80px;}
#contato .container {display: flex; flex-wrap: nowrap; justify-content: space-between;}
#contato h1 {font-size: 4rem; line-height: 1; font-family: Poppins; letter-spacing: -1px; font-weight: 600; color: #000; margin-bottom: 20px;}
#contato p {font-size: 1.5rem; line-height: 22px; text-align: left; position: relative;}
#contato .social {text-align: left;}
#contato .social a.fa {display: table; font-size: 15px; color: #333; margin-bottom: 12px;}
#contato .social a.fa::before {width: 25px; display: inline-block; transition: .5s;}
#contato .social a.fa:hover::before {color: #b72e2d;}
#contato .social a.fa p {font-family: 'Open Sans'; display: inline-block;}
#contato .item {width: 23.1%; margin-right: 4%;}
#contato .item:first-child {width: 44%; margin-right: 8%;}
#contato .item:last-child {flex-grow: 1; margin-right: 0;}

.form {width: 60%; float: right;}
.page .form .wpcf7::after {content: ''; display: table; clear: both;}
.page .wpcf7 br {display: none;}
.page .wpcf7 input, .page .wpcf7 select {width: 100%; margin-bottom: 15px; font-size: 1.4rem; color: #333;}
.page .wpcf7 input[type=submit] {width: auto; border: none; margin-top: 10px; margin-bottom: 0; font-size: 1.5rem; font-weight: 600; font-family: Poppins; letter-spacing: -1px; background: #003773; color: #fff; padding: 12px 60px; display: inline-block; transition: .5s;}
.page .wpcf7 input[type=submit]:hover {background: #b72e2d; color: #fff; padding: 12px 70px;}
.wpcf7-spinner {visibility: hidden; display: inline-block; position: relative; width: 24px; height: 24px; margin: 0 24px;}


/* ---------- FOOTER ---------- */
footer {background: #003773; color: #fff; position: relative;}
footer .container {display: flex; justify-content: space-between; align-items: flex-end; gap: 40px;}
footer img.desenho {display: block; max-width: 340px; height: auto;}
footer #creditos {display: flex; align-items: center; gap: 30px; max-width: 520px; padding: 40px 0;}
footer #creditos img.mini {flex-shrink: 0;}
footer #creditos p {font-size: 1.3rem;}
footer #creditos img.iunique {margin: 4px 0 0 1px; display: inline-block; vertical-align: middle;}


/* ---------- PÁGINAS INTERNAS ---------- */
.headerpage {margin-bottom: 40px;}
.headerpage h2.titulo {text-align: center; font-size: 4rem; font-family: Poppins; letter-spacing: -1px; font-weight: 600;}

body.page .principal.container {max-width: 1200px; background: #fff; padding: 45px;}

article {font-size: 1.5rem; line-height: 1.5; text-align: justify;}
article p {margin-bottom: 30px;}
article p:last-child {margin: 0;}
article h1, article h2, article h3, article h4 {margin-top: 10px; margin-bottom: 15px; line-height: 1.5; text-align: left;}
article img {max-width: 100%; height: auto; display: block; margin-bottom: 20px;}

/* WPBakery (js_composer): só as regras usadas */
.vc_row {margin-left: -15px; margin-right: -15px;}
.vc_row::before, .vc_row::after {content: ' '; display: table;}
.vc_row::after {clear: both;}
.vc_column_container {width: 100%; min-height: 1px;}
.vc_column_container > .vc_column-inner {padding-left: 15px; padding-right: 15px; width: 100%;}
.vc_column-inner::before, .vc_column-inner::after {content: ' '; display: table;}
.vc_column-inner::after {clear: both;}
.vc_clearfix::before, .vc_clearfix::after {content: ' '; display: table;}
.vc_clearfix::after {clear: both;}
.wpb_content_element {margin-bottom: 35px;}
.vc_custom_1535686463676 {margin-top: 10px !important;}
.vc_custom_1535686822959 {margin-top: -30px !important; margin-bottom: 0 !important;}

.vc_row h2 {margin-top: 10px; color: #003773; font-size: 30px; letter-spacing: -1px;}
.vc_row h3 {text-transform: uppercase; letter-spacing: 1px; font-size: 16px; background: #003773; color: #fff; padding: 10px 18px; margin-top: 0;}

.vc_separator {display: flex; align-items: center;}
.vc_separator .vc_sep_holder {height: 1px; position: relative; flex: 1 1 auto; min-width: 10%;}
.vc_separator .vc_sep_holder .vc_sep_line {height: 1px; border-top: 1px solid #ebebeb; display: block; position: relative; top: 1px; width: 100%;}
.vc_separator.vc_separator_no_text .vc_sep_holder_l {display: none;}

.wpb_single_image.vc_align_center {text-align: center;}
.wpb_single_image .vc_figure,
.wpb_single_image .vc_single_image-wrapper {display: inline-block; vertical-align: top; max-width: 100%; margin: 0;}
.wpb_single_image img {vertical-align: top; max-width: 100%; height: auto; margin-bottom: -10px !important;}

@media (min-width: 768px) {
  .vc_column_container {float: left;}
  .vc_col-sm-4 {width: 33.33333333%;}
  .vc_col-sm-6 {width: 50%;}
  .vc_col-sm-8 {width: 66.66666667%;}
  .vc_col-sm-12 {width: 100%;}
}

/* animações ao rolar (animate.css via WPBakery) */
.wpb_animate_when_almost_visible {opacity: 0;}
.wpb_animate_when_almost_visible.wpb_start_animation {opacity: 1; animation-duration: 1s; animation-fill-mode: both;}
.wpb_start_animation.wpb_fadeIn {animation-name: fadeIn;}
.wpb_start_animation.wpb_fadeInLeft {animation-name: fadeInLeft;}
.wpb_start_animation.wpb_fadeInRight {animation-name: fadeInRight;}
@keyframes fadeIn {from {opacity: 0;} to {opacity: 1;}}
@keyframes fadeInLeft {from {opacity: 0; transform: translate3d(-100%, 0, 0);} to {opacity: 1; transform: none;}}
@keyframes fadeInRight {from {opacity: 0; transform: translate3d(100%, 0, 0);} to {opacity: 1; transform: none;}}
@media (prefers-reduced-motion: reduce) {
  .wpb_animate_when_almost_visible {opacity: 1; animation: none !important;}
}


/* ---------- GALERIA ---------- */
.galeria-grid {display: grid; grid-template-columns: repeat(3, 1fr); gap: 30px;}
.galeria-item {position: relative; aspect-ratio: 1; overflow: hidden; background: #f7f7f7;}
.galeria-item img {display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .5s, opacity .5s;}
.galeria-item:hover img {transform: scale(1.04); opacity: .9;}
.galeria-titulo {position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 90%; text-align: center; font-family: 'Better Times'; font-size: 3.6rem; line-height: 1.3; color: #fff; text-shadow: 0 0 12px rgba(0, 0, 0, 0.85), 0 0 4px rgba(0, 0, 0, 0.6); pointer-events: none;}

@media screen and (max-width: 800px) {
  .galeria-grid {grid-template-columns: repeat(2, 1fr); gap: 20px;}
  .galeria-titulo {font-size: 3rem;}
  #galeria-grupos .galeria-grid {grid-template-columns: repeat(3, 1fr); gap: 10px;}
  #galeria-grupos .galeria-titulo {font-size: 2rem;}
}

@media screen and (max-width: 480px) {
  .galeria-grid,
  #galeria-grupos .galeria-grid {grid-template-columns: 1fr; gap: 20px;}
  #galeria-grupos .galeria-titulo {font-size: 3rem;}
  #destinos .destinos-cidades {gap: 6px;}
  #destinos .destino {gap: 5px; padding: 6px 10px;}
  #destinos .destino-bandeira {font-size: 1.3rem;}
  #destinos .destino-cidade {font-size: 1.2rem;}
  #destinos .destino-pais {font-size: 1.1rem;}
}


/* ---------- FORMULÁRIOS ---------- */
input[type=text],
input[type=email],
input[type=tel],
input[type=number],
input[type=date],
textarea {width: 100%; min-height: 45px; padding: 10px 15px; background: transparent; border: 1px solid #dcdcdc; font-family: inherit; outline: none; -webkit-appearance: none; transition: .3s;}
input[type=submit] {cursor: pointer; -webkit-appearance: none; -webkit-border-radius: 0;}
input[type=text]:focus,
input[type=email]:focus,
input[type=tel]:focus,
textarea:focus {border: 1px solid #a6a6a6;}
textarea {font-family: inherit; font-size: 1.4rem; color: #333; padding: 10px 15px; resize: vertical;}
*:focus {outline: none;}
form input, form textarea, form button {-webkit-border-radius: 0;}
::placeholder {color: #BABABA;}


/* ---------- RESPONSIVO ---------- */
@media screen and (max-width: 1210px) {
  #depoimentos .texto {margin-left: 0;}
  #depoimentos .grid-depo {width: 70%;}
}

@media screen and (max-width: 1140px) {
    }

@media screen and (max-width: 1060px) {
  #depoimentos .texto {text-align: center; width: 100%; padding-top: 30px;}
  #depoimentos .area-depo {position: relative; top: 0; margin-top: -26%;}
  #depoimentos .grid-depo {width: 100%;}
  #contato {padding-top: 80px;}
}

@media screen and (max-width: 960px) {
  header #logo {max-width: 160px; float: none;}
  header #menu-principal {float: none; clear: both; margin: 0; text-align: center;}
  header #menu-principal > div {display: none; width: 100%;}
  header #menu-principal > div.is-open {display: block;}
  header #menu-principal ul.menu {background: #fff; padding: 5px 20px;}
  header #menu-principal ul.menu > li {display: block; margin: 0;}
  header ul.menu li a {display: block; padding: 10px 0;}
  header ul.menu li:last-child a {border: 0;}
  header #menu-principal .abre-menu {display: block; position: absolute; right: 25px; top: 50px;}
  header #menu-social-busca {float: none; margin: 10px 0 -15px; display: block;}
  .social-busca {position: absolute; right: 70px; top: 50px;}
  #list {background: #fff; padding-top: 40px;}
  #list .container {max-width: 800px;}
  #list .list-items {display: block;}
  #list .item {width: 100%; display: flex;}
  #list .item + .item {margin-top: 40px;}
  #list .item img.icon {margin: 0 20px 0 0; flex-shrink: 0;}
  #list .item .texto {text-align: left;}
  #list .item .texto h3.titulo {margin-bottom: 0;}
  #depoimentos .area-depo {margin-top: -35%;}
  #contato .container {flex-wrap: wrap;}
  #contato .item {width: 37%;}
  #contato .item:first-child {width: 100%; margin: 0 0 40px 0;}
}

@media screen and (max-width: 935px) {
  header #menu-principal ul.menu {padding: 0;}
  header #menu-principal ul.menu > li {display: block; margin: 0; padding: 14px 0; border-bottom: 1px solid #eee;}
  header #menu-principal ul.menu > li:last-child {border-bottom: 0; margin-bottom: -20px;}
}

@media screen and (max-width: 800px) {
  #destinos .destinos-list {margin-top: -200px;}
  #destinos .destinos-list .container {padding: 30px 15px 40px;}
  footer img.desenho {display: none;}
  footer #creditos {max-width: none; padding: 30px 0;}
}

@media screen and (max-width: 785px) {
  #depoimentos .area-depo {margin-top: -33%;}
  #depoimentos .grid-depo {max-height: none;}
  #depoimentos .grid-depo .item {padding-left: 50px;}
  #depoimentos .grid-depo .item img {display: none;}
  #depoimentos .owl-dots {position: static; display: table; margin: 25px auto 40px;}
}

/* Smart Slider: layout retrato no mobile */
@media screen and (max-width: 700px) {
  .hero {height: min(600px, 100cqw * 544.5625 / 340);}
  /* sem setas: troca de slide por swipe. Texto em tamanho fixo (a escala por largura deixava o subtítulo com ~6px) */
  .hero-arrow {display: none;}
  .hero-content {gap: 12px; padding: 0 25px;}
  .hero-title,
  .hero-sub {max-width: 100%;}
  .hero-title {font-size: 3rem; -webkit-line-clamp: 3;}
  .hero-sub {font-size: 1.4rem; font-weight: 500; letter-spacing: .5px; line-height: 1.4;}
  /* destinos: chips menores e só a 1ª metade até clicar em "ver todos" */
  #destinos .destinos-cidades:not(.is-expanded) .destino--extra {display: none;}
  #destinos .pais-longo {display: none;}
  #destinos .pais-curto {display: inline;}
  #destinos .destinos-cidades:not(.is-expanded) + .destinos-mais {display: table;}
}

@media screen and (max-width: 670px) {
  #contato .item {width: 100%;}
  footer #creditos {flex-direction: column; gap: 15px; text-align: center;}
  .form {width: 100%; float: none; margin-bottom: 40px;}
}

@media screen and (max-width: 640px) {
  #depoimentos .area-depo {margin-top: -41%;}
}

@media screen and (max-width: 423px) {
  .page .wpcf7 .duascol > span:first-child,
  .page .wpcf7 .duascol > span:last-child {width: 100%; float: none;}
  .page .wpcf7 input[type=submit] {float: none; display: table; margin: 14px auto 0;}
  #depoimentos .area-depo {margin-top: -60%;}
}

@media screen and (max-width: 384px) {
  .page .wpcf7 .duascol > span {width: 100% !important; float: none !important;}
  #destinos .destinos-list {margin-top: -140px;}
  #depoimentos .grid-depo .item {padding-left: 30px;}
  #depoimentos .grid-depo .item .conteudo {padding-right: 30px;}
  #depoimentos .grid-depo .item h4.nome {padding: 25px 0 20px;}
}
