:root {
  --color-primary: #18763e;
  /* Verde principal */
  --color-white: #ffffff;
  /* Branco */
  --color-black: #000000;
  /* Preto */
  --color-dark: #141414;
  /* Preto muito escuro / fundo */
  --color-gray-dark: #2a2a2a;
  /* Cinza escuro */
  --color-gray: #3d3d3d;
  /* Cinza médio */
  --color-gray-medium: #666666;
  /* Cinza médio-escuro */
  --color-gray-light: #cccccc;
  /* Cinza claro */
  --color-gray-lighter: #e0e0e0;
  /* Cinza muito claro */
}

.body-inner {
  background-color: var(--color-white);
}

/* Inicio: Fontes*/

.text1 {
  font-family: "Verdana", sans-serif;
  font-weight: 400;
  font-size: 210px;
  line-height: 218px;
}

.text2 {
  font-family: "Verdana", sans-serif;
  font-weight: 700;
  font-size: 96px;
  line-height: 104px;
}

.text3 {
  font-family: "Verdana", sans-serif;
  font-weight: 400;
  font-size: 96px;
  line-height: 104px;
}

.text4 {
  font-family: "Verdana", sans-serif;
  font-weight: 400;
  font-size: 64px;
  line-height: 72px;
}

.text5 {
  font-family: "Verdana", sans-serif;
  font-weight: 400;
  font-size: 48px;
  line-height: 56px;
}

.text6 {
  font-family: "Verdana", sans-serif;
  font-weight: 700;
  font-size: 24px;
  line-height: 32px;
}

.text7 {
  font-family: "Verdana", sans-serif;
  font-weight: 400;
  font-size: 24px;
  line-height: 32px;
}

.title8 {
  font-family: "Verdana", sans-serif;
  font-weight: 700;
  font-size: 20px;
  line-height: 28px;
}

.text8 {
  font-family: "Verdana", sans-serif;
  font-weight: 700;
  font-size: 14px;
  line-height: 22px;
}

.text9 {
  font-family: "Verdana", sans-serif;
  font-weight: 400;
  font-size: 14px;
  line-height: px;
}

.caption {
  font-family: "Verdana", sans-serif;
  font-weight: 500;
  font-size: 12px;
  line-height: 100%;
}

.segoe {
  font-family: "Segoe UI Symbol", sans-serif;
}

p {
  margin-bottom: 0;
}

/* Background Colors usando variáveis */
.bg-primary {
  background-color: var(--color-primary) !important;
}

.bg-white {
  background-color: var(--color-white) !important;
}

.bg-black {
  background-color: var(--color-black) !important;
}

.bg-dark {
  background-color: var(--color-dark) !important;
}

.bg-gray-dark {
  background-color: var(--color-gray-dark) !important;
}

.bg-gray {
  background-color: var(--color-gray) !important;
}

.bg-gray-medium {
  background-color: var(--color-gray-medium) !important;
}

.bg-gray-light {
  background-color: var(--color-gray-light) !important;
}

.bg-gray-lighter {
  background-color: var(--color-gray-lighter) !important;
}

/* Text Colors usando variáveis */
.text-primary {
  color: var(--color-primary) !important;
}

.text-white {
  color: var(--color-white) !important;
}

.text-black {
  color: var(--color-black) !important;
}

.text-dark {
  color: var(--color-dark) !important;
}

.text-gray-dark {
  color: var(--color-gray-dark) !important;
}

.text-gray {
  color: var(--color-gray) !important;
}

.text-gray-medium {
  color: var(--color-gray-medium) !important;
}

.text-gray-light {
  color: var(--color-gray-light) !important;
}

.text-gray-lighter {
  color: var(--color-gray-lighter) !important;
}

.mb-8 {
  margin-bottom: 16px;
}

.mb-16 {
  margin-bottom: 16px;
}

.mb-24 {
  margin-bottom: 24px;
}

.mb-32 {
  margin-bottom: 32px;
}

.mb-56 {
  margin-bottom: 56px;
}

.mb-64 {
  margin-bottom: 64px;
}

.container,
.container-fluid,
.container-xxl,
.container-xl,
.container-lg,
.container-md,
.container-sm {
  --bs-gutter-x: 20px;
  --bs-gutter-y: 0;
}

.row {
  --bs-gutter-x: 20px;
  --bs-gutter-y: 0;
}

/* CSS */

.navbar {
  position: fixed;
  padding: 0;
  right: 25px;
  top: 54px;
  display: block;
  z-index: 999;
  text-align: center;
  min-width: 90px;
}

.nav-toggle {
  background: none;
  border: none;
  color: var(--color-primary);
  transition: color 0.8s ease;
}

.nav-toggle.active {
  color: var(--color-white);
}

.nav-menu {
  list-style: none;
  margin: 0;
  padding: 0;
  margin-top: 32px;
  transform: translateX(150px);
  transition: transform 0.8s ease;
  padding: 16px 8px;
  border-radius: 24px;
  background: rgba(26, 26, 26, 0.2);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border: 1px solid rgba(255, 255, 255, 0.25);
}

.navbar.open .nav-menu {
  transform: translateX(0);
}

.nav-menu li {
  margin: 10px 0;
}

.nav-menu li a {
  color: var(--color-white);
  text-decoration: none;
  font-size: 12px;
  display: flex;
  flex-direction: column;
  align-items: center;
  line-height: normal;
}

.nav-menu li a span {
  opacity: 1;
}

.nav-menu li a .pontoMenu {
  opacity: 0;
  transition: opacity 0.8s ease;
}

.nav-menu li a:hover span,
.nav-menu li a:hover .pontoMenu,
.nav-menu li a.active span,
.nav-menu li a.active .pontoMenu {
  opacity: 1;
}

.bgMenu {
  width: 100vw;
  height: 100vh;
  position: fixed;
  background-color: #000000;
  z-index: -1;
  opacity: 0;
  transition: opacity 0.8s ease;
}

:root:has(.navbar.open) .bgMenu {
  z-index: 5;
  opacity: 0.4;
}

footer.section.section4 {
  max-height: 100vh !important;
  height: 100vh !important;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: center;
  position: relative;
}

footer .imgFooter,
footer .cont100 {
  width: 100%;
  padding: 0 100px;
}

footer .imgFooter img {
  margin: auto;
  display: block;
  margin-bottom: -2px;
}

footer .cont100 {
  background-color: var(--color-primary);
  padding-bottom: 96px;
  padding-top: 96px;
}

footer .text8 a,
footer .text9 a {
  color: var(--color-white);
  text-decoration: none;
  line-height: 22px;
  gap: 20px;
}

footer .title8 {
  color: var(--color-white);
}

footer .text8 a svg {
  width: 24px;
  height: 24px;
  flex-shrink: 0;
  flex-grow: 0;
}

footer .redesSociais a {
  color: var(--color-white);
  margin-right: 22px;
}

footer .cont100 img {
  height: 98px;
}

.input-group {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  height: 46px;
  border: 2px solid var(--color-white);
}

input.form-control {
  padding: 8px 18px;
  background-color: transparent;
  color: var(--color-white);
  border: none;
  border-radius: 0;
}

input.form-control::placeholder {
  color: var(--color-white);
  opacity: 1;
}

.form-control:focus {
  color: var(--color-white);
  background-color: transparent;
  border: none;
  outline: 0;
  box-shadow: unset;
}

.input-group-text {
  background-color: transparent;
  border: none;
  color: var(--color-white);
}

input[type="checkbox"] {
  display: none;
}

.custom-checkbox {
  display: flex;
  align-items: center;
  cursor: pointer;
}

.custom-checkbox-box {
  width: 24px;
  height: 24px;
  border-radius: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: transparent;
  margin-right: 12px;
  transition: background-color 0.3s, border-color 0.3s;
  border: 2px solid var(--color-white);
}

.custom-checkbox-box svg {
  opacity: 0;
  color: var(--color-white);
}

input[type="checkbox"]:checked + .custom-checkbox .custom-checkbox-box {
  background-color: transparent;
}

input[type="checkbox"]:checked + .custom-checkbox .custom-checkbox-box svg {
  opacity: 1;
  transform: scale(1);
}

.custom-checkbox .caption {
  color: var(--color-white);
}

.custom-checkbox .caption a {
  color: var(--color-white);
  text-decoration: none;
}

.iconCoffee {
  position: fixed;
  left: 14px;
  top: 40px;
  display: block;
  z-index: 4;
  text-align: center;
  min-width: 90px;
  padding: 0px;
}

.gap-24 {
  gap: 24px !important;
}

b,
strong {
  font-weight: 700;
}

footer .footerBottomBar {
  background: var(--color-primary);
  height: 72px;
  border-top: none;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 66px;
  padding-bottom: 16px;
  margin-top: -1px;
}

footer .footerBottomBar .captionBold {
  color: var(--color-white);
}
footer .footerBottomBar .caption {
  color: var(--color-white);
}

footer a:not(.btn):not(:hover) {
  color: var(--color-white) !important;
  text-decoration: none !important;
}
