.nuevo {
  --fondo-nuevo:#f6f5f3;
  --texto-suave:#3d3a36;
  --mono:ui-monospace,'SF Mono',Menlo,Consolas,'Courier New',monospace;
  background:var(--fondo-nuevo);
  color:var(--tinta);
  font-family:'Mona Sans',Arial,Helvetica,sans-serif
}
.nuevo main#contenido {
  overflow:clip
}
.nuevo .cabecera,
.nuevo .menu-panel {
  font-family:Arial,Helvetica,sans-serif
}
.nuevo main section {
  padding:clamp(56px,7vw,100px) 0
}
.nuevo main h1,
.nuevo main h2 {
  font-weight:800;
  letter-spacing:-.045em;
  line-height:.92
}
.nuevo main h2 {
  font-size:clamp(44px,5.2vw,74px)
}
.nuevo main p {
  color:var(--texto-suave);
  font-size:clamp(15px,1.15vw,17px);
  line-height:1.55
}
.nuevo-dos {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  align-items:center;
  gap:clamp(32px,5vw,72px)
}
.nuevo-copia {
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:18px;
  min-width:0
}
.nuevo-copia h2 {
  margin-bottom:6px
}
.nuevo-antetitulo {
  color:var(--tinta) !important;
  font-size:clamp(16px,1.3vw,19px) !important;
  font-weight:700;
  letter-spacing:-.01em
}
.nuevo-foto {
  margin:0;
  overflow:hidden;
  border-radius:clamp(14px,1.6vw,22px);
  background:#ddd8d0
}
.nuevo-foto img {
  width:100%;
  height:100%;
  object-fit:cover
}
.nuevo-foto-alta {
  aspect-ratio:4/5
}
.nuevo-boton {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:14px;
  min-height:54px;
  margin-top:8px;
  padding:0 22px 0 26px;
  border-radius:999px;
  background:var(--rojo);
  color:#fff;
  font-family:'Mona Sans',Arial,Helvetica,sans-serif;
  font-size:13px;
  font-weight:750;
  letter-spacing:.07em;
  line-height:1.1;
  text-align:left;
  box-shadow:0 12px 26px #c8293233;
  transition:background .2s,box-shadow .3s
}
.nuevo-boton .icono-svg {
  width:16px;
  height:16px
}
@media(hover:hover) {
  .nuevo-boton:hover {
    box-shadow:0 16px 34px #c8293245
  }
}
.nuevo-boton-oscuro {
  background:var(--tinta);
  box-shadow:0 12px 26px #0000002b
}

.nuevo main .nuevo-hero {
  padding-top:clamp(20px,3vw,40px)
}
.nuevo-hero h1 {
  font-size:clamp(64px,8.4vw,124px)
}
.nuevo-subtitulo {
  margin-top:10px;
  color:var(--tinta) !important;
  font-size:clamp(26px,2.6vw,38px) !important;
  font-weight:750;
  letter-spacing:-.03em;
  line-height:1.1 !important
}
.nuevo-hero .nuevo-copia p:last-child {
  max-width:46ch
}
.nuevo-hero-foto {
  aspect-ratio:4/3
}
.nuevo-hero-foto img {
  object-position:center 45%
}

.nuevo-jesus .nuevo-foto img {
  object-position:58% center
}
.nuevo-jesus .nuevo-copia p:not(.nuevo-antetitulo) {
  max-width:48ch
}
.nuevo-jesus .nuevo-copia .nuevo-versiculo {
  max-width:34ch;
  margin-top:22px;
  padding-left:16px;
  border-left:2px solid #d92b3a;
  font-family:'Instrument Serif',Georgia,'Times New Roman',serif;
  font-size:clamp(21px,1.9vw,26px);
  font-style:italic;
  line-height:1.3;
  letter-spacing:-.01em
}
.nuevo-versiculo span {
  display:block;
  margin-top:8px;
  font-family:'Mona Sans',Arial,sans-serif;
  font-size:11px;
  font-style:normal;
  font-weight:700;
  letter-spacing:.2em;
  text-transform:uppercase;
  opacity:.6
}

.nuevo-quiere h2 {
  font-size:clamp(30px,2.8vw,40px) !important;
  letter-spacing:-.03em !important;
  text-align:center
}
.nuevo-pasos {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:clamp(14px,2vw,24px);
  margin:clamp(30px,4vw,48px) 0 0;
  padding:0;
  list-style:none
}
.nuevo-pasos li {
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:18px;
  text-align:center
}
.nuevo-paso-ilustracion {
  display:grid;
  place-items:center;
  width:100%;
  aspect-ratio:1;
  border:1px solid #e6e2dc;
  border-radius:16px;
  background:#fff
}
.nuevo-paso-ilustracion svg {
  width:62%;
  fill:none;
  stroke:var(--tinta);
  stroke-width:2.4;
  stroke-linecap:round;
  stroke-linejoin:round
}
.nuevo-paso-ilustracion .acento {
  stroke:var(--rojo);
  stroke-width:3.2
}
.nuevo-paso-ilustracion .rayos {
  stroke:var(--rojo);
  stroke-width:1.8;
  opacity:.7
}
.nuevo-pasos p {
  color:var(--tinta) !important;
  font-size:clamp(14px,1.1vw,16px) !important;
  line-height:1.35 !important
}

.nuevo-caminemos .nuevo-foto img {
  object-position:100% center
}
.nuevo-caminemos .nuevo-copia p:not(.nuevo-antetitulo) {
  max-width:48ch
}

.nuevo-ubicacion-sub,
.nuevo-conectate-sub {
  margin-top:10px;
  color:var(--tinta) !important;
  font-size:clamp(20px,1.8vw,26px) !important;
  letter-spacing:-.03em
}
.nuevo-ubicacion-tarjeta {
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  align-items:center;
  gap:clamp(28px,4vw,56px);
  margin-top:clamp(30px,4vw,46px);
  padding:clamp(24px,3.6vw,48px);
  border-radius:clamp(18px,2vw,24px);
  background:#fff;
  box-shadow:0 18px 44px #2a201614
}
.nuevo-ubicacion-tarjeta h3 {
  margin:0;
  font-size:clamp(28px,2.6vw,38px);
  font-weight:750;
  letter-spacing:-.03em;
  line-height:1.05
}
.nuevo-ubicacion-tarjeta address {
  color:var(--tinta);
  font-size:clamp(15px,1.15vw,17px);
  font-style:normal;
  font-weight:600;
  line-height:1.5
}
.nuevo-botones {
  display:flex;
  flex-wrap:wrap;
  gap:12px
}
.nuevo-mapa {
  overflow:hidden;
  aspect-ratio:16/11;
  border-radius:clamp(12px,1.4vw,18px);
  background:#e8e4de
}
.nuevo-mapa iframe {
  width:100%;
  height:100%;
  border:0
}
.nuevo-mapa {
  position:relative
}
.nuevo-mapa-pulso,
.nuevo-mapa-pulso::after {
  position:absolute;
  top:50%;
  left:50%;
  z-index:1;
  width:58px;
  height:20px;
  margin:-10px 0 0 -29px;
  border:2px solid var(--rojo);
  border-radius:50%;
  pointer-events:none;
  animation:nuevo-pulso 2.4s cubic-bezier(.2,.7,.3,1) infinite
}
.nuevo-mapa-pulso::after {
  content:'';
  top:-2px;
  left:-2px;
  margin:0;
  animation-delay:1.2s
}
@keyframes nuevo-pulso {
  0% { transform:scale(.3); opacity:.9 }
  100% { transform:scale(1.8); opacity:0 }
}

.nuevo-recursos {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:clamp(20px,2.2vw,28px);
  margin-top:clamp(18px,2vw,24px)
}

.nuevo-recurso {
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:16px
}
.nuevo-recurso .nuevo-foto {
  width:100%;
  aspect-ratio:16/10;
  margin-bottom:10px
}
.nuevo-recurso .nuevo-foto img {
  object-position:center 35%
}
.nuevo-recurso .nuevo-foto-evento img {
  object-position:100% center
}
.nuevo-recurso .nuevo-foto-comunidad img {
  object-position:center 28%
}
.nuevo-recurso h3 {
  margin:0;
  font-size:clamp(28px,2.7vw,40px);
  font-weight:800;
  letter-spacing:-.035em;
  line-height:1.05
}
.nuevo-recurso p {
  max-width:56ch
}

.nuevo main .nuevo-fe {
  padding-bottom:clamp(80px,9vw,130px)
}
.nuevo-foto-pastores {
  max-width:520px;
  aspect-ratio:4/5;
  justify-self:center;
  width:100%
}
.nuevo-foto-pastores img {
  object-position:center 20%
}
.nuevo-fe h2 {
  font-size:clamp(50px,6vw,86px) !important
}
.nuevo-fe .nuevo-copia p:not(.nuevo-antetitulo) {
  max-width:46ch
}

.animar .nuevo-hero .nuevo-copia,
.animar .nuevo-hero-foto {
  visibility:hidden
}
.nuevo-linea-mask {
  margin:-.14em 0 -.16em;
  padding:.14em 0 .16em
}
.nuevo-foto img {
  will-change:transform
}

@media(max-width:900px) {
  .nuevo-pasos {
    grid-template-columns:repeat(2,minmax(0,1fr))
  }
  .nuevo-ubicacion-tarjeta {
    grid-template-columns:1fr
  }
}
@media(max-width:760px) {
  .nuevo main section {
    padding:46px 0
  }
  .nuevo main .nuevo-hero {
    padding-top:16px
  }
  .nuevo main .nuevo-fe {
    padding-bottom:70px
  }
  .nuevo-copia {
    gap:16px
  }
  .nuevo-boton {
    gap:18px;
    min-height:52px;
    margin-top:6px;
    padding:0 16px 0 22px;
    background:radial-gradient(circle at calc(100% - 24px) 50%,#fff 0 18px,transparent 18.5px),var(--rojo);
    font-size:12px
  }
  .nuevo-boton-oscuro {
    background:radial-gradient(circle at calc(100% - 24px) 50%,#fff 0 18px,transparent 18.5px),var(--tinta)
  }
  .nuevo-boton .icono-svg {
    color:var(--rojo)
  }
  .nuevo-boton-oscuro .icono-svg {
    color:var(--tinta)
  }
  .nuevo-dos,
  .nuevo-recursos {
    grid-template-columns:1fr
  }
  .nuevo-dos-invertido > .nuevo-foto {
    order:2
  }
  .nuevo-hero-foto {
    aspect-ratio:5/4
  }
  .nuevo-foto-alta {
    aspect-ratio:4/3
  }
  .nuevo-botones {
    width:100%
  }
  .nuevo-botones {
    gap:8px
  }
  .nuevo-botones .nuevo-boton {
    gap:10px;
    min-height:48px;
    padding:0 12px 0 16px;
    background:radial-gradient(circle at calc(100% - 20px) 50%,#fff 0 15px,transparent 15.5px),var(--tinta);
    font-size:11px;
    letter-spacing:.05em
  }
  .nuevo-pasos {
    gap:14px 12px
  }
}
@media(prefers-reduced-motion:reduce) {
  .nuevo-mapa-pulso {
    display:none
  }
  .nuevo-boton {
    transition:none
  }
}
