
/*------------------------------------------------------------------
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;
}

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;
	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: 38px 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;
}

/* 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: block;
	padding: 5px 0;
	position: relative;
}
 /* 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;
	margin-bottom: 5px;
}

.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;
	}

	.top-left-icon {
		left: 10px;
		top: 1px !important;
		width: 40px;
		height: 40px;
		border-radius: 50%;
	}

.checkbox-group {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	justify-content: space-around
}

.checkbox-item {
	display: flex;
	align-items: center;
	gap: 5px;
	white-space: nowrap;
	padding: 3px;
}

.checkbox-item input[type="checkbox"] {
	margin: 0;
}

.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;
}


 .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);
        }


	/* 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;
			}
		}
	}
}