
:root{
  --navy:#102f54; --navy-2:#0b233f; --gold:#b98a37; --gold-soft:#dfbd79;
  --cream:#f6ede0; --paper:#fffaf4; --ink:#27241f; --muted:#685f55;
  --line:rgba(16,47,84,.14); --shadow:0 28px 80px rgba(20,31,45,.15);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.6;overflow-x:hidden}
a{color:inherit}.topbar{min-height:38px;padding:8px clamp(18px,4vw,60px);display:flex;align-items:center;justify-content:center;gap:clamp(18px,4vw,52px);background:var(--navy-2);color:#fff;font-size:12px;letter-spacing:.08em;text-transform:uppercase}.topbar strong{color:var(--gold-soft)}.topbar a{text-decoration:none;border-bottom:1px solid rgba(255,255,255,.45)}
.header{position:sticky;top:0;z-index:50;min-height:88px;padding:16px clamp(20px,5vw,70px);display:flex;align-items:center;justify-content:space-between;background:rgba(255,250,244,.92);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}
.brand{display:flex;align-items:center;gap:13px;text-decoration:none;color:var(--navy)}.brand-icon{width:46px;height:46px;border:1px solid var(--gold);border-radius:50%;display:grid;place-items:center;color:var(--gold);font-size:20px}.brand small{display:block;font-size:9px;letter-spacing:.18em;font-weight:800}.brand strong{display:block;font-family:Georgia,serif;font-size:24px;letter-spacing:.08em;line-height:1.05}.nav{display:flex;align-items:center;gap:28px}.nav a{text-decoration:none;font-size:13px;font-weight:700;color:#39485a}.nav a:hover{color:var(--navy)}.nav-cta{padding:11px 20px;border-radius:999px;background:var(--navy);color:white!important}.menu-toggle{display:none;border:0;background:none;font-size:26px;color:var(--navy)}
.hero{width:min(1360px,calc(100% - 42px));min-height:790px;margin:auto;padding:70px 0 96px;display:grid;grid-template-columns:.93fr 1.07fr;gap:clamp(42px,7vw,110px);align-items:center;position:relative}.hero:before{content:"";position:absolute;left:-24vw;top:10%;width:50vw;height:50vw;border-radius:50%;background:radial-gradient(circle,rgba(185,138,55,.16),transparent 67%);pointer-events:none}.kicker{margin:0 0 18px;color:var(--gold);font-size:12px;font-weight:900;letter-spacing:.27em;text-transform:uppercase}.hero h1,.section-heading h2,.register-card h2{margin:0;color:var(--navy);font-family:Georgia,"Times New Roman",serif;font-weight:400;letter-spacing:-.045em}.hero h1{font-size:clamp(64px,7vw,110px);line-height:.88}.hero h1 span{display:block;margin-top:24px;font-family:Inter,system-ui,sans-serif;font-size:clamp(19px,2vw,29px);line-height:1.15;letter-spacing:.18em;text-transform:uppercase;font-weight:800;color:#2b3f54}.hero-lead{max-width:650px;margin:30px 0 32px;font-size:clamp(18px,2vw,22px);color:#5f574e}.hero-meta{display:grid;grid-template-columns:1fr 1fr;max-width:650px;border-block:1px solid var(--line)}.hero-meta div{padding:18px 20px 18px 0}.hero-meta div+div{padding-left:22px;border-left:1px solid var(--line)}.hero-meta small{display:block;color:var(--gold);font-size:10px;font-weight:900;letter-spacing:.17em}.hero-meta strong{display:block;color:var(--navy);font-size:17px}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:31px}.btn{min-height:55px;padding:15px 24px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;gap:16px;text-decoration:none;font-weight:800;font-size:14px;transition:.22s ease}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--navy);color:white;box-shadow:0 15px 35px rgba(16,47,84,.24)}.btn-ghost{border:1px solid rgba(16,47,84,.35);color:var(--navy)}.countdown{display:flex;gap:25px;margin-top:33px}.countdown div{min-width:54px}.countdown strong{display:block;font-family:Georgia,serif;color:var(--navy);font-size:28px;line-height:1}.countdown span{font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:#7a7168}.hero-art{position:relative;isolation:isolate}.art-frame{position:relative;z-index:2;padding:14px;border-radius:34px;background:linear-gradient(145deg,rgba(255,255,255,.8),rgba(213,182,122,.35));box-shadow:var(--shadow)}.art-frame img{width:100%;display:block;border-radius:24px}.hero-art:after{content:"";position:absolute;z-index:1;inset:12% -8% -6% 12%;background:rgba(185,138,55,.28);filter:blur(60px);border-radius:50%}.hero-badge{position:absolute;z-index:4;left:-70px;bottom:34px;width:250px;padding:20px 22px;border-radius:18px;background:rgba(16,47,84,.96);color:white;box-shadow:0 20px 50px rgba(11,35,63,.28)}.hero-badge strong{display:block;color:var(--gold-soft);font-size:12px;letter-spacing:.17em;text-transform:uppercase}.hero-badge span{display:block;margin-top:7px;font-family:Georgia,serif;font-size:17px;line-height:1.35}.marquee{overflow:hidden;background:var(--gold);color:var(--navy-2);font-weight:900;letter-spacing:.13em;white-space:nowrap;padding:12px 0;font-size:12px}.marquee div{display:inline-block;animation:marquee 28s linear infinite}@keyframes marquee{to{transform:translateX(-50%)}}
.section{padding:115px max(24px,calc((100% - 1180px)/2))}.section-heading{max-width:830px;margin-bottom:55px}.section-heading h2,.register-card h2{font-size:clamp(43px,5.6vw,75px);line-height:1.02}.section-heading>p:last-child{max-width:680px;color:var(--muted);font-size:18px}.about{background:linear-gradient(180deg,#fffaf4,#f9f0e5)}.about-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:75px;align-items:start}.about-copy .large{margin-top:0;color:var(--navy);font-family:Georgia,serif;font-size:clamp(28px,3vw,43px);line-height:1.25}.about-copy p:last-child{font-size:18px;color:var(--muted)}.about-values{display:grid;gap:13px}.about-values article{padding:23px 25px;display:grid;grid-template-columns:52px 1fr;column-gap:15px;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.55)}.about-values span{grid-row:1/3;color:var(--gold);font-weight:900;letter-spacing:.12em}.about-values h3{margin:0;color:var(--navy);font-family:Georgia,serif;font-size:25px}.about-values p{margin:2px 0 0;color:var(--muted)}
.dark{background:var(--navy-2);color:white;position:relative;overflow:hidden}.dark:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 88% 10%,rgba(185,138,55,.18),transparent 30rem),linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:auto,48px 48px,48px 48px}.light{position:relative;z-index:1}.light h2{color:white}.light>p:last-child{color:#c9d2dc}.session-grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.session-card{min-height:310px;padding:30px;border:1px solid rgba(255,255,255,.13);border-radius:22px;background:rgba(255,255,255,.055);display:flex;flex-direction:column;transition:.25s ease}.session-card:hover{transform:translateY(-5px);background:rgba(255,255,255,.085);border-color:rgba(223,189,121,.5)}.session-number{color:var(--gold-soft);font:400 62px/1 Georgia,serif;opacity:.85}.session-time{margin:24px 0 11px;color:#a8b8c7;font-size:10px;font-weight:900;letter-spacing:.17em}.session-card h3{margin:0;color:white;font-family:Georgia,serif;font-size:27px;line-height:1.23;font-weight:400}.session-speaker{margin:auto 0 0;color:var(--gold-soft);font-weight:800}
.speakers{background:#fffaf4}.speaker-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.speaker-card{overflow:hidden;border:1px solid var(--line);border-radius:24px;background:white;box-shadow:0 18px 45px rgba(23,43,64,.08);display:flex;flex-direction:column}.speaker-photo{aspect-ratio:4/4.35;overflow:hidden;background:#d9d1c6}.speaker-photo img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s ease}.speaker-card:hover .speaker-photo img{transform:scale(1.035)}.speaker-body{padding:25px 25px 28px;display:flex;flex-direction:column;flex:1}.speaker-session{align-self:flex-start;padding:6px 10px;border-radius:999px;background:#edf1f5;color:var(--navy);font-size:9px;font-weight:900;letter-spacing:.13em;text-transform:uppercase}.speaker-body h3{margin:17px 0 4px;color:var(--navy);font-family:Georgia,serif;font-size:32px;font-weight:400}.speaker-church{margin:0;color:#3f4c59;font-weight:800;font-size:13px;line-height:1.35;min-height:36px}.speaker-place{margin:6px 0 18px;color:var(--gold);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.09em}.speaker-bio{margin:0;color:#655d54;font-size:14px;line-height:1.68;min-height:188px}.speaker-topic{margin:auto 0 0;padding-top:20px;border-top:1px solid var(--line);color:var(--navy);font-family:Georgia,serif;font-size:15px;line-height:1.4}.speaker-topic span{display:block;margin-bottom:6px;color:var(--gold);font-family:Inter,system-ui,sans-serif;font-size:9px;font-weight:900;letter-spacing:.15em;text-transform:uppercase}
.program{background:#f5eadc}.program-tabs{display:flex;gap:9px;margin-bottom:20px}.tab{min-width:150px;padding:13px 22px;border:1px solid rgba(16,47,84,.25);border-radius:999px;background:transparent;color:var(--navy);font-weight:850;cursor:pointer}.tab.active{background:var(--navy);color:white}.program-panels{border:1px solid var(--line);border-radius:24px;background:#fffdf9;box-shadow:0 24px 60px rgba(28,40,53,.08);overflow:hidden}.program-panel{display:none;padding:18px 38px}.program-panel.active{display:block}.timeline-item{position:relative;display:grid;grid-template-columns:160px 1fr;gap:26px;padding:25px 8px;border-bottom:1px solid var(--line)}.timeline-item:last-of-type{border-bottom:0}.timeline-item time{color:var(--navy);font-weight:900}.timeline-item span{display:block;color:var(--gold);font-size:11px;font-weight:900;letter-spacing:.09em;text-transform:uppercase}.timeline-item strong{display:block;margin-top:3px;color:#2b3948;font-family:Georgia,serif;font-size:22px;font-weight:400}.timeline-item.break,.timeline-item.meal{opacity:.76}.timeline-end{margin:24px 0 10px;padding:15px 20px;border-radius:12px;background:#edf1f5;color:var(--navy);font-weight:900;text-align:center}
.verse-section{min-height:520px;padding:100px 24px;display:grid;place-items:center;color:white;background:linear-gradient(100deg,rgba(11,35,63,.96),rgba(16,47,84,.82)),url('assets/arte-oficial.png') center/cover fixed}.verse-inner{width:min(1060px,100%);text-align:center}.verse-inner .kicker{color:var(--gold-soft)}blockquote{margin:0;font-family:Georgia,serif;font-size:clamp(38px,5vw,70px);line-height:1.17}
.register{background:#fffaf4}.register-card{padding:clamp(35px,6vw,70px);display:grid;grid-template-columns:1.25fr .75fr;gap:65px;align-items:center;border-radius:30px;background:linear-gradient(135deg,#f2e3d1,#fffaf4);border:1px solid rgba(185,138,55,.3);box-shadow:var(--shadow)}.register-card h2{margin-bottom:18px}.register-card>div>p:not(.kicker){max-width:650px;color:var(--muted);font-size:18px}.register-list{padding:0;list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:28px 0 0}.register-list li{padding-top:13px;border-top:2px solid var(--gold);font-size:13px;font-weight:800;color:var(--navy)}.register-action{text-align:center}.free-seal{width:150px;height:150px;margin:0 auto 22px;border:1px solid var(--gold);border-radius:50%;display:grid;place-content:center;color:var(--navy);background:rgba(255,255,255,.55)}.free-seal small{font-size:10px;letter-spacing:.15em}.free-seal strong{font-family:Georgia,serif;font-size:31px}.free-seal span{font-size:12px;color:var(--gold);font-weight:800;letter-spacing:.18em}.btn.large{width:100%;min-height:61px}.register-action p{font-size:12px!important}.footer{padding:38px clamp(20px,5vw,70px) 95px;display:flex;justify-content:space-between;gap:20px;align-items:center;border-top:1px solid var(--line);color:#6e655c}.footer-brand strong{display:block;color:var(--navy)}.footer-brand span{font-size:13px}.footer a{text-decoration:none;font-weight:800;color:var(--navy)}.mobile-register{display:none}.reveal{opacity:0;transform:translateY(22px);transition:opacity .65s ease,transform .65s ease}.reveal.visible{opacity:1;transform:none}
@media(max-width:1050px){.hero{grid-template-columns:1fr;max-width:850px}.hero-copy{text-align:center}.hero-meta,.hero-lead{margin-left:auto;margin-right:auto}.hero-actions,.countdown{justify-content:center}.hero-art{max-width:730px;margin:auto}.hero-badge{left:20px}.session-grid,.speaker-grid{grid-template-columns:repeat(2,1fr)}.about-grid{grid-template-columns:1fr}.register-card{grid-template-columns:1fr}.register-action{max-width:500px}.speaker-bio{min-height:165px}}
@media(max-width:760px){.topbar{display:none}.header{min-height:72px;padding:12px 18px}.brand small{font-size:7px}.brand strong{font-size:19px}.brand-icon{width:39px;height:39px}.menu-toggle{display:block}.nav{position:absolute;top:72px;left:14px;right:14px;padding:18px;display:none;flex-direction:column;align-items:stretch;gap:4px;border-radius:16px;background:#fffaf4;box-shadow:var(--shadow);border:1px solid var(--line)}.nav.open{display:flex}.nav a{padding:10px 12px}.hero{width:calc(100% - 28px);min-height:auto;padding:50px 0 72px}.hero h1{font-size:57px}.hero h1 span{font-size:17px}.hero-meta{grid-template-columns:1fr;text-align:left}.hero-meta div+div{border-left:0;border-top:1px solid var(--line);padding-left:0}.hero-actions .btn{width:100%}.countdown{gap:12px;justify-content:space-between}.hero-badge{position:relative;left:auto;bottom:auto;width:calc(100% - 24px);margin:-18px auto 0}.section{padding:82px 18px}.session-grid,.speaker-grid{grid-template-columns:1fr}.speaker-bio{min-height:0}.program-panel{padding:12px 18px}.timeline-item{grid-template-columns:1fr;gap:4px;padding:21px 4px}.timeline-item strong{font-size:19px}.program-tabs{display:grid;grid-template-columns:1fr 1fr}.tab{min-width:0}.register-list{grid-template-columns:1fr}.footer{align-items:flex-start;flex-direction:column;padding-bottom:100px}.mobile-register{position:fixed;z-index:60;left:13px;right:13px;bottom:11px;min-height:54px;display:grid;place-items:center;border-radius:999px;background:var(--navy);color:white;text-decoration:none;font-weight:900;box-shadow:0 16px 42px rgba(11,35,63,.35)}.verse-section{background-attachment:scroll}}


/* ===== V3 · refinamiento visual y funcional ===== */
:root{--ring:rgba(185,138,55,.28)}
html{scroll-padding-top:112px}
body{background-image:radial-gradient(circle at 8% 4%,rgba(185,138,55,.08),transparent 26rem)}
button,a{-webkit-tap-highlight-color:transparent}
a:focus-visible,button:focus-visible{outline:3px solid var(--gold-soft);outline-offset:4px}
.scroll-progress{position:fixed;z-index:100;left:0;right:0;top:0;height:3px;background:transparent;pointer-events:none}.scroll-progress span{display:block;width:0;height:100%;background:linear-gradient(90deg,var(--gold),var(--gold-soft));box-shadow:0 0 14px rgba(185,138,55,.55)}
.header{box-shadow:0 8px 28px rgba(20,31,45,.045)}
.brand-icon{overflow:hidden;border:0;background:#fbf4ea;box-shadow:0 4px 14px rgba(16,47,84,.10)}.brand-icon img{width:100%;height:100%;object-fit:cover;display:block;transform:scale(1.18)}
.nav a{position:relative}.nav a:not(.nav-cta):after{content:"";position:absolute;left:0;right:100%;bottom:-6px;height:2px;background:var(--gold);transition:right .25s ease}.nav a:hover:after,.nav a.active:after{right:0}
.btn{border:0;cursor:pointer}.btn-share{background:transparent;border:1px solid rgba(16,47,84,.22);color:var(--navy)}
.hero-art .art-frame{transform:rotate(.15deg)}
.speaker-grid{gap:28px}.speaker-card{position:relative;padding:36px 24px 28px;overflow:visible;text-align:center;border-radius:28px;background:linear-gradient(180deg,#fff,#fffaf4);transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}.speaker-card:hover{transform:translateY(-7px);box-shadow:0 28px 65px rgba(23,43,64,.14);border-color:rgba(185,138,55,.35)}
.speaker-photo{position:relative;width:210px;height:210px;aspect-ratio:1;margin:0 auto 6px;overflow:visible;background:transparent;border-radius:50%}.speaker-photo:before{content:"";position:absolute;inset:-10px;border:1px solid var(--ring);border-radius:50%}.speaker-photo:after{content:"";position:absolute;inset:12px -18px -18px 12px;border-radius:50%;background:rgba(185,138,55,.13);filter:blur(18px);z-index:0}.speaker-photo img{position:relative;z-index:2;width:100%;height:100%;object-fit:cover;object-position:center 20%;border-radius:50%;border:7px solid #fff;box-shadow:0 18px 45px rgba(16,47,84,.20)}.speaker-card:hover .speaker-photo img{transform:scale(1.025)}.portrait-ring{position:absolute;z-index:3;right:2px;bottom:10px;width:22px;height:22px;border-radius:50%;background:var(--gold);border:5px solid #fff;box-shadow:0 4px 14px rgba(16,47,84,.18)}
.speaker-body{padding:18px 0 0;align-items:center}.speaker-session{align-self:center}.speaker-body h3{margin-top:16px}.speaker-church{min-height:38px}.speaker-bio{text-align:left;min-height:190px}.speaker-topic{width:100%;text-align:left}
.church{background:var(--navy-2);color:white;position:relative;overflow:hidden}.church:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 5% 10%,rgba(185,138,55,.20),transparent 32rem),radial-gradient(circle at 100% 100%,rgba(255,255,255,.06),transparent 25rem)}.church-shell{position:relative;z-index:1;display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:center}.church-intro h2{margin:0;color:#fff;font-family:Georgia,serif;font-weight:400;font-size:clamp(44px,5vw,72px);line-height:1.02;letter-spacing:-.04em}.church-intro>p:not(.kicker){color:#c9d2dc;font-size:18px}.text-link{display:inline-flex;gap:10px;align-items:center;margin-top:15px;color:var(--gold-soft);text-decoration:none;font-weight:850}.church-links{display:grid;gap:13px}.media-card{display:grid;grid-template-columns:54px 1fr auto;gap:17px;align-items:center;padding:20px 22px;border:1px solid rgba(255,255,255,.13);border-radius:20px;background:rgba(255,255,255,.055);color:white;text-decoration:none;transition:.25s ease}.media-card:hover{transform:translateX(6px);background:rgba(255,255,255,.09);border-color:rgba(223,189,121,.52)}.media-icon{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:rgba(223,189,121,.13);border:1px solid rgba(223,189,121,.34);color:var(--gold-soft);font-weight:900;font-size:18px}.media-card small{display:block;color:var(--gold-soft);font-size:9px;font-weight:900;letter-spacing:.16em}.media-card strong{display:block;font-family:Georgia,serif;font-size:21px;font-weight:400}.media-card p{margin:3px 0 0;color:#b8c5d2;font-size:13px}.media-card b{color:var(--gold-soft);font-size:20px}
.footer{padding:0;background:#081b31;color:#c6d0da;border:0}.footer-main{padding:55px clamp(20px,5vw,70px);display:grid;grid-template-columns:1.3fr .7fr .7fr;gap:45px;align-items:start}.footer-identity{display:flex;align-items:center;gap:15px;text-decoration:none}.footer-identity img{width:58px;height:58px;object-fit:cover;border-radius:50%;background:#f8eee0}.footer-identity strong{display:block;color:white;font-family:Georgia,serif;font-size:20px}.footer-identity small{display:block;color:#8fa1b4}.footer-nav,.footer-media{display:grid;gap:9px}.footer-nav a,.footer-media a{color:#c6d0da;text-decoration:none;font-size:13px;font-weight:700}.footer-nav a:hover,.footer-media a:hover{color:var(--gold-soft)}.footer-bottom{padding:18px clamp(20px,5vw,70px);display:flex;justify-content:space-between;gap:20px;align-items:center;border-top:1px solid rgba(255,255,255,.09);font-size:12px}.back-to-top{border:0;background:transparent;color:var(--gold-soft);font-weight:850;cursor:pointer}.floating-top{position:fixed;z-index:65;right:22px;bottom:24px;width:48px;height:48px;border:1px solid rgba(255,255,255,.18);border-radius:50%;display:grid;place-items:center;background:rgba(11,35,63,.92);backdrop-filter:blur(12px);color:white;box-shadow:0 14px 36px rgba(11,35,63,.28);opacity:0;visibility:hidden;transform:translateY(12px);transition:.25s ease;cursor:pointer}.floating-top.visible{opacity:1;visibility:visible;transform:none}
@media(max-width:1050px){.church-shell{grid-template-columns:1fr}.footer-main{grid-template-columns:1fr 1fr}.footer-identity{grid-column:1/-1}.speaker-photo{width:200px;height:200px}}
@media(max-width:760px){html{scroll-padding-top:82px}.nav a:not(.nav-cta):after{display:none}.speaker-card{padding-inline:22px}.speaker-photo{width:190px;height:190px}.speaker-bio{min-height:0}.church-shell{gap:42px}.media-card{grid-template-columns:48px 1fr auto;padding:17px}.media-card p{display:none}.footer-main{grid-template-columns:1fr;padding-bottom:35px}.footer-identity{grid-column:auto}.footer-bottom{align-items:flex-start;flex-direction:column;padding-bottom:92px}.floating-top{right:17px;bottom:79px;width:44px;height:44px}.btn-share{width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal,.marquee div,.speaker-card,.media-card,.btn,.floating-top{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}


/* ===== V4 · nitidez, ubicación y movimiento continuo ===== */
:root{--sans:"Source Sans 3","Segoe UI",Arial,sans-serif;--serif:"Source Serif 4",Georgia,"Times New Roman",serif}
html{text-rendering:optimizeLegibility;-webkit-text-size-adjust:100%}
body{font-family:var(--sans);font-weight:400;color:#26231f}
h1,h2,h3,blockquote,.brand strong,.session-number,.session-card h3,.speaker-body h3,.speaker-topic,.timeline-item strong,.free-seal strong,.church-intro h2,.media-card strong,.footer-identity strong,.about-copy .large,.countdown strong{font-family:var(--serif)}
.hero h1,.section-heading h2,.register-card h2{font-family:var(--serif);font-weight:600;letter-spacing:-.035em}
.hero h1{line-height:.91}.hero h1 span{font-family:var(--sans);font-weight:800;letter-spacing:.14em}
body,p,a,button,small,strong,span{font-synthesis:none}
.brand-icon{width:52px;height:52px;background:transparent;box-shadow:none}.brand-icon img{object-fit:contain;transform:none}
.hero-art:after{inset:10% -7% 3% 11%}
.hero-caption{position:relative;z-index:4;width:calc(100% - 32px);margin:-1px auto 0;padding:18px 24px;display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:center;border-radius:0 0 22px 22px;background:var(--navy);color:#fff;box-shadow:0 18px 45px rgba(11,35,63,.22)}
.hero-caption strong{color:var(--gold-soft);font-size:12px;letter-spacing:.16em;text-transform:uppercase;white-space:nowrap}.hero-caption span{padding-left:18px;border-left:1px solid rgba(255,255,255,.2);font-family:var(--serif);font-size:17px;line-height:1.35}
.marquee{padding:12px 0;overflow:hidden}.marquee-track{display:flex;width:max-content;will-change:transform;animation:marqueeScroll 25s linear infinite}.marquee-group{display:block;flex:none;padding-right:3rem;white-space:nowrap}
@keyframes marqueeScroll{from{transform:translate3d(0,0,0)}to{transform:translate3d(-50%,0,0)}}
.marquee:hover .marquee-track{animation-play-state:paused}
.location{background:linear-gradient(145deg,#fffaf4,#f1e3d2)}.location-shell{display:grid;grid-template-columns:1.08fr .92fr;gap:70px;align-items:center}.location-copy h2{margin:0 0 22px;color:var(--navy);font-family:var(--serif);font-weight:600;font-size:clamp(43px,5vw,72px);line-height:1.02;letter-spacing:-.035em}.location-address{font-size:20px;color:#554c43;line-height:1.65}.location-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.copy-address{background:transparent}.location-card{padding:32px;border:1px solid rgba(16,47,84,.13);border-radius:28px;background:rgba(255,255,255,.72);box-shadow:0 26px 65px rgba(23,43,64,.11);display:grid;grid-template-columns:80px 1fr;gap:0 22px}.location-logo{grid-row:1/4;width:80px;height:80px}.location-logo img{width:100%;height:100%;object-fit:contain}.location-card>div:not(.location-logo){padding:14px 0;border-bottom:1px solid var(--line)}.location-card>div:last-child{border-bottom:0}.location-card small{display:block;color:var(--gold);font-size:10px;font-weight:900;letter-spacing:.16em}.location-card strong{display:block;color:var(--navy);font-size:17px}.church-mark{width:112px;height:112px;margin-bottom:22px}.church-mark img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 14px 24px rgba(0,0,0,.22))}
.speaker-photo img{image-rendering:auto;object-position:center 18%}.speaker-card:nth-child(5) .speaker-photo img{object-position:center center}
.verse-section{background:linear-gradient(100deg,rgba(11,35,63,.965),rgba(16,47,84,.86)),url('assets/arte-oficial.webp') center/cover fixed}
.footer-identity img{object-fit:contain;background:transparent}
@media(max-width:1050px){.location-shell{grid-template-columns:1fr}.hero-caption{width:calc(100% - 26px)}}
@media(max-width:760px){.brand-icon{width:44px;height:44px}.hero-caption{width:calc(100% - 18px);grid-template-columns:1fr;gap:7px;padding:16px 18px;border-radius:0 0 18px 18px}.hero-caption span{padding-left:0;border-left:0}.marquee-track{animation-duration:19s}.location-card{grid-template-columns:58px 1fr;padding:24px 20px}.location-logo{width:58px;height:58px}.location-actions .btn{width:100%}.church-mark{width:92px;height:92px}}
@media(prefers-reduced-motion:reduce){.marquee-track{animation:none!important;transform:none!important}}


/* ===== V5 · horarios de iglesia, contacto y refinamiento editorial ===== */
:root{
  --text-strong:#25221f;
  --text-body:#514a43;
  --glass-line:rgba(255,255,255,.16);
}
body{
  color:var(--text-strong);
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}
p{color:var(--text-body)}
.hero-lead,.about-copy p:last-child,.section-heading>p:last-child,.speaker-bio,.location-address{color:var(--text-body)}
.hero h1,.section-heading h2,.register-card h2,.location-copy h2,.church-intro h2{
  font-weight:650;
  text-wrap:balance;
}
.session-card h3,.timeline-item strong,.speaker-topic,.media-card strong{
  font-weight:600;
}
.speaker-bio{font-size:15px;line-height:1.72;color:#514a43}
.marquee-track{
  display:flex!important;
  width:max-content!important;
  animation-name:marqueeScroll!important;
  animation-duration:24s!important;
  animation-timing-function:linear!important;
  animation-iteration-count:infinite!important;
  animation-play-state:running;
  transform:translateZ(0);
}
.marquee:hover .marquee-track{animation-play-state:paused}
.hero-caption{margin-top:12px;border-radius:18px;width:100%;box-shadow:0 16px 40px rgba(11,35,63,.17)}
.hero-caption strong{font-weight:900}.hero-caption span{font-weight:600}
.art-frame{overflow:hidden}

.church-shell{align-items:start}
.visit-panel{
  grid-column:1/-1;
  margin-top:4px;
  padding:clamp(28px,4vw,46px);
  border:1px solid var(--glass-line);
  border-radius:30px;
  background:
    linear-gradient(135deg,rgba(255,255,255,.095),rgba(255,255,255,.035)),
    radial-gradient(circle at 90% 0%,rgba(223,189,121,.18),transparent 25rem);
  box-shadow:0 28px 70px rgba(0,0,0,.18);
  display:grid;
  grid-template-columns:1.12fr .88fr;
  gap:34px 54px;
  align-items:center;
}
.visit-heading h3{
  margin:0;
  color:#fff;
  font-family:var(--serif);
  font-size:clamp(31px,4vw,52px);
  line-height:1.08;
  font-weight:650;
  letter-spacing:-.025em;
  text-wrap:balance;
}
.visit-heading>p:last-child{max-width:720px;margin:18px 0 0;color:#c9d3de;font-size:17px}
.meeting-times{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.meeting-times-single{grid-template-columns:1fr;max-width:520px;width:100%;justify-self:center}
.meeting-card{
  min-height:190px;
  padding:26px 24px;
  border:1px solid rgba(223,189,121,.3);
  border-radius:23px;
  background:rgba(6,25,45,.48);
  display:flex;
  flex-direction:column;
  justify-content:center;
  transition:transform .25s ease,border-color .25s ease,background .25s ease;
}
.meeting-card:hover{transform:translateY(-4px);border-color:rgba(223,189,121,.7);background:rgba(6,25,45,.65)}
.meeting-day{color:var(--gold-soft);font-size:10px;font-weight:900;letter-spacing:.19em}
.meeting-card strong{display:block;margin:11px 0 3px;color:#fff;font-family:var(--serif);font-size:33px;line-height:1.05;font-weight:650}
.meeting-card p{margin:5px 0 0;color:#c7d2dc;font-size:15px;font-weight:650}
.visit-contact{
  grid-column:1/-1;
  padding-top:24px;
  border-top:1px solid rgba(255,255,255,.12);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  color:#c9d3de;
  font-weight:650;
}
.email-link{
  display:inline-flex;
  align-items:center;
  gap:11px;
  padding:13px 18px;
  border:1px solid rgba(223,189,121,.38);
  border-radius:999px;
  color:#fff;
  background:rgba(223,189,121,.1);
  text-decoration:none;
  font-weight:800;
  transition:.22s ease;
}
.email-link:hover{transform:translateY(-2px);border-color:var(--gold-soft);background:rgba(223,189,121,.17)}
.email-link b{color:var(--gold-soft)}
.media-card:focus-visible,.email-link:focus-visible,.btn:focus-visible,.nav a:focus-visible,.footer a:focus-visible,.back-to-top:focus-visible,.floating-top:focus-visible{
  outline:3px solid var(--gold-soft);
  outline-offset:4px;
}
.footer-media{align-content:start}
.footer-media a{word-break:break-word}

@media(max-width:1050px){
  .visit-panel{grid-template-columns:1fr}
}
@media(max-width:760px){
  .hero-caption{width:100%;margin-top:9px}
  .visit-panel{padding:28px 20px;border-radius:24px;gap:28px}
  .meeting-times{grid-template-columns:1fr}
  .meeting-card{min-height:155px}
  .visit-contact{align-items:flex-start;flex-direction:column}
  .email-link{width:100%;justify-content:center;font-size:14px}
}


/* CINTILLO V7 — motor de movimiento controlado por JavaScript.
   Se evita animation-play-state:hover y las reglas de movimiento reducido,
   que podían detenerlo específicamente en computadoras. */
.marquee{
  position:relative;
  width:100%;
  overflow:hidden;
  contain:paint;
  cursor:default;
}
.marquee-track,
.marquee:hover .marquee-track{
  display:flex!important;
  align-items:center;
  width:max-content!important;
  min-width:max-content;
  animation:none!important;
  animation-play-state:running!important;
  transform:translate3d(0,0,0);
  will-change:transform;
  backface-visibility:hidden;
  -webkit-font-smoothing:antialiased;
  text-rendering:geometricPrecision;
}
.marquee-group{
  display:block;
  flex:0 0 auto;
  padding-right:3rem;
  white-space:nowrap;
}


/* V8 — desktop-safe cintillo. Movement is controlled exclusively by app.js. */
.marquee {
  position: relative;
  width: 100%;
  overflow: hidden !important;
  cursor: default;
  isolation: isolate;
}
.marquee-track,
.marquee:hover .marquee-track {
  display: flex !important;
  align-items: center;
  flex-wrap: nowrap !important;
  width: max-content !important;
  min-width: max-content !important;
  animation: none !important;
  animation-play-state: running !important;
  transition: none !important;
  will-change: transform;
  transform: translate3d(0,0,0);
  backface-visibility: hidden;
  pointer-events: none;
}
.marquee-group {
  display: block !important;
  flex: 0 0 auto !important;
  padding-right: 3rem;
  white-space: nowrap !important;
}


/* V9 — el mismo dorado institucional, reforzado para mayor legibilidad */
.sessions .section-heading.light > p:last-child {
  color: #e7bd63 !important;
  opacity: 1 !important;
  font-weight: 650;
  text-shadow: 0 1px 2px rgba(0,0,0,.28);
  -webkit-font-smoothing: antialiased;
  text-rendering: geometricPrecision;
}
.sessions .section-heading.light .kicker {
  color: #e7bd63 !important;
  opacity: 1 !important;
  font-weight: 900;
  text-shadow: 0 1px 2px rgba(0,0,0,.25);
}

/* Enlaces a las iglesias de los expositores */
.speaker-church-link {
  width: fit-content;
  margin: 1rem 0 1.2rem;
  padding: .72rem 1rem;
  display: inline-flex;
  align-items: center;
  gap: .65rem;
  border: 1px solid rgba(185,138,55,.52);
  border-radius: 999px;
  color: var(--navy);
  background: rgba(255,255,255,.72);
  box-shadow: 0 8px 20px rgba(16,47,84,.08);
  text-decoration: none;
  font-size: .82rem;
  font-weight: 850;
  line-height: 1.2;
  transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}
.speaker-church-link:hover,
.speaker-church-link:focus-visible {
  transform: translateY(-2px);
  border-color: var(--gold);
  box-shadow: 0 12px 26px rgba(16,47,84,.13);
}
.speaker-church-link span {
  color: var(--gold);
  font-size: 1rem;
}
@media (max-width: 620px) {
  .speaker-church-link {
    width: 100%;
    justify-content: center;
    text-align: center;
  }
}


/* V13 — revisión final de calidad visual total */
html{scroll-padding-top:102px}
body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}
.section{padding-block:clamp(88px,10vw,118px)}
.section-heading{margin-bottom:clamp(34px,4.6vw,58px)}
.section-heading>p:last-child{line-height:1.62}

.btn,.speaker-church-link,.email-link{
  letter-spacing:.01em;
  min-height:52px;
}
.btn-primary{box-shadow:0 16px 38px rgba(16,47,84,.24)}
.btn-ghost{background:rgba(255,255,255,.72)}
.btn-ghost:hover{background:#fff;border-color:rgba(16,47,84,.5)}

.speaker-grid{gap:28px;align-items:stretch}
.speaker-card{
  min-height:100%;
  padding:32px 28px 28px;
  border-radius:28px;
  border:1px solid rgba(16,47,84,.10);
  box-shadow:0 16px 42px rgba(23,43,64,.08);
}
.speaker-card:hover{box-shadow:0 26px 60px rgba(23,43,64,.14)}
.speaker-photo{
  width:220px;
  height:220px;
  margin:0 auto 12px;
}
.speaker-photo:before{inset:-11px}
.speaker-photo img{
  object-position:center 18%;
  border-width:7px;
  box-shadow:0 16px 38px rgba(16,47,84,.18);
  background:#ece3d6;
}
img[src*="keith-jones"]{object-position:center 16%}
img[src*="marc-brashear"]{object-position:center 14%}
.speaker-body{
  width:100%;
  align-items:center;
  padding-top:16px;
}
.speaker-session{margin-bottom:2px}
.speaker-body h3{
  margin:14px 0 4px;
  font-size:clamp(29px,2.2vw,34px);
  line-height:1.06;
  text-align:center;
}
.speaker-church,
.speaker-place{
  width:100%;
  text-align:center;
}
.speaker-church{min-height:40px}
.speaker-place{margin-bottom:16px}
.speaker-bio{
  width:100%;
  min-height:208px;
  margin:0;
  font-size:15.6px;
  line-height:1.72;
  color:#43505d;
}
.speaker-church-link{
  margin:16px 0 14px;
  justify-content:center;
  align-self:center;
}
.speaker-topic{
  margin-top:auto;
  padding-top:16px;
  border-top:1px solid rgba(16,47,84,.10);
}
.speaker-topic span{margin-bottom:7px}

.timeline-item{padding:28px 8px}
.timeline-item strong{line-height:1.2}
.register-card,.location-card,.program-column,.meeting-card{
  box-shadow:0 18px 45px rgba(23,43,64,.08);
}

@media(max-width:1100px){
  .speaker-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .speaker-bio{min-height:230px}
}
@media(max-width:760px){
  .section{padding-block:76px}
  .speaker-grid{grid-template-columns:1fr;gap:24px}
  .speaker-card{padding:28px 20px 24px}
  .speaker-photo{width:204px;height:204px}
  .speaker-bio{min-height:auto;font-size:15.2px}
  .speaker-church-link{width:100%}
}


/* V14 – fine recentering for Marc and slightly lower framing for Keith */
img[src*="keith-jones"]{object-position:center 28% !important}
img[src*="marc-brashear"]{object-position:center 18% !important}


/* V15 – final portrait positioning */
img[src*="keith-jones"]{object-position:center 24% !important}
img[src*="marc-brashear"]{object-position:center 22% !important}


/* V16 — sitio web oficial y aviso legal */
.footer-legal{display:flex;flex-direction:column;gap:4px}
.footer-legal small{color:rgba(255,255,255,.62);font-size:12px;line-height:1.45}
@media(max-width:760px){
  .footer-bottom{align-items:flex-start;gap:18px}
  .footer-legal{max-width:100%}
}


/* V17 — nueva fotografía oficial de Keith Jones */
img[src*="keith-jones"]{object-position:center center !important}


/* V18 — bilingual Spanish / English language selector */
.language-switch{display:inline-flex;align-items:center;gap:3px;padding:4px;border:1px solid rgba(16,47,84,.18);border-radius:999px;background:rgba(255,255,255,.72);box-shadow:0 6px 18px rgba(16,47,84,.06)}
.lang-btn{min-width:38px;height:32px;padding:0 10px;border:0;border-radius:999px;background:transparent;color:#536170;font:800 12px/1 Inter,system-ui,sans-serif;letter-spacing:.08em;cursor:pointer;transition:.2s ease}
.lang-btn:hover{color:var(--navy);background:rgba(16,47,84,.07)}
.lang-btn.active{background:var(--navy);color:#fff;box-shadow:0 6px 14px rgba(16,47,84,.22)}
.lang-btn:focus-visible{outline:3px solid var(--gold-soft);outline-offset:3px}
@media(max-width:1180px){.nav{gap:18px}.nav a{font-size:12px}}
@media(max-width:900px){.language-switch{width:fit-content;margin:8px 0 4px}.lang-btn{min-width:52px;height:38px}}


/* V20 — Fase 2: invitaciones de expositores */
.invitations{background:linear-gradient(180deg,#f9f0e5,#fffaf4)}
.invitation-feature{display:grid;grid-template-columns:minmax(300px,.82fr) minmax(320px,1.18fr);gap:clamp(34px,6vw,76px);align-items:center;padding:clamp(24px,4vw,46px);border:1px solid var(--line);border-radius:30px;background:#fff;box-shadow:0 24px 65px rgba(23,43,64,.10)}
.invitation-feature + .invitation-feature{margin-top:32px}
.video-wrap{position:relative;width:min(100%,390px);margin:auto;aspect-ratio:9/16;overflow:hidden;border-radius:24px;background:#091d33;box-shadow:0 22px 55px rgba(16,47,84,.22)}
.video-wrap iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.invitation-copy h3{margin:12px 0 6px;color:var(--navy);font-family:Georgia,serif;font-size:clamp(38px,4vw,58px);line-height:1}
.invitation-copy>p:not(.speaker-session):not(.speaker-church):not(.speaker-place){max-width:620px;color:var(--muted);font-size:17px;line-height:1.7}
.invitation-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
@media(max-width:820px){.invitation-feature{grid-template-columns:1fr;padding:24px 18px}.video-wrap{width:min(100%,360px)}.invitation-copy{text-align:center}.invitation-copy>p{margin-left:auto;margin-right:auto}.invitation-actions{justify-content:center}}


/* V22: deep-link sections clear the sticky header */
#invitaciones{scroll-margin-top:110px}
@media(max-width:760px){#invitaciones{scroll-margin-top:92px}}

.countdown-title{font-family:Georgia,serif;font-size:28px;font-weight:700;color:var(--navy);margin-top:32px;margin-bottom:20px;line-height:1.2}.countdown-large{gap:35px;margin-top:0}.countdown-large strong{font-size:48px}.countdown-large span{font-size:11px}
@media(max-width:700px){.countdown-title{font-size:22px}.countdown-large{gap:18px}.countdown-large strong{font-size:36px}}

/* V33 — semáforo de cuenta regresiva: el número de DÍAS es el protagonista */
.countdown-large > div:first-child{min-width:128px}
.countdown-large #days{font-size:clamp(88px,9vw,112px);font-weight:700;line-height:.82;transition:color .35s ease,text-shadow .35s ease}
.countdown-large > div:first-child span{margin-top:10px;font-size:13px;font-weight:800}
.countdown-large #days.countdown-green{color:#16834a;text-shadow:0 8px 28px rgba(22,131,74,.16)}
.countdown-large #days.countdown-orange{color:#d97706;text-shadow:0 8px 28px rgba(217,119,6,.16)}
.countdown-large #days.countdown-red{color:#c62828;text-shadow:0 8px 28px rgba(198,40,40,.18)}
@media(max-width:700px){.countdown-large > div:first-child{min-width:96px}.countdown-large #days{font-size:76px}}

/* Final host-church invitation */
.invitation-host{position:relative;overflow:hidden;border:2px solid #d5aa55;background:linear-gradient(135deg,#fffdf8 0%,#fff 58%,#f5ead4 100%);box-shadow:0 30px 80px rgba(23,43,64,.16),0 0 0 6px rgba(213,170,85,.08)}
.invitation-host::after{content:"";position:absolute;right:-90px;bottom:-110px;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(213,170,85,.18),rgba(213,170,85,0) 68%);pointer-events:none}
.host-ribbon{position:absolute;top:0;left:0;right:0;z-index:2;padding:9px 18px;text-align:center;background:#17304a;color:#fff4dc;font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.invitation-host{padding-top:68px}
.invitation-host .speaker-session{color:#9b6f18;font-weight:800;letter-spacing:.08em}
.invitation-host .invitation-copy h3{font-size:clamp(44px,5vw,70px);color:#17304a}
.invitation-host .video-wrap{transform:scale(1.035);box-shadow:0 18px 45px rgba(23,43,64,.18)}
@media(max-width:820px){.invitation-host{padding-top:64px}.invitation-host .invitation-copy h3{font-size:clamp(40px,11vw,58px)}.invitation-host .video-wrap{transform:none}}
