@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap');


:root {
	--mainFont: 'Montserrat', sans-serif !important;
	--secondFont: 'Montserrat', sans-serif !important;
	--bgColor: #f9f9f9;
	--txtColor: #0b1020;
	--verdePrincipal: #2bb573;
	--azulClaro: #2890A3;
	--darkBlue: #1D6469;

}

*,
*::before,
*::after {
	box-sizing: border-box;
}

button:focus,
.navbar-toggler:focus,
.navbar-toggler:hover {
	outline: none !important;
}

html,
body {
	text-rendering: optimizeLegibility;
	font-feature-settings: "lnum";
	scroll-behavior: smooth;
	overflow-x: hidden;
	font-optical-sizing: auto;
	margin: 0;
	padding: 0;
	font-family: var(--mainFont);
	font-size: 16px;
	line-height: 1.6;
	font-weight: 400;
	transition: all 0.3s !important;
}

.nav-link:focus,
.nav-link:hover {
	text-decoration: none;
	outline: none;
	box-shadow: none;
}

section {
	padding: 8rem 0;
}


a {
	color: var(--verdePrincipal);
}

a:hover {
	color: var(--azulClaro);
}

@media(max-width:767.98px) {

	.container,
	.container-fluid,
	.container-lg,
	.container-md,
	.container-sm,
	.container-xl,
	.container-xxl {
		padding-right: var(--bs-gutter-x, 1.5rem);
		padding-left: var(--bs-gutter-x, 1.5rem);
	}

	section {
		padding: 4rem 0;
	}
}

/*------------------------------------------------------- BG -------------------------------------*/
.bg-dark {
	background-color: var(--txtColor) !important;
	color: var(--bgColor);
}

.bg-gradiente {
	background: url('../img/hero-bg.jpg') no-repeat center center;
	background-size: cover;
	background-attachment: fixed;
}

.bg-color {
	background-color: var(--verdePrincipal);
}

/*------------------------------------------------------- TEXTOS -------------------------------------*/

h1 {
	font-size: 35px;
	font-weight: 300;
	line-height: 1.1;
}

h2,
h3,
h4 {
	line-height: 1.3;
	text-transform: uppercase;
}

h2 {
	font-size: 36px;
	color: var(--verdePrincipal);
	font-weight: 700;
}

h3 {
	font-size: 24px;
}

h4 {
	font-size: 16px;
}

.display-1 {
	font-size: 24px;
	line-height: 1.4;
	font-weight: 700;
}

.display-2 {
	font-size: 36px;
	font-weight: 700;
	line-height: 1.1;
	color: var(--verdePrincipal);
}

.text-italic {
	font-style: italic;
}

.highlight {
	font-weight: 600;
	color: var(--verdePrincipal)
}

.badge.bg-primary {
	background-color: var(--verdePrincipal) !important;
	color: var(--txtColor);
	font-size: 14px;
	border: 0;
	border-radius: 7px;
	padding: 0.5rem 1rem;
	margin-bottom: 6px;
}

.text-body {
	color: var(--txtColor) !important;
}

@media(max-width:767.98px) {
	h1 {
		font-size: 1.5rem;
		line-height: 1.3;
		width: 55%;
		margin-left: 44vw;
		margin-bottom: 12vh;
	}

	.display-2 {
		font-size: 24px;
	}
}

/*------------------------------------------------------- BTN -------------------------------------*/
.btn-primary {
	font-weight: 700;
	text-transform: uppercase;
	background-color: var(--verdePrincipal);
	border: 0;
	border-radius: 10000px;
	letter-spacing: 1px;
	font-size: 14px;
	padding: 0.5rem 1.5rem;
}

.btn-primary:hover {
	background-color: var(--azulClaro);
}

/*------------------------------------------------------- CARDS -------------------------------------*/

.card.card-body {
	border: 0;
	border-radius: 1rem;
	padding: 2rem;
}

/*------------------------------------------------------- HERO -------------------------------------*/

#s-hero {
	min-height: 95vh;
	overflow: hidden;
	background: none !important;
}

#s-hero canvas {
	z-index: -1;
	position: absolute;
	min-height: 100vh;
	width: 100vw;
	top: 0;
	left: 0;
}

.bg {
	background: url('../img/hero-bg.jpg') no-repeat center center;
	background-size: cover;
	background-attachment: fixed;
	z-index: -1;
	position: absolute;
	min-height: 100vh;
	width: 100vw;
	top: 0;
	left: 0;
	mix-blend-mode: overlay;
}

@media(max-width:767.98px) {
	#s-hero .bg {
		bottom: 0;
		right: 0;
		mix-blend-mode: overlay;
		transform: rotate(180deg);
	}
}

/*------------------------------------------------------- para quem-------------------------------------*/

.icon {
	width: 120px;
	height: 120px;
	background: var(--txtColor);
	padding: 2rem;
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	border-radius: 50%;
	margin: 0 auto 2rem;
}

#s-paraquem .card {
	height: 100%;
	color: initial;
	display: flex;
	flex-direction: column;
	flex-wrap: nowrap;
	align-content: space-around;
	justify-content: center;
	font-weight: 700;
}

/*------------------------------------------------------- FACILITADOR -------------------------------------*/
#s-facilitador img {
	max-height: 360px;
}

@media(max-width:767.98px) {
	#s-facilitador img {
		max-height: none;
	}

	#s-facilitador .col-md-auto {
		height: 250px;
		overflow: hidden;
		margin-bottom: 2rem;
	}
}

/*------------------------------------------------------- AGENDA -------------------------------------*/


#s-programacao li {
	margin: 16px 0;
}

#s-programacao li::marker {
	content: "————   ";
	font-size: 1.2em;
	color: var(--verdePrincipal);
	font-weight: 600;
	letter-spacing: -1px;
}

#s-programacao ul {
	padding-left: 6rem;
}

@media(max-width:767.98px) {
	#s-programacao ul {
		padding-left: 3rem;
	}
}

/*------------------------------------------------------- LOCAL -------------------------------------*/
#s-local .card {
	color: initial;
	border-radius: 0;
}


.img-local {
	height: 600px;
	width: 600px;
	position: absolute;
	right: 0;
	top: -50px;
	background-size: cover !important;
	background: url(../img/local.webp) no-repeat center center;
}

@media (max-width: 767.98px) {
	.img-local {
		position: relative;
		width: auto;
		height: 300px;
		margin: 24px 0;
		top: 0;
	}
}

#inscricao h4 {
	font-size: 24px;
	font-weight: 800;
	margin-bottom: 0;
}

/*------------------------------------------------------- NAVBAR -------------------------------------*/
a.nav-link {
	font-weight: 600;
	text-transform: uppercase;
	color: white !important;
	letter-spacing: 1px;
	font-size: 14px;
}

a.nav-link:hover {
	text-decoration: underline;
}

nav .btn {
	font-size: 14px;
}

nav.navbar {
	height: 80px;
	background: rgba(11, 16, 32, 0) !important;
}

a.navbar-brand {
	opacity: 0;
}

.navbar-expand-lg .navbar-nav .nav-link {
	padding-right: .5rem;
	padding-left: .5rem;
}

.navbar-toggler {
	padding: 0;
	font-size: 1.25rem;
	line-height: 1;
	background-color: transparent;
	border: 0;
	border-radius: .25rem;
	transition: box-shadow .15sease-in-out;
	opacity: 0;
}



#navbar.sticky{background: rgba(11, 16, 32,1) !important;transition: all 0.3s !important;}
#navbar.sticky a.navbar-brand,
#navbar.sticky .navbar-toggler {opacity: 1; transition: all 0.3s !important;}

@media (max-width: 767.98px) {
	nav.navbar {height: auto;}
}