
/* ========================================
   TUCHOK - SOSTENIBILIDAD
======================================== */

.sustainability {
  --sustain-yellow: #FFA900;

  position: relative;
  isolation: isolate;
  min-height: 790px;
  overflow: hidden;
  background: #FFFFFF;
  color: #FFFFFF;
}

.sustainability-container {
  position: relative;
  z-index: 2;
  width: min(100% - 80px, 1230px);
  margin: 0 auto;
}

/* TITULAR SUPERIOR */

.sustainability-heading {
  max-width: 420px;
  padding-top: 55px;
  color: #FFFFFF;
}

.sustainability-leaves {
  display: block;
  width: 90px;
  height: 55px;
  margin-bottom: 28px;
}

.sustainability-kicker {
  margin: 0 0 10px;
  font-family: "Dexa Pro Expanded", Arial, sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.35;
  letter-spacing: -0.015em;
  color: #FFFFFF;
}

.sustainability-title {
  margin: 0;
  font-family: "Dexa Pro Expanded", Arial, sans-serif;
  font-size: clamp(34px, 3.6vw, 56px);
  font-weight: 800;
  line-height: 0.95;
  letter-spacing: -0.035em;
  color: #FFFFFF;
}

.sustainability-title span {
  display: block;
}

/* TARJETA SVG + TEXTO ENCIMA */

.sustainability-card {
  position: relative;
  z-index: 3;

  display: flex;
  align-items: center;
  justify-content: center;

  width: min(455px, 100%);
  min-height: 0;
  aspect-ratio: 404 / 462;

  margin-top: 34px;
  padding: 0;

  background: #FFB400;
  clip-path: none;

  -webkit-mask-image: url("../svg/sustainability-card.svg");
  mask-image: url("../svg/sustainability-card.svg");

  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;

  -webkit-mask-position: center;
  mask-position: center;

  -webkit-mask-size: contain;
  mask-size: contain;
}

.sustainability-card-inner {
  position: relative;
  z-index: 2;
  width: 70%;
  max-width: 300px;
  margin: 0 auto;
}

.sustainability-card p {
  margin: 0;
  color: #FFFFFF;
  font-family: "Dexa Pro Expanded", Arial, sans-serif;
  font-size: clamp(14px, 1.02vw, 16px);
  font-weight: 500;
  line-height: 1.42;
  letter-spacing: -0.02em;

  text-align: left;
  hyphens: none;
  word-break: normal;
  overflow-wrap: normal;
  white-space: normal;
  text-wrap: pretty;
}

/* FIGURAS GEOMÉTRICAS */

.sustainability-decor {
  position: absolute;
  z-index: 1;
  top: 490px;
  right: -18px;
  width: 520px;
  height: 410px;
  pointer-events: none;
}

/* FIGURA CIRCULAR DE CUATRO HOJAS */

.sustainability-flower {
  position: absolute;
  top: 0;
  left: 20px;
  width: 180px;
  height: 180px;
}

.sustainability-flower .petal {
  position: absolute;
  width: 50%;
  height: 50%;
  background: var(--sustain-yellow);
}

.sustainability-flower .petal-1 {
  top: 0;
  left: 0;
  border-radius: 100% 0 0 0;
}

.sustainability-flower .petal-2 {
  top: 0;
  right: 0;
  border-radius: 0 100% 0 0;
}

.sustainability-flower .petal-3 {
  bottom: 0;
  right: 0;
  border-radius: 0 0 100% 0;
}

.sustainability-flower .petal-4 {
  bottom: 0;
  left: 0;
  border-radius: 0 0 0 100%;
}

.sustainability-flower::after {
  content: "";
  position: absolute;
  inset: 34%;
  background: #FFFFFF;
  clip-path: polygon(
    50% 0,
    100% 50%,
    50% 100%,
    0 50%
  );
}

/* FLECHA GEOMÉTRICA */

.sustainability-chevron {
  position: absolute;
  top: 18px;
  right: 0;
  width: 210px;
  height: 170px;
  background: var(--sustain-yellow);
  clip-path: polygon(
    0 0,
    62% 0,
    100% 50%,
    62% 100%,
    0 100%,
    42% 50%
  );
}

/* FORMAS DECORATIVAS INFERIORES */

.sustainability-bottom-shape {
  position: absolute;
  top: 215px;
  left: 55px;
  display: flex;
  align-items: flex-start;
  gap: 28px;
}

.bottom-leaf {
  display: block;
  width: 210px;
  height: 210px;
  background: var(--sustain-yellow);
  border-radius: 100% 0;
  transform: rotate(45deg);
}

.bottom-rounded {
  position: relative;
  display: block;
  width: 185px;
  height: 185px;
  background: var(--sustain-yellow);
  border-radius: 46px;
  transform: rotate(45deg);
}

.bottom-rounded::after {
  content: "";
  position: absolute;
  inset: 0;
  margin: auto;
  width: 54px;
  height: 54px;
  background: #FFFFFF;
  border-radius: 18px;
  transform: rotate(-45deg);
}


/* ========================================
   TABLET
======================================== */

@media (max-width: 1024px) {
  .sustainability {
    min-height: 760px;
  }

  .sustainability-decor {
    top: 500px;
    right: -95px;
    transform: scale(0.78);
    transform-origin: top right;
  }
}


/* ========================================
   MÓVIL
   MANTENEMOS LA MÁSCARA GEOMÉTRICA
======================================== */

@media (max-width: 767px) {
  .sustainability {
    min-height: 820px;
  }

  .sustainability-container {
    width: calc(100% - 40px);
  }

  .sustainability-decor {
    top: auto;
    bottom: -72px;
    right: -165px;
    transform: scale(0.48);
    transform-origin: bottom right;
  }
}

/* OCULTAR LAS FIGURAS CSS ANTIGUAS */

.sustainability-decor {
  display: none;
}

/* NUEVAS FIGURAS SVG */

.sustainability-decor-svg {
  position: absolute;
  z-index: 3;
  right: -35px;
  bottom: -70px;
  width: min(42vw, 520px);
  pointer-events: none;
}

.sustainability-symbols-image {
  display: block;
  width: 100%;
  height: auto;
}

/* TABLET */

@media (max-width: 1024px) {
  .sustainability-decor-svg {
    right: -60px;
    width: 380px;
  }
}

/* MÓVIL */

@media (max-width: 767px) {
  .sustainability-decor-svg {
    right: -65px;
    bottom: -20px;
    width: 230px;
  }
}

@media (max-width: 767px) {
  .sustainability-heading {
    max-width: 280px;
    padding-top: 38px;
  }

  .sustainability-leaves {
    width: 64px;
    height: 40px;
    margin-bottom: 20px;
  }

  .sustainability-kicker {
    font-size: 12px;
    margin-bottom: 8px;
  }

  .sustainability-title {
    font-size: clamp(28px, 8vw, 40px);
    line-height: 0.96;
  }

  .sustainability-card {
    width: min(340px, 100%);
    aspect-ratio: 404 / 462;
    margin-top: 125px;
    margin-left: auto;
    margin-right: auto;
  }

  .sustainability-card-inner {
    width: 71%;
    max-width: 250px;
  }

  .sustainability-card p {
    font-size: 13px;
    line-height: 1.38;
  }
}

/* MÓVIL — BAJAR LA TARJETA AMARILLA */

@media (max-width: 767px) {
  .sustainability-card {
    margin-top: 275px;
    margin-left: auto;
    margin-right: auto;
  }

  /* Dar espacio para que no se corte la figura */
  .sustainability {
    min-height: 1050px;
  }
}
