@import url('https://api.fontshare.com/v2/css?f[]=satoshi@1,900,700,500,301,701,300,501,401,901,400,2&display=swap');
/* ===== RESET BÁSICO ===== */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html, body {
  font-family: "Satoshi", system-ui, sans-serif;
  height: 100%;
  width: 100%;
  color: #ffffff;
  overflow-x: hidden;
}

/* desplazamiento suave para anclas (#...) */
html {
  scroll-behavior: smooth;
}

/* evita que el navbar fijo tape el inicio de la sección */
#servicios {
  scroll-margin-top: 80px; /* ajusta 80px si cambias la altura del navbar */
}

/* Satoshi Variable */
@font-face {
  font-family: "Satoshi";
  src: url("../Satoshi_Complete/Fonts/WEB/fonts/Satoshi-Variable.woff2") format("woff2");
  font-weight: 100 900; /* todos los pesos en un solo archivo */
  font-style: normal;
  font-display: swap;
}

/* Satoshi Variable Italic */
@font-face {
  font-family: "Satoshi";
  src: url("../Satoshi_Complete/Fonts/WEB/fonts/Satoshi-VariableItalic.woff2") format("woff2");
  font-weight: 100 900;
  font-style: italic;
  font-display: swap;
}

/* =======================================
   VARIABLES DE COLOR
======================================= */
:root {
  --drab-dark-brown: #2b3014;
  --olive: #918042;
  --white-smoke: #f5f4f5;
  --white: #ffffff;
  --black: #141414;
}

/* Estilos generales heredados */
body {
  font-family: "Satoshi", system-ui, sans-serif;
  background-color: var(--white-smoke);
  color: var(--black);
  margin: 0;
  line-height: 1.6;
}

/* =======================================
   HERO NOSOTROS
======================================= */
.about-hero {
  background:
    linear-gradient(135deg, rgba(43, 48, 20, 0.9) 0%, rgba(145, 128, 66, 0.9) 100%),
    url('https://images.unsplash.com/photo-1450101499163-c8848c66ca85?ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D&auto=format&fit=crop&w=2070&q=80')
      no-repeat center center;
  background-size: cover;
  color: var(--white);
  padding: 120px 0;
  text-align: center;
  position: relative;
}

.about-hero h2 {
  font-size: 2.8rem;
  margin-bottom: 20px;
  font-weight: 300;
}

.about-hero .lead {
  font-size: 1.3rem;
  opacity: 0.9;
  max-width: 700px;
  margin: 0 auto;
}

/* =======================================
   SECCIÓN NOSOTROS
======================================= */
.about-section {
  padding: 80px 0;
  background-color: var(--white);
}

.section-title {
  color: var(--drab-dark-brown);
  font-size: 28px;
  font-weight: 500;
  margin-bottom: 15px;
  position: relative;
}

.title-divider {
  height: 3px;
  width: 60px;
  background-color: var(--olive);
  margin-bottom: 30px;
}

.about-section p {
  margin-bottom: 20px;
  font-size: 16px;
  line-height: 1.7;
}

.about-features {
  list-style: none;
  padding: 0;
  margin-top: 30px;
}

.about-features li {
  margin-bottom: 15px;
  padding-left: 30px;
  position: relative;
}

.about-features i {
  color: var(--olive);
  font-size: 20px;
  position: absolute;
  left: 0;
  top: 2px;
}

.about-image {
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 15px 30px rgba(0,0,0,0.1);
}

/* puedes dejar este zoom del "about" si te gusta */
.about-image img {
  transition: transform 0.5s ease;
}

.about-image:hover img {
  transform: scale(1.03);
}

/* =======================================
   SECCIÓN EQUIPO - COMPLETAMENTE ESTÁTICA
======================================= */
.team-section {
  padding: 80px 0;
  background-color: var(--white);
}

/* Tarjeta del equipo - sin efectos */
.team-card {
  background-color: var(--white-smoke);
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 5px 15px rgba(0,0,0,0.05);
  height: 100%;
  /* Sin transiciones */
}

/* Sin efectos hover en la tarjeta */
.team-card:hover {
  /* Completamente estática */
}

/* Contenedor de imagen del equipo */
.team-img-container {
  position: relative;
  overflow: hidden;
  border-radius: 8px;
  aspect-ratio: 3 / 2;  /* 3:2 fijo, se ve igual en desktop y móvil */
}

/* Imagen del equipo sin zoom ni efectos */
.team-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 25%;
  display: block;
  /* Sin efectos */
  transform: none !important;
  transition: none !important;
}

/* Asegurar que NO hay efectos en hover */
.team-card:hover .team-img,
.team-img-container:hover img {
  transform: none !important;
  transition: none !important;
}

/* Overlay desactivado */
.team-overlay {
  display: none !important;
}

.team-info {
  padding: 25px;
  text-align: center;
}

.team-info h4 {
  color: var(--drab-dark-brown);
  font-size: 22px;
  margin-bottom: 5px;
}

.position {
  color: var(--olive);
  font-weight: 500;
  margin-bottom: 15px;
  font-size: 16px;
}

.bio {
  color: #555;
  margin-bottom: 20px;
  font-size: 14px;
}

.expertise {
  display: flex;
  justify-content: center;
  gap: 10px;
  flex-wrap: wrap;
}

.badge {
  background-color: var(--olive);
  color: var(--white);
  padding: 5px 12px;
  border-radius: 20px;
  font-size: 12px;
  font-weight: 500;
}

/* =======================================
   SECCIÓN VALORES
======================================= */
.values-section {
  padding: 80px 0;
  background-color: var(--white-smoke);
}

.value-card {
  background-color: var(--white);
  padding: 30px;
  border-radius: 8px;
  text-align: center;
  height: 100%;
  box-shadow: 0 5px 15px rgba(0,0,0,0.05);
  transition: transform 0.3s ease;
}

.value-card:hover {
  transform: translateY(-5px);
}

.value-icon {
  width: 80px;
  height: 80px;
  background-color: var(--olive);
  color: var(--white);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 20px;
  font-size: 30px;
}

.value-card h4 {
  color: var(--drab-dark-brown);
  margin-bottom: 15px;
  font-size: 20px;
}

.value-card p {
  color: #555;
  font-size: 15px;
}

/* =======================================
   RESPONSIVE
======================================= */
@media (max-width: 992px) {
  .about-hero h2 {
    font-size: 2.2rem;
  }
}

@media (max-width: 768px) {
  .about-hero {
    padding: 80px 0;
  }

  .about-hero h2 {
    font-size: 1.8rem;
  }

  .about-hero .lead {
    font-size: 1.1rem;
  }

  .section-title {
    font-size: 24px;
  }

  .location-info {
    margin-top: 30px;
  }
}

@media (max-width: 576px) {
  .about-section,
  .location-section,
  .team-section,
  .values-section {
    padding: 60px 0;
  }

  .value-icon {
    width: 60px;
    height: 60px;
    font-size: 24px;
  }
}

/* =======================================
   Fallback para navegadores sin aspect-ratio
======================================= */
@supports not (aspect-ratio: 1) {
  .team-img-container {
    height: 0;
    padding-top: 66.6667%; /* 3:2 */
  }

  .team-img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 50% 25%;
  }
}

/* =======================================
   SATOSHI EN CONTACTO (reutilizado)
======================================= */
.contact-hero,
.contact-hero *,
.contact-section,
.contact-section *,
.contact-form-container,
.contact-form-container *,
.contact-info-container,
.contact-info-container *,
.map-container,
.map-container * {
  font-family: "Satoshi", system-ui, sans-serif !important;
}

/* Si quieres que esta página tenga un pequeño offset por el navbar */
.team-section {
  padding-top: calc(80px + 20px); /* puedes ajustar si hace falta */
}