@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@500;600;700&family=Cormorant+Garamond:ital,wght@0,500;0,600;1,600&family=Inter:wght@400;500;600;700&display=swap');
:root{--bg:#070806;--panel:#0d0e0c;--panel2:#12130f;--gold:#d7ad58;--gold2:#f0cf83;--red:#9d1717;--red2:#c32121;--ink:#24170d;--paper:#ead8ae;--paper2:#d8bb78;--line:#6f552a;--muted:#a9a18f;--white:#f7f0e2;--green:#3ea64a;--amber:#d99c2d}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#050605;color:var(--white);font-family:Inter,Arial,sans-serif;min-height:100vh}.ambient{position:fixed;inset:0;pointer-events:none;z-index:-1;background:radial-gradient(circle at 75% 10%,rgba(177,101,31,.12),transparent 28%),radial-gradient(circle at 20% 60%,rgba(122,20,20,.09),transparent 30%),linear-gradient(#080907,#050605)}
button,a,select,input{font:inherit}.site-header{height:74px;position:sticky;top:0;z-index:50;background:linear-gradient(90deg,rgba(3,4,3,.98),rgba(11,11,9,.94));border-bottom:1px solid #2b2418;display:flex;align-items:center;padding:0 2.2%;gap:28px;box-shadow:0 8px 28px #0009}.identity{display:flex;align-items:center;gap:10px;background:none;border:0;color:white;text-align:left;cursor:pointer;min-width:330px}.identity img{width:54px;height:54px;object-fit:contain}.identity b{font-family:Cinzel;font-size:21px;letter-spacing:2px}.identity small,.identity em{display:block;font-family:Cinzel;font-style:normal;color:var(--gold2);font-size:8px;letter-spacing:.8px;margin-top:2px}.site-header nav{display:flex;align-items:center;gap:24px;flex:1;justify-content:center}.site-header nav button,.site-header nav a{background:none;border:0;color:#efe7d9;text-decoration:none;font-family:Cinzel;font-size:10px;cursor:pointer;white-space:nowrap;padding:26px 0 20px;border-bottom:2px solid transparent}.site-header nav button.active,.site-header nav button:hover,.site-header nav a:hover{color:var(--gold2);border-bottom-color:#a71919}.header-actions{display:flex;gap:10px;align-items:center}.search-icon{background:none;border:0;color:#eee;font-size:24px}.private{background:linear-gradient(#9c1919,#700d0d);border:1px solid #c34b36;color:#f9e0b5;padding:12px 17px;border-radius:5px;font-family:Cinzel;font-size:10px;font-weight:700;box-shadow:inset 0 0 18px #0005}
.program-hero{height:285px;display:grid;grid-template-columns:28% 44% 28%;border-bottom:1px solid #3b2e1c;overflow:hidden;background:#0b0c0a}.hero-side{position:relative;overflow:hidden}.hero-side img{width:100%;height:100%;object-fit:cover;filter:brightness(.55) saturate(.85)}.hero-side:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,6,5,.2),rgba(5,6,5,.85))}.hero-right:after{background:linear-gradient(90deg,rgba(5,6,5,.85),rgba(5,6,5,.15))}.hero-right blockquote{position:absolute;right:9%;bottom:30px;z-index:2;text-align:right;font-family:"Cormorant Garamond";font-style:italic;color:#efd29b;font-size:19px;margin:0}.hero-center{position:relative;z-index:2;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;background:radial-gradient(circle at 50% 30%,#1f201a 0,#0a0b09 67%)}.hero-center:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#090a08cc,transparent 16%,transparent 84%,#090a08cc);pointer-events:none}.overline{font-family:Cinzel;color:var(--gold2);letter-spacing:6px;font-size:12px}.hero-center h1{font-family:Cinzel;font-size:60px;line-height:1;margin:8px 0;color:#f2d681;text-shadow:0 3px 12px #000}.hero-center h1 strong{color:#b92424;font-weight:700}.hero-center p{font-family:Cinzel;font-size:14px;letter-spacing:1px;margin:0;color:#efe9db}.ornament{display:flex;align-items:center;gap:14px;width:70%;margin:19px auto 12px}.ornament i{height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);flex:1}.ornament b{color:#b51f1f;font-size:27px}.hero-center small{font-family:Cinzel;letter-spacing:2px;font-size:9px;color:#ddd4c2}
.dashboard{padding:0 2.2% 28px;background:linear-gradient(180deg,#080907,#060705)}.stats{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;padding:12px 0}.stats article{min-height:65px;border:1px solid #6d542c;background:linear-gradient(145deg,#0f100d,#090a08);display:flex;align-items:center;gap:12px;padding:10px 17px;border-radius:6px;box-shadow:inset 0 0 28px #0006}.stats span{font-size:24px;color:var(--gold2)}.stats b{font-family:"Cormorant Garamond";font-size:27px;color:#f4d083}.stats small{font-family:Cinzel;font-size:8px;line-height:1.3;letter-spacing:.8px}.toolbar{display:grid;grid-template-columns:minmax(280px,1.5fr) 145px 150px 165px 75px auto;gap:9px;align-items:center;margin:3px 0 14px}.searchbox{display:flex;align-items:center;border:1px solid #6d542c;border-radius:5px;background:#0c0d0b;height:43px;padding:0 13px}.searchbox span{color:#f0c55f;font-size:19px;margin-right:8px}.searchbox input{width:100%;background:none;border:0;outline:0;color:#eee}.toolbar select{height:43px;background:#0c0d0b;color:#eee;border:1px solid #6d542c;border-radius:5px;padding:0 12px}.clear{height:43px;background:#9b1717;color:#f8e8ca;border:1px solid #c03535;border-radius:5px}.view-switch{display:flex;border:1px solid #6d542c;border-radius:5px;overflow:hidden;height:43px}.view-switch button{background:#0b0c0a;color:#d8d0c1;border:0;border-right:1px solid #443721;padding:0 14px;white-space:nowrap;font-family:Cinzel;font-size:9px}.view-switch button.active{background:linear-gradient(#e2bc65,#c79232);color:#1d1308}.workbench{display:grid;grid-template-columns:210px minmax(0,1fr) 435px;gap:12px;align-items:start}.parchment{background:linear-gradient(145deg,#f1dfb7,#d8ba77);color:var(--ink);border:1px solid #b88c47;box-shadow:0 16px 36px #0009,inset 0 0 22px #fff3;position:relative}.parchment:before{content:"";position:absolute;inset:5px;border:1px solid rgba(99,63,22,.18);pointer-events:none}.months-panel{padding:18px 14px;position:sticky;top:86px}.months-panel h2{font-family:Cinzel;font-size:18px;margin:0 0 13px;padding-bottom:11px;border-bottom:1px solid #9c7844}.month-btn{width:100%;display:flex;justify-content:space-between;align-items:center;border:0;border-bottom:1px solid rgba(94,65,30,.25);background:transparent;padding:7px 6px;color:#2e2013;font-family:Cinzel;font-size:10px;cursor:pointer}.month-btn b{width:20px;height:20px;border-radius:50%;display:grid;place-items:center;background:#6f6049;color:#fff;font-size:9px}.month-btn.active{background:#981a1a;color:#fff;border-radius:20px;padding-left:12px;padding-right:12px}.archive-link{margin-top:15px;width:100%;display:flex;align-items:center;gap:8px;text-align:left;padding:12px;border:1px solid #a17239;background:#e6cc91;color:#7d1818;font-family:Cinzel;font-weight:700}.archive-link span{flex:1}.archive-link small{display:block;color:#4b3924;font-family:Inter;font-size:9px;font-weight:500;margin-top:3px}.results-area{min-width:0}.event-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.event-card{background:#0b0c0a;border:1px solid #6d542c;border-radius:6px;overflow:hidden;cursor:pointer;transition:.3s;box-shadow:0 12px 28px #0007;position:relative}.event-card:hover,.event-card.selected{transform:translateY(-2px);border-color:#d8aa4f;box-shadow:0 0 0 1px #6f542b,0 15px 34px #000}.event-card>img{display:block;width:100%;height:155px;object-fit:cover;filter:saturate(.95) contrast(1.03)}.card-body{padding:10px 11px 12px}.status{display:inline-flex;align-items:center;gap:5px;background:#201f19;border:1px solid #5e5a49;border-radius:16px;padding:4px 8px;font-size:8px;text-transform:uppercase;letter-spacing:.5px;color:#efe7d6}.status[data-tone="green"]{border-color:#4b8d4d;background:#143117}.status[data-tone="amber"]{border-color:#ad7c27;background:#35260d}.status[data-tone="red"]{border-color:#913b37;background:#351010}.card-body h3{font-family:"Cormorant Garamond";font-weight:600;font-size:20px;line-height:1;margin:7px 0 6px}.meta{display:flex;flex-direction:column;gap:3px;color:#aaa28f;font-size:10px}.card-body p{font-family:"Cormorant Garamond";font-size:14px;line-height:1.25;margin:7px 0;color:#e4ddd0}.readmore{position:absolute;right:11px;bottom:10px;width:28px;height:28px;border:1px solid #c89a47;border-radius:50%;display:grid;place-items:center;color:#efc86f;font-size:16px}.featured-card{padding:9px;position:sticky;top:86px;min-height:565px}.featured-card>img{width:100%;height:190px;object-fit:cover;border-radius:5px}.featured-inner{padding:11px 10px 8px}.featured-inner h3{font-family:"Cormorant Garamond";font-size:27px;line-height:1;margin:10px 0;border-bottom:1px solid #9f7441;padding-bottom:10px}.featured-meta{display:grid;gap:9px;font-family:"Cormorant Garamond";font-size:15px}.featured-summary{font-family:"Cormorant Garamond";font-size:16px;line-height:1.25;border-top:1px solid #b9925d;padding-top:10px}.featured-actions{display:grid;grid-template-columns:repeat(2,1fr);gap:6px}.featured-actions button,.featured-actions a{border:1px solid #9a6e31;background:#e8c875;color:#24170d;padding:9px 7px;text-decoration:none;text-align:center;font-family:Cinzel;font-size:8px;font-weight:700}.featured-actions .wide{grid-column:1/-1;background:#941a16;color:#fff;border-color:#b64b34}.calendar-view,.timeline-view{min-height:500px}.calendar-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.month-card{border:1px solid #6d542c;background:#0d0e0c;padding:14px}.month-card h3{font-family:Cinzel;color:#eac97b;margin-top:0}.calendar-event{padding:9px 0;border-top:1px solid #292820;cursor:pointer}.calendar-event b{font-family:"Cormorant Garamond"}.calendar-event span{display:block;color:#aaa;font-size:10px;margin-top:4px}.timeline-view #timeline{border-left:1px solid #7b5f32;padding-left:26px}.tl-item{position:relative;margin-bottom:10px}.tl-dot{position:absolute;left:-33px;top:20px;width:13px;height:13px;background:#9d1717;border:3px solid #d9bd7d;border-radius:50%}.tl-panel{display:grid;grid-template-columns:160px 1fr;gap:12px;border:1px solid #6d542c;background:#0d0e0c;padding:8px;cursor:pointer}.tl-panel img{width:100%;height:100px;object-fit:cover}.tl-panel h3{font-family:"Cormorant Garamond";margin:5px 0;font-size:19px}.tl-panel p{font-size:11px;color:#cfc8ba}.archive-section{padding:60px 4%;display:grid;grid-template-columns:.65fr 1.35fr;gap:30px;background:linear-gradient(#0b0c0a,#11110d);border-top:1px solid #44351f}.archive-copy span,.document-section span{font-family:Cinzel;letter-spacing:4px;color:#d4ab5e;font-size:9px}.archive-copy h2,.document-section h2{font-family:Cinzel;font-size:36px;margin:10px 0}.archive-copy p{color:#c8beab;line-height:1.6}.archive-cards .event-card{max-width:680px}.document-section{padding:60px 4%;background:#dfc99a;color:#24170d;display:grid;grid-template-columns:.6fr 1.4fr;gap:28px;align-items:center}.document-section iframe{width:100%;height:520px;border:0;background:white;box-shadow:0 15px 40px #0006}.doc-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:20px}.doc-actions a{background:#8e1818;color:#fff;text-decoration:none;padding:12px 16px;font-family:Cinzel;font-size:9px;border:1px solid #7f321e}.doc-actions a+ a{background:#f0d181;color:#24170d;border-color:#9d7334}footer{min-height:70px;padding:14px 2.2%;display:flex;align-items:center;gap:30px;border-top:1px solid #604722;background:#070806}footer>div{display:flex;align-items:center;gap:10px}footer img{width:35px}footer b{font-family:Cinzel}footer small{display:block;color:#b8a27d;font-size:8px}footer p{font-family:"Cormorant Garamond";font-style:italic;color:#8f8676;font-size:13px}footer nav{margin-left:auto;display:flex;gap:18px}footer nav button{background:none;border:0;color:#cfc5b4;font-family:Cinzel;font-size:8px}.backtop{width:34px;height:34px;border-radius:50%;background:none;border:1px solid #b88a3f;color:#e2bb66;font-size:20px}.hidden{display:none!important}
.event-dialog,.admin-dialog{width:min(1000px,94vw);max-height:90vh;padding:0;border:1px solid #8d6a34;background:#0d0e0c;color:#eee;border-radius:7px}.event-dialog::backdrop,.admin-dialog::backdrop{background:#000d;backdrop-filter:blur(7px)}.dialog-close{position:sticky;float:right;top:10px;right:10px;z-index:4;width:36px;height:36px;border-radius:50%;background:#130d08;border:1px solid #9b7438;color:white;font-size:22px}.dialog-hero img{width:100%;max-height:370px;object-fit:cover}.dialog-content{padding:25px}.dialog-content h2{font-family:Cinzel;font-size:30px}.dialog-meta{display:flex;gap:12px;flex-wrap:wrap;color:#ddbc73;font-size:12px}.detail-text{white-space:pre-wrap;line-height:1.55;margin-top:20px;color:#ded7ca}.dialog-gallery img{width:100%;margin-top:18px}.sharebar{display:flex;gap:7px;flex-wrap:wrap;margin-top:20px}.sharebar button,.sharebar a{padding:10px 14px;background:#d9b65d;color:#1c1308;border:1px solid #9c7334;text-decoration:none}.admin-dialog{padding:28px}.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.admin-grid input,.admin-grid textarea{padding:11px;background:#171813;color:white;border:1px solid #5a4a2d}.admin-grid textarea{min-height:130px}.full{grid-column:1/-1}.admin-filebox{border:1px solid #554b35;padding:11px}.admin-preview{display:flex;gap:10px;margin-top:10px;align-items:center}.admin-preview img{width:100px;height:70px;object-fit:cover}.admin-actions{display:flex;gap:9px;margin:18px 0}.admin-actions button,.admin-row button{padding:8px 11px}.admin-row{display:flex;justify-content:space-between;border-top:1px solid #333;padding:11px 0}.danger{background:#751717;color:white}.admin-note{color:#c9bfae;line-height:1.5}
@media(max-width:1320px){.site-header nav{gap:13px}.workbench{grid-template-columns:185px 1fr 360px}.toolbar{grid-template-columns:1.5fr 130px 140px 150px 70px}.view-switch{grid-column:1/-1;width:max-content}.stats article{padding:9px}.stats small{font-size:7px}}
@media(max-width:1040px){.identity{min-width:240px}.identity em{display:none}.site-header nav{display:none}.header-actions{margin-left:auto}.program-hero{grid-template-columns:25% 50% 25%}.hero-center h1{font-size:46px}.stats{grid-template-columns:repeat(3,1fr)}.workbench{grid-template-columns:170px 1fr}.featured-card{grid-column:1/-1;position:static;display:grid;grid-template-columns:320px 1fr;min-height:auto}.featured-card>img{height:100%}.toolbar{grid-template-columns:1fr 1fr 1fr}.searchbox{grid-column:1/-1}.clear{width:100%}.event-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.site-header{height:64px;padding:0 12px}.identity{min-width:auto}.identity img{width:42px;height:42px}.identity small,.identity em{display:none}.identity b{font-size:16px}.private{font-size:8px;padding:9px}.search-icon{display:none}.program-hero{height:330px;display:block;position:relative}.hero-side{position:absolute;inset:0}.hero-left{display:none}.hero-right:after{background:#0009}.hero-right blockquote{display:none}.hero-center{position:absolute;inset:0;background:linear-gradient(#0007,#000b)}.hero-center h1{font-size:43px}.hero-center p{font-size:11px;padding:0 18px}.overline{font-size:9px}.stats{grid-template-columns:repeat(2,1fr);gap:7px}.stats article{min-height:58px}.toolbar{grid-template-columns:1fr 1fr}.searchbox,.view-switch{grid-column:1/-1}.toolbar select{min-width:0}.categoryFilter{display:none}.workbench{grid-template-columns:1fr}.months-panel{position:static}.months-panel #monthNav{display:grid;grid-template-columns:repeat(3,1fr);gap:4px}.month-btn{font-size:8px}.event-grid{grid-template-columns:1fr}.featured-card{display:block}.featured-card>img{height:190px}.calendar-grid{grid-template-columns:1fr}.tl-panel{grid-template-columns:100px 1fr}.archive-section,.document-section{grid-template-columns:1fr}.document-section iframe{height:430px}footer{flex-wrap:wrap}footer p{display:none}footer nav{margin-left:0}.admin-grid{grid-template-columns:1fr}.full{grid-column:auto}}


/* V5.1 · CAPA CINEMATOGRÁFICA ACATELME */
.site-header{overflow:hidden;isolation:isolate;border-top:3px solid #8d1414}
.site-header::before{content:"";position:absolute;inset:0;z-index:-2;background:radial-gradient(circle at 17% 0%,rgba(239,190,88,.11),transparent 25%),linear-gradient(100deg,transparent 0 35%,rgba(255,229,163,.07) 49%,transparent 63%);animation:headerBreath 7s ease-in-out infinite alternate}
.site-header::after{content:"";position:absolute;left:-35%;top:0;width:26%;height:100%;z-index:-1;background:linear-gradient(100deg,transparent,rgba(255,220,142,.20),rgba(255,255,255,.07),transparent);filter:blur(5px);transform:skewX(-18deg);animation:headerSweep 8s ease-in-out infinite 1.3s;pointer-events:none}
.identity img{animation:crestGlow 4.6s ease-in-out infinite}
.identity b{background:linear-gradient(90deg,#fff8e8 0%,#e8c36f 45%,#fff8e8 65%,#d7a53b 100%);background-size:220% auto;-webkit-background-clip:text;background-clip:text;color:transparent;animation:titleShimmer 7s linear infinite}
.program-hero{position:relative;isolation:isolate}
.program-hero::after{content:"";position:absolute;inset:0;z-index:5;pointer-events:none;background:linear-gradient(110deg,transparent 5%,rgba(255,216,132,.07) 42%,transparent 61%);transform:translateX(-100%);animation:heroLight 10s ease-in-out infinite 1.5s}
.hero-side img{transform:scale(1.035);animation:heroKenBurns 16s ease-in-out infinite alternate}
.hero-right img{animation-delay:-5s}
.hero-center{overflow:hidden;box-shadow:inset 0 0 75px rgba(0,0,0,.75)}
.hero-center::after{content:"";position:absolute;inset:-30%;background:radial-gradient(circle,rgba(218,165,56,.08) 0,transparent 45%);animation:haloFloat 7s ease-in-out infinite alternate;pointer-events:none}
.hero-center>*{position:relative;z-index:2}
.hero-center h1{background:linear-gradient(105deg,#d9a93f,#fff0ad 35%,#d39a2c 55%,#fff3ba 72%,#c98c24);background-size:220% auto;-webkit-background-clip:text;background-clip:text;color:transparent;animation:titleShimmer 8s linear infinite,heroRise .9s cubic-bezier(.2,.8,.2,1) both;filter:drop-shadow(0 4px 11px #000)}
.hero-center h1 strong{background:linear-gradient(100deg,#8e0e0e,#e34831,#9e1111,#ff6954,#850d0d);background-size:200% auto;-webkit-background-clip:text;background-clip:text;color:transparent}
.overline,.hero-center p,.hero-center small,.ornament{animation:heroRise 1s cubic-bezier(.2,.8,.2,1) both}
.hero-center p{animation-delay:.12s}.ornament{animation-delay:.22s}.hero-center small{animation-delay:.30s}
.ornament b{filter:drop-shadow(0 0 7px rgba(208,36,30,.45));animation:crossPulse 3.2s ease-in-out infinite}
.stats article,.event-card,.featured-card,.months-panel{transition:transform .35s ease,border-color .35s ease,box-shadow .35s ease}
.stats article:hover,.event-card:hover{transform:translateY(-4px);border-color:#b89042;box-shadow:0 14px 35px rgba(0,0,0,.55),0 0 22px rgba(216,170,71,.08)}
.admin-status.warn{background:#2d2413;border:1px solid #9b7438;color:#f0d69b;padding:11px;margin:10px 0}
.admin-status.warn small{display:block;color:#cbbd9f;margin-top:6px;word-break:break-word}
@keyframes headerBreath{from{opacity:.55}to{opacity:1}}
@keyframes headerSweep{0%,55%{left:-35%;opacity:0}65%{opacity:1}92%,100%{left:125%;opacity:0}}
@keyframes crestGlow{0%,100%{filter:drop-shadow(0 0 2px rgba(240,197,93,.12))}50%{filter:drop-shadow(0 0 12px rgba(240,197,93,.48))}}
@keyframes titleShimmer{to{background-position:220% center}}
@keyframes heroLight{0%,55%{transform:translateX(-100%);opacity:0}68%{opacity:1}95%,100%{transform:translateX(100%);opacity:0}}
@keyframes heroKenBurns{0%{transform:scale(1.035) translate3d(0,0,0)}100%{transform:scale(1.095) translate3d(-1.2%,.5%,0)}}
@keyframes haloFloat{from{transform:translate3d(-4%,-2%,0) scale(.92)}to{transform:translate3d(4%,2%,0) scale(1.08)}}
@keyframes heroRise{from{opacity:0;transform:translateY(18px);filter:blur(3px)}to{opacity:1;transform:none;filter:none}}
@keyframes crossPulse{0%,100%{transform:scale(1)}50%{transform:scale(1.08)}}
@media (prefers-reduced-motion:reduce){.site-header::after,.identity img,.identity b,.program-hero::after,.hero-side img,.hero-center::after,.hero-center h1,.overline,.hero-center p,.hero-center small,.ornament,.ornament b{animation:none!important}}

/* V5.2 · ESCUDO OFICIAL ACATELME */
.identity img{
  width:62px!important;height:62px!important;object-fit:contain!important;
  border-radius:7px;
  box-shadow:0 0 0 1px rgba(225,184,91,.32),0 0 22px rgba(218,167,61,.20);
  background:#eee4d1;
  animation:acatelmeOfficialGlow 4.8s ease-in-out infinite!important;
}
.identity:hover img{transform:scale(1.035);box-shadow:0 0 0 1px rgba(241,204,116,.55),0 0 30px rgba(218,167,61,.34)}
@keyframes acatelmeOfficialGlow{
  0%,100%{filter:brightness(.96) drop-shadow(0 0 2px rgba(232,190,93,.18))}
  50%{filter:brightness(1.07) drop-shadow(0 0 13px rgba(232,190,93,.55))}
}
@media(max-width:720px){
  .identity img{width:52px!important;height:52px!important}
}


/* =========================================================
   V5.3 · PROFUNDIDAD / METALIZADO / CINEMÁTICA REFORZADA
   ========================================================= */
body{
  background:
    radial-gradient(circle at 50% -10%,rgba(181,126,36,.16),transparent 34%),
    radial-gradient(circle at 12% 48%,rgba(134,18,18,.10),transparent 27%),
    linear-gradient(180deg,#070806 0%,#030403 100%);
}
.ambient{
  background:
    radial-gradient(circle at 74% 11%,rgba(232,177,64,.16),transparent 25%),
    radial-gradient(circle at 24% 52%,rgba(134,21,21,.12),transparent 29%),
    radial-gradient(circle at 50% 95%,rgba(240,193,91,.06),transparent 24%),
    linear-gradient(#080907,#030403)!important;
  animation:ambientBreath 9s ease-in-out infinite alternate;
}
.site-header{
  background:
    linear-gradient(180deg,rgba(17,17,14,.98),rgba(2,3,2,.98))!important;
  border-bottom:1px solid rgba(229,184,80,.34)!important;
  box-shadow:
    0 12px 34px rgba(0,0,0,.86),
    inset 0 -1px 0 rgba(255,217,128,.10),
    inset 0 1px 0 rgba(255,255,255,.025)!important;
}
.identity img{
  border:1px solid rgba(232,194,105,.55)!important;
  box-shadow:
    0 0 0 3px rgba(0,0,0,.52),
    0 0 19px rgba(229,178,72,.30),
    inset 0 0 16px rgba(255,244,205,.13)!important;
}
.private{
  position:relative;overflow:hidden;
  background:linear-gradient(180deg,#b62320 0%,#7b0e0e 48%,#4f0808 100%)!important;
  border-color:#dd6c4b!important;
  box-shadow:
    inset 0 1px 0 rgba(255,226,184,.26),
    inset 0 -8px 18px rgba(0,0,0,.28),
    0 5px 18px rgba(0,0,0,.5)!important;
}
.private::after,.clear::after{
  content:"";position:absolute;top:-35%;left:-45%;width:35%;height:170%;
  background:linear-gradient(90deg,transparent,rgba(255,235,183,.30),transparent);
  transform:skewX(-20deg);animation:buttonSweep 5.8s ease-in-out infinite;
}
.program-hero{
  box-shadow:
    0 20px 48px rgba(0,0,0,.65),
    inset 0 -1px 0 rgba(232,187,91,.16);
}
.hero-side::before{
  content:"";position:absolute;inset:0;z-index:2;pointer-events:none;
  box-shadow:inset 0 0 65px rgba(0,0,0,.72);
}
.hero-side img{
  filter:brightness(.60) saturate(.96) contrast(1.08)!important;
  will-change:transform,filter;
}
.hero-center{
  background:
    radial-gradient(circle at 50% 24%,rgba(73,65,43,.52) 0%,rgba(17,18,14,.93) 34%,#070806 72%)!important;
  box-shadow:
    inset 0 0 90px rgba(0,0,0,.88),
    inset 0 1px 0 rgba(245,204,111,.07)!important;
}
.hero-center h1{
  letter-spacing:1px;
  text-shadow:
    0 2px 0 rgba(80,45,5,.65),
    0 6px 14px rgba(0,0,0,.92),
    0 0 24px rgba(230,185,76,.12)!important;
}
.hero-center h1 strong{
  filter:drop-shadow(0 2px 0 #4b0505) drop-shadow(0 0 12px rgba(196,35,28,.22));
}
.ornament i{
  height:2px!important;
  box-shadow:0 0 8px rgba(224,179,72,.18);
}
.dashboard{
  background:
    linear-gradient(180deg,rgba(10,11,9,.98),rgba(3,4,3,.99))!important;
}
.stats article{
  position:relative;overflow:hidden;
  background:
    linear-gradient(145deg,#171812 0%,#080906 48%,#11120d 100%)!important;
  border-color:rgba(205,158,67,.68)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,230,171,.08),
    inset 0 -18px 28px rgba(0,0,0,.32),
    0 9px 26px rgba(0,0,0,.48)!important;
}
.stats article::after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(110deg,transparent 20%,rgba(255,224,151,.055) 44%,transparent 68%);
  transform:translateX(-110%);
  animation:panelShimmer 9s ease-in-out infinite;
}
.stats span,.stats b{
  text-shadow:0 2px 7px #000,0 0 10px rgba(230,180,68,.14);
}
.toolbar select,.searchbox,.view-switch{
  box-shadow:
    inset 0 1px 0 rgba(255,225,157,.07),
    inset 0 -12px 20px rgba(0,0,0,.24),
    0 5px 15px rgba(0,0,0,.28);
}
.parchment{
  background:
    radial-gradient(circle at 20% 10%,rgba(255,250,221,.48),transparent 31%),
    linear-gradient(145deg,#f0ddb0 0%,#ddc07f 52%,#cda967 100%)!important;
  box-shadow:
    0 19px 42px rgba(0,0,0,.74),
    inset 0 1px 0 rgba(255,255,255,.48),
    inset 0 -20px 40px rgba(91,55,18,.08)!important;
}
.event-card{
  border-color:rgba(185,139,60,.72)!important;
  background:
    linear-gradient(150deg,#10120e 0%,#060705 56%,#0d0e0b 100%)!important;
  box-shadow:
    0 15px 34px rgba(0,0,0,.68),
    inset 0 1px 0 rgba(255,230,177,.06)!important;
}
.event-card::after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(125deg,transparent 35%,rgba(238,195,99,.055) 49%,transparent 63%);
  transform:translateX(-120%);
  transition:transform .8s ease;
}
.event-card:hover::after{transform:translateX(120%)}
.event-card:hover,.event-card.selected{
  transform:translateY(-5px) scale(1.008)!important;
  box-shadow:
    0 20px 44px rgba(0,0,0,.76),
    0 0 0 1px rgba(225,178,78,.25),
    0 0 24px rgba(211,161,62,.10)!important;
}
.event-card>img{
  filter:saturate(1.04) contrast(1.08) brightness(.92)!important;
  transition:transform 5s ease,filter .5s ease;
}
.event-card:hover>img{transform:scale(1.055);filter:saturate(1.10) contrast(1.10) brightness(1)!important}
.featured-card{
  border-color:#bd934f!important;
  box-shadow:
    0 22px 48px rgba(0,0,0,.70),
    0 0 0 1px rgba(255,230,170,.05),
    inset 0 0 24px rgba(255,244,211,.10)!important;
}
.featured-card>img{
  box-shadow:0 8px 20px rgba(75,44,12,.26);
  filter:saturate(1.05) contrast(1.06);
}
.featured-actions button,.featured-actions a{
  background:linear-gradient(180deg,#f0d98f 0%,#d5ae55 49%,#b98632 100%)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.55),
    inset 0 -8px 12px rgba(107,60,9,.15),
    0 4px 10px rgba(80,47,12,.20);
  transition:transform .22s ease,filter .22s ease,box-shadow .22s ease;
}
.featured-actions button:hover,.featured-actions a:hover{
  transform:translateY(-2px);
  filter:brightness(1.08);
  box-shadow:0 7px 15px rgba(78,42,8,.27),0 0 12px rgba(237,194,98,.18);
}
.months-panel{box-shadow:0 18px 42px rgba(0,0,0,.70),inset 0 0 25px rgba(255,250,215,.10)!important}
.status{box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 3px 8px rgba(0,0,0,.30)}
.readmore{box-shadow:0 0 14px rgba(239,194,85,.10),inset 0 0 8px rgba(239,194,85,.06)}
@keyframes ambientBreath{from{filter:brightness(.92)}to{filter:brightness(1.08)}}
@keyframes buttonSweep{0%,58%{left:-45%;opacity:0}66%{opacity:1}90%,100%{left:130%;opacity:0}}
@keyframes panelShimmer{0%,65%{transform:translateX(-110%);opacity:0}73%{opacity:1}95%,100%{transform:translateX(115%);opacity:0}}


/* =========================================================
   V5.4 · PORTADA CINEMATOGRÁFICA REAL
   Animación aplicada al TITULAR, ORNAMENTOS, LUZ y PROFUNDIDAD,
   no sólo a las imágenes.
   ========================================================= */

.program-hero{
  perspective:1200px;
  overflow:hidden;
}

.hero-center{
  position:relative;
  transform-style:preserve-3d;
  animation:heroBreath3D 8s ease-in-out infinite alternate;
}

.cinema-vignette{
  position:absolute;inset:0;z-index:0;pointer-events:none;
  background:
    radial-gradient(circle at 50% 45%,transparent 0 30%,rgba(0,0,0,.18) 54%,rgba(0,0,0,.62) 100%);
  mix-blend-mode:multiply;
}

.cinema-rays{
  position:absolute;inset:-35% -25%;z-index:1;pointer-events:none;
  background:
    conic-gradient(from 190deg at 50% 30%,
      transparent 0deg,
      rgba(246,211,129,.00) 18deg,
      rgba(246,211,129,.11) 25deg,
      rgba(246,211,129,.00) 34deg,
      transparent 52deg,
      transparent 115deg,
      rgba(246,211,129,.07) 132deg,
      transparent 149deg,
      transparent 360deg);
  filter:blur(10px);
  opacity:.42;
  transform-origin:50% 30%;
  animation:raysDrift 14s ease-in-out infinite alternate;
}

.cinema-particles{
  position:absolute;inset:0;z-index:3;pointer-events:none;overflow:hidden;
}
.cinema-particles i{
  position:absolute;
  width:3px;height:3px;border-radius:50%;
  background:radial-gradient(circle,#fff5c7 0%,#e8b955 55%,transparent 75%);
  box-shadow:0 0 10px rgba(242,196,96,.55);
  opacity:0;
  animation:dustFloat 9s linear infinite;
}
.cinema-particles i:nth-child(1){left:11%;top:86%;animation-delay:0s}
.cinema-particles i:nth-child(2){left:18%;top:74%;animation-delay:1.4s}
.cinema-particles i:nth-child(3){left:29%;top:91%;animation-delay:2.8s}
.cinema-particles i:nth-child(4){left:38%;top:79%;animation-delay:.8s}
.cinema-particles i:nth-child(5){left:47%;top:88%;animation-delay:4.1s}
.cinema-particles i:nth-child(6){left:56%;top:76%;animation-delay:2.1s}
.cinema-particles i:nth-child(7){left:65%;top:90%;animation-delay:5.0s}
.cinema-particles i:nth-child(8){left:73%;top:82%;animation-delay:3.2s}
.cinema-particles i:nth-child(9){left:82%;top:89%;animation-delay:1.7s}
.cinema-particles i:nth-child(10){left:88%;top:72%;animation-delay:5.9s}
.cinema-particles i:nth-child(11){left:52%;top:96%;animation-delay:6.6s}
.cinema-particles i:nth-child(12){left:24%;top:83%;animation-delay:4.8s}

.cinema-sparks{
  position:absolute;inset:0;z-index:2;pointer-events:none;
  background:
    radial-gradient(circle at 25% 70%,rgba(246,186,64,.10),transparent 2%),
    radial-gradient(circle at 74% 36%,rgba(246,186,64,.08),transparent 1.6%),
    radial-gradient(circle at 59% 77%,rgba(246,186,64,.06),transparent 1.4%);
  animation:sparkPulse 5.6s ease-in-out infinite alternate;
}

.hero-center .overline{
  letter-spacing:.50em!important;
  text-shadow:0 0 12px rgba(228,185,85,.14);
  animation:overlineReveal 1.6s cubic-bezier(.2,.8,.2,1) both, overlineGlow 4.8s ease-in-out 1.7s infinite;
}

.cinematic-title{
  position:relative;
  isolation:isolate;
  animation:titleEntrance 1.45s cubic-bezier(.16,.84,.29,1.02) both, titleFloat 7s ease-in-out 1.6s infinite alternate!important;
}
.cinematic-title span,
.cinematic-title strong{
  display:inline-block;
  transform-style:preserve-3d;
}
.cinematic-title span{
  animation:wordGlint 7.5s linear infinite;
}
.cinematic-title strong{
  animation:redPulse 4.6s ease-in-out infinite;
}
.cinematic-title::before{
  content:"";
  position:absolute;
  left:-7%;right:-7%;top:47%;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(235,187,78,.15),rgba(255,233,166,.42),rgba(235,187,78,.15),transparent);
  filter:blur(.2px);
  transform:scaleX(.2);
  opacity:0;
  z-index:-1;
  animation:titleLine 1.4s ease-out .75s forwards;
}
.cinematic-title::after{
  content:"";
  position:absolute;
  top:-8%;bottom:-8%;left:-18%;
  width:14%;
  background:linear-gradient(100deg,transparent,rgba(255,246,207,.34),transparent);
  filter:blur(3px);
  transform:skewX(-18deg);
  animation:titleSweep 7.8s ease-in-out 2.2s infinite;
}

.hero-center p{
  animation:subtitleReveal 1.2s ease-out .38s both, subtitleBreath 6s ease-in-out 1.8s infinite alternate!important;
}
.hero-center small{
  animation:mottoReveal 1.3s ease-out .8s both, mottoGlow 5.2s ease-in-out 2s infinite alternate!important;
}
.ornament{
  animation:ornamentReveal 1.35s ease-out .55s both!important;
}
.ornament i{
  transform-origin:center;
  animation:lineExpand 1.8s ease-out .8s both, lineGlow 4.5s ease-in-out 2s infinite alternate!important;
}
.ornament b{
  animation:crossReveal 1.4s cubic-bezier(.2,.8,.2,1) .68s both, crossHeartbeat 3.2s ease-in-out 2s infinite!important;
}

.hero-side{
  overflow:hidden;
}
.hero-side::after{
  content:"";position:absolute;inset:0;z-index:4;pointer-events:none;
  background:linear-gradient(110deg,transparent 15%,rgba(255,228,166,.05) 43%,transparent 65%);
  transform:translateX(-120%);
  animation:sideLightPass 11s ease-in-out infinite;
}

.site-header{
  backdrop-filter:blur(6px);
}
.site-header nav a{
  position:relative;
  transition:color .3s ease,text-shadow .3s ease,transform .3s ease;
}
.site-header nav a:hover{
  color:#f1cd75!important;
  text-shadow:0 0 11px rgba(238,194,89,.28);
  transform:translateY(-1px);
}
.site-header nav a::after{
  content:"";position:absolute;left:50%;right:50%;bottom:-12px;height:1px;
  background:linear-gradient(90deg,transparent,#d4a33b,transparent);
  transition:left .35s ease,right .35s ease;
}
.site-header nav a:hover::after{left:5%;right:5%}

@keyframes heroBreath3D{
  from{transform:translateZ(0) scale(1)}
  to{transform:translateZ(8px) scale(1.006)}
}
@keyframes raysDrift{
  from{transform:rotate(-2deg) scale(1.02)}
  to{transform:rotate(3deg) scale(1.08)}
}
@keyframes dustFloat{
  0%{transform:translate3d(0,35px,0) scale(.55);opacity:0}
  12%{opacity:.55}
  70%{opacity:.28}
  100%{transform:translate3d(24px,-150px,0) scale(1.35);opacity:0}
}
@keyframes sparkPulse{
  from{opacity:.35;filter:blur(0)}
  to{opacity:.9;filter:blur(1px)}
}
@keyframes overlineReveal{
  from{opacity:0;letter-spacing:.72em;transform:translateY(-10px);filter:blur(4px)}
  to{opacity:1;letter-spacing:.50em;transform:none;filter:none}
}
@keyframes overlineGlow{
  0%,100%{text-shadow:0 0 7px rgba(231,186,84,.10)}
  50%{text-shadow:0 0 18px rgba(231,186,84,.26)}
}
@keyframes titleEntrance{
  0%{opacity:0;transform:translateY(24px) scale(.985);filter:blur(5px)}
  70%{opacity:1;transform:translateY(-2px) scale(1.004);filter:blur(0)}
  100%{transform:none}
}
@keyframes titleFloat{
  from{transform:translateY(0) rotateX(0)}
  to{transform:translateY(-4px) rotateX(.8deg)}
}
@keyframes wordGlint{
  0%,100%{filter:brightness(.94) saturate(.95)}
  45%{filter:brightness(1.06) saturate(1.05)}
  55%{filter:brightness(1.16) saturate(1.08)}
  65%{filter:brightness(1.02)}
}
@keyframes redPulse{
  0%,100%{filter:brightness(.90) drop-shadow(0 0 6px rgba(188,26,22,.18))}
  50%{filter:brightness(1.14) drop-shadow(0 0 18px rgba(222,49,39,.33))}
}
@keyframes titleLine{
  to{transform:scaleX(1);opacity:.8}
}
@keyframes titleSweep{
  0%,60%{left:-18%;opacity:0}
  69%{opacity:1}
  92%,100%{left:112%;opacity:0}
}
@keyframes subtitleReveal{
  from{opacity:0;transform:translateY(14px);filter:blur(3px)}
  to{opacity:1;transform:none;filter:none}
}
@keyframes subtitleBreath{
  from{text-shadow:0 2px 7px #000}
  to{text-shadow:0 2px 7px #000,0 0 13px rgba(236,199,119,.16)}
}
@keyframes mottoReveal{
  from{opacity:0;letter-spacing:.28em;transform:translateY(10px)}
  to{opacity:1;letter-spacing:.22em;transform:none}
}
@keyframes mottoGlow{
  from{color:#b8b2a7}
  to{color:#ddd1b3;text-shadow:0 0 10px rgba(230,187,90,.14)}
}
@keyframes ornamentReveal{
  from{opacity:0;transform:scaleX(.62)}
  to{opacity:1;transform:scaleX(1)}
}
@keyframes lineExpand{
  from{transform:scaleX(.05);opacity:0}
  to{transform:scaleX(1);opacity:1}
}
@keyframes lineGlow{
  from{box-shadow:0 0 4px rgba(225,177,63,.10)}
  to{box-shadow:0 0 13px rgba(225,177,63,.26)}
}
@keyframes crossReveal{
  0%{opacity:0;transform:scale(.35) rotate(-24deg);filter:blur(4px)}
  70%{opacity:1;transform:scale(1.10) rotate(3deg);filter:none}
  100%{transform:scale(1) rotate(0)}
}
@keyframes crossHeartbeat{
  0%,100%{transform:scale(1);filter:drop-shadow(0 0 4px rgba(210,38,31,.25))}
  50%{transform:scale(1.11);filter:drop-shadow(0 0 15px rgba(224,49,39,.42))}
}
@keyframes sideLightPass{
  0%,56%{transform:translateX(-120%);opacity:0}
  66%{opacity:.85}
  94%,100%{transform:translateX(120%);opacity:0}
}

@media (prefers-reduced-motion:reduce){
  .hero-center,.cinema-rays,.cinema-particles i,.cinema-sparks,.hero-center .overline,
  .cinematic-title,.cinematic-title span,.cinematic-title strong,.cinematic-title::before,.cinematic-title::after,
  .hero-center p,.hero-center small,.ornament,.ornament i,.ornament b,.hero-side::after{
    animation:none!important;
  }
}


/* =========================================================
   V5.5 · CINEMATIC DEPTH
   Profundidad real, metalizado, luz volumétrica, humo, brasas
   ========================================================= */

.program-hero{
  min-height:355px;
  position:relative;
  overflow:hidden;
  perspective:1500px;
  transform-style:preserve-3d;
  background:
    radial-gradient(circle at 50% 42%,rgba(82,65,32,.20),transparent 25%),
    linear-gradient(180deg,#090a08 0%,#030403 100%);
}

.program-hero::before{
  content:"";
  position:absolute;inset:0;z-index:20;pointer-events:none;
  box-shadow:
    inset 0 0 100px rgba(0,0,0,.92),
    inset 0 30px 45px rgba(0,0,0,.55),
    inset 0 -24px 42px rgba(0,0,0,.76);
}

.hero-depth-layer{
  position:absolute;
  inset:-12%;
  pointer-events:none;
  transform-origin:center;
  mix-blend-mode:screen;
}
.hero-depth-back{
  z-index:0;
  opacity:.18;
  background:
    radial-gradient(ellipse at 50% 42%,rgba(246,208,113,.15),transparent 28%),
    radial-gradient(ellipse at 18% 72%,rgba(170,28,24,.10),transparent 24%),
    radial-gradient(ellipse at 82% 60%,rgba(214,154,50,.08),transparent 23%);
  filter:blur(30px);
  animation:depthBack 12s ease-in-out infinite alternate;
}
.hero-depth-mid{
  z-index:1;
  opacity:.24;
  background:
    linear-gradient(118deg,transparent 0 36%,rgba(255,229,161,.11) 46%,transparent 55%),
    linear-gradient(64deg,transparent 0 44%,rgba(210,160,61,.08) 50%,transparent 60%);
  filter:blur(8px);
  animation:depthMid 9s ease-in-out infinite alternate;
}
.hero-depth-front{
  z-index:18;
  opacity:.12;
  background:radial-gradient(circle at 50% 50%,transparent 0 48%,rgba(255,236,190,.09) 64%,transparent 78%);
  animation:depthFront 7s ease-in-out infinite alternate;
}

.hero-center{
  position:relative;
  z-index:7;
  transform-style:preserve-3d;
  overflow:hidden;
  border-left:1px solid rgba(235,191,91,.09);
  border-right:1px solid rgba(235,191,91,.09);
  background:
    radial-gradient(circle at 50% 34%,rgba(61,51,30,.44),rgba(13,14,11,.88) 37%,#050604 76%)!important;
  box-shadow:
    inset 0 0 90px rgba(0,0,0,.88),
    inset 0 0 30px rgba(224,176,73,.035),
    0 0 0 1px rgba(255,220,140,.02);
}

.hero-frame-depth{
  position:absolute;inset:18px 28px;z-index:1;pointer-events:none;
  border:1px solid rgba(205,157,63,.15);
  box-shadow:
    inset 0 0 25px rgba(230,185,83,.03),
    0 0 35px rgba(0,0,0,.6);
  opacity:.55;
}
.hero-frame-depth::before,
.hero-frame-depth::after{
  content:"";
  position:absolute;
  width:90px;height:1px;top:18px;
  background:linear-gradient(90deg,transparent,#c89b41,transparent);
  opacity:.7;
}
.hero-frame-depth::before{left:18px}
.hero-frame-depth::after{right:18px}

.hero-center .overline,
.cinematic-title,
.hero-center p,
.ornament,
.hero-center small{
  transform-style:preserve-3d;
}
.hero-center .overline{transform:translateZ(28px)}
.cinematic-title{transform:translateZ(48px)}
.hero-center p{transform:translateZ(30px)}
.ornament{transform:translateZ(35px)}
.hero-center small{transform:translateZ(24px)}

.cinematic-title{
  font-weight:700;
  text-shadow:
    0 1px 0 #6e551f,
    0 2px 0 #5b4519,
    0 3px 0 #463510,
    0 7px 18px rgba(0,0,0,.95),
    0 0 24px rgba(236,189,79,.12)!important;
  letter-spacing:.01em;
}
.cinematic-title span{
  background:linear-gradient(180deg,#fff0ad 0%,#e6b851 34%,#9f7222 62%,#f0cf72 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent;
  filter:drop-shadow(0 5px 8px rgba(0,0,0,.65));
}
.cinematic-title strong{
  background:linear-gradient(180deg,#ff695d 0%,#d33128 38%,#7f0a0a 69%,#bf1d1a 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent;
  text-shadow:none!important;
  filter:
    drop-shadow(0 2px 0 #4d0505)
    drop-shadow(0 5px 10px rgba(0,0,0,.70))
    drop-shadow(0 0 12px rgba(194,38,31,.18));
}

.cinematic-title::before{
  top:53%!important;
  height:2px!important;
  background:linear-gradient(90deg,transparent,rgba(218,168,66,.06),rgba(255,235,174,.36),rgba(218,168,66,.06),transparent)!important;
  filter:blur(.4px);
}

.hero-side{
  position:relative;
  z-index:5;
  transform-style:preserve-3d;
}
.hero-left{
  box-shadow:inset -35px 0 40px rgba(0,0,0,.54);
}
.hero-right{
  box-shadow:inset 35px 0 40px rgba(0,0,0,.54);
}
.hero-side img{
  transform:scale(1.10);
  filter:brightness(.55) saturate(.94) contrast(1.12)!important;
  animation:cinemaSideDrift 18s ease-in-out infinite alternate!important;
}
.hero-right img{animation-direction:alternate-reverse!important}

.hero-side::before{
  content:"";
  position:absolute;inset:0;z-index:6;pointer-events:none;
  background:
    linear-gradient(90deg,rgba(0,0,0,.55),transparent 35%,transparent 72%,rgba(0,0,0,.48)),
    radial-gradient(circle at 50% 40%,transparent 0 42%,rgba(0,0,0,.50) 100%);
}

.hero-fog{
  position:absolute;
  width:58%;height:38%;
  bottom:-15%;z-index:16;
  pointer-events:none;
  background:radial-gradient(ellipse at center,rgba(226,210,178,.11),rgba(124,107,77,.045) 40%,transparent 72%);
  filter:blur(22px);
  opacity:.34;
}
.hero-fog-a{left:-8%;animation:fogA 13s ease-in-out infinite alternate}
.hero-fog-b{right:-12%;animation:fogB 16s ease-in-out infinite alternate-reverse}

.hero-embers{
  position:absolute;inset:0;z-index:17;pointer-events:none;overflow:hidden;
}
.hero-embers span{
  position:absolute;
  width:2px;height:2px;border-radius:50%;
  background:#ffd678;
  box-shadow:0 0 7px rgba(255,184,65,.7);
  opacity:0;
  animation:emberRise 9s linear infinite;
}
.hero-embers span:nth-child(1){left:7%;top:91%;animation-delay:.2s}
.hero-embers span:nth-child(2){left:12%;top:82%;animation-delay:1.2s}
.hero-embers span:nth-child(3){left:19%;top:96%;animation-delay:3.4s}
.hero-embers span:nth-child(4){left:26%;top:87%;animation-delay:5.2s}
.hero-embers span:nth-child(5){left:33%;top:93%;animation-delay:2.2s}
.hero-embers span:nth-child(6){left:39%;top:79%;animation-delay:6.1s}
.hero-embers span:nth-child(7){left:44%;top:98%;animation-delay:4.1s}
.hero-embers span:nth-child(8){left:49%;top:89%;animation-delay:.8s}
.hero-embers span:nth-child(9){left:55%;top:95%;animation-delay:7.2s}
.hero-embers span:nth-child(10){left:61%;top:81%;animation-delay:2.7s}
.hero-embers span:nth-child(11){left:68%;top:93%;animation-delay:4.8s}
.hero-embers span:nth-child(12){left:74%;top:86%;animation-delay:1.8s}
.hero-embers span:nth-child(13){left:81%;top:97%;animation-delay:5.7s}
.hero-embers span:nth-child(14){left:86%;top:83%;animation-delay:3.1s}
.hero-embers span:nth-child(15){left:91%;top:94%;animation-delay:6.8s}
.hero-embers span:nth-child(16){left:57%;top:100%;animation-delay:1.1s}
.hero-embers span:nth-child(17){left:31%;top:100%;animation-delay:7.9s}
.hero-embers span:nth-child(18){left:71%;top:100%;animation-delay:4.4s}

.ornament b{
  position:relative;
  display:inline-block;
  color:#ba1716;
  text-shadow:
    0 1px 0 #5f0707,
    0 0 8px rgba(208,38,30,.30),
    0 0 20px rgba(229,51,40,.15);
}
.ornament b::after{
  content:"";
  position:absolute;inset:-14px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(210,34,28,.12),transparent 65%);
  animation:crossAura 3.5s ease-in-out infinite alternate;
}

.cinematic-stats{
  position:relative;
  perspective:1100px;
}
.cinematic-stats article{
  transform-style:preserve-3d;
  background:
    linear-gradient(145deg,#171912 0%,#0b0d09 52%,#060705 100%)!important;
  border:1px solid rgba(197,149,57,.58)!important;
  box-shadow:
    0 14px 28px rgba(0,0,0,.52),
    inset 0 1px 0 rgba(255,235,188,.08),
    inset 0 -18px 30px rgba(0,0,0,.35)!important;
}
.cinematic-stats article::before{
  content:"";
  position:absolute;left:12px;right:12px;top:8px;height:1px;
  background:linear-gradient(90deg,transparent,rgba(238,194,94,.38),transparent);
}
.cinematic-stats article:hover{
  transform:translateY(-5px) rotateX(2.5deg)!important;
  box-shadow:
    0 20px 38px rgba(0,0,0,.70),
    0 0 24px rgba(218,171,71,.10),
    inset 0 1px 0 rgba(255,238,195,.11)!important;
}

/* barra superior con brillo metálico */
.site-header::before{
  background:
    linear-gradient(180deg,rgba(26,25,20,.96),rgba(5,6,4,.99)),
    radial-gradient(circle at 15% 0%,rgba(222,169,65,.10),transparent 25%)!important;
}
.site-header{
  box-shadow:
    0 12px 40px rgba(0,0,0,.85),
    inset 0 -1px 0 rgba(224,174,71,.19),
    inset 0 1px 0 rgba(255,247,211,.025)!important;
}

/* halo lento detrás de toda la portada */
.program-hero::after{
  content:"";
  position:absolute;inset:-20%;
  z-index:2;
  pointer-events:none;
  background:radial-gradient(circle at 50% 45%,rgba(230,182,73,.06),transparent 31%);
  animation:heroHaloBreath 6.5s ease-in-out infinite alternate;
}

/* más volumen en buscador y filtros */
.toolbar select,.searchbox,.view-switch{
  background:linear-gradient(180deg,#151612,#070806)!important;
  border-color:rgba(197,151,58,.55)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,233,174,.07),
    inset 0 -10px 20px rgba(0,0,0,.30),
    0 6px 16px rgba(0,0,0,.32)!important;
}

/* CALENDARIO: más profundidad */
.calendar-month-card{
  background:linear-gradient(145deg,#12140f,#070806)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,229,167,.04),
    0 12px 26px rgba(0,0,0,.45);
}

/* Animaciones */
@keyframes depthBack{
  from{transform:translate3d(-1.5%,-1%,0) scale(1)}
  to{transform:translate3d(1.5%,1%,0) scale(1.06)}
}
@keyframes depthMid{
  from{transform:translate3d(-2%,0,0) rotate(-1deg)}
  to{transform:translate3d(2%,1%,0) rotate(1.2deg)}
}
@keyframes depthFront{
  from{transform:scale(.98);opacity:.08}
  to{transform:scale(1.06);opacity:.18}
}
@keyframes cinemaSideDrift{
  0%{transform:scale(1.10) translate3d(0,0,0)}
  100%{transform:scale(1.16) translate3d(-1.4%,.5%,0)}
}
@keyframes fogA{
  from{transform:translate3d(-7%,0,0) scale(.92);opacity:.20}
  to{transform:translate3d(11%,-8%,0) scale(1.10);opacity:.38}
}
@keyframes fogB{
  from{transform:translate3d(10%,0,0) scale(.95);opacity:.15}
  to{transform:translate3d(-12%,-6%,0) scale(1.08);opacity:.34}
}
@keyframes emberRise{
  0%{transform:translate3d(0,32px,0) scale(.6);opacity:0}
  12%{opacity:.78}
  72%{opacity:.34}
  100%{transform:translate3d(26px,-160px,0) scale(1.35);opacity:0}
}
@keyframes crossAura{
  from{transform:scale(.8);opacity:.18}
  to{transform:scale(1.16);opacity:.48}
}
@keyframes heroHaloBreath{
  from{opacity:.45;transform:scale(.96)}
  to{opacity:1;transform:scale(1.05)}
}

/* entrada cinematográfica por capas */
.program-hero .hero-left{animation:heroLeftIn 1.35s cubic-bezier(.16,.84,.29,1) both}
.program-hero .hero-right{animation:heroRightIn 1.35s cubic-bezier(.16,.84,.29,1) both}
.program-hero .hero-center{animation:heroCenterIn 1.2s cubic-bezier(.16,.84,.29,1) .12s both}
.cinematic-stats article{animation:statRise .85s cubic-bezier(.2,.8,.2,1) both}
.cinematic-stats article:nth-child(1){animation-delay:.12s}
.cinematic-stats article:nth-child(2){animation-delay:.20s}
.cinematic-stats article:nth-child(3){animation-delay:.28s}
.cinematic-stats article:nth-child(4){animation-delay:.36s}
.cinematic-stats article:nth-child(5){animation-delay:.44s}
.cinematic-stats article:nth-child(6){animation-delay:.52s}

@keyframes heroLeftIn{
  from{opacity:0;transform:translate3d(-32px,0,0) scale(1.04);filter:blur(5px)}
  to{opacity:1;transform:none;filter:none}
}
@keyframes heroRightIn{
  from{opacity:0;transform:translate3d(32px,0,0) scale(1.04);filter:blur(5px)}
  to{opacity:1;transform:none;filter:none}
}
@keyframes heroCenterIn{
  from{opacity:0;transform:translate3d(0,20px,-30px) scale(.985);filter:blur(5px)}
  to{opacity:1;transform:none;filter:none}
}
@keyframes statRise{
  from{opacity:0;transform:translateY(16px) scale(.985)}
  to{opacity:1;transform:none}
}

@media (prefers-reduced-motion:reduce){
  .hero-depth-layer,.hero-fog,.hero-embers span,.hero-side img,.program-hero::after,
  .program-hero .hero-left,.program-hero .hero-right,.program-hero .hero-center,
  .cinematic-stats article,.ornament b::after{
    animation:none!important;
  }
}


/* V5.6 · MOBILE GLASS + SCROLL CINEMATOGRÁFICO */
.scroll-progress{position:fixed;left:0;top:0;right:0;height:3px;z-index:9999;background:rgba(255,255,255,.025);pointer-events:none}
.scroll-progress i{display:block;height:100%;width:0%;background:linear-gradient(90deg,#7f0d0d 0%,#d8a949 38%,#fff0ad 52%,#b61616 100%);box-shadow:0 0 12px rgba(235,189,86,.52);transition:width .08s linear}
.reveal-cinema{opacity:0;transform:translate3d(0,28px,0) scale(.985);filter:blur(5px);transition:opacity .9s cubic-bezier(.2,.8,.2,1),transform .95s cubic-bezier(.2,.8,.2,1),filter .9s ease;will-change:opacity,transform,filter}
.reveal-cinema.reveal-left{transform:translate3d(-26px,18px,0) scale(.988)}
.reveal-cinema.reveal-right{transform:translate3d(26px,18px,0) scale(.988)}
.reveal-cinema.reveal-scale{transform:translate3d(0,16px,0) scale(.955)}
.reveal-cinema.is-visible{opacity:1;transform:translate3d(0,0,0) scale(1);filter:blur(0)}

@media(max-width:820px){
  html{scroll-behavior:smooth;background:#030403}
  body{background:radial-gradient(circle at 50% 0%,rgba(194,145,47,.10),transparent 22%),linear-gradient(180deg,#050604 0%,#020302 100%)!important}
  .site-header{background:linear-gradient(180deg,rgba(10,11,9,.76),rgba(4,5,4,.88))!important;backdrop-filter:blur(16px) saturate(1.25);-webkit-backdrop-filter:blur(16px) saturate(1.25);border-bottom:1px solid rgba(223,177,77,.25)!important;box-shadow:0 12px 32px rgba(0,0,0,.58),inset 0 1px 0 rgba(255,240,198,.05)!important}
  .identity{position:relative;z-index:2}
  .identity::after{content:"";position:absolute;left:44px;right:-12px;bottom:-5px;height:18px;background:radial-gradient(ellipse,rgba(234,183,73,.12),transparent 70%);filter:blur(7px);pointer-events:none}
  .program-hero{min-height:auto;background:radial-gradient(circle at 50% 26%,rgba(205,158,58,.12),transparent 26%),linear-gradient(180deg,#0a0b09 0%,#040503 100%)!important}
  .hero-center{border-top:1px solid rgba(244,202,103,.10);border-bottom:1px solid rgba(244,202,103,.12);background:linear-gradient(180deg,rgba(14,15,12,.82),rgba(5,6,4,.92)),radial-gradient(circle at 50% 20%,rgba(208,160,60,.15),transparent 35%)!important;backdrop-filter:blur(15px) saturate(1.2);-webkit-backdrop-filter:blur(15px) saturate(1.2);box-shadow:inset 0 1px 0 rgba(255,237,187,.06),inset 0 -26px 42px rgba(0,0,0,.32),0 18px 42px rgba(0,0,0,.52)!important}
  .hero-frame-depth{border-color:rgba(225,176,72,.18);box-shadow:inset 0 0 30px rgba(230,180,75,.035),0 0 28px rgba(226,175,69,.035)}
  .cinematic-title{text-shadow:0 1px 0 #6d541d,0 2px 0 #4c390e,0 6px 16px rgba(0,0,0,.9),0 0 22px rgba(230,180,70,.14)!important}
  .cinematic-title span{background:linear-gradient(180deg,#fff5c0 0%,#eac35f 38%,#9d7020 70%,#f4d278 100%)!important;-webkit-background-clip:text!important;background-clip:text!important;color:transparent!important}
  .cinematic-stats article{position:relative;overflow:hidden;background:linear-gradient(145deg,rgba(27,29,23,.82),rgba(8,9,7,.92))!important;backdrop-filter:blur(12px) saturate(1.18);-webkit-backdrop-filter:blur(12px) saturate(1.18);border:1px solid rgba(214,165,65,.42)!important;box-shadow:0 12px 28px rgba(0,0,0,.48),inset 0 1px 0 rgba(255,236,184,.10),inset 0 -18px 28px rgba(0,0,0,.30)!important}
  .cinematic-stats article::after{content:"";position:absolute;top:-70%;left:-45%;width:55%;height:240%;background:linear-gradient(100deg,transparent,rgba(255,234,181,.11),transparent);transform:skewX(-20deg);animation:mobileGlassSweep 7.8s ease-in-out infinite;pointer-events:none}
  .searchbox,.toolbar select,.view-switch{backdrop-filter:blur(12px) saturate(1.16);-webkit-backdrop-filter:blur(12px) saturate(1.16);background:linear-gradient(180deg,rgba(20,22,18,.86),rgba(6,7,5,.94))!important;border-color:rgba(204,158,64,.44)!important;box-shadow:0 8px 22px rgba(0,0,0,.40),inset 0 1px 0 rgba(255,236,184,.07)!important}
  .event-card{background:linear-gradient(155deg,rgba(20,22,17,.88),rgba(5,6,4,.96))!important;backdrop-filter:blur(13px) saturate(1.18);-webkit-backdrop-filter:blur(13px) saturate(1.18);border-color:rgba(211,164,67,.46)!important;box-shadow:0 16px 35px rgba(0,0,0,.58),inset 0 1px 0 rgba(255,236,184,.07),0 0 0 1px rgba(255,255,255,.01)!important}
  .event-card.is-visible{animation:cardAfterGlow 1.8s ease-out both}
  .event-card>img{filter:saturate(1.05) contrast(1.08) brightness(.93);transition:transform 7s ease,filter .8s ease}
  .event-card.is-visible>img{transform:scale(1.025)}
  .parchment,.featured-card,.months-panel{box-shadow:0 20px 44px rgba(0,0,0,.58),inset 0 1px 0 rgba(255,255,255,.48),inset 0 -18px 28px rgba(97,62,18,.09)!important}
  .featured-card.is-visible{animation:parchmentBreath 5.5s ease-in-out 1s infinite alternate}
  .dashboard,.archive-section,.document-section{position:relative}
  .dashboard::before,.archive-section::before,.document-section::before{content:"";position:absolute;left:10%;right:10%;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(224,178,77,.45),transparent);box-shadow:0 0 12px rgba(225,179,76,.12)}
  .view-switch button.active{box-shadow:inset 0 1px 0 rgba(255,255,255,.40),0 0 18px rgba(222,172,65,.18)!important}
  .hero-depth-back{animation-duration:15s!important}.hero-depth-mid{animation-duration:13s!important}.hero-fog{filter:blur(28px);opacity:.22!important}.hero-embers span:nth-child(n+10){display:none}
  .private{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:inset 0 1px 0 rgba(255,230,188,.25),0 7px 18px rgba(0,0,0,.46),0 0 18px rgba(168,18,18,.10)!important}
}
@media(max-width:520px){
  .reveal-cinema{transform:translate3d(0,22px,0) scale(.99);filter:blur(3px);transition-duration:.72s,.82s,.72s}
  .reveal-cinema.reveal-left,.reveal-cinema.reveal-right{transform:translate3d(0,22px,0) scale(.99)}
}
@keyframes mobileGlassSweep{0%,60%{left:-45%;opacity:0}69%{opacity:1}94%,100%{left:130%;opacity:0}}
@keyframes cardAfterGlow{0%{box-shadow:0 10px 22px rgba(0,0,0,.44),0 0 0 rgba(222,172,65,0)}45%{box-shadow:0 18px 36px rgba(0,0,0,.58),0 0 24px rgba(222,172,65,.12)}100%{box-shadow:0 16px 35px rgba(0,0,0,.58),0 0 0 rgba(222,172,65,0)}}
@keyframes parchmentBreath{from{transform:translateY(0);filter:brightness(1)}to{transform:translateY(-2px);filter:brightness(1.015)}}
@media(prefers-reduced-motion:reduce){.reveal-cinema{opacity:1!important;transform:none!important;filter:none!important;transition:none!important}.cinematic-stats article::after,.event-card.is-visible,.featured-card.is-visible{animation:none!important}}
