/* Variables del tema */
:root {
  --verde: #216449;
}

/* Comportamiento general y compensación del navbar */
html {
  scroll-behavior: smooth;
}

/* Espacio superior para que el navbar no tape ningún título */
section,
header,
[id] {
  scroll-margin-top: 80px;
}

body {
  color: #26372f;
  background: #fff;
}

/* Identidad y tipografías */
.navbar-brand {
  font-size: 1.6rem;
}

.bienvenida {
  background: #edf5ef;
  border-bottom: 1px solid #dce9df;
}

h1 {
  font-size: clamp(2rem, 4vw, 3.2rem);
  letter-spacing: -.035em;
}

h2 {
  font-size: 1.75rem;
  font-weight: 700;
}

.lead {
  color: #506158;
  font-size: 1.1rem;
}

/* Colores y botones */
.text-success {
  color: var(--verde) !important;
}

.btn-success {
  --bs-btn-bg: #216449;
  --bs-btn-border-color: #216449;
  --bs-btn-hover-bg: #184d38;
  --bs-btn-hover-border-color: #184d38;
}

.btn-outline-success {
  --bs-btn-color: #216449;
  --bs-btn-border-color: #216449;
  --bs-btn-hover-bg: #216449;
  --bs-btn-hover-border-color: #216449;
}

/* Tarjetas y categorías */
.card {
  border-color: #dce4df;
  overflow: hidden;
}

.card-body {
  padding: 1.5rem;
}

.categoria-material {
  padding: 1.75rem 1.5rem;
  font-size: 1.05rem;
  font-weight: 600;
}

.papel {
  background: #e5eee7;
  color: #29543b;
}

.electronica {
  background: #e6edf5;
  color: #345774;
}

.arte {
  background: #f4eadc;
  color: #765227;
}

/* Badges de modalidad */
.modalidad-prestamo {
  background: #dce8f8;
  color: #274969;
}

.modalidad-intercambio {
  background: #f7e9ca;
  color: #715315;
}

/* Formulario y textos */
.seccion-formulario {
  background: #f6f8f6;
  border-block: 1px solid #e6ebe6;
}

.form-control:focus,
.form-select:focus {
  border-color: #548a6f;
  box-shadow: 0 0 0 .2rem #21644920;
}

.proyecto-texto {
  max-width: 850px;
  line-height: 1.8;
}

/* Accesibilidad */
@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }
}