:root {
    --bs-verde: #3f7b1c;
    --bs-verde-rgb: 63, 123, 28;
    --blanco: #ffffff;
	--gris: #434343;
}

.flortal-fut-bold{
    font-family: 'flortal-fut-bold';
}

.flortal-fut{
    font-family: 'flortal-fut';
}

.flortal-hel{
    font-family: 'flortal-hel';
}

body {
    font-family: 'flortal-hel', Arial, sans-serif;
}

#logo-flortalinver-cabecera
{
    max-width: 150px;
    height: auto;
}

#logo-deltalene-cabecera
{
    max-width: 150px;
    height: auto;
}

#logo-clain-cabecera
{
    max-width: 350px;
    height: auto;
}

#navbarContent > ul > li
{
    align-items: center;
}

#navbarContent > ul > li > a
{
    font-size: 0.75rem;
}

footer
{
    font-size: 0.7rem;
}

.color-verde
{
    color: var(--bs-verde);
}

.color-negro
{
    color: #000000;
}

.bg-verde
{
    background-color: var(--bs-verde);
}

.btn-producto
{
    display: inline-block;
    width: 100%;
}

.btn-producto:hover img
{
    opacity: 0.8;
}

.btn-producto.active img,
.btn-producto:active img
{
    opacity: 0.8;
    filter:
        brightness(70%)
        drop-shadow(0 0 0 var(--bs-verde))
        drop-shadow(0 0 5px var(--bs-verde))
        drop-shadow(0 0 5px rgba(0,0,0,.8));
}

.icono-producto
{
    max-width: 120px;
    height: auto;
}

/* Estilos generales para las cards */
.card-producto {
    border: none;
    background-color: #fff;
    margin-bottom: 10px;
    box-shadow: none;
}

/* Cabecera verde con bordes redondeados */
.card-producto .card-header {
    background-color: var(--bs-verde);
    color: #fff;
    font-weight: 700;
    text-transform: uppercase;
    border-radius: 6px;
    padding: 8px 15px;
    font-size: 1rem;
}

/* Cuerpo del texto */
.card-producto .card-body {
    padding: 5px 15px;
}

/* Texto */
.card-producto .card-text {
    color: #000;
    font-size: 0.8rem;
    margin-bottom: 0;
}

.titulo-producto {
    display: inline-block;
    width: 100%;
    text-align: center;
    border-radius: 20px;
    overflow: hidden;
    font-weight: 700;
    color: #fff;
    text-transform: uppercase;
    line-height: 1.2;
}

/* Línea superior verde */
.titulo-producto .linea-superior {
    background-color: var(--bs-verde);
    padding: 10px 50px;
    border-top-left-radius: 20px;
    border-top-right-radius: 20px;
}

.titulo-producto .linea-superior h2 {
    margin: 0;
    padding: 0;
    font-size: 1.5rem;
    font-weight: 700;
}

/* Línea inferior gris */
.titulo-producto .linea-inferior {
    background-color: var(--gris);
    padding: 10px 50px;
    border-bottom-left-radius: 20px;
    border-bottom-right-radius: 20px;
}

.titulo-producto .linea-inferior h3 {
    margin: 0;
    padding: 0;
    font-size: 1.1rem;
    font-weight: 500;
    font-style: italic;
}


/* Campos con borde negro */
.form-control-borde {
  border: 1px solid #000 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

/* Color del texto predefinido */
.form-control-borde:focus {
  border-color: var(--bs-verde) !important;
  box-shadow: 0 0 0 0.15rem rgba(63, 123, 28, 0.25);
}

/* Checkbox alineado y limpio */
.form-check-input {
  border: 1px solid #000;
}
.form-check-input:checked {
  background-color: var(--bs-verde);
  border-color: var(--bs-verde);
}

/* Tipografía general */
form label {
  font-size: 1rem;
}

.feature-icon {
    width: 4rem;
    height: 4rem;
    border-radius: .75rem;
}



/* === Texto === */
.text-verde {
    color: var(--bs-verde) !important;
}

/* === Fondo === */
.bg-verde {
    background-color: var(--bs-verde) !important;
}

/* === Texto con fondo (similar a text-bg-primary) === */
.text-bg-verde {
    color: #fff !important;
    background-color: var(--bs-verde) !important;
    padding: 0.25em 0.5em;
    border-radius: 0.25rem;
    display: inline-block;
}

/* === Bordes === */
.border-verde {
    border-color: var(--bs-verde) !important;
}

/* === Botones === */
.btn-verde {
    color: #fff;
    background-color: var(--bs-verde);
    border-color: var(--bs-verde);
}
.btn-verde:hover {
    color: #fff;
    background-color: #366718; /* tono más oscuro */
    border-color: #2f5a15;
}
.btn-verde:active,
.btn-verde:focus {
    color: #fff;
    background-color: #2f5a15;
    border-color: #264c12;
    box-shadow: 0 0 0 0.25rem rgba(var(--bs-verde-rgb), 0.4);
}

/* === Alertas === */
.alert-verde {
    color: #1e3d0c;
    background-color: rgba(var(--bs-verde-rgb), 0.15);
    border-color: rgba(var(--bs-verde-rgb), 0.4);
}

/* === Badges === */
.badge-verde {
    background-color: var(--bs-verde);
    color: #fff;
}

/* === Card-header === */
.card-header-verde {
    background-color: var(--bs-verde);
    color: #fff;
    font-weight: 700;
    text-transform: uppercase;
    border-radius: 6px;
    padding: 8px 15px;
}