/* Footer 5 columnas */
.footer-grid.footer-grid--five{
  grid-template-columns:minmax(220px,1.35fr) minmax(120px,.78fr) minmax(150px,.95fr) minmax(130px,.82fr) minmax(190px,1.1fr);
  gap:38px;
  align-items:start;
}

.footer-grid.footer-grid--five > div{
  min-width:0;
}

.footer-grid.footer-grid--five h3{
  margin-top:0;
}

@media(max-width:1100px){
  .footer-grid.footer-grid--five{
    grid-template-columns:1.25fr repeat(2,1fr);
    gap:34px 42px;
  }
}

@media(max-width:760px){
  .footer-grid.footer-grid--five{
    grid-template-columns:1fr 1fr;
    gap:30px 28px;
  }

  .footer-grid.footer-grid--five .footer-brand{
    grid-column:1/-1;
  }
}

@media(max-width:520px){
  .footer-grid.footer-grid--five{
    grid-template-columns:1fr;
    gap:26px;
  }

  .footer-grid.footer-grid--five .footer-brand{
    grid-column:auto;
  }
}


/* =========================================================
   NEWSLETTER
========================================================= */

.newsletter-band{
  width:100%;
  background:#34332f;
  color:#f6f0e6;
  border-top:1px solid rgba(255,255,255,.05);
  border-bottom:1px solid rgba(255,255,255,.08);
}

.newsletter-band-inner{
  min-height:190px;
  padding-top:38px;
  padding-bottom:38px;
  display:grid;
  grid-template-columns:minmax(280px,.95fr) minmax(520px,1.35fr);
  align-items:center;
  gap:54px;
}

.newsletter-copy h2{
  margin:0;
  max-width:570px;
  color:#fffaf2;
  font-family:Georgia,'Times New Roman',serif;
  font-size:clamp(1.72rem,2.5vw,2.5rem);
  font-weight:500;
  line-height:1.08;
  letter-spacing:-.02em;
}

.newsletter-copy h2 span{
  display:block;
  margin-top:3px;
  color:rgba(246,240,230,.68);
}

.newsletter-copy p{
  max-width:560px;
  margin:14px 0 0;
  color:rgba(246,240,230,.70);
  font-size:.86rem;
  line-height:1.55;
}

.newsletter-fields{
  position:relative;
  display:grid;
  grid-template-columns:minmax(130px,.72fr) minmax(210px,1.15fr) auto;
  gap:10px;
  align-items:stretch;
}

.newsletter-fields input{
  width:100%;
  min-width:0;
  height:48px;
  padding:0 15px;
  border:1px solid rgba(246,240,230,.28);
  background:rgba(255,255,255,.055);
  color:#fffaf2;
  font:inherit;
  font-size:.88rem;
  outline:none;
}

.newsletter-fields input::placeholder{
  color:rgba(246,240,230,.58);
}

.newsletter-fields input:focus{
  border-color:rgba(246,240,230,.72);
  background:rgba(255,255,255,.085);
}

.newsletter-submit{
  min-height:48px;
  padding:0 19px;
  border:1px solid #f6f0e6;
  background:#f6f0e6;
  color:#2f2e2a;
  font:inherit;
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.045em;
  text-transform:uppercase;
  white-space:nowrap;
  cursor:pointer;
}

.newsletter-submit:hover,
.newsletter-submit:focus-visible{
  background:transparent;
  color:#fffaf2;
}

.newsletter-submit:disabled{
  opacity:.62;
  cursor:wait;
}

.newsletter-meta{
  margin-top:10px;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
}

.newsletter-privacy,
.newsletter-feedback{
  margin:0;
  color:rgba(246,240,230,.56);
  font-size:.69rem;
  line-height:1.45;
}

.newsletter-privacy a{
  color:inherit;
  text-decoration:underline;
  text-underline-offset:2px;
}

.newsletter-feedback{
  min-height:1em;
  color:#f6f0e6;
  text-align:right;
}

.newsletter-feedback.is-error{
  color:#ffd5cc;
}

.newsletter-sr-only{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
  border:0!important;
}

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

@media(max-width:1050px){
  .newsletter-band-inner{
    grid-template-columns:1fr;
    gap:26px;
  }

  .newsletter-copy h2,
  .newsletter-copy p{
    max-width:760px;
  }
}

@media(max-width:760px){
  .newsletter-band-inner{
    padding-top:34px;
    padding-bottom:34px;
  }

  .newsletter-fields{
    grid-template-columns:1fr 1fr;
  }

  .newsletter-submit{
    grid-column:1/-1;
    width:100%;
  }

  .newsletter-meta{
    display:block;
  }

  .newsletter-feedback{
    margin-top:8px;
    text-align:left;
  }
}

@media(max-width:520px){
  .newsletter-band-inner{
    padding-top:30px;
    padding-bottom:30px;
  }

  .newsletter-copy h2{
    font-size:1.85rem;
  }

  .newsletter-fields{
    grid-template-columns:1fr;
  }

  .newsletter-submit{
    grid-column:auto;
  }

  .newsletter-fields input,
  .newsletter-submit{
    min-height:50px;
  }
}


/* =========================================================
   NEWSLETTER · AJUSTES v2 · 2026-09-19
========================================================= */

.newsletter-form-intro{
  margin:0 0 8px;
  color:rgba(246,240,230,.56);
  font-size:.69rem;
  line-height:1.45;
  white-space:nowrap;
}

/* Ya no hay párrafo descriptivo debajo del título. */
.newsletter-copy > p{
  display:none;
}

@media(max-width:760px){
  .newsletter-form-intro{
    white-space:normal;
  }
}


/* =========================================================
   NEWSLETTER · FRASE EN DOS LÍNEAS · v3
========================================================= */

@media(min-width:1051px){
  .newsletter-band-inner{
    grid-template-columns:minmax(570px,1.05fr) minmax(560px,1.15fr);
    gap:44px;
  }

  .newsletter-copy h2{
    max-width:none;
    font-size:clamp(1.8rem,2.15vw,2.18rem);
  }

  .newsletter-copy h2 span{
    display:block;
    white-space:nowrap;
  }
}

@media(max-width:1050px){
  .newsletter-copy h2 span{
    white-space:normal;
  }
}


/* =========================================================
   NEWSLETTER · CORRECCIÓN DE SOLAPAMIENTO · v4
========================================================= */

@media(min-width:1051px){
  .newsletter-band-inner{
    grid-template-columns:minmax(500px,.95fr) minmax(620px,1.2fr);
    gap:54px;
  }

  .newsletter-copy{
    min-width:0;
  }

  .newsletter-copy h2{
    max-width:540px;
    font-size:1.72rem;
    line-height:1.08;
  }

  .newsletter-copy h2 span{
    display:block;
    white-space:nowrap;
  }

  .newsletter-form{
    min-width:0;
  }
}

@media(min-width:1051px) and (max-width:1220px){
  .newsletter-band-inner{
    grid-template-columns:minmax(460px,.9fr) minmax(540px,1.1fr);
    gap:38px;
  }

  .newsletter-copy h2{
    max-width:500px;
    font-size:1.58rem;
  }
}