/* CATEDRAL SAN JUAN BAUTISTA — FIRMA INSTITUCIONAL
   Reorganiza SOLO el pie: imagen de fachada intacta, azul sobrio,
   tipografía editorial con contraste y contacto equilibrado. */
.sv-footer.sv-footer--signature {
  position:relative;
  isolation:isolate;
  overflow:hidden;
  background:#0a2a43 !important;
  color:#f9f6f0;
  border-top:1px solid rgba(214,198,171,.45) !important;
}
.sv-footer.sv-footer--signature::before {
  content:"";
  position:absolute;
  inset:0;
  z-index:-2;
  opacity:1;
  background:
    linear-gradient(100deg,rgba(4,26,44,.95) 0%,rgba(6,34,55,.89) 37%,rgba(8,40,63,.61) 67%,rgba(6,31,51,.80) 100%),
    url('../img/fachada-hero.png') center 53% / cover no-repeat !important;
}
.sv-footer.sv-footer--signature::after {
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:
    radial-gradient(ellipse at 66% 18%,rgba(116,158,178,.11),transparent 48%),
    linear-gradient(180deg,rgba(8,32,53,0) 48%,rgba(4,24,39,.35) 100%);
  pointer-events:none;
  opacity:1;
  filter:none;
}
.sv-footer--signature .sv-footer__inner {
  position:relative;
  z-index:1;
  width:min(1390px,calc(100% - 76px));
  margin-inline:auto;
  padding:52px 0 25px;
}
.sv-footer--signature .sv-footer__top {
  display:grid;
  grid-template-columns:minmax(0,1.4fr) minmax(280px,.6fr);
  align-items:center;
  gap:clamp(45px,8vw,150px);
}
.sv-footer--signature .sv-footer__brand {min-width:0;}
.sv-footer--signature .sv-footer__kicker {
  display:inline-flex;
  align-items:center;
  gap:12px;
  font-family:'DM Sans',Arial,sans-serif;
  font-size:10px;
  font-weight:500;
  line-height:1.3;
  letter-spacing:.26em;
  color:rgba(236,240,241,.91);
}
.sv-footer--signature .sv-footer__symbol {
  display:inline-grid;
  place-items:center;
  font-family:Georgia,serif;
  font-size:17px;
  font-weight:400;
  line-height:1;
  color:#d3b992;
}
.sv-footer--signature .sv-footer__brand h2 {
  margin:11px 0 10px !important;
  color:#fffaf5 !important;
  font-family:'Cormorant Garamond',Georgia,serif !important;
  font-weight:400 !important;
  font-size:clamp(48px,4.4vw,69px) !important;
  line-height:.95 !important;
  letter-spacing:-.025em !important;
  text-shadow:0 3px 16px rgba(3,20,36,.22) !important;
  white-space:normal;
  text-wrap:balance;
}
.sv-footer--signature .sv-footer__brand h2 em {
  color:#f1ddc2;
  font-weight:400;
  font-style:italic;
}
.sv-footer--signature .sv-footer__identity-row {
  display:flex;
  align-items:center;
  gap:22px;
  max-width:560px;
  margin:0 0 23px;
}
.sv-footer--signature .sv-footer__place {
  margin:0;
  flex-shrink:0;
  color:rgba(235,242,246,.86);
  font-family:'DM Sans',Arial,sans-serif;
  font-size:10px;
  font-weight:500;
  line-height:1.6;
  letter-spacing:.22em;
}
.sv-footer--signature .sv-footer__place span {color:#c9a779;margin-inline:4px;}
.sv-footer--signature .sv-footer__identity-rule {
  display:block;
  height:1px;
  width:min(165px,27vw);
  background:linear-gradient(90deg,rgba(209,183,147,.76),rgba(233,233,229,0));
}
.sv-footer--signature .sv-footer__quote {
  display:flex;
  align-items:baseline;
  flex-wrap:wrap;
  column-gap:12px;
  row-gap:4px;
  margin:0;
  color:rgba(250,248,245,.93);
  font-family:'Cormorant Garamond',Georgia,serif;
  font-size:clamp(19px,1.6vw,23px) !important;
  line-height:1.25;
  font-weight:400 !important;
  font-style:italic;
  letter-spacing:.005em;
}
.sv-footer--signature .sv-footer__quotemark {
  color:#d2b990;
  font-family:'Cormorant Garamond',Georgia,serif;
  font-size:34px;
  line-height:.68;
  transform:translateY(7px);
}
.sv-footer--signature .sv-footer__quote span:last-child {
  margin:0 0 0 4px;
  color:#c1d1db;
  font-family:'DM Sans',Arial,sans-serif;
  font-size:9px !important;
  font-style:normal !important;
  font-weight:500 !important;
  letter-spacing:.12em !important;
  white-space:nowrap;
}
.sv-footer--signature .sv-footer__contact {
  position:relative;
  justify-self:end;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  width:min(100%,330px);
  padding:28px 30px 24px !important;
  text-align:left !important;
  gap:12px !important;
  margin:0 !important;
  border:1px solid rgba(237,243,247,.23);
  border-radius:7px;
  background:linear-gradient(115deg,rgba(3,25,45,.52),rgba(11,52,78,.19));
  box-shadow:0 14px 37px rgba(2,17,32,.12),inset 0 1px 0 rgba(255,255,255,.06);
  backdrop-filter:blur(3px);
  -webkit-backdrop-filter:blur(3px);
}
.sv-footer--signature .sv-footer__contact::before {
  content:"";
  position:absolute;
  top:22px;
  left:-1px;
  bottom:22px;
  width:2px;
  background:linear-gradient(180deg,transparent,rgba(229,203,162,.85),transparent);
}
.sv-footer--signature .sv-footer__contact small {
  display:block;
  margin:0 !important;
  color:rgba(236,244,249,.83);
  font-family:'DM Sans',Arial,sans-serif;
  font-size:10px !important;
  font-weight:500 !important;
  letter-spacing:.24em !important;
  line-height:1.5 !important;
}
.sv-footer--signature .sv-footer__contact a {
  display:inline-flex;
  align-items:center;
  gap:12px;
  width:auto;
  max-width:100%;
  text-decoration:none;
  color:#fffaf5 !important;
  font-family:'Cormorant Garamond',Georgia,serif !important;
  font-weight:400 !important;
  font-style:normal !important;
  font-size:clamp(28px,2.4vw,34px) !important;
  line-height:1.12 !important;
  letter-spacing:.016em !important;
  white-space:nowrap;
  font-variant-numeric:lining-nums;
}
.sv-footer--signature .sv-footer__contact a svg {
  width:19px;
  height:19px;
  flex:0 0 auto;
  color:#dec7a5;
  opacity:.88;
}
.sv-footer--signature .sv-footer__contact a:hover span {text-decoration:underline;text-underline-offset:5px;}
.sv-footer--signature .sv-footer__contact-rule {
  width:100%;
  height:1px;
  margin-top:4px;
  background:linear-gradient(90deg,rgba(220,230,237,.25),transparent);
}
.sv-footer--signature .sv-footer__bottom {
  display:flex;
  flex-direction:row;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-top:40px;
  padding-top:17px;
  border-top:1px solid rgba(217,232,239,.24);
}
.sv-footer--signature .sv-footer__social {display:flex;gap:10px;align-items:center;}
.sv-footer--signature .sv-footer__social>span {
  margin-right:10px;
  color:rgba(225,238,244,.81);
  font-family:'DM Sans',Arial,sans-serif;
  font-weight:500 !important;
  font-size:10px !important;
  letter-spacing:.20em !important;
}
.sv-footer--signature .sv-footer__social a {
  width:34px;
  height:34px;
  border-color:rgba(228,239,245,.33);
  background:rgba(9,39,63,.30);
  transition:background .22s,border-color .22s,transform .22s;
}
.sv-footer--signature .sv-footer__social a:hover {
  background:rgba(230,240,244,.15);
  border-color:rgba(245,248,250,.66);
  transform:translateY(-2px);
}
.sv-footer--signature .sv-footer__copyright {
  margin:0;
  color:rgba(224,234,240,.72);
  font-family:'DM Sans',Arial,sans-serif;
  font-size:10px !important;
  font-weight:400;
  line-height:1.55;
  letter-spacing:.012em;
}
@media(max-width:760px){
  .sv-footer.sv-footer--signature .sv-footer__inner {
    width:calc(100% - 44px) !important;
    max-width:550px !important;
    padding:40px 0 23px !important;
  }
  .sv-footer.sv-footer--signature .sv-footer__top {
    display:flex !important;
    flex-direction:column !important;
    align-items:stretch !important;
    gap:25px !important;
  }
  .sv-footer--signature .sv-footer__kicker {font-size:9px;}
  .sv-footer--signature .sv-footer__brand h2 {
    font-size:clamp(39px,10.1vw,50px) !important;
    margin:12px 0 10px !important;
    line-height:.99 !important;
  }
  .sv-footer--signature .sv-footer__identity-row {margin-bottom:19px;gap:15px;}
  .sv-footer--signature .sv-footer__identity-rule {width:80px;}
  .sv-footer--signature .sv-footer__quote {font-size:20px !important;}
  .sv-footer.sv-footer--signature .sv-footer__contact {
    display:flex !important;
    flex-direction:column !important;
    align-items:flex-start !important;
    width:100%;
    padding:19px 23px 17px !important;
    gap:9px !important;
    border-radius:9px;
  }
  .sv-footer.sv-footer--signature .sv-footer__contact a {
    font-size:clamp(27px,7.3vw,33px) !important;
    line-height:1.1 !important;
  }
  .sv-footer--signature .sv-footer__contact a svg {width:17px;height:17px;}
  .sv-footer.sv-footer--signature .sv-footer__bottom {
    display:flex !important;
    flex-direction:column !important;
    align-items:flex-start !important;
    gap:15px !important;
    margin-top:25px !important;
    padding-top:16px !important;
  }
  .sv-footer--signature .sv-footer__copyright {font-size:10px !important;}
  .sv-footer.sv-footer--signature::before {
    background:
      linear-gradient(98deg,rgba(4,27,46,.93) 0%,rgba(7,37,59,.81) 68%,rgba(6,35,56,.79)),
      url('../img/fachada-hero.png') 55% center / cover no-repeat !important;
  }
}
@media(max-width:350px){
  .sv-footer.sv-footer--signature .sv-footer__inner {width:calc(100% - 32px) !important;}
  .sv-footer--signature .sv-footer__brand h2 {font-size:37px !important;}
  .sv-footer.sv-footer--signature .sv-footer__contact a {font-size:26px !important;}
  .sv-footer--signature .sv-footer__identity-row {gap:8px;}
  .sv-footer--signature .sv-footer__identity-rule {width:42px;}
}
@media(prefers-reduced-motion:reduce){
  .sv-footer--signature .sv-footer__social a {transition:none;}
}
