/*------------------------------------------------------------------
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 */

.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;
    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 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 */
    margin-top: inherit;
}

/* 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;
}

.form-wrapper-custom .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 */
}

.bottom-border {
    border-bottom: 1px solid #ddd !important;
}

.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-group {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.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: 1fr;  /* Um campo por linha, ocupando toda a largura disponível (antes 90% + 30% = 120%, que estourava o container) */
    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 */
    color:#fff;
}

.custom-button {
    font-size: 12px; /* Ajuste conforme necessário */
    padding: 5px 10px; /* Reduza o padding para diminuir o tamanho do botão */

}

.nextBtn {
     position: relative;
     z-index: 10;
   }

/* INICIO HELPER CENTER */
/* INICIO HELPER CENTER */

/* ===== ESTILOS GLOBAIS PARA HELPER CENTER ===== */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: "Lato", Arial, sans-serif;
}

html, body {
    height: 100%;
    font-family: "Lato", sans-serif;
    -webkit-font-smoothing: antialiased;
}

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;
}

/* ===== ESTRUTURA PRINCIPAL ===== */
.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: 1200px;
    margin: 50px auto;
    padding: 30px;
    background: white;
    border-radius: 12px;
    box-shadow: 0px 10px 40px rgba(0, 0, 0, 0.4);
    width: 100%;
}

.main-content {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 2rem;
}

/* ===== BOTÕES PRINCIPAIS ===== */
.btn-primary {
    background: #004aad;
    color: white;
    border: none;
    padding: 14px 30px 12px;
    border-radius: 2px;
    cursor: pointer;
    font-weight: 700;
    text-transform: uppercase;
    display: inline-block;
    letter-spacing: 1px;
    transition: background-color 0.3s;
}

.btn-primary:hover {
    background: #003280;
    transform: translateY(-1px);
}

.btn-secondary {
    background: #004aad;
    color: white;
    border: none;
    padding: 14px 30px 12px;
    border-radius: 2px;
    cursor: pointer;
    font-weight: 700;
    text-transform: uppercase;
    display: inline-block;
    letter-spacing: 1px;
    transition: background-color 0.3s;
}

.btn-secondary:hover {
    background: #5a6268;
    transform: translateY(-1px);
}

.back-btn {
    background: none;
    border: none;
    color: #004aad;
    cursor: pointer;
    padding: 0.5rem 0;
    font-weight: 700;
    transition: color 0.3s ease;
}

.back-btn:hover {
    color: #003280;
}

/* ===== CAIXA DE PESQUISA ===== */
.search-box {
    display: flex;
    background: white;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
    border: 1px solid #aaa;
}

.search-box input {
    flex: 1;
    border: none;
    padding: 0.75rem 1rem;
    outline: none;
    font-size: 14px;
    color: #333;
}

.search-box input:focus {
    border-color: #004aad;
}

.search-btn {
    background: #004aad;
    border: none;
    color: white;
    padding: 0.75rem 1rem;
    cursor: pointer;
    transition: background-color 0.3s ease;
}

.search-btn:hover {
    background: #003280;
}

/* ===== MODAL PRINCIPAL ===== */
.modal {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.6);
    z-index: 1000;
    align-items: center;
    justify-content: center;
}

.modal.active {
    display: flex;
}

.modal-content {
    background: white;
    border-radius: 12px;
    padding: 2rem;
    max-width: 500px;
    width: 90%;
    max-height: 90vh;
    overflow-y: auto;
    box-shadow: 0 10px 30px rgba(0,0,0,0.3);
}

.modal-header {
    text-align: center;
    margin-bottom: 1.5rem;
}

.modal-icon {
    display: block;
    margin-bottom: 1rem;
    font-size: 24px;
}

.modal-actions {
    display: flex;
    gap: 1rem;
    justify-content: flex-end;
    margin-top: 1.5rem;
}

/* ===== TELA: HELP CENTER ===== */
.help-center-container {
    max-width: 1000px;
    margin: 0 auto;
}

.hc-screen {
    display: none;
}

.hc-screen.active {
    display: block;
}

.hc-header {
    text-align: center;
    margin-bottom: 2rem;
}

.hc-header h1 {
    color: #004aad;
    margin-bottom: 1rem;
}

.hc-header .search-box {
    max-width: 500px;
    margin: 0 auto;
}

.hc-content {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 2rem;
}

.categories-section h2,
.popular-section h2 {
    color: #004aad;
    margin-bottom: 1rem;
    font-weight: 700;
}

.categories-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    gap: 1rem;
}

.category-card {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 56px 16px;
    background: white;
    border-radius: 8px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
    transition: all 0.3s ease;
    cursor: pointer;
    border: 1px solid #e9ecef;
}

.category-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0,0,0,0.15);
    border-color: #004aad;
}

.category-icon {
    margin-bottom: 0.5rem;
    font-size: 24px;
}

.popular-list {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.popular-item {
    padding: 1rem;
    background: white;
    border-radius: 8px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
    transition: all 0.3s ease;
    cursor: pointer;
    border-left: 4px solid #004aad;
    border: 1px solid #e9ecef;
}

.popular-item:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0,0,0,0.15);
    border-color: #004aad;
}

/* ===== TELA: FAQ ===== */
.faq-header {
    display: flex;
    align-items: center;
    gap: 80px;
    margin-bottom: 80px;
    flex-wrap: wrap;
    width: 753px;
    margin-left: 110px;
}

.faq-header h1 {
    flex: 1;
    color: #004aad;
    font-size: 30px
}

.question-header {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 1.5rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid #e9ecef;
}

.user-avatar {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background: #004aad;
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
}

.user-info {
    display: flex;
    flex-direction: column;
}

.user-name {
    font-weight: 600;
    color: #333;
}

.post-date {
    color: #6c757d;
    font-size: 14px;
}

.answer-content {
    margin-bottom: 2rem;
}

.answer-content h2 {
    color: #004aad;
    margin-bottom: 1rem;
}

.answer-content h3 {
    color: #333;
    margin: 1.5rem 0 1rem 0;
}

.answer-content ol,
.answer-content ul {
    margin-left: 1.5rem;
    margin-top: 1rem;
    color: #5c5c5c;
}

.answer-content li {
    margin-bottom: 0.5rem;
    line-height: 1.5;
}

/* ===== SISTEMA DE FEEDBACK ===== */
.feedback-section {
    background: #f8f9fa;
    padding: 1.5rem;
    border-radius: 8px;
    margin-bottom: 2rem;
}

.feedback-question {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 1rem;
}

.feedback-buttons {
    display: flex;
    gap: 1rem;
}

.feedback-btn {
    background: white;
    border: 2px solid #e9ecef;
    padding: 0.5rem 1rem;
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.feedback-btn:hover {
    border-color: #004aad;
    transform: translateY(-1px);
}

.feedback-btn.positive.active {
    background: #d4edda;
    border-color: #28a745;
    color: #155724;
}

.feedback-btn.negative.active {
    background: #f8d7da;
    border-color: #dc3545;
    color: #721c24;
}

.related-articles {
    margin-bottom: 2rem;
}

.related-articles h2 {
    color: #004aad;
    margin-bottom: 1rem;
}

.related-articles ul {
    list-style: none;
}

.related-articles li {
    margin-bottom: 0.5rem;
}

.related-articles a {
    color: #004aad;
    text-decoration: none;
    transition: color 0.3s ease;
    font-size: 16px;
}

.related-articles a:hover {
    color: #003280;
    text-decoration: underline;
}

/* ===== TELA: BUSCA ===== */
.search-fallback {
    margin-top: 2rem;
}

.fallback-box {
    background: #f8f9fa;
    padding: 1.5rem;
    border-radius: 8px;
    text-align: center;
    border: 1px solid #e9ecef;
}

.fallback-box h3 {
    margin-bottom: 1rem;
    color: #333;
}

.search-header {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 2rem;
    flex-wrap: wrap;
}

.search-header .search-box {
    flex: 1;
    min-width: 300px;
}

.search-results h2 {
    color: #004aad;
    margin-bottom: 1.5rem;
}

.result-item {
    background: white;
    border-radius: 8px;
    padding: 1.5rem;
    margin-bottom: 1rem;
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
    transition: all 0.3s ease;
    cursor: pointer;
    border: 1px solid #e9ecef;
}

.result-item:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0,0,0,0.15);
    border-color: #004aad;
}

.result-header {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 0.5rem;
}

.result-user {
    font-weight: 600;
    color: #333;
}

.result-item h3 {
    color: #004aad;
    margin-bottom: 0.5rem;
}

.result-item p {
    color: #5c5c5c;
    line-height: 1.5;
    font-size: 16px;
}

.feedback-options {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    margin-bottom: 1.5rem;
}

.feedback-option {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1rem;
    border: 2px solid #e9ecef;
    border-radius: 8px;
    background: none;
    cursor: pointer;
    transition: all 0.3s ease;
    text-align: left;
    width: 100%;
}

.feedback-option:hover {
    border-color: #004aad;
    transform: translateY(-1px);
}

.feedback-option.active {
    background: #f8f9fa;
    border-color: #004aad;
}

.option-text {
    flex: 1;
    font-weight: 500;
}

.feedback-comment textarea {
    width: 100%;
    min-height: 80px;
    padding: 0.75rem;
    border: 2px solid #e9ecef;
    border-radius: 6px;
    resize: vertical;
    font-family: inherit;
    font-size: 14px;
}

.feedback-comment textarea:focus {
    border-color: #004aad;
    outline: none;
}

.search-suggestions {
    margin-top: 2rem;
    padding: 1.5rem;
    background: #f8f9fa;
    border-radius: 8px;
    border: 1px solid #e9ecef;
}

.search-suggestions h2 {
    color: #004aad;
    margin-bottom: 1rem;
}

.suggestion-tags {
    display: flex;
    gap: 0.5rem;
    flex-wrap: wrap;
}

.suggestion-tag {
    background: white;
    border: 1px solid #004aad;
    color: #004aad;
    padding: 0.5rem 1rem;
    border-radius: 20px;
    cursor: pointer;
    transition: all 0.3s ease;
    font-size: 14px;
}

.suggestion-tag:hover {
    background: #004aad;
    color: white;
}

.quick-help {
    background: #e7f3ff;
    border: 1px solid #b3d9ff;
    border-radius: 8px;
    padding: 1.5rem;
    margin-top: 2rem;
}

.quick-help h2 {
    color: #004aad;
    margin-bottom: 1rem;
}

.quick-help ul {
    margin-left: 1.5rem;
    color: #004aad;
}

.quick-help li {
    margin-bottom: 0.5rem;
    font-size: 16px;
}

.quick-help a {
    color: #004aad;
    text-decoration: underline;
    font-weight: 600;
}

.quick-help a:hover {
    color: #003280;
}

/* ===== TELA: REPORTAR PROBLEMA ===== */
.report-container {
    max-width: 800px;
    margin: 0 auto;
}

.rp-screen {
    display: none;
}

.rp-screen.active {
    display: block;
}

.rp-header {
    text-align: center;
    margin-bottom: 2rem;
}

.rp-header h1 {
    color: #004aad;
    margin-bottom: 0.5rem;
}

.rp-header h2 {
    color: #5c5c5c;
    font-weight: 400;
}

.type-selection {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 1rem;
    margin-bottom: 2rem;
}

.type-option {
    position: relative;
}

.type-option input[type="radio"] {
    display: none;
}

.type-option label {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 2rem 1rem;
    background: white;
    border: 2px solid #e9ecef;
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.3s ease;
}

.type-option input[type="radio"]:checked + label {
    border-color: #004aad;
    background: linear-gradient(135deg, #f8f9ff 0%, #f0f2ff 100%);
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 74, 173, 0.2);
}

.type-icon {
    margin-bottom: 1rem;
    font-size: 24px;
}

.type-title {
    font-weight: 600;
    color: #333;
    margin-bottom: 0.5rem;
    font-size: 18px;
}

.type-desc {
    color: #5c5c5c;
    line-height: 1.4;
    font-size: 14px;
}

.form-section {
    margin-bottom: 1.5rem;
}

.form-section h3 {
    display: block;
    margin-bottom: 0.5rem;
    font-weight: 600;
    color: #333;
}

.form-section input,
.form-section select,
.form-section textarea {
    width: 100%;
    padding: 0.75rem;
    border: 1px solid #aaa;
    border-radius: 5px;
    transition: border-color 0.3s ease;
    font-size: 14px;
    color: #333;
}

.form-section input:focus,
.form-section select:focus,
.form-section textarea:focus {
    outline: none;
    border-color: #004aad;
    box-shadow: 0 0 5px rgba(0, 74, 173, 0.5);
}

.tips-box {
    background: #e7f3ff;
    border: 1px solid #b3d9ff;
    border-radius: 6px;
    padding: 1rem;
    margin-top: 0.5rem;
}

.tips-box h3 {
    color: #004aad;
    margin-bottom: 0.5rem;
}

.tips-box ul {
    margin: 0.5rem 0 0 1.5rem;
    color: #004aad;
}

.tips-box li {
    margin-bottom: 0.25rem;
    font-size: 14px;
}

.file-upload {
    display: flex;
    align-items: center;
    gap: 1rem;
    flex-wrap: wrap;
}

.file-info {
    color: #5c5c5c;
    font-size: 14px;
}

.verification-section {
    background: white;
    border-radius: 8px;
    padding: 1.5rem;
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
    border: 1px solid #e9ecef;
}

.checklist {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    margin: 1rem 0;
}

.checklist .checkbox {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    cursor: pointer;
    padding: 0.75rem;
    background: #f8f9fa;
    border-radius: 6px;
    transition: background-color 0.3s ease;
}

.checklist .checkbox:hover {
    background: #e9ecef;
}

.checkbox input[type="checkbox"] {
    width: auto;
}

.check-text {
    font-size: 16px;
    color: #333;
}

/* Praise Page (elogios) */
.praise-hero {
    background: linear-gradient(135deg, #fff9c4 0%, #fff59d 100%);
    border: 2px solid #ffd54f;
    border-radius: 12px;
    padding: 2rem;
    text-align: center;
    margin-bottom: 2rem;
}

.praise-icon {
    margin-bottom: 10px;
    font-size: 40px;
}

.praise-hero h2 {
    color: #004aad;
    margin-bottom: 0.5rem;
}

.praise-hero h3 {
    color: #5c5c5c;
    font-weight: 400;
}

.checkbox-group {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    margin-top: 0.5rem;
}

.checkbox-group .checkbox {
    padding: 1rem;
    background: #f8f9fa;
    border-radius: 8px;
    border: 1px solid #e9ecef;
    transition: all 0.3s ease;
    font-size: 16px;
    margin-top: 10px;
}

.checkbox-group .checkbox:hover {
    background: #e9ecef;
    border-color: #004aad;
}

.praise-motivation {
    background: #e8f5e8;
    border: 1px solid #c8e6c9;
    border-radius: 8px;
    padding: 1.5rem;
    margin: 2rem 0;
}

.praise-motivation h2 {
    color: #004aad;
    margin-bottom: 1rem;
}

.praise-motivation h3 {
    color: #333;
    margin-bottom: 1rem;
}

.praise-motivation ul {
    margin-left: 1.5rem;
    color: #1b5e20;
}

.praise-motivation li {
    margin-bottom: 0.5rem;
    font-size: 16px;
}

.praise-thanks {
    text-align: center;
    padding: 1.5rem;
    background: #f3e5f5;
    border-radius: 8px;
    margin: 1rem 0;
}

.thanks-icon {
    margin-bottom: 1rem;
    font-size: 24px;
}

/* Urgency Section */
.urgency-section {
    margin-bottom: 1.5rem;
}

.urgency-options {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    gap: 1rem;
    margin-top: 0.5rem;
}

.urgency-option {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 1rem;
    background: white;
    border: 2px solid #e9ecef;
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.3s ease;
}

.urgency-option input[type="radio"] {
    display: none;
}

.urgency-option input[type="radio"]:checked + .urgency-badge {
    transform: scale(1.1);
}

.urgency-option:hover {
    border-color: #004aad;
}

.urgency-badge {
    padding: 0.25rem 0.75rem;
    border-radius: 12px;
    font-weight: 600;
    margin-bottom: 0.5rem;
    transition: all 0.3s ease;
}

.urgency-badge.low {
    background: #d4edda;
    color: #155724;
}

.urgency-badge.medium {
    background: #fff3cd;
    color: #856404;
}

.urgency-badge.high {
    background: #f8d7da;
    color: #721c24;
}

.urgency-desc {
    color: #5c5c5c;
    font-size: 14px;
}

.verification-header {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 1.5rem;
}

.verification-icon {
    font-size: 24px;
}

.quick-solutions {
    margin-top: 2rem;
    padding: 1.5rem;
    background: #f8f9fa;
    border-radius: 8px;
    border: 1px solid #e9ecef;
}

.quick-solutions h2 {
    color: #004aad;
    margin-bottom: 1rem;
}

.solution-links {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 1rem;
    margin-top: 1rem;
}

.solution-link {
    display: block;
    padding: 1rem;
    background: white;
    border: 1px solid #e9ecef;
    border-radius: 6px;
    text-decoration: none;
    color: #004aad;
    text-align: center;
    transition: all 0.3s ease;
    font-weight: 600;
}

.solution-link:hover {
    border-color: #004aad;
    transform: translateY(-2px);
    background: #004aad;
    color: white;
}

.rp-actions {
    display: flex;
    gap: 1rem;
    justify-content: space-between;
    margin-top: 2rem;
    flex-wrap: wrap;
}
.buttonContact{
    margin-top: 82px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.btn-secondary{
border-radius: 10px;
}

.form-section .nice-select {
  float: none;
}


/* File Preview */
.file-preview {
    margin-top: 0.5rem;
}

.file-item {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem;
    background: #f8f9fa;
    border-radius: 4px;
    margin-bottom: 0.25rem;
}

.file-name {
    font-weight: 500;
    font-size: 14px;
}

.file-size {
    color: #5c5c5c;
    font-size: 12px;
}

.file-remove {
    background: #dc3545;
    color: white;
    border: none;
    border-radius: 50%;
    width: 20px;
    height: 20px;
    cursor: pointer;
    margin-left: auto;
    font-size: 12px;
}

/* ===== RESPONSIVIDADE ===== */
@media (max-width: 768px) {
    .main-content {
        padding: 0 1rem;
    }

    .form-wrapper-custom {
        padding: 20px;
        margin: 20px auto;
    }

    .modal-actions {
        flex-direction: column;
    }

    .modal-actions button {
        width: 100%;
    }

    .hc-content {
        grid-template-columns: 1fr;
    }

    .type-selection {
        grid-template-columns: 1fr;
    }

    .rp-actions {
        flex-direction: column;
    }

    .rp-actions button {
        width: 100%;
    }

    .search-header {
        flex-direction: column;
        align-items: stretch;
    }

    .search-header .search-box {
        min-width: auto;
    }

    .form-grid {
        grid-template-columns: 1fr;
    }

    .urgency-options {
        grid-template-columns: 1fr;
    }

    .solution-links {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 480px) {
    .form-wrapper-custom {
        width: 95%;
        padding: 15px;
    }

    .categories-grid {
        grid-template-columns: 1fr 1fr;
    }

    .feedback-question {
        flex-direction: column;
        align-items: flex-start;
    }

    .feedback-buttons {
        width: 100%;
        justify-content: space-between;
    }
}

/* Tablet Device = 768px */
@media only screen and (min-width: 768px) and (max-width: 991px) {
    .help-center-container,
    .report-container {
        max-width: 90%;
    }
}

/* Wide Mobile = 480px */
@media only screen and (max-width: 767px) {
    .help-center-container,
    .report-container {
        max-width: 95%;
    }

    .hc-header h1,
    .rp-header h1,
    .faq-header h1 {
        font-size: 28px;
    }

    .hc-header h2,
    .rp-header h2 {
        font-size: 18px;
    }
}
/* Container principal do contact */
.contact-container {
    max-width: 800px;
    margin: 0 auto;
    padding: 2rem;
}

.contact-screen {
    display: none;
}

.contact-screen.active {
    display: block !important;
}

/* Header do contact */
.contact-header {
    text-align: center;
    margin-bottom: 2rem;
}

.contact-header h1 {
    color: #004aad;
    margin-bottom: 0.5rem;
}

.contact-header h2 {
    color: #5c5c5c;
    font-weight: 400;
}

/* Seções do formulário de contato */
.contact-section {
    background: white;
    border-radius: 8px;
    padding: 1.5rem;
    margin-bottom: 1.5rem;
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
    border: 1px solid #e9ecef;
}

.contact-section h3 {
    color: #004aad;
    margin-bottom: 1rem;
    font-weight: 600;
}

/* Grid do formulário de contato */
.contact-form-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1.5rem;
    margin-bottom: 1.5rem;
}

@media (max-width: 768px) {
    .contact-form-grid {
        grid-template-columns: 1fr;
    }
}

/* Campos do formulário */
.contact-field {
    display: flex;
    flex-direction: column;
    margin-bottom: 1rem;
}

.contact-field label {
    font-weight: 600;
    color: #333;
    margin-bottom: 0.5rem;
    font-size: 14px;
}

.contact-field input,
.contact-field select,
.contact-field textarea {
    padding: 0.75rem;
    border: 1px solid #aaa;
    border-radius: 5px;
    font-size: 14px;
    transition: border-color 0.3s ease;
    width: 100%;
    box-sizing: border-box;
}

.contact-field input:focus,
.contact-field select:focus,
.contact-field textarea:focus {
    outline: none;
    border-color: #004aad;
    box-shadow: 0 0 5px rgba(0, 74, 173, 0.5);
}

.contact-field textarea {
    min-height: 120px;
    resize: vertical;
    font-family: inherit;
}

/* Campos de full width */
.contact-field.full-width {
    grid-column: 1 / -1;
}

/* Informações de contato */
.contact-info {
    background: #e7f3ff;
    border: 1px solid #b3d9ff;
    border-radius: 6px;
    padding: 23px;
    margin: 10px;

}

.contact-info h3 {
    margin-top: 10px;
}

.contact-info h4 {
    color: #004aad;
    margin-bottom: 0.5rem;
}

.contact-info p {
    color: #0066cc;
    margin-bottom: 0.5rem;
    font-size: 14px;
}

/* Configurações de notificação */
.notification-settings {
    background: #f8f9fa;
    border-radius: 6px;
    padding: 1rem;
    margin-top: 1rem;
}

.notification-options {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.notification-option {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.notification-option input[type="radio"] {
    margin: 0;
}

.notification-option label {
    font-weight: normal;
    color: #333;
    cursor: pointer;
}

/* Seção de revisão */
.review-section {
    background: white;
    border-radius: 8px;
    padding: 1.5rem;
    margin-bottom: 1.5rem;
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
    border: 1px solid #e9ecef;
}

.review-section h3 {
    color: #004aad;
    margin-bottom: 1rem;
}

.review-details {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.review-item {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    padding: 1rem;
    background: #f8f9fa;
    border-radius: 6px;
}

.review-label {
    font-weight: 600;
    color: #333;
    min-width: 120px;
}

.review-value {
    color: #5c5c5c;
    flex: 1;
}

/* Checkbox de termos */
.terms-agreement {
    background: #f8f9fa;
    border-radius: 6px;
    padding: 1rem;
    margin: 1.5rem 0;
}

.checkbox {
    display: flex;
    align-items: flex-start;
    gap: 0.5rem;
    cursor: pointer;
}

.checkbox input[type="checkbox"] {
    margin-top: 0.2rem;
}

.checkbox-text {
    font-size: 14px;
    color: #333;
    line-height: 1.4;
}

.checkbox-text a {
    color: #004aad;
    text-decoration: underline;
}

.checkbox-text a:hover {
    color: #003280;
}

/* Ações do contact */
.contact-actions {
    display: flex;
    gap: 1rem;
    justify-content: flex-end;
    margin-top: 2rem;
    flex-wrap: wrap;
}

.contact-actions .btn-primary,
.contact-actions .btn-secondary {
    min-width: 120px;
}

/* Modal de confirmação de contato */
#contact-confirm-modal .modal-content {
    max-width: 500px;
    text-align: center;
}

.confirmation-details {
    background: #f8f9fa;
    border-radius: 6px;
    padding: 1rem;
    margin: 1rem 0;
}

.protocol-number {
    font-weight: 700;
    color: #004aad;
    font-size: 18px;
}

/* Estados de erro e validação */
.contact-field.error input,
.contact-field.error select,
.contact-field.error textarea {
    border-color: #dc3545;
    box-shadow: 0 0 5px rgba(220, 53, 69, 0.3);
}

.error-message {
    color: #dc3545;
    font-size: 12px;
    margin-top: 0.25rem;
}

/* Loading state */
.loading {
    opacity: 0.6;
    pointer-events: none;
}

.loading::after {
    content: ' (Enviando...)';
    font-style: italic;
    color: #004aad;
}

/* Responsividade */
@media (max-width: 768px) {
    .contact-container {
        padding: 1rem;
    }

    .contact-actions {
        flex-direction: column;
    }

    .contact-actions .btn-primary,
    .contact-actions .btn-secondary {
        width: 100%;
    }

    .review-item {
        flex-direction: column;
        gap: 0.5rem;
    }

    .review-label {
        min-width: auto;
    }
}

@media (max-width: 480px) {
    .contact-section {
        padding: 1rem;
    }

    .contact-header h1 {
        font-size: 24px;
    }

    .contact-header h2 {
        font-size: 16px;
    }
}

/* Garantir compatibilidade com JavaScript existente */
.editable-field {
    border: 1px solid #ccc !important;
    padding: 8px 12px !important;
    border-radius: 4px !important;
    background-color: #fff !important;
    pointer-events: auto !important;
}

.editable-field:focus {
    outline: none !important;
    border-color: #004aad !important;
    box-shadow: 0 0 5px rgba(0, 74, 173, 0.3) !important;
}

.submit-btn {
    background-color: #004aad !important;
    color: white !important;
    padding: 12px 24px !important;
    border: none !important;
    border-radius: 5px !important;
    cursor: pointer !important;
    margin-top: 20px !important;
    transition: background-color 0.3s !important;
    pointer-events: auto !important;
}

.submit-btn:hover {
    background-color: #003280 !important;
}

.submit-btn:active {
    transform: translateY(1px) !important;
}

.button-container {
    text-align: center !important;
    margin-top: 30px !important;
}

/* Modal de contato específico */
.modalContact {
    display: none !important;
    position: fixed !important;
    z-index: 1000 !important;
    left: 0 !important;
    top: 0 !important;
    width: 100% !important;
    height: 100% !important;
    background-color: rgba(0,0,0,0.5) !important;
}

.modalContact.active {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.modalContact-content {
    background-color: white !important;
    margin: 15% auto !important;
    padding: 30px !important;
    border-radius: 10px !important;
    width: 80% !important;
    max-width: 500px !important;
    text-align: center !important;
    box-shadow: 0 4px 8px rgba(0,0,0,0.2) !important;
    position: relative !important;
}

.modal-icon {
    margin-bottom: 20px !important;
    font-size: 48px !important;
}

.modal-title {
    color: #004aad !important;
    margin-bottom: 15px !important;
    font-size: 24px !important;
    font-weight: 700 !important;
}

.modal-message {
    color: #5c5c5c !important;
    margin-bottom: 25px !important;
    line-height: 1.5 !important;
    font-size: 16px !important;
}

.modal-btn {
    background-color: #004aad !important;
    color: white !important;
    padding: 10px 20px !important;
    border: none !important;
    border-radius: 5px !important;
    cursor: pointer !important;
    font-size: 16px !important;
    transition: background-color 0.3s !important;
    pointer-events: auto !important;
}

.modal-btn:hover {
    background-color: #003280 !important;
}
/* License Plate: um campo por linha, cada um usando toda a largura do
   container. O título traz `grid-column: span 2` inline (herança do grid de
   duas colunas); com uma coluna só, esse span criaria uma coluna implícita,
   então ele é forçado a ocupar a linha inteira. */
.grid-container > .grid-item,
.grid-container > .subtext-right {
    grid-column: 1 / -1 !important;
    width: 100%;
}

.grid-container > .grid-item input,
.grid-container > .grid-item select {
    width: 100%;
    box-sizing: border-box;
}

/* O bloco da License Plate ocupa a linha inteira do formulário, para os campos
   poderem se esticar até a largura máxima disponível. */
.input-field-plate {
    grid-column: 1 / -1 !important;
    width: 100% !important;
}
