.bd-placeholder-img {
  font-size: 1.125rem;
  text-anchor: middle;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
}

@media (min-width: 768px) {
  .bd-placeholder-img-lg {
    font-size: 3.5rem;
  }
}

.b-example-divider {
  width: 100%;
  height: 3rem;
  background-color: rgba(0, 0, 0, .1);
  border: solid rgba(0, 0, 0, .15);
  border-width: 1px 0;
  box-shadow: inset 0 .5em 1.5em rgba(0, 0, 0, .1), inset 0 .125em .5em rgba(0, 0, 0, .15);
}

.b-example-vr {
  flex-shrink: 0;
  width: 1.5rem;
  height: 100vh;
}

.bi {
  vertical-align: -.125em;
  fill: currentColor;
}

.nav-scroller {
  position: relative;
  z-index: 2;
  height: 2.75rem;
  overflow-y: hidden;
}

.nav-scroller .nav {
  display: flex;
  flex-wrap: nowrap;
  padding-bottom: 1rem;
  margin-top: -1px;
  overflow-x: auto;
  text-align: center;
  white-space: nowrap;
  -webkit-overflow-scrolling: touch;
}

.btn-bd-primary {
  --bd-violet-bg: #712cf9;
  --bd-violet-rgb: 112.520718, 44.062154, 249.437846;

  --bs-btn-font-weight: 600;
  --bs-btn-color: var(--bs-white);
  --bs-btn-bg: var(--bd-violet-bg);
  --bs-btn-border-color: var(--bd-violet-bg);
  --bs-btn-hover-color: var(--bs-white);
  --bs-btn-hover-bg: #6528e0;
  --bs-btn-hover-border-color: #6528e0;
  --bs-btn-focus-shadow-rgb: var(--bd-violet-rgb);
  --bs-btn-active-color: var(--bs-btn-hover-color);
  --bs-btn-active-bg: #5a23c8;
  --bs-btn-active-border-color: #5a23c8;
}

.bd-mode-toggle {
  z-index: 1500;
}

/* #daySleepFields .row { */
/* display: flex; */
/* flex-wrap: wrap; */
/* } */

/* #daySleepFields .col-sm-4 { */
/* flex: 1 0 33.33%; */
/* max-width: 33.33%; */
/* box-sizing: border-box; */
/* } */

/* Fuente regular */
@font-face {
  font-family: 'AloeveraDisplay';
  src: url('../font/Aloevera display/Aloevera display/WOFF2/AloeveraDisplay-Regular.woff2') format('woff2'),
    url('../font/Aloevera display/Aloevera display/WOFF/AloeveraDisplay-Regular.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

/* Fuente itálica */
@font-face {
  font-family: 'AloeveraDisplay';
  src: url('../font/Aloevera display/Aloevera display italic/WOFF2/AloeveraDisplay-RegularItalic.woff2') format('woff2'),
    url('../font/Aloevera display/Aloevera display italic/WOFF/AloeveraDisplay-RegularItalic.woff') format('woff');
  font-weight: normal;
  font-style: italic;
}

/* Fuente condensada */
@font-face {
  font-family: 'AloeveraDisplay';
  src: url('../font/Aloevera display/Aloevera display condensed/WOFF2/Aloeveradisplaycondensed-Regular.woff2') format('woff2'),
    url('../font/Aloevera display/Aloevera display condensed/WOFF/Aloeveradisplaycondensed-Regular.woff') format('woff');
  font-weight: bold;
  font-style: normal;
}

/* Fuente outline */
@font-face {
  font-family: 'AloeveraDisplay';
  src: url('../font/Aloevera display/Aloevera display outline/WOFF2/Aloeveradisplayoutline-Regular.woff2') format('woff2'),
    url('../font/Aloevera display/Aloevera display outline/WOFF/Aloeveradisplayoutline-Regular.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

/* Ejemplos para cambiar entre variantes */
.italic {
  font-style: italic;
}

.condensed {
  font-weight: bold;
}

body {
  margin: 0;
  padding: 0;
  background-image: url('../imagenes/repost/fondo.jpg');
  background-size: cover;
  background-position: center -120px;
  /* Desplaza la imagen de fondo 100px hacia abajo */
  background-repeat: no-repeat;
}



/* Contenedor del navbar */
.navbar {
  position: flex;
  /* Fija la barra de navegación */
  top: 0;
  left: 0;
  width: 100%;
  height: 75px;
  background-color: #ffffff;
  display: flex;
  justify-content: space-between;
  /* Distribuye el contenido */
  align-items: center;
  padding: 10px 20px;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  z-index: 1000;
  padding-bottom: 20px;
  /* Asegura que la barra esté por encima de otros elementos */
}

/* Imagen a la izquierda */
.navbar img {
  height: 20px;
  /* Altura ajustada de la imagen */
  margin-left: 40px;
}

.content {
  margin-top: 80px;
  padding: 40px;
}

/* Imagenes en las esquinas */
.imagen-izquierda,
.imagen-derecha {
  position: absolute;
  top: 0;
  z-index: -1;
}

.imagen-izquierda {
  left: -87px;
  height: 460px;
  margin-top: 75px;
}

.imagen-derecha {
  right: -100px;
  height: 400px;
  margin-top: 65px;
  /* padding-right: -15px; */
}

/* Contenedor del contenido */
.container {
  z-index: 1;
  padding: 45px;
  max-width: 1100px;
}

/* Estilo para el título */
h1 {
  font-size: 36px;
  color: #333;
  font-weight: bold;
}

/* Estilo para el subtítulo */
p.subtitle {
  font-size: 18px;
  color: black;
  text-align: center;
}

/* Estilos para los iconos y secciones */
.icons {
  display: flex;
  justify-content: space-around;
  /* margin-top: 30px; */
  margin-bottom: 30px;
  padding-left: 40px;
  padding-right: 40px;
}

.icons div {
  text-align: center;
  font-size: 16px;
  color: #333;
}

.icons img {
  width: 60px;
  height: 60px;
  margin-bottom: 10px;
  margin-top: 40px;
}

/* Caja de información con fondo verde */
.info-box {
  background-color: #0d9c4d;
  color: white;
  padding: 20px;
  border-radius: 25px;
  margin-top: 20px;
  text-align: center;
  line-height: 1.1;
  padding-bottom: 10px;
}

/* Media queries para pantallas más pequeñas */
@media (max-width: 768px) {
  .icons {
    flex-direction: column;
  }

  .imagen-izquierda,
  .imagen-derecha {
    height: 150px;
    /* Ajuste para pantallas más pequeñas */
  }
}

.nutricion-container {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  /* Para manipular mejor el posicionamiento */
}

.nutricion-container::before {
  content: '';
  position: absolute;
  left: 0;
  /* Línea a la izquierda */
  height: 60%;
  /* Línea ocupa el 80% de la altura */
  top: 20%;
  /* Deja un 10% de espacio arriba y abajo */
  width: 2px;
  background-color: black;
}

.nutricion-container img {
  padding-left: 10px !important;
  /* Aumenta espacio entre línea e imagen si es necesario */
}

.nutricion-container p {
  color: #0d9c4d;
  margin: 0;
  padding-left: 10px;
  /* Para añadir espacio si es necesario */
}

h5.mb-3 {
  color: #0d9c4d !important;
}

.form-check-input:checked {
  background-color: #0d9c4d;
  border-color: #0d9c4d;
}

div#desayunoDetails.food-details-section {
  display: flex;
  flex-wrap: wrap;
}

div#almuerzoDetails.food-details-section {
  display: flex;
  flex-wrap: wrap;
}

div#cenaDetails.food-details-section {
  display: flex;
  flex-wrap: wrap;
}

.food-details {
  /* width: 33%; */
  width: 336px;
}

button.w-100.btn.btn-primary.btn-lg {
  border-radius: 45px;
  background-color: #0d9c4d;
  color: white;
  --bs-btn-border-color: none !important;
  margin-bottom: 150px;
  margin-top: 80px;
}

.portion-options label {
  display: flex;
  flex-direction: column;
  align-items: center;
  font-size: 14px;
  color: #333;
}

.portion-options input[type="radio"] {
  display: none;
}

.portion-options input[type="radio"]+img {
  cursor: pointer;
  opacity: 0.6;
  transition: opacity 0.3s;
}

.portion-options input[type="radio"]:checked+img {
  opacity: 1;
} */

.food-name-label {
  text-align: center;
  font-weight: bold;
  margin-top: 10px;
}

.form-group {
  align-items: center;
  flex-direction: column;
}

.line-container-food {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  margin: 20px 0;
} 

.line-food {
  flex-grow: 1;
  height: 2px;
  background-color: #000;
}

.text-food {
  width: 150px;
  text-align: center;
  padding: 0 15px;
  font-weight: bold;
  text-transform: uppercase;
  white-space: nowrap;
  font-family: Arial, sans-serif;
  font-size: 16px;
  color: #000;
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  overflow-x: hidden;
}

/* Estilo del footer */
.footer {
  background-color: #0d9c4d;
  color: #fff;
  text-align: center;
  padding: 10px 0;
  font-size: 14px;
  padding-top: 25px;
}

/* Ajustes para vista móvil */
@media (max-width: 768px) {
  .footer {
    font-size: 12px;
    /* Tamaño de texto reducido en móvil */
    padding: 8px 0;
  }
}


.imagen-izquierda-abajo {
  left: -177px;
  height: 583px;
  margin-bottom: 0;
}

.imagen-derecha-abajo {
  right: -100px;
  height: 400px;
  margin-bottom: 0;
}

.footer {
  position: relative;
  background-color: #0d9c4d;
  color: #fff;
  text-align: center;
  padding: 10px 0;
  font-size: 14px;
  padding-top: 25px !important;
}

.imagen-izquierda-abajo,
.imagen-derecha-abajo {
  position: absolute;
  bottom: 0;
  z-index: -1;
  pointer-events: none;
}

.imagen-izquierda-abajo {
  position: absolute;
  bottom: 0; 
  left: -156px; 
  height: 420px; 
  pointer-events: none;
}

.imagen-derecha-abajo {
  position: absolute;
  bottom: 0;
  right: -161px;
  height: 420px;
  pointer-events: none;
}

div#alertMessage.alert.alert-primary {
  background-color: #0d9c4d !important;
  color: #ffff !important;
  --bs-alert-border-color: none !important;
}

@media only screen and (max-width: 1100px) {
  .imagen-izquierda,
  .imagen-derecha,
  .imagen-izquierda-abajo,
  .imagen-derecha-abajo {
      display: none !important;
  }
}

.line-container-food {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 2rem 0; /* margen superior e inferior más amplio */
}

.line-food {
  border-top: 2px solid currentColor;
  height: 2px;
  width: 100%;
  opacity: 0.3; /* opcional: suaviza la línea */
}

.text-food {
  padding: 0 10px;
  font-weight: bold;
  text-transform: uppercase;
}
.text-description {
  margin-bottom: 20px;
}
