@import url("https://fonts.googleapis.com/css2?family=Nunito:ital,wght@0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;0,1000;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900;1,1000&display=swap");
body {
	background-color: #fff;
	color: #072734;
	font-weight: 500;
}

* {
	font-family: "Nunito", sans-serif;
}

:root {
	--logos-height-desktop: calc(100vw / 11); /* constante aproximada baseada na ratio da imagem */
	--footer-copy-height-desktop: 4.375rem;

	--logos-height-mobile: calc(100vw * 2.2); /* constante aproximada baseada na ratio da imagem */
	--footer-copy-height-mobile: 4.75rem;
	/* ToDo limitar tamanho da logo pra funcionar */

	--nav-bar-height-desktop: 4.5rem;
	--nav-bar-height-mobile: 3rem;
	--footer-height-desktop: calc(var(--logos-height-desktop) + var(--footer-copy-height-desktop));
	--footer-height-mobile: calc(var(--logos-height-mobile) + var(--footer-copy-height-mobile));

	--height-without-nav-bar-desktop: calc(100vh - var(--nav-bar-height-desktop)); /* reduced by navbar size + offset */
	--height-without-nav-bar-mobile: calc(100vh - var(--nav-bar-height-mobile)); /* reduced by navbar size + offset */
	--height-without-nav-bar-and-footer-desktop: calc(var(--height-without-nav-bar-desktop) - var(--footer-height-desktop));
	--height-without-nav-bar-and-footer-mobile: calc(var(--height-without-nav-bar-mobile) - var(--footer-height-mobile));
}

.logos {
	height: var(--logos-height-mobile);
}

#footer {
	height: var(--footer-height-mobile);
}

@media (min-width: 992px) {
	.logos {
		height: var(--logos-height-desktop);
	}

	#footer {
		height: var(--footer-height-desktop);
	}
}

a {
	color: #0f5b91;
}

.btn-secondary {
	background-color: #0f5b91;
	border-color: #0f5b91;
}
.btn-secondary:hover,
.btn-secondary:first-child:active {
	background-color: #085083;
	border-color: #085083;
}

.btn-primary,
.list-group-item.active {
	background-color: #072734;
	border-color: #072734;
	color: #fff;
}
.btn-primary:hover,
.btn-primary:first-child:active,
.list-group-item.active:hover,
.list-group-item.active:first-child:active {
	background-color: #021922;
	border-color: #021922;
}

.accordion-button:not(.collapsed) {
	background-color: #fff;
}

.accordion .accordion .accordion-button:focus {
	box-shadow: none;
}

.material-symbols-outlined {
	height: 100%;
	vertical-align: middle;
}
.material-symbols-outlined.md-18 {
	font-size: 18px;
}
.material-symbols-outlined.md-24 {
	font-size: 24px;
}
.material-symbols-outlined.md-36 {
	font-size: 36px;
}
.material-symbols-outlined.md-48 {
	font-size: 48px;
}
.material-symbols-outlined.md-48 {
	font-size: 48px;
}
.material-symbols-outlined.md-xxl {
	font-size: 192px;
}

.big-btn {
	align-items: center;
	background-color: #fff;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	border-radius: 16px;
	color: #072734;
	display: flex;
	font-size: 1.125em;
	font-weight: 900;
	justify-content: center;
	min-height: 160px;
	position: relative;
	text-align: center;
	text-transform: uppercase;
	transition: transform 0.25s ease-in-out;
	width: 100%;
}
.big-btn:hover {
	transform: scale(1.05, 1.05);
}
.big-btn.bt-id {
	background-image: url(../img/bg-bt-id_2.jpg);
}
.big-btn.bt-sign {
	background-image: url(../img/bg-bt-sign_2.jpg);
}
.big-btn.bt-verify {
	background-image: url(../img/bg-bt-verify_2.jpg);
}
.big-btn a.inner {
	text-decoration: none;
	color: inherit;
}
.big-btn .inner {
	align-items: center;
	cursor: pointer;
	display: flex;
	justify-content: center;
	line-height: 1.125em;
	position: absolute;
	width: 100%;
	height: 100%;
}
.big-btn .inner a {
	align-items: center;
	color: inherit;
	display: flex;
	height: 100%;
	justify-content: center;
	text-decoration: none;
	width: 100%;
}
@media (min-width: 768px) {
	.big-btn .inner {
		max-width: 80%;
	}
}
@media (min-width: 992px) {
	.big-btn {
		min-height: 180px;
	}
	.big-btn .inner {
		max-width: none;
	}
}

.separator {
	align-items: center;
	display: flex;
	height: 100%;
	min-height: 100%;
	padding: 0 1.125rem;
	position: relative;
}
.separator::before {
	background-color: #ddd;
	content: "";
	display: block;
	height: 100%;
	left: 50%;
	position: absolute;
	transform: translateX(-50%);
	width: 1px;
}

.gray-gradient-top {
	background: linear-gradient(
		0deg,
		rgb(255, 255, 255) 0%,
		rgb(218, 229, 233) 100%
	);
	background-repeat: repeat-x;
	background-size: auto 260px;
}

.nav-bar {
	align-items: center;
	box-sizing: border-box;
	background-color: #fff;
	color: #072734;
	display: flex;
	justify-content: space-between;
	height: var(--nav-bar-height-mobile);
	padding: 8px 16px;
}
.nav-bar .logo-area {
	align-items: center;
	display: flex;
	font-size: 1.25rem;
	font-weight: 900;
	height: 100%;
}
.nav-bar .logo-area a {
	color: inherit;
	display: block;
	font-weight: inherit;
	height: 100%;
	text-decoration: none;
}
.nav-bar .logo-area .menu {
	align-items: center;
	display: flex;
	height: 100%;
}
.nav-bar .logo-area .logo {
	align-items: center;
	display: flex;
	height: 100%;
}
.nav-bar .logo-area .logo a {
	display: flex;
	height: 100%;
	align-items: center;
}
.nav-bar .logo-area .logo a img {
	max-height: 32px;
}
.nav-bar .logo-area .title {
	align-items: center;
	display: flex;
	height: 100%;
}
.nav-bar .logo-area .title a {
	display: flex;
	height: 100%;
	align-items: center;
}
.nav-bar .title-area {
	align-items: center;
	display: flex;
	font-size: 1.25rem;
	font-weight: 900;
	height: 100%;
}
.nav-bar .title-area a {
	align-items: center;
	color: inherit;
	display: flex;
	font-weight: inherit;
	height: 100%;
	text-decoration: none;
}
.nav-bar .title-area .menu {
	font-size: 1rem;
	font-weight: 500;
	align-items: center;
	display: flex;
	height: 100%;
}
.nav-bar .title-area .menu a {
	cursor: pointer;
	height: auto;
	text-decoration: none;
}
.nav-bar .title-area .menu a.item {
	box-sizing: border-box;
	border-bottom: 4px solid transparent;
	display: inline-block;
	padding: 0.375rem 1rem;
	margin: 0 0.375rem;
	text-align: center;
	vertical-align: middle;
	transition: border 0.3s ease-in-out;
}
.nav-bar .title-area .menu a.item.active {
	border-bottom-color: #072734;
	font-weight: 700;
}
.nav-bar .title-area .menu a.item:not(.active):hover {
	border-bottom-color: #ced4da;
	color: #0f5b91;
}
.nav-bar .btns-area {
	align-items: center;
	display: flex;
	height: 100%;
}
.nav-bar .btns-area .btn {
	--bs-btn-padding-y: 0.25rem;
	--bs-btn-padding-x: 0.5rem;
	--bs-btn-font-size: 0.875rem;
	--bs-btn-border-radius: 0.25rem;
}
@media (min-width: 992px) {
	.nav-bar {
		height: var(--nav-bar-height-desktop);
	}
	.nav-bar .logo-area {
		font-size: 1.75em;
	}
	.nav-bar .logo-area .logo a img {
		max-height: 42px;
	}
	.nav-bar .logo-area .logo-sm img {
		max-height: 32px;
	}
	.nav-bar .btns-area .btn {
		--bs-btn-padding-x: 0.75rem;
		--bs-btn-padding-y: 0.375rem;
		--bs-btn-font-size: 1rem;
		--bs-btn-border-radius: 0.375rem;
	}
}

.mobile-menu .list-group .list-group-item a {
	text-decoration: none;
}

.presentation {
	background: rgb(218, 229, 233);
	background: linear-gradient(
		0deg,
		rgb(255, 255, 255) 0%,
		rgb(218, 229, 233) 100%
	);
	position: relative;
}
.presentation .text {
	color: #072734;
	display: flex;
	flex-direction: column;
	font-size: 1.35em;
	height: 100%;
	justify-content: center;
	position: relative;
	z-index: 2;
}
.presentation .text h1 {
	font-weight: 900;
	font-size: 1.125em;
}
.presentation .text p {
	font-size: 0.85em;
}
@media (min-width: 992px) {
	.presentation .text {
		font-size: 1.75em;
	}
	.presentation .text h1 {
		font-size: 1.125em;
	}
	.presentation .text p {
		font-size: 0.85em;
	}
}
.presentation .icon {
	align-items: center;
	display: flex;
	justify-content: center;
	height: 100%;
	position: relative;
	z-index: 3;
}
.presentation .icon img {
	max-height: 120px;
	margin-top: 30px;
}
@media (min-width: 992px) {
	.presentation .icon img {
		max-width: 120px;
		max-height: none;
		margin: 0;
	}
}

.cta {
	background-color: #fff;
}
.cta .big-btn {
	background-color: #0f5b91;
	color: #fff;
	min-height: 200px;
	text-shadow: 2px 2px 5px rgba(0, 0, 0, 0.75);
}
@media (min-width: 992px) {
	.cta .big-btn {
		font-size: 1.75em;
		min-height: 300px;
	}
}

.hiw {
	background-color: #0f5b91;
	color: #fff;
}
.hiw p {
	font-size: 1.125em;
}
.hiw h1.title {
	font-size: 2.125em;
	font-weight: 900;
}
.hiw h3 {
	font-weight: 700;
}
.hiw .video-embed iframe {
	max-width: 100%;
}
@media (min-width: 992px) {
	.hiw p {
		font-size: 1.25em;
	}
	.hiw h1.title {
		font-size: 3em;
	}
}

.login .card,
.register .card {
	margin-left: auto;
	margin-right: auto;
}
.login .card .card-header,
.register .card .card-header {
	background-color: #072734;
	color: #fff;
}
.login .card .card-header h1,
.register .card .card-header h1 {
	font-size: 1.5em;
	font-weight: 700;
	margin: 0;
}
@media (min-width: 768px) {
	.login .card,
	.register .card {
		width: 50%;
	}
}
@media (min-width: 992px) {
	.login .card,
	.register .card {
		width: 35%;
	}
}

.file label {
	font-size: 1.75em;
	font-weight: 900;
	line-height: 1.125em;
	margin-bottom: 0.75em;
}
.file .form-control {
	min-height: calc(1.5em + 0.5rem + var(--bs-border-width) * 2);
	padding: 0.25rem 0.5rem;
	font-size: 0.875rem;
	border-radius: 0.25rem;
}
#inputContainer {
	border-radius: 0.25rem; /* Bordas arredondadas como no estilo padrão do Bootstrap */
	outline: 3px solid rgba(15, 91, 145, 1.0);
	box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);
}
@media (min-width: 992px) {
	.file label {
		font-size: 2.25em;
	}
	.file .file-input-area {
		max-width: 66%;
		margin-right: auto;
		margin-left: auto;
	}
	.file .form-control {
		border-radius: 0.375rem;
		font-size: 1rem;
		min-height: 0;
		padding: 0.375rem 0.75rem;
	}
}

.user h2 {
	font-weight: 700;
}
.user .data-area .user-data {
	margin: 1rem 0;
}
.user .data-area .user-data p {
	margin: 0;
	padding: 0 0.75rem;
}
.user .data-area .user-data h6 {
	background-color: #f8f9fa;
	border: 1px solid #e9ecef;
	border-radius: 0.375rem;
	font-weight: 700;
	margin: 0;
	padding: 0.75rem;
	word-wrap: break-word;
	word-break: break-word;
	height: 2.5rem;
}

.results .container .wrapper h1 {
	font-weight: 900;
}
.results .container .wrapper .blink {
	animation: blink 2s infinite 1s ease;
}
.results .container .wrapper .dot-1 {
	animation: dot1 2s infinite;
}
.results .container .wrapper .dot-2 {
	animation: dot2 2s infinite;
}
.results .container .wrapper .dot-3 {
	animation: dot3 2s infinite;
}
.results .container .wrapper .spinning-cc {
	animation: spinningcc 2s infinite linear;
	color: #ced4da;
}
#accordionExample h1 {
	font-weight: 900;
}
#accordionExample h3 {
	font-weight: 700;
}
#accordionExample .table tbody td:not(:first-child) {
	word-wrap: break-word;
	word-break: break-word;
}
.accordion-button:not(.collapsed) {
    color: inherit;
}

.accordion-button::after {
    color: inherit;
}

.accordion-button.collapsed::after {
    color: inherit;
}
.results
	.container
	.row
	[class^="col"]
	.accordion-item
	.accordion-button:not(.collapsed) {
	color: #072734;
}
.results
	.container
	.row
	[class^="col"]
	.accordion-item
	.accordion-button:not(.collapsed)::after {
	filter: contrast(56%) saturate(80) hue-rotate(-56deg) invert(12%)
		brightness(-35%);
}
.results
	.container
	.row
	[class^="col"]
	.accordion-item:not(:last-child)
	.accordion-button.collapsed {
	border-bottom: 1px #f0f0f0 solid;
}
.results .container #docViewer {
	min-height: 460px;
}
@media (min-width: 992px) {
	.results .container .wrapper {
		max-width: 66%;
		margin-right: auto;
		margin-left: auto;
	}
	#accordionExample .table tbody td:first-child {
		width: 25%;
	}
}

.text-section {
	background-color: #ced4da;
}
.text-section .container .wrapper h1:not(:first-child) {
	margin-top: 2rem;
}
.text-section .container .wrapper h1.title {
	font-size: 2.125em;
	font-weight: 900;
}
.text-section .container .wrapper h2 {
	font-size: 1.5em;
	font-weight: 700;
}
.text-section .container .wrapper h2:not(:first-child) {
	margin-top: 2rem;
}
.text-section .container .wrapper h3 {
	font-weight: 700;
}
.text-section .container .wrapper h3:not(:first-child) {
	margin-top: 2rem;
}
.text-section .container .wrapper p {
	font-size: 1.125em;
}
@media (min-width: 992px) {
	.text-section .container .wrapper {
		max-width: 66%;
		margin-right: auto;
		margin-left: auto;
	}
	.text-section .container .wrapper h1.title {
		font-size: 3em;
	}
	.text-section .container .wrapper h2 {
		font-size: 2em;
		font-weight: 700;
	}
	.text-section .container .wrapper p {
		font-size: 1.25em;
	}
}

.modal .modal-dialog .modal-content .modal-header h1 {
	font-size: 1.5em;
	line-height: 1em;
	font-weight: 900;
}
.modal .modal-dialog .modal-content .modal-footer label {
	font-weight: 700;
}
.modal .modal-dialog .modal-content .modal-footer input[type="checkbox"] {
	border-color: #074e69;
}
@media (min-width: 992px) {
	.modal .modal-dialog .modal-content .modal-header h1 {
		font-size: 1.75em;
	}
	.modal .modal-dialog .modal-content .modal-body p {
		font-size: 1.125em;
	}
}

footer.main-footer {
	background-color: #074e69;
	color: #fff;
	font-size: 0.75em;
	text-align: center;
}
footer.main-footer .footer-bar {
	background-color: #e7eef0;
	line-height: 1.5em;
}
footer.main-footer .footer-bar .container {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	-moz-column-gap: 25px;
	column-gap: 25px;
	row-gap: 5px;
}
footer.main-footer .footer-bar a {
	color: #072734;
	text-decoration: none;
}
footer.main-footer .footer-bar a:hover {
	text-decoration: underline;
}
footer.main-footer .logo-bar {
	background-color: #dae5e9;
	padding: 1.75rem 0;
}
footer.main-footer .logo-bar img {
	max-width: 260px;
}
@media (min-width: 992px) {
	footer.main-footer {
		font-size: 1em;
	}
	footer.main-footer .footer-bar .container {
		flex-wrap: nowrap;
		justify-content: space-between;
		-moz-column-gap: 0;
		column-gap: 0;
		row-gap: 0;
	}
	footer.main-footer .logo-bar {
		padding: 2.25rem 0;
	}
	footer.main-footer .logo-bar img {
		max-width: 420px;
	}
}

footer#footer {
	background-color: #e5e5e5;
}
footer#footer .logos {
	background-color: #e5e5e5;
}
footer#footer .copy {
	height: var(--footer-copy-height-desktop);
	background-color: #cecece;
	font-family: "Viga", sans-serif;
	font-size: 12px;
	line-height: 14px;
	color: #131313;
	padding: 0.875rem 0;
}
footer#footer ul {
	list-style: none;
}
footer#footer ul li {
	width: auto;
	padding: 0 !important;
	margin-bottom: 5px;
}
footer#footer ul li a {
	width: 100%;
	display: block;
}
footer#footer ul li a figure {
	width: 80%;
	margin: auto;
}
footer#footer ul li a figure img {
	width: 100%;
}
footer#footer ul li figure {
	width: 80%;
	margin: auto;
	display: block;
}
footer#footer ul li figure img {
	width: 100%;
}
@media screen and (max-width: 991px) {
	footer#footer .logos ul {
		padding: 3% 0;
	}
	footer#footer .logos ul li figure {
		width: 100%;
		display: flex;
		justify-content: center;
		align-items: center;
		align-content: center;
	}
	footer#footer .logos ul li figure img {
		text-align: center;
		width: 100%;
	}
	footer#footer .copy {
		height: var(--footer-copy-height-mobile);
		padding: 0.75rem 0;
	}
	footer#footer ul.footer-desktop {
		display: none;
	}
}
@media screen and (min-width: 992px) {
	footer#footer .logos ul {
		list-style: none;
		padding: 0;
		margin: 0;
		display: flex;
		justify-content: center;
		align-items: center;
		flex-direction: row;
	}
	footer#footer ul.footer-desktop {
		display: flex !important;
	}
	footer#footer ul.footer-desktop li {
		padding: 0 10px;
	}
	footer#footer ul.footer-mobile {
		display: none;
	}
	footer#footer ul.footer-mobile li figure img {
		display: block;
		width: 60%;
	}
}
@media screen and (max-width: 1199px) {
	footer#footer ul li figure {
		width: 100%;
	}
	footer#footer ul li a figure {
		width: 100%;
	}
}

@keyframes blink {
	0% {
		opacity: 1;
	}
	40% {
		opacity: 0.2;
	}
	80% {
		opacity: 1;
	}
	100% {
		opacity: 1;
	}
}
@keyframes dot1 {
	0% {
		opacity: 0;
	}
	16% {
		opacity: 0;
	}
	33% {
		opacity: 1;
	}
	100% {
		opacity: 1;
	}
}
@keyframes dot2 {
	0% {
		opacity: 0;
	}
	33% {
		opacity: 0;
	}
	49% {
		opacity: 1;
	}
	100% {
		opacity: 1;
	}
}
@keyframes dot3 {
	0% {
		opacity: 0;
	}
	49% {
		opacity: 0;
	}
	65% {
		opacity: 1;
	}
	100% {
		opacity: 1;
	}
}
@keyframes spinningcc {
	0% {
		transform: rotate(359deg);
		opacity: 1;
	}
	50% {
		opacity: 0.5;
	}
	100% {
		transform: rotate(0deg);
		opacity: 1;
	}
} /*# sourceMappingURL=main.css.map */
.accordion .accordion .accordion-button:focus {
  box-shadow: inset 0 calc(-1 * var(--bs-accordion-border-width)) 0
		var(--bs-accordion-border-color);
}

.accordion .accordion .accordion-button.collapsed:focus {
  box-shadow: none;
}

.accordion-button:not(.collapsed) {
	box-shadow: inset 0 calc(-1 * var(--bs-accordion-border-width)) 0
		var(--bs-accordion-border-color);
}

#qrcode {
	display: flex;
	align-items: center;
	justify-content: center;
}

#accordionExample {
	box-shadow: 0 5px 15px rgba(0, 0, 0, 0.3);
	border-radius: 5px;
}

.iframe-border {
	box-shadow: 0 5px 15px rgba(0, 0, 0, 0.4);
	border-radius: 5px;
}

@media (min-width: 1400px) {
	.use-remaining-vh {
		height: calc(var(--height-without-nav-bar-desktop) - 5rem); /* offset extra para evitar problemas */
	}
}

@media (max-width: 1400px) {
	.use-remaining-vh {
		max-height: 500px;
	}
	.iframe-details.use-remaining-vh {
		height:600px;
	}
}

@media (min-width: 2000px) {
	.xxl-use-more-horizontal{
	  max-width: 80%;
	}
}

@media (max-width: 991px) {
	.sm-flex-column {
		flex-direction: column;
	}
}

.flex-vertical-limited {
	display: flex;
	flex-direction: column;
	/* No mobile não limitamos altura por não mostrarmos o footer por ser muito grande */
	/* min-height: var(--height-without-nav-bar-and-footer-mobile); */
}

@media (min-width: 992px) {
	.flex-vertical-limited {
		display: flex;
		flex-direction: column;
		min-height: var(--height-without-nav-bar-and-footer-desktop);
	}
}

.height-without-nav-bar-and-footer {
	min-height: var(--height-without-nav-bar-and-footer-mobile);
}

@media (min-width: 992px) {
	.height-without-nav-bar-and-footer {
		min-height: var(--height-without-nav-bar-and-footer-desktop);
	}
}

@media (max-width: 991px) {
	/* Evitamos mostrar o footer no mobile pois ele é muito grande (inclui as logos da RNP) */
	#processingVerification, #processingSignature {
		min-height: var(--height-without-nav-bar-mobile);
	}
}
