/* ============================================================
   CATEDRAL SAN JUAN BAUTISTA · FRISO DEL SANTO / FESTIVIDAD
   2026-11-05 · ÚNICO CAMBIO DE DISEÑO
   Una composición continua, sin tarjeta dentro de otra.
   Esta hoja debe cargarse después de portada-movil-2026.css.
   ============================================================ */

.sv-home .sv-today.sv-today--friso {
  --friso-marfil: #fbf8f2;
  --friso-azul: #173e57;
  --friso-oro: #b59a73;
  position: relative;
  isolation: isolate;
  display: grid;
  grid-template-columns: 76px minmax(270px, 1.35fr) minmax(0, 1.2fr);
  align-items: center;
  gap: clamp(20px, 3.1vw, 46px);
  min-height: 140px;
  width: min(1240px, calc(100% - 88px));
  margin: 24px auto 20px;
  padding: 25px clamp(24px, 3.1vw, 44px);
  border: 1px solid rgba(118, 130, 125, .18);
  border-bottom-color: rgba(165, 144, 112, .36);
  border-radius: 2px;
  color: #302b27;
  background: linear-gradient(112deg,
       rgba(253, 251, 247, .99) 0%,
       rgba(250, 248, 242, .98) 42%,
       rgba(239, 246, 246, .96) 100%);
  box-shadow: 0 16px 38px rgba(21, 55, 69, .075),
              0 2px 7px rgba(30, 45, 52, .025);
}

/* Arco a modo de grabado, no estampado sobre el contenido. */
.sv-home .sv-today.sv-today--friso::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  height: auto;
  left: 0;
  right: 0;
  bottom: 0;
  opacity: 1;
  pointer-events: none;
  background:
    linear-gradient(180deg, rgba(183, 150, 101, .50), transparent 72%) left top / 2px 100% no-repeat,
    radial-gradient(ellipse at 83% 7%, rgba(176, 195, 193, .20), transparent 39%),
    radial-gradient(ellipse at 14% 100%, rgba(228, 208, 174, .16), transparent 36%);
}
.sv-home .sv-today.sv-today--friso::after {
  content: "";
  position: absolute;
  z-index: -1;
  width: 200px;
  height: 137px;
  right: 1.6%;
  top: 50%;
  inset-inline-start: auto;
  transform: translateY(-50%);
  opacity: .11;
  pointer-events: none;
  background: url('../img/sv-arch-tracery.svg') center/contain no-repeat;
}

.sv-home .sv-today--friso .sv-today__stamp {
  display: flex;
  grid-area: auto;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  align-self: center;
  width: 73px;
  min-height: 89px;
  margin: 0;
  border: 0;
  border-right: 1px solid rgba(137, 130, 111, .30);
  border-radius: 0;
  background: transparent;
  color: var(--friso-azul);
  box-shadow: none;
}
.sv-home .sv-today--friso .sv-today__stamp strong {
  color: var(--friso-azul);
  font: 400 42px/.90 'Cormorant Garamond', Georgia, serif;
  letter-spacing: -.035em;
}
.sv-home .sv-today--friso .sv-today__stamp small {
  margin-top: 10px;
  font: 700 10px/1 'DM Sans', Arial, sans-serif;
  color: #907556;
  letter-spacing: .20em;
}

.sv-home .sv-today--friso .sv-today__heading {
  display: block;
  grid-area: auto;
  align-self: center;
  min-width: 0;
  margin: 0;
  padding: 0;
}
.sv-home .sv-today--friso .sv-today__heading .sv-eyebrow {
  display: block;
  margin-bottom: 10px;
  color: #4a6a77;
  font: 700 10px/1.35 'DM Sans', Arial, sans-serif;
  letter-spacing: .18em;
}
.sv-home .sv-today--friso .sv-today__heading h2 {
  margin: 0;
  color: #2c2924;
  font: 400 clamp(35px, 3.4vw, 46px)/1.02 'Cormorant Garamond', Georgia, serif;
  letter-spacing: -.015em;
  text-shadow: none;
}

/* Solo una línea editorial separa el santo del título. */
.sv-home .sv-today--friso .sv-santoral {
  grid-area: auto;
  display: flex;
  align-items: center;
  gap: 15px;
  min-width: 0;
  padding: 0 0 0 clamp(18px, 2.5vw, 35px);
  margin: 0;
  border: 0;
  border-left: 1px solid rgba(31, 71, 89, .18);
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
.sv-home .sv-today--friso .sv-santoral__icon {
  display: grid;
  place-items: center;
  flex: 0 0 32px;
  width: 32px;
  height: 32px;
  border: 1px solid rgba(178, 143, 99, .43);
  border-radius: 50%;
  background: rgba(255, 252, 247, .45);
  color: #9b7b54;
  font: 16px/1 Georgia, serif;
}
.sv-home .sv-today--friso .sv-santoral__content {min-width:0}
.sv-home .sv-today--friso .sv-santoral__label {
  display: block;
  margin: 0 0 6px;
  font: 700 10px/1.4 'DM Sans', Arial, sans-serif;
  letter-spacing: .17em;
  color: #40677b;
}
.sv-home .sv-today--friso .sv-santoral p {
  margin: 0;
  max-width: 540px;
  color: #6e6a64;
  font: 400 15px/1.55 'DM Sans', Arial, sans-serif;
}

@media (max-width: 1080px) and (min-width: 801px) {
  .sv-home .sv-today.sv-today--friso {
    grid-template-columns: 68px minmax(235px, 1.15fr) minmax(0, 1fr);
    gap: 20px;
    padding: 22px 25px;
  }
  .sv-home .sv-today--friso .sv-santoral {padding-left: 18px}
}

/* Móvil: una pieza de papelería editorial, no dos tarjetas apiladas. */
@media (max-width: 800px) {
  .sv-home .sv-today.sv-today--friso {
    grid-template-columns: 52px minmax(0,1fr)!important;
    gap: 0 16px!important;
    align-items: start!important;
    width: calc(100% - 36px)!important;
    max-width: 560px!important;
    min-height: 0!important;
    margin: 20px auto 12px!important;
    padding: 24px 20px 25px!important;
    border: 1px solid rgba(74, 119, 139, .23)!important;
    border-left: 3px solid #215b76!important;
    border-bottom-color: rgba(185,154,114,.43)!important;
    border-radius: 13px!important;
    background: radial-gradient(ellipse at 94% 13%,rgba(108,164,190,.19),transparent 48%),linear-gradient(115deg,#fffefb 0%,#f9f8f4 58%,#edf4f5 100%)!important;
    box-shadow: 0 1px 0 rgba(255,255,255,.95) inset,0 8px 22px rgba(16, 52, 69, .065),0 20px 38px rgba(32,40,41,.035)!important;
  }
  .sv-home .sv-today.sv-today--friso::after {
    width: 145px;
    height: 138px;
    right: -25px;
    top: auto;
    bottom: -18px;
    transform: none;
    opacity: .065;
  }
  .sv-home .sv-today--friso .sv-today__stamp {
    grid-column: 1!important;
    grid-row: 1/3!important;
    align-self: start!important;
    width: 52px!important;
    height: auto!important;
    min-height: 64px!important;
    margin: 2px 0 0!important;
    border: 0!important;
    border-right: 1px solid rgba(130, 123, 107,.28)!important;
    border-radius: 0!important;
    background: transparent!important;
    box-shadow: none!important;
  }
  .sv-home .sv-today--friso .sv-today__stamp strong {
    font: 400 35px/.94 'Cormorant Garamond', Georgia, serif!important;
    color: #19445c!important;
  }
  .sv-home .sv-today--friso .sv-today__stamp small {
    font: 700 10px/1 'DM Sans', Arial, sans-serif!important;
    color: #9a7e5e!important;
    letter-spacing: .17em!important;
  }
  .sv-home .sv-today--friso .sv-today__heading {
    grid-column: 2!important;
    grid-row: 1!important;
    margin: 0!important;
    padding: 0!important;
  }
  .sv-home .sv-today--friso .sv-today__heading .sv-eyebrow {
    margin: 0 0 7px!important;
    color: #5e7b85!important;
    font: 700 9px/1.45 'DM Sans', Arial, sans-serif!important;
    letter-spacing: .13em!important;
  }
  .sv-home .sv-today--friso .sv-today__heading h2 {
    font: 400 clamp(30px, 8vw, 36px)/1.02 'Cormorant Garamond', Georgia, serif!important;
    color: #243e4c!important;
    letter-spacing: -.015em!important;
  }
  .sv-home .sv-today--friso .sv-santoral {
    grid-column: 2!important;
    grid-row: 2!important;
    display: block!important;
    min-width: 0!important;
    padding: 9px 0 0!important;
    margin: 0!important;
    border: 0!important;
    border-radius: 0!important;
    background: transparent!important;
    box-shadow: none!important;
  }
  .sv-home .sv-today--friso .sv-santoral__icon {display:none!important}
  .sv-home .sv-today--friso .sv-santoral__label {
    display: none!important;
    margin-bottom: 4px!important;
    font: 700 9px/1.4 'DM Sans', Arial, sans-serif!important;
    color: #96784f!important;
    letter-spacing: .12em!important;
  }
    .sv-home .sv-today--friso .sv-santoral p {
    margin: 0!important;
    max-width: 420px!important;
    color: #67645f!important;
    font: 400 14px/1.61 'DM Sans', Arial, sans-serif!important;
  }
}

@media (max-width: 350px) {
  .sv-home .sv-today.sv-today--friso {
    width: calc(100% - 28px)!important;
    grid-template-columns: 46px minmax(0,1fr)!important;
    gap: 0 12px!important;
    padding: 18px 13px 21px!important;
  }
  .sv-home .sv-today--friso .sv-today__stamp {width:46px!important}
    .sv-home .sv-today--friso .sv-today__heading h2 {font-size:26px!important}
}

@media (prefers-reduced-motion: reduce) {
  .sv-home .sv-today--friso * {transition:none!important;animation:none!important}
}
