.fm-aboutpage__head{
  margin-bottom: 18px;
}

.fm-aboutpage__title{
  font-weight: 800;
  letter-spacing: -0.02em;
  line-height: 1.05;
  margin: 0;
}

.fm-aboutpage__body{
  max-width: 1320px;
}

/* Tipografía legible para textos largos */
.fm-aboutpage .rte-content p{
  line-height: 1.6;
  margin: 0 0 14px;
}

/* Títulos dentro del contenido */
.fm-aboutpage .rte-content h2{
  margin: 30px 0 12px;
  font-weight: 800;
}

.fm-aboutpage .rte-content h3{
  margin: 22px 0 10px;
  font-weight: 800;
  text-align: left;
}

/* =========================
   TEAM GRID (container-friendly)
========================= */

.fm-team{
  display: grid;
  gap: 28px;
  margin-top: 32px;

  /* Usa todo el ancho del container global (1320) */
  width: 100%;
}

/* Base: cards fluidas, sin romper responsive */
.fm-team__card{
  background: #fff;
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 12px 30px rgba(0,0,0,.06);
  transition: transform .25s ease, box-shadow .25s ease;
  display: flex;
  flex-direction: column;
}

.fm-team__card:hover{
  transform: translateY(-6px);
  box-shadow: 0 20px 50px rgba(0,0,0,.10);
}

.fm-team__photo{
  height: 240px;
  overflow: hidden;
  background: #f3f4f6;
}

.fm-team__photo img{
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.fm-team__info{
  padding: 20px 18px;
  text-align: center;
}

.fm-team__info h4{
  margin: 0 0 8px;
  font-weight: 800;
  font-size: 16px;
  letter-spacing: .4px;
}

.fm-team__info p{
  margin: 0;
  font-size: 14px;
  line-height: 1.5;
  color: #6b7280;
}

/* =========================
   Responsive grid logic
   - mobile: 1
   - tablet: 2
   - desktop: 3
   - wide desktop: 4 (si entra)
========================= */

/* Mobile first */
.fm-team{ grid-template-columns: 1fr; }

@media (min-width: 576px){
  .fm-team{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (min-width: 992px){
  .fm-team{ grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

/* Wide desktop: 4 en una fila */
@media (min-width: 1320px){
  .fm-team{ grid-template-columns: repeat(4, minmax(0, 1fr)); }
}

/* =========================
   ABOUT HERO
========================= */

.fm-about-hero{
  width: 100%;
  padding: 80px 0 72px;
  background: #f7f8fb;
}

.fm-about-hero__inner{
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
}

.fm-about-hero__content{
  width: 100%;
  max-width: 640px;
}

.fm-about-hero__kicker{
  margin-bottom: 16px;
  font-size: 14px;
  line-height: 1.2;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #001e46;
}

.fm-about-hero__title{
  margin: 0 0 24px;
  font-size: clamp(44px, 6vw, 72px);
  line-height: 0.98;
  font-weight: 800;
  letter-spacing: -0.04em;
  color: #0064ff;
}

.fm-about-hero__lead{
  margin: 0 0 24px;
  font-size: 28px;
  line-height: 1.15;
  font-weight: 700;
  letter-spacing: -0.02em;
  color: #001e46 !important;
}

.fm-about-hero__text{
  max-width: 640px;
}

.fm-about-hero__text p{
  margin: 0 0 16px;
  font-size: 16px;
  line-height: 1.6;
  font-weight: normal;
  color: #001e46;
}

.fm-about-hero__text p:last-child{
  margin-bottom: 0;
}

@media (max-width: 991.98px){
  .fm-about-hero{
    padding: 64px 0 56px;
  }

  .fm-about-hero__content{
    max-width: 100%;
  }

  .fm-about-hero__lead{
    font-size: 28px;
  }

  .fm-about-hero__text p{
    font-size: 18px;
  }
}

@media (max-width: 767.98px){
  .fm-about-hero{
    padding: 48px 0 40px;
  }

  .fm-about-hero__kicker{
    margin-bottom: 12px;
    font-size: 12px;
  }

  .fm-about-hero__title{
    margin-bottom: 16px;
  }

  .fm-about-hero__lead{
    margin-bottom: 16px;
    font-size: 22px;
    line-height: 1.2;
  }

  .fm-about-hero__text p{
    margin-bottom: 16px;
    font-size: 16px;
    line-height: 1.6;
  }
}

/* =========================================
   ABOUT PAGE / GLOBAL FIXES
========================================= */

/* Hero full bleed */
body.fm-about-page .fm-about-hero {
  position: relative;
  left: 50%;
  right: 50%;
  width: 100vw;
  margin-left: -50vw !important;
  margin-right: -50vw !important;
  margin-top: 0 !important;
  padding: 72px 0 72px !important;
  background: #f7f8fb !important;
}

/* Container alineado al sistema */
body.fm-about-page .fm-about-hero .container {
  width: 100%;
  max-width: 1320px !important;
  margin-left: auto;
  margin-right: auto;
  padding-left: 24px;
  padding-right: 24px;
}

/* Empujar bloque a la derecha */
body.fm-about-page .fm-about-hero__inner {
  display: flex;
  justify-content: flex-end;
  align-items: flex-start;
}

body.fm-about-page .fm-about-hero__content {
  width: 100%;
  max-width: 760px;
  margin-left: auto;
}

@media (max-width: 991.98px) {
  body.fm-about-page .fm-about-hero {
    padding: 56px 0 56px !important;
  }

  body.fm-about-page .fm-about-hero__inner {
    justify-content: flex-start;
  }

  body.fm-about-page .fm-about-hero__content {
    max-width: 100%;
    margin-left: 0;
  }
}

@media (max-width: 767.98px) {
  body.fm-about-page .fm-about-hero {
    padding: 40px 0 40px !important;
  }

  body.fm-about-page .fm-about-hero .container {
    padding-left: 20px;
    padding-right: 20px;
  }
}
/* =========================================================
   ABOUT HERO – full bleed real
========================================================= */

body#cms.cms-id-4 .fm-about-hero {
  position: relative;
  left: 50%;
  right: 50%;
  width: 100vw;
  margin-left: -50vw !important;
  margin-right: -50vw !important;
  margin-top: 0 !important;
  padding: 72px 0 80px !important;
  background: #f7f8fb !important;
}

body#cms.cms-id-4 .fm-about-hero > .container {
  width: 100%;
  max-width: 1320px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 24px !important;
  padding-right: 24px !important;
}

/* bloque editorial corrido a la derecha */
body#cms.cms-id-4 .fm-about-hero__inner {
  display: flex;
  justify-content: flex-end;
  align-items: flex-start;
}

body#cms.cms-id-4 .fm-about-hero__content {
  width: 100%;
  max-width: 760px;
  margin-left: auto;
}

@media (max-width: 991.98px) {
  body#cms.cms-id-4 .fm-about-hero {
    padding: 56px 0 64px !important;
  }

  body#cms.cms-id-4 .fm-about-hero__inner {
    justify-content: flex-start;
  }

  body#cms.cms-id-4 .fm-about-hero__content {
    max-width: 100%;
    margin-left: 0;
  }
}

@media (max-width: 767.98px) {
  body#cms.cms-id-4 .fm-about-hero {
    padding: 40px 0 48px !important;
  }

  body#cms.cms-id-4 .fm-about-hero > .container {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
}

/* =========================================================
   ABOUT PAGE (CMS ID 4) – cleanup real del layout CMS
========================================================= */

body#cms.cms-id-4 nav.breadcrumb,
body#cms.cms-id-4 .breadcrumb {
  display: none !important;
}

body#cms.cms-id-4 #wrapper,
body#cms.cms-id-4 #content-wrapper,
body#cms.cms-id-4 #main,
body#cms.cms-id-4 #content.page-content.page-cms,
body#cms.cms-id-4 .page-content.page-cms {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

body#cms.cms-id-4 #content-wrapper {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

body#cms.cms-id-4 #main > .page-header,
body#cms.cms-id-4 .page-header {
  display: none !important;
}

/* =========================================================
   ABOUT / WHAT WE DO
========================================================= */

.fm-aboutpage__body .fm-about-what{
  padding: 80px 0 88px;
  background: #ffffff;
}

/* encabezado */

.fm-aboutpage__body .fm-about-what__head{
  max-width: 920px;
  margin-bottom: 48px;
}

.fm-aboutpage__body .fm-about-what__kicker{
  margin-bottom: 16px;
  font-size: 16px;
  line-height: 16px;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: #001e46;
}

.fm-aboutpage__body .fm-about-what__title{
  margin-bottom: 24px;
  font-size: clamp(40px,4.4vw,56px);
  line-height: 1;
  font-weight: 800;
  letter-spacing: -0.03em;
  color: #0064ff;
}

.fm-aboutpage__body .fm-about-what__intro{
  max-width: 760px;
  font-size: 24px;
  line-height: 32px;
  font-weight: 500;
  color: #001e46;
}

/* grid */

.fm-aboutpage__body .fm-about-what__grid{
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 32px;
}

/* cards */

.fm-aboutpage__body .fm-about-what__card{
  padding: 32px;
  border-radius: 24px;
  background: #f7f8fb;
  box-shadow: 0 10px 28px rgba(0,30,70,.05);
}

.fm-aboutpage__body .fm-about-what__card{
  transition:
    transform .24s ease,
    box-shadow .24s ease,
    background-color .24s ease;
}

@media (hover: hover){
  .fm-aboutpage__body .fm-about-what__card:hover{
    transform: translateY(-4px);
    box-shadow: 0 16px 36px rgba(0,30,70,.08);
    background: #fbfcff;
  }
}


.fm-aboutpage__body .fm-about-what__card-title{
  margin-bottom: 16px;
  font-size: 24px;
  line-height: 1.15;
  font-weight: 800;
  letter-spacing: -0.02em;
  color: #001e46;
}

.fm-aboutpage__body .fm-about-what__card-text{
  font-size: 16px;
  line-height: 24px;
  color: #001e46;
  font-weight: 400;
  text-align: left;
  text-wrap: pretty;
}

@media (hover: hover){
  .fm-aboutpage__body .fm-about-what__card:hover .fm-about-what__card-title{
    color: #0064ff;
  }
}

/* responsive */

@media (max-width:1199px){

  .fm-aboutpage__body .fm-about-what__grid{
    grid-template-columns: repeat(2,1fr);
  }

}

@media (max-width:767px){

  .fm-aboutpage__body .fm-about-what{
    padding: 56px 0 64px;
  }

  .fm-aboutpage__body .fm-about-what__intro{
    font-size: 16px;
    line-height: 24px;
  }

  .fm-aboutpage__body .fm-about-what__grid{
    grid-template-columns: 1fr;
    gap: 24px;
  }

  .fm-aboutpage__body .fm-about-what__card{
    padding: 24px;
  }

}

/* =========================================================
   ABOUT / WHO WE ARE / TEAM
========================================================= */

.fm-aboutpage__body .fm-about-team{
  padding: 72px 0 0;
  background: #ffffff;
}

/* header centrado */
.fm-aboutpage__body .fm-about-team__head{
  max-width: 980px;
  margin: 0 auto 140px;
  text-align: center;
}

.fm-aboutpage__body .fm-about-team__kicker{
  margin: 0 0 16px;
  font-size: 16px;
  line-height: 16px;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: #001e46;
}

.fm-aboutpage__body .fm-about-team__title{
  margin: 0 !important;
  font-size: clamp(40px, 4vw, 64px);
  line-height: 1.05;
  font-weight: 800 !important;
  letter-spacing: -0.03em;
  color: #001e46;
  text-wrap: balance;
}

/* grid full width */
.fm-aboutpage__body .fm-about-team__grid{
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0;
  width: 100vw;
  position: relative;
  left: 50%;
  margin-left: -50vw;
}

/* card */
.fm-aboutpage__body .fm-about-team__card{
  position: relative;
  overflow: hidden;
  aspect-ratio: 4 / 5;
  background: #dfeaf3;
  transform: translateZ(0);
}

/* image */
.fm-aboutpage__body .fm-about-team__image{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* overlay */
.fm-aboutpage__body .fm-about-team__overlay{
  position: absolute;
  inset: 0;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  padding: 32px 24px;
  background: linear-gradient(
    to top,
    rgba(0, 0, 0, 0.62) 0%,
    rgba(0, 0, 0, 0.38) 32%,
    rgba(0, 0, 0, 0.10) 62%,
    rgba(0, 0, 0, 0) 100%
  );
  opacity: 0;
  transition: opacity .28s ease;
}
/* text inside overlay */
.fm-aboutpage__body .fm-about-team__copy{
  width: 100%;
  text-align: center;
  opacity: 0;
  transform: translateY(16px);
  transition: opacity .28s ease, transform .28s ease;
}

.fm-aboutpage__body .fm-about-team__name{
  margin: 0 0 8px;
  font-size: 24px;
  line-height: 1.05;
  font-weight: 800;
  letter-spacing: -0.02em;
  color: #ffffff;
  text-transform: uppercase;
  text-align: center !important;
  text-wrap: balance;
}

.fm-aboutpage__body .fm-about-team__role{
  margin: 0 !important;
  font-size: 16px !important;
  line-height: 24px !important;
  font-weight: 500 !important;
  color: #ffffff !important;
  text-wrap: balance;
}

/* hover desktop */
@media (hover:hover){
  .fm-aboutpage__body .fm-about-team__card:hover .fm-about-team__overlay{
    opacity: 1;
  }

  .fm-aboutpage__body .fm-about-team__card:hover .fm-about-team__copy{
    opacity: 1;
    transform: translateY(0);
  }
}

/* laptop / tablet */
@media (max-width: 1399px){
  .fm-aboutpage__body .fm-about-team__grid{
    grid-template-columns: repeat(2, 1fr);
  }
}

/* mobile: texto visible siempre */
@media (max-width: 767px){
  .fm-aboutpage__body .fm-about-team{
    padding: 64px 0 0;
  }

  .fm-aboutpage__body .fm-about-team__head{
    margin-bottom: 40px;
    padding-left: 20px;
    padding-right: 20px;
  }

  .fm-aboutpage__body .fm-about-team__title{
    font-size: 32px;
    line-height: 1.12;
  }

  .fm-aboutpage__body .fm-about-team__grid{
    grid-template-columns: 1fr;
  }

 @media (max-width: 767px){

  .fm-aboutpage__body .fm-about-team__overlay{
    padding: 24px 20px;
    opacity: 1;
  }

}

  .fm-aboutpage__body .fm-about-team__copy{
    opacity: 1;
    transform: translateY(0);
  }

  .fm-aboutpage__body .fm-about-team__name{
    font-size: 20px;
    line-height: 24px;
  }

  .fm-aboutpage__body .fm-about-team__role{
    font-size: 16px;
    line-height: 24px;
  }
}
/* =========================================================
   ABOUT TEAM / reveal on scroll
========================================================= */

.fm-aboutpage__body .fm-about-team .fm-about-team__card{
  opacity: 1;
  transform: translateY(0);
  transition:
    opacity .65s cubic-bezier(.22,1,.36,1),
    transform .65s cubic-bezier(.22,1,.36,1);
}

.js .fm-aboutpage__body .fm-about-team .fm-about-team__card{
  opacity: 0;
  transform: translateY(24px);
}

.js .fm-aboutpage__body .fm-about-team.is-inview .fm-about-team__card{
  opacity: 1;
  transform: translateY(0);
}

.js .fm-aboutpage__body .fm-about-team.is-inview .fm-about-team__card:nth-child(1){
  transition-delay: .05s;
}
.js .fm-aboutpage__body .fm-about-team.is-inview .fm-about-team__card:nth-child(2){
  transition-delay: .14s;
}
.js .fm-aboutpage__body .fm-about-team.is-inview .fm-about-team__card:nth-child(3){
  transition-delay: .23s;
}
.js .fm-aboutpage__body .fm-about-team.is-inview .fm-about-team__card:nth-child(4){
  transition-delay: .32s;
}

@media (prefers-reduced-motion: reduce){
  .js .fm-aboutpage__body .fm-about-team .fm-about-team__card{
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }
}

/* =========================================================
   ABOUT / MISSION / VISION / VALUE
========================================================= */

.fm-aboutpage__body .fm-about-values{
  padding: 96px 0;
  background: #ffffff;
}

.fm-aboutpage__body .fm-about-values__head{
  max-width: 980px;
  margin: 0 auto 56px;
  text-align: center;
}

.fm-aboutpage__body .fm-about-values__kicker{
  margin: 0 0 16px;
  font-size: 16px;
  line-height: 16px;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: #001e46;
}

.fm-aboutpage__body .fm-about-values__title{
  margin: 0;
  font-size: clamp(32px, 3.6vw, 56px);
  line-height: 1.1;
  font-weight: 800;
  letter-spacing: -0.03em;
  color: #0064ff;
  text-wrap: balance;
}

.fm-aboutpage__body .fm-about-values__grid{
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 32px;
  margin-bottom: 32px;
}

.fm-aboutpage__body .fm-about-values__card{
  padding: 40px;
  border-radius: 24px;
  background: #f7f8fb;
  box-shadow: 0 10px 28px rgba(0,30,70,.05);
  transition:
    transform .24s ease,
    box-shadow .24s ease,
    background-color .24s ease;
}

@media (hover:hover){
  .fm-aboutpage__body .fm-about-values__card:hover{
    transform: translateY(-4px);
    box-shadow: 0 16px 36px rgba(0,30,70,.08);
    background: #fbfcff;
  }
}

.fm-aboutpage__body .fm-about-values__card-title{
  margin: 0 0 16px;
  font-size: 32px;
  line-height: 1.1;
  font-weight: 800;
  letter-spacing: -0.02em;
  color: #001e46;
}

.fm-aboutpage__body .fm-about-values__card-text{
  margin: 0;
  font-size: 16px;
  line-height: 24px;
  font-weight: 400;
  color: #001e46;
  text-align: left;
  text-wrap: pretty;
}

.fm-aboutpage__body .fm-about-values__value{
  border-radius: 24px;
  background: #001e46;
  overflow: hidden;
}

.fm-aboutpage__body .fm-about-values__value-inner{
  padding: 40px;
}

.fm-aboutpage__body .fm-about-values__value-kicker{
  margin: 0 0 16px;
  font-size: 16px;
  line-height: 16px;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: #50c8ff !important;
}

.fm-aboutpage__body .fm-about-values__value-text{
  max-width: 980px;
  margin: 0;
  font-size: 24px;
  line-height: 32px;
  font-weight: 500;
  color: #a0ebff !important;
  text-wrap: pretty;
}

.fm-aboutpage__body .fm-about-values__brand{
  color: #ffffff !important;
  font-weight: 800;
  letter-spacing: -0.01em;
}

/* responsive */
@media (max-width: 991px){
  .fm-aboutpage__body .fm-about-values__grid{
    grid-template-columns: 1fr;
  }
}

@media (max-width: 767px){
  .fm-aboutpage__body .fm-about-values{
    padding: 64px 0;
  }

  .fm-aboutpage__body .fm-about-values__head{
    margin-bottom: 40px;
  }

  .fm-aboutpage__body .fm-about-values__card{
    padding: 24px;
    border-radius: 20px;
  }

  .fm-aboutpage__body .fm-about-values__card-title{
    font-size: 24px;
    line-height: 1.15;
  }

  .fm-aboutpage__body .fm-about-values__value{
    border-radius: 20px;
  }

  .fm-aboutpage__body .fm-about-values__value-inner{
    padding: 24px;
  }

  .fm-aboutpage__body .fm-about-values__value-text{
    font-size: 16px;
    line-height: 24px;
  }
}
/* =========================================================
   ABOUT HERO from CMS
========================================================= */

body#cms.cms-id-4 .fm-aboutpage__body > .fm-about-hero{
  position: relative;
  width: 100vw;
  left: 50%;
  margin-left: -50vw !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding: 72px 0 80px !important;
  background: #f7f8fb !important;
}

/* inner aligned to Furmates system width */
body#cms.cms-id-4 .fm-aboutpage__body > .fm-about-hero .fm-about-hero__inner{
  width: 100%;
  max-width: 1320px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 24px;
  padding-right: 24px;

  display: grid;
  grid-template-columns: 480px minmax(0, 720px);
  align-items: center;
  justify-content: space-between;
  gap: 64px;
}

body#cms.cms-id-4 .fm-about-hero__media{
  display: flex;
  align-items: center;
  justify-content: center;
}

body#cms.cms-id-4 .fm-about-hero__isologo{
  display: block;
  width: 100%;
  max-width: 360px;
  height: auto;
}

body#cms.cms-id-4 .fm-about-hero__content{
  width: 100%;
  max-width: 640px;
}

body#cms.cms-id-4 .fm-about-hero__kicker{
  margin: 0 0 16px;
  font-size: 16px;
  line-height: 16px;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: #001e46;
}

body#cms.cms-id-4 .fm-about-hero__title{
  margin: 0 0 24px;
  font-size: clamp(48px, 5vw, 76px);
  line-height: .98;
  font-weight: 800;
  letter-spacing: -0.04em;
  color: #0064ff;
}

body#cms.cms-id-4 .fm-about-hero__lead{
  margin: 0 0 24px;
  font-size: 32px;
  line-height: 1.15;
  font-weight: 700;
  letter-spacing: -0.02em;
  color: #001e46;
}

body#cms.cms-id-4 .fm-about-hero__text p{
  margin: 0 0 16px;
  font-size: 16px;
  line-height: 24px;
  font-weight: 400;
  color: #001e46;
}

body#cms.cms-id-4 .fm-about-hero__text p:last-child{
  margin-bottom: 0;
}

/* tablet */
@media (max-width: 1199px){
  body#cms.cms-id-4 .fm-aboutpage__body > .fm-about-hero .fm-about-hero__inner{
    grid-template-columns: 280px minmax(0, 1fr);
    gap: 40px;
  }

  body#cms.cms-id-4 .fm-about-hero__isologo{
    max-width: 280px;
  }

  body#cms.cms-id-4 .fm-about-hero__lead{
    font-size: 24px;
    line-height: 32px;
  }
}

/* mobile */
@media (max-width: 767px){
  body#cms.cms-id-4 .fm-aboutpage__body > .fm-about-hero{
    padding: 40px 0 48px !important;
  }

  body#cms.cms-id-4 .fm-aboutpage__body > .fm-about-hero .fm-about-hero__inner{
    grid-template-columns: 1fr;
    gap: 24px;
    padding-left: 20px;
    padding-right: 20px;
  }

  body#cms.cms-id-4 .fm-about-hero__media{
    display: none;
  }

  body#cms.cms-id-4 .fm-about-hero__title{
    margin-bottom: 16px;
  }

  body#cms.cms-id-4 .fm-about-hero__lead{
    margin-bottom: 16px;
    font-size: 24px;
    line-height: 32px;
  }
}

/* =========================================================
   ABOUT HERO / reveal on scroll
========================================================= */

/* estado normal: visible */
.fm-aboutpage__body .fm-about-hero .fm-about-hero__media,
.fm-aboutpage__body .fm-about-hero .fm-about-hero__kicker,
.fm-aboutpage__body .fm-about-hero .fm-about-hero__title,
.fm-aboutpage__body .fm-about-hero .fm-about-hero__lead,
.fm-aboutpage__body .fm-about-hero .fm-about-hero__text p{
  opacity: 1;
  transform: none;
  transition:
    opacity .7s cubic-bezier(.22,1,.36,1),
    transform .7s cubic-bezier(.22,1,.36,1);
  will-change: transform, opacity;
}

/* solo si hay JS, arrancan ocultos */
.js .fm-aboutpage__body .fm-about-hero .fm-about-hero__media,
.js .fm-aboutpage__body .fm-about-hero .fm-about-hero__kicker,
.js .fm-aboutpage__body .fm-about-hero .fm-about-hero__title,
.js .fm-aboutpage__body .fm-about-hero .fm-about-hero__lead,
.js .fm-aboutpage__body .fm-about-hero .fm-about-hero__text p{
  opacity: 0;
}

/* offsets distintos para dar riqueza */
.js .fm-aboutpage__body .fm-about-hero .fm-about-hero__media{
  transform: translateX(-28px);
}

.js .fm-aboutpage__body .fm-about-hero .fm-about-hero__kicker,
.js .fm-aboutpage__body .fm-about-hero .fm-about-hero__title,
.js .fm-aboutpage__body .fm-about-hero .fm-about-hero__lead,
.js .fm-aboutpage__body .fm-about-hero .fm-about-hero__text p{
  transform: translateY(24px);
}

/* cuando entra al viewport */
.js .fm-aboutpage__body .fm-about-hero.is-inview .fm-about-hero__media,
.js .fm-aboutpage__body .fm-about-hero.is-inview .fm-about-hero__kicker,
.js .fm-aboutpage__body .fm-about-hero.is-inview .fm-about-hero__title,
.js .fm-aboutpage__body .fm-about-hero.is-inview .fm-about-hero__lead,
.js .fm-aboutpage__body .fm-about-hero.is-inview .fm-about-hero__text p{
  opacity: 1;
  transform: translate(0,0);
}

/* cascada */
.js .fm-aboutpage__body .fm-about-hero.is-inview .fm-about-hero__media{
  transition-delay: .05s;
}

.js .fm-aboutpage__body .fm-about-hero.is-inview .fm-about-hero__kicker{
  transition-delay: .12s;
}

.js .fm-aboutpage__body .fm-about-hero.is-inview .fm-about-hero__title{
  transition-delay: .22s;
}

.js .fm-aboutpage__body .fm-about-hero.is-inview .fm-about-hero__lead{
  transition-delay: .34s;
}

.js .fm-aboutpage__body .fm-about-hero.is-inview .fm-about-hero__text p:nth-of-type(1){
  transition-delay: .46s;
}

.js .fm-aboutpage__body .fm-about-hero.is-inview .fm-about-hero__text p:nth-of-type(2){
  transition-delay: .58s;
}

/* accesibilidad */
@media (prefers-reduced-motion: reduce){
  .js .fm-aboutpage__body .fm-about-hero .fm-about-hero__media,
  .js .fm-aboutpage__body .fm-about-hero .fm-about-hero__kicker,
  .js .fm-aboutpage__body .fm-about-hero .fm-about-hero__title,
  .js .fm-aboutpage__body .fm-about-hero .fm-about-hero__lead,
  .js .fm-aboutpage__body .fm-about-hero .fm-about-hero__text p{
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }
}

/* =========================================================
   ABOUT / WHAT WE DO / reveal on scroll
========================================================= */

/* estado normal: visible */
.fm-aboutpage__body .fm-about-what .fm-about-what__kicker,
.fm-aboutpage__body .fm-about-what .fm-about-what__title,
.fm-aboutpage__body .fm-about-what .fm-about-what__intro,
.fm-aboutpage__body .fm-about-what .fm-about-what__card{
  opacity: 1;
  transform: none;
  transition:
    opacity .7s cubic-bezier(.22,1,.36,1),
    transform .7s cubic-bezier(.22,1,.36,1);
  will-change: transform, opacity;
}

/* solo si hay JS, arrancan ocultos */
.js .fm-aboutpage__body .fm-about-what .fm-about-what__kicker,
.js .fm-aboutpage__body .fm-about-what .fm-about-what__title,
.js .fm-aboutpage__body .fm-about-what .fm-about-what__intro,
.js .fm-aboutpage__body .fm-about-what .fm-about-what__card{
  opacity: 0;
  transform: translateY(24px);
}

/* visible al entrar */
.js .fm-aboutpage__body .fm-about-what.is-inview .fm-about-what__kicker,
.js .fm-aboutpage__body .fm-about-what.is-inview .fm-about-what__title,
.js .fm-aboutpage__body .fm-about-what.is-inview .fm-about-what__intro,
.js .fm-aboutpage__body .fm-about-what.is-inview .fm-about-what__card{
  opacity: 1;
  transform: translateY(0);
}

/* cascada */
.js .fm-aboutpage__body .fm-about-what.is-inview .fm-about-what__kicker{
  transition-delay: .05s;
}

.js .fm-aboutpage__body .fm-about-what.is-inview .fm-about-what__title{
  transition-delay: .14s;
}

.js .fm-aboutpage__body .fm-about-what.is-inview .fm-about-what__intro{
  transition-delay: .25s;
}

.js .fm-aboutpage__body .fm-about-what.is-inview .fm-about-what__card:nth-child(1){
  transition-delay: .38s;
}

.js .fm-aboutpage__body .fm-about-what.is-inview .fm-about-what__card:nth-child(2){
  transition-delay: .50s;
}

.js .fm-aboutpage__body .fm-about-what.is-inview .fm-about-what__card:nth-child(3){
  transition-delay: .62s;
}

/* accesibilidad */
@media (prefers-reduced-motion: reduce){
  .js .fm-aboutpage__body .fm-about-what .fm-about-what__kicker,
  .js .fm-aboutpage__body .fm-about-what .fm-about-what__title,
  .js .fm-aboutpage__body .fm-about-what .fm-about-what__intro,
  .js .fm-aboutpage__body .fm-about-what .fm-about-what__card{
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }
}

/* =========================================================
   ABOUT / TEAM / reveal on scroll
========================================================= */

/* estado normal: visible */
.fm-aboutpage__body .fm-about-team .fm-about-team__kicker,
.fm-aboutpage__body .fm-about-team .fm-about-team__title,
.fm-aboutpage__body .fm-about-team .fm-about-team__card{
  opacity: 1;
  transform: none;
  transition:
    opacity .7s cubic-bezier(.22,1,.36,1),
    transform .7s cubic-bezier(.22,1,.36,1);
  will-change: transform, opacity;
}

/* solo si hay JS, arrancan ocultos */
.js .fm-aboutpage__body .fm-about-team .fm-about-team__kicker,
.js .fm-aboutpage__body .fm-about-team .fm-about-team__title,
.js .fm-aboutpage__body .fm-about-team .fm-about-team__card{
  opacity: 0;
  transform: translateY(24px);
}

/* visible al entrar */
.js .fm-aboutpage__body .fm-about-team.is-inview .fm-about-team__kicker,
.js .fm-aboutpage__body .fm-about-team.is-inview .fm-about-team__title,
.js .fm-aboutpage__body .fm-about-team.is-inview .fm-about-team__card{
  opacity: 1;
  transform: translateY(0);
}

/* cascada */
.js .fm-aboutpage__body .fm-about-team.is-inview .fm-about-team__kicker{
  transition-delay: .05s;
}

.js .fm-aboutpage__body .fm-about-team.is-inview .fm-about-team__title{
  transition-delay: .16s;
}

.js .fm-aboutpage__body .fm-about-team.is-inview .fm-about-team__card:nth-child(1){
  transition-delay: .30s;
}

.js .fm-aboutpage__body .fm-about-team.is-inview .fm-about-team__card:nth-child(2){
  transition-delay: .42s;
}

.js .fm-aboutpage__body .fm-about-team.is-inview .fm-about-team__card:nth-child(3){
  transition-delay: .54s;
}

.js .fm-aboutpage__body .fm-about-team.is-inview .fm-about-team__card:nth-child(4){
  transition-delay: .66s;
}

/* =========================================================
   ABOUT / VALUES / reveal on scroll
========================================================= */

/* estado normal: visible */
.fm-aboutpage__body .fm-about-values .fm-about-values__kicker,
.fm-aboutpage__body .fm-about-values .fm-about-values__title,
.fm-aboutpage__body .fm-about-values .fm-about-values__card,
.fm-aboutpage__body .fm-about-values .fm-about-values__value{
  opacity: 1;
  transform: none;
  transition:
    opacity .7s cubic-bezier(.22,1,.36,1),
    transform .7s cubic-bezier(.22,1,.36,1);
  will-change: transform, opacity;
}

/* solo si hay JS, arrancan ocultos */
.js .fm-aboutpage__body .fm-about-values .fm-about-values__kicker,
.js .fm-aboutpage__body .fm-about-values .fm-about-values__title,
.js .fm-aboutpage__body .fm-about-values .fm-about-values__card,
.js .fm-aboutpage__body .fm-about-values .fm-about-values__value{
  opacity: 0;
  transform: translateY(24px);
}

/* visible al entrar */
.js .fm-aboutpage__body .fm-about-values.is-inview .fm-about-values__kicker,
.js .fm-aboutpage__body .fm-about-values.is-inview .fm-about-values__title,
.js .fm-aboutpage__body .fm-about-values.is-inview .fm-about-values__card,
.js .fm-aboutpage__body .fm-about-values.is-inview .fm-about-values__value{
  opacity: 1;
  transform: translateY(0);
}

/* cascada */
.js .fm-aboutpage__body .fm-about-values.is-inview .fm-about-values__kicker{
  transition-delay: .05s;
}

.js .fm-aboutpage__body .fm-about-values.is-inview .fm-about-values__title{
  transition-delay: .16s;
}

.js .fm-aboutpage__body .fm-about-values.is-inview .fm-about-values__card:nth-child(1){
  transition-delay: .30s;
}

.js .fm-aboutpage__body .fm-about-values.is-inview .fm-about-values__card:nth-child(2){
  transition-delay: .44s;
}

.js .fm-aboutpage__body .fm-about-values.is-inview .fm-about-values__value{
  transition-delay: .58s;
}

/* accesibilidad */
@media (prefers-reduced-motion: reduce){
  .js .fm-aboutpage__body .fm-about-team .fm-about-team__kicker,
  .js .fm-aboutpage__body .fm-about-team .fm-about-team__title,
  .js .fm-aboutpage__body .fm-about-team .fm-about-team__card,
  .js .fm-aboutpage__body .fm-about-values .fm-about-values__kicker,
  .js .fm-aboutpage__body .fm-about-values .fm-about-values__title,
  .js .fm-aboutpage__body .fm-about-values .fm-about-values__card,
  .js .fm-aboutpage__body .fm-about-values .fm-about-values__value{
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }
}


