/* Reset */
*{
	font-family: 'Inter', sans-serif;
	box-sizing: border-box;
	margin: 0;
	padding: 0;
}

html {
	scroll-behavior: smooth;
	overflow-x: hidden;
}

a {
	text-decoration: none !important;
}

h1, h2, h3, h4, h5 {
	margin: 0;
	padding: 0 !important;
}

body {
	background: url(../../img/background-home.jpg);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
}

/* Botões */
._primary {
	padding: 14px 32px;
	background: #2762D5;
	border-radius: 4px;
	border: none;
	color: #fff;
	font-weight: 600;
	font-size: 14px;
	letter-spacing: -0.04em;
	transition: .4s;
    margin: 0 auto;
}

._primary:hover {
	background: #4e89ff;
	color: #fff;
}

._primary:focus {
	outline: none;
}

._secondary {
	padding: 14px 32px;
	background: rgba(78, 137, 255, .2);
	border-radius: 4px;
	border: 1px solid #4e89ff;
	color: #fff;
	font-weight: 600;
	font-size: 14px;
	letter-spacing: -0.04em;
	transition: .4s;
  margin: 0 auto;
	margin-left: 24px;
	box-sizing: border-box;
}

._secondary:hover {
    background: rgba(78, 137, 255, .4);
}

._secondary:focus {
	outline: none;
}

._secondary .icon-nav {
	color: #fff;
	transition: .2s ease-in-out;
}

._secondary:hover > .icon-nav {
	-webkit-transform: scale(1.1);
     -moz-transform: scale(1.1);
     -ms-transform: scale(1.1);
     -o-transform: scale(1.1);
     transform: scale(1.1);
}

.navbar-home ._primary {
	position: absolute;
	right: 0;
	bottom: 16px;
}

._terciary {
	padding: 14px 32px;
	background: transparent;
	border: none;
	border-radius: 4px;
	background: #E3E8EF;
	color: #0F0F15;
	font-weight: 700;
	font-size: 16px;
	letter-spacing: -0.04em;
	transition: .4s;
  margin: 0 auto;
}

._terciary:hover {
	background: rgb(236, 238, 240);
}

._terciary:focus {
	outline: none;
}

/* Nav bar e Hero Section */
.hero-section {
	padding: 0px 72px 72px;
	height: 100vh;
}
.navbar-home {
	padding: 24px 16px !important;
	border-bottom: 1px solid #312F3F;
	margin: 0px 0px 72px;
}
.navbar-home .nav-link {
	color: #fff !important;
	padding: 0px 12px !important;
	transition: .2s ease-in-out;
	font-size: 13px;
	font-weight: 600;
}
.navbar-home .nav-link:hover {
	opacity: .3;
}
.nav-link:hover ~ .icon-nav {
	opacity: .3;
}
.icon-nav {
	width: 16px;
	height: 16px;
	color: #fff;
	transition: .4s;
}
.navbar-home .icon-nav {
	position: absolute;
	top: 43%;
}
.btn-menu {
	border: 1px solid rgba(255, 255, 255, .1) !important;
	width: 56px;
	height: 56px;
	border-radius: 96px !important;
	transition: .4s ease-in-out;
}
.btn-menu.active {
	outline: none;
	background-color: rgba(255, 255, 255, .1);
	border: none;
	color: #0F0F15 !important;
}
.btn-menu:focus {
	outline: none;
}

#nav-icon4 {
	margin-top: -10px;
	margin-left: 4px;
	width: 22px;
	height: 2px;
	position: relative;
	-webkit-transform: rotate(0deg);
	-moz-transform: rotate(0deg);
	-o-transform: rotate(0deg);
	transform: rotate(0deg);
	-webkit-transition: .5s ease-in-out;
	-moz-transition: .5s ease-in-out;
	-o-transition: .5s ease-in-out;
	transition: .5s ease-in-out;
	cursor: pointer;
}

#nav-icon4 span {
	display: block;
	position: absolute;
	height: 2px;
	width: 100%;
	background: #fff;
	border-radius: 9px;
	opacity: 1;
	left: 0;
	-webkit-transform: rotate(0deg);
	-moz-transform: rotate(0deg);
	-o-transform: rotate(0deg);
	transform: rotate(0deg);
	-webkit-transition: .25s ease-in-out;
	-moz-transition: .25s ease-in-out;
	-o-transition: .25s ease-in-out;
	transition: .25s ease-in-out;
}

#nav-icon4 span:nth-child(1) {
	top: 0px;
	-webkit-transform-origin: left center;
	-moz-transform-origin: left center;
	-o-transform-origin: left center;
	transform-origin: left center;
}

#nav-icon4 span:nth-child(2) {
	top: 10px;
	-webkit-transform-origin: left centerprim;
	-moz-transform-origin: left center;
	-o-transform-origin: left center;
	transform-origin: left center;
}

#nav-icon4 span:nth-child(3) {
	top: 20px;
	-webkit-transform-origin: left center;
	-moz-transform-origin: left center;
	-o-transform-origin: left center;
	transform-origin: left center;
}

#nav-icon4.open span:nth-child(1) {
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	transform: rotate(45deg);
	top: 0px;
	left: 4px;
}

#nav-icon4.open span {
	color: #0F0F15 !important;
}

#nav-icon4.open span:nth-child(2) {
	width: 0%;
	opacity: 0;
}

#nav-icon4.open span:nth-child(3) {
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	transform: rotate(-45deg);
	top: 16px;
	left: 4px;
}

/* Modal Login */
.modal {
	backdrop-filter: blur(4px) !important;
}

.box-modal {
    box-shadow: none;
    border-radius: 16px;
    border: 0;
    padding: 24px;
 }

.modal#modal-validar-documentos .modal-dialog .box-modal {
	padding-bottom: 40px;
}

.box-modal p {
	text-align: center;
	font-weight: 400;
	color: #97A3B6;
	margin-top: 16px;
	width: 80%;
	margin: 0 auto;
}

.form-control {
	padding: 24px 0px 24px 48px;
	border-radius: 8px;
	font-weight: 500;
	color: #4E5E6F;
	border: 2px solid #116ACC;
}

.form-control::placeholder {
	color: #D1D5DB;
	font-weight: 400;
}

.form-control:focus {
	outline: 0px;
	box-shadow: none;
	outline: 2px solid #bdddff;
}

.icon-user {
  position:relative;
  top:38px; left:14px;
  color: #0F0F15;
}

.icon-lock {
  position:relative;
  top:24px; left:14px;
  color: #0F0F15;
}

.password {
	font-weight: 600;
	color: #116ACC;
}

#show_password {
  position: relative;
  top: -34px;
  left: calc(100% - 40px);
  color: #0F0F15;
  width: 18px;
  height: 18px;
  cursor: pointer;
}

.pass {
	margin-top: -12px;
}

.header-login-form {
	border-bottom: 0 !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
}

.btn-close {
	border: none;
	width: 32px;
	height: 32px;
	background-color: transparent;
	color: #6E7C99;
	position: absolute;
	right: 16px !important;
	top: 16px;
	border-radius: 64px;
	cursor: pointer !important;
	z-index: 1;
	transition: .4s ease;
}

.btn-close i {
	width: 16px;
	height: 16px;
}

.btn-close:focus {
	outline: none;
}

.modal-body .titulo {
	font-weight: 700;
	color: #182233;
	font-size: 2rem;
}

.modal ._primary {
	border-radius: 32px;
	font-size: 16px;
}
.modal ._terciary {
	border-radius: 32px;
	font-size: 16px;
}
.govbr-link-modal {
	width: 100% !important;
}

/* Modal Validação de documentos */



/* Conteúdo da hero section */
.enphasis-text {
	color: #2762D5;
}

.hero {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}

.hero .cta-buttons{
    flex-direction: column;
}

.hero h1{
	font-weight: 700;
	font-size: 4rem;
    width: 80%;
    text-align: center;
	letter-spacing: -0.04em;
	color: #fff;
	margin-top: -40px;
}

.hero p {
	font-weight: 400;
	font-size: 1.3rem;
	letter-spacing: -0.04em;
	color: #C5C5C5;
	width: 30%;
	text-align: center;
	margin-top: 16px;
}

.drop-in {
	animation: drop-in 500ms ease 200ms backwards;
}

.drop-in-2 {
	animation: drop-in 800ms ease 500ms backwards;
}

@keyframes drop-in {
	from {
	 opacity: 0;
	 transform: translateY(-100px);
	}
	to {
	 opacity: 1;
	 transform: translate(0px);
	}
}

.logo-sga-sefin {
	margin-top: 32px;
}

/* Seção de serviços */
.box-icon {
    width: 56px;
    height: 56px;
    border-radius: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255,255,255,.1);
    position: absolute;
}
.box-icon .icon-card {
	color: #fff !important;
}
.card-links {
	padding-top: 32px;
	Padding-left: 72px;
	padding-right: 72px;
}
.card-body {
	padding: 16px !important;
}
.card {
	background: #2762D5;
	border: none;
	padding: 8px;
	cursor: pointer;
	transition: .4s ease-in-out;
	position: relative;
	top: -96px;
	box-sizing: border-box !important;
	border-radius: 8px;
}

.card:hover {
	background: #0b59f5;
}
.card:focus {
	background: rgba(255, 255, 255, 0.8);
}
.card h5 {
	font-weight: 500;
	font-size: 0.9em;
	margin-top: 40px;
	color: #fff;
	margin-top: 80px;
}
.card .card-icon {
	position: absolute;
	width: 18px;
	height: 18px;
	transition: .1s ease-in-out;
	color: rgba(255, 255, 255, 0.4);
}

.card:hover .card-icon {
	margin-top: -5px;
	margin-left: 5px;
}

/* Estilizando Modal de Validar Documentos */

.cards-validation .card {
	top: 16px;
	background: #F2F5F9;
	padding: 4px;
	
}

.cards-validation .card:hover {
	top: 16px;
	background: #E3E8EF;
	
}

.cards-validation .card h5 {
	color: #0A2156;
	font-weight: 600;
}

.cards-validation .card .card-icon {
	color: #CDD5E0;
	position: absolute;
}

.cards-validation .card .box-icon {
    background: #2762D5;
}

.cards-validation .card .box-icon .icon-card {
    width: 20px;
	height: 20px;
}

.cards-validation .row {
	margin-top: 32px;
}

.alert{
	text-align: center;
}

.copywrite{
	padding: 0px 72px 72px 72px;
}

.lojas{
	display: flex;
	flex-direction: row;
	align-items: flex-start;
	gap: 16px;
}
.scroll-button {
	display: flex;
	align-items:flex-end;
	justify-content: flex-end;
}

.scroll-top-button {
	border: none;
	color: #fff;
	width: 64px;
	height: 64px;
	border-radius: 50%;
	background:rgba(255, 255, 255, 0.041);
	transition: .4s ease;
}

.scroll-top-button:hover {
	background:rgba(255, 255, 255, 0.116);
}
.scroll-top-button:focus {
	outline: none;
}
/* Breakpoints */

@media only screen and (min-width: 320px) and (max-width: 480px) {
	.navbar-home .nav-link {
		padding: 16px 0px !important;
	}
	.navbar-home ._primary {
		position: relative;
		width: 100%;
		margin-top: 32px;
	}
	.hero-section {
		padding: 0;
        background: url(../../img/background-mobile.svg);
        background-repeat: no-repeat;
        background-size: 100%;
		height: 100vh !important;
	}
	.hero h1 {
		font-size: 2.5rem;
		margin: 0 auto !important;
        width: 100%;
		margin-top: -16px;
	}
	.hero p {
		font-size: 1em;
		width: 300px;
	}
	._primary {
		padding: 14px 36px;
	}
	._secondary {
		margin-left: 4px;
		padding: 14px 24px;
	}
	.right-section img {
		top: 32px;
		left: -42%;
		width: 704px;
		height: 341px;
		padding-bottom: 32px;
	}
	.text-section {
		padding: 16px;
		margin-top: -32px;
	}
	.text-section h1 {
		font-size: 2em;
	}
	.text-section p {
		font-weight: 400;
		font-size: 0.8em;
		letter-spacing: -0.04em;
		width: 100%;
	}
	.cta-buttons {
		margin: 0 auto;
	}
	.swiper-slide {
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: flex;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		-webkit-justify-content: center;
		justify-content: center;
		-webkit-box-align: center;
		-ms-flex-align: center;
		-webkit-align-items: center;
		align-items: center;
   }
   .box-modal {
    	padding: 8px;
 	}
	.box-modal h4 {
		font-size: 24px !important;
	}
	.card {
		margin-top: 32px !important;
	}
	.card-links {
		margin-bottom: -32px;
		padding-right: 8px;
		padding-left: 8px;
	}
	.logo-sga-sefin {
		width: 80%;
		height: 80%;
	}
	.copywrite {
		padding: 8px 0px 32px 8px;
	}
	.copywrite h5 {
		text-align: center;
	}
	.lojas {
		align-items: center;
		justify-content: center;
	}
	.scroll-button {
		align-items: center !important;
		justify-content: center !important;
	}
}

@media only screen and (min-width: 481px ) and (max-width: 1024px) {
	.hero-section {
		padding: 0;
        background: url(../../img/background-tablet.svg);
        background-repeat: no-repeat;
        background-size: 100%;
	}
	.navbar-home .nav-link {
		padding: 24px 0px !important;
	}
	.navbar-home ._primary {
		position: relative;
		margin-top: 32px;
	}
	.card {
		margin-top: 32px !important;
	}
	.card-links {
		margin-bottom: -32px;
		padding-left: 0px;
		padding-right: 0px;
	}
	.hero p {
		width: 60% !important;
	}
	.copywrite h5 {
		text-align: center;
	}
	.lojas {
		align-items: center;
		justify-content: center;
	}
	.scroll-button {
		align-items: center !important;
		justify-content: center !important;
	}
}
@media only screen and (min-width: 1440px ) and (max-width: 1920px) {
	.hero h1 {
		font-size: 5em;
	}
	.card {
		top: -124px;
	}
}
