:root{--v2-ink:#202321;--v2-muted:#6c726e;--v2-line:#e8ebe8;--v2-soft:#f6f7f5;--v2-accent:#6d2435;--v2-accent-dark:#521a28;--v2-radius:18px;--v2-shadow:0 14px 40px rgba(25,35,29,.07)}
*{box-sizing:border-box}.v2-body{margin:0;background:#fff;color:var(--v2-ink);font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;line-height:1.65}.v2-container{max-width:1280px}.v2-skip{position:absolute;left:-9999px}.v2-skip:focus{left:1rem;top:1rem;z-index:9999;background:#fff;padding:.75rem 1rem;border:1px solid var(--v2-line)}
.v2-header{background:rgba(255,255,255,.96);border-bottom:1px solid var(--v2-line);backdrop-filter:blur(14px)}.v2-header .navbar{min-height:76px}.v2-brand{display:flex;align-items:center;gap:.75rem;color:var(--v2-ink);letter-spacing:-.02em}.v2-brand:hover{color:var(--v2-ink)}.v2-brand-mark{width:40px;height:40px;border:1px solid var(--v2-line);border-radius:50%;display:grid;place-items:center;color:var(--v2-accent)}.v2-brand span:last-child{display:flex;flex-direction:column;line-height:1.05}.v2-brand strong{font-family:Georgia,"Times New Roman",serif;font-size:1.18rem}.v2-brand small{font-size:.72rem;font-weight:500;color:var(--v2-muted);margin-top:.25rem}.v2-header .nav-link{color:#4d534f;font-weight:600;font-size:.93rem;padding:.65rem .8rem!important;border-radius:999px}.v2-header .nav-link:hover{color:var(--v2-accent);background:var(--v2-soft)}.v2-nav-highlight{color:var(--v2-accent)!important}
.v2-hero,.v2-category-hero{background:linear-gradient(180deg,#fbfcfb 0%,#fff 100%);border-bottom:1px solid var(--v2-line)}.py-lg-6{padding-top:5rem!important;padding-bottom:5rem!important}.v2-eyebrow{display:inline-block;color:var(--v2-accent);font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.14em;margin-bottom:.75rem}.v2-hero h1,.v2-category-hero h1{font-family:Georgia,"Times New Roman",serif;font-weight:500;font-size:clamp(2.5rem,6vw,5.2rem);line-height:1.02;letter-spacing:-.045em;margin:0 0 1.25rem}.v2-lead{max-width:720px;color:var(--v2-muted);font-size:clamp(1.05rem,2vw,1.28rem);line-height:1.65}.v2-breadcrumb{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;font-size:.82rem;color:var(--v2-muted)}.v2-breadcrumb a{color:var(--v2-muted);text-decoration:none}.v2-breadcrumb a:hover{color:var(--v2-accent)}.v2-breadcrumb i{font-size:.55rem;color:#a5aaa6}.v2-search{height:54px;border:1px solid var(--v2-line);border-radius:999px;background:#fff;display:flex;align-items:center;gap:.75rem;padding:0 1.1rem;box-shadow:0 8px 30px rgba(20,30,25,.04)}.v2-search i{color:#9aa09c}.v2-search input{border:0;outline:0;width:100%;background:transparent;font-size:.95rem}.v2-section-head{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin-bottom:2rem}.v2-section-head h2{font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.8rem,3vw,2.65rem);letter-spacing:-.03em;margin:0}.v2-count{color:var(--v2-muted);font-size:.9rem}
.v2-category-card,.v2-article-card{border:1px solid var(--v2-line);border-radius:var(--v2-radius);overflow:hidden;background:#fff;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}.v2-category-card:hover,.v2-article-card:hover{transform:translateY(-4px);box-shadow:var(--v2-shadow);border-color:#dfe3df}.v2-category-image,.v2-article-image{display:block;position:relative;aspect-ratio:3/2;overflow:hidden;background:var(--v2-soft)}.v2-category-image img,.v2-article-image img,.v2-hero-image img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}.v2-category-card:hover img,.v2-article-card:hover img{transform:scale(1.025)}.v2-image-fallback{width:100%;height:100%;display:grid;place-items:center;background:linear-gradient(135deg,#f4f5f3,#ecefeb);color:#a2a8a3;font-size:2rem}.v2-category-body,.v2-article-body{padding:1.5rem}.v2-category-meta{font-size:.75rem;color:var(--v2-accent);font-weight:800;text-transform:uppercase;letter-spacing:.08em;margin-bottom:.65rem}.v2-category-card h3,.v2-article-card h3{font-family:Georgia,"Times New Roman",serif;font-size:1.5rem;line-height:1.2;margin-bottom:.8rem}.v2-category-card h3 a,.v2-article-card h3 a{color:var(--v2-ink);text-decoration:none}.v2-category-card p,.v2-article-card p{color:var(--v2-muted);font-size:.94rem}.v2-text-link{display:inline-flex;align-items:center;gap:.5rem;color:var(--v2-accent);font-size:.88rem;font-weight:800;text-decoration:none}.v2-text-link:hover{color:var(--v2-accent-dark)}.v2-text-link i{font-size:.75rem;transition:transform .2s}.v2-text-link:hover i{transform:translateX(3px)}
.v2-hero-image{aspect-ratio:5/3;border-radius:26px;overflow:hidden;background:var(--v2-soft);box-shadow:var(--v2-shadow)}.v2-hero-meta{display:flex;gap:1rem;margin-top:1.5rem;color:var(--v2-muted);font-size:.88rem}.v2-hero-meta i{color:var(--v2-accent);margin-right:.35rem}.v2-article-meta{display:flex;flex-wrap:wrap;gap:.55rem 1rem;color:var(--v2-muted);font-size:.76rem;margin-bottom:.75rem}.v2-article-meta i{color:#949a96;margin-right:.25rem}.v2-media-badge{position:absolute;left:1rem;bottom:1rem;background:rgba(255,255,255,.94);color:var(--v2-ink);font-size:.72rem;font-weight:800;padding:.42rem .65rem;border-radius:999px;box-shadow:0 4px 18px rgba(0,0,0,.12)}.v2-empty{text-align:center;padding:5rem 1rem;background:var(--v2-soft);border-radius:var(--v2-radius);color:var(--v2-muted)}.v2-empty i{font-size:2rem;margin-bottom:1rem;color:#a0a6a1}.v2-empty h3{font-family:Georgia,"Times New Roman",serif;color:var(--v2-ink)}.v2-pagination-wrap{padding-top:3rem}.pagination{gap:.35rem}.page-link{border:1px solid var(--v2-line);border-radius:10px!important;color:var(--v2-ink);min-width:42px;text-align:center}.page-link:hover{color:var(--v2-accent);background:var(--v2-soft);border-color:var(--v2-line)}.active>.page-link{background:var(--v2-accent);border-color:var(--v2-accent)}.v2-footer{border-top:1px solid var(--v2-line);background:#fafbfa;color:var(--v2-muted)}.v2-footer-title{font-family:Georgia,"Times New Roman",serif;font-size:1.35rem;color:var(--v2-ink);margin-bottom:.4rem}.v2-footer a{color:var(--v2-ink);text-decoration:none}
@media(max-width:991.98px){.v2-header .navbar-collapse{padding:1rem 0}.v2-header .nav-link{border-radius:10px}.py-lg-6{padding-top:3.5rem!important;padding-bottom:3.5rem!important}.v2-category-hero .row{flex-direction:column-reverse}.v2-hero-image{aspect-ratio:16/9}.v2-section-head{align-items:start}}
@media(max-width:575.98px){.v2-header .navbar{min-height:66px}.v2-brand-mark{width:36px;height:36px}.v2-brand strong{font-size:1.05rem}.v2-hero h1,.v2-category-hero h1{font-size:2.55rem}.v2-category-body,.v2-article-body{padding:1.2rem}.v2-section-head{display:block}.v2-count{display:block;margin-top:.5rem}.v2-article-card h3,.v2-category-card h3{font-size:1.35rem}.v2-hero-image{border-radius:18px}.v2-search{height:50px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* v2.0.1 - densidad móvil más compacta */
@media(max-width:575.98px){
  .py-lg-6{padding-top:2.15rem!important;padding-bottom:2.15rem!important}
  .v2-hero h1,.v2-category-hero h1{font-size:2.15rem;margin-bottom:.75rem;line-height:1.05}
  .v2-eyebrow{margin-bottom:.45rem}
  .v2-lead{font-size:1rem;line-height:1.5;margin-bottom:0}
  .v2-breadcrumb{gap:.4rem;font-size:.76rem;margin-bottom:.9rem!important}
  .v2-hero-image{border-radius:14px;margin-bottom:.15rem}
  .v2-hero-meta{margin-top:.85rem;gap:.65rem;flex-wrap:wrap}
  .v2-section-head{margin-bottom:1.15rem}
  .v2-section-head h2{font-size:1.65rem}
  .v2-count{margin-top:.25rem}
  .v2-search{height:46px;padding:0 .9rem}
  .v2-category-card,.v2-article-card{border-radius:14px}
  .v2-category-body,.v2-article-body{padding:.9rem 1rem 1rem}
  .v2-category-meta{margin-bottom:.35rem}
  .v2-article-meta{margin-bottom:.45rem;gap:.35rem .7rem}
  .v2-article-card h3,.v2-category-card h3{font-size:1.22rem;margin-bottom:.5rem}
  .v2-category-card p,.v2-article-card p{font-size:.9rem;line-height:1.48;margin-bottom:.65rem}
  .v2-pagination-wrap{padding-top:1.75rem}
  .v2-empty{padding:2.5rem 1rem}
  main .py-5{padding-top:2rem!important;padding-bottom:2rem!important}
  main .g-4{--bs-gutter-y:.9rem}
}

/* v2.1.0 — portada visual */
.v2-home-hero{background:linear-gradient(180deg,#fafbf9 0,#fff 100%);border-bottom:1px solid var(--v2-line)}
.v2-home-hero h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.7rem,5.8vw,5.4rem);font-weight:500;line-height:.98;letter-spacing:-.05em;max-width:760px}
.v2-btn-primary,.v2-btn-light{border-radius:999px;padding:.78rem 1.15rem;font-weight:700;font-size:.9rem}.v2-btn-primary{background:var(--v2-accent);color:#fff}.v2-btn-primary:hover{background:var(--v2-accent-dark);color:#fff}.v2-btn-light{border:1px solid var(--v2-line);background:#fff;color:var(--v2-ink)}
.v2-home-feature{position:relative;display:block;aspect-ratio:5/4;border-radius:28px;overflow:hidden;background:var(--v2-soft);box-shadow:var(--v2-shadow);color:#fff}.v2-home-feature img{width:100%;height:100%;object-fit:cover}.v2-home-feature-shade{position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,rgba(10,13,11,.82) 100%)}.v2-home-feature-copy{position:absolute;left:2rem;right:2rem;bottom:1.8rem;display:flex;flex-direction:column;gap:.45rem}.v2-home-feature-copy small{text-transform:uppercase;letter-spacing:.13em;font-weight:800;font-size:.68rem}.v2-home-feature-copy strong{font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.45rem,2.7vw,2.25rem);line-height:1.12;font-weight:500}
.v2-bishop-section{background:#f5f3f0}.v2-bishop-card{display:grid;grid-template-columns:minmax(300px,.82fr) 1.18fr;max-width:1080px;margin:auto;background:#fff;border-radius:30px;overflow:hidden;box-shadow:var(--v2-shadow)}.v2-bishop-photo{min-height:520px;background:#e9e5e0}.v2-bishop-photo img{width:100%;height:100%;object-fit:cover;object-position:center top}.v2-bishop-copy{padding:clamp(2rem,5vw,5rem);align-self:center}.v2-bishop-copy h2{font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.25rem,4vw,4rem);line-height:1;letter-spacing:-.04em;margin-bottom:.65rem}.v2-bishop-role{font-weight:700;color:var(--v2-accent)}.v2-bishop-copy blockquote{font-family:Georgia,"Times New Roman",serif;font-size:1.35rem;border-left:2px solid var(--v2-accent);padding-left:1rem;margin:1.7rem 0;color:#4d443f}
.v2-prayer-tile{position:relative;display:block;min-height:280px;border-radius:20px;overflow:hidden;background:#30342f;color:#fff}.v2-prayer-tile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.v2-prayer-tile>span{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.78))}.v2-prayer-tile div{position:absolute;left:1.2rem;right:1.2rem;bottom:1.15rem;display:flex;flex-direction:column;gap:.3rem}.v2-prayer-tile small{text-transform:uppercase;letter-spacing:.1em;font-weight:800;font-size:.66rem}.v2-prayer-tile strong{font-family:Georgia,"Times New Roman",serif;font-size:1.18rem;line-height:1.2}
.v2-vatican{background:#f8f9f7;border-top:1px solid var(--v2-line);border-bottom:1px solid var(--v2-line)}.v2-section-note{color:var(--v2-muted);margin:.45rem 0 0}.v2-vatican-card{background:#fff;border:1px solid var(--v2-line);border-radius:18px;overflow:hidden}.v2-vatican-image{display:block;aspect-ratio:16/10;background:#ecefeb;overflow:hidden}.v2-vatican-image img{width:100%;height:100%;object-fit:cover}.v2-vatican-body{padding:1.2rem}.v2-vatican-body time{font-size:.72rem;color:var(--v2-muted)}.v2-vatican-body h3{font-family:Georgia,"Times New Roman",serif;font-size:1.2rem;line-height:1.25;margin:.55rem 0 1rem}.v2-vatican-body h3 a{color:var(--v2-ink);text-decoration:none}.v2-vatican-offline{display:flex;gap:1rem;align-items:flex-start;background:#fff;border:1px solid var(--v2-line);padding:1.5rem;border-radius:18px}.v2-vatican-offline p{margin:0;color:var(--v2-muted)}
.v2-quick-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--v2-line);border-radius:20px;overflow:hidden}.v2-quick-grid>a{display:flex;gap:.9rem;align-items:center;padding:1.35rem;color:var(--v2-ink);text-decoration:none;border-right:1px solid var(--v2-line)}.v2-quick-grid>a:last-child{border-right:0}.v2-quick-grid i{font-size:1.25rem;color:var(--v2-accent)}.v2-quick-grid span{display:flex;flex-direction:column}.v2-quick-grid small{color:var(--v2-muted);font-size:.76rem}
@media(max-width:991.98px){.v2-bishop-card{grid-template-columns:1fr 1fr}.v2-bishop-photo{min-height:430px}.v2-quick-grid{grid-template-columns:1fr 1fr}.v2-quick-grid>a:nth-child(2){border-right:0}.v2-quick-grid>a:nth-child(-n+2){border-bottom:1px solid var(--v2-line)}}
@media(max-width:575.98px){.v2-home-hero h1{font-size:2.55rem}.v2-home-feature{border-radius:18px;aspect-ratio:4/3}.v2-home-feature-copy{left:1.2rem;right:1.2rem;bottom:1.15rem}.v2-bishop-card{display:block;border-radius:18px}.v2-bishop-photo{height:420px;min-height:0}.v2-bishop-copy{padding:1.5rem}.v2-bishop-copy h2{font-size:2.2rem}.v2-prayer-tile{min-height:220px}.v2-quick-grid{grid-template-columns:1fr}.v2-quick-grid>a{border-right:0!important;border-bottom:1px solid var(--v2-line)}.v2-quick-grid>a:last-child{border-bottom:0}.v2-section-head .v2-text-link{margin-top:.75rem}}

/* v2.1.1 — página de Nuestro Obispo */
.v2-bishop-hero{background:linear-gradient(180deg,#f5f3f0 0,#fff 100%);border-bottom:1px solid var(--v2-line)}
.v2-bishop-portrait{max-width:470px;aspect-ratio:4/5;border-radius:30px;overflow:hidden;background:#e9e5e0;box-shadow:var(--v2-shadow)}.v2-bishop-portrait img{width:100%;height:100%;object-fit:cover;object-position:center top}
.v2-bishop-hero h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.8rem,5.5vw,5.6rem);font-weight:500;line-height:.98;letter-spacing:-.05em;margin-bottom:.8rem}.v2-bishop-hero-role{font-size:1.05rem;font-weight:800;color:var(--v2-accent);margin-bottom:1rem}
.v2-bishop-dates{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#dddeda;border:1px solid #dddeda;border-radius:18px;overflow:hidden;margin-top:2rem}.v2-bishop-dates>div{background:#fff;padding:1.1rem 1.2rem}.v2-bishop-dates small{display:block;color:var(--v2-muted);font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;font-weight:700;margin-bottom:.25rem}.v2-bishop-dates strong{font-family:Georgia,"Times New Roman",serif;font-size:1.03rem;font-weight:600}
.v2-editorial-title{font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.1rem,4vw,3.6rem);line-height:1.05;letter-spacing:-.04em;margin-bottom:1.5rem}.v2-prose{font-family:Georgia,"Times New Roman",serif;font-size:1.08rem;line-height:1.9;color:#414641}.v2-prose p{margin-bottom:1.35rem}
.v2-bishop-quote,.v2-bishop-facts{border:1px solid var(--v2-line);border-radius:20px;padding:1.6rem;background:#fff}.v2-bishop-quote>i{color:var(--v2-accent);font-size:1.2rem}.v2-bishop-quote blockquote{font-family:Georgia,"Times New Roman",serif;font-size:1.55rem;line-height:1.25;margin:1rem 0 .6rem}.v2-bishop-quote p{color:var(--v2-muted);font-size:.86rem;margin:0}.v2-bishop-facts h3{font-family:Georgia,"Times New Roman",serif;font-size:1.35rem}.v2-bishop-facts dl{margin:1.2rem 0 0}.v2-bishop-facts dt{font-size:.72rem;color:var(--v2-muted);text-transform:uppercase;letter-spacing:.08em}.v2-bishop-facts dd{margin:.15rem 0 1rem;font-weight:650}.v2-bishop-facts dd:last-child{margin-bottom:0}
.v2-bishop-news{background:#fafbfa;border-top:1px solid var(--v2-line);border-bottom:1px solid var(--v2-line)}
.v2-episcopate{background:#f5f3f0}.v2-timeline{border-left:1px solid #cfd2ce;margin-left:.5rem;padding-left:2rem}.v2-timeline-item{position:relative;display:grid;grid-template-columns:130px 1fr;gap:1.25rem;padding:0 0 2.3rem}.v2-timeline-item:last-child{padding-bottom:0}.v2-timeline-item:before{content:"";position:absolute;width:11px;height:11px;border-radius:50%;background:#fff;border:2px solid var(--v2-accent);left:-2.38rem;top:.35rem}.v2-timeline-item.is-current:before{background:var(--v2-accent)}.v2-timeline-item>span{color:var(--v2-accent);font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.v2-timeline-item h3{font-family:Georgia,"Times New Roman",serif;font-size:1.45rem;margin:0 0 .35rem}.v2-timeline-item p{color:var(--v2-muted);margin:0}
@media(max-width:575.98px){.v2-bishop-portrait{max-width:none;border-radius:18px;aspect-ratio:4/4.8}.v2-bishop-hero h1{font-size:2.55rem}.v2-bishop-dates{grid-template-columns:1fr}.v2-editorial-title{font-size:2rem}.v2-prose{font-size:1rem;line-height:1.75}.v2-timeline-item{grid-template-columns:1fr;gap:.35rem}.v2-timeline{padding-left:1.5rem}.v2-timeline-item:before{left:-1.88rem}}


/* v2.1.2 — redes sociales dinámicas */
.v2-social-section{background:#fff;border-top:1px solid var(--v2-line)}
.v2-social-panel{border:1px solid var(--v2-line);border-radius:22px;padding:1.5rem;background:#fafbfa}
.v2-social-panel-head{display:flex;align-items:center;gap:.85rem;margin-bottom:1.2rem}.v2-social-panel-head>i{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:#fff;border:1px solid var(--v2-line);color:var(--v2-accent)}.v2-social-panel-head div{display:flex;flex-direction:column}.v2-social-panel-head strong{font-family:Georgia,"Times New Roman",serif;font-size:1.25rem}.v2-social-panel-head small{color:var(--v2-muted)}
.v2-social-links{display:flex;flex-wrap:wrap;gap:.65rem}.v2-social-links a{display:inline-flex;align-items:center;gap:.55rem;min-height:44px;padding:.62rem .9rem;border-radius:999px;background:#fff;border:1px solid var(--v2-line);color:var(--v2-ink);text-decoration:none;font-size:.86rem;font-weight:700;transition:transform .2s,border-color .2s,box-shadow .2s}.v2-social-links a:hover{transform:translateY(-2px);border-color:#d7dbd7;box-shadow:0 7px 20px rgba(25,35,29,.06);color:var(--v2-accent)}.v2-social-links a i{font-size:1rem;color:var(--v2-accent)}
.v2-radio-panel{background:#f5f3f0}
@media(max-width:575.98px){.v2-social-panel{padding:1.1rem;border-radius:16px}.v2-social-links{gap:.5rem}.v2-social-links a{flex:1 1 calc(50% - .5rem);justify-content:center;padding:.55rem .7rem}.v2-social-panel-head{margin-bottom:.9rem}}


/* v2.1.3 — identidad litúrgica y membretes difuminados */
.v2-section-watermark{position:relative;isolation:isolate;overflow:hidden;border-top:1px solid color-mix(in srgb,var(--v2-liturgical,#2f6f45) 18%,transparent)}
.v2-section-watermark>.v2-container{position:relative;z-index:2}
.v2-liturgical-section{background:linear-gradient(90deg,color-mix(in srgb,var(--v2-liturgical-soft,#eef6ef) 58%,#fff) 0%,#fff 30%,#fff 100%)}
.v2-liturgical-section .v2-eyebrow,.v2-liturgical-section .v2-text-link{color:var(--v2-liturgical,#2f6f45)}
.v2-liturgical-section:before,.v2-liturgical-section:after{content:"";position:absolute;pointer-events:none;z-index:0}
.v2-liturgical-section:before{left:-45px;top:8px;width:210px;height:210px;opacity:.075;border:14px solid var(--v2-liturgical,#2f6f45);border-radius:50% 50% 46% 54%;filter:blur(.15px)}
.v2-liturgical-section:after{left:50px;top:8px;width:2px;height:150px;background:linear-gradient(var(--v2-liturgical,#2f6f45),transparent);opacity:.16;box-shadow:36px 38px 0 -1px var(--v2-liturgical,#2f6f45),70px 78px 0 -1px var(--v2-liturgical,#2f6f45);transform:rotate(-34deg);transform-origin:top}
.v2-motif-prayer:before{border:0;border-radius:0;width:120px;height:150px;left:18px;top:24px;background:linear-gradient(90deg,transparent 43%,var(--v2-liturgical,#2f6f45) 43% 57%,transparent 57%),linear-gradient(transparent 29%,var(--v2-liturgical,#2f6f45) 29% 40%,transparent 40%);opacity:.07}
.v2-motif-prayer:after{width:250px;height:190px;left:-40px;top:70px;border:2px solid var(--v2-liturgical,#2f6f45);border-color:var(--v2-liturgical,#2f6f45) transparent transparent var(--v2-liturgical,#2f6f45);border-radius:70% 0 0 0;background:none;box-shadow:none;opacity:.07;transform:rotate(12deg)}
.v2-motif-diocesis:before{width:150px;height:150px;left:5px;top:38px;border-width:8px;opacity:.055}
.v2-motif-vine:before{opacity:.05}.v2-motif-vine:after{opacity:.09}
/* Vatican News conserva su identidad propia y no adopta el color litúrgico. */
.v2-vatican.v2-brand-watermark{position:relative;background:linear-gradient(90deg,#fff8f7 0,#fff 45%,#fff 100%);border-top:1px solid #f0d9d6}
.v2-vatican.v2-brand-watermark:before{content:"VATICAN\A NEWS";white-space:pre;position:absolute;right:-25px;top:18px;font-family:Georgia,"Times New Roman",serif;font-size:clamp(4rem,9vw,9rem);font-weight:700;line-height:.72;letter-spacing:-.06em;color:#9f2d35;opacity:.045;text-align:right;pointer-events:none;z-index:0}
.v2-vatican.v2-brand-watermark:after{content:"✦";position:absolute;left:28px;bottom:8px;font-size:8rem;color:#9f2d35;opacity:.035;pointer-events:none}
.v2-vatican .v2-eyebrow,.v2-vatican .v2-text-link{color:#8b2530}
.v2-radio-watermark{position:relative;overflow:hidden;isolation:isolate}.v2-radio-watermark>*{position:relative;z-index:1}.v2-radio-watermark:after{content:"CRISTO REY\A RADIO Y TV";white-space:pre;position:absolute;right:-8px;bottom:0;font-family:Georgia,"Times New Roman",serif;font-weight:700;font-size:2.5rem;line-height:.86;text-align:right;color:#527a91;opacity:.055;z-index:0}
/* El bloque episcopal mantiene su burdeos institucional. */
.v2-bishop-section,.v2-bishop-section .v2-eyebrow,.v2-bishop-section .v2-text-link{--v2-liturgical:var(--v2-accent);--v2-liturgical-soft:#f5f3f0}
@media(max-width:575.98px){.v2-liturgical-section:before{width:120px;height:120px;left:-45px;top:18px}.v2-liturgical-section:after{display:none}.v2-motif-prayer:before{display:block;left:-5px;top:18px;width:80px;height:105px}.v2-vatican.v2-brand-watermark:before{font-size:3.5rem;right:-12px;top:25px;opacity:.035}.v2-vatican.v2-brand-watermark:after{display:none}.v2-radio-watermark:after{font-size:1.75rem;opacity:.04}}

/* v2.1.6 — emblema Vatican News amplio, diagonal y recoloreable */
.v2-vatican.v2-brand-watermark{
  --v2-vatican-brand:#9f2d35;
  border-top-color:color-mix(in srgb,var(--v2-vatican-brand) 34%,transparent);
  border-bottom-color:color-mix(in srgb,var(--v2-vatican-brand) 22%,transparent);
}
.v2-vatican.v2-brand-watermark:after{
  content:"";
  position:absolute;
  left:-118px;
  top:56%;
  width:430px;
  height:430px;
  transform:translateY(-50%) rotate(-11deg);
  transform-origin:center;
  background:var(--v2-vatican-brand);
  -webkit-mask:url('../img/vatican-keys-red.png') center/contain no-repeat;
  mask:url('../img/vatican-keys-red.png') center/contain no-repeat;
  opacity:.052;
  pointer-events:none;
  z-index:0;
}
@media(max-width:991.98px){
  .v2-vatican.v2-brand-watermark:after{left:-105px;width:320px;height:320px;opacity:.045}
}
@media(max-width:575.98px){
  .v2-vatican.v2-brand-watermark:after{display:block;left:-72px;top:130px;width:190px;height:190px;opacity:.035;transform:rotate(-11deg)}
}

/* v2.3.1 — directorio y ficha de parroquias */
.v2-parish-location{color:var(--v2-muted);font-size:.88rem;margin-bottom:1rem}
.v2-parish-location i{color:var(--v2-liturgical,#2f6f45)}
.v2-parish-photo{overflow:hidden;border-radius:1.25rem;background:#f4f4f2;aspect-ratio:4/3;box-shadow:0 14px 36px rgba(30,30,25,.08)}
.v2-parish-photo img{width:100%;height:100%;object-fit:cover;display:block}
.v2-parish-details{display:grid;gap:.85rem}
.v2-parish-detail{display:flex;align-items:flex-start;gap:.9rem;padding:1rem 1.1rem;border:1px solid rgba(30,30,25,.08);border-radius:1rem;background:rgba(255,255,255,.72)}
.v2-parish-detail>i{width:1.4rem;margin-top:.2rem;color:var(--v2-liturgical,#2f6f45);text-align:center}
.v2-parish-detail small{display:block;color:#777;font-size:.78rem;margin-bottom:.15rem}
.v2-parish-detail strong{display:block;font-weight:600;color:#282823}
.v2-parish-description{line-height:1.75;color:#4f4f49}
.v2-parish-description>:last-child{margin-bottom:0}
.v2-parish-map{overflow:hidden}
.v2-parish-map iframe{display:block;width:100%!important;max-width:100%;min-height:380px;border:0;border-radius:1.25rem}
@media(max-width:575.98px){.v2-parish-photo{border-radius:1rem}.v2-parish-detail{padding:.85rem .9rem}.v2-parish-map iframe{min-height:300px}}


/* v2.5.0 — directorio y ficha de decanatos */
.v2-deanery-card{height:100%;border:1px solid var(--v2-line);border-radius:var(--v2-radius);overflow:hidden;background:#fff;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.v2-deanery-card:hover{transform:translateY(-4px);box-shadow:var(--v2-shadow);border-color:#dfe3df}
.v2-deanery-image{display:block;aspect-ratio:16/9;overflow:hidden;background:var(--v2-soft)}
.v2-deanery-image img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}
.v2-deanery-card:hover .v2-deanery-image img{transform:scale(1.025)}
.v2-deanery-body{padding:1.2rem 1.25rem 1.3rem}
.v2-deanery-body h2{font-family:Georgia,"Times New Roman",serif;font-size:1.35rem;line-height:1.2;margin:0}
.v2-deanery-body h2 a{color:var(--v2-ink);text-decoration:none}
.v2-deanery-hero-image{aspect-ratio:16/7;border-radius:1.5rem;overflow:hidden;background:var(--v2-soft);box-shadow:var(--v2-shadow)}
.v2-deanery-hero-image img{width:100%;height:100%;object-fit:cover}
.v2-deanery-parishes{display:grid;gap:.7rem}
.v2-deanery-parish{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.1rem;border:1px solid var(--v2-line);border-radius:1rem;color:var(--v2-ink);text-decoration:none;background:#fff;transition:transform .2s ease,border-color .2s ease}
.v2-deanery-parish:hover{transform:translateX(3px);border-color:#d8ddd8;color:var(--v2-accent)}
.v2-deanery-parish span{display:flex;flex-direction:column}
.v2-deanery-parish strong{font-family:Georgia,"Times New Roman",serif;font-size:1.08rem}
.v2-deanery-parish small{color:var(--v2-muted);margin-top:.15rem}
.v2-deanery-parish>i{color:var(--v2-liturgical,#2f6f45)}
@media(max-width:575.98px){.v2-deanery-body{padding:1rem}.v2-deanery-hero-image{aspect-ratio:16/10;border-radius:1rem}.v2-deanery-parish{padding:.85rem .9rem}}


/* v2.6.0 — Radio y TV Cristo Rey */
.v2-radio-hero{
  position:relative;overflow:hidden;color:#fff;
  background:
    radial-gradient(circle at 82% 18%,rgba(189,150,206,.26),transparent 30rem),
    linear-gradient(135deg,#15121a 0%,#241a2a 52%,#12151b 100%);
}
.v2-radio-hero:after{
  content:"";position:absolute;right:-8rem;bottom:-12rem;width:32rem;height:32rem;
  border:1px solid rgba(255,255,255,.08);border-radius:50%;
  box-shadow:0 0 0 4rem rgba(255,255,255,.018),0 0 0 8rem rgba(255,255,255,.012);
  pointer-events:none;
}
.v2-radio-breadcrumb,.v2-radio-breadcrumb a{color:rgba(255,255,255,.72)}
.v2-radio-breadcrumb a:hover{color:#fff}
.v2-radio-live{
  display:inline-flex;align-items:center;gap:.55rem;padding:.45rem .8rem;border-radius:999px;
  background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);
  font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase
}
.v2-radio-live i{font-size:.55rem;color:#ff5d68;filter:drop-shadow(0 0 5px rgba(255,93,104,.65))}
.v2-radio-hero h1{
  margin:1.15rem 0 .7rem;font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(2.7rem,6vw,5.4rem);line-height:.92;letter-spacing:-.04em;color:#fff
}
.v2-radio-hero h1 span{color:#d8b8e6}
.v2-radio-lead{font-size:1.3rem;font-weight:600;margin-bottom:.4rem}
.v2-radio-copy{max-width:38rem;color:rgba(255,255,255,.68);margin:0}
.v2-radio-station{
  position:relative;z-index:1;display:flex;align-items:center;gap:1rem;padding:1rem;
  background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.13);
  border-radius:1.4rem;backdrop-filter:blur(12px);box-shadow:0 1.5rem 4rem rgba(0,0,0,.2)
}
.v2-radio-logo-wrap{
  width:6.2rem;height:6.2rem;flex:0 0 6.2rem;border-radius:1.15rem;overflow:hidden;
  background:#fff;box-shadow:0 .7rem 1.7rem rgba(0,0,0,.25)
}
.v2-radio-logo-wrap img{width:100%;height:100%;object-fit:cover}
.v2-radio-station small,.v2-radio-station strong,.v2-radio-station span{display:block}
.v2-radio-station small{color:rgba(255,255,255,.58);font-size:.72rem;text-transform:uppercase;letter-spacing:.08em}
.v2-radio-station strong{font-family:Georgia,"Times New Roman",serif;font-size:1.25rem;margin:.15rem 0 .35rem}
.v2-radio-station span{font-size:.82rem;color:rgba(255,255,255,.7)}
.v2-radio-section{background:linear-gradient(#f7f5f8,#fff)}
.v2-radio-shell{
  max-width:1000px;margin:auto;padding:clamp(1rem,3vw,2rem);border:1px solid #e6e0e8;
  border-radius:1.7rem;background:#fff;box-shadow:0 1.2rem 3.5rem rgba(34,25,40,.08)
}
.v2-radio-shell-head{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;margin-bottom:1.25rem}
.v2-radio-shell-head h2{font-family:Georgia,"Times New Roman",serif;margin:.15rem 0 0}
.v2-radio-onair{
  display:flex;align-items:center;gap:.5rem;font-size:.72rem;font-weight:800;letter-spacing:.1em;color:#8f3340
}
.v2-radio-onair span{width:.55rem;height:.55rem;border-radius:50%;background:#d84c5b;box-shadow:0 0 0 .3rem rgba(216,76,91,.1)}
.v2-radio-player-frame{
  position:relative;overflow:hidden;border-radius:1.25rem;background:#0c0d11;
  border:1px solid #27232c;box-shadow:0 .8rem 2rem rgba(0,0,0,.16)
}
#RadioCristoRey{width:100%;height:560px;min-height:480px}
.v2-radio-note{
  display:flex;align-items:flex-start;gap:.8rem;margin-top:1.15rem;padding:1rem 1.05rem;
  border-radius:1rem;background:#f7f4f8;color:#625b66;font-size:.9rem
}
.v2-radio-note i{font-size:1.25rem;color:#7b567f;margin-top:.05rem}
.v2-radio-note p{margin:0}
@media(max-width:767.98px){
  .v2-radio-hero h1{font-size:3rem}
  .v2-radio-station{margin-top:.5rem}
  .v2-radio-logo-wrap{width:4.8rem;height:4.8rem;flex-basis:4.8rem}
  .v2-radio-shell{border-radius:1.2rem;padding:.75rem}
  .v2-radio-shell-head{align-items:center;padding:.35rem .25rem 0}
  #RadioCristoRey{height:500px;min-height:440px}
}
@media(max-width:420px){
  .v2-radio-station strong{font-size:1.05rem}
  #RadioCristoRey{height:460px;min-height:420px}
}


/* v2.6.1 — redes sociales propias de Radio y TV Cristo Rey */
.v2-radio-social{background:#fff;border-top:1px solid #eee9ef}
.v2-radio-social-head{max-width:720px;margin-bottom:1.5rem}
.v2-radio-social-head h2{font-family:Georgia,"Times New Roman",serif;margin:.2rem 0 .45rem}
.v2-radio-social-head p{color:var(--v2-muted);margin:0}
.v2-radio-social-links{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem}
.v2-radio-social-link{
  display:flex;align-items:center;gap:.9rem;padding:1rem 1.05rem;border:1px solid #e6e0e8;
  border-radius:1.1rem;background:#faf8fb;color:var(--v2-ink);text-decoration:none;
  transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease
}
.v2-radio-social-link:hover{transform:translateY(-2px);border-color:#cdb8d4;box-shadow:0 .7rem 1.8rem rgba(50,34,57,.08);color:#563c60}
.v2-radio-social-icon{
  display:grid;place-items:center;width:2.8rem;height:2.8rem;flex:0 0 2.8rem;border-radius:.85rem;
  background:#251b2a;color:#d8b8e6;font-size:1.1rem
}
.v2-radio-social-link small,.v2-radio-social-link strong{display:block}
.v2-radio-social-link small{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:var(--v2-muted)}
.v2-radio-social-link strong{font-size:1rem}
.v2-radio-social-out{margin-left:auto;font-size:.8rem;color:#9a8d9f}


/* v2.7.0 — Pastorales */
.v2-pastoral-card{height:100%;overflow:hidden;border:1px solid var(--v2-line);border-radius:1.25rem;background:#fff;transition:.25s ease}
.v2-pastoral-card:hover{transform:translateY(-4px);box-shadow:var(--v2-shadow)}
.v2-pastoral-image{display:block;aspect-ratio:16/9;overflow:hidden;background:var(--v2-soft)}
.v2-pastoral-image img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}
.v2-pastoral-card:hover .v2-pastoral-image img{transform:scale(1.025)}
.v2-pastoral-body{padding:1.2rem 1.25rem 1.3rem}
.v2-pastoral-body h2{font-family:Georgia,"Times New Roman",serif;font-size:1.3rem;line-height:1.2;margin:.2rem 0 .85rem}
.v2-pastoral-body h2 a{color:var(--v2-ink);text-decoration:none}
.v2-pastoral-more{display:inline-flex;align-items:center;gap:.45rem;font-size:.86rem;font-weight:700;color:var(--v2-accent);text-decoration:none}
.v2-pastoral-detail-hero{background:linear-gradient(135deg,var(--v2-soft),#fff);border-bottom:1px solid var(--v2-line)}
.v2-pastoral-detail-hero h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.2rem,5vw,4.5rem);margin:.4rem 0 0}
.v2-pastoral-cover{overflow:hidden;border-radius:1.5rem;aspect-ratio:16/7;background:var(--v2-soft);box-shadow:var(--v2-shadow)}
.v2-pastoral-cover img{width:100%;height:100%;object-fit:cover}
.v2-pastoral-intro{max-width:780px;padding:1rem 0}
.v2-pastoral-intro h2{font-family:Georgia,"Times New Roman",serif}
.v2-pastoral-intro p{color:var(--v2-muted);font-size:1.05rem}
@media(max-width:575.98px){.v2-pastoral-body{padding:1rem}.v2-pastoral-cover{aspect-ratio:16/10;border-radius:1rem}}


/* v2.8.0 — ficha de artículo */
.v2-article-head{background:linear-gradient(180deg,var(--v2-soft),#fff)}
.v2-article-title-wrap{max-width:900px}
.v2-article-title-wrap h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(2rem,5vw,4rem);line-height:1.05;letter-spacing:-.025em;margin:.45rem 0 .8rem}
.v2-article-date{display:flex;align-items:center;gap:.45rem;color:var(--v2-muted);font-size:.9rem}
.v2-article-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:2.5rem;align-items:start}
.v2-article-media,.v2-article-cover{overflow:hidden;border-radius:1.35rem;background:#111;box-shadow:var(--v2-shadow);margin:0 0 1.8rem}
.v2-article-media{aspect-ratio:16/9}.v2-article-media iframe{width:100%;height:100%;border:0}
.v2-article-cover{aspect-ratio:16/9}.v2-article-cover img{width:100%;height:100%;object-fit:cover}
.v2-article-content{font-size:1.06rem;line-height:1.78;color:#353238;overflow-wrap:anywhere}
.v2-article-content img{max-width:100%;height:auto;border-radius:.7rem}
.v2-article-content iframe{max-width:100%}
.v2-article-content h2,.v2-article-content h3{font-family:Georgia,"Times New Roman",serif;margin-top:1.6em}
.v2-audio-box{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;padding:1rem 1.1rem;margin-bottom:1.7rem;border:1px solid var(--v2-line);border-radius:1.1rem;background:var(--v2-soft)}
.v2-audio-title{display:flex;align-items:center;gap:.7rem;min-width:210px}.v2-audio-title>span{display:grid;place-items:center;width:2.6rem;height:2.6rem;border-radius:.75rem;background:var(--v2-ink);color:#fff}
.v2-audio-title small,.v2-audio-title strong{display:block}.v2-audio-title small{text-transform:uppercase;font-size:.67rem;letter-spacing:.08em;color:var(--v2-muted)}.v2-audio-title strong{font-size:.9rem}
.v2-audio-box audio{flex:1;min-width:230px}.v2-audio-download{background:var(--v2-ink);color:#fff;border-radius:.75rem}.v2-audio-download:hover{background:#000;color:#fff}
.v2-article-categories{margin-top:2rem;padding-top:1.4rem;border-top:1px solid var(--v2-line)}
.v2-article-categories>strong{display:block;margin-bottom:.75rem}.v2-article-categories>div{display:flex;flex-wrap:wrap;gap:.5rem}
.v2-article-categories a{padding:.45rem .75rem;border-radius:999px;background:var(--v2-soft);color:var(--v2-ink);text-decoration:none;font-size:.82rem;font-weight:700}
.v2-article-credits{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:2rem}
.v2-credit-person,.v2-credit-source{display:flex;align-items:center;gap:.8rem;padding:1rem;border:1px solid var(--v2-line);border-radius:1rem}
.v2-credit-person img,.v2-credit-avatar{width:3rem;height:3rem;border-radius:50%;object-fit:cover}.v2-credit-avatar{display:grid;place-items:center;background:var(--v2-soft)}
.v2-credit-person small,.v2-credit-person strong,.v2-credit-source small,.v2-credit-source strong{display:block}.v2-credit-person small,.v2-credit-source small{text-transform:uppercase;font-size:.67rem;letter-spacing:.08em;color:var(--v2-muted)}
.v2-article-aside{position:sticky;top:6rem}.v2-article-aside-card{padding:1.1rem;border:1px solid var(--v2-line);border-radius:1.15rem;background:#fff}
.v2-article-aside-card h2{font-family:Georgia,"Times New Roman",serif;font-size:1.3rem}.v2-article-aside-card>a{display:flex;justify-content:space-between;align-items:center;gap:.5rem;padding:.75rem 0;border-top:1px solid var(--v2-line);color:var(--v2-ink);text-decoration:none;font-size:.88rem;font-weight:650}
@media(max-width:991.98px){.v2-article-layout{grid-template-columns:1fr}.v2-article-aside{position:static}.v2-article-aside-card{display:none}}
@media(max-width:575.98px){.v2-article-title-wrap h1{font-size:2.15rem}.v2-article-media,.v2-article-cover{border-radius:1rem}.v2-article-credits{grid-template-columns:1fr}.v2-audio-box{display:block}.v2-audio-title,.v2-audio-box audio,.v2-audio-download{width:100%}.v2-audio-box audio{margin:.8rem 0}.v2-audio-download{text-align:center}}

/* v2.8.1 — restauración completa Sacerdotes */
.v2-directory-hero{background:linear-gradient(180deg,#fafafa,#fff);border-bottom:1px solid var(--v2-line)}
.v2-directory-hero h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(3rem,6vw,5rem);line-height:1;margin:.5rem 0 1rem}
.v2-directory-tools{display:flex;align-items:center;justify-content:space-between;gap:1.25rem}.v2-directory-tools .v2-search{flex:1;max-width:760px}
.v2-priest-card{display:flex;align-items:center;gap:1rem;height:100%;padding:1rem;border:1px solid var(--v2-line);border-radius:1.1rem;background:#fff;transition:.2s ease}
.v2-priest-card:hover{transform:translateY(-2px);box-shadow:var(--v2-shadow)}
.v2-priest-photo{width:88px;height:88px;flex:0 0 88px;border-radius:1rem;overflow:hidden;background:var(--v2-soft);display:grid;place-items:center;text-decoration:none}
.v2-priest-photo img{width:100%;height:100%;object-fit:cover}.v2-priest-photo span{font-size:1.8rem;color:var(--v2-muted)}
.v2-priest-card-body{min-width:0}.v2-priest-card-body h2{font-family:Georgia,"Times New Roman",serif;font-size:1.15rem;margin:0 0 .4rem}.v2-priest-card-body h2 a{color:var(--v2-ink);text-decoration:none}
.v2-priest-card-body p,.v2-priest-card-body small{display:flex;gap:.45rem;align-items:center;margin:0;color:var(--v2-muted);font-size:.82rem}
.v2-priest-profile{display:grid;grid-template-columns:minmax(220px,330px) 1fr;gap:2.5rem;align-items:start;max-width:1000px;margin:auto}
.v2-priest-profile-photo{aspect-ratio:4/5;overflow:hidden;border-radius:1.4rem;background:var(--v2-soft);display:grid;place-items:center;box-shadow:var(--v2-shadow)}
.v2-priest-profile-photo img{width:100%;height:100%;object-fit:cover}.v2-priest-profile-photo span{font-size:4rem;color:var(--v2-muted)}
.v2-priest-profile-info h2{font-family:Georgia,"Times New Roman",serif;font-size:2rem}
.v2-priest-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;margin:1.3rem 0}.v2-priest-facts p{display:flex;gap:.7rem;padding:.9rem;border:1px solid var(--v2-line);border-radius:.9rem;margin:0}.v2-priest-facts small{display:block;color:var(--v2-muted);font-size:.7rem;text-transform:uppercase;letter-spacing:.05em}
.v2-priest-current{font-size:1.03rem;line-height:1.7}.v2-priest-ordination{display:flex;gap:.8rem;padding:1rem;margin-top:1.2rem;border-radius:1rem;background:var(--v2-soft)}.v2-priest-ordination p{margin:0}
@media(max-width:767.98px){.v2-directory-tools{align-items:stretch;flex-direction:column}.v2-directory-tools .v2-search{max-width:none;width:100%}.v2-priest-profile{grid-template-columns:1fr}.v2-priest-profile-photo{max-width:300px;margin:auto;width:100%}.v2-priest-facts{grid-template-columns:1fr}}

/* v2.9.0 — ficha individual de Oración */
.v2-prayer-head{background:linear-gradient(180deg,var(--v2-soft),#fff)}
.v2-prayer-head h1{max-width:950px;font-family:Georgia,"Times New Roman",serif;font-size:clamp(2rem,5vw,4rem);line-height:1.06;margin:.45rem 0 .8rem}
.v2-prayer-date{display:flex;align-items:center;gap:.45rem;color:var(--v2-muted);margin:0}
.v2-prayer-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:2.5rem;align-items:start}
.v2-prayer-cover,.v2-prayer-video{overflow:hidden;border-radius:1.35rem;background:#111;box-shadow:var(--v2-shadow);margin:0 0 1rem;aspect-ratio:16/9}
.v2-prayer-cover img,.v2-prayer-video video{width:100%;height:100%;object-fit:cover}
.v2-prayer-actions{display:flex;flex-wrap:wrap;gap:.55rem;margin:1rem 0 1.5rem}
.v2-prayer-action,.v2-prayer-share{display:inline-flex;align-items:center;gap:.45rem;border:1px solid var(--v2-line);background:#fff;color:var(--v2-ink);border-radius:.75rem;font-weight:700}
.v2-prayer-share.whatsapp{background:#187c50;color:#fff;border-color:#187c50}
.v2-prayer-audio{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;padding:1rem;margin-bottom:1.5rem;border-radius:1rem;background:var(--v2-soft);border:1px solid var(--v2-line)}
.v2-prayer-audio>div{display:flex;align-items:center;gap:.65rem;min-width:210px}.v2-prayer-audio>div>i{display:grid;place-items:center;width:2.5rem;height:2.5rem;border-radius:.7rem;background:var(--v2-ink);color:#fff}
.v2-prayer-audio small,.v2-prayer-audio strong{display:block}.v2-prayer-audio small{text-transform:uppercase;font-size:.66rem;letter-spacing:.08em;color:var(--v2-muted)}.v2-prayer-audio audio{flex:1;min-width:240px}
.v2-prayer-content{font-size:1.06rem;line-height:1.8;color:#39353b;overflow-wrap:anywhere}.v2-prayer-content img{max-width:100%;height:auto}.v2-prayer-content h2,.v2-prayer-content h3{font-family:Georgia,"Times New Roman",serif;margin-top:1.5em}
.v2-prayer-word{margin-top:1.25rem}.v2-prayer-speaker{display:flex;align-items:center;gap:.8rem;margin-top:2rem;padding:1rem;border:1px solid var(--v2-line);border-radius:1rem}.v2-prayer-speaker img,.v2-prayer-speaker>span{width:3.3rem;height:3.3rem;border-radius:50%;object-fit:cover}.v2-prayer-speaker>span{display:grid;place-items:center;background:var(--v2-soft)}
.v2-prayer-speaker small,.v2-prayer-speaker strong{display:block}.v2-prayer-speaker small{text-transform:uppercase;font-size:.67rem;letter-spacing:.08em;color:var(--v2-muted)}
.v2-prayer-tail{margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--v2-line);color:var(--v2-muted);font-size:.85rem}
.v2-prayer-aside{position:sticky;top:6rem}.v2-prayer-aside>div{padding:1.1rem;border:1px solid var(--v2-line);border-radius:1.1rem}.v2-prayer-aside h2{font-family:Georgia,"Times New Roman",serif;font-size:1.25rem}.v2-prayer-aside a{display:flex;justify-content:space-between;gap:.5rem;padding:.75rem 0;border-top:1px solid var(--v2-line);color:var(--v2-ink);text-decoration:none;font-weight:650;font-size:.86rem}
@media(max-width:991.98px){.v2-prayer-layout{grid-template-columns:1fr}.v2-prayer-aside{display:none}}
@media(max-width:575.98px){.v2-prayer-cover,.v2-prayer-video{border-radius:1rem}.v2-prayer-audio{display:block}.v2-prayer-audio audio{width:100%;margin-top:.8rem}.v2-prayer-actions .btn{min-height:44px}}

/* v2.9.1 — 404 */
.v2-error-page{min-height:calc(100vh - 180px);display:grid;background:linear-gradient(180deg,var(--v2-soft),#fff 58%)}
.v2-error-section{display:flex;align-items:center;padding:4rem 0 5rem}.v2-error-card{max-width:760px;margin:auto;text-align:center}
.v2-error-mark{display:flex;align-items:center;justify-content:center;gap:.12em;font-family:Georgia,"Times New Roman",serif;font-weight:700;font-size:clamp(5rem,14vw,9rem);line-height:.9;color:var(--v2-ink);letter-spacing:-.08em;margin-bottom:1.5rem}
.v2-error-symbol{width:.76em;height:.76em;display:grid;place-items:center;border-radius:50%;background:var(--v2-ink);color:#fff;font-size:.34em;letter-spacing:0}
.v2-error-card h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(2rem,5vw,3.4rem);margin:.45rem 0 .8rem}
.v2-error-lead{max-width:600px;margin:0 auto;color:var(--v2-muted);font-size:1.05rem;line-height:1.7}
.v2-error-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:.7rem;margin:1.8rem 0 2.2rem}.v2-error-actions .btn{display:inline-flex;align-items:center;gap:.5rem;min-height:46px;padding:.65rem 1.1rem;border-radius:.8rem;font-weight:700}
.v2-error-primary{background:var(--v2-ink);border-color:var(--v2-ink);color:#fff}.v2-error-primary:hover{background:#000;color:#fff}.v2-error-secondary{background:#fff;border:1px solid var(--v2-line);color:var(--v2-ink)}
.v2-error-links{padding-top:1.35rem;border-top:1px solid var(--v2-line)}.v2-error-links p{font-size:.8rem;color:var(--v2-muted);text-transform:uppercase;letter-spacing:.08em}.v2-error-links nav{display:flex;justify-content:center;flex-wrap:wrap;gap:.45rem 1.15rem}.v2-error-links a{color:var(--v2-ink);font-weight:650;text-decoration:none}
@media(max-width:575.98px){.v2-error-section{padding:2.5rem 0 3.5rem}.v2-error-actions{align-items:stretch;flex-direction:column}.v2-error-actions .btn{justify-content:center;width:100%}}

/* v3.0.0 — Calendario diocesano */
.v2-calendar-hero{background:linear-gradient(180deg,var(--v2-soft),#fff);border-bottom:1px solid var(--v2-line)}.v2-calendar-hero h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.8rem,6vw,4.8rem);margin:.35rem 0 .7rem}.v2-calendar-hero p{max-width:760px;color:var(--v2-muted);font-size:1.05rem}.v2-calendar-status{text-align:center;max-width:620px;margin:3rem auto;padding:3rem 1.5rem;border:1px solid var(--v2-line);border-radius:1.4rem;background:var(--v2-soft)}.v2-calendar-status>i{font-size:2.4rem;margin-bottom:1rem}.v2-agenda-intro{display:flex;align-items:end;justify-content:space-between;gap:2rem;margin-bottom:2.5rem}.v2-agenda-intro h2{font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.8rem,3vw,2.6rem);margin:.3rem 0 0}.v2-agenda-legend{display:flex;flex-wrap:wrap;gap:.6rem}.v2-agenda-legend span{display:inline-flex;align-items:center;gap:.45rem;border:1px solid var(--v2-line);border-radius:999px;padding:.5rem .8rem;font-size:.78rem;background:#fff}.v2-diocesan-agenda{display:grid;gap:3rem;max-width:1040px}.v2-agenda-month{display:grid;grid-template-columns:180px minmax(0,1fr);gap:2rem;align-items:start}.v2-agenda-month-title{position:sticky;top:6rem}.v2-agenda-month-title span{display:block;color:var(--v2-liturgical);font-size:.72rem;font-weight:800;letter-spacing:.12em}.v2-agenda-month-title h2{font-family:Georgia,"Times New Roman",serif;font-size:2rem;margin:.15rem 0}.v2-agenda-month-title small{color:var(--v2-muted)}.v2-agenda-list{border-top:1px solid var(--v2-line)}.v2-agenda-row{display:grid;grid-template-columns:62px 44px minmax(0,1fr) 36px;gap:1rem;align-items:center;padding:1.15rem .2rem;border-bottom:1px solid var(--v2-line);position:relative}.v2-agenda-row.is-today{background:linear-gradient(90deg,var(--v2-soft),transparent);border-radius:.8rem}.v2-agenda-row-date{text-align:center}.v2-agenda-row-date strong,.v2-agenda-row-date span,.v2-agenda-row-date small{display:block}.v2-agenda-row-date strong{font-size:1.55rem;line-height:1}.v2-agenda-row-date span{font-size:.64rem;font-weight:800;letter-spacing:.08em;margin-top:.2rem}.v2-agenda-row-date small{font-size:.62rem;color:var(--v2-muted);margin-top:.15rem}.v2-agenda-row-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--v2-soft);color:var(--v2-liturgical)}.v2-agenda-row-content{min-width:0}.v2-agenda-kind{display:block;color:var(--v2-liturgical);font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;margin-bottom:.18rem}.v2-agenda-row-content h3{font-family:Georgia,"Times New Roman",serif;font-size:1.18rem;margin:0}.v2-agenda-row-content h3 a{color:inherit;text-decoration:none}.v2-agenda-row-content h3 a:hover{text-decoration:underline}.v2-agenda-row-content p{margin:.25rem 0 0;color:var(--v2-muted);font-size:.82rem}.v2-agenda-row-link{display:grid;place-items:center;width:34px;height:34px;border:1px solid var(--v2-line);border-radius:50%;color:var(--v2-ink);text-decoration:none}.v2-agenda-row-link:hover{background:var(--v2-ink);color:#fff}.muted{color:var(--v2-muted)}
@media(max-width:767.98px){.v2-agenda-intro{display:block}.v2-agenda-legend{margin-top:1.2rem}.v2-agenda-month{grid-template-columns:1fr;gap:.8rem}.v2-agenda-month-title{position:static;display:flex;align-items:baseline;gap:.65rem;border-bottom:2px solid var(--v2-ink);padding-bottom:.55rem}.v2-agenda-month-title h2{font-size:1.6rem}.v2-agenda-month-title small{margin-left:auto}.v2-agenda-row{grid-template-columns:52px 36px minmax(0,1fr);gap:.75rem;padding:1rem 0}.v2-agenda-row-icon{width:36px;height:36px}.v2-agenda-row-link{display:none}.v2-agenda-row-content h3{font-size:1.05rem}.v2-calendar-hero h1{font-size:2.6rem}}
.v2-bishop-coat img{display:block;width:min(100%,320px);height:auto;margin-inline:auto;object-fit:contain}@media(max-width:991.98px){.v2-bishop-coat img{width:min(76vw,300px)}}

/* v3.2.0 — Agenda mensual + vista calendario */
.v2-agenda-toolbar{display:flex;align-items:end;justify-content:space-between;gap:1.5rem;margin-bottom:1.6rem}.v2-agenda-toolbar h2{font-family:Georgia,"Times New Roman",serif;font-size:clamp(2rem,4vw,3rem);margin:.2rem 0 0}.v2-agenda-actions{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;justify-content:flex-end}.v2-month-nav,.v2-view-switch{display:flex;align-items:center;border:1px solid var(--v2-line);border-radius:999px;background:#fff;overflow:hidden}.v2-month-nav a,.v2-view-switch button{min-height:42px;display:inline-flex;align-items:center;gap:.45rem;padding:.55rem .8rem;border:0;background:#fff;color:var(--v2-ink);text-decoration:none;font-size:.78rem}.v2-month-nav a+a,.v2-view-switch button+button{border-left:1px solid var(--v2-line)}.v2-view-switch button.is-active{background:var(--v2-ink);color:#fff}.v2-month-stage{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:2rem;align-items:start}.v2-month-stage.no-feature{grid-template-columns:minmax(0,1fr)}.v2-agenda-list-month{max-width:none}.v2-day-feature{position:sticky;top:6rem;border:1px solid var(--v2-line);border-radius:1.25rem;background:#fff;overflow:hidden}.v2-day-feature[hidden]{display:none!important}.v2-day-feature-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1rem 1rem .8rem}.v2-day-feature-head h3{font-family:Georgia,"Times New Roman",serif;font-size:1.5rem;margin:.1rem 0 0}.v2-day-feature-head>span{font-size:.72rem;color:var(--v2-muted)}.v2-feature-card[hidden]{display:none!important}.v2-feature-photo{aspect-ratio:16/10;background:var(--v2-soft);overflow:hidden}.v2-feature-photo img{width:100%;height:100%;object-fit:cover}.v2-feature-photo>span{display:grid;place-items:center;width:100%;height:100%;font-size:3rem;color:var(--v2-muted)}.v2-feature-copy{padding:1rem 1.1rem 1.15rem}.v2-feature-copy h4{font-family:Georgia,"Times New Roman",serif;font-size:1.35rem;line-height:1.15;margin:.25rem 0 .45rem}.v2-feature-copy p{font-size:.85rem;color:var(--v2-muted);margin:0 0 .8rem}.v2-feature-copy a{display:inline-flex;align-items:center;gap:.45rem;color:var(--v2-ink);font-size:.82rem;font-weight:700;text-decoration:none}.v2-feature-controls{display:flex;align-items:center;justify-content:space-between;padding:.7rem 1rem;border-top:1px solid var(--v2-line)}.v2-feature-controls button{display:grid;place-items:center;width:34px;height:34px;border:1px solid var(--v2-line);border-radius:50%;background:#fff}.v2-feature-controls>div{display:flex;gap:.35rem}.v2-feature-controls>div button{width:7px;height:7px;min-width:7px;border:0;background:#d5d7d5;padding:0}.v2-feature-controls>div button.is-active{background:var(--v2-ink)}
.v2-month-calendar{border:1px solid var(--v2-line);border-radius:1.2rem;overflow:hidden;background:#fff}.v2-calendar-weekdays,.v2-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.v2-calendar-weekdays{background:var(--v2-soft);border-bottom:1px solid var(--v2-line)}.v2-calendar-weekdays span{text-align:center;padding:.75rem .25rem;font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.v2-calendar-day{min-height:112px;padding:.65rem;border:0;border-right:1px solid var(--v2-line);border-bottom:1px solid var(--v2-line);background:#fff;text-align:left;color:var(--v2-ink)}.v2-calendar-day:nth-child(7n){border-right:0}.v2-calendar-day.is-empty{background:#fafafa}.v2-calendar-day:disabled{opacity:1;color:var(--v2-muted)}.v2-calendar-day:not(:disabled){cursor:pointer}.v2-calendar-day:not(:disabled):hover{background:var(--v2-soft)}.v2-calendar-day.is-today strong{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--v2-ink);color:#fff}.v2-calendar-marks{display:flex;flex-direction:column;gap:.35rem;margin-top:.7rem}.v2-calendar-marks em{display:inline-flex;align-items:center;gap:.35rem;width:max-content;max-width:100%;padding:.22rem .4rem;border-radius:999px;background:var(--v2-soft);font-size:.7rem;font-style:normal}.v2-calendar-marks i{color:var(--v2-liturgical)}
@media(max-width:991.98px){.v2-month-stage{grid-template-columns:minmax(0,1fr) 280px;gap:1rem}.v2-day-feature{top:5rem}}
@media(max-width:767.98px){.v2-agenda-toolbar{align-items:stretch;flex-direction:column}.v2-agenda-actions{justify-content:space-between}.v2-month-stage{grid-template-columns:1fr}.v2-day-feature{position:static;grid-row:1}.v2-month-stage.no-feature .v2-day-feature{display:none}.v2-calendar-day{min-height:76px;padding:.4rem}.v2-calendar-weekdays span{font-size:.6rem}.v2-calendar-marks em{padding:.18rem .3rem;font-size:.62rem}.v2-calendar-marks em i{display:none}.v2-month-nav a span{display:none}}
@media(max-width:420px){.v2-view-switch span{display:none}.v2-view-switch button{width:44px;justify-content:center;padding:.5rem}.v2-calendar-day{min-height:62px}.v2-calendar-marks{gap:.2rem;margin-top:.35rem}.v2-calendar-marks em{font-size:.58rem}}

/* v3.2.1 — ficha lateral a altura del calendario + iconos visibles */
@media(min-width:768px){
  .v2-month-stage{align-items:stretch}
  .v2-month-main{min-width:0}
  .v2-day-feature{position:relative;top:auto;height:100%;min-height:100%;display:flex;flex-direction:column}
  .v2-feature-slides{flex:1;min-height:0}
  .v2-feature-card:not([hidden]){height:100%;display:flex;flex-direction:column}
  .v2-feature-photo{aspect-ratio:auto;min-height:300px;flex:1}
  .v2-feature-photo img{object-position:center top}
}
.v2-day-feature-head{align-items:center}
.v2-day-feature-title{display:flex;align-items:baseline;gap:.65rem;flex-wrap:wrap}
.v2-day-feature-title .v2-eyebrow{margin:0}
.v2-day-feature-head .v2-day-feature-title h3{font-size:1.85rem;line-height:1;margin:0}
.v2-calendar-marks{align-items:flex-start}
.v2-calendar-marks em{min-width:38px;min-height:28px;justify-content:center;padding:.3rem .5rem;font-weight:800}
.v2-calendar-marks em i{font-size:.82rem}
.v2-calendar-marks em.is-birthday{background:#fff5e8}
.v2-calendar-marks em.is-ordination{background:#eef6f0}
.v2-calendar-marks em.is-birthday i{color:#a25d00}
.v2-calendar-marks em.is-ordination i{color:#28764a}
.v2-calendar-day:not(:disabled):focus-visible{outline:2px solid var(--v2-liturgical);outline-offset:-2px}
@media(max-width:767.98px){
  .v2-day-feature-title{gap:.45rem}
  .v2-day-feature-head .v2-day-feature-title h3{font-size:1.5rem}
  .v2-calendar-marks em i{display:inline-block}
}
@media(max-width:420px){.v2-calendar-marks em i{display:inline-block}.v2-calendar-marks em{min-width:30px;padding:.18rem .28rem}}

/* v3.2.4 — ficha visual del calendario más alta en móvil */
@media(max-width:767.98px){
  .v2-day-feature .v2-feature-photo{
    aspect-ratio:auto;
    height:clamp(290px,88vw,420px);
    min-height:290px;
  }
  .v2-day-feature .v2-feature-photo img{
    object-position:center top;
  }
}
