:root{
  --azul:#0d3b66;
  --azul-2:#123f73;
  --turquesa:#17b8c5;
  --turquesa-2:#11a7b3;
  --texto:#1f2a37;
  --texto-suave:#5c6b7a;
  --fondo:#f6f9fb;
  --blanco:#ffffff;
  --borde:#d9e5ee;
  --sombra:0 18px 40px rgba(13,59,102,.10);
  --radio:24px;
  --container:1440px;
}

*{
  box-sizing:border-box;
}

html{
  scroll-behavior:smooth;
}

body{
  margin:0;
  font-family:'Inter', sans-serif;
  color:var(--texto);
  background:var(--blanco);
}

img{
  max-width:100%;
  display:block;
}

a{
  text-decoration:none;
  color:inherit;
}

.container{
  width:min(100% - 56px, var(--container));
  margin:0 auto;
}


/* HEADER */

.site-header{
  position:sticky;
  top:0;
  z-index:100;
  background:rgba(255,255,255,.96);
  backdrop-filter:blur(12px);
  border-bottom:1px solid rgba(13,59,102,.08);
}

.header-wrap{
  min-height:78px;
  display:flex;
  align-items:center;
  gap:28px;
}

.brand img{
  width:170px;
  height:auto;
}

.main-nav{
  margin-left:auto;
  display:flex;
  align-items:center;
  gap:30px;
}

.main-nav a{
  font-size:15px;
  font-weight:700;
  color:var(--azul);
  transition:.2s ease;
}

.main-nav a:hover{
  color:var(--turquesa);
}

.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:14px 24px;
  border-radius:999px;
  font-weight:800;
  font-size:15px;
  line-height:1;
  transition:.2s ease;
}

.btn-primary{
  background:var(--azul);
  color:var(--blanco);
  box-shadow:0 14px 28px rgba(13,59,102,.18);
}

.btn-primary:hover{
  background:var(--azul-2);
  transform:translateY(-1px);
}

.btn-secondary{
  border:1px solid rgba(13,59,102,.18);
  color:var(--azul);
  background:var(--blanco);
}

.btn-secondary:hover{
  border-color:var(--turquesa);
  color:var(--turquesa);
}

.site-header .btn.btn-primary{
  padding:14px 28px;
}

.nav-toggle{
  display:none;
  margin-left:auto;
  background:none;
  border:0;
  padding:0;
  cursor:pointer;
}

.nav-toggle span{
  display:block;
  width:28px;
  height:3px;
  background:var(--azul);
  margin:5px 0;
  border-radius:999px;
}


/* HERO */

.hero-home{
  background:
    radial-gradient(circle at top left, rgba(23,184,197,.12), transparent 34%),
    linear-gradient(180deg, #f8fbfd 0%, #ffffff 100%);
  padding:34px 0 64px;
  overflow:hidden;
}

.hero-home-grid{
  display:grid;
  grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);
  gap:44px;
  align-items:start;
}

.hero-home-copy{
  padding-top:18px;
}

.eyebrow{
  display:inline-block;
  margin-bottom:16px;
  color:var(--turquesa);
  font-size:13px;
  font-weight:800;
  letter-spacing:.2em;
  text-transform:uppercase;
}

.hero-home-copy h1{
  margin:0 0 18px;
  font-size:clamp(44px, 4vw, 70px);
  line-height:.98;
  letter-spacing:-.045em;
  color:var(--azul);
  max-width:10.2ch;
}

.hero-home-copy p{
  margin:0;
  max-width:54ch;
  font-size:17px;
  line-height:1.62;
  color:var(--texto-suave);
}

.hero-home-actions{
  margin-top:26px;
  display:flex;
  gap:16px;
  flex-wrap:wrap;
}

.hero-home-actions .btn{
  min-width:220px;
}


/* HERO CARDS */

.hero-home-cards{
  margin-top:30px;
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:18px;
}

.hero-home-card{
  position:relative;
  min-height:220px;
  padding:24px 20px 22px;
  border-radius:24px;
  background:linear-gradient(180deg, #ffffff 0%, #f8fbfd 100%);
  border:1px solid rgba(10,58,109,.10);
  box-shadow:0 16px 32px rgba(11,43,84,.07);
  overflow:hidden;
}

.hero-home-card::before{
  content:"";
  position:absolute;
  left:20px;
  top:18px;
  width:62px;
  height:4px;
  border-radius:999px;
  background:linear-gradient(90deg, var(--turquesa) 0%, var(--azul) 100%);
}

.hero-card-icon{
  width:58px;
  height:58px;
  margin:26px 0 18px;
  display:flex;
  align-items:center;
  justify-content:center;
}

.hero-card-icon img{
  width:58px;
  height:58px;
  object-fit:contain;
}

.hero-home-card h3{
  margin:0 0 10px;
  font-size:clamp(20px, 1.35vw, 26px);
  line-height:1.08;
  letter-spacing:-.03em;
  color:var(--azul);
}

.hero-home-card p{
  margin:0;
  font-size:15px;
  line-height:1.55;
  color:var(--texto-suave);
}


/* HERO COLLAGE + KPIS */

.hero-home-media{
  position:relative;
  margin-top:22px;
}

.hero-home-media > img{
  width:100%;
  height:auto;
  border-radius:32px 32px 0 0;
  box-shadow:0 20px 42px rgba(11,43,84,.12);
}

.hero-kpis{
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  background:linear-gradient(90deg, #073765 0%, #0d4b84 100%);
  border-radius:0 0 30px 30px;
  overflow:hidden;
  box-shadow:0 18px 34px rgba(11,43,84,.14);
}

.hero-kpi{
  min-height:96px;
  display:flex;
  align-items:center;
  gap:18px;
  padding:18px 34px;
  color:#ffffff;
}

.hero-kpi + .hero-kpi{
  border-left:1px solid rgba(255,255,255,.28);
}

.hero-kpi-icon{
  width:58px;
  height:58px;
  flex:0 0 58px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:#ffffff;
}

.hero-kpi-icon img{
  width:34px;
  height:34px;
  object-fit:contain;
  box-shadow:none;
  border-radius:0;
}

.hero-kpi strong{
  display:block;
  font-size:clamp(24px, 2vw, 34px);
  line-height:1;
  font-weight:800;
  letter-spacing:-.04em;
  color:#ffffff;
}

.hero-kpi span{
  display:block;
  margin-top:5px;
  font-size:clamp(14px, 1vw, 17px);
  line-height:1.25;
  color:rgba(255,255,255,.9);
}


/* SECCIONES GENERALES */

.section{
  padding:84px 0;
}

.section-heading{
  max-width:840px;
  margin:0 auto 44px;
}

.section-heading.center{
  text-align:center;
}

.section-heading h2,
.about-copy h2,
.operation-copy h2,
.team-copy h2,
.contact-copy h2{
  margin:0 0 16px;
  font-size:40px;
  line-height:1.15;
  color:var(--azul);
}

.section-heading p,
.about-copy p,
.operation-copy p,
.team-copy p,
.contact-copy p{
  margin:0;
  font-size:17px;
  line-height:1.75;
  color:var(--texto-suave);
}


/* SOBRE NOSOTROS */

.about-grid{
  display:grid;
  grid-template-columns:.95fr 1.05fr;
  gap:46px;
  align-items:center;
}

.about-copy p + p{
  margin-top:14px;
}

.about-mosaic{
  display:grid;
  grid-template-columns:1.35fr .85fr;
  gap:18px;
}

.photo-card{
  overflow:hidden;
  border-radius:28px;
  background:var(--fondo);
  box-shadow:var(--sombra);
}

.photo-card img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.photo-card.large,
.photo-card.small{
  min-height:420px;
}


/* SERVICIOS */

.cards{
  display:grid;
  gap:22px;
}

.cards-3{
  grid-template-columns:repeat(3, minmax(0,1fr));
}

.service-card{
  padding:28px 24px;
  border-radius:24px;
  background:var(--blanco);
  border:1px solid rgba(13,59,102,.08);
  box-shadow:0 16px 36px rgba(13,59,102,.08);
  text-align:center;
}

.icon-circle{
  width:74px;
  height:74px;
  margin:0 auto 18px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:rgba(23,184,197,.10);
  color:var(--turquesa);
}

.icon-circle svg{
  width:32px;
  height:32px;
}

.service-card h3{
  margin:0 0 12px;
  font-size:22px;
  line-height:1.25;
  color:var(--azul);
}

.service-card p{
  margin:0;
  font-size:15px;
  line-height:1.7;
  color:var(--texto-suave);
}


/* INSTALACIONES */

.operation-grid{
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:46px;
  align-items:center;
}

.media-grid{
  display:grid;
  grid-template-columns:1.1fr 1fr 1fr;
  grid-template-rows:240px 240px;
  gap:16px;
}

.media-grid .tall{
  grid-row:1 / span 2;
}


/* HIGHLIGHTS */

.highlight-band{
  padding:34px 0;
  background:linear-gradient(180deg, #eef7fa 0%, #f8fbfd 100%);
  border-top:1px solid rgba(13,59,102,.05);
  border-bottom:1px solid rgba(13,59,102,.05);
}

.highlights{
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:18px;
}

.highlight-item{
  padding:26px 24px;
  border-radius:22px;
  background:rgba(255,255,255,.8);
  border:1px solid rgba(13,59,102,.06);
}

.highlight-item h3{
  margin:0 0 10px;
  font-size:22px;
  color:var(--azul);
}

.highlight-item p{
  margin:0;
  font-size:15px;
  line-height:1.7;
  color:var(--texto-suave);
}


/* EQUIPO */

.team-grid{
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:42px;
  align-items:center;
}

.team-media img{
  width:100%;
  min-height:420px;
  object-fit:cover;
  border-radius:30px;
  box-shadow:var(--sombra);
}


/* CONTACTO */

.contact-section{
  background:linear-gradient(180deg, #ffffff 0%, #f7fafc 100%);
}

.contact-grid{
  display:grid;
  grid-template-columns:.95fr 1.05fr;
  gap:34px;
  align-items:start;
}

.contact-card{
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:16px;
}

.contact-item{
  padding:26px 22px;
  background:var(--blanco);
  border:1px solid rgba(13,59,102,.08);
  border-radius:24px;
  box-shadow:0 16px 36px rgba(13,59,102,.06);
}

.contact-item strong{
  display:block;
  margin-bottom:8px;
  font-size:16px;
  color:var(--azul);
}

.contact-item span{
  font-size:15px;
  color:var(--texto-suave);
}


/* FOOTER */

.site-footer{
  padding:34px 0;
  background:var(--azul);
  color:var(--blanco);
}

.footer-wrap{
  display:flex;
  justify-content:space-between;
  gap:24px;
  align-items:center;
}

.footer-brand img{
  width:170px;
  margin-bottom:10px;
}

.footer-brand p{
  margin:0;
  max-width:420px;
  color:rgba(255,255,255,.78);
  font-size:14px;
  line-height:1.7;
}

.footer-links{
  display:flex;
  flex-wrap:wrap;
  gap:18px;
}

.footer-links a{
  font-size:14px;
  font-weight:600;
  color:rgba(255,255,255,.86);
}

.footer-links a:hover{
  color:#8ef0f7;
}


/* RESPONSIVE */

@media (max-width: 1280px){
  .container{
    width:min(100% - 44px, var(--container));
  }

  .hero-home-grid{
    grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);
    gap:34px;
  }

  .hero-home-copy h1{
    font-size:clamp(42px, 4.2vw, 62px);
  }

  .hero-home-card{
    min-height:210px;
  }

  .hero-kpi{
    padding:17px 26px;
  }
}

@media (max-width: 1100px){
  .hero-home-grid,
  .about-grid,
  .operation-grid,
  .team-grid,
  .contact-grid{
    grid-template-columns:1fr;
  }

  .hero-home-media{
    margin-top:8px;
  }

  .hero-home-copy h1{
    max-width:12ch;
  }

  .cards-3,
  .highlights,
  .contact-card{
    grid-template-columns:1fr;
  }

  .media-grid{
    grid-template-columns:1fr 1fr;
    grid-template-rows:auto;
  }

  .media-grid .tall{
    grid-row:auto;
    min-height:300px;
  }
}

@media (max-width: 900px){
  .main-nav,
  .header-wrap > .btn{
    display:none;
  }

  .nav-toggle{
    display:block;
  }

  .main-nav.show{
    display:flex;
    position:absolute;
    top:78px;
    left:20px;
    right:20px;
    padding:20px;
    border-radius:22px;
    background:var(--blanco);
    box-shadow:var(--sombra);
    flex-direction:column;
    align-items:flex-start;
    gap:14px;
  }

  .hero-home{
    padding:42px 0 52px;
  }

  .hero-home-cards{
    grid-template-columns:1fr;
  }

  .hero-home-card{
    min-height:auto;
  }

  .hero-kpis{
    grid-template-columns:1fr;
  }

  .hero-kpi + .hero-kpi{
    border-left:0;
    border-top:1px solid rgba(255,255,255,.28);
  }

  .section-heading h2,
  .about-copy h2,
  .operation-copy h2,
  .team-copy h2,
  .contact-copy h2{
    font-size:32px;
  }

  .about-mosaic{
    grid-template-columns:1fr;
  }

  .photo-card.large,
  .photo-card.small,
  .team-media img{
    min-height:320px;
  }
}

@media (max-width: 640px){
  .container{
    width:min(100% - 28px, var(--container));
  }

  .header-wrap{
    min-height:72px;
  }

  .brand img{
    width:145px;
  }

  .hero-home-copy h1{
    font-size:38px;
    max-width:none;
  }

  .hero-home-copy p,
  .section-heading p,

  .about-copy p,
  .operation-copy p,
  .team-copy p,
  .contact-copy p{
    font-size:16px;
  }

  .hero-home-actions{
    flex-direction:column;
    align-items:stretch;
  }

  .hero-home-actions .btn,
  .btn{
    width:100%;
    min-width:0;
  }

  .hero-kpi{
    padding:16px 18px;
  }

  .hero-kpi strong{
    font-size:24px;
  }

  .section{
    padding:68px 0;
  }

  .media-grid{
    grid-template-columns:1fr;
  }

  .footer-wrap{
    flex-direction:column;
    align-items:flex-start;
  }
}
/* AJUSTE 01 - Header compacto y menor aire superior */

.site-header{
  background:rgba(255,255,255,.98);
}

.header-wrap{
  min-height:60px;
}

.brand img{
  width:140px;
}

.main-nav{
  gap:24px;
}

.main-nav a{
  font-size:14px;
}

.site-header .btn.btn-primary{
  padding:12px 22px;
  font-size:14px;
}

.hero-home{
  padding-top:16px;
}
/* AJUSTE 02 - Cards e indicadores KPI con estilo tipo presentación */

/* CARDS DEL HERO */
.hero-home-card{
  text-align:center;
  padding:24px 20px 24px;
  min-height:230px;
  border-radius:22px;
  background:linear-gradient(180deg, #ffffff 0%, #f8fbfd 100%);
  border:1px solid rgba(13,59,102,.10);
  box-shadow:0 16px 32px rgba(13,59,102,.08);
}

.hero-home-card::before{
  left:50%;
  top:18px;
  transform:translateX(-50%);
  width:66px;
  height:4px;
}

.hero-card-icon{
  width:82px;
  height:82px;
  margin:34px auto 16px;
  display:flex;
  align-items:center;
  justify-content:center;
}

.hero-card-icon img{
  width:82px;
  height:82px;
  object-fit:contain;
}

.hero-home-card h3{
  margin:0 0 10px;
  font-size:22px;
  line-height:1.12;
  letter-spacing:-.02em;
  color:var(--azul);
  max-width:none;
}

.hero-home-card p{
  margin:0 auto;
  max-width:22ch;
  font-size:15px;
  line-height:1.5;
  color:var(--texto-suave);
}


/* KPIS AZULES */
.hero-kpis{
  background:linear-gradient(90deg, #073765 0%, #0b477d 100%);
  border-radius:0 0 30px 30px;
  box-shadow:0 20px 36px rgba(11,43,84,.16);
}

.hero-kpi{
  min-height:104px;
  gap:22px;
  padding:20px 34px;
  align-items:center;
}

.hero-kpi + .hero-kpi{
  border-left:1px solid rgba(255,255,255,.34);
}

.hero-kpi-icon{
  width:72px;
  height:72px;
  flex:0 0 72px;
  border-radius:50%;
  background:var(--turquesa);
  display:grid;
  place-items:center;
}

.hero-kpi-icon img{
  width:44px;
  height:44px;
  object-fit:contain;
  box-shadow:none;
  border-radius:0;
}

.hero-kpi strong{
  font-size:34px;
  line-height:.95;
  font-weight:800;
  letter-spacing:-.04em;
  color:#ffffff;
}

.hero-kpi span{
  margin-top:5px;
  font-size:17px;
  line-height:1.25;
  color:rgba(255,255,255,.9);
}
/* AJUSTE 03 - KPIs tipo PowerPoint, horizontales y compactos */

.hero-kpis{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  align-items:center;
  background:linear-gradient(90deg, #073765 0%, #0a3f73 55%, #002b58 100%);
  border-radius:0 0 18px 18px;
  overflow:hidden;
  box-shadow:0 16px 30px rgba(11,43,84,.14);
}

.hero-kpi{
  min-height:68px;
  display:flex;
  align-items:center;
  gap:18px;
  padding:10px 30px;
  color:#ffffff;
}

.hero-kpi + .hero-kpi{
  border-left:1px solid rgba(255,255,255,.45);
}

.hero-kpi-icon{
  width:60px;
  height:60px;
  flex:0 0 60px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:var(--turquesa);
}

.hero-kpi-icon img{
  width:32px;
  height:32px;
  object-fit:contain;
  box-shadow:none;
  border-radius:0;
  filter:brightness(0) invert(1);
  opacity:1;
}

.hero-kpi strong{
  display:inline;
  font-size:26px;
  line-height:1;
  font-weight:800;
  letter-spacing:-.035em;
  color:#ffffff;
  white-space:nowrap;
}

.hero-kpi span{
  display:block;
  margin-top:2px;
  font-size:15px;
  line-height:1.18;
  color:rgba(255,255,255,.92);
}

.hero-kpi:first-child > div:last-child{
  display:block;
}

.hero-kpi:first-child strong{
  display:inline;
}

.hero-kpi:first-child span{
  display:block;
}

.hero-kpi:nth-child(2) strong{
  font-size:21px;
  letter-spacing:-.02em;
}

.hero-kpi:nth-child(2) span{
  font-size:14px;
  white-space:nowrap;
}
/* AJUSTE 04 - Aumentar solo icono blanco de KPIs */

.hero-kpi-icon{
  overflow:hidden;
}

.hero-kpi-icon img{
  width:55px;
  height:55px;
  object-fit:contain;
  box-shadow:none;
  border-radius:0;
  filter:brightness(0) invert(1);
  opacity:1;
}
/* AJUSTE 05 - Ordenar textos de cards y KPIs */

/* TEXTOS DE CARDS */
.hero-home-card h3{
  font-size:21px;
  line-height:1.08;
  max-width:12ch;
  margin-left:auto;
  margin-right:auto;
  text-align:center;
}

.hero-home-card p{
  font-size:15px;
  line-height:1.45;
  max-width:20ch;
  margin-left:auto;
  margin-right:auto;
  text-align:center;
}


/* TEXTOS DE KPIS */
.hero-kpi{
  gap:16px;
  padding-left:26px;
  padding-right:26px;
  min-width:0;
}

.hero-kpi > div:last-child{
  min-width:0;
  max-width:100%;
}

.hero-kpi strong{
  display:block;
  font-size:30px;
  line-height:1;
  white-space:normal;
}

.hero-kpi span{
  display:block;
  font-size:15px;
  line-height:1.18;
  white-space:normal;
}

.hero-kpi:nth-child(2) strong{
  font-size:28px;
  line-height:1;
  white-space:normal;
}

.hero-kpi:nth-child(2) span{
  font-size:14px;
  line-height:1.2;
  white-space:normal;
}
/* AJUSTE 06 - Pulido final cards y KPIs */

/* Cards: mejor acomodo visual */
.hero-home-card{
  padding:24px 18px 24px;
}

.hero-card-icon{
  margin-bottom:18px;
}

.hero-home-card h3{
  font-size:20px;
  line-height:1.1;
  max-width:13ch;
  margin-bottom:12px;
}

.hero-home-card p{
  font-size:14.5px;
  line-height:1.48;
  max-width:19ch;
}

/* Ajuste especial para que la segunda card no se vea tan apretada */
.hero-home-card:nth-child(2) h3{
  font-size:19px;
  max-width:14ch;
}

/* KPIs: más parecidos a barra ejecutiva */
.hero-kpi{
  min-height:86px;
  padding:14px 34px;
  gap:18px;
}

.hero-kpi strong{
  font-size:28px;
}

.hero-kpi span{
  font-size:14.5px;
}

.hero-kpi:nth-child(2) strong{
  font-size:27px;
  line-height:1;
  max-width:9ch;
}

.hero-kpi:nth-child(2) span{
  font-size:14px;
  max-width:18ch;
}
/* AJUSTE 07 - Corrección fuerte de card 2 y KPI Cadena de frío */

/* CARD 2: Almacenamiento y cadena de frío */
.hero-home-card:nth-child(2){
  padding-left:14px;
  padding-right:14px;
}

.hero-home-card:nth-child(2) h3{
  font-size:18px;
  line-height:1.08;
  max-width:15ch;
  margin-left:auto;
  margin-right:auto;
  margin-bottom:14px;
  letter-spacing:-.025em;
}

.hero-home-card:nth-child(2) p{
  font-size:14px;
  line-height:1.42;
  max-width:20ch;
}


/* KPI 2: Cadena de frío */
.hero-kpi:nth-child(2){
  gap:14px;
  padding-left:24px;
  padding-right:24px;
}

.hero-kpi:nth-child(2) .hero-kpi-icon{
  width:58px;
  height:58px;
  flex:0 0 58px;
}

.hero-kpi:nth-child(2) .hero-kpi-icon img{
  width:42px;
  height:42px;
}

.hero-kpi:nth-child(2) strong{
  font-size:24px;
  line-height:1.02;
  max-width:none;
  white-space:nowrap;
  letter-spacing:-.025em;
}

.hero-kpi:nth-child(2) span{
  font-size:14px;
  line-height:1.18;
  max-width:22ch;
  white-space:normal;
}
/* AJUSTE 08 - Pulido final aire superior cards */

.hero-card-icon{
  margin-top:22px;
  margin-bottom:16px;
}

.hero-home-card{
  padding-top:20px;
}
/* AJUSTE 09 - Cards institucionales Sobre Nosotros */

.about-values{
  margin-top:42px;
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:18px;
}

.about-value-card{
  position:relative;
  padding:24px 22px 24px;
  border-radius:22px;
  background:linear-gradient(180deg, #ffffff 0%, #f8fbfd 100%);
  border:1px solid rgba(13,59,102,.10);
  box-shadow:0 16px 32px rgba(13,59,102,.07);
  overflow:hidden;
}

.about-value-card::before{
  content:"";
  position:absolute;
  left:22px;
  top:18px;
  width:56px;
  height:4px;
  border-radius:999px;
  background:linear-gradient(90deg, var(--turquesa) 0%, var(--azul) 100%);
}

.about-value-card span{
  display:block;
  margin-top:18px;
  margin-bottom:10px;
  font-size:18px;
  line-height:1.1;
  font-weight:800;
  letter-spacing:-.02em;
  color:var(--azul);
}

.about-value-card p{
  margin:0;
  font-size:14.5px;
  line-height:1.55;
  color:var(--texto-suave);
}

@media (max-width: 1100px){
  .about-values{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px){
  .about-values{
    grid-template-columns:1fr;
  }
}
/* AJUSTE 10 - Collage premium Sobre Nosotros */

.about-mosaic-premium{
  display:block;
  border-radius:30px;
  overflow:hidden;
  background:#ffffff;
  box-shadow:0 22px 46px rgba(11,43,84,.13);
  align-self:center;
}

.about-mosaic-premium img{
  display:block;
  width:100%;
  height:auto;
  border-radius:30px;
}

.about-grid{
  align-items:center;
}
/* AJUSTE 10 - Pulido Sobre Nosotros: menos aire y mejor integración */

/* Compactar la sección Sobre Nosotros */
.about{
  padding-top:54px;
  padding-bottom:56px;
}

/* Subir un poco el bloque de texto e imagen */
.about-grid{
  align-items:center;
  gap:34px;
}

/* Hacer que el collage respire mejor sin hacerlo más chico de golpe */
.about-mosaic-premium{
  max-width:760px;
  margin-left:auto;
}

/* Reducir espacio entre collage/texto y cards institucionales */
.about-values{
  margin-top:20px;
}

/* Cards institucionales más integradas */
.about-value-card{
  padding:22px 22px 22px;
  min-height:190px;
}

.about-value-card span{
  margin-top:16px;
  margin-bottom:9px;
}

.about-value-card p{
  line-height:1.5;
}

/* Acercar Servicios a Sobre Nosotros sin pegarlo demasiado */
.services{
  padding-top:10px;
}
/* AJUSTE 11 - Iconos cards institucionales Sobre Nosotros */

.about-value-card{
  text-align:left;
}

.about-value-icon{
  width:58px;
  height:58px;
  margin-top:20px;
  margin-bottom:16px;
  display:flex;
  align-items:center;
  justify-content:flex-start;
}

.about-value-icon img{
  display:block;
  width:58px;
  height:58px;
  object-fit:contain;
}

.about-value-card span{
  margin-top:0;
}
/* AJUSTE 12 - Cards institucionales estilo Inicio */

/* Cards Sobre Nosotros: más parecidas a las cards del Hero */
.about-value-card{
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  text-align:center;
  padding:26px 24px 26px;
}

/* Barra superior centrada como en las cards de Inicio */
.about-value-card::before{
  left:50%;
  transform:translateX(-50%);
  top:26px;
  width:64px;
}

/* Iconos más grandes y con mejor presencia */
.about-value-icon{
  width:86px;
  height:86px;
  margin:52px auto 22px;
  display:flex;
  align-items:center;
  justify-content:center;
}

/* Imagen del icono */
.about-value-icon img{
  display:block;
  width:86px;
  height:86px;
  object-fit:contain;
}

/* Títulos centrados y con jerarquía similar a Inicio */
.about-value-card span{
  margin:0 0 12px;
  font-size:22px;
  line-height:1.08;
  font-weight:800;
  letter-spacing:-.025em;
  color:var(--azul);
  text-align:center;
}

/* Texto más equilibrado */
.about-value-card p{
  margin:0 auto;
  max-width:25ch;
  font-size:15px;
  line-height:1.48;
  text-align:center;
  color:var(--texto-suave);
}
/* AJUSTE 13 - Reducir aire superior en cards institucionales */

.about-value-card{
  padding-top:22px;
}

/* Subir iconos: menos aire entre barra superior e icono */
.about-value-icon{
  margin-top:34px;
  margin-bottom:20px;
}

/* Barra un poco más cerca del contenido */
.about-value-card::before{
  top:22px;
}

/* Ajuste fino para que el título no baje demasiado */
.about-value-card span{
  margin-bottom:10px;
}
.about-value-icon{
  width:96px;
  height:96px;
  margin-top:32px;
  margin-bottom:14px;
}

.about-value-icon img{
  width:96px;
  height:96px;
}

.about-value-card span{
  margin-bottom:10px;
}
/* AJUSTE 14 - Capacidades operativas en 4 cards */

.cards-4{
  grid-template-columns:repeat(4, minmax(0, 1fr));
}

.operational-cards{
  gap:18px;
}

.operational-cards .service-card{
  min-height:300px;
  padding:30px 22px 28px;
  border-radius:24px;
  background:linear-gradient(180deg, #ffffff 0%, #f8fbfd 100%);
  border:1px solid rgba(13,59,102,.10);
  box-shadow:0 16px 32px rgba(13,59,102,.07);
}

.operational-cards .icon-circle{
  width:86px;
  height:86px;
  margin:0 auto 22px;
  background:transparent;
}

.operational-cards .icon-circle img{
  width:86px;
  height:86px;
  object-fit:contain;
}

.operational-cards .service-card h3{
  margin:0 auto 12px;
  max-width:13ch;
  font-size:21px;
  line-height:1.1;
  letter-spacing:-.025em;
}

.operational-cards .service-card p{
  margin:0 auto;
  max-width:23ch;
  font-size:14.5px;
  line-height:1.5;
}

@media (max-width: 1100px){
  .cards-4{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px){
  .cards-4{
    grid-template-columns:1fr;
  }
}
/* AJUSTE 15 - Instalaciones y operación premium */

.operation{
  padding-top:74px;
  padding-bottom:78px;
  background:
    radial-gradient(circle at top right, rgba(23,184,197,.08), transparent 30%),
    linear-gradient(180deg, #ffffff 0%, #f8fbfd 100%);
}

.operation-grid-premium{
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
  gap:52px;
  align-items:center;
}

.operation-copy h2{
  margin:14px 0 20px;
  max-width:11ch;
  font-size:clamp(42px, 3.6vw, 62px);
  line-height:1;
  letter-spacing:-.045em;
  color:var(--azul);
}

.operation-copy > p{
  margin:0;
  max-width:55ch;
  font-size:17px;
  line-height:1.65;
  color:var(--texto-suave);
}

.operation-highlights{
  margin-top:30px;
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:14px;
}

.operation-highlights article{
  display:flex;
  gap:14px;
  align-items:flex-start;
  padding:18px 16px;
  border-radius:20px;
  background:#ffffff;
  border:1px solid rgba(13,59,102,.10);
  box-shadow:0 14px 28px rgba(13,59,102,.06);
}

.operation-highlights img{
  flex:0 0 auto;
  width:42px;
  height:42px;
  object-fit:contain;
}

.operation-highlights h3{
  margin:0 0 6px;
  font-size:16px;
  line-height:1.15;
  color:var(--azul);
  letter-spacing:-.02em;
}

.operation-highlights p{
  margin:0;
  font-size:13.5px;
  line-height:1.45;
  color:var(--texto-suave);
}

.operation-media-premium{
  position:relative;
}

.operation-showcase{
  display:grid;
  grid-template-columns:1.25fr .85fr;
  grid-template-rows:220px 170px 170px;
  gap:8px;
  padding:8px;
  border-radius:30px;
  background:#ffffff;
  box-shadow:0 24px 48px rgba(11,43,84,.14);
  overflow:hidden;
}

.operation-photo{
  overflow:hidden;
  border-radius:20px;
  background:#eef5f8;
}

.operation-photo img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}

.operation-photo-main{
  grid-row:span 2;
}

.operation-photo:nth-child(4){
  grid-column:1 / 2;
}

.operation-photo:nth-child(5){
  grid-column:2 / 3;
}

@media (max-width: 1100px){
  .operation-grid-premium{
    grid-template-columns:1fr;
    gap:34px;
  }

  .operation-copy h2{
    max-width:12ch;
  }
}

@media (max-width: 760px){
  .operation-highlights{
    grid-template-columns:1fr;
  }

  .operation-showcase{
    grid-template-columns:1fr;
    grid-template-rows:auto;
  }

  .operation-photo,
  .operation-photo-main,
  .operation-photo:nth-child(4),
  .operation-photo:nth-child(5){
    grid-column:auto;
    grid-row:auto;
    min-height:220px;
  }
}
/* AJUSTE 16 - Collage final Instalaciones desde PowerPoint */

.operation-collage-final{
  border-radius:30px;
  overflow:hidden;
  background:#ffffff;
  box-shadow:0 24px 48px rgba(11,43,84,.14);
}

.operation-collage-final img{
  display:block;
  width:100%;
  height:auto;
  border-radius:30px;
}

/* AJUSTE 17 - Reducir aire entre Capacidades e Instalaciones */

.services{
  padding-bottom:46px;
}

.operation{
  padding-top:42px;
}

.operation-grid-premium{
  align-items:center;
}
/* AJUSTE 18 - Cierre fuerte entre Capacidades e Instalaciones + collage más grande */

.services{
  padding-bottom:18px !important;
}

.services + .operation{
  margin-top:-96px !important;
  padding-top:20px !important;
}

.operation{
  padding-bottom:58px !important;
}

.operation-grid-premium{
  grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr) !important;
  gap:30px !important;
  align-items:center !important;
}

.operation-collage-final{
  max-width:none !important;
  width:112% !important;
  margin-left:-28px !important;
  border-radius:30px !important;
  box-shadow:0 28px 56px rgba(11,43,84,.16) !important;
}

.operation-collage-final img{
  width:100% !important;
  max-width:none !important;
  height:auto !important;
  display:block !important;
}

.services{
  padding-bottom:34px !important;
}

/* Ya no jalamos TODA la sección hacia arriba */
.services + .operation{
  margin-top:0 !important;
  padding-top:70px !important;
}

.operation{
  padding-bottom:64px !important;
  overflow:visible !important;
}

.operation-grid-premium{
  grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr) !important;
  gap:30px !important;
  align-items:start !important;
}

/* El texto respira y no se pega a la sección anterior */
.operation-copy{
  padding-top:18px !important;
}

/* Solo el collage sube para ocupar el hueco visual */
.operation-media-premium{
  margin-top:-92px !important;
  align-self:start !important;
}

.operation-collage-final{
  max-width:none !important;
  width:118% !important;
  margin-left:-36px !important;
  border-radius:30px !important;
  box-shadow:0 28px 56px rgba(11,43,84,.16) !important;
}

.operation-collage-final img{
  width:100% !important;
  max-width:none !important;
  height:auto !important;
  display:block !important;
}

/* AJUSTE 19 - Instalaciones: aire controlado, collage protagonista y cards en fila */

.services{
  padding-bottom:42px !important;
}

.services + .operation{
  margin-top:0 !important;
  padding-top:58px !important;
}

.operation{
  padding-bottom:70px !important;
  overflow:visible !important;
}

.operation-grid-premium{
  grid-template-columns:minmax(0,.76fr) minmax(0,1.24fr) !important;
  gap:34px !important;
  align-items:start !important;
}

.operation-copy{
  padding-top:32px !important;
}

.operation-media-premium{
  margin-top:-44px !important;
  align-self:start !important;
}

.operation-collage-final{
  max-width:none !important;
  width:116% !important;
  margin-left:-30px !important;
  border-radius:30px !important;
  box-shadow:0 28px 56px rgba(11,43,84,.16) !important;
}

.operation-collage-final img{
  width:100% !important;
  max-width:none !important;
  height:auto !important;
  display:block !important;
}

.operation-highlights{
  margin-top:28px !important;
  display:grid !important;
  grid-template-columns:repeat(4, minmax(0, 1fr)) !important;
  gap:12px !important;
}

.operation-highlights article{
  display:block !important;
  min-height:210px !important;
  padding:20px 16px 18px !important;
  text-align:center !important;
  border-radius:22px !important;
}

.operation-highlights img{
  display:block !important;
  width:44px !important;
  height:44px !important;
  margin:0 auto 14px !important;
  object-fit:contain !important;
}

.operation-highlights h3{
  margin:0 auto 8px !important;
  max-width:13ch !important;
  font-size:16px !important;
  line-height:1.12 !important;
  text-align:center !important;
}

.operation-highlights p{
  margin:0 auto !important;
  max-width:20ch !important;
  font-size:13px !important;
  line-height:1.42 !important;
  text-align:center !important;
}

@media (max-width: 1200px){
  .operation-highlights{
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
  }

  .operation-collage-final{
    width:108% !important;
    margin-left:-18px !important;
  }
}

@media (max-width: 900px){
  .operation-grid-premium{
    grid-template-columns:1fr !important;
  }

  .operation-copy{
    padding-top:0 !important;
  }

  .operation-media-premium{
    margin-top:0 !important;
  }

  .operation-collage-final{
    width:100% !important;
    margin-left:0 !important;
  }
}

@media (max-width: 640px){
  .operation-highlights{
    grid-template-columns:1fr !important;
  }
}

/* AJUSTE 20 - Instalaciones final con collage y 4 cards grandes */

.operation{
  padding-top:64px !important;
  padding-bottom:78px !important;
  overflow:visible !important;
  background:
    radial-gradient(circle at top right, rgba(23,184,197,.08), transparent 32%),
    linear-gradient(180deg, #ffffff 0%, #f8fbfd 100%) !important;
}

.operation-layout-final{
  display:grid !important;
  grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr) !important;
  column-gap:42px !important;
  row-gap:34px !important;
  align-items:start !important;
}

.operation-layout-final .operation-copy{
  padding-top:34px !important;
}

.operation-layout-final .operation-copy h2{
  margin:14px 0 20px !important;
  max-width:11ch !important;
  font-size:clamp(42px, 3.6vw, 62px) !important;
  line-height:1 !important;
  letter-spacing:-.045em !important;
  color:var(--azul) !important;
}

.operation-layout-final .operation-copy > p{
  margin:0 !important;
  max-width:55ch !important;
  font-size:17px !important;
  line-height:1.65 !important;
  color:var(--texto-suave) !important;
}

.operation-media-final{
  margin-top:0 !important;
  align-self:start !important;
}

.operation-collage-final{
  width:108% !important;
  margin-left:-18px !important;
  border-radius:30px !important;
  overflow:hidden !important;
  background:#ffffff !important;
  box-shadow:0 28px 56px rgba(11,43,84,.16) !important;
}

.operation-collage-final img{
  display:block !important;
  width:100% !important;
  height:auto !important;
  max-width:none !important;
}

.operation-cards-final{
  grid-column:1 / -1 !important;
  display:grid !important;
  grid-template-columns:repeat(4, minmax(0, 1fr)) !important;
  gap:22px !important;
  margin-top:8px !important;
}

.operation-card-final{
  min-height:295px !important;
  padding:30px 24px 28px !important;
  border:1px solid rgba(13,59,102,.10) !important;
  border-radius:28px !important;
  background:#ffffff !important;
  box-shadow:0 20px 42px rgba(11,43,84,.08) !important;
  text-align:center !important;
}

.operation-card-final .card-line{
  display:block !important;
  width:74px !important;
  height:5px !important;
  margin:0 auto 34px !important;
  border-radius:999px !important;
  background:linear-gradient(90deg, var(--turquesa), var(--azul)) !important;
}

.operation-card-final img{
  display:block !important;
  width:74px !important;
  height:74px !important;
  margin:0 auto 24px !important;
  object-fit:contain !important;
}

.operation-card-final h3{
  margin:0 auto 14px !important;
  max-width:13ch !important;
  font-size:23px !important;
  line-height:1.08 !important;
  letter-spacing:-.025em !important;
  color:var(--azul) !important;
}

.operation-card-final p{
  margin:0 auto !important;
  max-width:24ch !important;
  font-size:16px !important;
  line-height:1.5 !important;
  color:var(--texto-suave) !important;
}

@media (max-width: 1200px){
  .operation-layout-final{
    grid-template-columns:1fr !important;
  }

  .operation-collage-final{
    width:100% !important;
    margin-left:0 !important;
  }

  .operation-cards-final{
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 700px){
  .operation-cards-final{
    grid-template-columns:1fr !important;
  }

  .operation-card-final{
    min-height:auto !important;
  }
}

/* AJUSTE 21 - Pulida final cards Instalaciones */

.operation-card-final{
  min-height:270px !important;
  padding:24px 24px 26px !important;
}

.operation-card-final .card-line{
  margin:0 auto 24px !important;
}

.operation-card-final img{
  width:84px !important;
  height:84px !important;
  margin:0 auto 20px !important;
}

.operation-card-final h3{
  margin:0 auto 14px !important;
}

.operation-card-final p{
  max-width:25ch !important;
}

/* AJUSTE 22 - Franja premium Resguardo / Trazabilidad / Seguimiento */

.highlight-band-premium{
  padding:64px 0 72px !important;
  background:
    radial-gradient(circle at top right, rgba(23,184,197,.08), transparent 34%),
    linear-gradient(180deg, #f6fbfd 0%, #ffffff 100%) !important;
}

.highlights-premium{
  display:grid !important;
  grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
  gap:24px !important;
}

.highlight-item-premium{
  position:relative !important;
  display:flex !important;
  align-items:flex-start !important;
  gap:18px !important;
  padding:30px 30px 28px !important;
  border:1px solid rgba(13,59,102,.10) !important;
  border-radius:28px !important;
  background:#ffffff !important;
  box-shadow:0 20px 42px rgba(11,43,84,.08) !important;
}

.highlight-item-premium::before{
  content:"" !important;
  position:absolute !important;
  top:22px !important;
  left:30px !important;
  width:74px !important;
  height:5px !important;
  border-radius:999px !important;
  background:linear-gradient(90deg, var(--turquesa), var(--azul)) !important;
}

.highlight-item-premium img{
  width:62px !important;
  height:62px !important;
  margin-top:30px !important;
  object-fit:contain !important;
  flex:0 0 auto !important;
}

.highlight-item-premium div{
  padding-top:28px !important;
}

.highlight-item-premium h3{
  margin:0 0 10px !important;
  font-size:25px !important;
  line-height:1.1 !important;
  letter-spacing:-.025em !important;
  color:var(--azul) !important;
}

.highlight-item-premium p{
  margin:0 !important;
  font-size:16px !important;
  line-height:1.55 !important;
  color:var(--texto-suave) !important;
}

@media (max-width: 1000px){
  .highlights-premium{
    grid-template-columns:1fr !important;
  }
}

/* AJUSTE 23 - Dar más presencia a cards Resguardo / Trazabilidad / Seguimiento */

.highlight-item-premium{
  align-items:center !important;
  gap:26px !important;
  padding:36px 34px !important;
  min-height:230px !important;
}

.highlight-item-premium::before{
  width:88px !important;
  height:6px !important;
  top:28px !important;
  left:34px !important;
}

.highlight-item-premium img{
  width:92px !important;
  height:92px !important;
  margin-top:18px !important;
}

.highlight-item-premium div{
  padding-top:22px !important;
}

.highlight-item-premium h3{
  font-size:30px !important;
  margin-bottom:14px !important;
}

.highlight-item-premium p{
  font-size:18px !important;
  line-height:1.55 !important;
  max-width:31ch !important;
}
/* AJUSTE 24 - Cards Resguardo / Trazabilidad / Seguimiento más compactas */

.highlight-item-premium{
  min-height:205px !important;
  padding:28px 30px !important;
  gap:28px !important;
}

.highlight-item-premium::before{
  top:24px !important;
  left:30px !important;
  width:86px !important;
  height:6px !important;
}

.highlight-item-premium img{
  width:114px !important;
  height:114px !important;
  margin-top:22px !important;
}

.highlight-item-premium div{
  padding-top:18px !important;
}

.highlight-item-premium h3{
  font-size:28px !important;
  margin-bottom:10px !important;
}

.highlight-item-premium p{
  font-size:16px !important;
  line-height:1.45 !important;
  max-width:28ch !important;
}

/* AJUSTE 25 - Equipo y soporte con collage protagonista */

.team-support{
  padding-top:78px !important;
  padding-bottom:88px !important;
  background:
    radial-gradient(circle at top right, rgba(23,184,197,.07), transparent 34%),
    linear-gradient(180deg, #ffffff 0%, #f8fbfd 100%) !important;
}

.team-grid{
  display:grid !important;
  grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr) !important;
  gap:54px !important;
  align-items:center !important;
}

.team-copy h2{
  max-width:13ch !important;
  font-size:clamp(42px, 3.6vw, 62px) !important;
  line-height:1 !important;
  letter-spacing:-.045em !important;
}

.team-copy p{
  max-width:52ch !important;
  font-size:18px !important;
  line-height:1.7 !important;
}

.team-media{
  border-radius:30px !important;
  overflow:hidden !important;
  background:#ffffff !important;
  box-shadow:0 28px 58px rgba(11,43,84,.16) !important;
}

.team-media img{
  display:block !important;
  width:100% !important;
  height:auto !important;
  max-width:none !important;
}

@media (max-width: 1000px){
  .team-grid{
    grid-template-columns:1fr !important;
    gap:34px !important;
  }

  .team-copy h2{
    max-width:none !important;
  }
}
.team-support{
  padding-bottom:56px !important;
}

.contact-section{
  padding-top:58px !important;
  padding-bottom:64px !important;
  background:
    radial-gradient(circle at top right, rgba(23,184,197,.07), transparent 34%),
    linear-gradient(180deg, #ffffff 0%, #f8fbfd 100%) !important;
}

.contact-grid{
  display:grid !important;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr) !important;
  gap:56px !important;
  align-items:center !important;
}

.contact-copy h2{
  max-width:11ch !important;
  margin:14px 0 22px !important;
  font-size:clamp(42px, 3.6vw, 62px) !important;
  line-height:1 !important;
  letter-spacing:-.045em !important;
}

.contact-copy p{
  max-width:52ch !important;
  margin:0 !important;
  font-size:18px !important;
  line-height:1.65 !important;
}

.contact-card{
  display:grid !important;
  grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
  gap:20px !important;
}

.contact-item{
  min-height:128px !important;
  padding:28px 26px !important;
  border:1px solid rgba(13,59,102,.10) !important;
  border-radius:24px !important;
  background:#ffffff !important;
  box-shadow:0 18px 38px rgba(11,43,84,.08) !important;
}

.contact-item strong{
  display:block !important;
  margin-bottom:10px !important;
  font-size:22px !important;
  color:var(--azul) !important;
}

.contact-item span{
  display:block !important;
  font-size:17px !important;
  color:var(--texto-suave) !important;
}

@media (max-width: 1000px){
  .contact-grid{
    grid-template-columns:1fr !important;
    gap:34px !important;
  }

  .contact-card{
    grid-template-columns:1fr !important;
  }

  .contact-copy h2{
    max-width:none !important;
  }
}

/* AJUSTE 27 - Contacto final con formulario premium */

.contact-section-final{
  padding-top:72px !important;
  padding-bottom:78px !important;
  background:
    radial-gradient(circle at top right, rgba(23,184,197,.10), transparent 32%),
    linear-gradient(180deg, #ffffff 0%, #f7fbfd 100%) !important;
}

.contact-final-grid{
  display:grid !important;
  grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr) !important;
  gap:58px !important;
  align-items:center !important;
}

.contact-copy-final h2{
  max-width:11ch !important;
  margin:14px 0 22px !important;
  font-size:clamp(42px, 3.6vw, 62px) !important;
  line-height:1 !important;
  letter-spacing:-.045em !important;
  color:var(--azul) !important;
}

.contact-copy-final > p{
  max-width:48ch !important;
  margin:0 0 30px !important;
  font-size:18px !important;
  line-height:1.65 !important;
  color:var(--texto-suave) !important;
}

.contact-info-list{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:14px !important;
  max-width:520px !important;
}

.contact-info-item{
  padding:20px 22px !important;
  border:1px solid rgba(13,59,102,.10) !important;
  border-radius:22px !important;
  background:#ffffff !important;
  box-shadow:0 16px 34px rgba(11,43,84,.07) !important;
}

.contact-info-item strong{
  display:block !important;
  margin-bottom:6px !important;
  font-size:18px !important;
  color:var(--azul) !important;
}

.contact-info-item span{
  display:block !important;
  font-size:16px !important;
  line-height:1.45 !important;
  color:var(--texto-suave) !important;
}

.contact-form-final{
  padding:34px !important;
  border:1px solid rgba(13,59,102,.11) !important;
  border-radius:30px !important;
  background:#ffffff !important;
  box-shadow:0 28px 58px rgba(11,43,84,.14) !important;
}

.form-row{
  display:grid !important;
  grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
  gap:18px !important;
}

.contact-form-final label{
  display:block !important;
  margin-bottom:18px !important;
  font-size:15px !important;
  font-weight:700 !important;
  color:var(--azul) !important;
}

.contact-form-final input,
.contact-form-final textarea{
  width:100% !important;
  margin-top:8px !important;
  padding:16px 18px !important;
  border:1px solid rgba(13,59,102,.14) !important;
  border-radius:16px !important;
  background:#f8fbfd !important;
  font:inherit !important;
  font-size:16px !important;
  color:var(--azul) !important;
  outline:none !important;
}

.contact-form-final textarea{
  min-height:142px !important;
  resize:vertical !important;
}

.contact-form-final input:focus,
.contact-form-final textarea:focus{
  border-color:rgba(23,184,197,.65) !important;
  box-shadow:0 0 0 4px rgba(23,184,197,.12) !important;
  background:#ffffff !important;
}

.contact-form-final button{
  width:100% !important;
  margin-top:4px !important;
  padding:17px 24px !important;
  border:0 !important;
  border-radius:999px !important;
  background:var(--azul) !important;
  color:#ffffff !important;
  font-size:17px !important;
  font-weight:800 !important;
  cursor:pointer !important;
  box-shadow:0 18px 36px rgba(11,43,84,.20) !important;
}

@media (max-width: 1000px){
  .contact-final-grid{
    grid-template-columns:1fr !important;
    gap:34px !important;
  }

  .contact-copy-final h2{
    max-width:none !important;
  }
}

@media (max-width: 700px){
  .form-row{
    grid-template-columns:1fr !important;
    gap:0 !important;
  }

  .contact-form-final{
    padding:26px 22px !important;
  }
}

/* AJUSTE 28 - Footer más compacto y ejecutivo */

.site-footer{
  padding:46px 0 38px !important;
  background:var(--azul) !important;
}

.footer-wrap{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:40px !important;
}

.footer-brand img{
  width:190px !important;
  max-width:190px !important;
  margin-bottom:18px !important;
}

.footer-brand p{
  max-width:440px !important;
  margin:0 !important;
  font-size:17px !important;
  line-height:1.5 !important;
  color:rgba(255,255,255,.90) !important;
}

.footer-links{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:28px !important;
  flex-wrap:wrap !important;
}

.footer-links a{
  font-size:16px !important;
  font-weight:700 !important;
  color:#ffffff !important;
}

@media (max-width: 900px){
  .footer-wrap{
    flex-direction:column !important;
    align-items:flex-start !important;
  }

  .footer-links{
    justify-content:flex-start !important;
  }

  .footer-brand img{
    width:160px !important;
  }
}

/* AJUSTE 29 - Footer compacto real */

.site-footer{
  padding:28px 0 26px !important;
  min-height:auto !important;
}

.footer-wrap{
  min-height:auto !important;
  align-items:center !important;
}

.footer-brand img{
  width:130px !important;
  max-width:130px !important;
  margin-bottom:10px !important;
}

.footer-brand p{
  max-width:360px !important;
  font-size:14px !important;
  line-height:1.35 !important;
}

.footer-links{
  gap:22px !important;
}

.footer-links a{
  font-size:14px !important;
  line-height:1 !important;
}
/* AJUSTE 30 - Farmacovigilancia compacta */

.pharmacovigilance-band{
  padding:58px 0 !important;
  background:#f6fafb !important;
  border-top:1px solid rgba(13,59,102,.08) !important;
  border-bottom:1px solid rgba(13,59,102,.08) !important;
}

.pharmacovigilance-wrap{
  display:grid !important;
  grid-template-columns:minmax(0, .95fr) minmax(320px, 480px) !important;
  gap:38px !important;
  align-items:center !important;
}

.pharmacovigilance-copy h2{
  max-width:720px !important;
  margin:12px 0 14px !important;
  font-size:clamp(30px, 2.4vw, 42px) !important;
  line-height:1.1 !important;
  letter-spacing:0 !important;
  color:var(--azul) !important;
}

.pharmacovigilance-copy p{
  max-width:64ch !important;
  margin:0 !important;
  font-size:17px !important;
  line-height:1.65 !important;
  color:var(--texto-suave) !important;
}

.pharmacovigilance-note{
  display:inline-flex !important;
  flex-wrap:wrap !important;
  gap:6px !important;
  margin-top:20px !important;
  padding:10px 14px !important;
  border:1px solid rgba(23,184,197,.26) !important;
  border-radius:8px !important;
  background:#ffffff !important;
  color:var(--azul) !important;
  font-size:15px !important;
  font-weight:700 !important;
}

.pharmacovigilance-note a{
  color:var(--turquesa) !important;
  text-decoration:none !important;
}

.pharmacovigilance-panel{
  display:grid !important;
  gap:12px !important;
  padding:18px !important;
  border:1px solid rgba(13,59,102,.1) !important;
  border-radius:8px !important;
  background:#ffffff !important;
  box-shadow:0 18px 42px rgba(11,43,84,.08) !important;
}

.pharmacovigilance-item{
  display:grid !important;
  grid-template-columns:46px 1fr !important;
  gap:13px !important;
  align-items:center !important;
  padding:12px !important;
  border-radius:8px !important;
  background:#f7fbfd !important;
}

.pharmacovigilance-item img{
  width:46px !important;
  height:46px !important;
  object-fit:contain !important;
}

.pharmacovigilance-item strong{
  display:block !important;
  margin-bottom:3px !important;
  color:var(--azul) !important;
  font-size:15px !important;
  line-height:1.25 !important;
}

.pharmacovigilance-item span{
  display:block !important;
  color:var(--texto-suave) !important;
  font-size:14px !important;
  line-height:1.45 !important;
}

.pharmacovigilance-button{
  grid-area:button !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:54px !important;
  padding:0 24px !important;
  border-radius:8px !important;
  background:var(--azul) !important;
  color:#ffffff !important;
  font-size:15px !important;
  font-weight:800 !important;
  text-decoration:none !important;
  box-shadow:0 14px 28px rgba(11,43,84,.16) !important;
  white-space:nowrap !important;
}

@media (max-width: 900px){
  .pharmacovigilance-band{
    padding:46px 0 !important;
  }

  .pharmacovigilance-wrap{
    grid-template-columns:1fr !important;
    gap:24px !important;
  }

  .pharmacovigilance-panel{
    padding:14px !important;
  }

  .pharmacovigilance-button{
    width:100% !important;
  }
}
/* AJUSTE 31 - Pulido compacto Calidad y Procesos */

.highlight-band-premium:first-of-type{
  padding-top:54px !important;
  padding-bottom:58px !important;
}

.highlight-band-premium:first-of-type .section-heading{
  margin-bottom:30px !important;
}

.highlight-band-premium:first-of-type .section-heading h2{
  font-size:clamp(34px, 3.2vw, 52px) !important;
  line-height:1.08 !important;
}

.highlight-band-premium:first-of-type .section-heading p{
  max-width:820px !important;
  font-size:17px !important;
  line-height:1.6 !important;
}

.highlight-band-premium:first-of-type .highlight-item-premium{
  min-height:190px !important;
  padding:26px 28px !important;
}

.highlight-band-premium:first-of-type .highlight-item-premium img{
  width:88px !important;
  height:88px !important;
}

.highlight-band-premium:first-of-type .highlight-item-premium h3{
  font-size:26px !important;
}

.highlight-band-premium:first-of-type .highlight-item-premium p{
  font-size:16px !important;
  line-height:1.45 !important;
}

/* AJUSTE 32 - Pulido cards Áreas de Especialidad */

.specialty-areas .operational-cards{
  margin-top:52px !important;
}

.specialty-areas .service-card{
  min-height:390px !important;
  padding:48px 36px 42px !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:flex-start !important;
  text-align:center !important;
}

.specialty-areas .service-card .icon-circle{
  width:122px !important;
  height:122px !important;
  margin:0 auto 34px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:transparent !important;
}

.specialty-areas .service-card .icon-circle img{
  width:112px !important;
  height:112px !important;
  object-fit:contain !important;
}

.specialty-areas .service-card h3{
  margin:0 0 20px !important;
  font-size:30px !important;
  line-height:1.08 !important;
  color:var(--azul) !important;
}

.specialty-areas .service-card p{
  max-width:30ch !important;
  margin:0 auto !important;
  font-size:18px !important;
  line-height:1.5 !important;
  color:var(--texto-suave) !important;
}

/* AJUSTE 34 - Footer más compacto y profesional */

.site-footer{
  padding:38px 0 34px !important;
  min-height:auto !important;
}

.footer-wrap{
  display:grid !important;
  grid-template-columns:minmax(280px, 460px) 1fr !important;
  gap:48px !important;
  align-items:center !important;
}

.footer-brand img{
  width:170px !important;
  max-width:170px !important;
  margin-bottom:22px !important;
}

.footer-brand p{
  max-width:430px !important;
  margin:0 0 6px !important;
  font-size:17px !important;
  line-height:1.42 !important;
  color:rgba(255,255,255,.92) !important;
}

.footer-brand a{
  color:rgba(255,255,255,.92) !important;
  text-decoration:none !important;
}

.footer-links{
  display:flex !important;
  flex-wrap:wrap !important;
  justify-content:flex-end !important;
  align-items:center !important;
  gap:20px 30px !important;
}

.footer-links a{
  font-size:17px !important;
  line-height:1.2 !important;
  font-weight:800 !important;
  color:#ffffff !important;
  text-decoration:none !important;
  white-space:nowrap !important;
}

.footer-links a:hover{
  color:#8ef0f7 !important;
}

@media (max-width: 900px){
  .footer-wrap{
    grid-template-columns:1fr !important;
    gap:28px !important;
  }

  .footer-links{
    justify-content:flex-start !important;
  }
}
/* AJUSTE 34 - Footer más compacto y profesional */

.site-footer{
  padding:38px 0 34px !important;
  min-height:auto !important;
}

.footer-wrap{
  display:grid !important;
  grid-template-columns:minmax(280px, 460px) 1fr !important;
  gap:48px !important;
  align-items:center !important;
}

.footer-brand img{
  width:170px !important;
  max-width:170px !important;
  margin-bottom:22px !important;
}

.footer-brand p{
  max-width:430px !important;
  margin:0 0 6px !important;
  font-size:17px !important;
  line-height:1.42 !important;
  color:rgba(255,255,255,.92) !important;
}

.footer-brand a{
  color:rgba(255,255,255,.92) !important;
  text-decoration:none !important;
}

.footer-links{
  display:flex !important;
  flex-wrap:wrap !important;
  justify-content:flex-end !important;
  align-items:center !important;
  gap:20px 30px !important;
}

.footer-links a{
  font-size:17px !important;
  line-height:1.2 !important;
  font-weight:800 !important;
  color:#ffffff !important;
  text-decoration:none !important;
  white-space:nowrap !important;
}

.footer-links a:hover{
  color:#8ef0f7 !important;
}

@media (max-width: 900px){
  .footer-wrap{
    grid-template-columns:1fr !important;
    gap:28px !important;
  }

  .footer-links{
    justify-content:flex-start !important;
  }
}
.footer-links a:hover{
  color:#8ef0f7 !important;
}

@media (max-width: 900px){
  .footer-wrap{
    grid-template-columns:1fr !important;
    gap:28px !important;
  }

  .footer-links{
    justify-content:flex-start !important;
  }
}


/* AJUSTE FINAL FOOTER - Reducir altura y ordenar */

.site-footer{
  padding:24px 0 22px !important;
  min-height:0 !important;
}

.footer-wrap{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:36px !important;
}

.footer-brand{
  flex:0 0 430px !important;
}

.footer-brand img{
  width:125px !important;
  max-width:125px !important;
  margin:0 0 10px !important;
}

.footer-brand p{
  max-width:430px !important;
  margin:0 0 4px !important;
  font-size:14px !important;
  line-height:1.35 !important;
}

.footer-links{
  flex:1 !important;
  display:flex !important;
  flex-direction:row !important;
  flex-wrap:wrap !important;
  justify-content:flex-end !important;
  align-items:center !important;
  gap:14px 24px !important;
}

.footer-links a{
  font-size:14px !important;
  line-height:1.1 !important;
  font-weight:800 !important;
  white-space:nowrap !important;
}
/* AJUSTE FINAL REAL - Footer compacto AMG */

.site-footer{
  padding:14px 0 !important;
  min-height:0 !important;
  height:auto !important;
  background:#11476f !important;
}

.footer-wrap{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:32px !important;
  min-height:0 !important;
}

.footer-brand{
  display:flex !important;
  align-items:center !important;
  gap:18px !important;
  max-width:560px !important;
}

.footer-brand img{
  width:112px !important;
  max-width:112px !important;
  height:auto !important;
  margin:0 !important;
}

.footer-brand-text{
  margin:0 !important;
}

.footer-brand p{
  margin:0 0 3px !important;
  max-width:390px !important;
  font-size:13px !important;
  line-height:1.22 !important;
  font-weight:400 !important;
  color:rgba(255,255,255,.88) !important;
}

.footer-brand a{
  color:rgba(255,255,255,.88) !important;
  text-decoration:none !important;
}

.footer-links{
  display:flex !important;
  flex-wrap:wrap !important;
  justify-content:flex-end !important;
  align-items:center !important;
  gap:10px 22px !important;
  max-width:760px !important;
  margin:0 !important;
}

.footer-links a{
  margin:0 !important;
  padding:0 !important;
  font-size:14px !important;
  line-height:1.1 !important;
  font-weight:700 !important;
  color:#ffffff !important;
  text-decoration:none !important;
  white-space:nowrap !important;
}

@media (max-width:900px){
  .site-footer{
    padding:16px 0 !important;
  }

  .footer-wrap{
    flex-direction:column !important;
    align-items:flex-start !important;
    gap:16px !important;
  }

  .footer-brand{
    gap:14px !important;
  }

  .footer-brand img{
    width:96px !important;
    max-width:96px !important;
  }

  .footer-links{
    justify-content:flex-start !important;
    gap:10px 18px !important;
  }
}
/* AJUSTE FINAL REAL - Footer textos compactos */

.site-footer{
  padding:10px 0 !important;
}

.site-footer .footer-wrap{
  align-items:center !important;
  gap:26px !important;
}

.site-footer .footer-brand{
  gap:16px !important;
  max-width:520px !important;
}

.site-footer .footer-brand img{
  width:98px !important;
  max-width:98px !important;
}

.site-footer .footer-brand p,
.site-footer .footer-brand a{
  font-size:12px !important;
  line-height:1.18 !important;
  font-weight:400 !important;
  letter-spacing:0 !important;
  color:rgba(255,255,255,.80) !important;
}

.site-footer .footer-brand p{
  max-width:330px !important;
  margin:0 0 2px !important;
}

.site-footer .footer-links{
  max-width:720px !important;
  gap:8px 18px !important;
  align-content:center !important;
}

.site-footer .footer-links a{
  font-size:12px !important;
  line-height:1 !important;
  font-weight:600 !important;
  letter-spacing:0 !important;
  color:rgba(255,255,255,.88) !important;
}

/* AJUSTE AREAS DE ESPECIALIDAD - Cards verticales estilo institucional */

.specialty-areas .specialty-cards-clean{
  display:grid !important;
  grid-template-columns:repeat(4, minmax(0, 1fr)) !important;
  gap:24px !important;
  align-items:stretch !important;
}

.specialty-areas .specialty-card-clean{
  position:relative !important;
  min-height:335px !important;
  height:auto !important;
  padding:50px 28px 32px !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:flex-start !important;
  text-align:center !important;
  border-radius:28px !important;
  background:#ffffff !important;
  border:1px solid rgba(8,56,96,.10) !important;
  box-shadow:0 22px 44px rgba(11,52,84,.08) !important;
}

.specialty-areas .specialty-card-clean::before{
  content:"" !important;
  position:absolute !important;
  top:26px !important;
  left:50% !important;
  transform:translateX(-50%) !important;
  width:88px !important;
  height:6px !important;
  border-radius:999px !important;
  background:linear-gradient(90deg, var(--turquesa), var(--azul)) !important;
}

.specialty-areas .specialty-card-clean .icon-circle{
  width:120px !important;
  height:120px !important;
  min-width:120px !important;
  margin:0 0 18px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:transparent !important;
  border:none !important;
  box-shadow:none !important;
}

.specialty-areas .specialty-card-clean .icon-circle img{
  width:112px !important;
  max-width:112px !important;
  height:auto !important;
  display:block !important;
}

.specialty-areas .specialty-card-clean .service-card-content{
  margin:0 !important;
  min-width:0 !important;
  max-width:315px !important;
}

.specialty-areas .specialty-card-clean h3{
  margin:0 0 12px !important;
  font-size:25px !important;
  line-height:1.08 !important;
  font-weight:800 !important;
  color:var(--azul) !important;
  text-align:center !important;
}

.specialty-areas .specialty-card-clean p{
  margin:0 auto !important;
  max-width:300px !important;
  font-size:15.5px !important;
  line-height:1.34 !important;
  font-weight:400 !important;
  color:var(--texto-suave) !important;
  text-align:center !important;
}

@media (max-width:1200px){
  .specialty-areas .specialty-cards-clean{
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width:700px){
  .specialty-areas .specialty-cards-clean{
    grid-template-columns:1fr !important;
  }

  .specialty-areas .specialty-card-clean{
    min-height:315px !important;
    padding:48px 24px 30px !important;
  }

  .specialty-areas .specialty-card-clean .icon-circle{
    width:104px !important;
    height:104px !important;
    min-width:104px !important;
  }

  .specialty-areas .specialty-card-clean .icon-circle img{
    width:96px !important;
    max-width:96px !important;
  }

  .specialty-areas .specialty-card-clean h3{
    font-size:23px !important;
  }

  .specialty-areas .specialty-card-clean p{
    font-size:14.5px !important;
  }
}
/* AJUSTE CAPACIDADES OPERATIVAS - Barrita centrada en cards verticales */

#servicios .operational-cards > .service-card{
  position:relative !important;
  padding-top:54px !important;
}

#servicios .operational-cards > .service-card::before{
  content:"" !important;
  position:absolute !important;
  top:28px !important;
  left:50% !important;
  transform:translateX(-50%) !important;
  width:86px !important;
  height:6px !important;
  border-radius:999px !important;
  background:linear-gradient(90deg, var(--turquesa), var(--azul)) !important;
}

#servicios .operational-cards > .service-card .icon-circle,
#servicios .operational-cards > .service-card h3,
#servicios .operational-cards > .service-card p{
  text-align:center !important;
}

#servicios .operational-cards > .service-card .icon-circle{
  margin-left:auto !important;
  margin-right:auto !important;
}

/* AJUSTE CALIDAD Y PROCESOS - Cards horizontales con barrita izquierda */

#calidad .highlight-item-premium{
  position:relative !important;
  text-align:left !important;
}

#calidad .highlight-item-premium::before{
  content:"" !important;
  position:absolute !important;
  top:28px !important;
  left:34px !important;
  transform:none !important;
  width:86px !important;
  height:6px !important;
  border-radius:999px !important;
  background:linear-gradient(90deg, var(--turquesa), var(--azul)) !important;
}

#calidad .highlight-item-premium .highlight-icon,
#calidad .highlight-item-premium .icon-circle{
  margin-left:0 !important;
  margin-right:0 !important;
}

#calidad .highlight-item-premium h3,
#calidad .highlight-item-premium p{
  text-align:left !important;
}

/* AJUSTE CONTACTO - Menos aire antes del footer */

#contacto{
  padding-bottom:46px !important;
}

#contacto .contact-grid{
  margin-bottom:0 !important;
}

#contacto .contact-form,
#contacto .contact-info{
  margin-bottom:0 !important;
}

.site-footer{
  margin-top:0 !important;
}

@media (max-width:900px){
  #contacto{
    padding-bottom:36px !important;
  }
}


/* AJUSTE INSTALACIONES - Contener collage sin cambiar diseño */

#instalaciones{
  overflow:hidden !important;
}

#instalaciones .operation-layout-final{
  max-width:100% !important;
  overflow:hidden !important;
}

#instalaciones .operation-media-final{
  max-width:100% !important;
  overflow:hidden !important;
}

#instalaciones .operation-collage-final{
  max-width:100% !important;
  overflow:hidden !important;
}

#instalaciones .operation-collage-final img{
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  height:auto !important;
}



/* =========================================================
   HERO V2 AMG PHARMA - MARCA PROTAGONISTA
   Bloque agregado al final para controlar el nuevo Hero
   ========================================================= */

.hero-home {
  position: relative;
  overflow: hidden;
  padding: 90px 0 80px;
  background:
    radial-gradient(circle at 18% 20%, rgba(0, 174, 199, 0.12), transparent 32%),
    linear-gradient(135deg, #ffffff 0%, #f6fbfd 52%, #eef8fb 100%);
}

.hero-home::before {
  content: "";
  position: absolute;
  inset: auto -12% -28% 42%;
  height: 360px;
  background: rgba(0, 174, 199, 0.08);
  border-radius: 999px 999px 0 0;
  transform: rotate(-6deg);
  pointer-events: none;
}

.hero-home-brand-grid {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: minmax(0, 1.12fr) minmax(360px, 0.88fr);
  gap: 54px;
  align-items: center;
}

.hero-home-brand-copy {
  max-width: none;
}

.hero-brand-logo {
  width: min(720px, 100%);
  margin: 0 0 18px;
}

.hero-brand-logo img {
  display: block;
  width: 100%;
  height: auto;
  filter: drop-shadow(0 18px 28px rgba(0, 80, 110, 0.12));
}

.hero-home-brand-copy h1 {
  max-width: 760px;
  margin: 0 0 14px;
  font-size: clamp(2.2rem, 4.5vw, 4.4rem);
  line-height: 0.98;
  letter-spacing: -0.06em;
  color: #082f49;
}

.hero-home-brand-copy h1::after {
  content: "";
  display: block;
  width: 86px;
  height: 5px;
  margin-top: 20px;
  border-radius: 999px;
  background: linear-gradient(90deg, #00aeca, #63d6e6);
}

.hero-home-brand-copy > p {
  max-width: 720px;
  margin: 0 0 30px;
  font-size: 1.08rem;
  line-height: 1.65;
  color: #425466;
}

.hero-home-brand-cards {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  margin-top: 28px;
}

.hero-brand-card {
  display: grid;
  grid-template-columns: 50px 1fr;
  gap: 14px;
  align-items: flex-start;
  min-height: auto;
  padding: 18px 16px;
  text-align: left;
  border: 1px solid rgba(0, 174, 199, 0.14);
  border-radius: 22px;
  background: rgba(255, 255, 255, 0.88);
  box-shadow: 0 18px 38px rgba(8, 47, 73, 0.08);
  backdrop-filter: blur(10px);
}

.hero-brand-card .hero-card-icon {
  width: 50px;
  height: 50px;
  margin: 0;
  border-radius: 16px;
  background: rgba(0, 174, 199, 0.1);
}

.hero-brand-card .hero-card-icon img {
  width: 28px;
  height: 28px;
  object-fit: contain;
}

.hero-brand-card h3 {
  margin: 0 0 6px;
  font-size: 0.98rem;
  line-height: 1.2;
  color: #082f49;
}

.hero-brand-card p {
  margin: 0;
  font-size: 0.86rem;
  line-height: 1.45;
  color: #5b6b78;
}

.hero-home-video-card {
  position: relative;
  width: 100%;
  max-width: 470px;
  justify-self: end;
  aspect-ratio: 4 / 5;
  border-radius: 34px;
  overflow: hidden;
  background: #dceff4;
  box-shadow: 0 28px 70px rgba(8, 47, 73, 0.18);
}

.hero-home-video-card::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 2;
  background: linear-gradient(180deg, rgba(8, 47, 73, 0.05), rgba(8, 47, 73, 0.38));
  pointer-events: none;
}

.hero-video {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.hero-video-label {
  position: absolute;
  left: 24px;
  right: 24px;
  bottom: 22px;
  z-index: 3;
  padding: 14px 16px;
  border-radius: 18px;
  color: #ffffff;
  background: rgba(8, 47, 73, 0.58);
  backdrop-filter: blur(12px);
}

.hero-video-label strong {
  display: block;
  font-size: 0.95rem;
  letter-spacing: 0.01em;
}

.hero-home-video-card::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  z-index: 4;
  width: 66px;
  height: 66px;
  border-radius: 50%;
  transform: translate(-50%, -50%);
  background: rgba(255, 255, 255, 0.92);
  box-shadow: 0 18px 38px rgba(8, 47, 73, 0.18);
}

.hero-home-video-card .hero-video-label::before {
  content: "";
  position: absolute;
  left: 50%;
  top: -250%;
  z-index: 5;
  width: 0;
  height: 0;
  transform: translate(-35%, -50%);
  border-top: 13px solid transparent;
  border-bottom: 13px solid transparent;
  border-left: 20px solid #00aeca;
}

/* Responsive */
@media (max-width: 1100px) {
  .hero-home-brand-grid {
    grid-template-columns: 1fr;
    gap: 38px;
  }

  .hero-home-video-card {
    justify-self: start;
    max-width: 620px;
    aspect-ratio: 16 / 9;
  }

  .hero-home-brand-cards {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 640px) {
  .hero-home {
    padding: 64px 0 56px;
  }

  .hero-brand-logo {
    width: 100%;
    margin-bottom: 14px;
  }

  .hero-home-brand-copy h1 {
    font-size: clamp(2rem, 11vw, 3rem);
  }

  .hero-home-brand-copy > p {
    font-size: 0.98rem;
  }

  .hero-home-video-card {
    max-width: 100%;
    aspect-ratio: 4 / 5;
    border-radius: 26px;
  }

  .hero-brand-card {
    grid-template-columns: 46px 1fr;
    padding: 16px;
  }
}


/* =========================================================
   AJUSTE HERO V2 - TAMANO LOGO Y VIDEO
   ========================================================= */

.hero-home {
  padding: 64px 0 68px;
}

.hero-home-brand-grid {
  grid-template-columns: minmax(0, 0.98fr) minmax(420px, 0.82fr);
  gap: 46px;
}

.hero-brand-logo {
  width: min(520px, 100%);
  margin: 0 0 18px;
}

.hero-brand-logo img {
  max-width: 100%;
  height: auto;
}

.hero-home-brand-copy h1 {
  max-width: 680px;
  font-size: clamp(2.4rem, 4vw, 3.8rem);
  line-height: 1.02;
}

.hero-home-brand-copy > p {
  max-width: 660px;
  font-size: 1.03rem;
}

.hero-home-video-card {
  max-width: 560px;
  aspect-ratio: 16 / 10;
  border-radius: 30px;
  align-self: center;
}

.hero-video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
}

/* Quita el circulo blanco/play falso */
.hero-home-video-card::after {
  display: none;
}

/* Quita el triangulo falso */
.hero-home-video-card .hero-video-label::before {
  display: none;
}

.hero-video-label {
  left: 22px;
  right: 22px;
  bottom: 20px;
  padding: 13px 18px;
}

.hero-home-brand-cards {
  max-width: 920px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.hero-brand-card {
  min-height: 132px;
}

@media (max-width: 1100px) {
  .hero-home-brand-grid {
    grid-template-columns: 1fr;
  }

  .hero-brand-logo {
    width: min(500px, 100%);
  }

  .hero-home-video-card {
    justify-self: start;
    max-width: 620px;
    aspect-ratio: 16 / 9;
  }
}

@media (max-width: 640px) {
  .hero-brand-logo {
    width: min(360px, 100%);
  }

  .hero-home-video-card {
    max-width: 100%;
    aspect-ratio: 16 / 10;
  }
}


/* =========================================================
   CORRECCION FUERTE HERO V2 - COMPOSICION FINAL
   Ajusta logo, sube video y repara cards
   ========================================================= */

.hero-home {
  min-height: calc(100vh - 104px);
  padding: 42px 0 56px !important;
}

.hero-home-brand-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(520px, 0.9fr) !important;
  gap: 58px !important;
  align-items: start !important;
}

.hero-home-brand-copy {
  padding-top: 8px !important;
}

.hero-brand-logo {
  width: min(460px, 100%) !important;
  margin: 0 0 20px !important;
}

.hero-brand-logo img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  filter: drop-shadow(0 16px 24px rgba(0, 80, 110, 0.10)) !important;
}

.hero-home-brand-copy h1 {
  max-width: 680px !important;
  margin: 0 0 18px !important;
  font-size: clamp(2.7rem, 4.3vw, 4.35rem) !important;
  line-height: 1.02 !important;
  letter-spacing: -0.055em !important;
}

.hero-home-brand-copy h1::after {
  width: 92px !important;
  height: 5px !important;
  margin-top: 22px !important;
}

.hero-home-brand-copy > p {
  max-width: 760px !important;
  margin: 0 0 30px !important;
  font-size: 1.08rem !important;
  line-height: 1.65 !important;
}

/* VIDEO: subirlo, hacerlo mas ancho y quitar aire superior */
.hero-home-video-card {
  width: 100% !important;
  max-width: 650px !important;
  aspect-ratio: 16 / 9 !important;
  align-self: start !important;
  justify-self: end !important;
  margin-top: 18px !important;
  border-radius: 34px !important;
  overflow: hidden !important;
  background: #eaf6f9 !important;
  box-shadow: 0 28px 70px rgba(8, 47, 73, 0.18) !important;
}

.hero-video {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
}

/* Quitar elementos falsos del video */
.hero-home-video-card::after,
.hero-home-video-card .hero-video-label::before {
  display: none !important;
  content: none !important;
}

.hero-video-label {
  left: 26px !important;
  right: 26px !important;
  bottom: 24px !important;
  padding: 14px 20px !important;
  border-radius: 999px !important;
  background: rgba(8, 47, 73, 0.82) !important;
  color: #ffffff !important;
  text-align: left !important;
}

/* CARDS: reparar estilo y evitar textos montados */
.hero-home-brand-cards {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 18px !important;
  max-width: 940px !important;
  margin-top: 32px !important;
}

.hero-brand-card {
  position: relative !important;
  display: grid !important;
  grid-template-columns: 58px 1fr !important;
  gap: 16px !important;
  align-items: start !important;
  min-height: 150px !important;
  padding: 24px 22px 22px !important;
  border-radius: 24px !important;
  border: 1px solid rgba(0, 174, 199, 0.16) !important;
  background: rgba(255, 255, 255, 0.94) !important;
  box-shadow: 0 18px 42px rgba(8, 47, 73, 0.09) !important;
  text-align: left !important;
  overflow: hidden !important;
}

.hero-brand-card::before {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  left: 22px !important;
  width: 74px !important;
  height: 4px !important;
  border-radius: 0 0 999px 999px !important;
  background: linear-gradient(90deg, #00aeca, #082f49) !important;
}

.hero-brand-card .hero-card-icon {
  width: 58px !important;
  height: 58px !important;
  margin: 0 !important;
  border-radius: 18px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: rgba(0, 174, 199, 0.10) !important;
  flex-shrink: 0 !important;
}

.hero-brand-card .hero-card-icon img {
  width: 32px !important;
  height: 32px !important;
  object-fit: contain !important;

}

.hero-brand-card h3 {
  margin: 0 0 8px !important;
  font-size: 1.05rem !important;
  line-height: 1.15 !important;
  letter-spacing: -0.02em !important;
  color: #082f49 !important;
  text-align: left !important;
}

.hero-brand-card p {
  margin: 0 !important;
  font-size: 0.92rem !important;
  line-height: 1.5 !important;
  color: #536575 !important;
  text-align: left !important;
}

/* Responsive */
@media (max-width: 1180px) {
  .hero-home-brand-grid {
    grid-template-columns: 1fr !important;
    gap: 34px !important;
  }

  .hero-home-video-card {
    justify-self: start !important;
    max-width: 720px !important;
    margin-top: 0 !important;
  }

  .hero-home-brand-cards {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 820px) {
  .hero-home-brand-cards {
    grid-template-columns: 1fr !important;
  }

  .hero-brand-card {
    min-height: auto !important;
  }
}

@media (max-width: 640px) {
  .hero-home {
    padding: 34px 0 46px !important;
  }

  .hero-brand-logo {
    width: min(340px, 100%) !important;
  }

  .hero-home-brand-copy h1 {
    font-size: clamp(2.15rem, 11vw, 3rem) !important;
  }

  .hero-home-video-card {
    aspect-ratio: 16 / 10 !important;
    border-radius: 26px !important;
  }
}


/* =========================================================
   ANIMACION HERO - LOGO AMG PHARMA
   ========================================================= */

.hero-brand-logo {
  opacity: 0;
  transform: translateY(22px) scale(0.96);
  animation: heroLogoReveal 1.15s ease-out 0.15s forwards;
}

.hero-home-brand-copy h1 {
  opacity: 0;
  transform: translateY(18px);
  animation: heroTextReveal 0.9s ease-out 0.55s forwards;
}

.hero-home-brand-copy > p {
  opacity: 0;
  transform: translateY(16px);
  animation: heroTextReveal 0.9s ease-out 0.75s forwards;
}

.hero-home-brand-cards {
  opacity: 0;
  transform: translateY(18px);
  animation: heroTextReveal 0.9s ease-out 0.95s forwards;
}

.hero-home-video-card {
  opacity: 0;
  transform: translateX(28px) scale(0.98);
  animation: heroVideoReveal 1s ease-out 0.65s forwards;
}

@keyframes heroLogoReveal {
  0% {
    opacity: 0;
    transform: translateY(22px) scale(0.96);
    filter: blur(6px);
  }

  60% {
    opacity: 1;
    transform: translateY(0) scale(1.01);
    filter: blur(0);
  }

  100% {
    opacity: 1;
    transform: translateY(0) scale(1);
    filter: blur(0);
  }
}

@keyframes heroTextReveal {
  0% {
    opacity: 0;
    transform: translateY(18px);
  }

  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes heroVideoReveal {
  0% {
    opacity: 0;
    transform: translateX(28px) scale(0.98);
    filter: blur(4px);
  }

  100% {
    opacity: 1;
    transform: translateX(0) scale(1);
    filter: blur(0);
  }
}

/* Respeta usuarios con animaciones reducidas */
@media (prefers-reduced-motion: reduce) {
  .hero-brand-logo,
  .hero-home-brand-copy h1,
  .hero-home-brand-copy > p,
  .hero-home-brand-cards,
  .hero-home-video-card {
    opacity: 1;
    transform: none;
    animation: none;
    filter: none;
  }
}



/* =========================================================
   CORRECCION HERO V2 - SOLO LOGO ANIMADO + CARDS ESTILO ORIGINAL
   ========================================================= */

/* 1. Cancelar animaciones en TODO menos el logo */
.hero-home-brand-copy h1,
.hero-home-brand-copy > p,
.hero-home-brand-cards,
.hero-home-video-card,
.hero-video-area,
.hero-video-cards,
.hero-brand-card {
  opacity: 1 !important;
  transform: none !important;
  animation: none !important;
  filter: none !important;
}

/* 2. Mantener animacion SOLO en el logo */
.hero-brand-logo {
  opacity: 0;
  transform: translateY(22px) scale(0.96);
  animation: heroLogoReveal 1.15s ease-out 0.15s forwards !important;
}

/* 3. Area derecha: video arriba, cards abajo */
.hero-home-video-area {
  display: flex !important;
  flex-direction: column !important;
  gap: 28px !important;
  width: 100% !important;
  max-width: 760px !important;
  justify-self: end !important;
}

/* 4. Video mas limpio y estable */
.hero-home-video-card {
  width: 100% !important;
  max-width: 760px !important;
  aspect-ratio: 16 / 8.5 !important;
  margin: 0 !important;
  border-radius: 32px !important;
  overflow: hidden !important;
  align-self: stretch !important;
  justify-self: auto !important;
}

.hero-video {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
}

/* 5. Cards debajo del video estilo anterior */
.hero-video-cards {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 18px !important;
  width: 100% !important;
  max-width: 760px !important;
  margin: 0 !important;
}

/* 6. Restaurar estilo visual de cards verticales */
.hero-video-cards .hero-brand-card {
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 0 !important;
  min-height: 230px !important;
  padding: 34px 22px 28px !important;
  border-radius: 26px !important;
  border: 1px solid rgba(8, 47, 73, 0.10) !important;
  background: rgba(255, 255, 255, 0.94) !important;
  box-shadow: 0 18px 42px rgba(8, 47, 73, 0.08) !important;
  text-align: center !important;
  overflow: hidden !important;
}

/* Barrita superior centrada como el estilo original */
.hero-video-cards .hero-brand-card::before {
  content: "" !important;
  position: absolute !important;
  top: 28px !important;
  left: 50% !important;
  width: 72px !important;
  height: 4px !important;
  transform: translateX(-50%) !important;
  border-radius: 999px !important;
  background: linear-gradient(90deg, #00aeca, #082f49) !important;
}

/* Icono centrado */
.hero-video-cards .hero-brand-card .hero-card-icon {
  width: 68px !important;
  height: 68px !important;
  margin: 46px auto 22px !important;
  border-radius: 22px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: rgba(0, 174, 199, 0.10) !important;
  flex-shrink: 0 !important;
}

.hero-video-cards .hero-brand-card .hero-card-icon img {
  width: 38px !important;
  height: 38px !important;
  object-fit: contain !important;
}

/* Texto centrado */
.hero-video-cards .hero-brand-card h3 {
  margin: 0 0 12px !important;
  font-size: 1.16rem !important;
  line-height: 1.12 !important;
  letter-spacing: -0.025em !important;
  color: #082f49 !important;
  text-align: center !important;
}

.hero-video-cards .hero-brand-card p {
  margin: 0 !important;
  max-width: 190px !important;
  font-size: 0.96rem !important;
  line-height: 1.48 !important;
  color: #536575 !important;
  text-align: center !important;
}

/* 7. Ajuste de columna izquierda para que no invada */
.hero-home-brand-copy {
  align-self: start !important;
}

.hero-brand-logo {
  width: min(450px, 100%) !important;
}

.hero-home-brand-copy h1 {
  max-width: 700px !important;
  font-size: clamp(2.55rem, 4.1vw, 4.1rem) !important;
}

/* Responsive */
@media (max-width: 1180px) {
  .hero-home-video-area {
    justify-self: start !important;
    max-width: 760px !important;
  }

  .hero-video-cards {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 820px) {
  .hero-video-cards {
    grid-template-columns: 1fr !important;
  }

  .hero-video-cards .hero-brand-card {
    min-height: auto !important;
    padding: 30px 22px 26px !important;
  }
}

/* =========================================================
   PULIDO HERO V2 - CARDS MAS COMPACTAS BAJO VIDEO
   ========================================================= */

.hero-home-video-area {
  gap: 22px !important;
}

.hero-video-cards {
  gap: 16px !important;
}

.hero-video-cards .hero-brand-card {
  min-height: 210px !important;
  padding: 30px 20px 24px !important;
  border-radius: 24px !important;
}

.hero-video-cards .hero-brand-card::before {
  top: 24px !important;
  width: 68px !important;
}

.hero-video-cards .hero-brand-card .hero-card-icon {
  width: 62px !important;
  height: 62px !important;
  margin: 40px auto 18px !important;
  border-radius: 20px !important;
}

.hero-video-cards .hero-brand-card .hero-card-icon img {
  width: 34px !important;
  height: 34px !important;
}

.hero-video-cards .hero-brand-card h3 {
  margin-bottom: 10px !important;
  font-size: 1.08rem !important;
}

.hero-video-cards .hero-brand-card p {
  max-width: 180px !important;
  font-size: 0.91rem !important;
  line-height: 1.42 !important;
}


/* =========================================================
   PULIDO HERO V2 - CENTRAR BLOQUE IZQUIERDO SIN DEJAR HUECO
   ========================================================= */

/* Quita el empuje anterior del logo */
.hero-brand-logo {
  margin-left: auto !important;
  margin-right: auto !important;
  width: min(430px, 100%) !important;
}

/* Centra el bloque visual izquierdo dentro de su columna */
.hero-home-brand-copy {
  max-width: 760px !important;
  width: 100% !important;
  justify-self: center !important;
}

/* Mantiene textos alineados a la izquierda pero mejor contenidos */
.hero-home-brand-copy h1,
.hero-home-brand-copy > p {
  max-width: 720px !important;
}

/* Reduce el hueco entre logo/texto y video */
.hero-home-brand-grid {
  grid-template-columns: minmax(0, 0.95fr) minmax(520px, 0.95fr) !important;
  gap: 34px !important;
}

/* Acerca un poco el video al bloque izquierdo */
.hero-home-video-area {
  justify-self: start !important;
}

/* Ajuste fino para pantallas grandes */
@media (min-width: 1280px) {
  .hero-home-brand-copy {
    transform: translateX(28px) !important;
  }

  .hero-home-video-area {
    transform: translateX(-18px) !important;
  }
}


/* =========================================================
   PULIDO HERO V2 - MOVER LOGO UN POCO A LA IZQUIERDA
   ========================================================= */

@media (min-width: 1280px) {
  .hero-home-brand-copy {
    transform: translateX(-18px) !important;
  }

  .hero-home-video-area {
    transform: translateX(-18px) !important;
  }
}



/* =========================================================
   PULIDO NOSOTROS - CENTRAR CARDS Y RESPETAR ACROSTICO
   ========================================================= */

/* Centra el bloque completo de Misión, Visión y Valores */
.about-values-plates {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(300px, 390px)) !important;
  justify-content: center !important;
  gap: 28px !important;
  max-width: 1280px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Ajusta altura y lectura general de las cards */
.about-values-plates .about-plate-card {
  min-height: 560px !important;
  padding: 34px 34px 36px !important;
  text-align: center !important;
}

/* Misión y Visión centradas */
.about-values-plates .about-plate-card:not(.about-plate-values) p {
  max-width: 310px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  font-size: 1rem !important;
  line-height: 1.55 !important;
  text-align: center !important;
}

/* Valores: mantener título centrado */
.about-plate-values span {
  text-align: center !important;
}

/* Valores: el acróstico debe leerse como lista, no como párrafo centrado */
.about-acrostic {
  max-width: 330px !important;
  margin: 22px auto 0 !important;
  text-align: left !important;
}

/* Cada línea del acróstico */
.about-acrostic p {
  margin: 0 0 9px !important;
  font-size: 0.88rem !important;
  line-height: 1.35 !important;
  text-align: left !important;
  color: #4f6172 !important;
}

/* Letra + valor más fuerte */
.about-acrostic strong {
  color: #082f49 !important;
  font-weight: 800 !important;
}

/* Compactar un poco iconos para ganar espacio vertical */
.about-values-plates .about-plate-icon {
  margin-bottom: 22px !important;
}

.about-values-plates .about-plate-card span {
  margin-bottom: 18px !important;
}

/* Responsive */
@media (max-width: 1100px) {
  .about-values-plates {
    grid-template-columns: 1fr !important;
    max-width: 640px !important;
  }

  .about-values-plates .about-plate-card {
    min-height: auto !important;
  }

  .about-acrostic {
    max-width: 420px !important;
  }
}

/* =========================================================
   NOSOTROS - CARDS AZULES TIPO PLACA AMG
   Mision, Vision y Valores
   ========================================================= */

.about-values-plates {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(300px, 390px)) !important;
  justify-content: center !important;
  align-items: stretch !important;
  gap: 28px !important;
  max-width: 1280px !important;
  margin: 56px auto 0 !important;
}

.about-values-plates .about-plate-card {
  position: relative !important;
  min-height: 560px !important;
  padding: 92px 34px 38px !important;
  border-radius: 30px !important;
  border: 1px solid rgba(255, 255, 255, 0.45) !important;
  background:
    radial-gradient(circle at 50% 0%, rgba(0, 174, 199, 0.42), transparent 34%),
    linear-gradient(180deg, #007fa7 0%, #005b88 48%, #003f6d 100%) !important;
  box-shadow: 0 24px 55px rgba(8, 47, 73, 0.18) !important;
  color: #ffffff !important;
  text-align: center !important;
  overflow: visible !important;
}

/* Marco blanco exterior tipo placa */
.about-values-plates .about-plate-card::after {
  content: "" !important;
  position: absolute !important;
  inset: 12px !important;
  border-radius: 24px !important;
  border: 1px solid rgba(255, 255, 255, 0.26) !important;
  pointer-events: none !important;
}

/* Quitar barrita anterior */
.about-values-plates .about-plate-card::before {
  display: none !important;
}

/* Icono circular superior tipo placa */
.about-values-plates .about-plate-icon {
  position: absolute !important;
  top: -42px !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  width: 104px !important;
  height: 104px !important;
  margin: 0 !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: linear-gradient(180deg, #1fc4da 0%, #008bb8 100%) !important;
  box-shadow: 0 18px 34px rgba(8, 47, 73, 0.22) !important;
  border: 8px solid #ffffff !important;
  z-index: 3 !important;
}

.about-values-plates .about-plate-icon img {
  width: 54px !important;
  height: 54px !important;
  object-fit: contain !important;
  filter: brightness(0) invert(1) !important;
}

/* Titulo */
.about-values-plates .about-plate-card span {
  display: block !important;
  margin: 0 0 22px !important;
  font-size: 2rem !important;
  line-height: 1 !important;
  font-weight: 800 !important;
  letter-spacing: -0.03em !important;
  color: #ffffff !important;
  text-align: center !important;
  text-transform: uppercase !important;
}

/* Linea decorativa bajo titulo */
.about-values-plates .about-plate-card span::after {
  content: "" !important;
  display: block !important;
  width: 76px !important;
  height: 3px !important;
  margin: 18px auto 0 !important;
  border-radius: 999px !important;
  background: rgba(255, 255, 255, 0.75) !important;
}

/* Texto de Mision y Vision */
.about-values-plates .about-plate-card:not(.about-plate-values) p {
  max-width: 310px !important;
  margin: 0 auto !important;
  font-size: 1rem !important;
  line-height: 1.62 !important;
  color: rgba(255, 255, 255, 0.92) !important;
  text-align: center !important;
}

/* Valores: mantener acróstico legible, NO centrado */
.about-plate-values .about-acrostic {
  max-width: 330px !important;
  margin: 0 auto !important;
  text-align: left !important;
}

.about-plate-values .about-acrostic p {
  margin: 0 0 8px !important;
  font-size: 0.88rem !important;
  line-height: 1.34 !important;
  color: rgba(255, 255, 255, 0.90) !important;
  text-align: left !important;
}

.about-plate-values .about-acrostic strong {
  color: #ffffff !important;
  font-weight: 800 !important;
}

/* Letra inicial del acrostico mas visible */
.about-plate-values .about-acrostic strong::first-letter {
  color: #43d8e8 !important;
}

/* Responsive */
@media (max-width: 1100px) {
  .about-values-plates {
    grid-template-columns: 1fr !important;
    max-width: 620px !important;
    gap: 62px !important;
  }

  .about-values-plates .about-plate-card {
    min-height: auto !important;
  }

  .about-plate-values .about-acrostic {
    max-width: 420px !important;
  }
}


/* =========================================================
   RESPALDO REGULATORIO - PULIDO VISUAL
   Diferenciar la seccion de las cards operativas
   ========================================================= */

.regulatory-section {
  position: relative !important;
  overflow: hidden !important;
  background:
    radial-gradient(circle at 12% 20%, rgba(0, 174, 199, 0.10), transparent 30%),
    linear-gradient(180deg, #ffffff 0%, #f4fbfd 100%) !important;
}

.regulatory-section .section-heading {
  max-width: 980px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.regulatory-section .section-heading h2 {
  max-width: 880px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.regulatory-section .section-heading p {
  max-width: 980px !important;
}

.regulatory-cards {
  margin-top: 48px !important;
  align-items: stretch !important;
}

.regulatory-card {
  min-height: 330px !important;
  padding: 42px 28px 34px !important;
  border-radius: 26px !important;
  border: 1px solid rgba(0, 174, 199, 0.16) !important;
  background: rgba(255, 255, 255, 0.92) !important;
  box-shadow: 0 20px 45px rgba(8, 47, 73, 0.08) !important;
}

.regulatory-card::before {
  width: 74px !important;
  height: 4px !important;
  top: 28px !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
}

.regulatory-card .icon-circle {
  width: 76px !important;
  height: 76px !important;
  margin: 22px auto 26px !important;
  border-radius: 24px !important;
  background: rgba(0, 174, 199, 0.10) !important;
}

.regulatory-card .icon-circle img {
  width: 42px !important;
  height: 42px !important;
  object-fit: contain !important;
}

.regulatory-card h3 {
  max-width: 260px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  font-size: 1.28rem !important;
  line-height: 1.12 !important;
}

.regulatory-card p {
  max-width: 270px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  font-size: 0.98rem !important;
  line-height: 1.5 !important;
}

@media (max-width: 980px) {
  .regulatory-card {
    min-height: auto !important;
  }
}



/* =========================================================
   RESPALDO REGULATORIO - ICONOS MAS GRANDES
   ========================================================= */

.regulatory-card .icon-circle {
  width: 104px !important;
  height: 104px !important;
  border-radius: 30px !important;
}

.regulatory-card .icon-circle img {
  width: 64px !important;
  height: 64px !important;
  object-fit: contain !important;
}



/* =========================================================
   HERO V2 - ICONOS MAS GRANDES EN CARDS
   ========================================================= */

.hero-video-cards .hero-brand-card .hero-card-icon {
  width: 88px !important;
  height: 88px !important;
  border-radius: 26px !important;
}

.hero-video-cards .hero-brand-card .hero-card-icon img {
  width: 56px !important;
  height: 56px !important;
  object-fit: contain !important;
}

/* PREVIEW CODEX - Seccion Calidad visual */
.quality-section{
  padding:76px 0 84px !important;
  background:
    radial-gradient(circle at 14% 16%, rgba(0,174,202,.10), transparent 28%),
    linear-gradient(180deg, #ffffff 0%, #f4fbfd 100%) !important;
  overflow:hidden !important;
}

.quality-layout{
  display:grid !important;
  grid-template-columns:minmax(0,.92fr) minmax(420px,1.08fr) !important;
  gap:56px !important;
  align-items:center !important;
}

.quality-copy h2{
  max-width:12ch !important;
  margin:14px 0 22px !important;
  font-size:clamp(42px, 3.7vw, 64px) !important;
  line-height:1 !important;
  letter-spacing:-.045em !important;
  color:var(--azul) !important;
}

.quality-copy > p{
  max-width:52ch !important;
  margin:0 0 28px !important;
  font-size:18px !important;
  line-height:1.68 !important;
  color:var(--texto-suave) !important;
}

.quality-points{
  display:grid !important;
  gap:14px !important;
  max-width:560px !important;
  margin:0 0 22px !important;
}

.quality-points article{
  display:grid !important;
  grid-template-columns:5px 54px 1fr !important;
  column-gap:16px !important;
  align-items:center !important;
  padding:18px 20px !important;
  border:1px solid rgba(13,59,102,.10) !important;
  border-radius:22px !important;
  background:rgba(255,255,255,.88) !important;
  box-shadow:0 16px 34px rgba(8,47,73,.07) !important;
}

.quality-points article::before{
  content:"" !important;
  width:5px !important;
  min-height:100% !important;
  border-radius:999px !important;
  background:linear-gradient(180deg, var(--turquesa), var(--azul)) !important;
  align-self:stretch !important;
}

.quality-point-icon{
  display:block !important;
  width:54px !important;
  height:54px !important;
  padding:11px !important;
  border-radius:18px !important;
  background:rgba(0,174,202,.10) !important;
  object-fit:contain !important;
}

.quality-points strong{
  display:block !important;
  margin-bottom:5px !important;
  font-size:17px !important;
  line-height:1.2 !important;
  color:var(--azul) !important;
}

.quality-points span{
  display:block !important;
  font-size:15px !important;
  line-height:1.48 !important;
  color:var(--texto-suave) !important;
}

.quality-policy{
  max-width:640px !important;
  border-top:1px solid rgba(13,59,102,.14) !important;
  padding-top:18px !important;
}

.quality-policy summary{
  cursor:pointer !important;
  display:inline-flex !important;
  align-items:center !important;
  min-height:48px !important;
  padding:0 22px !important;
  border-radius:999px !important;
  background:var(--azul) !important;
  color:#ffffff !important;
  font-size:15px !important;
  font-weight:800 !important;
  box-shadow:0 16px 34px rgba(8,47,73,.18) !important;
}

.quality-policy p{
  margin:18px 0 0 !important;
  font-size:15px !important;
  line-height:1.65 !important;
  color:var(--texto-suave) !important;
}

.quality-media{
  position:relative !important;
  min-height:520px !important;
  border-radius:32px !important;
  overflow:hidden !important;
  background:#dff4f7 !important;
  box-shadow:0 30px 70px rgba(8,47,73,.16) !important;
}

.quality-media::before{
  content:"Calidad documentada" !important;
  position:absolute !important;
  left:28px !important;
  top:28px !important;
  z-index:2 !important;
  padding:12px 18px !important;
  border-radius:999px !important;
  background:rgba(8,47,73,.82) !important;
  color:#ffffff !important;
  font-size:14px !important;
  font-weight:800 !important;
}

.quality-media img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  min-height:520px !important;
  object-fit:cover !important;
  object-position:center !important;
}

@media (max-width: 980px){
  .quality-layout{
    grid-template-columns:1fr !important;
    gap:34px !important;
  }

  .quality-copy h2{
    max-width:none !important;
  }

  .quality-media,
  .quality-media img{
    min-height:360px !important;
  }
}

@media (max-width: 560px){
  .quality-section{
    padding:58px 0 64px !important;
  }

  .quality-copy h2{
    font-size:clamp(34px, 10vw, 44px) !important;
  }

  .quality-copy > p{
    font-size:16px !important;
  }

  .quality-points article{
    grid-template-columns:5px 48px 1fr !important;
    padding:16px 16px !important;
    border-radius:18px !important;
  }

  .quality-point-icon{
    width:48px !important;
    height:48px !important;
    padding:10px !important;
    border-radius:16px !important;
  }
}
/* END PREVIEW CODEX - Seccion Calidad visual */

/* PREVIEW CODEX - Instalaciones visual */

.operation-visual{
  padding:68px 0 58px !important;
  overflow:hidden !important;
  background:#ffffff !important;
}

.operation-visual-grid{
  display:grid !important;
  grid-template-columns:minmax(0, .82fr) minmax(0, 1.18fr) !important;
  gap:42px !important;
  align-items:center !important;
}

.operation-visual-copy{
  padding-top:0 !important;
}

.operation-visual-copy h2{
  max-width:620px !important;
  margin:10px 0 18px !important;
  font-size:clamp(34px, 3vw, 52px) !important;
  line-height:1.08 !important;
  letter-spacing:0 !important;
  color:var(--azul) !important;
}

.operation-visual-copy > p{
  max-width:62ch !important;
  margin:0 !important;
  font-size:17px !important;
  line-height:1.62 !important;
  color:var(--texto-suave) !important;
}

.operation-visual-copy > p + p{
  margin-top:14px !important;
}

.operation-kpis{
  display:grid !important;
  grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
  gap:12px !important;
  margin-top:24px !important;
}

.operation-kpi{
  display:grid !important;
  grid-template-columns:42px 1fr !important;
  gap:12px !important;
  align-items:center !important;
  min-height:92px !important;
  padding:14px 15px !important;
  border-left:4px solid var(--turquesa) !important;
  border-radius:8px !important;
  background:#f6fafb !important;
  box-shadow:none !important;
}

.operation-kpi img{
  width:42px !important;
  height:42px !important;
  object-fit:contain !important;
}

.operation-kpi strong{
  display:block !important;
  margin-bottom:5px !important;
  color:var(--azul) !important;
  font-size:16px !important;
  line-height:1.2 !important;
}

.operation-kpi span{
  display:block !important;
  color:var(--texto-suave) !important;
  font-size:14px !important;
  line-height:1.4 !important;
}

.operation-visual-media{
  display:grid !important;
  grid-template-columns:1.15fr .85fr !important;
  grid-template-rows:230px 230px !important;
  gap:10px !important;
}

.operation-photo-tile{
  position:relative !important;
  min-width:0 !important;
  margin:0 !important;
  overflow:hidden !important;
  border-radius:8px !important;
  background:#eef5f8 !important;
  box-shadow:0 18px 38px rgba(11,43,84,.12) !important;
}

.operation-photo-main{
  grid-row:1 / 3 !important;
}

.operation-photo-tile img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
}

.operation-photo-tile figcaption{
  position:absolute !important;
  left:12px !important;
  bottom:12px !important;
  padding:7px 10px !important;
  border-radius:8px !important;
  background:rgba(255,255,255,.92) !important;
  color:var(--azul) !important;
  font-size:13px !important;
  font-weight:800 !important;
  line-height:1 !important;
}

.operation-control-band{
  padding:46px 0 54px !important;
  background:#f6fafb !important;
}

.operation-control-band .support-mini-heading h2{
  max-width:760px !important;
  margin-left:auto !important;
  margin-right:auto !important;
  letter-spacing:0 !important;
}

.operation-control-band .support-mini-heading p{
  max-width:680px !important;
}

.operation-control-band .highlights-premium{
  gap:18px !important;
}

.operation-control-band .highlight-item-premium{
  min-height:auto !important;
  padding:22px 24px !important;
  gap:16px !important;
  border-radius:8px !important;
  box-shadow:0 14px 30px rgba(11,43,84,.07) !important;
}

.operation-control-band .highlight-item-premium::before{
  display:none !important;
}

.operation-control-band .highlight-item-premium img{
  width:58px !important;
  height:58px !important;
  margin:0 !important;
}

.operation-control-band .highlight-item-premium div{
  padding-top:0 !important;
}

.operation-control-band .highlight-item-premium h3{
  margin:0 0 8px !important;
  font-size:22px !important;
  line-height:1.12 !important;
  letter-spacing:0 !important;
}

.operation-control-band .highlight-item-premium p{
  max-width:none !important;
  margin:0 !important;
  font-size:15px !important;
  line-height:1.5 !important;
}

@media (max-width: 980px){
  .operation-visual-grid{
    grid-template-columns:1fr !important;
    gap:28px !important;
  }

  .operation-visual-media{
    grid-template-rows:220px 220px !important;
  }
}

@media (max-width: 680px){
  .operation-kpis{
    grid-template-columns:1fr !important;
  }

  .operation-visual-media{
    grid-template-columns:1fr !important;
    grid-template-rows:none !important;
  }

  .operation-photo-main{
    grid-row:auto !important;
  }

  .operation-photo-tile{
    min-height:220px !important;
  }

  .operation-control-band .highlight-item-premium{
    align-items:flex-start !important;
  }
}

/* END PREVIEW CODEX - Instalaciones visual */

/* PREVIEW CODEX - Soporte operativo integrado */

.operation-control-inline{
  margin-top:28px !important;
  padding-top:24px !important;
  border-top:1px solid rgba(13,59,102,.1) !important;
  display:grid !important;
  grid-template-columns:minmax(220px, .72fr) minmax(0, 1.28fr) !important;
  gap:24px !important;
  align-items:center !important;
}

.operation-control-intro .eyebrow{
  margin-bottom:8px !important;
}

.operation-control-intro h3{
  max-width:360px !important;
  margin:0 !important;
  color:var(--azul) !important;
  font-size:clamp(22px, 2vw, 32px) !important;
  line-height:1.12 !important;
  letter-spacing:0 !important;
}

.operation-control-items{
  display:grid !important;
  grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
  gap:12px !important;
}

.operation-control-items article{
  display:grid !important;
  grid-template-columns:48px 1fr !important;
  gap:12px !important;
  align-items:center !important;
  min-height:108px !important;
  padding:15px !important;
  border:1px solid rgba(13,59,102,.1) !important;
  border-radius:8px !important;
  background:#f6fafb !important;
  box-shadow:none !important;
}

.operation-control-items img{
  width:48px !important;
  height:48px !important;
  object-fit:contain !important;
}

.operation-control-items h3{
  margin:0 0 5px !important;
  color:var(--azul) !important;
  font-size:17px !important;
  line-height:1.15 !important;
  letter-spacing:0 !important;
}

.operation-control-items p{
  margin:0 !important;
  color:var(--texto-suave) !important;
  font-size:13.5px !important;
  line-height:1.36 !important;
}

@media (max-width: 980px){
  .operation-control-inline{
    grid-template-columns:1fr !important;
    gap:18px !important;
  }

  .operation-control-intro h3{
    max-width:none !important;
  }
}

@media (max-width: 760px){
  .operation-control-items{
    grid-template-columns:1fr !important;
  }
}

/* END PREVIEW CODEX - Soporte operativo integrado */

/* PREVIEW CODEX - Equipo y soporte refinado */

.team-support-refined{
  padding:64px 0 70px !important;
  background:#ffffff !important;
}

.team-refined-grid{
  display:grid !important;
  grid-template-columns:minmax(0, 1.05fr) minmax(0, .95fr) !important;
  gap:42px !important;
  align-items:center !important;
}

.team-refined-media{
  margin:0 !important;
  border-radius:8px !important;
  overflow:hidden !important;
  background:#eef5f8 !important;
  box-shadow:0 22px 46px rgba(11,43,84,.12) !important;
}

.team-refined-media img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  min-height:430px !important;
  object-fit:cover !important;
}

.team-refined-copy h2{
  max-width:640px !important;
  margin:12px 0 16px !important;
  color:var(--azul) !important;
  font-size:clamp(32px, 3vw, 52px) !important;
  line-height:1.05 !important;
  letter-spacing:0 !important;
}

.team-refined-copy > p{
  max-width:62ch !important;
  margin:0 !important;
  color:var(--texto-suave) !important;
  font-size:17px !important;
  line-height:1.62 !important;
}

.team-support-points{
  display:grid !important;
  gap:12px !important;
  margin-top:24px !important;
}

.team-support-points article{
  display:grid !important;
  grid-template-columns:52px 1fr !important;
  gap:14px !important;
  align-items:center !important;
  padding:15px 16px !important;
  border:1px solid rgba(13,59,102,.1) !important;
  border-left:4px solid var(--turquesa) !important;
  border-radius:8px !important;
  background:#f6fafb !important;
}

.team-support-points img{
  width:52px !important;
  height:52px !important;
  object-fit:contain !important;
}

.team-support-points h3{
  margin:0 0 5px !important;
  color:var(--azul) !important;
  font-size:18px !important;
  line-height:1.18 !important;
  letter-spacing:0 !important;
}

.team-support-points p{
  margin:0 !important;
  color:var(--texto-suave) !important;
  font-size:14px !important;
  line-height:1.42 !important;
}

@media (max-width: 980px){
  .team-refined-grid{
    grid-template-columns:1fr !important;
    gap:28px !important;
  }

  .team-refined-media{
    order:2 !important;
  }

  .team-refined-copy{
    order:1 !important;
  }

  .team-refined-media img{
    min-height:340px !important;
  }
}

@media (max-width: 560px){
  .team-support-refined{
    padding:52px 0 58px !important;
  }

  .team-support-points article{
    grid-template-columns:46px 1fr !important;
    padding:14px !important;
  }

  .team-support-points img{
    width:46px !important;
    height:46px !important;
  }
}

/* END PREVIEW CODEX - Equipo y soporte refinado */

/* PREVIEW CODEX - Contacto funcional */

.contact-section-refined{
  padding:62px 0 46px !important;
  background:#f6fafb !important;
}

.contact-refined-grid{
  display:grid !important;
  grid-template-columns:minmax(0, .9fr) minmax(0, 1.1fr) !important;
  gap:42px !important;
  align-items:center !important;
}

.contact-refined-copy h2{
  max-width:640px !important;
  margin:12px 0 16px !important;
  color:var(--azul) !important;
  font-size:clamp(34px, 3.2vw, 56px) !important;
  line-height:1.04 !important;
  letter-spacing:0 !important;
}

.contact-refined-copy > p{
  max-width:56ch !important;
  margin:0 !important;
  color:var(--texto-suave) !important;
  font-size:17px !important;
  line-height:1.62 !important;
}

.contact-actions{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:12px !important;
  margin-top:24px !important;
}

.contact-primary-action,
.contact-secondary-action{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:52px !important;
  padding:0 22px !important;
  border-radius:8px !important;
  font-size:15px !important;
  font-weight:800 !important;
  text-decoration:none !important;
}

.contact-primary-action{
  background:var(--azul) !important;
  color:#ffffff !important;
  box-shadow:0 14px 28px rgba(11,43,84,.16) !important;
}

.contact-secondary-action{
  border:1px solid rgba(13,59,102,.18) !important;
  background:#ffffff !important;
  color:var(--azul) !important;
}

.contact-request-panel{
  display:grid !important;
  gap:16px !important;
}

.contact-request-head{
  display:grid !important;
  gap:6px !important;
}

.contact-request-head span{
  color:var(--turquesa) !important;
  font-size:13px !important;
  font-weight:800 !important;
  letter-spacing:.08em !important;
  text-transform:uppercase !important;
}

.contact-request-head strong{
  max-width:520px !important;
  color:var(--azul) !important;
  font-size:24px !important;
  line-height:1.18 !important;
}

.contact-channel-grid{
  display:grid !important;
  grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
  gap:12px !important;
}

.contact-channel-card{
  display:grid !important;
  grid-template-columns:52px 1fr !important;
  gap:14px !important;
  align-items:center !important;
  min-height:104px !important;
  padding:16px !important;
  border:1px solid rgba(13,59,102,.1) !important;
  border-radius:8px !important;
  background:#ffffff !important;
  box-shadow:0 14px 30px rgba(11,43,84,.07) !important;
}

.contact-channel-card-wide{
  grid-column:1 / -1 !important;
}

.contact-channel-card img{
  width:52px !important;
  height:52px !important;
  object-fit:contain !important;
}

.contact-channel-card strong{
  display:block !important;
  margin-bottom:5px !important;
  color:var(--azul) !important;
  font-size:17px !important;
  line-height:1.18 !important;
}

.contact-channel-card a{
  color:var(--texto-suave) !important;
  font-size:15px !important;
  line-height:1.42 !important;
  text-decoration:none !important;
}

.contact-channel-card a:hover{
  color:var(--azul) !important;
}

.contact-request-note{
  margin:2px 0 0 !important;
  padding:12px 14px !important;
  border-left:4px solid var(--turquesa) !important;
  border-radius:8px !important;
  background:#ffffff !important;
  color:var(--texto-suave) !important;
  font-size:14px !important;
  line-height:1.45 !important;
}

@media (max-width: 980px){
  .contact-refined-grid{
    grid-template-columns:1fr !important;
    gap:30px !important;
  }
}

@media (max-width: 640px){
  .contact-section-refined{
    padding:52px 0 36px !important;
  }

  .contact-actions,
  .contact-primary-action,
  .contact-secondary-action{
    width:100% !important;
  }

  .contact-channel-grid{
    grid-template-columns:1fr !important;
  }

  .contact-channel-card{
    grid-template-columns:46px 1fr !important;
    padding:14px !important;
  }

  .contact-channel-card img{
    width:46px !important;
    height:46px !important;
  }
}

/* END PREVIEW CODEX - Contacto funcional */

/* PREVIEW CODEX - Farmacovigilancia informacion desplegable */

.pharmacovigilance-info{
  border:1px solid rgba(13,59,102,.12) !important;
  border-radius:8px !important;
  background:#ffffff !important;
  overflow:hidden !important;
}

.pharmacovigilance-info summary{
  min-height:54px !important;
  padding:0 18px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:14px !important;
  color:var(--azul) !important;
  font-size:15px !important;
  font-weight:800 !important;
  cursor:pointer !important;
  list-style:none !important;
}

.pharmacovigilance-info summary::-webkit-details-marker{
  display:none !important;
}

.pharmacovigilance-info summary::after{
  content:"+" !important;
  width:28px !important;
  height:28px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  flex:0 0 auto !important;
  border-radius:50% !important;
  background:#e8f8fa !important;
  color:var(--azul) !important;
  font-size:20px !important;
  line-height:1 !important;
}

.pharmacovigilance-info[open] summary::after{
  content:"-" !important;
}

.pharmacovigilance-info-content{
  padding:0 18px 18px !important;
  border-top:1px solid rgba(13,59,102,.08) !important;
}

.pharmacovigilance-info-lead{
  display:grid !important;
  grid-template-columns:minmax(0, 1fr) 170px !important;
  gap:16px !important;
  align-items:center !important;
}

.pharmacovigilance-mascot{
  margin:14px 0 0 !important;
  align-self:start !important;
}

.pharmacovigilance-mascot img{
  display:block !important;
  width:100% !important;
  max-width:170px !important;
  height:auto !important;
  border-radius:8px !important;
  background:#ffffff !important;
}

.pharmacovigilance-info-content h3{
  margin:18px 0 8px !important;
  color:var(--azul) !important;
  font-size:18px !important;
  line-height:1.18 !important;
  letter-spacing:0 !important;
}

.pharmacovigilance-info-content p,
.pharmacovigilance-info-content li{
  color:var(--texto-suave) !important;
  font-size:14px !important;
  line-height:1.5 !important;
}

.pharmacovigilance-info-content p{
  margin:0 0 12px !important;
}

.pharmacovigilance-info-content ul{
  margin:0 0 14px 18px !important;
  padding:0 !important;
}

.pharmacovigilance-info-content li{
  margin:0 0 6px !important;
}

.pharmacovigilance-info-content a{
  color:var(--turquesa) !important;
  font-weight:800 !important;
  text-decoration:none !important;
}

.pharmacovigilance-alert{
  padding:10px 12px !important;
  border-left:4px solid #d93025 !important;
  border-radius:8px !important;
  background:#fff4f3 !important;
  color:#b3261e !important;
  font-weight:800 !important;
}

@media (max-width: 560px){
  .pharmacovigilance-info-lead{
    grid-template-columns:1fr !important;
  }

  .pharmacovigilance-mascot{
    display:none !important;
  }
}

/* END PREVIEW CODEX - Farmacovigilancia informacion desplegable */

/* PREVIEW CODEX - Inicio y Nosotros alineados */

.hero-brand-logo{
  opacity:0;
  transform:translateY(10px) scale(.985);
  animation:amgLogoSlowReveal 3s cubic-bezier(.22, .72, .2, 1) .25s forwards !important;
}

@keyframes amgLogoSlowReveal{
  0%{
    opacity:0;
    transform:translateY(10px) scale(.985);
    filter:blur(7px);
  }

  42%{
    opacity:.45;
    transform:translateY(5px) scale(.992);
    filter:blur(3px);
  }

  100%{
    opacity:1;
    transform:translateY(0) scale(1);
    filter:blur(0);
  }
}

.hero-home-brand-copy h1,
.hero-home-brand-copy > p{
  letter-spacing:0 !important;
}

.hero-video-cards .hero-brand-card{
  min-height:126px !important;
  border-radius:8px !important;
  padding:20px 18px !important;
}

.hero-video-cards .hero-brand-card::before{
  left:18px !important;
}

.hero-video-cards .hero-brand-card h3{
  letter-spacing:0 !important;
}

.about{
  padding-top:64px !important;
}

.about-grid{
  gap:42px !important;
  align-items:center !important;
}

.about-copy h2{
  max-width:720px !important;
  letter-spacing:0 !important;
}

.about-copy p{
  max-width:66ch !important;
}

.about-mosaic-premium{
  border-radius:8px !important;
  box-shadow:0 20px 46px rgba(11,43,84,.11) !important;
}

.about-mosaic-premium img{
  border-radius:8px !important;
}

.about-mosaic-direct{
  display:grid !important;
  grid-template-columns:1.35fr .85fr !important;
  grid-template-rows:repeat(3, 150px) !important;
  gap:10px !important;
  max-width:760px !important;
  margin-left:auto !important;
  border-radius:8px !important;
  overflow:hidden !important;
  box-shadow:0 20px 46px rgba(11,43,84,.11) !important;
  background:#ffffff !important;
}

.about-mosaic-direct-item{
  margin:0 !important;
  min-width:0 !important;
  min-height:0 !important;
  overflow:hidden !important;
  border-radius:0 !important;
}

.about-mosaic-direct-main{
  grid-row:span 3 !important;
}

.about-mosaic-direct-item img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
}

@media (max-width: 900px){
  .about-mosaic-direct{
    grid-template-columns:1fr !important;
    grid-template-rows:auto !important;
  }

  .about-mosaic-direct-main{
    grid-row:auto !important;
  }

  .about-mosaic-direct-item{
    aspect-ratio:16 / 10 !important;
  }
}

.about-values-plates{
  grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
  gap:18px !important;
  max-width:1280px !important;
  margin:42px auto 0 !important;
}

.about-values-plates .about-plate-card{
  min-height:auto !important;
  padding:28px 24px 26px !important;
  border:1px solid rgba(13,59,102,.1) !important;
  border-radius:8px !important;
  background:#ffffff !important;
  box-shadow:0 16px 34px rgba(11,43,84,.07) !important;
  color:var(--azul) !important;
  text-align:left !important;
  overflow:hidden !important;
}

.about-values-plates .about-plate-card::after{
  display:none !important;
}

.about-values-plates .about-plate-card::before{
  content:"" !important;
  display:block !important;
  position:absolute !important;
  top:0 !important;
  left:24px !important;
  width:74px !important;
  height:4px !important;
  border-radius:0 0 999px 999px !important;
  background:linear-gradient(90deg, var(--turquesa), var(--azul)) !important;
}

.about-values-plates .about-plate-icon{
  position:static !important;
  transform:none !important;
  width:58px !important;
  height:58px !important;
  margin:0 0 18px !important;
  border:0 !important;
  border-radius:8px !important;
  background:#e8f8fa !important;
  box-shadow:none !important;
}

.about-values-plates .about-plate-icon img{
  width:34px !important;
  height:34px !important;
  filter:none !important;
}

.about-values-plates .about-plate-card span{
  margin:0 0 14px !important;
  color:var(--azul) !important;
  font-size:24px !important;
  line-height:1.1 !important;
  letter-spacing:0 !important;
  text-align:left !important;
  text-transform:none !important;
}

.about-values-plates .about-plate-card span::after{
  display:none !important;
}

.about-values-plates .about-plate-card:not(.about-plate-values) p{
  max-width:none !important;
  margin:0 !important;
  color:var(--texto-suave) !important;
  font-size:15px !important;
  line-height:1.5 !important;
  text-align:left !important;
}

.about-plate-values .about-acrostic{
  max-width:none !important;
  margin:0 !important;
}

.about-plate-values .about-acrostic p{
  margin:0 0 7px !important;
  color:var(--texto-suave) !important;
  font-size:13.5px !important;
  line-height:1.34 !important;
  text-align:left !important;
}

.about-plate-values .about-acrostic strong{
  color:var(--azul) !important;
}

.about-plate-values .about-acrostic strong::first-letter{
  color:var(--turquesa) !important;
}

@media (max-width: 1100px){
  .about-values-plates{
    grid-template-columns:1fr !important;
    max-width:680px !important;
    gap:16px !important;
  }
}

@media (max-width: 640px){
  .hero-brand-logo{
    animation-duration:2.4s !important;
  }

  .about{
    padding-top:52px !important;
  }
}

@media (prefers-reduced-motion: reduce){
  .hero-brand-logo{
    opacity:1 !important;
    transform:none !important;
    animation:none !important;
    filter:none !important;
  }
}

/* END PREVIEW CODEX - Inicio y Nosotros alineados */

/* PREVIEW CODEX - Nosotros cards pulidas preservando acrostico */

.about-values-plates{
  display:grid !important;
  grid-template-columns:minmax(0, .92fr) minmax(0, .92fr) minmax(340px, 1.16fr) !important;
  gap:20px !important;
  align-items:stretch !important;
  max-width:1280px !important;
  margin:44px auto 0 !important;
}

.about-values-plates .about-plate-card{
  position:relative !important;
  min-height:0 !important;
  height:auto !important;
  padding:28px 24px 26px !important;
  border:1px solid rgba(13,59,102,.1) !important;
  border-radius:8px !important;
  background:#ffffff !important;
  box-shadow:0 16px 34px rgba(11,43,84,.07) !important;
  color:var(--azul) !important;
  text-align:left !important;
  overflow:hidden !important;
}

.about-values-plates .about-plate-card::after{
  display:none !important;
}

.about-values-plates .about-plate-card::before{
  content:"" !important;
  display:block !important;
  position:absolute !important;
  top:0 !important;
  left:24px !important;
  width:78px !important;
  height:4px !important;
  border-radius:0 0 999px 999px !important;
  background:linear-gradient(90deg, var(--turquesa), var(--azul)) !important;
}

.about-values-plates .about-plate-icon{
  position:static !important;
  transform:none !important;
  width:60px !important;
  height:60px !important;
  margin:0 0 18px !important;
  border:0 !important;
  border-radius:8px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:#e8f8fa !important;
  box-shadow:none !important;
}

.about-values-plates .about-plate-icon img{
  width:36px !important;
  height:36px !important;
  object-fit:contain !important;
  filter:none !important;
}

.about-values-plates .about-plate-card span{
  display:block !important;
  margin:0 0 14px !important;
  color:var(--azul) !important;
  font-size:24px !important;
  line-height:1.12 !important;
  font-weight:800 !important;
  letter-spacing:0 !important;
  text-align:left !important;
  text-transform:none !important;
}

.about-values-plates .about-plate-card span::after{
  display:none !important;
}

.about-values-plates .about-plate-card:not(.about-plate-values) p{
  max-width:none !important;
  margin:0 !important;
  color:var(--texto-suave) !important;
  font-size:15px !important;
  line-height:1.54 !important;
  text-align:left !important;
}

.about-plate-values .about-acrostic{
  max-width:none !important;
  margin:0 !important;
  display:grid !important;
  gap:7px !important;
}

.about-plate-values .about-acrostic p{
  margin:0 !important;
  color:var(--texto-suave) !important;
  font-size:13.5px !important;
  line-height:1.34 !important;
  text-align:left !important;
}

.about-plate-values .about-acrostic strong{
  display:inline !important;
  color:var(--azul) !important;
  font-weight:800 !important;
}

.about-plate-values .about-acrostic strong::first-letter{
  color:var(--turquesa) !important;
}

@media (max-width: 1180px){
  .about-values-plates{
    grid-template-columns:1fr !important;
    max-width:720px !important;
    gap:16px !important;
  }

  .about-plate-values .about-acrostic p{
    font-size:14px !important;
  }
}

/* END PREVIEW CODEX - Nosotros cards pulidas preservando acrostico */

/* PREVIEW CODEX - Logo inicio AMG + Pharma por etapas */

.hero-brand-logo.hero-brand-logo-staged{
  position:relative !important;
  opacity:1 !important;
  transform:none !important;
  animation:none !important;
  overflow:visible !important;
  isolation:isolate;
}

.hero-brand-logo-staged .hero-logo-accessible{
  display:block !important;
  width:100% !important;
  height:auto !important;
  opacity:0 !important;
  filter:none !important;
}

.hero-logo-stage{
  position:absolute;
  inset:0;
  display:block;
  pointer-events:none;
  opacity:0;
  will-change:opacity, transform, clip-path;
}

.hero-logo-stage img{
  display:block !important;
  width:100% !important;
  height:auto !important;
  filter:none !important;
}

.hero-logo-stage-amg{
  clip-path:inset(0 100% 44% 0);
  transform:translateY(10px) scale(.992);
  animation:amgLogoWordReveal 1.55s cubic-bezier(.18, .82, .22, 1) .18s forwards;
}

.hero-logo-stage-pharma{
  clip-path:inset(82% 0 0 0);
  transform:translateY(15px);
  animation:amgLogoPharmaReveal 1.45s cubic-bezier(.18, .82, .22, 1) 1.05s forwards;
}

@keyframes amgLogoWordReveal{
  0%{
    opacity:0;
    clip-path:inset(0 100% 44% 0);
    transform:translateY(10px) scale(.992);
  }

  35%{
    opacity:1;
  }

  100%{
    opacity:1;
    clip-path:inset(0 0 44% 0);
    transform:translateY(0) scale(1);
  }
}

@keyframes amgLogoPharmaReveal{
  0%{
    opacity:0;
    clip-path:inset(82% 0 0 0);
    transform:translateY(15px);
  }

  28%{
    opacity:1;
  }

  100%{
    opacity:1;
    clip-path:inset(42% 0 0 0);
    transform:translateY(0);
  }
}

@media (max-width:640px){
  .hero-logo-stage-amg{
    animation-duration:1.25s;
  }

  .hero-logo-stage-pharma{
    animation-duration:1.2s;
    animation-delay:.86s;
  }
}

@media (prefers-reduced-motion:reduce){
  .hero-logo-stage{
    opacity:1 !important;
    transform:none !important;
    animation:none !important;
  }

  .hero-logo-stage-amg{
    clip-path:inset(0 0 44% 0) !important;
  }

  .hero-logo-stage-pharma{
    clip-path:inset(42% 0 0 0) !important;
  }
}

/* END PREVIEW CODEX - Logo inicio AMG + Pharma por etapas */

/* PREVIEW CODEX - Areas de especialidad refinadas */

.specialty-areas-refined{
  padding:0 !important;
  background:#ffffff !important;
}

.specialty-panel-refined{
  padding:62px 0 70px !important;
  background:
    linear-gradient(90deg, rgba(23,184,197,.12) 0, rgba(23,184,197,.04) 34%, rgba(255,255,255,0) 62%),
    linear-gradient(180deg, #f7fbfc 0%, #ffffff 100%) !important;
  border-top:1px solid rgba(8,56,96,.08);
  border-bottom:1px solid rgba(8,56,96,.08);
}

.specialty-heading-refined{
  display:grid !important;
  grid-template-columns:minmax(0, 1fr) auto !important;
  gap:28px !important;
  align-items:end !important;
  margin-bottom:30px !important;
}

.specialty-heading-refined .section-heading{
  max-width:760px !important;
  margin:0 !important;
  text-align:left !important;
}

.specialty-heading-refined .section-heading h2{
  max-width:700px !important;
  margin-left:0 !important;
}

.specialty-heading-refined .section-heading p{
  max-width:720px !important;
  margin-left:0 !important;
}

.specialty-route{
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  padding:12px 14px !important;
  border:1px solid rgba(8,56,96,.12) !important;
  border-radius:8px !important;
  background:#ffffff !important;
  box-shadow:0 14px 34px rgba(11,52,84,.07) !important;
  white-space:nowrap !important;
}

.specialty-route span{
  display:inline-flex !important;
  align-items:center !important;
  min-height:30px !important;
  padding:0 10px !important;
  border-radius:6px !important;
  font-size:13px !important;
  line-height:1 !important;
  font-weight:800 !important;
  color:var(--azul) !important;
  background:#f2f8fa !important;
}

.specialty-route i{
  width:28px !important;
  height:2px !important;
  background:linear-gradient(90deg, var(--turquesa), rgba(8,56,96,.55)) !important;
}

.specialty-grid-refined{
  display:grid !important;
  grid-template-columns:repeat(4, minmax(0, 1fr)) !important;
  gap:18px !important;
  align-items:stretch !important;
}

.specialty-card-refined{
  position:relative !important;
  min-height:360px !important;
  padding:48px 34px 38px !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:flex-start !important;
  text-align:center !important;
  border-radius:28px !important;
  border:1px solid rgba(23,184,197,.22) !important;
  background:#ffffff !important;
  box-shadow:0 24px 52px rgba(11,52,84,.08) !important;
  overflow:hidden !important;
}

.specialty-card-refined::before{
  content:"" !important;
  position:absolute !important;
  top:26px !important;
  left:50% !important;
  right:auto !important;
  width:82px !important;
  height:5px !important;
  transform:translateX(-50%) !important;
  border-radius:999px !important;
  background:linear-gradient(90deg, var(--turquesa), var(--azul)) !important;
}

.specialty-card-refined .icon-circle{
  width:118px !important;
  height:118px !important;
  min-width:118px !important;
  margin:30px auto 28px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  border-radius:28px !important;
  background:rgba(23,184,197,.12) !important;
  border:none !important;
  box-shadow:none !important;
}

.specialty-card-refined .icon-circle img{
  width:86px !important;
  height:86px !important;
  max-width:86px !important;
  object-fit:contain !important;
  display:block !important;
}

.specialty-card-refined h3{
  margin:0 auto 14px !important;
  max-width:270px !important;
  font-size:25px !important;
  line-height:1.08 !important;
  font-weight:850 !important;
  color:var(--azul) !important;
  text-align:center !important;
}

.specialty-card-refined p{
  margin:0 auto !important;
  max-width:30ch !important;
  font-size:16px !important;
  line-height:1.42 !important;
  color:var(--texto-suave) !important;
  text-align:center !important;
}

@media (max-width:1100px){
  .specialty-heading-refined{
    grid-template-columns:1fr !important;
    align-items:start !important;
  }

  .specialty-route{
    width:max-content !important;
    max-width:100% !important;
  }

  .specialty-grid-refined{
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width:700px){
  .specialty-panel-refined{
    padding:48px 0 56px !important;
  }

  .specialty-route{
    width:100% !important;
    justify-content:space-between !important;
    gap:6px !important;
    overflow:hidden !important;
  }

  .specialty-route span{
    padding:0 7px !important;
    font-size:12px !important;
  }

  .specialty-route i{
    width:16px !important;
  }

  .specialty-grid-refined{
    grid-template-columns:1fr !important;
  }

  .specialty-card-refined{
    min-height:auto !important;
    padding:46px 24px 30px !important;
  }

  .specialty-card-refined .icon-circle{
    width:104px !important;
    height:104px !important;
    min-width:104px !important;
    margin-bottom:22px !important;
  }

  .specialty-card-refined .icon-circle img{
    width:78px !important;
    height:78px !important;
    max-width:78px !important;
  }

  .specialty-card-refined h3{
    font-size:23px !important;
  }
}

/* END PREVIEW CODEX - Areas de especialidad refinadas */

/* PREVIEW CODEX - Respaldo regulatorio con imagen pharma */

.regulatory-section-pharma{
  padding:72px 0 76px !important;
  background:
    radial-gradient(circle at 10% 12%, rgba(23,184,197,.11), transparent 30%),
    linear-gradient(180deg, #ffffff 0%, #f4fbfd 100%) !important;
}

.regulatory-pharma-layout{
  display:grid !important;
  grid-template-columns:minmax(0, .95fr) minmax(420px, .72fr) !important;
  gap:34px !important;
  align-items:stretch !important;
  margin-bottom:42px !important;
}

.regulatory-pharma-copy{
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  min-width:0 !important;
}

.regulatory-pharma-copy .section-heading{
  max-width:850px !important;
  margin:0 0 26px !important;
  text-align:left !important;
}

.regulatory-pharma-copy .section-heading h2,
.regulatory-pharma-copy .section-heading p{
  margin-left:0 !important;
  margin-right:0 !important;
}

.regulatory-pharma-copy .section-heading h2{
  max-width:760px !important;
}

.regulatory-pharma-copy .section-heading p{
  max-width:900px !important;
}

.regulatory-route{
  display:flex !important;
  align-items:center !important;
  gap:9px !important;
  width:max-content !important;
  max-width:100% !important;
  padding:12px 14px !important;
  border-radius:8px !important;
  border:1px solid rgba(8,56,96,.12) !important;
  background:#ffffff !important;
  box-shadow:0 14px 34px rgba(11,52,84,.07) !important;
  white-space:nowrap !important;
}

.regulatory-route span{
  display:inline-flex !important;
  align-items:center !important;
  min-height:30px !important;
  padding:0 10px !important;
  border-radius:6px !important;
  font-size:13px !important;
  line-height:1 !important;
  font-weight:800 !important;
  color:var(--azul) !important;
  background:#f2f8fa !important;
}

.regulatory-route i{
  width:24px !important;
  height:2px !important;
  background:linear-gradient(90deg, var(--turquesa), rgba(8,56,96,.55)) !important;
}

.regulatory-pharma-visual{
  position:relative !important;
  min-height:365px !important;
  margin:0 !important;
  border-radius:8px !important;
  overflow:hidden !important;
  border:1px solid rgba(23,184,197,.22) !important;
  box-shadow:0 28px 60px rgba(11,52,84,.12) !important;
  background:#dfeff2 !important;
}

.regulatory-pharma-visual img{
  width:100% !important;
  height:100% !important;
  min-height:365px !important;
  object-fit:cover !important;
  object-position:center !important;
  display:block !important;
}

.regulatory-pharma-visual::after{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  background:linear-gradient(180deg, rgba(0,0,0,0) 42%, rgba(5,35,58,.58) 100%) !important;
  pointer-events:none !important;
}

.regulatory-pharma-visual figcaption{
  position:absolute !important;
  left:22px !important;
  right:22px !important;
  bottom:20px !important;
  z-index:1 !important;
  display:flex !important;
  flex-direction:column !important;
  gap:3px !important;
  padding:16px 18px !important;
  border-radius:8px !important;
  background:rgba(255,255,255,.94) !important;
  box-shadow:0 16px 34px rgba(0,0,0,.14) !important;
}

.regulatory-pharma-visual figcaption strong{
  color:var(--azul) !important;
  font-size:18px !important;
  line-height:1.1 !important;
  font-weight:850 !important;
}

.regulatory-pharma-visual figcaption span{
  color:var(--texto-suave) !important;
  font-size:14px !important;
  line-height:1.3 !important;
}

.regulatory-cards-refined{
  margin-top:0 !important;
  display:grid !important;
  grid-template-columns:repeat(4, minmax(0, 1fr)) !important;
  gap:18px !important;
  align-items:stretch !important;
}

.regulatory-card-refined{
  min-height:350px !important;
  padding:46px 30px 36px !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:flex-start !important;
  text-align:center !important;
  border-radius:28px !important;
  border:1px solid rgba(23,184,197,.22) !important;
  background:#ffffff !important;
  box-shadow:0 24px 52px rgba(11,52,84,.08) !important;
}

.regulatory-card-refined::before{
  width:82px !important;
  height:5px !important;
  top:26px !important;
  left:50% !important;
  transform:translateX(-50%) !important;
  border-radius:999px !important;
  background:linear-gradient(90deg, var(--turquesa), var(--azul)) !important;
}

.regulatory-card-refined .icon-circle{
  width:112px !important;
  height:112px !important;
  min-width:112px !important;
  margin:30px auto 26px !important;
  border-radius:28px !important;
  background:rgba(23,184,197,.12) !important;
  border:none !important;
  box-shadow:none !important;
}

.regulatory-card-refined .icon-circle img{
  width:68px !important;
  height:68px !important;
  object-fit:contain !important;
}

.regulatory-card-refined h3{
  max-width:270px !important;
  margin:0 auto 14px !important;
  font-size:24px !important;
  line-height:1.1 !important;
  font-weight:850 !important;
  color:var(--azul) !important;
  text-align:center !important;
}

.regulatory-card-refined p{
  max-width:31ch !important;
  margin:0 auto !important;
  font-size:16px !important;
  line-height:1.43 !important;
  color:var(--texto-suave) !important;
  text-align:center !important;
}

@media (max-width:1180px){
  .regulatory-pharma-layout{
    grid-template-columns:1fr !important;
  }

  .regulatory-pharma-visual{
    min-height:330px !important;
  }

  .regulatory-pharma-visual img{
    min-height:330px !important;
  }

  .regulatory-cards-refined{
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width:700px){
  .regulatory-section-pharma{
    padding:54px 0 58px !important;
  }

  .regulatory-route{
    width:100% !important;
    gap:5px !important;
    overflow:hidden !important;
  }

  .regulatory-route span{
    padding:0 7px !important;
    font-size:11.5px !important;
  }

  .regulatory-route i{
    width:10px !important;
  }

  .regulatory-pharma-visual{
    min-height:280px !important;
  }

  .regulatory-pharma-visual img{
    min-height:280px !important;
  }

  .regulatory-pharma-visual figcaption{
    left:14px !important;
    right:14px !important;
    bottom:14px !important;
  }

  .regulatory-cards-refined{
    grid-template-columns:1fr !important;
  }

  .regulatory-card-refined{
    min-height:auto !important;
    padding:44px 24px 30px !important;
  }
}

/* END PREVIEW CODEX - Respaldo regulatorio con imagen pharma */

/* PREVIEW CODEX - Pulido final desktop institucional */

.hero-video-label strong{
  letter-spacing:0 !important;
}

.institutional-close{
  padding:34px 0 !important;
  background:
    linear-gradient(90deg, rgba(23,184,197,.10), rgba(255,255,255,0) 48%),
    #ffffff !important;
  border-top:1px solid rgba(8,56,96,.08) !important;
  border-bottom:1px solid rgba(8,56,96,.08) !important;
}

.institutional-close-grid{
  display:grid !important;
  grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
  gap:18px !important;
}

.institutional-close-card{
  display:grid !important;
  grid-template-columns:72px minmax(0, 1fr) !important;
  gap:18px !important;
  align-items:center !important;
  min-height:126px !important;
  padding:22px 24px !important;
  border:1px solid rgba(8,56,96,.10) !important;
  border-radius:8px !important;
  background:#ffffff !important;
  box-shadow:0 18px 38px rgba(11,52,84,.07) !important;
}

.institutional-close-card img{
  width:72px !important;
  height:72px !important;
  object-fit:contain !important;
  padding:13px !important;
  border-radius:8px !important;
  background:rgba(23,184,197,.12) !important;
}

.institutional-close-card strong{
  display:block !important;
  margin:0 0 7px !important;
  color:var(--azul) !important;
  font-size:20px !important;
  line-height:1.12 !important;
  font-weight:850 !important;
}

.institutional-close-card span{
  display:block !important;
  color:var(--texto-suave) !important;
  font-size:15px !important;
  line-height:1.4 !important;
}

.site-footer .footer-brand-text p{
  margin:0 0 10px !important;
}

.site-footer .footer-brand-text p:last-child{
  margin-bottom:0 !important;
}

.footer-legal{
  display:flex !important;
  justify-content:space-between !important;
  align-items:center !important;
  gap:18px !important;
  padding:18px 0 0 !important;
  margin-top:24px !important;
  border-top:1px solid rgba(255,255,255,.16) !important;
  color:rgba(255,255,255,.72) !important;
  font-size:14px !important;
  line-height:1.4 !important;
}

.footer-privacy-link{
  color:rgba(255,255,255,.82) !important;
}

@media (max-width:1000px){
  .institutional-close-grid{
    grid-template-columns:1fr !important;
  }
}

@media (max-width:700px){
  .institutional-close-card{
    grid-template-columns:58px minmax(0, 1fr) !important;
    padding:18px !important;
  }

  .institutional-close-card img{
    width:58px !important;
    height:58px !important;
    padding:10px !important;
  }

  .footer-legal{
    flex-direction:column !important;
    align-items:flex-start !important;
  }
}

/* END PREVIEW CODEX - Pulido final desktop institucional */

/* AJUSTE FINAL - Footer textos del mockup */

.site-footer .footer-mockup-wrap{
  display:grid !important;
  grid-template-columns:minmax(150px, 260px) minmax(260px, 1fr) minmax(220px, 320px) !important;
  align-items:center !important;
  gap:34px !important;
}

.site-footer .footer-contact{
  margin:0 !important;
  font-style:normal !important;
  color:rgba(255,255,255,.86) !important;
}

.site-footer .footer-contact p{
  margin:0 0 9px !important;
  font-size:13px !important;
  line-height:1.35 !important;
}

.site-footer .footer-contact p:last-child{
  margin-bottom:0 !important;
}

.site-footer .footer-contact a{
  color:rgba(255,255,255,.86) !important;
  text-decoration:none !important;
}

.site-footer .footer-legal-links{
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  justify-content:center !important;
  gap:10px !important;
  max-width:none !important;
}

.site-footer .footer-legal-links a,
.site-footer .footer-legal-links span{
  color:rgba(255,255,255,.88) !important;
  font-size:13px !important;
  line-height:1.25 !important;
  font-weight:700 !important;
  text-decoration:none !important;
  white-space:normal !important;
}

.site-footer .footer-legal-links strong{
  display:inline-block !important;
  margin-top:3px !important;
  color:#ff8080 !important;
  font-size:12px !important;
  line-height:1 !important;
}

@media (max-width:900px){
  .site-footer .footer-mockup-wrap{
    grid-template-columns:1fr !important;
    align-items:flex-start !important;
    gap:20px !important;
  }
}

/* AJUSTE FINAL - Iconos internos para Mision, Vision y Valores */

.about-values-plates .about-plate-icon .about-value-svg{
  display:block !important;
  width:36px !important;
  height:36px !important;
  color:var(--azul) !important;
  fill:none !important;
  stroke:currentColor !important;
  stroke-width:3 !important;
  stroke-linecap:round !important;
  stroke-linejoin:round !important;
}

/* AJUSTE FINAL - Iconos internos Farmacovigilancia */

.pharmacovigilance-item-icon{
  flex:0 0 58px !important;
  width:58px !important;
  height:58px !important;
  border-radius:8px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:#eef8fb !important;
}

.pharmacovigilance-item-icon svg{
  display:block !important;
  width:34px !important;
  height:34px !important;
  color:var(--azul) !important;
  fill:none !important;
  stroke:currentColor !important;
  stroke-width:3 !important;
  stroke-linecap:round !important;
  stroke-linejoin:round !important;
}

/* PREVIEW CODEX - Inicio sin video + video en instalaciones */

.hero-home-brand-grid{
  grid-template-columns:minmax(0, 1.05fr) minmax(320px, .72fr) !important;
  gap:54px !important;
  align-items:center !important;
}

.hero-home-brand-copy{
  max-width:880px !important;
}

.hero-brand-logo.hero-brand-logo-staged{
  max-width:min(720px, 100%) !important;
  margin:0 0 22px !important;
}

.hero-brand-logo-staged .hero-logo-accessible{
  opacity:0 !important;
  animation:amgLogoFullLock .34s ease-out 3.03s forwards !important;
}

.hero-logo-stage{
  backface-visibility:hidden !important;
  mix-blend-mode:normal !important;
}

.hero-logo-stage-amg{
  clip-path:inset(0 100% 43.8% 0) !important;
  transform:translateY(12px) scale(.988) !important;
  animation:amgLogoWordRevealClean 2.86s cubic-bezier(.18, .82, .20, 1) .22s forwards !important;
}

.hero-logo-stage-pharma{
  clip-path:inset(43.8% 0 0 0) !important;
  transform:translateY(18px) !important;
  animation:amgLogoPharmaRevealClean 1.72s cubic-bezier(.18, .82, .20, 1) 1.36s forwards !important;
}

.hero-home-logo-area{
  align-self:stretch !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
}

.hero-logo-cards{
  width:min(100%, 470px) !important;
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:14px !important;
  margin:0 !important;
}

.hero-logo-cards .hero-brand-card{
  min-height:118px !important;
  grid-template-columns:74px minmax(0, 1fr) !important;
  align-items:center !important;
  padding:22px 24px !important;
}

.hero-logo-cards .hero-brand-card .hero-card-icon{
  width:68px !important;
  height:68px !important;
}

.operation-video-tile{
  background:#0b3454 !important;
}

.operation-video{
  display:block !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
}

.operation-video-tile::after{
  content:"" !important;
  position:absolute !important;
  inset:auto 0 0 0 !important;
  height:34% !important;
  background:linear-gradient(180deg, rgba(8,56,96,0), rgba(8,56,96,.22)) !important;
  pointer-events:none !important;
}

.operation-video-tile figcaption{
  z-index:2 !important;
}

@keyframes amgLogoWordRevealClean{
  0%{
    opacity:0;
    clip-path:inset(0 100% 43.8% 0);
    transform:translateY(12px) scale(.988);
  }

  28%{
    opacity:1;
  }

  62%{
    opacity:1;
    clip-path:inset(0 0 43.8% 0);
    transform:translateY(0) scale(1);
  }

  94%{
    opacity:1;
    clip-path:inset(0 0 43.8% 0);
    transform:translateY(0) scale(1);
  }

  100%{
    opacity:0;
    clip-path:inset(0 0 43.8% 0);
    transform:translateY(0) scale(1);
  }
}

@keyframes amgLogoPharmaRevealClean{
  0%{
    opacity:0;
    clip-path:inset(100% 0 0 0);
    transform:translateY(18px);
  }

  25%{
    opacity:1;
  }

  86%{
    opacity:1;
    clip-path:inset(43.8% 0 0 0);
    transform:translateY(0);
  }

  94%{
    opacity:1;
    clip-path:inset(43.8% 0 0 0);
    transform:translateY(0);
  }

  100%{
    opacity:0;
    clip-path:inset(43.8% 0 0 0);
    transform:translateY(0);
  }
}

@keyframes amgLogoFullLock{
  from{
    opacity:0;
  }

  to{
    opacity:1;
  }
}

@media (max-width:1000px){
  .hero-home-brand-grid{
    grid-template-columns:1fr !important;
    gap:30px !important;
  }

  .hero-home-logo-area{
    justify-content:flex-start !important;
  }

  .hero-logo-cards{
    width:100% !important;
    grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (max-width:700px){
  .hero-logo-cards{
    grid-template-columns:1fr !important;
  }
}

@media (prefers-reduced-motion:reduce){
  .hero-brand-logo-staged .hero-logo-accessible{
    opacity:1 !important;
    animation:none !important;
  }

  .hero-logo-stage{
    opacity:0 !important;
    animation:none !important;
  }
}

/* END PREVIEW CODEX - Inicio sin video + video en instalaciones */

/* PREVIEW CODEX - Inicio solo logo y texto */

.hero-home-brand-grid{
  grid-template-columns:minmax(0, 940px) !important;
  justify-content:flex-start !important;
  gap:0 !important;
}

.hero-home-brand-copy{
  max-width:940px !important;
}

.hero-home-brand-copy h1{
  max-width:850px !important;
}

.hero-home-brand-copy p{
  max-width:760px !important;
}

.hero-brand-logo.hero-brand-logo-staged{
  max-width:min(760px, 100%) !important;
  margin-bottom:24px !important;
}

/* END PREVIEW CODEX - Inicio solo logo y texto */

/* PREVIEW CODEX - Inicio centrado dominante */

.hero-home{
  min-height:calc(100vh - 118px) !important;
  display:flex !important;
  align-items:center !important;
  padding-top:54px !important;
  padding-bottom:64px !important;
}

.hero-home-brand-grid{
  width:100% !important;
  grid-template-columns:minmax(0, 1120px) !important;
  justify-content:center !important;
  text-align:center !important;
}

.hero-home-brand-copy{
  max-width:1120px !important;
  margin:0 auto !important;
  text-align:center !important;
}

.hero-brand-logo.hero-brand-logo-staged{
  max-width:min(900px, 100%) !important;
  margin:0 auto 30px !important;
}

.hero-home-brand-copy h1{
  max-width:1040px !important;
  margin-left:auto !important;
  margin-right:auto !important;
  font-size:clamp(58px, 4.7vw, 82px) !important;
  line-height:.98 !important;
  letter-spacing:0 !important;
}

.hero-home-brand-copy p{
  max-width:820px !important;
  margin-left:auto !important;
  margin-right:auto !important;
  font-size:24px !important;
  line-height:1.45 !important;
}

@media (max-width:1000px){
  .hero-home{
    min-height:auto !important;
  }

  .hero-home-brand-copy h1{
    font-size:54px !important;
  }

  .hero-home-brand-copy p{
    font-size:20px !important;
  }
}

/* END PREVIEW CODEX - Inicio centrado dominante */

/* PREVIEW CODEX - Logo visible sin recortes */

.hero-brand-logo.hero-brand-logo-staged{
  max-width:min(820px, 92vw) !important;
  overflow:visible !important;
}

.hero-brand-logo-staged .hero-logo-accessible{
  display:block !important;
  position:relative !important;
  width:100% !important;
  height:auto !important;
  opacity:1 !important;
  filter:none !important;
  transform:none !important;
  animation:amgLogoCleanEntrance 2.35s cubic-bezier(.18, .82, .22, 1) .12s both !important;
}

.hero-logo-stage{
  display:none !important;
  opacity:0 !important;
  animation:none !important;
}

.hero-home-brand-copy h1{
  margin-top:4px !important;
}

@keyframes amgLogoCleanEntrance{
  0%{
    opacity:0;
    transform:translateY(22px) scale(.965);
  }

  46%{
    opacity:1;
  }

  100%{
    opacity:1;
    transform:translateY(0) scale(1);
  }
}

@media (prefers-reduced-motion:reduce){
  .hero-brand-logo-staged .hero-logo-accessible{
    opacity:1 !important;
    transform:none !important;
    animation:none !important;
  }
}

/* END PREVIEW CODEX - Logo visible sin recortes */

/* PREVIEW CODEX - Logo animado completo visible */

.hero-brand-logo.hero-brand-logo-staged{
  opacity:0 !important;
  transform:translateY(32px) scale(.94) !important;
  animation:amgLogoFullHeroEntrance 2.45s cubic-bezier(.16, .84, .22, 1) .18s forwards !important;
}

.hero-brand-logo-staged .hero-logo-accessible{
  opacity:1 !important;
  transform:none !important;
  animation:none !important;
}

.hero-brand-logo.hero-brand-logo-staged::after{
  content:"" !important;
  position:absolute !important;
  left:8% !important;
  right:8% !important;
  bottom:-10px !important;
  height:4px !important;
  border-radius:999px !important;
  background:linear-gradient(90deg, rgba(23,184,197,0), rgba(23,184,197,.9), rgba(23,184,197,0)) !important;
  opacity:0 !important;
  transform:scaleX(.2) !important;
  animation:amgLogoUnderlineEntrance 1.25s cubic-bezier(.18, .82, .22, 1) 1.08s forwards !important;
}

@keyframes amgLogoFullHeroEntrance{
  0%{
    opacity:0;
    transform:translateY(32px) scale(.94);
  }

  38%{
    opacity:1;
  }

  78%{
    opacity:1;
    transform:translateY(-4px) scale(1.012);
  }

  100%{
    opacity:1;
    transform:translateY(0) scale(1);
  }
}

@keyframes amgLogoUnderlineEntrance{
  0%{
    opacity:0;
    transform:scaleX(.2);
  }

  50%{
    opacity:1;
  }

  100%{
    opacity:.82;
    transform:scaleX(1);
  }
}

/* END PREVIEW CODEX - Logo animado completo visible */

/* PREVIEW CODEX - Hero logo limpio definitivo */

.hero-home{
  min-height:calc(100vh - 126px) !important;
  padding:52px 0 62px !important;
  display:flex !important;
  align-items:center !important;
  background:
    radial-gradient(circle at 50% 24%, rgba(23,184,197,.16), rgba(23,184,197,0) 38%),
    linear-gradient(180deg, #f7fcfd 0%, #eef9fb 100%) !important;
}

.hero-home-brand-grid{
  width:100% !important;
  display:grid !important;
  grid-template-columns:minmax(0, 1120px) !important;
  justify-content:center !important;
  align-items:center !important;
  gap:0 !important;
  text-align:center !important;
}

.hero-home-brand-copy{
  max-width:1120px !important;
  margin:0 auto !important;
  text-align:center !important;
}

.hero-brand-logo-clean{
  display:block !important;
  width:min(760px, 78vw) !important;
  max-width:none !important;
  margin:0 auto 32px !important;
  opacity:0 !important;
  transform:translateY(24px) scale(.955) !important;
  animation:amgHeroLogoClean 1.85s cubic-bezier(.16, .84, .22, 1) .16s forwards !important;
  overflow:visible !important;
}

.hero-logo-main{
  display:block !important;
  width:100% !important;
  height:auto !important;
  max-width:none !important;
  opacity:1 !important;
  transform:none !important;
  filter:none !important;
  animation:none !important;
}

.hero-brand-logo-clean::before,
.hero-brand-logo-clean::after{
  display:none !important;
  content:none !important;
}

.hero-home-brand-copy h1{
  max-width:1040px !important;
  margin:0 auto 24px !important;
  color:var(--azul) !important;
  font-size:clamp(58px, 5.2vw, 88px) !important;
  line-height:.98 !important;
  letter-spacing:0 !important;
  text-align:center !important;
}

.hero-home-brand-copy h1::after{
  display:none !important;
}

.hero-home-brand-copy p{
  max-width:820px !important;
  margin:0 auto !important;
  color:var(--texto-suave) !important;
  font-size:clamp(20px, 1.6vw, 26px) !important;
  line-height:1.42 !important;
  text-align:center !important;
}

@keyframes amgHeroLogoClean{
  0%{
    opacity:0;
    transform:translateY(24px) scale(.955);
  }

  45%{
    opacity:1;
  }

  78%{
    opacity:1;
    transform:translateY(-3px) scale(1.008);
  }

  100%{
    opacity:1;
    transform:translateY(0) scale(1);
  }
}

@media (max-width:1000px){
  .hero-home{
    min-height:auto !important;
    padding:48px 0 58px !important;
  }

  .hero-brand-logo-clean{
    width:min(620px, 86vw) !important;
  }
}

@media (prefers-reduced-motion:reduce){
  .hero-brand-logo-clean{
    opacity:1 !important;
    transform:none !important;
    animation:none !important;
  }
}

/* END PREVIEW CODEX - Hero logo limpio definitivo */

/* PREVIEW CODEX - Correccion estable hero inicio */

.hero-home{
  min-height:calc(100vh - 126px) !important;
  padding:42px 0 54px !important;
  display:flex !important;
  align-items:center !important;
  background:
    radial-gradient(circle at 50% 26%, rgba(23,184,197,.16), rgba(23,184,197,0) 34%),
    linear-gradient(180deg, #f7fcfd 0%, #edf9fb 100%) !important;
  overflow:hidden !important;
}

.hero-home .container,
.hero-home-brand-grid{
  width:100% !important;
  max-width:1180px !important;
  margin:0 auto !important;
  display:grid !important;
  grid-template-columns:1fr !important;
  place-items:center !important;
  gap:0 !important;
  text-align:center !important;
}

.hero-home-brand-copy{
  width:100% !important;
  max-width:1080px !important;
  margin:0 auto !important;
  text-align:center !important;
}

.hero-brand-logo.hero-brand-logo-clean{
  display:block !important;
  position:relative !important;
  width:min(620px, 72vw) !important;
  max-width:none !important;
  height:auto !important;
  margin:0 auto 24px !important;
  opacity:1 !important;
  visibility:visible !important;
  overflow:visible !important;
  transform:none !important;
  animation:amgLogoStableEntrance 1.55s cubic-bezier(.18, .82, .22, 1) .12s both !important;
}

.hero-brand-logo.hero-brand-logo-clean::before,
.hero-brand-logo.hero-brand-logo-clean::after{
  display:none !important;
  content:none !important;
}

.hero-brand-logo-clean .hero-logo-main,
.hero-brand-logo.hero-brand-logo-clean img{
  display:block !important;
  width:100% !important;
  max-width:none !important;
  height:auto !important;
  opacity:1 !important;
  visibility:visible !important;
  transform:none !important;
  filter:none !important;
  animation:none !important;
}

.hero-home .hero-logo-stage,
.hero-home .hero-logo-accessible{
  display:none !important;
}

.hero-home-brand-copy h1{
  max-width:980px !important;
  margin:0 auto 20px !important;
  color:var(--azul) !important;
  font-size:clamp(48px, 4.9vw, 76px) !important;
  line-height:1 !important;
  letter-spacing:0 !important;
  text-align:center !important;
}

.hero-home-brand-copy h1::after{
  display:none !important;
  content:none !important;
}

.hero-home-brand-copy p{
  max-width:780px !important;
  margin:0 auto !important;
  color:var(--texto-suave) !important;
  font-size:clamp(19px, 1.45vw, 24px) !important;
  line-height:1.42 !important;
  text-align:center !important;
}

@keyframes amgLogoStableEntrance{
  0%{
    opacity:0;
    transform:translateY(18px) scale(.97);
  }

  56%{
    opacity:1;
  }

  100%{
    opacity:1;
    transform:translateY(0) scale(1);
  }
}

@media (prefers-reduced-motion:reduce){
  .hero-brand-logo.hero-brand-logo-clean{
    opacity:1 !important;
    transform:none !important;
    animation:none !important;
  }
}

/* END PREVIEW CODEX - Correccion estable hero inicio */

/* PREVIEW CODEX - Logo inicio estatico proporcionado */

.hero-brand-logo.hero-brand-logo-clean{
  width:min(440px, 48vw) !important;
  margin:0 auto 22px !important;
  opacity:1 !important;
  visibility:visible !important;
  transform:none !important;
  animation:none !important;
}

.hero-brand-logo-clean .hero-logo-main,
.hero-brand-logo.hero-brand-logo-clean img{
  opacity:1 !important;
  visibility:visible !important;
  transform:none !important;
  animation:none !important;
}

.hero-home{
  padding-top:34px !important;
  padding-bottom:48px !important;
}

.hero-home-brand-copy h1{
  max-width:930px !important;
  margin-bottom:18px !important;
  font-size:clamp(46px, 4.4vw, 68px) !important;
}

.hero-home-brand-copy p{
  max-width:760px !important;
  font-size:clamp(18px, 1.35vw, 22px) !important;
}

/* END PREVIEW CODEX - Logo inicio estatico proporcionado */

/* PREVIEW CODEX - Logo AMG Pharma secuencia limpia */

.hero-home{
  min-height:calc(100vh - 126px) !important;
  padding:34px 0 48px !important;
  display:flex !important;
  align-items:center !important;
  background:
    radial-gradient(circle at 50% 25%, rgba(23,184,197,.14), rgba(23,184,197,0) 34%),
    linear-gradient(180deg, #f7fcfd 0%, #edf9fb 100%) !important;
  overflow:hidden !important;
}

.hero-home .container,
.hero-home-brand-grid{
  width:100% !important;
  max-width:1120px !important;
  margin:0 auto !important;
  display:grid !important;
  grid-template-columns:1fr !important;
  place-items:center !important;
  text-align:center !important;
}

.hero-home-brand-copy{
  width:100% !important;
  max-width:1040px !important;
  margin:0 auto !important;
  text-align:center !important;
}

.hero-brand-logo.hero-brand-logo-sequence{
  position:relative !important;
  display:block !important;
  width:min(410px, 44vw) !important;
  max-width:none !important;
  height:auto !important;
  margin:0 auto 24px !important;
  overflow:visible !important;
  opacity:1 !important;
  visibility:visible !important;
  transform:none !important;
  animation:none !important;
}

.hero-logo-measure{
  display:block !important;
  width:100% !important;
  height:auto !important;
  opacity:0 !important;
  visibility:hidden !important;
}

.hero-logo-piece{
  position:absolute !important;
  inset:0 !important;
  display:block !important;
  overflow:hidden !important;
  opacity:1 !important;
  visibility:visible !important;
}

.hero-logo-piece img{
  display:block !important;
  width:100% !important;
  max-width:none !important;
  height:auto !important;
  opacity:1 !important;
  visibility:visible !important;
  transform:none !important;
  filter:none !important;
  animation:none !important;
}

.hero-logo-piece-amg{
  clip-path:inset(0 100% 42% 0) !important;
  animation:amgRevealLeft 1.18s cubic-bezier(.18, .82, .22, 1) .18s forwards !important;
}

.hero-logo-piece-pharma{
  clip-path:inset(42% 100% 0 0) !important;
  animation:pharmaRevealLeft 1.18s cubic-bezier(.18, .82, .22, 1) 1.08s forwards !important;
}

.hero-home-brand-copy h1{
  max-width:930px !important;
  margin:0 auto 18px !important;
  color:var(--azul) !important;
  font-size:clamp(46px, 4.35vw, 68px) !important;
  line-height:1 !important;
  letter-spacing:0 !important;
  text-align:center !important;
}

.hero-home-brand-copy h1::after{
  display:none !important;
  content:none !important;
}

.hero-home-brand-copy p{
  max-width:760px !important;
  margin:0 auto !important;
  color:var(--texto-suave) !important;
  font-size:clamp(18px, 1.35vw, 22px) !important;
  line-height:1.42 !important;
  text-align:center !important;
}

@keyframes amgRevealLeft{
  from{
    clip-path:inset(0 100% 42% 0);
  }

  to{
    clip-path:inset(0 0 42% 0);
  }
}

@keyframes pharmaRevealLeft{
  from{
    clip-path:inset(42% 100% 0 0);
  }

  to{
    clip-path:inset(42% 0 0 0);
  }
}

@media (prefers-reduced-motion:reduce){
  .hero-logo-piece-amg{
    clip-path:inset(0 0 42% 0) !important;
    animation:none !important;
  }

  .hero-logo-piece-pharma{
    clip-path:inset(42% 0 0 0) !important;
    animation:none !important;
  }
}

/* END PREVIEW CODEX - Logo AMG Pharma secuencia limpia */

/* FINAL CODEX - Inicio estatico aprobado */

.hero-home{
  min-height:calc(100vh - 126px) !important;
  padding:34px 0 48px !important;
  display:flex !important;
  align-items:center !important;
  background:
    radial-gradient(circle at 50% 25%, rgba(23,184,197,.14), rgba(23,184,197,0) 34%),
    linear-gradient(180deg, #f7fcfd 0%, #edf9fb 100%) !important;
  overflow:hidden !important;
}

.hero-home .container,
.hero-home-brand-grid{
  width:100% !important;
  max-width:1120px !important;
  margin:0 auto !important;
  display:grid !important;
  grid-template-columns:1fr !important;
  place-items:center !important;
  text-align:center !important;
}

.hero-home-brand-copy{
  width:100% !important;
  max-width:1040px !important;
  margin:0 auto !important;
  text-align:center !important;
}

.hero-brand-logo.hero-brand-logo-static{
  position:relative !important;
  display:block !important;
  width:min(760px, 70vw) !important;
  max-width:none !important;
  height:auto !important;
  margin:0 auto 24px !important;
  opacity:1 !important;
  visibility:visible !important;
  overflow:visible !important;
  transform:none !important;
  animation:none !important;
}

.hero-brand-logo-static .hero-logo-main,
.hero-brand-logo.hero-brand-logo-static img{
  display:block !important;
  width:100% !important;
  max-width:none !important;
  height:auto !important;
  opacity:1 !important;
  visibility:visible !important;
  transform:none !important;
  filter:none !important;
  animation:none !important;
}

.hero-brand-logo-static::before,
.hero-brand-logo-static::after,
.hero-home .hero-logo-piece,
.hero-home .hero-logo-measure,
.hero-home .hero-logo-stage,
.hero-home .hero-logo-accessible{
  display:none !important;
  content:none !important;
}

.hero-home-brand-copy h1{
  max-width:930px !important;
  margin:0 auto 18px !important;
  color:var(--azul) !important;
  font-size:clamp(46px, 4.35vw, 68px) !important;
  line-height:1 !important;
  letter-spacing:0 !important;
  text-align:center !important;
}

.hero-home-brand-copy h1::after{
  display:none !important;
  content:none !important;
}

.hero-home-brand-copy p{
  max-width:760px !important;
  margin:0 auto !important;
  color:var(--texto-suave) !important;
  font-size:clamp(18px, 1.35vw, 22px) !important;
  line-height:1.42 !important;
  text-align:center !important;
}

/* END FINAL CODEX - Inicio estatico aprobado */

/* FINAL CODEX - Areas sin cards */

.specialty-panel-refined{
  padding:58px 0 62px !important;
}

.specialty-heading-refined{
  align-items:end !important;
}

.specialty-inline-list{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:12px !important;
  margin-top:30px !important;
  padding:18px !important;
  border:1px solid rgba(8,56,96,.10) !important;
  border-radius:8px !important;
  background:#ffffff !important;
  box-shadow:0 18px 42px rgba(11,52,84,.07) !important;
}

.specialty-inline-list span{
  display:inline-flex !important;
  align-items:center !important;
  min-height:44px !important;
  padding:10px 16px !important;
  border-left:4px solid var(--turquesa) !important;
  border-radius:8px !important;
  background:#f6fafb !important;
  color:var(--azul) !important;
  font-size:16px !important;
  line-height:1.2 !important;
  font-weight:800 !important;
}

@media (max-width:900px){
  .specialty-heading-refined{
    align-items:start !important;
  }

  .specialty-inline-list{
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
  }
}

@media (max-width:620px){
  .specialty-inline-list{
    grid-template-columns:1fr !important;
  }
}

/* END FINAL CODEX - Areas sin cards */

/* FINAL CODEX - Instalaciones sin cards */

.operation-inline-list{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:12px !important;
  margin-top:30px !important;
  padding:18px !important;
  border:1px solid rgba(8,56,96,.10) !important;
  border-radius:8px !important;
  background:#ffffff !important;
  box-shadow:0 18px 42px rgba(11,52,84,.07) !important;
}

.operation-inline-list span{
  display:inline-flex !important;
  align-items:center !important;
  min-height:44px !important;
  padding:10px 16px !important;
  border-left:4px solid var(--turquesa) !important;
  border-radius:8px !important;
  background:#f6fafb !important;
  color:var(--azul) !important;
  font-size:16px !important;
  line-height:1.2 !important;
  font-weight:800 !important;
}

.operation-support-line{
  margin-top:28px !important;
  padding:18px !important;
  border-top:1px solid rgba(8,56,96,.10) !important;
  border-bottom:1px solid rgba(8,56,96,.10) !important;
  display:grid !important;
  grid-template-columns:minmax(160px, .55fr) minmax(240px, .9fr) minmax(0, 1.25fr) !important;
  gap:18px !important;
  align-items:center !important;
}

.operation-support-line > span{
  color:var(--turquesa) !important;
  font-size:13px !important;
  line-height:1.2 !important;
  font-weight:800 !important;
  letter-spacing:.14em !important;
}

.operation-support-line > strong{
  color:var(--azul) !important;
  font-size:clamp(20px, 1.8vw, 28px) !important;
  line-height:1.14 !important;
  font-weight:800 !important;
}

.operation-support-tags{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:10px !important;
  justify-content:flex-end !important;
}

.operation-support-tags span{
  display:inline-flex !important;
  align-items:center !important;
  min-height:38px !important;
  padding:9px 13px !important;
  border-radius:8px !important;
  background:#f6fafb !important;
  color:var(--azul) !important;
  font-size:14px !important;
  line-height:1.2 !important;
  font-weight:700 !important;
}

.operation-detail-copy{
  margin-top:38px !important;
  display:grid !important;
  grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
  gap:24px !important;
  max-width:none !important;
  padding-top:22px !important;
  border-top:1px solid rgba(8,56,96,.12) !important;
}

.operation-detail-copy p{
  margin:0 !important;
  color:var(--texto-suave) !important;
  font-size:16px !important;
  line-height:1.62 !important;
  text-align:justify !important;
  text-align-last:left !important;
  hyphens:auto !important;
}

@media (max-width:980px){
  .operation-support-line{
    grid-template-columns:1fr !important;
    align-items:start !important;
  }

  .operation-support-tags{
    justify-content:flex-start !important;
  }

  .operation-detail-copy{
    grid-template-columns:1fr !important;
    gap:14px !important;
    margin-top:28px !important;
  }
}

@media (max-width:900px){
  .operation-inline-list{
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
  }
}

@media (max-width:620px){
  .operation-inline-list{
    grid-template-columns:1fr !important;
  }

  .operation-detail-copy{
    padding-top:18px !important;
  }

  .operation-detail-copy p{
    font-size:15.5px !important;
  }
}

/* END FINAL CODEX - Instalaciones sin cards */

/* FINAL CODEX - Formulario farmacovigilancia */

.pharmacovigilance-form-section{
  padding:64px 0 72px !important;
  background:#ffffff !important;
}

.fv-form-heading{
  max-width:860px !important;
  margin:0 auto 26px !important;
  text-align:center !important;
}

.fv-form-heading h2{
  margin:10px 0 0 !important;
  color:var(--azul) !important;
  font-size:clamp(32px, 3vw, 48px) !important;
  line-height:1.08 !important;
  letter-spacing:0 !important;
}

.fv-form{
  max-width:980px !important;
  margin:0 auto !important;
  padding:30px !important;
  border:1px solid rgba(8,56,96,.10) !important;
  border-radius:8px !important;
  background:#eaf1f1 !important;
  box-shadow:0 24px 54px rgba(11,43,84,.10) !important;
}

.fv-form fieldset{
  margin:0 0 30px !important;
  padding:0 !important;
  border:0 !important;
}

.fv-form fieldset:last-child{
  margin-bottom:0 !important;
}

.fv-form legend{
  margin:0 0 22px !important;
  color:var(--turquesa) !important;
  font-size:16px !important;
  line-height:1.25 !important;
  font-weight:900 !important;
  text-transform:uppercase !important;
}

.fv-field{
  display:grid !important;
  gap:8px !important;
  margin:0 0 18px !important;
  color:#1f2933 !important;
  font-size:16px !important;
  line-height:1.35 !important;
  font-weight:650 !important;
}

.fv-field input,
.fv-field textarea,
.fv-field select{
  width:100% !important;
  min-height:46px !important;
  padding:11px 13px !important;
  border:1px solid rgba(8,56,96,.12) !important;
  border-radius:6px !important;
  background:#ffffff !important;
  color:var(--azul) !important;
  font:inherit !important;
  font-weight:500 !important;
  outline:none !important;
}

.fv-field textarea{
  min-height:128px !important;
  resize:vertical !important;
}

.fv-field input:focus,
.fv-field textarea:focus,
.fv-field select:focus{
  border-color:var(--turquesa) !important;
  box-shadow:0 0 0 3px rgba(23,184,197,.18) !important;
}

.fv-field small{
  color:#5f6f7b !important;
  font-size:14px !important;
  line-height:1.35 !important;
  font-weight:500 !important;
}

.fv-radio-group{
  display:grid !important;
  grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
  gap:10px !important;
}

.fv-radio-group label{
  min-height:46px !important;
  padding:11px 13px !important;
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  border:1px solid rgba(8,56,96,.10) !important;
  border-radius:6px !important;
  background:#ffffff !important;
  color:var(--texto-suave) !important;
  font-weight:650 !important;
}

.fv-radio-group input{
  width:auto !important;
  min-height:auto !important;
}

.fv-file-field{
  margin:12px 0 24px !important;
  text-align:center !important;
}

.fv-file-field p{
  margin:0 0 14px !important;
  color:#1f2933 !important;
  font-size:16px !important;
  line-height:1.45 !important;
}

.fv-file-field label{
  display:block !important;
  margin-bottom:10px !important;
  color:var(--turquesa) !important;
  font-size:15px !important;
  font-weight:850 !important;
}

.fv-file-field input{
  max-width:100% !important;
  color:var(--texto-suave) !important;
}

.fv-file-field small{
  display:block !important;
  margin-top:10px !important;
  color:#5f6f7b !important;
  font-size:13px !important;
  line-height:1.35 !important;
}

.fv-file-field input::file-selector-button{
  min-height:38px !important;
  margin-right:12px !important;
  padding:0 14px !important;
  border:1px solid rgba(8,56,96,.14) !important;
  border-radius:6px !important;
  background:#ffffff !important;
  color:var(--turquesa) !important;
  font-weight:850 !important;
  cursor:pointer !important;
}

.fv-privacy{
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  gap:10px !important;
  margin:0 0 26px !important;
  color:#1f2933 !important;
  font-size:16px !important;
  line-height:1.3 !important;
}

.fv-privacy input{
  width:22px !important;
  height:22px !important;
  flex:0 0 auto !important;
  accent-color:var(--turquesa) !important;
}

.fv-privacy a{
  color:var(--azul) !important;
  font-weight:800 !important;
  text-decoration:none !important;
}

.fv-submit{
  min-height:48px !important;
  padding:0 24px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  margin:0 auto !important;
  border:0 !important;
  border-radius:6px !important;
  background:#e21b1b !important;
  color:#ffffff !important;
  font-size:15px !important;
  line-height:1 !important;
  font-weight:900 !important;
  cursor:pointer !important;
  box-shadow:0 12px 24px rgba(226,27,27,.22) !important;
}

.fv-submit:hover{
  background:#c91515 !important;
}

.fv-captcha{
  max-width:360px !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

.fv-honeypot{
  position:absolute !important;
  left:-9999px !important;
  width:1px !important;
  height:1px !important;
  overflow:hidden !important;
}

.form-result-section{
  min-height:58vh !important;
  padding:74px 0 !important;
  background:#f6fafb !important;
}

.form-result-card{
  max-width:760px !important;
  margin:0 auto !important;
  padding:34px !important;
  border:1px solid rgba(8,56,96,.12) !important;
  border-radius:8px !important;
  background:#ffffff !important;
  box-shadow:0 24px 54px rgba(11,43,84,.10) !important;
}

.form-result-card h1{
  margin:0 0 14px !important;
  color:var(--azul) !important;
  font-size:clamp(28px, 3vw, 42px) !important;
  line-height:1.1 !important;
  letter-spacing:0 !important;
}

.form-result-card p,
.form-result-card li{
  color:var(--texto-suave) !important;
  font-size:16px !important;
  line-height:1.55 !important;
}

.form-result-card ul{
  margin:18px 0 0 !important;
  padding-left:20px !important;
}

.form-result-card .form-result-actions{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:12px !important;
  margin-top:24px !important;
}

.form-result-card .form-result-actions a{
  min-height:44px !important;
  padding:0 16px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  border-radius:6px !important;
  background:var(--azul) !important;
  color:#ffffff !important;
  font-weight:850 !important;
  text-decoration:none !important;
}

.form-result-card.form-result-success{
  border-top:5px solid var(--turquesa) !important;
}

.form-result-card.form-result-error{
  border-top:5px solid #e21b1b !important;
}

@media (max-width:720px){
  .pharmacovigilance-form-section{
    padding:46px 0 54px !important;
  }

  .fv-form{
    padding:22px !important;
  }

  .fv-radio-group{
    grid-template-columns:1fr !important;
  }

  .fv-privacy{
    align-items:flex-start !important;
    justify-content:flex-start !important;
  }

  .fv-submit{
    width:100% !important;
  }
}

/* END FINAL CODEX - Formulario farmacovigilancia */

/* FINAL CODEX - Ubicacion */

.location-section{
  padding:58px 0 64px !important;
  background:#ffffff !important;
  border-top:1px solid rgba(8,56,96,.08) !important;
}

.location-wrap{
  display:grid !important;
  grid-template-columns:minmax(280px, .72fr) minmax(0, 1.28fr) !important;
  gap:34px !important;
  align-items:center !important;
}

.location-copy h2{
  margin:10px 0 14px !important;
  color:var(--azul) !important;
  font-size:clamp(30px, 3vw, 46px) !important;
  line-height:1.08 !important;
  letter-spacing:0 !important;
}

.location-copy p{
  max-width:54ch !important;
  margin:0 !important;
  color:var(--texto-suave) !important;
  font-size:17px !important;
  line-height:1.64 !important;
}

.location-link{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:46px !important;
  margin-top:22px !important;
  padding:0 18px !important;
  border-radius:8px !important;
  background:var(--azul) !important;
  color:#ffffff !important;
  font-size:15px !important;
  font-weight:850 !important;
  text-decoration:none !important;
  box-shadow:0 14px 28px rgba(11,43,84,.14) !important;
}

.location-map{
  min-height:340px !important;
  overflow:hidden !important;
  border:1px solid rgba(8,56,96,.12) !important;
  border-radius:8px !important;
  background:#eef5f8 !important;
  box-shadow:0 18px 42px rgba(11,43,84,.08) !important;
}

.location-map iframe{
  display:block !important;
  width:100% !important;
  height:340px !important;
  border:0 !important;
}

@media (max-width:900px){
  .location-section{
    padding:44px 0 52px !important;
  }

  .location-wrap{
    grid-template-columns:1fr !important;
    gap:24px !important;
  }
}

@media (max-width:620px){
  .location-link{
    width:100% !important;
  }

  .location-map,
  .location-map iframe{
    min-height:280px !important;
    height:280px !important;
  }
}

/* END FINAL CODEX - Ubicacion */

/* FINAL CODEX - Talento */

.talent-section{
  padding:68px 0 74px !important;
  background:#ffffff !important;
}

.talent-wrap{
  max-width:1060px !important;
}

.talent-heading{
  max-width:760px !important;
  margin:0 auto 28px !important;
  text-align:center !important;
}

.talent-icon{
  width:52px !important;
  height:52px !important;
  margin:0 auto 18px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  border-top:2px solid var(--turquesa) !important;
  border-bottom:2px solid var(--turquesa) !important;
  color:#111827 !important;
  font-size:28px !important;
  line-height:1 !important;
}

.talent-icon svg{
  width:30px !important;
  height:30px !important;
  display:block !important;
  fill:none !important;
  stroke:currentColor !important;
  stroke-width:2 !important;
  stroke-linecap:round !important;
  stroke-linejoin:round !important;
}

.talent-heading h2{
  margin:10px 0 16px !important;
  color:var(--turquesa) !important;
  font-size:clamp(34px, 3vw, 48px) !important;
  line-height:1.08 !important;
  letter-spacing:0 !important;
}

.talent-heading p{
  margin:0 auto !important;
  max-width:560px !important;
  color:#1f2933 !important;
  font-size:16px !important;
  line-height:1.5 !important;
  font-weight:750 !important;
}

.talent-form{
  max-width:900px !important;
  margin:0 auto !important;
  padding:34px 30px !important;
  border:1px solid rgba(8,56,96,.10) !important;
  border-radius:8px !important;
  background:#eaf1f1 !important;
  box-shadow:0 24px 54px rgba(11,43,84,.10) !important;
}

.talent-form fieldset{
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  display:grid !important;
  grid-template-columns:180px minmax(0, 1fr) !important;
  gap:18px 28px !important;
  align-items:center !important;
}

.talent-form legend{
  grid-column:1 / -1 !important;
  margin:0 0 4px !important;
  color:var(--turquesa) !important;
  font-size:28px !important;
  line-height:1.1 !important;
  font-weight:900 !important;
  text-align:center !important;
}

.talent-field{
  display:contents !important;
}

.talent-field span{
  color:var(--turquesa) !important;
  font-size:20px !important;
  line-height:1.2 !important;
  font-weight:500 !important;
}

.talent-field input{
  width:100% !important;
  min-height:46px !important;
  padding:11px 13px !important;
  border:1px solid rgba(8,56,96,.12) !important;
  border-radius:6px !important;
  background:#ffffff !important;
  color:var(--azul) !important;
  font:inherit !important;
  outline:none !important;
}

.talent-field input:focus{
  border-color:var(--turquesa) !important;
  box-shadow:0 0 0 3px rgba(23,184,197,.18) !important;
}

.talent-cv-field{
  grid-column:1 / -1 !important;
  margin-top:8px !important;
  display:grid !important;
  gap:12px !important;
  text-align:center !important;
}

.talent-cv-field > span{
  color:var(--turquesa) !important;
  font-size:20px !important;
  line-height:1.2 !important;
  font-weight:650 !important;
}

.talent-cv-field label{
  min-height:116px !important;
  padding:24px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  border:1px dashed rgba(8,56,96,.28) !important;
  border-radius:8px !important;
  background:#ffffff !important;
  color:var(--turquesa) !important;
  font-size:16px !important;
  font-weight:850 !important;
  cursor:pointer !important;
}

.talent-cv-field input{
  max-width:100% !important;
  margin:0 auto !important;
  color:var(--texto-suave) !important;
}

.talent-cv-field input::file-selector-button{
  min-height:38px !important;
  margin-right:12px !important;
  padding:0 14px !important;
  border:1px solid rgba(8,56,96,.14) !important;
  border-radius:6px !important;
  background:#ffffff !important;
  color:var(--turquesa) !important;
  font-weight:850 !important;
  cursor:pointer !important;
}

.talent-cv-field small{
  color:#5f6f7b !important;
  font-size:14px !important;
  line-height:1.35 !important;
}

.talent-submit{
  grid-column:1 / -1 !important;
  min-height:48px !important;
  padding:0 24px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  justify-self:center !important;
  border:0 !important;
  border-radius:6px !important;
  background:var(--azul) !important;
  color:#ffffff !important;
  font-size:15px !important;
  line-height:1 !important;
  font-weight:900 !important;
  cursor:pointer !important;
  box-shadow:0 12px 24px rgba(11,43,84,.18) !important;
}

.talent-submit:hover{
  background:#062640 !important;
}

@media (max-width:720px){
  .talent-section{
    padding:48px 0 56px !important;
  }

  .talent-form{
    padding:24px 20px !important;
  }

  .talent-form fieldset{
    grid-template-columns:1fr !important;
    gap:10px !important;
  }

  .talent-field{
    display:grid !important;
    gap:8px !important;
    margin-bottom:8px !important;
  }

  .talent-field span{
    font-size:17px !important;
  }

  .talent-submit{
    width:100% !important;
    margin-top:10px !important;
  }
}

/* END FINAL CODEX - Talento */

/* FINAL CODEX - Contacto formulario */

.contact-form-section{
  padding:70px 0 78px !important;
  background:#ffffff !important;
}

.contact-form-wrap{
  max-width:980px !important;
}

.contact-form-heading{
  max-width:660px !important;
  margin:0 auto 30px !important;
  text-align:center !important;
}

.contact-form-heading h2{
  margin:8px 0 16px !important;
  color:var(--turquesa) !important;
  font-size:clamp(34px, 5vw, 52px) !important;
  line-height:1.05 !important;
  font-weight:900 !important;
}

.contact-form-heading p{
  margin:0 !important;
  color:#1f2933 !important;
  font-size:16px !important;
  line-height:1.5 !important;
  font-weight:750 !important;
}

.customer-contact-form{
  max-width:900px !important;
  margin:0 auto !important;
  padding:34px 30px !important;
  border:1px solid rgba(8,56,96,.10) !important;
  border-radius:8px !important;
  background:#fff1d8 !important;
  box-shadow:0 24px 54px rgba(11,43,84,.10) !important;
}

.customer-contact-form fieldset{
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  display:grid !important;
  grid-template-columns:220px minmax(0, 1fr) !important;
  gap:18px 28px !important;
  align-items:center !important;
}

.customer-contact-form legend{
  grid-column:1 / -1 !important;
  margin:0 0 4px !important;
  color:var(--turquesa) !important;
  font-size:28px !important;
  line-height:1.1 !important;
  font-weight:900 !important;
  text-align:center !important;
}

.customer-contact-field{
  display:contents !important;
}

.customer-contact-field span{
  color:var(--turquesa) !important;
  font-size:20px !important;
  line-height:1.2 !important;
  font-weight:500 !important;
}

.customer-contact-field input,
.customer-contact-field textarea{
  width:100% !important;
  padding:11px 13px !important;
  border:1px solid rgba(8,56,96,.12) !important;
  border-radius:6px !important;
  background:#ffffff !important;
  color:var(--azul) !important;
  font:inherit !important;
  outline:none !important;
}

.customer-contact-field input{
  min-height:46px !important;
}

.customer-contact-field textarea{
  min-height:140px !important;
  resize:vertical !important;
}

.customer-contact-field input:focus,
.customer-contact-field textarea:focus{
  border-color:var(--turquesa) !important;
  box-shadow:0 0 0 3px rgba(23,184,197,.18) !important;
}

.customer-contact-message span,
.customer-contact-message textarea{
  grid-column:1 / -1 !important;
}

.customer-contact-message span{
  margin-top:8px !important;
  text-align:center !important;
  font-weight:650 !important;
}

.customer-contact-submit{
  grid-column:1 / -1 !important;
  min-height:48px !important;
  padding:0 24px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  justify-self:center !important;
  border:0 !important;
  border-radius:6px !important;
  background:var(--turquesa) !important;
  color:#ffffff !important;
  font-size:15px !important;
  line-height:1 !important;
  font-weight:900 !important;
  cursor:pointer !important;
  box-shadow:0 12px 24px rgba(11,43,84,.18) !important;
}

.customer-contact-submit:hover{
  background:#062640 !important;
}

@media (max-width:720px){
  .contact-form-section{
    padding:48px 0 56px !important;
  }

  .customer-contact-form{
    padding:24px 20px !important;
  }

  .customer-contact-form fieldset{
    grid-template-columns:1fr !important;
    gap:10px !important;
  }

  .customer-contact-field{
    display:grid !important;
    gap:8px !important;
    margin-bottom:8px !important;
  }

  .customer-contact-field span{
    font-size:17px !important;
  }

  .customer-contact-submit{
    width:100% !important;
    margin-top:10px !important;
  }
}

/* END FINAL CODEX - Contacto formulario */

/* FINAL CODEX - Ritmo visual secciones finales */

.operation-visual{
  padding-bottom:54px !important;
}

.operation-detail-copy{
  margin-top:34px !important;
  padding-bottom:6px !important;
}

.location-section{
  padding:66px 0 72px !important;
  border-top:1px solid rgba(8,56,96,.08) !important;
  border-bottom:1px solid rgba(8,56,96,.08) !important;
}

.location-copy p + p{
  margin-top:10px !important;
  color:#5b6b7b !important;
  font-weight:700 !important;
}

.pharmacovigilance-band{
  padding:68px 0 70px !important;
  background:#f6fafb !important;
  border-top:0 !important;
}

.pharmacovigilance-form-section{
  padding:66px 0 74px !important;
  border-bottom:1px solid rgba(8,56,96,.08) !important;
}

.talent-section{
  padding:72px 0 76px !important;
  background:#f8fbfb !important;
}

.contact-form-section{
  padding:72px 0 84px !important;
  border-top:1px solid rgba(8,56,96,.08) !important;
}

@media (max-width:900px){
  .location-section,
  .pharmacovigilance-band,
  .pharmacovigilance-form-section,
  .talent-section,
  .contact-form-section{
    padding-top:52px !important;
    padding-bottom:58px !important;
  }
}

@media (max-width:620px){
  .operation-visual{
    padding-bottom:42px !important;
  }

  .location-section,
  .pharmacovigilance-band,
  .pharmacovigilance-form-section,
  .talent-section,
  .contact-form-section{
    padding-top:44px !important;
    padding-bottom:50px !important;
  }
}

/* END FINAL CODEX - Ritmo visual secciones finales */
.quality-policy-section{
  padding:72px 0 78px !important;
  background:
    radial-gradient(circle at 12% 18%, rgba(0,174,202,.10), transparent 28%),
    linear-gradient(180deg, #ffffff 0%, #f5fbfd 100%) !important;
}

.quality-policy-wrap{
  max-width:980px !important;
}

.quality-policy-heading{
  text-align:center !important;
  margin:0 auto 28px !important;
}

.quality-policy-heading h2{
  margin:10px 0 0 !important;
  color:var(--azul) !important;
  font-size:clamp(36px, 4vw, 56px) !important;
  line-height:1.05 !important;
  letter-spacing:0 !important;
}

.quality-policy-card{
  background:#ffffff !important;
  border:1px solid rgba(13,59,102,.13) !important;
  border-top:6px solid var(--turquesa) !important;
  border-radius:8px !important;
  box-shadow:0 22px 54px rgba(8,47,73,.10) !important;
  padding:32px 36px !important;
}

.quality-policy-card p{
  margin:0 !important;
  color:var(--texto-suave) !important;
  font-size:18px !important;
  line-height:1.78 !important;
  text-align:justify !important;
}

@media (max-width: 640px){
  .quality-policy-section{
    padding:58px 0 62px !important;
  }

  .quality-policy-card{
    padding:24px 22px !important;
  }

  .quality-policy-card p{
    font-size:16px !important;
    text-align:left !important;
  }
}
.pharmacovigilance-direct-wrap{
  max-width:1180px !important;
}

.pharmacovigilance-direct-heading{
  max-width:760px !important;
  margin:0 0 34px !important;
}

.pharmacovigilance-direct-heading h2{
  margin:10px 0 0 !important;
  color:var(--azul) !important;
  font-size:clamp(40px, 4.2vw, 62px) !important;
  line-height:1.05 !important;
  letter-spacing:0 !important;
}

.pharmacovigilance-direct-grid{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) !important;
  gap:34px !important;
  align-items:start !important;
}

.pharmacovigilance-direct-content{
  display:grid !important;
  gap:24px !important;
}

.pharmacovigilance-cta-row{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(300px,360px) !important;
  grid-template-areas:
    "button important"
    "copy important" !important;
  gap:22px !important;
  align-items:start !important;
}

.pharmacovigilance-direct-content article,
.pharmacovigilance-important{
  background:#ffffff !important;
  border:1px solid rgba(13,59,102,.12) !important;
  border-radius:8px !important;
  box-shadow:0 18px 46px rgba(8,47,73,.08) !important;
  padding:26px 28px !important;
}

.pharmacovigilance-direct-content h3{
  margin:0 0 12px !important;
  color:var(--azul) !important;
  font-size:24px !important;
  line-height:1.18 !important;
}

.pharmacovigilance-direct-content p,
.pharmacovigilance-direct-content li,
.pharmacovigilance-important p{
  color:var(--texto-suave) !important;
  font-size:17px !important;
  line-height:1.68 !important;
}

.pharmacovigilance-direct-content p,
.pharmacovigilance-important p{
  margin:0 !important;
}

.pharmacovigilance-direct-content article p + p{
  margin-top:14px !important;
}

.pharmacovigilance-direct-content ul{
  margin:16px 0 0 !important;
  padding-left:22px !important;
}

.pharmacovigilance-direct-content li + li{
  margin-top:8px !important;
}

.pharmacovigilance-direct-content > p{
  max-width:860px !important;
}

.pharmacovigilance-important{
  grid-area:important !important;
  border-top:6px solid #d93025 !important;
  display:grid !important;
  gap:14px !important;
}

.pharmacovigilance-important strong{
  color:var(--azul) !important;
  font-size:20px !important;
  letter-spacing:.04em !important;
}

.pharmacovigilance-important a{
  color:var(--turquesa) !important;
  font-weight:800 !important;
  text-decoration:none !important;
  overflow-wrap:anywhere !important;
}

.pharmacovigilance-important .pharmacovigilance-alert{
  margin:0 !important;
}

.pharmacovigilance-report-copy{
  grid-area:copy !important;
  color:var(--texto-suave) !important;
  font-size:18px !important;
  line-height:1.65 !important;
  margin:0 !important;
}

/* AJUSTE FINAL - Logo largo oficial AMG */
.brand img{
  width:230px !important;
  max-width:230px !important;
  height:auto !important;
}

.site-footer .footer-brand img{
  width:168px !important;
  max-width:168px !important;
  height:auto !important;
}

.hero-brand-logo.hero-brand-logo-static{
  width:min(860px, 82vw) !important;
}

@media (max-width: 900px){
  .brand img{
    width:190px !important;
    max-width:190px !important;
  }

  .site-footer .footer-brand img{
    width:144px !important;
    max-width:144px !important;
  }
}

.pharmacovigilance-report-copy a{
  color:var(--turquesa) !important;
  font-weight:800 !important;
  text-decoration:none !important;
  overflow-wrap:anywhere !important;
}

.pharmacovigilance-closing{
  background:#ffffff !important;
  border:1px solid rgba(13,59,102,.12) !important;
  border-radius:8px !important;
  box-shadow:0 18px 46px rgba(8,47,73,.08) !important;
  padding:24px 28px !important;
  display:grid !important;
  gap:14px !important;
}

.pharmacovigilance-closing p{
  color:var(--texto-suave) !important;
  font-size:18px !important;
  line-height:1.65 !important;
  margin:0 !important;
}

@media (max-width: 900px){
  .pharmacovigilance-direct-grid{
    grid-template-columns:1fr !important;
  }

  .pharmacovigilance-cta-row{
    grid-template-columns:1fr !important;
    grid-template-areas:
      "button"
      "important"
      "copy" !important;
  }

  .pharmacovigilance-direct-content article,
  .pharmacovigilance-important,
  .pharmacovigilance-closing{
    padding:22px !important;
  }
}
