*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,sans-serif;color:#17263a;background:#fffdf8;line-height:1.6}header{position:sticky;top:0;z-index:20;background:#081d32ee;border-bottom:1px solid #cda63b55}nav{max-width:1180px;margin:auto;padding:10px 24px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:12px;color:#f0c34b;text-decoration:none;font-weight:800;letter-spacing:.08em}.brand img{width:70px;height:60px;object-fit:contain}.menu{display:flex;gap:20px}.menu a{color:#fff;text-decoration:none}.hero{position:relative;overflow:hidden;background:linear-gradient(135deg,#06172b,#123f65 60%,#34291f);color:#fff;min-height:720px;display:grid;align-items:center}.rays{position:absolute;inset:-30%;background:repeating-conic-gradient(from 180deg at 36% 45%,#f2c65016 0 8deg,transparent 8deg 20deg)}.hero-grid{position:relative;z-index:1;max-width:1180px;margin:auto;padding:90px 24px;display:grid;grid-template-columns:1.3fr .7fr;gap:55px;align-items:center}.eyebrow{letter-spacing:.18em;font-size:.78rem;font-weight:800;color:#f5d66f}.dark{color:#8c6518}.hero h1{font-size:clamp(4rem,8vw,7.2rem);line-height:.9;margin:15px 0;background:linear-gradient(#fff2aa,#d8a62f,#f7da72);-webkit-background-clip:text;color:transparent}.lead{font-size:1.45rem}.buttons{display:flex;gap:14px;flex-wrap:wrap;margin:28px 0}.btn{padding:13px 20px;border-radius:999px;text-decoration:none;font-weight:800}.gold{background:#e0ad2d;color:#06172b}.outline{border:1px solid #efd169;color:#fff}.quick{color:#eadfae;font-size:.9rem}.photo{border:1px solid #f0cf6d77;border-radius:22px;padding:10px;background:#ffffff12;box-shadow:0 25px 70px #0005}.photo img{width:100%;border-radius:15px;display:block}.photo small{display:block;color:#efc85d;font-weight:800;letter-spacing:.13em;margin:14px 8px 2px}.photo strong{display:block;font-family:Georgia,serif;margin:0 8px 8px}.verse{max-width:860px;margin:-50px auto 0;position:relative;z-index:5;background:#f8edcf;border:1px solid #d7b65e;border-radius:16px;padding:30px;text-align:center;box-shadow:0 18px 45px #18243a22}.verse p{font:1.15rem Georgia,serif}.section{max-width:1180px;margin:auto;padding:90px 24px;text-align:center}.section h2{font:3rem Georgia,serif;color:#0b2b4c;margin:8px 0 30px}.center{max-width:760px;margin:0 auto 35px}.cards,.contact{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.cards article,.contact a{background:#fff;border:1px solid #eadfc8;border-radius:16px;padding:28px;box-shadow:0 10px 30px #16263a12;text-decoration:none;color:inherit}.cards h3{color:#9b701d}.cards span{font-size:.75rem;font-weight:800;letter-spacing:.15em;color:#7c602b}.alt{max-width:none;background:#f3eee4}.live{max-width:none;background:linear-gradient(135deg,#06172b,#103b60);color:#fff}.live h2{color:#f2cf64}.social{max-width:850px;margin:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.social a{border:1px solid #efcb624f;background:#ffffff12;color:#f3cf68;text-decoration:none;padding:24px;border-radius:16px;font-weight:800}.social small{display:block;color:#fff;font-weight:400;margin-top:6px}.contact a{display:flex;flex-direction:column;gap:7px}.contact b{color:#996f1d}footer{background:#041628;color:#eee;padding:40px 24px;display:flex;justify-content:center;align-items:center;gap:24px}footer img{width:100px;height:90px;object-fit:contain}footer b{color:#e2b94d}@media(max-width:800px){.menu{display:none}.hero-grid,.cards,.social,.contact{grid-template-columns:1fr}.hero-grid{text-align:center}.photo{max-width:420px;margin:auto}.buttons{justify-content:center}.verse{margin:-30px 16px 0}.section{padding:65px 18px}.section h2{font-size:2.3rem}footer{flex-direction:column;text-align:center}}
/* Versión 4 */
.brand img{width:92px;height:70px;filter:drop-shadow(0 3px 8px #0006)}
.brand span{font-size:1.08rem}
.contact-section{padding-bottom:80px}
.contact-icon{font-size:2rem;color:#c18d20;line-height:1}
.contact a{transition:transform .2s ease,box-shadow .2s ease}
.contact a:hover{transform:translateY(-5px);box-shadow:0 16px 36px #16263a22}
.contact em{font-style:normal;font-size:.82rem;font-weight:800;color:#9b701d;margin-top:8px}
.map-wrap{margin-top:32px;border-radius:20px;overflow:hidden;border:1px solid #d9bd78;box-shadow:0 15px 40px #16263a20;background:#fff}
.map-wrap iframe{display:block;width:100%;height:420px;border:0}
footer{padding:42px 24px}
.footer-inner{width:min(1180px,100%);display:grid;grid-template-columns:140px 1fr auto;gap:28px;align-items:center}
footer img{width:135px;height:120px;filter:drop-shadow(0 4px 12px #0008)}
.footer-info b{font-size:1.05rem}
.footer-info p{margin:5px 0}
.footer-links{display:flex;gap:10px;flex-wrap:wrap}
.footer-links a{color:#f0c34b;border:1px solid #f0c34b66;border-radius:999px;padding:8px 13px;text-decoration:none;font-weight:700}
.footer-links a:hover{background:#f0c34b;color:#06172b}
@media(max-width:800px){.footer-inner{grid-template-columns:1fr;text-align:center}.footer-inner img{margin:auto}.footer-links{justify-content:center}.map-wrap iframe{height:330px}}

/* Versión 5 */
.site-header{box-shadow:0 8px 30px rgba(1,13,25,.18)}
nav{padding-top:8px;padding-bottom:8px}
.brand img{width:100px;height:76px}
.brand span{font-size:1.12rem}
.menu a{position:relative;padding:10px 0}
.menu a:after{content:"";position:absolute;left:0;bottom:4px;width:0;height:2px;background:#e1b23b;transition:width .2s ease}
.menu a:hover:after{width:100%}

.hero{min-height:760px}
.hero-grid{padding-top:110px;padding-bottom:110px}
.hero h1{letter-spacing:.01em;text-shadow:0 18px 44px rgba(0,0,0,.18)}
.location-pill{display:inline-block;margin:4px 0 0;padding:7px 12px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(240,195,75,.28);color:#f5dda0;font-size:.9rem}
.hero-badges{display:flex;flex-wrap:wrap;gap:10px;margin-top:34px}
.hero-badges span{padding:9px 12px;border-radius:999px;background:rgba(255,255,255,.075);border:1px solid rgba(240,195,75,.24);color:#f5e3ac;font-size:.86rem}
.photo{position:relative;transform:rotate(1deg)}
.photo:before{content:"";position:absolute;inset:-10px;border-radius:28px;background:linear-gradient(135deg,rgba(240,195,75,.24),transparent 45%,rgba(255,255,255,.07));z-index:-1;filter:blur(12px)}

.events-section{background:linear-gradient(180deg,#fffdf8,#f6f0e3)}
.events-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:34px;text-align:left}
.event-card{position:relative;background:#fff;border:1px solid #e5d5b3;border-radius:18px;padding:28px;box-shadow:0 12px 34px rgba(17,34,52,.07)}
.event-card.featured{background:linear-gradient(145deg,#0c2f4e,#123e63);color:#fff;border-color:#caa23c66}
.event-card h3{margin:12px 0 8px;font-size:1.3rem;color:#9b701d}
.event-card.featured h3{color:#f2cb5d}
.event-card p{margin:0 0 18px}
.event-tag{display:inline-block;font-size:.7rem;font-weight:800;letter-spacing:.14em;color:#8c6518}
.featured .event-tag{color:#f4d46f}
.event-meta{display:block;margin-top:12px;font-weight:800;color:#765a28}
.featured .event-meta{color:#f0d27b}

.social a{transition:transform .2s ease,background .2s ease}
.social a:hover{transform:translateY(-4px);background:#ffffff1d}
.contact a em{letter-spacing:.01em}

@media(max-width:950px){
  .events-grid{grid-template-columns:1fr}
}
@media(max-width:800px){
  .brand img{width:76px;height:62px}
  .brand span{font-size:.93rem}
  .hero-badges{justify-content:center}
}

.church-photo-caption{padding:18px 20px 22px;text-align:left}
.church-photo-caption span{display:block;margin-bottom:7px;color:#f0c34b;font-size:.74rem;font-weight:900;letter-spacing:.16em}
.church-photo-caption strong{display:block;color:#fff;font-family:Georgia,serif;font-size:1.35rem;line-height:1.18}

/* V6 - Eventos y anuncios */
.events-intro{max-width:760px;margin:0 auto;color:#51606d}
.events-grid{align-items:stretch}
.event-card{overflow:hidden;display:flex;flex-direction:column;min-height:390px}
.event-card h3{font-size:1.45rem}
.event-card p{line-height:1.65}
.event-date{position:absolute;top:22px;right:22px;min-width:72px;padding:10px 9px;border-radius:12px;background:#f8eed7;border:1px solid #dfc788;text-align:center;color:#0b3150}
.event-date b{display:block;font-size:.88rem;letter-spacing:.08em;color:#a77614}
.event-date span{display:block;margin-top:3px;font-size:.72rem;font-weight:800}
.featured .event-date{background:rgba(255,255,255,.1);border-color:rgba(242,203,93,.45);color:#fff}
.featured .event-date b{color:#f2cb5d}
.event-details{display:grid;gap:7px;margin:4px 0 22px;font-size:.88rem}
.event-btn{display:inline-flex;align-items:center;justify-content:center;margin-top:auto;width:max-content;padding:11px 17px;border-radius:999px;background:#e2ae2d;color:#092945;text-decoration:none;font-weight:900;transition:transform .2s ease,filter .2s ease}
.event-btn:hover{transform:translateY(-2px);filter:brightness(1.05)}
.event-btn.outline{background:transparent;border:1px solid #b98c2d;color:#8c6518}
.featured .event-btn{background:#f0c34b}
.events-note{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin:28px auto 0;padding:16px 20px;max-width:900px;border-radius:14px;background:#fff;border:1px dashed #d5bb7b;color:#51606d}
.events-note strong{color:#8c6518}
@media(max-width:950px){
  .event-card{min-height:auto}
}

/* V6.1 - Corrección visual de tarjetas de eventos */
.event-card{
  padding-top:88px;
}
.event-date{
  top:18px;
  right:18px;
  min-width:82px;
  z-index:2;
}
.event-tag{
  position:absolute;
  top:26px;
  left:28px;
  max-width:calc(100% - 145px);
}
.event-card h3{
  margin-top:6px;
  padding-right:0;
  line-height:1.25;
}
.event-card.featured h3{
  max-width:100%;
}
@media(max-width:950px){
  .event-card{
    padding-top:88px;
  }
}
@media(max-width:560px){
  .event-tag{
    position:static;
    display:inline-block;
    max-width:none;
    margin-bottom:10px;
  }
  .event-date{
    position:static;
    width:max-content;
    margin-bottom:14px;
  }
  .event-card{
    padding-top:28px;
  }
}

/* V7 - Próximo evento preparado para flyer */
.event-feature{
  grid-column:span 1;
  padding:18px;
  display:grid;
  grid-template-rows:185px 1fr;
  gap:18px;
}
.event-feature .event-tag{
  position:static;
  display:inline-block;
  max-width:none;
  margin-bottom:8px;
}
.event-feature h3{margin-top:0}
.event-feature-content{
  display:flex;
  flex-direction:column;
  min-width:0;
}
.event-poster{
  width:100%;
  height:185px;
  overflow:hidden;
  border-radius:14px;
  border:1px solid rgba(242,203,93,.45);
  background:#071f35;
}
.event-poster img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}
.event-poster.placeholder{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  background:
    radial-gradient(circle at 50% 30%,rgba(240,195,75,.22),transparent 36%),
    linear-gradient(145deg,#092a47,#164f78);
  color:#f3ce68;
}
.event-poster.placeholder span{font-size:1.35rem;margin-bottom:5px}
.event-poster.placeholder strong{font-family:Georgia,serif;font-size:1.55rem;line-height:1.05;letter-spacing:.04em}
.event-poster.placeholder small{margin-top:9px;font-weight:900;letter-spacing:.16em;color:#fff}
.event-feature .event-details{margin-top:2px}
.event-feature .event-btn{margin-top:auto}

@media(max-width:950px){
  .event-feature{grid-template-columns:220px 1fr;grid-template-rows:auto}
  .event-poster{height:100%;min-height:220px}
}
@media(max-width:650px){
  .event-feature{grid-template-columns:1fr;grid-template-rows:190px auto}
  .event-poster{height:190px;min-height:0}
}


/* V8 - Vista previa de próximos eventos en Inicio */
.home-event-preview{
  background:#fffaf0;
  padding:42px 24px 48px;
  border-bottom:1px solid rgba(185,132,21,.18);
}
.home-event-inner{
  max-width:1040px;
  margin:auto;
  display:grid;
  grid-template-columns:1.55fr .65fr;
  align-items:center;
  gap:34px;
  padding:28px 34px;
  border:1px solid rgba(185,132,21,.28);
  border-radius:22px;
  background:#fff;
  box-shadow:0 16px 38px rgba(8,39,65,.08);
}
.home-event-copy h2{
  margin:4px 0 12px;
  color:#082741;
  font-family:Georgia,serif;
  font-size:clamp(2rem,4vw,3rem);
}
.home-event-copy p:not(.eyebrow){
  max-width:660px;
  margin:0 0 22px;
  line-height:1.65;
  color:#30465a;
}
.home-event-copy .btn{display:inline-flex}
.home-event-mini-poster{
  min-height:185px;
  border-radius:18px;
  border:1px solid rgba(242,203,93,.55);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  background:radial-gradient(circle at 50% 30%,rgba(240,195,75,.22),transparent 36%),linear-gradient(145deg,#092a47,#164f78);
  color:#f3ce68;
  box-shadow:0 12px 28px rgba(8,39,65,.16);
}
.home-event-mini-poster span{font-size:1.25rem;margin-bottom:5px}
.home-event-mini-poster strong{font-family:Georgia,serif;font-size:1.55rem;line-height:1.05;letter-spacing:.04em}
.home-event-mini-poster small{margin-top:9px;font-weight:900;letter-spacing:.16em;color:#fff}
@media(max-width:760px){
  .home-event-inner{grid-template-columns:1fr;padding:25px}
  .home-event-mini-poster{min-height:165px}
}

/* V9 - Evento destacado editable desde event-data.js */
.home-event-meta{display:flex;flex-wrap:wrap;gap:9px;margin:18px 0 23px}
.home-event-meta span{display:inline-flex;padding:7px 10px;border-radius:999px;background:#f8f0dc;border:1px solid #dec384;color:#6e5424;font-size:.82rem;font-weight:700}
.home-event-mini-poster img,.event-poster img{display:block;width:100%;height:100%;object-fit:cover}
.home-event-mini-poster:not(.placeholder){overflow:hidden;padding:0}
.event-feature .event-poster:not(.placeholder){background:#071f35}
.event-feature .event-poster:not(.placeholder) img{border-radius:13px}

/* V10 - Mensaje público y enlaces sociales en Eventos */
.public-note{
  align-items:center;
  justify-content:space-between;
  text-align:left;
}
.public-note>div:first-child{
  display:flex;
  flex-direction:column;
  gap:3px;
}
.events-social-links{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}
.events-social-links a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:8px 13px;
  border-radius:999px;
  border:1px solid #c99b35;
  color:#8a651c;
  text-decoration:none;
  font-weight:800;
  background:#fffaf0;
  transition:transform .2s ease,background .2s ease,color .2s ease;
}
.events-social-links a:hover{
  transform:translateY(-2px);
  background:#dca92f;
  color:#08233d;
}
@media(max-width:760px){
  .public-note{
    text-align:center;
    flex-direction:column;
  }
  .events-social-links{
    justify-content:center;
  }
}

/* V13 - Corrección de cabecera y detalle completo del evento */
html{scroll-padding-top:92px}
.site-body{padding-top:0}
section[id]{scroll-margin-top:92px}
.hero{padding-top:12px}
.verse-wrap{z-index:6}

.event-detail-section{
  background:linear-gradient(135deg,#071b31,#124567 68%,#33281e);
  color:#fff;
  padding:90px 24px;
}
.event-detail-inner{
  max-width:1120px;
  margin:auto;
  display:grid;
  grid-template-columns:minmax(280px,420px) 1fr;
  gap:54px;
  align-items:center;
}
.event-detail-poster{
  background:#0a2d49;
  padding:10px;
  border-radius:22px;
  border:1px solid rgba(240,195,75,.48);
  box-shadow:0 28px 70px rgba(0,0,0,.34);
}
.event-detail-poster img{
  display:block;
  width:100%;
  height:auto;
  border-radius:14px;
}
.event-detail-copy .eyebrow{color:#f3cf67}
.event-detail-copy h2{
  margin:7px 0 16px;
  font:clamp(2.1rem,4.8vw,3.7rem)/1.02 Georgia,serif;
  color:#f0c34b;
}
.event-detail-lead{
  font-size:1.12rem;
  max-width:670px;
  color:#f7f1df;
}
.event-detail-facts{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px;
  margin:28px 0;
}
.event-detail-facts>div{
  display:flex;
  gap:11px;
  align-items:flex-start;
  padding:16px;
  border:1px solid rgba(240,195,75,.28);
  border-radius:14px;
  background:rgba(255,255,255,.06);
}
.event-detail-facts>div>span{font-size:1.25rem}
.event-detail-facts p{margin:0}
.event-detail-facts b{
  display:block;
  color:#f1cd66;
  margin-bottom:3px;
}
.event-detail-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin:6px 0 30px;
}
.light-outline{
  border-color:#efd16c;
  color:#fff;
}
.light-outline:hover{
  background:#efd16c;
  color:#06233d;
}
.event-scripture{
  position:relative;
  padding:20px 22px 18px 32px;
  border-left:3px solid #e4b33b;
  background:rgba(255,255,255,.055);
  border-radius:0 14px 14px 0;
}
.event-scripture>span{
  position:absolute;
  left:8px;
  top:-6px;
  font:3.5rem Georgia,serif;
  color:rgba(242,203,93,.42);
}
.event-scripture p{
  margin:0 0 7px;
  font-family:Georgia,serif;
  font-size:1rem;
}
.event-scripture b{color:#f0c34b}

@media(max-width:900px){
  .event-detail-inner{grid-template-columns:1fr}
  .event-detail-poster{max-width:430px;margin:auto}
  .event-detail-copy{text-align:center}
  .event-detail-lead{margin-left:auto;margin-right:auto}
  .event-detail-actions{justify-content:center}
  .event-detail-facts{grid-template-columns:1fr}
  .event-detail-facts>div{text-align:left}
  .event-scripture{text-align:left}
}
@media(max-width:560px){
  html{scroll-padding-top:82px}
  section[id]{scroll-margin-top:82px}
  .event-detail-section{padding:65px 18px}
  .event-detail-actions .btn{width:100%;text-align:center}
}

/* V14 - Página independiente del evento */
.event-page-body{background:#fffdf8}
.event-page-main{padding-top:0}
.event-page-hero{
  background:
    radial-gradient(circle at 75% 20%,rgba(242,198,76,.13),transparent 25%),
    linear-gradient(135deg,#06172b,#0f3a5d 62%,#35291e);
  color:#fff;
  padding:84px 24px 92px;
}
.event-page-inner{
  max-width:1160px;
  margin:auto;
  display:grid;
  grid-template-columns:minmax(300px,430px) 1fr;
  gap:56px;
  align-items:center;
}
.event-page-poster{
  padding:10px;
  border:1px solid rgba(240,195,75,.48);
  border-radius:24px;
  background:rgba(255,255,255,.06);
  box-shadow:0 30px 80px rgba(0,0,0,.34);
}
.event-page-poster img{
  display:block;
  width:100%;
  height:auto;
  border-radius:15px;
}
.event-page-copy h1{
  margin:8px 0 17px;
  font:clamp(2.3rem,5.3vw,4.4rem)/.98 Georgia,serif;
  color:#f0c34b;
}
.event-page-lead{
  font-size:1.15rem;
  color:#f6f0df;
  max-width:700px;
}
.event-page-facts{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px;
  margin:28px 0;
}
.event-page-facts>div{
  display:flex;
  gap:11px;
  padding:16px;
  border:1px solid rgba(240,195,75,.3);
  border-radius:14px;
  background:rgba(255,255,255,.055);
}
.event-page-facts>div>span{font-size:1.28rem}
.event-page-facts p{margin:0}
.event-page-facts b{
  display:block;
  color:#f0ca60;
  margin-bottom:3px;
}
.event-page-actions{
  display:flex;
  flex-wrap:wrap;
  gap:11px;
  margin:8px 0 30px;
}
.event-page-scripture{
  position:relative;
  padding:20px 22px 18px 32px;
  border-left:3px solid #e2af32;
  background:rgba(255,255,255,.055);
  border-radius:0 14px 14px 0;
}
.event-page-scripture>span{
  position:absolute;
  left:8px;top:-6px;
  font:3.5rem Georgia,serif;
  color:rgba(242,203,93,.42);
}
.event-page-scripture p{
  margin:0 0 7px;
  font:1.04rem/1.6 Georgia,serif;
}
.event-page-scripture b{color:#f0c34b}
.event-share-strip{
  max-width:1040px;
  margin:36px auto 70px;
  padding:22px 24px;
  border:1px dashed #d2ae59;
  border-radius:16px;
  background:#fffaf0;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:22px;
}
.event-share-strip>div:first-child{display:flex;flex-direction:column}
.event-share-strip strong{color:#8d681b}
.event-share-links{display:flex;gap:10px;flex-wrap:wrap}
.event-share-links a{
  padding:9px 14px;
  border:1px solid #c99b35;
  border-radius:999px;
  text-decoration:none;
  color:#8c6518;
  font-weight:800;
}
.event-share-links a:hover{background:#dca92f;color:#082844}
.event-nav-links{display:flex}

@media(max-width:900px){
  .event-page-inner{grid-template-columns:1fr}
  .event-page-poster{max-width:430px;margin:auto}
  .event-page-copy{text-align:center}
  .event-page-lead{margin-left:auto;margin-right:auto}
  .event-page-actions{justify-content:center}
  .event-page-facts{grid-template-columns:1fr}
  .event-page-facts>div{text-align:left}
  .event-page-scripture{text-align:left}
}
@media(max-width:700px){
  .event-share-strip{margin-left:18px;margin-right:18px;flex-direction:column;text-align:center}
  .event-share-links{justify-content:center}
  .event-nav-links{gap:13px}
}
@media(max-width:560px){
  .event-page-hero{padding:62px 18px}
  .event-page-actions .btn{width:100%;text-align:center}
  .event-nav-links a:nth-child(2){display:none}
}

/* V15 - Menú corregido en página independiente del evento */
.event-page-body .site-header .nav{
  max-width:1180px;
  margin:auto;
  padding:8px 24px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
}
.event-page-body .event-nav-links{
  display:flex;
  align-items:center;
  gap:24px;
}
.event-page-body .event-nav-links a{
  color:#fff;
  text-decoration:none;
  font-size:.95rem;
  position:relative;
  padding:10px 0;
  transition:color .2s ease;
}
.event-page-body .event-nav-links a:hover{
  color:#f0c34b;
}
.event-page-body .event-nav-links a:after{
  content:"";
  position:absolute;
  left:0;
  bottom:4px;
  width:0;
  height:2px;
  background:#e1b23b;
  transition:width .2s ease;
}
.event-page-body .event-nav-links a:hover:after{
  width:100%;
}
.event-page-body .brand{
  flex-shrink:0;
}
@media(max-width:700px){
  .event-page-body .site-header .nav{
    padding:8px 16px;
  }
  .event-page-body .event-nav-links{
    gap:12px;
  }
  .event-page-body .event-nav-links a{
    font-size:.86rem;
  }
}
@media(max-width:520px){
  .event-page-body .event-nav-links a:nth-child(2){
    display:none;
  }
}

/* V16 - botones funcionales del evento */
.event-page-actions{align-items:center}
@media(max-width:620px){
  .event-page-actions .btn{display:block;width:100%;text-align:center}
}

/* V17 - Optimización responsive para móvil y tablet */
@media(max-width:1024px){
  .nav{max-width:100%;padding-left:18px;padding-right:18px}
  .hero-grid{gap:34px}
  .hero h1{font-size:clamp(3.8rem,8vw,6.2rem)}
  .photo{max-width:360px}
  .home-event-inner{grid-template-columns:1.15fr .85fr}
  .event-page-inner{gap:34px}
}

@media(max-width:820px){
  .site-header{position:sticky;top:0}
  .nav{flex-wrap:wrap}
  .brand img{width:72px;height:58px}
  .brand span{font-size:.9rem}
  .menu{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:12px}
  .menu a{font-size:.85rem}
  .hero{min-height:auto}
  .hero-grid{grid-template-columns:1fr;padding-top:58px;padding-bottom:74px;text-align:center}
  .hero-visual{order:-1}
  .photo{max-width:390px;margin:auto}
  .buttons,.hero-badges{justify-content:center}
  .quick{max-width:680px;margin-left:auto;margin-right:auto}
  .verse{max-width:92%}
  .home-event-inner{grid-template-columns:1fr;gap:24px;text-align:center}
  .home-event-mini-poster{max-width:310px;margin:auto}
  .cards,.contact,.social{grid-template-columns:1fr}
  .events-grid{grid-template-columns:1fr}
  .event-card{min-height:auto}
  .event-feature{grid-template-columns:1fr;grid-template-rows:auto}
  .event-poster{height:auto;min-height:0}
  .event-poster img{height:auto}
  .event-page-inner{grid-template-columns:1fr}
  .event-page-poster{max-width:430px;margin:auto}
  .event-page-copy{text-align:center}
  .event-page-facts{grid-template-columns:1fr}
  .event-page-actions{justify-content:center}
  .event-page-scripture{text-align:left}
}

@media(max-width:640px){
  body{overflow-x:hidden}
  .nav{padding:8px 14px}
  .brand{gap:8px}
  .brand img{width:60px;height:50px}
  .brand span{font-size:.82rem}
  .menu{width:100%;justify-content:center;padding-top:4px}
  .menu a{font-size:.82rem}
  .hero-grid{padding:48px 16px 62px}
  .hero h1{font-size:clamp(3rem,15vw,4.4rem);line-height:.9}
  .lead{font-size:1.08rem}
  .location-pill{font-size:.8rem}
  .buttons{flex-direction:column;align-items:stretch}
  .buttons .btn{width:100%;text-align:center}
  .hero-badges{display:grid;grid-template-columns:1fr}
  .hero-badges span{width:100%}
  .photo{max-width:100%;transform:none}
  .verse{padding:24px 18px}
  .verse p{font-size:1rem}
  .section{padding:58px 16px}
  .section h2{font-size:2.15rem}
  .cards article,.contact a{padding:22px}
  .home-event-preview{padding:44px 14px}
  .home-event-inner{padding:24px 20px}
  .home-event-copy h2{font-size:2.25rem}
  .home-event-meta{justify-content:center}
  .home-event-mini-poster{max-width:260px}
  .events-section{padding-left:14px;padding-right:14px}
  .event-card{padding:24px 18px}
  .event-date{position:static;margin-bottom:12px;width:max-content}
  .event-tag{position:static;display:inline-block;max-width:none;margin-bottom:8px}
  .event-detail-section,.event-page-hero{padding:56px 14px}
  .event-page-copy h1{font-size:clamp(2.5rem,12vw,3.4rem)}
  .event-page-actions{display:grid;grid-template-columns:1fr;width:100%}
  .event-page-actions .btn{width:100%;text-align:center}
  .map-wrap iframe{height:300px}
  .footer-inner{grid-template-columns:1fr;text-align:center}
  .footer-inner img{margin:auto}
  .footer-links{justify-content:center}
  .event-share-strip{margin:26px 14px 50px}
}

@media(max-width:420px){
  .menu{gap:8px}
  .menu a{font-size:.76rem}
  .hero h1{font-size:3rem}
  .eyebrow{font-size:.68rem;letter-spacing:.14em}
  .home-event-copy h2,.section h2{font-size:1.95rem}
  .event-page-copy h1{font-size:2.45rem}
  .event-page-facts>div{padding:13px}
  .event-page-poster{padding:7px}
  .footer-info b{font-size:.9rem}
  .footer-info p{font-size:.82rem}
}

/* V18 - Pulido móvil y compartir */
.event-share-links button{
  padding:9px 14px;
  border:1px solid #c99b35;
  border-radius:999px;
  background:#fffaf0;
  color:#8c6518;
  font:inherit;
  font-weight:800;
  cursor:pointer;
}
.event-share-links button:hover{
  background:#dca92f;
  color:#082844;
}

@media(max-width:640px){
  /* Header */
  .site-header .nav{
    gap:10px;
    padding:8px 12px;
  }
  .brand img{
    width:52px;
    height:46px;
  }
  .brand span{
    font-size:.9rem;
    letter-spacing:.05em;
  }
  .menu{
    gap:10px;
  }
  .menu a{
    font-size:.8rem;
  }

  /* Hero */
  .hero-grid{
    padding:38px 14px 48px;
  }
  .hero h1{
    font-size:clamp(2.8rem,16vw,4.1rem);
    line-height:.88;
    margin-top:10px;
  }
  .lead{
    font-size:1.02rem;
    margin-left:auto;
    margin-right:auto;
  }
  .location-pill{
    margin-top:8px;
  }
  .buttons{
    gap:10px;
    margin:20px 0;
  }
  .buttons .btn{
    padding:12px 14px;
    font-size:.95rem;
  }
  .hero-badges{
    gap:8px;
    margin-top:20px;
  }
  .hero-badges span{
    padding:8px 10px;
    font-size:.8rem;
  }
  .photo{
    max-width:320px;
  }

  /* Verse / home event */
  .verse{
    margin-top:-26px;
    padding:20px 16px;
  }
  .home-event-preview{
    padding:34px 12px 46px;
  }
  .home-event-inner{
    padding:20px 16px;
    gap:18px;
  }
  .home-event-copy h2{
    font-size:2rem;
    margin-bottom:10px;
  }
  .home-event-meta{
    gap:7px;
    margin:14px 0 18px;
  }
  .home-event-meta span{
    width:100%;
    justify-content:center;
  }
  .home-event-mini-poster{
    max-width:235px;
  }

  /* General sections */
  .section{
    padding:50px 14px;
  }
  .section-heading{
    margin-bottom:28px;
  }
  .section h2{
    font-size:2rem;
  }
  .cards{
    gap:12px;
  }
  .cards article{
    padding:18px;
  }

  /* Events */
  .events-section{
    padding:48px 12px;
  }
  .events-grid{
    gap:12px;
  }
  .event-card{
    padding:18px 16px;
    border-radius:14px;
  }
  .event-feature{
    padding:14px;
    gap:14px;
  }
  .event-poster{
    border-radius:12px;
  }
  .event-card h3{
    font-size:1.3rem;
  }
  .event-details{
    gap:6px;
    margin-bottom:16px;
  }
  .event-btn{
    width:100%;
    text-align:center;
  }
  .events-note{
    margin-top:18px;
    padding:14px;
  }
  .events-social-links{
    width:100%;
    display:grid;
    grid-template-columns:1fr;
  }
  .events-social-links a{
    width:100%;
  }

  /* Live / Contact */
  .live-section{
    padding:50px 14px;
  }
  .social{
    gap:10px;
  }
  .social a{
    padding:18px;
  }
  .contact{
    gap:10px;
  }
  .contact a{
    padding:18px;
  }
  .map-wrap{
    margin-top:20px;
  }
  .map-wrap iframe{
    height:240px;
  }

  /* Footer */
  footer{
    padding:30px 14px;
  }
  .footer-inner{
    gap:16px;
  }
  footer img{
    width:88px;
    height:78px;
  }

  /* Event page mobile */
  .event-page-hero{
    padding:42px 12px 54px;
  }
  .event-page-inner{
    gap:24px;
  }
  .event-page-poster{
    max-width:330px;
  }
  .event-page-copy h1{
    font-size:clamp(2.1rem,11vw,3rem);
    line-height:1;
  }
  .event-page-lead{
    font-size:1rem;
  }
  .event-page-facts{
    gap:8px;
    margin:20px 0;
  }
  .event-page-facts>div{
    padding:13px;
  }
  .event-page-actions{
    gap:8px;
  }
  .event-page-actions .btn{
    padding:11px 13px;
    font-size:.92rem;
  }
  .event-page-scripture{
    padding:18px 16px 16px 28px;
  }
  .event-share-strip{
    margin:20px 12px 40px;
    padding:16px;
  }
  .event-share-links{
    width:100%;
    display:grid;
    grid-template-columns:1fr;
  }
  .event-share-links a,
  .event-share-links button{
    width:100%;
    text-align:center;
  }
}

@media(max-width:390px){
  .brand span{font-size:.82rem}
  .menu{gap:8px}
  .menu a{font-size:.74rem}
  .hero h1{font-size:2.7rem}
  .home-event-copy h2{font-size:1.8rem}
  .section h2{font-size:1.85rem}
}

/* V19 - Experiencia móvil real + menú hamburguesa */
.mobile-menu-toggle{display:none}

@media(max-width:640px){
  html{font-size:17px}
  body{line-height:1.55}

  .site-header .nav{
    min-height:64px;
    padding:7px 14px;
    display:flex;
    flex-wrap:nowrap;
    align-items:center;
    justify-content:space-between;
    position:relative;
  }
  .brand{
    min-width:0;
    gap:8px;
  }
  .brand img{
    width:46px;
    height:44px;
    object-fit:contain;
  }
  .brand span{
    font-size:.92rem;
    white-space:nowrap;
  }

  .mobile-menu-toggle{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:6px;
    border:1px solid rgba(224,176,54,.7);
    background:rgba(255,255,255,.04);
    color:#fff;
    border-radius:10px;
    padding:9px 11px;
    font-weight:800;
    font-size:.84rem;
    cursor:pointer;
  }

  .site-header .menu,
  .site-header .event-nav{
    display:none !important;
    position:absolute;
    z-index:1000;
    top:100%;
    left:12px;
    right:12px;
    width:auto;
    padding:10px;
    background:#0a2943;
    border:1px solid rgba(224,176,54,.55);
    border-radius:0 0 14px 14px;
    box-shadow:0 14px 28px rgba(0,0,0,.28);
  }
  .site-header .menu.mobile-open,
  .site-header .event-nav.mobile-open{
    display:grid !important;
    grid-template-columns:1fr;
    gap:4px;
  }
  .site-header .menu a,
  .site-header .event-nav a{
    display:block;
    padding:11px 12px;
    font-size:.96rem;
    text-align:left;
    border-radius:8px;
    color:#fff;
  }
  .site-header .menu a:hover,
  .site-header .event-nav a:hover{
    background:rgba(255,255,255,.08);
    color:#f2c348;
  }

  .hero-grid{
    padding-top:44px;
  }
  .hero h1{
    font-size:clamp(3.2rem,17vw,4.35rem);
    letter-spacing:-.035em;
  }
  .eyebrow{font-size:.76rem}
  .lead{font-size:1.08rem;line-height:1.45}
  .location-pill{font-size:.88rem;padding:9px 12px}
  .buttons .btn{font-size:1rem;padding:13px 16px}
  .hero-badges span{font-size:.88rem;padding:10px 12px}

  .photo-copy strong{font-size:1.05rem}
  .photo-copy span{font-size:.86rem}

  .verse p{font-size:1.02rem;line-height:1.45}
  .verse strong{font-size:.92rem}

  .section-heading .eyebrow{font-size:.74rem}
  .section h2{font-size:2.15rem;line-height:1.08}
  .section-heading p{font-size:1rem}
  .cards article h3{font-size:1.15rem}
  .cards article p{font-size:.96rem}

  .schedule-card h3,
  .event-card h3{font-size:1.35rem}
  .schedule-card p,
  .event-card p,
  .event-details{font-size:.95rem}

  .home-event-copy h2{font-size:2.15rem}
  .home-event-copy p{font-size:.98rem}
  .home-event-meta span{font-size:.9rem}
  .home-event-mini-poster{max-width:270px}

  .events-section .section-heading p{font-size:.98rem}
  .event-feature{padding:16px}
  .event-card .btn,
  .event-btn{font-size:.98rem;padding:12px 15px}

  .social a strong,
  .contact a strong{font-size:1.08rem}
  .social a span,
  .contact a span{font-size:.92rem}

  .map-wrap iframe{height:280px}

  .event-page-copy h1{
    font-size:clamp(2.45rem,12.5vw,3.25rem);
    line-height:.98;
  }
  .event-page-lead{font-size:1.05rem}
  .event-page-facts strong{font-size:1rem}
  .event-page-facts span{font-size:.94rem}
  .event-page-poster{max-width:350px}
  .event-page-actions .btn{font-size:.96rem;padding:12px 14px}
  .event-share-strip strong{font-size:1.05rem}
  .event-share-strip span{font-size:.92rem}
  .event-share-links a,
  .event-share-links button{font-size:.96rem;padding:11px 13px}

  .footer-info b{font-size:.95rem}
  .footer-info p{font-size:.88rem}
  .footer-links a{font-size:.9rem}
}

@media(max-width:370px){
  html{font-size:16px}
  .brand span{font-size:.8rem}
  .mobile-menu-toggle span{display:none}
  .mobile-menu-toggle{padding:9px 12px;font-size:1rem}
  .hero h1{font-size:2.9rem}
}

/* V20 - Menú hamburguesa móvil definitivo */
@media(max-width:640px){
  .site-header{
    position:sticky;
    top:0;
    z-index:9999;
  }

  .site-header .nav{
    position:relative;
    min-height:64px;
    padding:8px 14px;
    display:flex !important;
    flex-wrap:nowrap !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:12px;
  }

  .site-header .brand{
    display:flex !important;
    align-items:center;
    gap:8px;
    flex:1 1 auto;
    min-width:0;
  }

  .site-header .brand img{
    width:48px;
    height:44px;
    object-fit:contain;
    flex:0 0 auto;
  }

  .site-header .brand span{
    font-size:.92rem;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
  }

  .mobile-menu-toggle{
    display:inline-flex !important;
    flex:0 0 auto;
    align-items:center;
    justify-content:center;
    gap:6px;
    min-width:92px;
    padding:10px 13px;
    border:1px solid rgba(225,178,59,.75);
    border-radius:999px;
    background:#f5f5f3;
    color:#111;
    font-weight:800;
    font-size:.9rem;
    line-height:1;
    cursor:pointer;
  }

  /* Hide ALL nav links by default on phone */
  .site-header .menu,
  .site-header .event-nav,
  .site-header .event-nav-links{
    display:none !important;
    visibility:hidden !important;
    opacity:0 !important;
    pointer-events:none !important;
  }

  /* Only show when toggled */
  .site-header .menu.mobile-open,
  .site-header .event-nav.mobile-open,
  .site-header .event-nav-links.mobile-open{
    display:grid !important;
    visibility:visible !important;
    opacity:1 !important;
    pointer-events:auto !important;
    position:absolute !important;
    top:calc(100% + 1px);
    left:10px;
    right:10px;
    width:auto !important;
    grid-template-columns:1fr !important;
    gap:4px !important;
    padding:10px !important;
    background:#0b2a45 !important;
    border:1px solid rgba(225,178,59,.5);
    border-radius:0 0 14px 14px;
    box-shadow:0 14px 30px rgba(0,0,0,.32);
    z-index:10000;
  }

  .site-header .menu.mobile-open a,
  .site-header .event-nav.mobile-open a,
  .site-header .event-nav-links.mobile-open a{
    display:block !important;
    width:100%;
    padding:12px 14px !important;
    margin:0 !important;
    color:#fff !important;
    background:transparent !important;
    text-align:left !important;
    text-decoration:none !important;
    font-size:1rem !important;
    border-radius:8px;
  }

  .site-header .menu.mobile-open a:hover,
  .site-header .event-nav.mobile-open a:hover,
  .site-header .event-nav-links.mobile-open a:hover{
    background:rgba(255,255,255,.08) !important;
    color:#f2c348 !important;
  }

  /* Eliminate old desktop spacing leaking into mobile */
  .site-header .menu a,
  .site-header .event-nav a,
  .site-header .event-nav-links a{
    margin:0 !important;
  }
}

@media(max-width:390px){
  .site-header .brand span{font-size:.82rem}
  .mobile-menu-toggle{
    min-width:48px;
    padding:10px 12px;
  }
  .mobile-menu-toggle span{display:none}
}

/* =========================================================
   V21 — HEADER RECONSTRUIDO
   ========================================================= */
.site-header{
  position:sticky;
  top:0;
  z-index:10000;
  background:#10283f;
  border-bottom:1px solid rgba(224,176,54,.35);
}

.header-inner{
  max-width:1180px;
  margin:0 auto;
  min-height:72px;
  padding:8px 22px;
  display:grid;
  grid-template-columns:auto 1fr;
  align-items:center;
  gap:24px;
}

.site-header .brand{
  display:flex;
  align-items:center;
  gap:12px;
  min-width:0;
  text-decoration:none;
  color:#f0c34b;
  font-weight:800;
  letter-spacing:.07em;
}

.site-header .brand img{
  width:72px;
  height:56px;
  object-fit:contain;
  flex:0 0 auto;
}

.site-header .brand span{
  white-space:nowrap;
  font-size:1rem;
}

.main-nav{
  display:flex;
  justify-content:flex-end;
  align-items:center;
  gap:24px;
}

.main-nav a{
  color:#fff;
  text-decoration:none;
  font-size:.95rem;
  padding:10px 0;
  position:relative;
}

.main-nav a::after{
  content:"";
  position:absolute;
  left:0;
  bottom:3px;
  width:0;
  height:2px;
  background:#e1b23b;
  transition:width .2s ease;
}

.main-nav a:hover{
  color:#f0c34b;
}

.main-nav a:hover::after{
  width:100%;
}

.hamburger{
  display:none;
}

@media (max-width:700px){
  .header-inner{
    min-height:66px;
    padding:7px 14px;
    grid-template-columns:minmax(0,1fr) auto;
    gap:12px;
    position:relative;
  }

  .site-header .brand{
    gap:8px;
    overflow:hidden;
  }

  .site-header .brand img{
    width:46px;
    height:46px;
  }

  .site-header .brand span{
    font-size:.92rem;
    letter-spacing:.05em;
    overflow:hidden;
    text-overflow:ellipsis;
  }

  .hamburger{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:6px;
    min-width:92px;
    padding:10px 13px;
    border:1px solid #dcb13e;
    border-radius:999px;
    background:#f4f4f1;
    color:#111;
    font:inherit;
    font-size:.88rem;
    font-weight:800;
    cursor:pointer;
    line-height:1;
  }

  .main-nav{
    display:none !important;
    position:absolute;
    top:100%;
    left:10px;
    right:10px;
    z-index:10001;
    background:#0b2a45;
    border:1px solid rgba(225,178,59,.55);
    border-top:none;
    border-radius:0 0 14px 14px;
    box-shadow:0 16px 34px rgba(0,0,0,.32);
    padding:10px;
  }

  .main-nav.is-open{
    display:grid !important;
    grid-template-columns:1fr;
    gap:4px;
  }

  .main-nav a{
    display:block;
    width:100%;
    padding:12px 14px;
    color:#fff;
    font-size:1rem;
    text-align:left;
    border-radius:8px;
  }

  .main-nav a::after{
    display:none;
  }

  .main-nav a:hover{
    background:rgba(255,255,255,.08);
    color:#f0c34b;
  }
}

@media (max-width:390px){
  .site-header .brand span{
    font-size:.82rem;
  }

  .hamburger{
    min-width:48px;
    padding:10px 12px;
  }

  .hamburger-text{
    display:none;
  }
}

/* V22 CACHE BUST + CRITICAL HEADER INLINE IN HTML */

/* V23 - Menú móvil compacto y elegante */
@media (max-width:700px){
  .main-nav.is-open{
    left:14px !important;
    right:14px !important;
    top:calc(100% + 6px) !important;
    padding:8px !important;
    gap:2px !important;
    border:1px solid rgba(225,178,59,.55) !important;
    border-radius:14px !important;
    box-shadow:0 18px 38px rgba(0,0,0,.30) !important;
    animation:menuDrop .18s ease-out both;
  }

  .main-nav.is-open a{
    padding:10px 12px !important;
    font-size:.96rem !important;
    border-bottom:1px solid rgba(255,255,255,.06);
  }

  .main-nav.is-open a:last-child{
    border-bottom:none;
  }

  .hamburger{
    transition:transform .18s ease, background .18s ease;
  }

  .hamburger:active{
    transform:scale(.97);
  }

  @keyframes menuDrop{
    from{
      opacity:0;
      transform:translateY(-8px);
    }
    to{
      opacity:1;
      transform:translateY(0);
    }
  }
}

/* V24 - enlaces de eventos restaurados */
.event-btn,
.home-event-preview .btn,
.event-page-actions .btn{
  position:relative;
  z-index:2;
  pointer-events:auto !important;
  cursor:pointer;
  touch-action:manipulation;
}
.event-card,
.home-event-inner,
.event-page-copy{
  position:relative;
}
