
html {
	scroll-behavior: smooth;
}

* {
	margin: 0;
	padding: 0;
}

::-webkit-scrollbar {
	width: 10px;
}

::-webkit-scrollbar-track {
	background: var(--color-backg);
}

::-webkit-scrollbar-thumb {
	background: var(--color-primary);
	border-radius: 30px;
}

:root {
	--color-primary: #F9E700;
	--color-secondary: #4B4E52;
	--color-tertiary: #F9E700;
	--color-black: #000;
	--color-white: #fff;
	--color-backg: #1C1F24;
	--color-backg-sec: #272A2F;
	--color-backg-sec-nav: rgba(39, 42, 47, 0.5);
}

.title {
    font-weight: bold;
    font-size: 2rem;
    color: var(--color-primary);
}

.subtitle {
    font-weight: bold;
    font-size: 1.5rem;
    color: var(--color-primary);
}

.text {
    font-size: 1rem;
    color: var(--color-white);
    text-align: justify;
}

body {
	overflow-x: hidden;
    background-color: var(--color-backg);
	font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
}

a {
	color: var(--color-white);
	text-decoration: none;
	transition: 0.3s;
}

main a:hover {
	opacity: 0.8;
}

nav {
	display: flex;
	align-items: center;
	height: auto;
	background-color: var(--color-backg-sec);
	color: var(--color-white);
	justify-content: space-around;
}

.header-nav {
	padding: 15px 25px 15px;
	gap: 5%;
}

.container-logo {
	display: flex;
	gap: 20px;
	align-items: center;
}

.link {
	color: var(--color-white);
	font-size: 1rem;
}

.link:hover {
	color: var(--color-primary);
}

footer {
	display: flex;
	flex-direction:column;
	margin-top: 100px;
	background-color: var(--color-backg-sec);
}

.contact-container {
	display: flex;
	justify-content: space-around;
	padding: 30px 0 30px;
}

#cnpj-container .link {
	font-size: 0.65rem;
	font-style: italic;
}

.footer-nav {
	display: flex;
	gap: 72px;
	padding: 15px 0 15px;
}

.departments-container,
.services-container,
.politics-container {
	display:flex;
	flex-direction: column;
	gap: 15px;
}

.nav-title {
	font-size: 1.5rem;
}

.logo {
	width: 260px;
	height: 70px;
}

.nav-list,
.footer-list {
	list-style: none;
	display: flex;
	gap: 16px;
	white-space: nowrap;
}

.mobile-menu {
	display: none;
	cursor: pointer;
}

.mobile-menu div {
	width: 32px;
	height: 2px;
	background: var(--color-white);
	margin: 8px;
	transition: 0.3s;
}

.form-search-items {
    display: flex;
    align-items: center;
    gap: 15px;
	width: 80%
}

.input-filter {
    width: 100%;
    height: 45px;
    border: none;
    border-bottom: 2px solid var(--color-tertiary);
    background-color: var(--color-backg-sec);
    padding: 0 15px 0;
    color: var(--color-white);
}

.input-filter:focus {
    border-bottom: 3px solid var(--color-tertiary);
    box-shadow: 0 0 0 0;
    outline: 0;
}

.btn-filter {
    display: flex;
    align-items: center;
    justify-content: center;
    border: 0px;
    border-radius: 50px;
    background-color: var(--color-secondary);
    width: 40px;
    height: 45px;
}

.btn-filter:hover{
    transform: translateY(-0.1em);
    cursor: pointer;
}

.btn-filter i {
    color: var(--color-tertiary);
}

.nav-list.active {
	display: flex;
	z-index: 999;
	width: 100%;
	height: 100%;
	transform: translateX(0);
}

@keyframes navLinkFade {
	from {
		opacity: 0;
		transform: translateX(50px);
	}

	to {
		opacity: 1;
		transform: translateX(0);
	}
}

.mobile-menu.active .line1 {
	transform: rotate(-45deg) translate(-8px, 8px);
}

.mobile-menu.active .line2 {
	opacity: 0;
}

.mobile-menu.active .line3 {
	transform: rotate(45deg) translate(-5px, -7px);
}

/* The dropdown container */
.dropdown {
	float: left;
	overflow: hidden;
}

/* Dropdown button */
.dropdown .dropbtn {
	font-size: 16px;
	border: none;
	outline: none;
	color: var(--color-white);
	padding: 14px 16px;
	background-color: inherit;
	font-family: inherit;
	/* Important for vertical align on mobile phones */
	margin: 0;
	/* Important for vertical align on mobile phones */
}

/* Dropdown content (hidden by default) */
.dropdown-content {
	display: none;
	position: absolute;
	background-color: var(--color-backg-sec);
	min-width: 60px;
	z-index: 1;
}

/* Links inside the dropdown */
.dropdown-content a {
	float: none;
	color: var(--color-white);
	padding: 12px 16px;
	text-decoration: none;
	display: block;
	text-align: left;
}

/* Add a grey background color to dropdown links on hover */
.dropdown-content a:hover {
	background-color: var(--color-backg);
}

/* Show the dropdown menu on hover */
.dropdown:hover .dropdown-content {
	display: block;
}

@media (max-width: 999px) {

	.nav-list {
		display: none;
		position: absolute;
		right: 0;
		width: 0%;
		height: 0%;
		background-color: var(--color-backg-sec);
		flex-direction: column;
		align-items: center;
		transform: translateX(100%);
		transition: transform 0.3s ease-in;
		padding: 50px 0 50px;
		margin-top: 15px;
		gap: 50px;
	}

	.nav-list li {
		margin-left: 0;
		opacity: 0;
	}

	.nav-list .link {
		font-size: 1.5rem;
	}

	.mobile-menu {
		display: block;
	}
}

@media only screen and (max-width: 800px) {

	.footer-nav {
		gap: 25px;
	}

	.logo {
		width: 185px;
		height: 50px;
	}

	footer .logo {
		width: 111px;
		height: 30px;
	}

	.link {
		font-size: 0.5rem;
	}

	#cnpj-container .link {
		font-size: 0.3rem;
	}

	footer .subtitle {
		font-size: 0.9rem;
	}

	footer .text {
		font-size: 0.5rem;
	}

	.nav-title {
		font-size: 1rem;
	}

	.mobile-menu div {
		width: 30px;
	}

	.container-logo {
		gap: 10px;
	}

	.input-filter {
		height: 50px;
		border-bottom: 2px solid var(--color-tertiary);
		font-size: 0.5rem;
	}

	.input-filter:focus {
		border-bottom: 2.5px solid var(--color-tertiary);
	}

	.btn-filter {
		width: 30px;
		background-color: var(--color-backg-sec);
	}

	.dropdown {
		display: flex;
		align-items: center;
	}

	.dropdown:hover .dropdown-content {
		display: flex;
		position: unset;
	}

	.dropdown-content a:hover {
		background-color: var(--color-backg-sec);
		color: var(--color-white);
	}

}

@media only screen and (max-width: 570px) {

	.header-nav {
		justify-content: space-between;
	}

	.form-search-items {
		display: none;
	}


}