/* 0. Configurações Gerais
----------------------------*/
html, body {width: 100%; position: relative; padding: 0; margin: 0;}
html {scroll-behavior: smooth;}
body {font-family: 'Montserrat', sans-serif; font-weight: 300;}

p:last-child {margin: 0;}
i {font-style: italic;}
b {font-weight: 600;}
a {color: inherit;}
a, button {transition: .4s ease-in-out; -webkit-transition: .4s ease-in-out;}
a:hover {text-decoration: none; color: #009B63;}
button:focus {outline: none;}
img {width: 100%; height: auto; object-fit: contain; vertical-align: middle;}

h1, h2, h3, h4, h5, h6, p, a, i, b, span, em, small {-webkit-font-smoothing: antialiased;}
h1 {font-size: 26px;}
h2, h3, h4, h5, h6 {font-size: 20px;}
p {font-size: 16px; line-height: 1.5;}

.section {padding: 45px 0;}
.section.light {background: #DEEEFF;}
.titulo {font-weight: 900; text-align: center; text-transform: uppercase; color: #619a09;}

.btn {font-weight: 400; text-transform: uppercase; padding: 0.375rem 1rem;}
.btn.default {background: #65a00a; color: #FFF;}
.btn.default:hover {background: #5b9208;}

.whatsapp {position: fixed; bottom: 15px; right: 15px; z-index: 1053;}
.whatsapp a {display: flex; display: -ms-flexbox; width: 60px; height: 60px; background: #25D366; border-radius: 100%; padding: 15px; position: relative; box-sizing: border-box;}
.whatsapp a::before, .whatsapp a::after {content: ''; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 100%; height: 100%; background: transparent; border: 5px solid #25D366; border-radius: 100%; animation: growingCircle 1s infinite; z-index: -1;}
.whatsapp a::after {animation-delay: .6s;}
.whatsapp a:hover {opacity: .75;}
.whatsapp a img {width: 100%; height: 100%; object-fit: contain; object-position: center; margin-left: 2px;}

@keyframes growingCircle {
	from {width: 100%; height: 100%;}
	to {width: 135%; height: 135%;}
}


/* 1. Navbar
--------------*/
.navbar {background: #EDEFFF; transition: .4s ease-in-out; -webkit-transition: .4s ease-in-out;}
.navbar.scrolled {background: rgba(237, 239, 255, .95); box-shadow: 0 0 3px 0 rgba(0, 0, 0, .2);}
.navbar .navbar-toggler {position: absolute; top: 22px; right: 0;}
.navbar .navbar-brand .brand {width: 150px; height: auto;}
.navbar .navbar-brand:not(:first-child) {margin-left: 1rem; margin-right: 0;}
.navbar .navbar-brand:not(:first-child) .brand {width: 119px; padding: 6px; border-radius: 10px 10px 0 10px;}
.navbar .navbar-nav .nav-item {text-align: center;}
.navbar .navbar-nav .nav-item .nav-link {font-size: 16px; font-weight: 400; text-transform: uppercase;}

/* 2. Input + Label
---------------------*/
.input {position: relative; overflow: hidden;}
.input label {position: absolute; left: 0; bottom: -20px; width: 100%; background: #EEE; border: 1px solid #CED4DA; font-size: 10px; font-weight: 600; text-transform: uppercase; margin: 0; padding: 0 0.25rem; transition: .4s ease-in-out; -webkit-transition: .4s ease-in-out;}
.input .form-control {border-radius: 0; transition: .4s ease-in-out; -webkit-transition: .4s ease-in-out;}
.input .form-control:not(textarea) {height: 40px;}
.input .form-control:focus {border-color: #FF7200;}
.input .form-control:not(:placeholder-shown):focus {border-color: #FF7200;}
.input .form-control:not(:placeholder-shown):focus {font-size: 14px; padding-top: 5px; padding-bottom: 18px;}
.input .form-control:not(:placeholder-shown):focus + label {transform: translateY(-20px);}

/* 3. Footer
--------------*/
footer {background: #619a09; color: #FFF; padding: 3px 0;}
footer p {font-size: 12px;}
footer a {font-weight: 400;}
footer a:hover {color: rgba(255, 255, 255, .75);}