/* Cor personalizada para o ícone do menu hamburguer Bootstrap */
.navbar-toggler {
	border-color: #F97564 !important;
}

.navbar-toggler .navbar-toggler-icon {
	background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(249,117,100, 1)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e") !important;
}

/* Evita rolagem horizontal global */
html, body {
	max-width: 100%;
	overflow-x: hidden;
	box-sizing: border-box;
}

/* Cores personalizadas */
.hl-green {
	background-color: #2c6045 !important;
}

.text-hl-green {
	color: #2c6045 !important;
}

.hl-salmon {
	color: #F97564 !important;
}

.hl-yellow {
	color: #b9ad38 !important;
}

.bg-hl-green {
	background-color: #2c6045 !important;
}

.bg-hl-white {
	background-color: #f2e8d8 !important;
}

/* Fonte personalizada para todos os textos e títulos */
body, html, h1, h2, h3, h4, h5, h6, p, a, li, label, input, textarea, button, .font-title, .font-body {
	font-family: 'Red Hat Text', Arial, Helvetica, sans-serif !important;
}

/* Títulos */
h1, .h1 {
	font-size: 2.5rem;
	font-weight: 800;
}
h2, .h2 {
	font-size: 2rem;
	font-weight: 700;
}
h3, .h3 {
	font-size: 1.6rem;
	font-weight: 700;
}
h4, .h4 {
	font-size: 1.3rem;
	font-weight: 600;
}
h5, .h5 {
	font-size: 1.1rem;
	font-weight: 600;
}
h6, .h6 {
	font-size: 1rem;
	font-weight: 600;
}

/* Textos */
p, li, label, input, textarea, button, a {
	font-size: 1rem;
	font-weight: 400;
}

/* Utilitários para peso */
.fw-extrabold { font-weight: 800 !important; }
.fw-bold { font-weight: 700 !important; }
.fw-semibold { font-weight: 600 !important; }
.fw-normal { font-weight: 400 !important; }
.fw-light { font-weight: 300 !important; }

/* Outros utilitários */
.rounded-circle {
	border-radius: 50% !important;
}

.shadow-md {
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
}

/* Espaçamento vertical na barra verde do header */
.navbar.bg-hl-green {
	padding-top: 1rem !important;
	padding-bottom: 1rem !important;
}

@media (max-width: 767.98px) {
	#mainNavbar .text-md-end {
		text-align: center !important;
	}
	body {
    padding-top: 90px !important; /* ajuste conforme a altura real do seu header no mobile */
  }
}