/*------------------------------------------------------------------
PADRAO BEGIN - ESTRUTURA CSS

1. CONFIGURAÇÕES HEADER AND FOOTER
    1.0 Template default CSS
	1.1	Variables
	1.2	Mixins
	1.3	Flexbox
	1.4	Reset
2.  Helper Css
3.  Header Section
4.  Footer Style
5.  Inject Index Body
-------------------------------------------------------------------*/

/* Reset básico */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: Arial, sans-serif;
}

/* Estilizando o menu */
.header__menu ul {
    list-style: none;
    display: flex;
    align-items: center;
}

/* Links do menu (linha do menu principal) */
.header__menu ul li {
    position: relative;
    margin: 0 15px;
}

/* Estilizando a imagem do perfil */
.profile-icon {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    cursor: pointer;
    transition: transform 0.3s ease;
}

/* Animação na imagem do perfil ao abrir o dropdown */
.profile-dropdown.active .profile-icon {
    transform: scale(1.1);
}

/* Dropdown oculto inicialmente */
.dropdown-menu {
    position: absolute;
    top: 100%;
    right: 0;
    background: #fff;
    width: 200px;
    border-radius: 8px;
    box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.2);
    list-style: none;
    padding: 10px 0;
    display: none;
    opacity: 0;
    transform: translateY(-10px);
    transition: opacity 0.3s ease, transform 0.3s ease;
}

/* Links dentro do dropdown */
.dropdown-menu li {
    font-size: 14px !important;
    padding: 10px 15px;
}

/* Estilo dos links */
.dropdown-menu a {
    font-size: 14px !important;
    text-decoration: none;
    color: #333;
    display: block;
    transition: background 0.3s ease;
}

/* Efeito hover no dropdown */
.dropdown-menu a:hover {
    background: #f1f1f1;
}

/* Quando ativo, mostrar dropdown */
.profile-dropdown.active .dropdown-menu {
    display: block;
    opacity: 1;
    transform: translateY(0);
}

/* ----- Submenu dentro do dropdown ----- */
.dropdown-menu .has-submenu {
    position: relative;           /* ancora o submenu neste <li> */
}

.dropdown-menu .has-submenu > a.submenu-toggle {
    display: block;
    position: relative;
    padding-right: 22px;          /* espaço para a setinha */
}

/* abre o submenu à direita do item pai */
.dropdown-menu .submenu {
    display: none;
    position: absolute;
    top: 0;          /* alinha pelo topo do item pai */
    left: 100%;      /* encosta na direita do item pai */
    right: auto;     /* garante que não force alinhamento à direita */
    margin-left: 8px;
    background: #fff;
    width: 220px;
    border-radius: 8px;
    box-shadow: 0px 4px 6px rgba(0,0,0,0.2);
    list-style: none;
    padding: 8px 0;
    z-index: 1000;
    color: #004aad !important;
}

/* itens do submenu */
.dropdown-menu .submenu li a {
    display: block;
    padding: 10px 14px;
    color: #004aad !important;
    text-decoration: none;
    transition: background 0.3s ease;
    font-size: 14px;
}

.dropdown-menu .submenu li a:hover {
    background: #f1f1f1;
}

/* caret apontando para a direita */
.dropdown-menu .has-submenu > a.submenu-toggle::after {
    content: "▸";
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 12px;
    color: #004aad !important;
    opacity: .7;
}

/* mostrar submenu no hover (desktop) */
.profile-dropdown.active .dropdown-menu .has-submenu:hover > .submenu {
    display: block;
    color: #004aad !important;
}

/* feedback visual no pai enquanto o submenu está aberto */
.dropdown-menu .has-submenu:hover > a.submenu-toggle {
    background: #f1f1f1;
    color: #004aad !important;
}

/*----------------------------------------*/
/* Template default CSS
/*----------------------------------------*/

html,
body {
    height: 100%;
    font-family: "Lato", sans-serif;
    -webkit-font-smoothing: antialiased;
}

/* Garante que apenas elementos não-editáveis fiquem sem cursor */
body * {
    caret-color: transparent;
}

/* Reforça cursor visível em campos editáveis */
input,
textarea,
[contenteditable="true"],
select,
button {
    caret-color: auto !important;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    margin: 0;
    color: #111111;
    font-weight: 400;
    font-family: "Lato", sans-serif;
}

h1 {
    font-size: 70px;
}

h2 {
    font-size: 36px;
}

h3 {
    font-size: 30px;
}

h4 {
    font-size: 24px;
}

h5 {
    font-size: 18px;
}

h6 {
    font-size: 16px;
}

p {
    font-size: 20px;
    font-family: "Lato", sans-serif;
    color: #5c5c5c;
    font-weight: 400;
    line-height: 25px;
    margin: 0 0 15px 0;
}

img {
    max-width: 100%;
}

input:focus,
select:focus,
button:focus,
textarea:focus {
    outline: none;
}

a:hover,
a:focus {
    text-decoration: none;
    outline: none;
    color: #ffffff;
}

ul,
ol {
    padding: 0;
    margin: 0;
}

/*---------------------
  Helper CSS
-----------------------*/

.section-title {
    margin-bottom: 80px;
    text-align: center;
}

.section-title h2 {
    font-weight: 700;
    color: #323232;
    line-height: 46px;
    margin-bottom: 20px;
}

.section-title p {
    margin-bottom: 0;
}

.set-bg {
    background-repeat: no-repeat;
    background-size: cover;
    background-position: top center;
}

.spad {
    padding-top: 100px;
    padding-bottom: 100px;
}

.text-white h1,
.text-white h2,
.text-white h3,
.text-white h4,
.text-white h5,
.text-white h6,
.text-white p,
.text-white span,
.text-white li,
.text-white a {
    color: #fff;
}

/*----------------------------------------
  Custom Switch (toggle idioma etc)
----------------------------------------*/

.custom-switch {
    position: relative;
    display: inline-block;
    width: 60px;
    height: 24px;
    color: #004aad;
}

/* Esconde o input checkbox */
.custom-switch input {
    opacity: 0;
    width: 0;
    height: 0;
}

/* Estilo do fundo do switch */
.slider {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #ccc;
    transition: 0.4s;
    border-radius: 50px;
}

/* Círculo dentro do slider */
.slider:before {
    position: absolute;
    content: "";
    height: 16px;
    width: 16px;
    border-radius: 50%;
    left: 4px;
    bottom: 4px;
    background-color: #004aad;
    transition: 0.4s;
}

/* Cor do fundo quando o switch é ativado */
.custom-switch input:checked + .slider {
    background-color: #000000;
}

/* Movimento do círculo dentro do slider quando o switch é ativado */
.custom-switch input:checked + .slider:before {
    transform: translateX(26px);
}

/* buttons */

.primary-btn {
    display: inline-block;
    font-size: 15px;
    padding: 14px 40px 12px;
    color: #ffffff;
    text-transform: uppercase;
    font-weight: 700;
    background: #004aad;
    border-radius: 2px;
    letter-spacing: 1px;
}

.site-btn {
    font-size: 15px;
    color: #ffffff;
    font-weight: 700;
    text-transform: uppercase;
    display: inline-block;
    padding: 14px 30px 12px;
    background: #004aad;
    border: none;
    letter-spacing: 1px;
    border-radius: 2px;
}

/* Preloader */

#preloder {
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 999999;
    background: #000;
}

.loader {
    width: 40px;
    height: 40px;
    position: absolute;
    top: 50%;
    left: 50%;
    margin-top: -13px;
    margin-left: -13px;
    border-radius: 60px;
    animation: loader 0.8s linear infinite;
    -webkit-animation: loader 0.8s linear infinite;
}

@keyframes loader {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
        border: 4px solid #f44336;
        border-left-color: transparent;
    }
    50% {
        -webkit-transform: rotate(180deg);
        transform: rotate(180deg);
        border: 4px solid #673ab7;
        border-left-color: transparent;
    }
    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
        border: 4px solid #f44336;
        border-left-color: transparent;
    }
}

@-webkit-keyframes loader {
    0% {
        -webkit-transform: rotate(0deg);
        border: 4px solid #f44336;
        border-left-color: transparent;
    }
    50% {
        -webkit-transform: rotate(180deg);
        border: 4px solid #673ab7;
        border-left-color: transparent;
    }
    100% {
        -webkit-transform: rotate(360deg);
        border: 4px solid #f44336;
        border-left-color: transparent;
    }
}

.spacial-controls {
    position: fixed;
    width: 111px;
    height: 91px;
    top: 0;
    right: 0;
    z-index: 999;
}

.spacial-controls .search-switch {
    display: block;
    height: 100%;
    padding-top: 30px;
    background: #323232;
    text-align: center;
    cursor: pointer;
}

.search-model {
    display: none;
    position: fixed;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    background: #000;
    z-index: 99999;
}

.search-model-form {
    padding: 0 15px;
}

.search-model-form input {
    width: 500px;
    font-size: 40px;
    border: none;
    border-bottom: 2px solid #333;
    background: 0 0;
    color: #999;
}

.search-close-switch {
    position: absolute;
    width: 50px;
    height: 50px;
    background: #333;
    color: #fff;
    text-align: center;
    border-radius: 50%;
    font-size: 28px;
    line-height: 28px;
    top: 30px;
    cursor: pointer;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

/*---------------------
  Header
-----------------------*/

.header__top {
    background: #182143;
}

.header__top__widget {
    padding: 11px 0 14px;
}

/* Cor da letra */
.header__top__widget li {
    font-size: 15px;
    color: #004aad;
    display: inline-block;
    margin-right: 50px;
    position: relative;
    list-style: none;
}

.header__top__widget li::after {
    position: absolute;
    right: -32px;
    top: 0;
    width: 1px;
    height: 100%;
    background: rgba(255, 255, 255, 0.1);
    content: "";
}

.header__top__widget li:last-child {
    margin-right: 0;
}

.header__top__widget li:last-child:after {
    display: none;
}

.header__top__widget li i {
    font-size: 18px;
    color: #004aad;
    margin-right: 8px;
}

.header__top__language {
    background: #004aad;
    padding: 11px 20px;
    float: left;
    position: relative;
    cursor: pointer;
    display: flex; /* Flexbox para alinhar os itens horizontalmente */
    align-items: center; /* Alinha os itens ao centro */
}

.header__top__language img {
    display: inline-block;
    height: 26px;
    width: 26px;
    border-radius: 50%;
    margin-right: 6px;
}

/* Cor da letra */
.header__top__language span {
    font-size: 15px;
    font-weight: 700;
    color: #004aad;
    text-transform: uppercase;
    display: inline-block;
    margin-right: 12px;
}

/* Ícone */
.header__top__language i {
    font-size: 20px;
    display: inline-block;
    color: #004aad;
}

/* Alteração para o posicionamento do toggle */
.language-toggle {
    margin-left: 10px; /* espaço entre o texto "English" e o toggle */
    margin-top: 8px;   /* ajusta verticalmente o toggle */
}

/* Cor fundo do dropdown de idiomas */
.header__top__language ul {
    position: absolute;
    left: 50px;
    top: 60px;
    width: 100px;
    background: #ffffff;
    opacity: 0;
    visibility: hidden;
    -webkit-box-shadow: 0 0 20px rgba(54, 54, 54, 0.15);
    box-shadow: 0 0 20px rgba(54, 54, 54, 0.15);
    -webkit-transition: all, 0.3s;
    -o-transition: all, 0.3s;
    transition: all, 0.3s;
    z-index: 9;
}

.header__top__language ul li {
    list-style: none;
}

.header__top__language ul li a {
    font-size: 14px;
    color: #252525;
    padding: 5px 5px 5px 15px;
    display: block;
}

.header__logo {
    padding: 5px 0;
}

.header__logo a img {
    max-width: 450px;
    height: auto;
    transition: all 0.3s ease-in-out;
}

.header__logo a {
    display: inline-block;
}

.header__nav {
    text-align: right;
    padding: 38px 0 33px;
}

.header__menu {
    display: inline-block;
    /* text-transform: uppercase; */
}

/* navegação principal (sobrepõe aquele margin simples de cima) */
.header__menu ul li {
    list-style: none;
    display: inline-block;
    margin-right: 65px;
    position: relative;
}

.header__menu ul li.active a:after {
    width: 100%;
    opacity: 1;
}

.header__menu ul li:hover a:after {
    width: 100%;
    opacity: 1;
}

/* dropdown de navegação principal */
.header__menu ul li .dropdown {
    position: absolute;
    left: 0;
    top: 56px;
    width: 180px;
    background: #FFFFFF;
    text-align: left;
    padding: 5px 0;
    z-index: 9;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: all, 0.5s;
    -o-transition: all, 0.5s;
    transition: all, 0.5s;
}

.header__menu ul li .dropdown li {
    display: block;
    margin-right: 0;
}

/* Cor da letra do dropdown do menu principal */
.header__menu ul li .dropdown li a {
    font-size: 14px;
    color: #004aad;
    font-weight: 400;
    padding: 10px 20px;
}

.header__menu ul li .dropdown li a:after {
    display: none;
}

/* Links do menu principal */
.header__menu ul li a {
    font-size: 22px;
    color: #004aad;
    font-weight: 700;
    display: block;
    padding: 5px 0;
    position: relative;
}

/* underline animado dos links */
.header__menu ul li a:after {
    position: absolute;
    left: 0;
    bottom: 0;
    height: 2px;
    width: 0%;
    background: white;
    content: "";
    opacity: 0;
    -webkit-transition: all, 0.5s;
    -o-transition: all, 0.5s;
    transition: all, 0.5s;
}

.header__search {
    display: inline-block;
}

.header__search i {
    font-size: 18px;
    color: #323232;
    cursor: pointer;
}

.offcanvas-menu-wrapper {
    display: none;
}

.canvas__open {
    display: none;
}

/* Mensagem com usuário logado no header */
#loginUserMessage {
    position: absolute;
    right: 80px;
    font-size: 16px;
    font-weight: bold;
    color: #004aad;
}

#loginUserMessageUnderline {
    text-decoration: underline;
}


/* Dropdown oculto inicialmente */
.dropdown-menu {
    position: absolute;
    top: 100%;
    right: 0;
    background: #fff;
    width: 200px;
    border-radius: 8px;
    box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.2);
    list-style: none;
    padding: 10px 0;
    display: none;
    opacity: 0;
    transform: translateY(-10px);
    transition: opacity 0.3s ease, transform 0.3s ease;
}

/* Links dentro do dropdown */
.dropdown-menu li {
    font-size: 14px !important;
    padding: 10px 15px;
}

/* Estilo dos links */
.dropdown-menu a {
   font-size: 14px !important;
    text-decoration: none;
    color: #333;
    display: block;
    transition: background 0.3s ease;
}

/* Efeito hover no dropdown */
.dropdown-menu a:hover {
    background: #f1f1f1;
}

/* Quando ativo, mostrar dropdown */
.profile-dropdown.active .dropdown-menu {
    display: block;
    opacity: 1;
    transform: translateY(0);
}

/* ----- Submenu dentro do dropdown ----- */
.dropdown-menu .has-submenu {
  position: relative;           /* ancora o submenu neste <li> */
}

.dropdown-menu .has-submenu > a.submenu-toggle {
  display: block;
  position: relative;
  padding-right: 22px;          /* espaço para a setinha */
}

/* caret à direita do texto */
.dropdown-menu .has-submenu > a.submenu-toggle::after {
  content: "▾";
  position: absolute;
  right: 12px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 12px;
  opacity: .7;
}

/* submenu oculto por padrão */
.dropdown-menu .submenu {
  display: none;
  position: absolute;
  left: 0;                      /* abre alinhado ao item "Discover" */
  top: 100%;                    /* logo abaixo */
  background: #fff;
  width: 220px;
  border-radius: 8px;
  box-shadow: 0px 4px 6px rgba(0,0,0,0.2);
  list-style: none;
  padding: 8px 0;
  z-index: 1000;                /* acima do conteúdo atrás */
}

/* itens do submenu */
.dropdown-menu .submenu li a {
  display: block;
  padding: 10px 14px;
color: #004aad; #important
  text-decoration: none;
  transition: background 0.3s ease;
  font-size: 14px; /* mantém seu !important não necessário aqui */
}

.dropdown-menu .submenu li a:hover {
  background: #f1f1f1;
}

/* Mostrar submenu no hover (desktop) */
.profile-dropdown.active .dropdown-menu .has-submenu:hover > .submenu {
  display: block;
}

/* Evitar que o hover do pai "trave" o fundo cinza enquanto navega no submenu */
.dropdown-menu .has-submenu:hover > a.submenu-toggle {
  background: #f1f1f1;
}

/* ancora o submenu no li pai */
.dropdown-menu .has-submenu { position: relative; }

/* abre o submenu à direita do texto "Discover RentMTM" */
.dropdown-menu .submenu {
  display: none;
  position: absolute;
  top: 0;          /* alinha pelo topo do item pai */
  left: 100%;      /* encosta na direita do item pai */
  right: auto;     /* garante que não force alinhamento à direita */
  margin-left: 8px;
  background: #fff;
  width: 220px;
  border-radius: 8px;
  box-shadow: 0px 4px 6px rgba(0,0,0,0.2);
  list-style: none;
  padding: 8px 0;
  z-index: 1000;
  color: #004aad; #important
}

/* caret apontando para a direita */
.dropdown-menu .has-submenu > a.submenu-toggle::after {
  content: "▸";
  position: absolute;
  right: 12px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 12px;
  color: #004aad; #important
  opacity: .7;
}

/* mostrar no hover (desktop) */
.profile-dropdown.active .dropdown-menu .has-submenu:hover > .submenu {
  display: block;
  color: #004aad; #important
}

/* feedback visual no pai enquanto o submenu está aberto */
.dropdown-menu .has-submenu:hover > a.submenu-toggle {
  background: #f1f1f1;
color: #004aad; #important
}


/* ----- Submenu dentro do dropdown ----- */
.dropdown-menu .has-submenu {
  position: relative;           /* ancora o submenu neste <li> */
}

.dropdown-menu .has-submenu > a.submenu-toggle {
  display: block;
  position: relative;
  padding-right: 22px;          /* espaço para a setinha */
}

/* caret à direita do texto */
.dropdown-menu .has-submenu > a.submenu-toggle::after {
  content: "▾";
  position: absolute;
  right: 12px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 12px;
  opacity: .7;
}

/* submenu oculto por padrão */
.dropdown-menu .submenu {
  display: none;
  position: absolute;
  left: 0;                      /* abre alinhado ao item "Discover" */
  top: 100%;                    /* logo abaixo */
  background: #fff;
  width: 220px;
  border-radius: 8px;
  box-shadow: 0px 4px 6px rgba(0,0,0,0.2);
  list-style: none;
  padding: 8px 0;
  z-index: 1000;                /* acima do conteúdo atrás */
}

/* itens do submenu */
.dropdown-menu .submenu li a {
  display: block;
  padding: 10px 14px;
color: #004aad; #important
  text-decoration: none;
  transition: background 0.3s ease;
  font-size: 14px; /* mantém seu !important não necessário aqui */
}

.dropdown-menu .submenu li a:hover {
  background: #f1f1f1;
}

/* Mostrar submenu no hover (desktop) */
.profile-dropdown.active .dropdown-menu .has-submenu:hover > .submenu {
  display: block;
}

/* Evitar que o hover do pai "trave" o fundo cinza enquanto navega no submenu */
.dropdown-menu .has-submenu:hover > a.submenu-toggle {
  background: #f1f1f1;
}

/* ancora o submenu no li pai */
.dropdown-menu .has-submenu { position: relative; }

/* abre o submenu à direita do texto "Discover RentMTM" */
.dropdown-menu .submenu {
  display: none;
  position: absolute;
  top: 0;          /* alinha pelo topo do item pai */
  left: 100%;      /* encosta na direita do item pai */
  right: auto;     /* garante que não force alinhamento à direita */
  margin-left: 8px;
  background: #fff;
  width: 220px;
  border-radius: 8px;
  box-shadow: 0px 4px 6px rgba(0,0,0,0.2);
  list-style: none;
  padding: 8px 0;
  z-index: 1000;
  color: #004aad; #important
}

/* caret apontando para a direita */
.dropdown-menu .has-submenu > a.submenu-toggle::after {
  content: "▸";
  position: absolute;
  right: 12px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 12px;
  color: #004aad; #important
  opacity: .7;
}

/* mostrar no hover (desktop) */
.profile-dropdown.active .dropdown-menu .has-submenu:hover > .submenu {
  display: block;
  color: #004aad; #important
}

/* feedback visual no pai enquanto o submenu está aberto */
.dropdown-menu .has-submenu:hover > a.submenu-toggle {
  background: #f1f1f1;
color: #004aad; #important
}

/* ===== RentMTM — Tour Page (compact) ===== */

/* Limita a largura total para os cards ficarem menores proporcionalmente */
.tour__wrap{
  position: relative;
  background: #ffffff;
  border: 1px solid rgba(0,0,0,0.08);
  border-radius: 10px;
  padding: 20px;                 /* antes 26px */
  box-shadow: 0 12px 28px rgba(0,0,0,0.08);
  overflow: hidden;
  max-width: 980px;              /* novo: deixa tudo mais estreito/menor */
  margin: 0 auto;
}

/* Halo/sombra flutuante atrás dos cards menores (afinada) */
.tour__wrap::before{
  content: "";
  position: absolute;
  left: 20px; right: 20px; top: 96px; bottom: 20px; /* antes 26/120/26 */
  pointer-events: none;
  background:
    radial-gradient(60% 50% at 50% 40%,
      rgba(11,147,242,0.16) 0%,
      rgba(0,74,173,0.10) 40%,
      transparent 75%);
  filter: blur(24px);
  z-index: 1;
  opacity: .95;
}

/* Cabeçalho dentro do card maior — azul escuro */
.tour__header{
  position: relative;
  z-index: 2;
  text-align: center;
  margin-bottom: 14px;           /* antes 18px */
}
.tour__header h2{
  font-weight: 700;
  color: #004aad;
  margin-bottom: 6px;            /* antes 8px */
  font-size: 28px;               /* menor que padrão */
}
.tour__header p{
  color: #004aad;
  opacity: .88;
  font-size: 16px;               /* menor */
}

/* Grid 2x2 no desktop, 1xN no mobile, com gap menor */
.tour__grid{
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 18px;                     /* antes 26px */
}

@media (max-width: 900px){
  .tour__grid{ grid-template-columns: 1fr; }
}

/* Card base */
.tour__card{
  background: #ffffff;
  border: 1px solid rgba(0,0,0,.1);
  border-radius: 6px;
  overflow: hidden;
  box-shadow: 0 0 0 rgba(0,0,0,0);
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.tour__card:hover{
  transform: translateY(-3px);
  box-shadow: 0px 8px 24px rgba(0,0,0,.1);
  border-color: transparent;
}

.tour__title{
  font-size: 20px;               /* antes 22px */
  font-weight: 700;
  color: #323232;
  padding: 14px 14px 6px;        /* antes 18/18/8 */
}

/* Player com aspect-ratio e overlay */
.tour__player{
  position: relative;
  background: #000;
  margin: 0 14px;                /* antes 18px */
  border-radius: 8px;
  overflow: hidden;
  aspect-ratio: 16 / 9;
  border: 1px solid rgba(0, 0, 0, 0.08);
  transition: box-shadow .25s ease, transform .25s ease, border-color .25s ease;
}
.tour__card:hover .tour__player{
  box-shadow: 0 6px 14px rgba(0,0,0,.12);
  border-color: rgba(0,0,0,0.12);
}

.tour__player video{
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  background: #000;
}

/* Overlay de play central */
.player__overlay{
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  border: none;
  background: transparent;
  cursor: pointer;
  transition: background-color .2s ease, transform .2s ease, opacity .2s ease;
}
.player__overlay:hover{
  background-color: rgba(0,0,0,0.12);
  transform: scale(1.015);
}

/* Botão de expandir (menor) */
.player__expand{
  position: absolute;
  top: 6px;                      /* antes 8px */
  right: 6px;
  border: none;
  background: rgba(255,255,255,0.92);
  color: #004aad;
  border-radius: 8px;
  width: 30px;                   /* antes 34 */
  height: 28px;                  /* antes 32 */
  display: grid;
  place-items: center;
  cursor: pointer;
  opacity: 0;
  transform: translateY(-6px);
  transition: opacity .2s ease, transform .2s ease, background-color .2s ease;
}
.tour__player:hover .player__expand{
  opacity: 1;
  transform: translateY(0);
}
.player__expand:hover{ background: #ffffff; }

/* Estado expandido (theater) */
.tour__card.is-expanded .tour__player{
  aspect-ratio: 21 / 9;
  border-color: #004aad;
  box-shadow: 0 8px 22px rgba(0,0,0,.16);
}

/* Descrição curta (menor) */
.tour__desc{
  color: #707070;
  padding: 10px 14px 16px;       /* antes 12/18/20 */
  font-size: 15px;               /* antes 16px */
  line-height: 22px;             /* antes 24px */
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* Estado reproduzindo: overlay escondido */
.tour__card.is-playing .player__overlay{
  opacity: 0;
  pointer-events: none;
}

/* Foco acessível */
.player__overlay:focus-visible,
.player__expand:focus-visible{
  outline: 2px solid #004aad;
  outline-offset: 2px;
}

/*------------------------------------------------------------------
PADRAO BEGIN - ESTRUTURA CSS

1. CONFIGURAÇÕES HEADER AND FOOTER
    1.0 Template default CSS
	1.1	Variables
	1.2	Mixins
	1.3	Flexbox
	1.4	Reset
2.  Helper Css
3.  Header Section
4.  Footer Style
5.  Inject Index Body
-------------------------------------------------------------------*/


/* INICIO CONFIGURAÇÕES HEADER AND FOOTER 1.0 Template default CSS 	1.1	Variables 	1.2	Mixins	1.3	Flexbox	1.4	Reset */

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: Arial, sans-serif;

}

/* Estilizando o menu */
.header__menu ul {
    list-style: none;
    display: flex;
    align-items: center;
}

/* Links do menu */
.header__menu ul li {
    position: relative;
    margin: 0 15px;
}

/* Estilizando a imagem do perfil */
.profile-icon {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    cursor: pointer;
    transition: transform 0.3s ease;
}

/* Animação na imagem do perfil ao abrir o dropdown */
.profile-dropdown.active .profile-icon {
    transform: scale(1.1);
}

/* Dropdown oculto inicialmente */
.dropdown-menu {
    position: absolute;
    top: 100%;
    right: 0;
    background: #fff;
    width: 200px;
    border-radius: 8px;
    box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.2);
    list-style: none;
    padding: 10px 0;
    display: none;
    opacity: 0;
    transform: translateY(-10px);
    transition: opacity 0.3s ease, transform 0.3s ease;
}

/* Links dentro do dropdown */
.dropdown-menu li {
    font-size: 14px !important;
    padding: 10px 15px;
}

/* Estilo dos links */
.dropdown-menu a {
    font-size: 14px !important;
    text-decoration: none;
    color: #333;
    display: block;
    transition: background 0.3s ease;
}

/* Efeito hover no dropdown */
.dropdown-menu a:hover {
    background: #f1f1f1;
}

/* Quando ativo, mostrar dropdown */
.profile-dropdown.active .dropdown-menu {
    display: block;
    opacity: 1;
    transform: translateY(0);
}

/*----------------------------------------*/
/* Template default CSS
/*----------------------------------------*/

html,
body {
    height: 100%;
    font-family: "Lato", sans-serif;
    -webkit-font-smoothing: antialiased;
}

/* Garante que apenas elementos não-editáveis fiquem sem cursor */
body * {
	caret-color: transparent;
}

/* Reforça cursor visível em campos editáveis */
input,
textarea,
[contenteditable="true"],
select,
button {
	caret-color: auto !important;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    margin: 0;
    color: #111111;
    font-weight: 400;
    font-family: "Lato", sans-serif;
}

h1 {
    font-size: 70px;
}

h2 {
    font-size: 36px;
}

h3 {
    font-size: 21px;

}

h4 {
    font-size: 24px;
}

h5 {
    font-size: 18px;
}

h6 {
    font-size: 16px;
}

p {
    font-size: 20px;
    font-family: "Lato", sans-serif;
    color: #5c5c5c;
    font-weight: 400;
    line-height: 25px;
    margin: 0 0 15px 0;
}

img {
    max-width: 100%;
}

input:focus,
select:focus,
button:focus,
textarea:focus {
    outline: none;
}

a:hover,
a:focus {
    text-decoration: none;
    outline: none;
    color: #ffffff;
}

ul,
ol {
    padding: 0;
    margin: 0;
}

/*---------------------
  Helper CSS
-----------------------*/

.section-title {
    margin-bottom: 80px;
    text-align: center;
}

.section-title h2 {
    font-weight: 700;
    color: #323232;
    line-height: 46px;
    margin-bottom: 20px;
}

.section-title P {
    margin-bottom: 0;
}

.set-bg {
    background-repeat: no-repeat;
    background-size: cover;
    background-position: top center;
}

.spad {
    padding-top: 100px;
    padding-bottom: 100px;
}

.text-white h1,
.text-white h2,
.text-white h3,
.text-white h4,
.text-white h5,
.text-white h6,
.text-white p,
.text-white span,
.text-white li,
.text-white a {
    color: #fff;
}

/* buttons */


.primary-btn {
    display: inline-block;
    font-size: 15px;
    padding: 14px 40px 12px;
    color: #ffffff;
    text-transform: uppercase;
    font-weight: 700;
    background: #004aad;
    border-radius: 2px;
    letter-spacing: 1px;
}

.site-btn {
    font-size: 15px;
    color: #ffffff;
    font-weight: 700;
    text-transform: uppercase;
    display: inline-block;
    padding: 14px 30px 12px;
    background: #004aad;
    border: none;
    letter-spacing: 1px;
    border-radius: 2px;
}

/* Preloder */

#preloder {
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 999999;
    background: #000;
}

.loader {
    width: 40px;
    height: 40px;
    position: absolute;
    top: 50%;
    left: 50%;
    margin-top: -13px;
    margin-left: -13px;
    border-radius: 60px;
    animation: loader 0.8s linear infinite;
    -webkit-animation: loader 0.8s linear infinite;
}

@keyframes loader {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
        border: 4px solid #f44336;
        border-left-color: transparent;
    }
    50% {
        -webkit-transform: rotate(180deg);
        transform: rotate(180deg);
        border: 4px solid #673ab7;
        border-left-color: transparent;
    }
    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
        border: 4px solid #f44336;
        border-left-color: transparent;
    }
}

@-webkit-keyframes loader {
    0% {
        -webkit-transform: rotate(0deg);
        border: 4px solid #f44336;
        border-left-color: transparent;
    }
    50% {
        -webkit-transform: rotate(180deg);
        border: 4px solid #673ab7;
        border-left-color: transparent;
    }
    100% {
        -webkit-transform: rotate(360deg);
        border: 4px solid #f44336;
        border-left-color: transparent;
    }
}

.spacial-controls {
    position: fixed;
    width: 111px;
    height: 91px;
    top: 0;
    right: 0;
    z-index: 999;
}

.spacial-controls .search-switch {
    display: block;
    height: 100%;
    padding-top: 30px;
    background: #323232;
    text-align: center;
    cursor: pointer;
}

.search-model {
    display: none;
    position: fixed;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    background: #000;
    z-index: 99999;
}

.search-model-form {
    padding: 0 15px;
}

.search-model-form input {
    width: 500px;
    font-size: 40px;
    border: none;
    background: 0 0;
    color: #999;
}

.search-close-switch {
    position: absolute;
    width: 50px;
    height: 50px;
    background: #333;
    color: #fff;
    text-align: center;
    border-radius: 50%;
    font-size: 28px;
    line-height: 28px;
    top: 30px;
    cursor: pointer;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

/*---------------------
  Header
-----------------------*/

.header__top {
    background: #182143;
}

.header__top__widget {
    padding: 11px 0 14px;
}

/* Cor a letra*/
.header__top__widget li {
    font-size: 15px;
    color: #004aad;
    display: inline-block;
    margin-right: 50px;
    position: relative;
    list-style: none;
}

.header__top__widget li::after {
    position: absolute;
    right: -32px;
    top: 0;
    width: 1px;
    height: 100%;
    background: rgba(255, 255, 255, 0.1);
    content: "";
}

.header__top__widget li:last-child {
    margin-right: 0;
}

.header__top__widget li:last-child:after {
    display: none;
}

.header__top__widget li i {
    font-size: 18px;
    color: #004aad;
    margin-right: 8px;
}

.header__logo {
    padding: 5px 0;
}

.header__logo a img {
    max-width: 450px;
    height: auto;
    transition: all 0.3s ease-in-out;
}

.header__logo a {
    display: inline-block;
}

.header__nav {
    text-align: right;
    padding: 18px 0 33px;
}

.header__menu {
    display: inline-block;
    /*text-transform: uppercase;*/
}

.header__menu ul li {
    list-style: none;
    display: inline-block;
    margin-right: 65px;
    position: relative;
}

.header__menu ul li.active a:after {
    width: 100%;
    opacity: 1;
}

.header__menu ul li:hover a:after {
    width: 100%;
    opacity: 1;
}

/*.header__menu ul li:hover .dropdown {*/
/*	top: 36px;*/
/*	opacity: 1;*/
/*	visibility: visible;*/
/*}*/

/* Cor fundo*/
.header__menu ul li .dropdown {
    position: absolute;
    left: 0;
    top: 56px;
    width: 180px;
    background: #FFFFFF;
    text-align: left;
    padding: 5px 0;
    z-index: 9;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: all, 0.5s;
    -o-transition: all, 0.5s;
    transition: all, 0.5s;
}

.header__menu ul li .dropdown li {
    display: block;
    margin-right: 0;
}

/* Icone Usuario: */
.header__user {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    position: relative;
    width: 95%;
    box-sizing: border-box;
    margin-top: 0;
    padding-top: 1px;
}

.user-info {
    display: flex;
    flex-direction: column; /* Coloca o nome acima do ícone */
    align-items: flex-start; /* Alinha à esquerda */
    gap: 4px; /* Espaço entre nome e ícone */
    padding-right: 30px;
}

.header__user i {
    font-size: 16px;
}

.user-name {
    font-size: 14px;
    font-weight: 600;
    color: #333;
}

.user-name:empty {
    display: none;
}

.user-name.invisible {
    display: none;
}

.user-name.invisible + .user-icon {
    display: none;
}


/*End*/


/* Cor a letra*/
.header__menu ul li .dropdown li a {
    font-size: 14px;
    color: #004aad;
    font-weight: 400;
    padding: 10px 20px;
}

.header__menu ul li .dropdown li a:after {
    display: none;
}

/* Cor a letra*/
.header__menu ul li a {
    font-size: 22px;
    color: #004aad;
    font-weight: 700;
    display: inline-block; /* Altere de block para inline-block */
    padding: 5px 0;
    position: relative;
    white-space: nowrap; /* Impede que quebre para outra linha */
}

/* Cor do fundo*/
.header__menu ul li a:after {
    position: absolute;
    left: 0;
    bottom: 0;
    height: 2px;
    width: 0%;
    background: white;
    content: "";
    opacity: 0;
    -webkit-transition: all, 0.5s;
    -o-transition: all, 0.5s;
    transition: all, 0.5s;
}

.header__search {
    display: inline-block;
}

.header__search i {
    font-size: 18px;
    color: #323232;
    cursor: pointer;
}


.offcanvas-menu-wrapper {
    display: none;
}

.canvas__open {
    display: none;
}


/*---------------------
  Footer
-----------------------*/
/* fundo*/
.footer {
    background: #ffffff;
    padding-top: 40px;
}

.footer__about {
    margin-bottom: 30px;
}

/*letra*/
.footer__about p {
    color: #004aad;
    text-align: center;
}

.footer__logo {
    margin-bottom: 25px;
}

.footer__logo a img {
    width: 262px;
    height: 86px;
}

.footer__logo a {
    display: inline-block;
}

.footer__widget {
    margin-bottom: 30px;
}

.footer__widget.footer__widget--social li a {
    -webkit-transition: all, 0.3s;
    -o-transition: all, 0.3s;
    transition: all, 0.3s;
}

/*fundo*/
.footer__widget.footer__widget--social li a:hover {
    color: #ffffff;
}

.footer__widget.footer__widget--address p {
    margin-bottom: 10px;
}

/*letra*/
.footer__widget.footer__widget--address li {
    line-height: 30px;
    font-size: 15px;
    color: #004aad;
}

/*letra*/
.footer__widget h5 {
    font-size: 20px;
    font-weight: 700;
    color: #004aad;
    margin-bottom: 26px;
}

.footer__widget ul li {
    list-style: none;
}

/*letra*/
.footer__widget ul li a {
    font-size: 15px;
    color: #004aad;
    line-height: 38px;
}

.footer__widget ul li a i {
    margin-right: 6px;
}

/*letra*/
.footer__widget p {
    color: #004aad;
}

.footer__copyright {
    border-top: 1px solid rgba(112, 112, 112, 0.1);
    padding: 18px 0 15px;
    margin-top: 20px;
}

.footer__copyright__links li {
    list-style: none;
    display: inline-block;
    line-height: 20px;
    position: relative;
    margin-right: 45px;
}

.footer__copyright__links li:last-child {
    margin-right: 0;
}

.footer__copyright__links li:last-child::after {
    display: none;
}

/*letra*/
.footer__copyright__links li:after {
    position: absolute;
    right: -28px;
    top: 0;
    height: 100%;
    width: 1px;
    background: #004aad;
    content: "";
}

/*letra*/
.footer__copyright__links li a {
    font-size: 15px;
    color: #004aad;
}

.footer__copyright__text {
    text-align: right;
}

.footer__copyright__text p {
    color: #004aad;
    margin-bottom: 0;
}

.footer__copyright__text i {
    color: #941515;
}

.footer__copyright__text a {
    color: #004aad;
}


/*---------------------
 SECTION INDEX DEFAULT
-----------------------*/
/* Reset padrão */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: Arial, sans-serif;
}

/* Estrutura do formulário */
.main-container-index {
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 100vh;
    width: 100%;
    background: linear-gradient(to bottom, #004aad, #0b93f2, #ffffff);
    padding: 20px;
}

.form-wrapper-custom {
    max-width: 850px;
    margin: 50px auto;
    padding: 30px;
    background: white;
    border-radius: 12px;
    box-shadow: 0px 10px 40px rgba(0, 0, 0, 0.4);
    min-width: 850px;
}

.title-custom {
    font-size: 24px !important;
    font-weight: bold !important;
    text-align: center !important;
    color: #004aad !important;
    font-family: 'Lato', sans-serif !important;
    display: flex;
    flex-direction: column;
    margin-bottom: 20px !important; /* Ajuste o valor conforme necessário */
}

/* Layout dos campos usando Grid */
.fields {
    display: grid;
    grid-template-columns: repeat(8, 1fr);
    gap: 15px;
    margin-bottom: 20px;
}

.input-field {
    display: flex;
    flex-direction: column;
}

.input-field label {
    font-size: 12px;
    font-weight: 500;
    color: #2e2e2e;
}

.input-field input {
    font-size: 12px;
    color: #0b0b0b;
}

.input-field.small-field {
    width: 60%;
    text-align: center;
}

.input-field input,
.input-field select {
    outline: none;
    font-size: 14px;
    color: #333;
    border-radius: 5px;
    border: 1px solid #aaa;
    padding: 10px;
    width: 100%;
}

.input-field input:focus,
.input-field select:focus {
    border-color: #004aad;
    box-shadow: 0 0 5px rgba(0, 74, 173, 0.5);
}

.input-field input::placeholder {
    font-size: 14px; /* Tamanho da fonte do placeholder */
    color: #000; /* Cor do placeholder */
}

/* Botões */

.buttons {
    display: flex;
    justify-content: space-between;
    margin-top: 20px;
}

.backBtn, .nextBtn {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 45px;
    width: 200px;
    border: none;
    color: #fff;
    border-radius: 5px;
    background-color: #004aad;
    transition: background-color 0.3s;
    cursor: pointer;
}

.backBtn:hover, .nextBtn:hover {
    background-color: #003280;
}

.form-wrapper-custom .button-group-custom {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    margin-top: 25px !important;
}

.form-wrapper-custom .submit-btn-custom, .back-btn-custom {
    padding: 12px 25px !important;
    border: none !important;
    border-radius: 6px !important;
    font-size: 15px !important;
    cursor: pointer !important;
    transition: background 0.3s, transform 0.2s !important;
}

.form-wrapper-custom .submit-btn-custom {
    background: #007BFF !important;
    color: white !important;
}

.form-wrapper-custom .submit-btn-custom:hover {
    background: #0056b3 !important;
    transform: scale(1.05) !important;
}

.form-wrapper-custom .back-btn-custom {
    background: #004aad !important;
    color: white !important;
}

.form-wrapper-custom .back-btn-custom:hover {
    background: #999 !important;
    transform: scale(1.05) !important;
}

.section-custom {
    margin-bottom: 20px !important;
    border-bottom: 1px solid #ddd !important;
}


/*Para o Mkae and Model*/

.section-custom {
    display: grid;
    grid-template-columns: 1fr; /* Mantemos apenas 1 coluna principal */
    gap: 20px; /* Espaço entre os elementos */
}

.make-field {
    grid-column: span 1; /* Mantém ocupando toda a largura */
}

.model-year-container {
    display: flex; /* Deixa Model e Year na mesma linha */
    gap: 10px; /* Espaço entre os inputs */
}

.model-field {
    flex: 60%;
}

.year-field {
    flex: 40%;
}

.input-field input {
    width: 100%;
    padding: 10px;
    border-radius: 4px;
    border: 1px solid #ccc;
    box-sizing: border-box; /* Evita problemas com padding */
}

.subtext-right {
    text-align: left;
    font-size: 12px;
    color: #777;
    margin-top: -10px;
}

/*Fim do Make and Model*/

/*Para o Trim and Style*/
.section-custom-two {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: auto auto;
    gap: 10px;
    width: 100%;
    margin-bottom: 20px;
}

.section-custom-two h3 {
    grid-column: span 2;
    text-align: left;
    margin-bottom: 10px;
}

.input-field {
    display: flex;
    flex-direction: column;
    width: 100%;
}

select {
    width: 90%;
    padding: 8px;
}

/*Fim do Trim and Style*/

/*Img Step */

.flex-container {
    display: flex;
    align-items: center; /* Mantém alinhamento vertical */
    width: 100%; /* Garante que ocupe todo o espaço disponível */
}

.text-container {
    display: flex;
    justify-content: flex-end; /* Faz o texto ir para a direita dentro do container */
    flex: 1; /* Ocupa o máximo de espaço disponível */
}

.top-left-icon {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    flex-shrink: 0; /* Evita que a imagem encolha */
}

.helper-text {
    margin: 0;
    font-size: 12px;
    text-align: right;
}


/*Fim Img Step*/

/*Check Radio Container Transmission*/


.checkbox-item {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 5px;
}

.checkbox-item input[type="radio"] {
    margin-bottom: 10px; /* Ajuste conforme necessário */
}

/*Fim Check Radio do Container Transmission*/

.checkbox-item input[type="checkbox"] {
    margin: 10px;
}

.checkbox-item label {
    font-size: 14px;
    color: #333;
}

.checkbox-item input[type="number"] {
    width: 50px;
    margin-left: 10px;
    padding: 5px;
    border: 1px solid #aaa;
    border-radius: 5px;
    height: 21px;
}

/* Check do Container History*/
.checkbox-group-history {
    display: flex;
    flex-direction: column; /* Itens um abaixo do outro */
    gap: 10px;
    align-items: flex-start; /* Alinhamento à esquerda */
}

.checkbox-item-history {
    display: flex;
    flex-direction: row; /* Input e texto lado a lado */
    align-items: center;
    gap: 8px;
}

.checkbox-item-history label {
    font-size: 14px;
    color: #333;
    font-family: Arial, sans-serif;
}

.checkbox-item-history input[type="checkbox"] {
    margin-bottom: 10px; /* Ajuste conforme necessário */
}

/*Fim Check do Container History* */

/*Input - select do Container Lincense Plate */
.section-custom > .input-field-plate {
    grid-column: span 1 !important;
}


.grid-container {
    display: grid;
    grid-template-columns: 90% 30%;  /* Define que a primeira coluna ocupará 70% e a segunda 30% */
    gap: 15px;
    margin-bottom: 20px;
    width: 100%;
}

.grid-item {
    display: flex;
    flex-direction: column;
    width: 100%;
}

.grid-item input {
    outline: none;
    font-size: 14px;
    color: #333;
    border-radius: 5px;
    border: 1px solid #aaa;
    padding: 10px;
    width: 100%;
    box-sizing: border-box;
}

.grid-item select {
    outline: none;
    font-size: 14px;
    color: #333;
    border-radius: 5px;
    border: 1px solid #aaa;
    padding: 10px;
    width: 100%;
    box-sizing: border-box;
}

.grid-item input:focus,
.grid-item select:focus {
    border-color: #004aad;
    box-shadow: 0 0 5px rgba(0, 74, 173, 0.5);
}

.grid-item input::placeholder {
    font-size: 14px;
    color: #000;
}

/*Trip Duration - Select e Input*/
.d-flex.flex-column {
    font-family: 'Arial', sans-serif; /* Define a fonte */
    color: #333; /* Define a cor do texto */
    font-size: 16px; /* Define o tamanho da fonte */
    margin-bottom: 20px;
}

.d-flex.flex-column h3 {
    font-family: 'Arial', sans-serif; /* Fonte diferente para o título */
    font-size: 21px; /* Tamanho da fonte do <h3> */
    color: #111111; /* Azul Bootstrap */
}

label {
    font-family: 'Arial', sans-serif;
    font-size: 12px;
    color: #2e2e2e;
}

.form-select {
    font-family: 'Arial', sans-serif; /* Altere para a fonte desejada */
    font-size: 14px; /* Ajuste o tamanho da fonte */
    color: #212529; /* Cor do texto */
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-image: none;

}
.form-check {
    display: flex;
    align-items: center; /* Alinha verticalmente */
    gap: 5px;
}

.form-check input,
.form-check label {
    margin-top: 0; /* Remove o espaçamento superior dos itens internos */
}

.form-select option {
    font-family: 'Arial', sans-serif;
    font-size: 14px;
    margin-bottom: 30px;
}

/*Fim Trip Duration - Select e Input*/

/*Fim Input - select do Container Lincense Plate*/

/* Check do Container Features*/
.checkbox-group-features {
    display: grid;
    grid-template-columns: repeat(4, 1fr); /* 4 colunas por linha */
    align-items: start;
    gap: 10px;
}

.checkbox-item-features {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    font-size: 14px;
    color: #333;
}

.checkbox-item-features label {
    font-size: 14px;
    color: #333;
}

.input-field-features > label {
    font-size: 12px;
    font-weight: 500;
    color: #333;
}

.checkbox-item-features input[type="checkbox"] {
    margin-top: 3px;
}

@media (max-width: 768px) {
    .checkbox-group-features {
        grid-template-columns: repeat(2, 1fr); /* 2 colunas em telas menores */
    }
}

@media (max-width: 480px) {
    .checkbox-group-features {
        grid-template-columns: repeat(1, 1fr); /* 1 coluna em telas muito pequenas */
    }
}

/*Fim Check do Container Features* */

.video-container {
    position: relative;
    width: 80%;
    max-width: 800px;
    margin: 20px auto;
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.2);
}

video {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 10px;
}

.play-button {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background-color: rgba(0, 0, 0, 0.6);
    color: white;
    font-size: 30px; /* Reduzi o tamanho do ícone */
    padding: 15px 20px; /* Ajustei o tamanho do botão */
    border-radius: 50%;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: 0.3s;
}

.play-button:hover {
    background-color: rgba(0, 0, 0, 0.8);
}


.container {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 16px; /* Espaçamento entre os cards */
    max-width: 1200px; /* Largura máxima do container */
    margin: 0 auto; /* Centralizar o container */
}

.card {
    width: 180px; /* Largura reduzida */
    text-align: left; /* Alinhar texto à esquerda */
    position: relative;
    border-radius: 12px; /* Bordas arredondadas */
    overflow: hidden; /* Garantir que nada ultrapasse o card */
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1); /* Sombra suave */
    transition: transform 0.2s ease, box-shadow 0.2s ease; /* Efeito de hover */
}

.card:hover {
    transform: translateY(-4px); /* Levantar o card ao passar o mouse */
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2); /* Sombra mais forte no hover */
}

.carousel-container {
    position: relative;
    width: 100%;
    height: 120px; /* Altura reduzida para a imagem */
    overflow: hidden;
    border-radius: 12px 12px 0 0; /* Bordas arredondadas apenas no topo */
}

.carousel {
    display: flex;
    transition: transform 0.5s ease-in-out;
    width: 100%;
    height: 100%;
}

.carousel img {
    width: 100%;
    height: 100%;
    object-fit: cover; /* Garantir que a imagem cubra o espaço */
    flex-shrink: 0;
}

.arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    border: none;
    cursor: pointer;
    font-size: 14px; /* Tamanho reduzido da fonte */
    color: black;
    z-index: 10;
    transition: opacity 0.3s;
    opacity: 0; /* Esconder por padrão */
    background: rgba(255, 255, 255, 0.9); /* Fundo branco semi-transparente */
    width: 24px; /* Tamanho reduzido do botão */
    height: 24px; /* Tamanho reduzido do botão */
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.carousel-container:hover .arrow {
    opacity: 1; /* Mostrar ao passar o mouse */
}

.prev {
    left: 8px; /* Posição à esquerda */
    display: none; /* Esconder por padrão */
}

.next {
    right: 8px; /* Posição à direita */
}

.card-body {
    padding: 8px; /* Espaçamento interno */
}

.card-body h5 {
    font-size: 14px; /* Tamanho da fonte reduzido */
    margin: 0 0 4px 0; /* Margem ajustada */
    color: #333; /* Cor do texto */
    font-weight: 600; /* Texto em negrito */
}

.card-body p {
    font-size: 12px; /* Tamanho da fonte reduzido */
    margin: 0; /* Remover margem padrão */
    color: #666; /* Cor do texto mais suave */
}

.card-body p strong {
    color: #000; /* Cor do preço em destaque */
    font-weight: 600; /* Texto em negrito */
}


/* Responsividade */
@media (max-width: 768px) {
    .fields {
        grid-template-columns: repeat(2, 1fr);
    }

    .form-wrapper-custom {
        width: 90%;
        padding: 20px;
    }

    .backBtn, .nextBtn {
        width: 100%;
    }
}

@media (max-width: 480px) {
    .fields {
        grid-template-columns: repeat(1, 1fr);
    }

    .title-custom {
        font-size: 18px;
    }
}


/*--------------------------------- Responsive Media Quaries -----------------------------*/
/* Responsividade Index Section RegisterProfile */


/* Responsividade */
@media (max-width: 768px) {
    .form-wrapper-custom {
        width: 90% !important;
        padding: 20px !important;
    }

    .title-custom {
        font-size: 20px !important;
    }
}

/* Consulta de mídia para telas menores */
@media (max-width: 768px) {
    .card {
        padding: 15px;
        border: 2px solid #D3D3D3; /* Reduz a espessura da borda */
    }

    .card h1 {
        font-size: 1rem; /* Reduz o tamanho da fonte */
    }

    .card p {
        font-size: 0.9rem; /* Reduz o tamanho da fonte */
    }
}

/* Responsividade */
@media (max-width: 1024px) {
    .form-wrapper-custom .input-group-container {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}

@media (max-width: 768px) {
    .form-wrapper-custom {
        width: 90% !important;
        padding: 20px !important;
    }

    .form-wrapper-custom .input-group-container {
        grid-template-columns: repeat(1, 1fr) !important;
    }

    .form-wrapper-custom .button-group-custom {
        flex-direction: column !important;
        gap: 10px !important;
    }

    .form-wrapper-custom .submit-btn-custom, .back-btn-custom {
        width: 100% !important;
        text-align: center !important;
    }
}


@media (max-width: 480px) {
    .form-wrapper-custom .title-custom {
        font-size: 18px !important;
    }

    .form-wrapper-custom .input-group-custom label {
        font-size: 14px !important;
    }

    .form-wrapper-custom .input-group-custom input,
    .form-wrapper-custom .input-group-custom select {
        font-size: 14px !important;
        padding: 10px !important;
    }
}

@media (max-width: 1024px) {
    .form-wrapper-custom .input-group-container {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}

@media (max-width: 768px) {
    .form-wrapper-custom {
        width: 90% !important;
        padding: 20px !important;
    }

    .form-wrapper-custom .input-group-container {
        grid-template-columns: repeat(1, 1fr) !important;
    }

    .form-wrapper-custom .button-group-custom {
        flex-direction: column !important;
        gap: 10px !important;
    }

    .form-wrapper-custom .submit-btn-custom, .back-btn-custom {
        width: 100% !important;
        text-align: center !important;
    }
}

@media (max-width: 480px) {
    .form-wrapper-custom .title-custom {
        font-size: 18px !important;
    }

    .form-wrapper-custom .input-group-custom label {
        font-size: 14px !important;
    }

    .form-wrapper-custom .input-group-custom input,
    .form-wrapper-custom .input-group-custom select {
        font-size: 14px !important;
        padding: 10px !important;
    }
}


@media only screen and (min-width: 1200px) {
    .container {
        max-width: 1170px;
    }
}

/* Medium Device = 1200px */
@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .header__menu ul li {
        margin-right: 40px;
    }
}

/* Tablet Device = 768px */
@media only screen and (min-width: 768px) and (max-width: 991px) {
    .footer__copyright__links li {
        margin-right: 30px;
    }

    .footer__copyright__links li:after {
        right: -20px;
    }

    .header .container {
        position: relative;
    }

    .header__top {
        display: none;
    }

    .header__nav {
        display: none;
    }
}

/* Wide Mobile = 480px */
@media only screen and (max-width: 767px) {
    .footer__copyright__links {
        text-align: center;
        margin-bottom: 20px;
    }

    .footer__copyright__text {
        text-align: center;
    }

    .header .container {
        position: relative;
    }

    .header__top {
        display: none;
    }

    .header__nav {
        display: none;
    }

    @media (max-width: 768px) {
        .header__logo img {
            max-width: 140px;
        }
    }
    @media (max-width: 480px) {
        .header__logo img {
            max-width: 120px;
        }
    }
}

/*  Modal Tap here - VIN*/
.modal {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.6);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1000;
    visibility: hidden;
    opacity: 0;
    transition: visibility 0.3s, opacity 0.3s;
}

.modal.visible {
    visibility: visible;
    opacity: 1;
}

.modal-content {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: linear-gradient(180deg, #ffffff, #f0f0f0, #d4d4d4);
    padding: 24px;
    border-radius: 16px;
    box-shadow: 0 12px 32px rgba(0, 0, 0, 0.35);
    z-index: 1000;
    max-width: 95%;
    width: 700px;
    max-height: 85vh;
    overflow-y: auto;
    text-align: justify;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
    animation: fadeIn 0.3s ease-in-out;
}

.modal-content img.hourglass-gif {
    width: 50px;
    height: auto;
}

.modal-content p {
    margin: 15px 0;
    font-size: 16px;
    color: #333;
    line-height: 1.5;
}

.modal-content input {
    width: 50%;
    padding: 8px;
    margin: 10px 0;
    border: 1px solid #ccc;
    border-radius: 5px;
    font-size: 14px;
    text-align: center;
}

.modal-buttons {
    width: 100%;
    display: flex;
    justify-content: center;
    padding: 10px 0;
}

.modal-content button {
    background-color: #004aad;
    color: white;
    padding: 10px 20px;
    border: none;
    border-radius: 6px;
    font-size: 16px;
    cursor: pointer;
    transition: background 0.3s, transform 0.2s;
    margin: 0 5px;
    width: auto;
}

#verifyButton {
    background-color: #007BFF !important;
    color: white !important;
}

#reset-button {
    background-color: #004aad;
    color: white;
}

.modal-content button:hover {
    background: #0056b3;
    transform: scale(1.05);
}

.modal-content .close-btn {
    position: absolute;
    top: 10px;
    right: 15px;
    background: none;
    border: none;
    font-size: 18px;
    color: red;
    cursor: pointer;
}

/*  Modal Next - VIN Confirm*/

/* Estilização da Modal */
.modal-vin {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.6);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1000;
    visibility: hidden;
    opacity: 0;
    transition: visibility 0.3s, opacity 0.3s;
}

.modal-vin.visible {
    visibility: visible;
    opacity: 1;
}

/* Estilização do Conteúdo da Modal */
.modal-content-vin {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: linear-gradient(180deg, #ffffff, #f0f0f0, #d4d4d4);
    padding: 24px;
    border-radius: 16px;
    box-shadow: 0 12px 32px rgba(0, 0, 0, 0.35);
    max-width: 480px;
    width: 90%;
    text-align: left;
    display: flex;
    flex-direction: column;
    gap: 16px;
    font-family: "Lato", sans-serif;
}

/* Cabeçalho */
.modal-content-vin h2 {
    font-size: 22px;
    font-weight: bold;
    color: #111;
    margin-bottom: 8px;
}

/* Texto de Aviso */
.modal-content-vin p {
    font-size: 14px;
    color: #555;
    line-height: 1.5;
}

/* Caixa com Detalhes do Carro */
.vehicle-info {
    background: #f5f5f5;
    padding: 16px;
    border-radius: 8px;
}

.vehicle-info h3 {
    font-size: 16px;
    font-weight: bold;
    color: #111;
    margin-bottom: 4px;
}

.vehicle-info p {
    font-size: 14px;
    color: #333;
}

/* Botões */
.modal-buttons-vin {
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    margin-top: 12px;
}

.modal-buttons-vin button {
    padding: 10px 16px;
    font-size: 14px;
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.3s;
    border: none;
}

#edit-button {
    background: white;
    color: #333;
    border: 1px solid #ccc;
}

#edit-button:hover {
    background: #f0f0f0;
    transform: scale(1.05);
}

#confirm-button {
    background-color: #007BFF !important;
    color: white !important;
}

#confirm-button:hover {
    background: #0056b3 !important;
    transform: scale(1.05) !important;
}

/* Fechar Modal */
.modal-content-vin .close-btn {
    position: absolute;
    top: 10px;
    right: 15px;
    background: none;
    border: none;
    font-size: 18px;
    color: red;
    cursor: pointer;
}

.modal-content-vin .close-btn:hover {
    background: #0056b3;
    transform: scale(1.05);
}

/* Responsividade */
@media (max-width: 480px) {
    .modal-content {
        width: 95%;
        padding: 16px;
    }

    .modal-buttons {
        flex-direction: column;
        gap: 8px;
    }

    .modal-buttons button {
        width: 100%;
    }
}

/* Responsividade */
@media (max-width: 768px) {
    .modal-content {
        width: 90%;
        max-height: 80vh;
    }

    .modal-content input {
        width: 70%;
    }
}

@media (max-width: 480px) {
    .modal-content {
        width: 95%;
        max-height: 75vh;
    }

    .modal-content input {
        width: 80%;
    }

    .modal-buttons {
        flex-direction: column;
        gap: 12px;
    }
}

@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translate(-50%, -48%);
    }
    to {
        opacity: 1;
        transform: translate(-50%, -50%);
    }
}


/* Style upload Step 9*/

.upload-box {
    width: 90%;
    max-width: 300px; /* Mantém o tamanho máximo do contêiner */
    height: 140px; /* Defina uma altura fixa para as imagens */
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    cursor: pointer;
    border-radius: 10px;
    position: relative;
    overflow: hidden;
    padding: 10px;
    margin: 10px;
}

.upload-box span {
    margin-top: 10px;
}

.upload-box img {
    width: 90%;
    height: 90%; /* Ajuste a altura para preencher o contêiner */
    object-fit: cover; /* Garante que a imagem cubra o contêiner sem distorcer */
    object-position: center; /* Centraliza a imagem */
}

.hidden-input {
    display: none;
}

.upload-box button:hover {
    background-color: #0056b3; /* Cor de fundo ao passar o mouse */
}

.col-md-3 {
    width: 30%;
    margin-right: 10px;
    border: 1px solid #ccc;  /* Defina a cor e a espessura da borda */
    border-radius: 8px;  /* (Opcional) Faz a borda ter cantos arredondados */
}
.custom-text {
    font-size: 14px; /* Ajuste conforme necessário */
}

.custom-button {
    font-size: 12px; /* Ajuste conforme necessário */
    padding: 5px 10px; /* Reduza o padding para diminuir o tamanho do botão */
}

/* Bloco 1 - Full name... START */


.block-general-info {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
}

.form-grid-span-2 {
    grid-column: span 2;
    display: flex;
    flex-direction: column;
}

.form-grid-col {
    display: flex;
    flex-direction: column;
}

.checkbox-group {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 8px;
}

.label-custom {
    font-size: 12px;
    font-weight: 500;
    color: #2e2e2e;
}

.input-custom {
    padding: 10px;
    border: 1px solid #ccc;
    border-radius: 6px;
    font-family: "Lato", Arial, sans-serif;
    font-size: 14px;
}

.input-date-custom {
    width: 180px; /* ou 200px se preferir mais espaçado */
    min-width: 160px;
    max-width: 100%;
    padding: 8px 10px;
    font-family: 'Lato', Arial, sans-serif;
    font-size: 14px;
    border: 1px solid #ccc;
    border-radius: 6px;
    background-color: #fff;
    color: #333;
}

.input-date-custom:focus {
    border-color: #004aad;
    outline: none;
    box-shadow: 0 0 3px rgba(0, 74, 173, 0.5);
}

.radio-group {
    display: flex;
    flex-direction: row;
    gap: 8px;
    padding-top: 6px;
}

.radio-option {
    color: #333;
    font-size: 14px;
}

.input-radio-custom {
    margin-right: 8px;
    accent-color: #004aad; /* cor de destaque dos radios */
    cursor: pointer;
}

/* Bloco 1 - Full name... END */
/* Bloco 2 - Address START */

.block-address-info {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 20px;
}

.form-grid-span-3 {
    grid-column: span 3;
    display: flex;
    flex-direction: column;
}

.form-grid-span-2 {
    grid-column: span 2;
    display: flex;
    flex-direction: column;
}

/* Bloco 2 - Address END */
/* Bloco 3 - Government ID & SSN START */

.block-government-id {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
}

.label-address-title {
    margin: 0;
    color: #111111;
    font-weight: 400;
    font-family: "Lato", sans-serif;
}

.form-grid-span-2 {
    grid-column: span 2;
    display: flex;
    flex-direction: column;
}

.form-grid-col {
    display: flex;
    flex-direction: column;
}

/* Bloco 3 - END */
/* Bloco 4 - Emergency Contact START */

.block-emergency-contact {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 20px;
}

.form-grid-span-3 {
    grid-column: span 3;
    display: flex;
    flex-direction: column;
}

/* Bloco 4 - END */

/* Bloco 1 - Professional Info START */

.block-professional-info {
    display: grid;
    grid-template-columns: 1.2fr 1fr 0.8fr; /* Company name reduzido */
    gap: 20px;
}

.form-grid-col {
    display: flex;
    flex-direction: column;
}

.form-grid-col-span-2 {
    grid-column: span 2;
    display: flex;
    flex-direction: column;
}

.checkbox-group {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: center;
}

.other-checkbox {
    display: flex;
    align-items: center;
    gap: 5px;
}

.small-input {
    width: 100px;
    padding: 8px;
    font-size: 13px;
}

/* Bloco 1 - Professional Info END */

/* Bloco 3 - Work Authorization & Expected Salary (1 Coluna) START */
.block-work-auth-single {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.section-custom.no-border {
    border-bottom: none !important;
}

.row-checkboxes {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    align-items: center;
}

.checkbox-option {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 14px;
    color: #333;
}

.checkbox-option input[type="checkbox"] {
    accent-color: #004aad;
    cursor: pointer;
}

.with-input input[type="text"] {
    width: 120px;
    margin-left: 4px;
}

.row-compensation {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    margin-top: 8px;
}

.row-compensation .small-input {
    width: 100px;
}

/* Bloco 3 - Work Authorization & Expected Salary (1 Coluna) END */

/* Bloco 1 - Education Level START */
.block-education-field {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.aligned-checkboxes {
    display: flex;
    flex-direction: row;
    gap: 8px;
}


.other-checkbox input[type="text"] {
    width: 150px;
    margin-left: 8px;
}


/* Bloco 1 - Education Level END */

/* Bloco 2 - Certifications & Licenses START */
.block-certifications {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
}

.block-technical-skills {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.checkbox-group {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: center;
}

.other-checkbox {
    display: flex;
    align-items: center;
    gap: 5px;
}

.small-input {
    width: 100px;
    padding: 8px;
    font-size: 13px;
}

/* Bloco 2 - Certifications & Licenses END */

/* Bloco 3 - Technical Skills/Expertise START */
.block-technical-skills {
    display: flex;
    flex-direction: column;
    gap: 20px;
    border-bottom: none !important;
}

.checkbox-group {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: center;
}

.other-checkbox {
    display: flex;
    align-items: center;
    gap: 5px;
}

.small-input {
    width: 100px;
    padding: 8px;
    font-size: 13px;
}

/* Bloco 3 - Technical Skills/Expertise END */

/* Bloco 4 - Languages Spoken START */

.block-language-fluency {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    border-bottom: none !important;
}

.form-grid-span-2 {
    grid-column: span 2;
}

.checkbox-group {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: center;
}

/* Bloco 4 - Languages Spoken END */

/* Bloco 5 - Professional References START */
.block-professional-references {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    border-bottom: none !important;
}

.form-grid-span-2 {
    grid-column: span 2;
}

/* Bloco 5 - Professional References END */

/* Bloco 1 - Most Recent Employer START */

.block-recent-employer {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 20px;
    margin-top: 20px;
    border-bottom: none !important;
}

.form-grid-col {
    display: flex;
    flex-direction: column;
}

.form-grid-col.span-2 {
    grid-column: span 2;
}

.form-grid-span-3 {
    grid-column: span 3;
}

.textarea-custom {
    resize: vertical;
    min-height: 80px;
}
.block-availability-and-final-info {
    border-bottom: none !important;
}

/* Bloco 1 - Most Recent Employer END */




/* ===== RentMTM — Tour Page (compact) ===== */

/* Limita a largura total para os cards ficarem menores proporcionalmente */
.tour__wrap{
  position: relative;
  background: #ffffff;
  border: 1px solid rgba(0,0,0,0.08);
  border-radius: 10px;
  padding: 20px;                 /* antes 26px */
  box-shadow: 0 12px 28px rgba(0,0,0,0.08);
  overflow: hidden;
  max-width: 980px;              /* novo: deixa tudo mais estreito/menor */
  margin: 0 auto;
}

/* Halo/sombra flutuante atrás dos cards menores (afinada) */
.tour__wrap::before{
  content: "";
  position: absolute;
  left: 20px; right: 20px; top: 96px; bottom: 20px; /* antes 26/120/26 */
  pointer-events: none;
  background:
    radial-gradient(60% 50% at 50% 40%,
      rgba(11,147,242,0.16) 0%,
      rgba(0,74,173,0.10) 40%,
      transparent 75%);
  filter: blur(24px);
  z-index: 1;
  opacity: .95;
}

/* Cabeçalho dentro do card maior — azul escuro */
.tour__header{
  position: relative;
  z-index: 2;
  text-align: center;
  margin-bottom: 14px;           /* antes 18px */
}
.tour__header h2{
  font-weight: 700;
  color: #004aad;
  margin-bottom: 6px;            /* antes 8px */
  font-size: 28px;               /* menor que padrão */
}
.tour__header p{
  color: #004aad;
  opacity: .88;
  font-size: 16px;               /* menor */
}

/* Grid 2x2 no desktop, 1xN no mobile, com gap menor */
.tour__grid{
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 18px;                     /* antes 26px */
}

@media (max-width: 900px){
  .tour__grid{ grid-template-columns: 1fr; }
}

/* Card base */
.tour__card{
  background: #ffffff;
  border: 1px solid rgba(0,0,0,.1);
  border-radius: 6px;
  overflow: hidden;
  box-shadow: 0 0 0 rgba(0,0,0,0);
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.tour__card:hover{
  transform: translateY(-3px);
  box-shadow: 0px 8px 24px rgba(0,0,0,.1);
  border-color: transparent;
}

.tour__title{
  font-size: 20px;               /* antes 22px */
  font-weight: 700;
  color: #323232;
  padding: 14px 14px 6px;        /* antes 18/18/8 */
}

/* Player com aspect-ratio e overlay */
.tour__player{
  position: relative;
  background: #000;
  margin: 0 14px;                /* antes 18px */
  border-radius: 8px;
  overflow: hidden;
  aspect-ratio: 16 / 9;
  border: 1px solid rgba(0, 0, 0, 0.08);
  transition: box-shadow .25s ease, transform .25s ease, border-color .25s ease;
}
.tour__card:hover .tour__player{
  box-shadow: 0 6px 14px rgba(0,0,0,.12);
  border-color: rgba(0,0,0,0.12);
}

.tour__player video{
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  background: #000;
}

/* Overlay de play central */
.player__overlay{
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  border: none;
  background: transparent;
  cursor: pointer;
  transition: background-color .2s ease, transform .2s ease, opacity .2s ease;
}
.player__overlay:hover{
  background-color: rgba(0,0,0,0.12);
  transform: scale(1.015);
}

/* Botão de expandir (menor) */
.player__expand{
  position: absolute;
  top: 6px;                      /* antes 8px */
  right: 6px;
  border: none;
  background: rgba(255,255,255,0.92);
  color: #004aad;
  border-radius: 8px;
  width: 30px;                   /* antes 34 */
  height: 28px;                  /* antes 32 */
  display: grid;
  place-items: center;
  cursor: pointer;
  opacity: 0;
  transform: translateY(-6px);
  transition: opacity .2s ease, transform .2s ease, background-color .2s ease;
}
.tour__player:hover .player__expand{
  opacity: 1;
  transform: translateY(0);
}
.player__expand:hover{ background: #ffffff; }

/* Estado expandido (theater) */
.tour__card.is-expanded .tour__player{
  aspect-ratio: 21 / 9;
  border-color: #004aad;
  box-shadow: 0 8px 22px rgba(0,0,0,.16);
}

/* Descrição curta (menor) */
.tour__desc{
  color: #707070;
  padding: 10px 14px 16px;       /* antes 12/18/20 */
  font-size: 15px;               /* antes 16px */
  line-height: 22px;             /* antes 24px */
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* Estado reproduzindo: overlay escondido */
.tour__card.is-playing .player__overlay{
  opacity: 0;
  pointer-events: none;
}

/* Foco acessível */
.player__overlay:focus-visible,
.player__expand:focus-visible{
  outline: 2px solid #004aad;
  outline-offset: 2px;
}
