/*
Theme Name: Oye Reggae Music V67 (V62 base + V66 improvements)
Theme URI: https://oyereggaemusic.cl/
Author: Oye Reggae Music
Description: Tema WordPress de Oye Reggae Music con Mural Reggae, Rasta Vibes, Partners, Artistas y tipografía cinética.
Version: 67.0.0
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Requires at least: 6.0
Text Domain: oye-reggae-music
*/
:root{--green:#138A3D;--green-dark:#07552D;--yellow:#F7C500;--red:#D3193D;--ink:#070707;--cream:#F7F3DF;--white:#FFFFFF;--muted:#697064;--black:#070707;--green-soft:#1DA653;--shadow:rgba(7,7,7,.16)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:Arial,Helvetica,sans-serif}a{color:inherit}.container{width:min(1180px,92%);margin:auto}
.site-header{position:sticky;top:0;z-index:999;background:rgba(247,243,223,.96);backdrop-filter:blur(14px);border-bottom:1px solid rgba(0,0,0,.09)}
.header-inner{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:24px}.logo{display:block;width:190px;line-height:0}.logo img{width:100%;height:auto;display:block;transform-origin:50% 55%;animation:logoBreath 4.8s ease-in-out infinite,logoReveal 1.7s steps(18,end) both}.logo:hover img{animation-play-state:paused;transform:scale(1.035) rotate(-1deg)}
@keyframes logoBreath{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-3px) rotate(.6deg)}}
@keyframes logoReveal{0%{clip-path:inset(0 100% 0 0);opacity:.15}100%{clip-path:inset(0 0 0 0);opacity:1}}
.main-nav{display:flex;align-items:center;gap:20px;font-size:14px;font-weight:800}.main-nav>a,.nav-item>a{text-decoration:none}.main-nav>a:hover,.nav-item>a:hover{color:var(--green)}
.nav-item{position:relative;padding:30px 0}.nav-item>a:after{content:'⌄';font-size:11px;margin-left:5px}.nav-sub{position:absolute;top:70px;left:-12px;min-width:190px;background:#fff;border:1px solid rgba(0,0,0,.1);border-radius:14px;padding:8px;box-shadow:0 18px 40px rgba(0,0,0,.14);opacity:0;visibility:hidden;transform:translateY(8px);transition:.2s}.nav-item:hover .nav-sub,.nav-item:focus-within .nav-sub{opacity:1;visibility:visible;transform:translateY(0)}.nav-sub a{display:block;padding:10px 11px;text-decoration:none;border-radius:9px;font-size:13px}.nav-sub a:hover{background:var(--cream);color:var(--green)}
.nav-radio{background:var(--green);color:#fff!important;padding:13px 18px;border-radius:999px;text-decoration:none;box-shadow:0 8px 22px rgba(21,148,72,.22);animation:rastaPulse 3.2s ease-in-out infinite}.nav-radio:hover{animation-play-state:paused;transform:translateY(-2px)}@keyframes rastaPulse{0%,100%{box-shadow:0 8px 22px rgba(21,148,72,.2)}50%{box-shadow:0 10px 32px rgba(247,197,0,.42)}}
.menu-toggle{display:none;border:0;background:none;font-size:25px}.mobile-nav{display:none}
.hero{position:relative;overflow:hidden;padding:92px 0 125px;background:linear-gradient(120deg,#084e29,#159448 48%,#d7df00);color:#fff}.hero:after{content:"";position:absolute;width:120%;height:170px;bottom:-115px;left:-10%;background:var(--yellow);border-radius:50% 50% 0 0}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:60px;position:relative;z-index:2}.hero h1{font-size:clamp(47px,6vw,82px);line-height:.96;letter-spacing:-.055em;margin:16px 0}.hero h1 em{font-style:normal;color:var(--yellow)}.hero p{font-size:18px;line-height:1.6;max-width:620px}.eyebrow{font-size:11px;letter-spacing:.2em;font-weight:900}.eyebrow:before{content:"";display:inline-block;width:28px;height:3px;margin-right:9px;background:linear-gradient(90deg,var(--red) 0 33%,var(--yellow) 33% 66%,var(--green) 66%)}
.hero-actions{display:flex;gap:9px;flex-wrap:wrap}.button{display:inline-block;padding:14px 22px;border-radius:999px;text-decoration:none;font-weight:900}.button-yellow{background:var(--yellow);color:var(--ink)}.button-outline{border:1px solid rgba(255,255,255,.55);color:#fff}.button-rasta{background:linear-gradient(90deg,var(--green),var(--yellow),var(--red));background-size:200% 100%;color:#fff;animation:rastaGradient 4s ease-in-out infinite,buttonFloat 3s ease-in-out infinite;box-shadow:0 12px 30px rgba(0,0,0,.2)}@keyframes rastaGradient{0%,100%{background-position:0 50%}50%{background-position:100% 50%}}@keyframes buttonFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}
.hero-news-slider{min-height:430px;position:relative;overflow:visible}.hero-news-track{position:relative;width:min(430px,94%);height:430px;margin:auto;z-index:2}.hero-news-slide{position:absolute;inset:0;opacity:0;visibility:hidden;transform:translateX(24px) rotate(2deg) scale(.98);transition:opacity .65s ease,transform .65s ease,visibility .65s}.hero-news-slide.is-active{opacity:1;visibility:visible;transform:translateX(0) rotate(-2deg) scale(1)}.hero-news-link{display:block;position:relative;width:100%;height:100%;overflow:hidden;border:2px solid rgba(17,21,17,.75);border-radius:24px;background:#111;color:#fff;text-decoration:none;box-shadow:18px 24px 0 rgba(11,79,43,.55)}.hero-news-slide img{width:100%;height:100%;object-fit:cover;display:block}.hero-news-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.04) 25%,rgba(0,0,0,.88) 100%)}.hero-news-content{position:absolute;left:0;right:0;bottom:0;padding:25px}.hero-news-label{display:inline-block;font-size:9px;letter-spacing:.18em;font-weight:900;background:var(--yellow);color:var(--ink);padding:6px 9px;border-radius:999px}.hero-news-content h2{font-size:clamp(25px,3vw,39px);line-height:.98;margin:11px 0 9px;letter-spacing:-.04em}.hero-news-read{font-weight:900;font-size:13px}.hero-news-placeholder{height:100%;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:32px;background:linear-gradient(135deg,var(--green-dark),var(--green) 55%,var(--yellow));color:#fff}.hero-news-placeholder span{font-size:10px;letter-spacing:.2em;font-weight:900}.hero-news-placeholder strong{font-size:38px;line-height:.95;margin-top:17px}.hero-news-dots{position:absolute;z-index:5;bottom:-22px;left:50%;transform:translateX(-50%);display:flex;gap:7px}.hero-news-dot{width:9px;height:9px;border:0;border-radius:50%;background:rgba(255,255,255,.55);cursor:pointer;padding:0}.hero-news-dot.is-active{background:var(--yellow);transform:scale(1.25)}
.radio-strip{background:var(--yellow);padding:48px 0}.radio-strip-inner{display:flex;align-items:end;justify-content:space-between;gap:40px}.radio-strip h2{font-size:clamp(35px,4vw,58px);line-height:.95;margin:10px 0 0}.radio-strip h2 span{color:var(--green-dark)}.radio-strip p{max-width:460px;line-height:1.7;margin:0}
.section{padding:88px 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:34px}.section-head h2{font-size:clamp(36px,5vw,60px);line-height:.95;margin:7px 0 0;letter-spacing:-.05em}.section-head h2 span{color:var(--green)}.section-link{text-decoration:none;font-weight:900}.section-link:hover{color:var(--green)}
.carousel-shell{overflow-x:auto;scroll-snap-type:x mandatory;padding:2px 2px 17px;scrollbar-width:thin}.carousel-track{display:flex;gap:18px;width:max-content}.carousel-card{width:min(370px,82vw);scroll-snap-align:start;flex:0 0 auto}.card{background:#fff;border:1px solid rgba(0,0,0,.1);border-radius:20px;overflow:hidden}.card-img{height:220px;background:linear-gradient(135deg,var(--green-dark),var(--yellow),var(--red));display:flex;align-items:end}.card-img img{width:100%;height:100%;object-fit:cover}.card-body{padding:22px}.meta{font-size:10px;letter-spacing:.15em;color:var(--green);font-weight:900}.card h3{font-size:23px;margin:10px 0}.card p{color:var(--muted);line-height:1.55}.card a,.artist-card a{display:inline-block;text-decoration:none;color:var(--green);font-weight:900}
.dark-section{background:#11170f;color:#fff}.dark-section .section-head h2 span{color:var(--yellow)}.artist-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.artist-card{border:1px solid rgba(255,255,255,.12);border-radius:20px;overflow:hidden;background:#1a221a}.artist-card>img{width:100%;height:230px;object-fit:cover;display:block}.artist-card>div{padding:25px}.artist-card .meta{color:var(--yellow)}.artist-card p{opacity:.7;line-height:1.5}.artist-card a{color:var(--yellow)}
.partner-card{width:270px;border:1px solid rgba(0,0,0,.1);border-radius:20px;background:#fff;overflow:hidden}.partner-card>img{width:100%;height:150px;object-fit:cover;display:block}.partner-card>div{padding:22px}.partner-card h3{font-size:22px;margin:9px 0}.partner-card p{color:var(--muted);line-height:1.5}.partner-mark{height:150px;display:grid;place-items:center;background:linear-gradient(135deg,var(--green-dark),var(--green));color:var(--yellow);font-size:56px;font-weight:900}
.manifesto{background:var(--yellow);padding:88px 0}.manifesto-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.manifesto h2{font-size:clamp(40px,5vw,65px);line-height:.95;margin:0}.manifesto p{font-size:18px;line-height:1.7;margin:0}.gallery-grid{display:grid;grid-template-columns:1.3fr .7fr .7fr;grid-template-rows:210px 210px;gap:12px}.gallery-item{border-radius:18px;background:linear-gradient(140deg,var(--green),var(--yellow),var(--red));color:#fff;padding:20px;font-weight:900;display:flex;align-items:end}.gallery-item:first-child{grid-row:span 2}
.site-footer{background:#0d120d;color:#fff;padding:55px 0 130px}.footer-grid{display:flex;justify-content:space-between;gap:40px}.footer-logo{width:190px}.footer-logo img{width:100%}.footer-nav{display:flex;gap:20px;flex-wrap:wrap}.footer-nav a{text-decoration:none;opacity:.75}.copyright{margin-top:35px;padding-top:20px;border-top:1px solid rgba(255,255,255,.1);font-size:11px;color:#777}
/* Rasta Vibes player shell: SonicPanel remains the proven audio source. */
.sticky-player{position:fixed;left:14px;right:14px;bottom:14px;z-index:1000;background:rgba(8,11,8,.97);color:#fff;border-radius:21px;padding:8px;box-shadow:0 18px 55px rgba(0,0,0,.4);border:2px solid transparent;background-clip:padding-box;display:grid;grid-template-columns:52px 1fr auto;align-items:center;gap:12px}.sticky-player:before{content:"";position:absolute;inset:-2px;border-radius:22px;padding:2px;background:linear-gradient(90deg,var(--red),var(--yellow),var(--green));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;z-index:-1}.player-play{width:50px;height:50px;border:0;border-radius:50%;background:var(--yellow);color:#111;font-weight:900;cursor:pointer}.player-info strong,.player-info small{display:block}.player-info small{color:#9da39d;font-size:10px;margin-top:4px}.player-live{font-size:9px;font-weight:900;letter-spacing:.13em;white-space:nowrap}.player-live span{color:#42d47c}.player-bars{grid-column:2/-1;height:24px;display:flex;align-items:end;gap:3px;max-width:360px}.player-bars i{width:4px;height:6px;border-radius:5px;background:var(--yellow);opacity:.45}.player-bars.is-playing i{animation:eq .7s ease-in-out infinite alternate}.player-bars i:nth-child(2n){animation-delay:-.12s}.player-bars i:nth-child(3n){animation-delay:-.24s}.player-volume{grid-column:2/-1;display:flex;align-items:center;gap:8px}.player-volume input{width:105px;accent-color:var(--yellow)}.sonic-iframe{position:absolute;left:-10000px;top:auto;width:1px;height:1px;border:0;opacity:0;pointer-events:none}.player-rasta{grid-column:3;grid-row:1/3;align-self:stretch;display:flex;align-items:center;padding:0 16px;border-radius:15px;background:linear-gradient(90deg,var(--green),var(--yellow),var(--red));background-size:200% 100%;color:#fff;text-decoration:none;font-weight:900;animation:rastaGradient 4s ease-in-out infinite}.player-rasta:hover{animation-play-state:paused}
/* Kinetic typography */
.kinetic{--delay-step:24ms}.kinetic .k-char{display:inline-block;opacity:0;transform:translateY(.35em);transition:opacity .18s ease,transform .28s cubic-bezier(.2,.8,.2,1)}.kinetic.is-typing .k-char{opacity:1;transform:none;transition-delay:calc(var(--i)*var(--delay-step))}.kinetic .k-space{width:.28em}.kinetic-cursor:after{content:"";display:inline-block;width:2px;height:.85em;background:currentColor;margin-left:4px;vertical-align:-.08em;opacity:0}.kinetic.is-typing.kinetic-cursor:after{animation:cursorBlink .7s steps(1) infinite;animation-delay:calc(var(--chars)*var(--delay-step))}@keyframes cursorBlink{0%,45%{opacity:1}46%,100%{opacity:0}}
.page-content{padding:85px 0}.page-content h1{font-size:clamp(42px,6vw,72px);line-height:.96}.page-content .lead{font-size:19px;line-height:1.7;max-width:800px}.page-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:40px}
@keyframes eq{from{height:6px}to{height:24px}}
@media(max-width:1000px){.main-nav{display:none}.menu-toggle{display:block}.mobile-nav.is-open{display:flex;flex-direction:column;border-top:1px solid rgba(0,0,0,.08)}.mobile-nav a{padding:13px 4%;text-decoration:none;font-weight:800;border-bottom:1px solid rgba(0,0,0,.06)}.hero-grid{grid-template-columns:1fr}.hero-news-track{height:390px}.hero-news-slider{min-height:390px}.radio-strip-inner,.manifesto-grid{display:grid;grid-template-columns:1fr}.artist-grid{grid-template-columns:1fr 1fr}.gallery-grid{grid-template-columns:1fr 1fr;grid-template-rows:180px 180px 180px}.gallery-item:first-child{grid-column:1/-1;grid-row:auto}.page-grid{grid-template-columns:1fr 1fr}.player-rasta{display:none}.sticky-player{grid-template-columns:52px 1fr auto}.player-live{grid-column:3}.player-bars,.player-volume{grid-column:2}.footer-grid{flex-direction:column}}
@media(max-width:560px){.logo{width:155px}.hero{padding:68px 0 110px}.hero h1{font-size:47px}.hero-news-track{height:305px}.hero-news-slider{min-height:305px}.hero-news-content{padding:19px}.hero-news-content h2{font-size:27px}.artist-grid,.page-grid{grid-template-columns:1fr}.section{padding:70px 0}.sticky-player{left:7px;right:7px;bottom:7px;grid-template-columns:46px 1fr auto;gap:8px}.player-play{width:44px;height:44px}.player-live{font-size:8px}.player-volume input{width:75px}.player-bars{display:none}.player-rasta{display:none}}
@media(prefers-reduced-motion:reduce){.logo img,.button-rasta,.nav-radio,.hero-news-slide,.kinetic .k-char,.player-bars.is-playing i{animation:none!important;transition:none!important}}
/* ========================= V10 ========================= */
.logo img{animation:ormLogoLife 9s ease-in-out infinite;transform-origin:50% 55%;will-change:opacity,transform,filter}
@keyframes ormLogoLife{0%,12%{opacity:1;transform:translateY(0) scale(1) rotate(0);filter:drop-shadow(0 6px 18px rgba(0,0,0,.18))}22%{opacity:.72;transform:translateY(-2px) scale(1.01) rotate(.5deg);filter:drop-shadow(0 8px 24px rgba(19,138,61,.28))}30%{opacity:.08;transform:translateY(1px) scale(.985) rotate(-.7deg);filter:drop-shadow(0 0 0 transparent)}40%{opacity:0;transform:translateY(0) scale(.97)}52%{opacity:.45;transform:translateY(-2px) scale(.995) rotate(.4deg)}62%,100%{opacity:1;transform:translateY(0) scale(1) rotate(0);filter:drop-shadow(0 6px 18px rgba(0,0,0,.18))}}
.nav-item{padding:30px 0}.nav-item>a{position:relative;transition:transform .28s ease,color .28s ease}.nav-item>a:after{transition:transform .28s ease}.nav-item:hover>a{transform:translateY(-2px)}.nav-item:hover>a:after{transform:rotate(180deg)}
.nav-sub{transform-origin:top center;opacity:0;visibility:hidden;transform:translateY(10px) scale(.96);transition:opacity .25s ease,transform .3s cubic-bezier(.2,.8,.2,1),visibility .25s}.nav-item:hover .nav-sub,.nav-item:focus-within .nav-sub{opacity:1;visibility:visible;transform:translateY(0) scale(1)}.nav-sub a{opacity:0;transform:translateX(-7px);transition:opacity .22s ease,transform .22s ease,background .18s}.nav-item:hover .nav-sub a,.nav-item:focus-within .nav-sub a{opacity:1;transform:none}.nav-item:hover .nav-sub a:nth-child(2){transition-delay:.035s}.nav-item:hover .nav-sub a:nth-child(3){transition-delay:.07s}.nav-item:hover .nav-sub a:nth-child(4){transition-delay:.105s}.nav-item:hover .nav-sub a:nth-child(5){transition-delay:.14s}.nav-item:hover .nav-sub a:nth-child(6){transition-delay:.175s}
.button-rasta{position:relative;overflow:visible;isolation:isolate;background:linear-gradient(90deg,var(--green),#18a54d,var(--yellow),var(--red),var(--green));background-size:300% 100%;color:#fff!important;animation:rastaFlow 5s linear infinite, rastaBreath 2.6s ease-in-out infinite;box-shadow:0 0 0 0 rgba(255,212,0,.0),0 8px 25px rgba(19,138,61,.25);transition:transform .22s ease,box-shadow .22s ease}.button-rasta:before{content:"";position:absolute;inset:-5px;border-radius:inherit;border:2px solid rgba(255,212,0,.0);transform:scale(.9);opacity:0;z-index:-1;transition:opacity .22s,transform .22s}.button-rasta:hover{transform:translateY(-2px) scale(1.025);box-shadow:0 0 0 7px rgba(255,212,0,.12),0 10px 28px rgba(19,138,61,.3)}.button-rasta:hover:before{opacity:1;transform:scale(1.04);border-color:rgba(255,212,0,.75);animation:rastaRing .85s ease-out infinite}.rasta-icon{display:inline-block;margin-right:6px;animation:rastaIcon 1.4s ease-in-out infinite}.button-rasta span:last-child{display:inline-block;animation:rastaLetters 2.8s ease-in-out infinite;white-space:nowrap}@keyframes rastaFlow{to{background-position:300% 0}}@keyframes rastaBreath{0%,100%{filter:saturate(1)}50%{filter:saturate(1.2) brightness(1.06)}}@keyframes rastaIcon{0%,100%{transform:scale(1) rotate(0)}50%{transform:scale(1.12) rotate(-5deg)}}@keyframes rastaLetters{0%,100%{letter-spacing:normal;transform:translateX(0)}50%{letter-spacing:.025em;transform:translateX(1px)}}@keyframes rastaRing{0%{opacity:.75;transform:scale(.96)}100%{opacity:0;transform:scale(1.16)}}
.hero-rasta{padding:14px 22px}.hero-rasta:before{border-radius:999px}
/* Typewriter: characters animate, but words never split across lines. */
.kinetic .k-word{display:inline-block;white-space:nowrap}.kinetic .k-char{display:inline-block;opacity:0;transform:translateY(.42em);transition:opacity .16s ease,transform .26s cubic-bezier(.2,.8,.2,1)}.kinetic.is-typing .k-char{opacity:1;transform:none;transition-delay:calc(var(--i)*20ms)}
/* The fixed player is now only the proven SonicPanel widget: no duplicate controls, no fake play/pause, no Rasta button. */
.sticky-player{position:fixed;left:14px;right:14px;bottom:14px;z-index:1000;background:rgba(8,11,8,.97);color:#fff;border-radius:20px;padding:10px 12px;box-shadow:0 18px 55px rgba(0,0,0,.42);border:2px solid transparent;background-clip:padding-box}.sticky-player:before{content:"";position:absolute;inset:-2px;border-radius:22px;padding:2px;background:linear-gradient(90deg,var(--red),var(--yellow),var(--green));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;z-index:-1}.player-topline{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:2px 5px 8px}.player-brand{display:flex;align-items:center;gap:8px}.player-brand strong{font-size:12px}.player-dot{width:8px;height:8px;background:#42d47c;border-radius:50%;box-shadow:0 0 10px #42d47c}.player-live{font-size:9px;letter-spacing:.14em;font-weight:900;color:#42d47c;white-space:nowrap}.player-widget{width:100%;overflow:hidden;border-radius:12px;background:#101010}.sonic-iframe{display:block;width:100%;height:110px;border:0;overflow:hidden}.player-widget:after{content:"";display:block;height:2px;background:linear-gradient(90deg,var(--red),var(--yellow),var(--green));opacity:.7}
@media(max-width:1000px){.nav-item{padding:0}.main-nav{display:none}.mobile-nav.is-open{display:flex;flex-direction:column;border-top:1px solid rgba(0,0,0,.08);animation:mobileMenuIn .3s ease}.mobile-nav a{padding:13px 4%;text-decoration:none;font-weight:800;border-bottom:1px solid rgba(0,0,0,.06)}.mobile-sub{font-size:13px;opacity:.75;padding-left:8%!important;max-height:0;overflow:hidden;animation:mobileSubIn .3s forwards}.mobile-nav.is-open .mobile-sub{max-height:60px}.mobile-rasta{margin:12px 4% 15px;border-radius:999px;text-align:center}.sticky-player{left:7px;right:7px;bottom:7px}.player-topline{padding-bottom:6px}@keyframes mobileMenuIn{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}@keyframes mobileSubIn{from{opacity:0;transform:translateX(-8px)}to{opacity:.75;transform:none}}}
@media(max-width:560px){.logo{width:155px}.sticky-player{padding:8px}.player-topline{padding:1px 3px 5px}.player-brand strong{font-size:11px}.player-live{font-size:8px}.sonic-iframe{height:110px}.hero-news-track{height:305px}.hero-news-slider{min-height:305px}.hero-news-content h2{font-size:27px}}
@media(prefers-reduced-motion:reduce){.logo img,.button-rasta,.rasta-icon,.button-rasta span:last-child,.nav-sub,.nav-sub a,.hero-news-slide,.kinetic .k-char{animation:none!important;transition:none!important}}

/* ========================= V11 — PALETA + ATMÓSFERA ========================= */
html{scroll-padding-top:92px}
body{background:var(--cream);overflow-x:hidden}
.site-header{background:rgba(247,243,223,.94);border-bottom:1px solid rgba(7,7,7,.10)}
.header-inner{min-height:84px}
.logo{width:196px}
.logo img{animation:ormLogoLifeV11 10s ease-in-out infinite;filter:drop-shadow(0 5px 16px rgba(7,7,7,.12))}
@keyframes ormLogoLifeV11{0%,10%{opacity:1;transform:translateY(0) scale(1) rotate(0);filter:drop-shadow(0 5px 16px rgba(7,7,7,.12))}18%{opacity:.88;transform:translateY(-2px) scale(1.012) rotate(.35deg)}28%{opacity:.18;transform:translateY(1px) scale(.985) rotate(-.55deg);filter:drop-shadow(0 0 0 transparent)}36%{opacity:0;transform:scale(.965)}47%{opacity:.36;transform:translateY(-1px) scale(.99)}58%,100%{opacity:1;transform:translateY(0) scale(1) rotate(0);filter:drop-shadow(0 5px 16px rgba(7,7,7,.12))}}
.main-nav{gap:18px}
.nav-item>a{font-size:13px;letter-spacing:.01em}
.nav-sub{border-color:rgba(7,7,7,.10);box-shadow:0 18px 45px rgba(7,7,7,.16)}
.nav-sub a:hover{background:var(--cream);color:var(--green-dark)}
.nav-radio{background:var(--green);box-shadow:0 8px 22px rgba(19,138,61,.22)}
.hero{background:radial-gradient(circle at 82% 20%,rgba(247,197,0,.25),transparent 26%),linear-gradient(120deg,var(--green-dark) 0%,var(--green) 54%,#0f7a39 100%)}
.hero:before{content:"";position:absolute;width:360px;height:360px;right:-130px;top:-130px;border-radius:50%;background:radial-gradient(circle,rgba(247,197,0,.22),rgba(247,197,0,0) 68%);animation:heroHalo 9s ease-in-out infinite}
@keyframes heroHalo{0%,100%{transform:scale(1);opacity:.75}50%{transform:scale(1.14);opacity:1}}
.hero:after{background:var(--yellow)}
.hero-news-link{box-shadow:18px 24px 0 rgba(7,85,45,.65)}
.button-rasta{background:linear-gradient(90deg,var(--green),var(--yellow),var(--red),var(--green));background-size:300% 100%;animation:rastaFlowV11 6s linear infinite,rastaBreathV11 2.8s ease-in-out infinite;box-shadow:0 10px 30px rgba(7,7,7,.20)}
@keyframes rastaFlowV11{to{background-position:300% 0}}
@keyframes rastaBreathV11{0%,100%{filter:saturate(1)}50%{filter:saturate(1.16) brightness(1.05)}}
.button-rasta:hover{box-shadow:0 0 0 7px rgba(247,197,0,.14),0 12px 32px rgba(7,7,7,.25)}
.radio-strip{background:var(--yellow)}
.dark-section{background:var(--black)}
.manifesto{background:var(--yellow)}
.site-footer{background:var(--black)}
.sticky-player{background:rgba(7,7,7,.98);box-shadow:0 18px 55px rgba(7,7,7,.46);padding:10px 12px}
.sticky-player:before{background:linear-gradient(90deg,var(--red),var(--yellow),var(--green))}
.player-dot{background:var(--green-soft);box-shadow:0 0 10px var(--green-soft)}
.player-live{color:#54dc86}
.player-widget{background:#101010;border:1px solid rgba(255,255,255,.08)}
.sonic-iframe{height:110px;min-height:110px;width:100%;opacity:1;pointer-events:auto}
.player-widget:after{background:linear-gradient(90deg,var(--red),var(--yellow),var(--green))}
/* Keep the SonicPanel widget visible and interactive: no duplicate fake controls. */
.mobile-nav{background:rgba(247,243,223,.98)}
/* Word-safe kinetic typography. Each word stays together while letters reveal individually. */
.kinetic .k-word{display:inline-block;white-space:nowrap}
.kinetic .k-char{display:inline-block}
/* Subtle mobile atmosphere: organic motion instead of a flat green panel. */
@media(max-width:560px){
 body{background:var(--green-dark)}
 body:before,body:after{content:"";position:fixed;pointer-events:none;z-index:-1;border-radius:50%;filter:blur(2px)}
 body:before{width:72vw;height:72vw;left:-30vw;top:24vh;background:radial-gradient(circle,rgba(19,138,61,.72),rgba(19,138,61,0) 68%);animation:mobileOrbA 15s ease-in-out infinite}
 body:after{width:55vw;height:55vw;right:-24vw;bottom:15vh;background:radial-gradient(circle,rgba(247,197,0,.24),rgba(211,25,61,0) 70%);animation:mobileOrbB 18s ease-in-out infinite}
 .site-header,.page-content,.single-page{background:var(--cream)}
 .hero{background:radial-gradient(circle at 75% 18%,rgba(247,197,0,.24),transparent 30%),linear-gradient(150deg,var(--green-dark),var(--green) 68%,#0c7135)}
 .hero:before{width:260px;height:260px;right:-110px;top:-90px}
 .section{background:rgba(247,243,223,.97)}
 .dark-section{background:rgba(7,7,7,.98)}
 .radio-strip{background:var(--yellow)}
 .manifesto{background:var(--yellow)}
 .gallery-grid{background:transparent}
 .sticky-player{background:rgba(7,7,7,.985)}
}
@keyframes mobileOrbA{0%,100%{transform:translate3d(0,0,0) scale(1)}50%{transform:translate3d(14vw,-5vh,0) scale(1.12)}}
@keyframes mobileOrbB{0%,100%{transform:translate3d(0,0,0) scale(1)}50%{transform:translate3d(-10vw,7vh,0) scale(1.16)}}
@media(prefers-reduced-motion:reduce){body:before,body:after,.hero:before{animation:none!important}}

@media(max-width:1000px){.mobile-nav.is-open .mobile-sub{max-height:60px;animation:mobileSubInV11 .36s ease both}.mobile-nav.is-open .mobile-sub:nth-of-type(2){animation-delay:.04s}.mobile-nav.is-open .mobile-sub:nth-of-type(3){animation-delay:.08s}.mobile-nav.is-open .mobile-sub:nth-of-type(4){animation-delay:.12s}.mobile-nav.is-open .mobile-sub:nth-of-type(5){animation-delay:.16s}.mobile-nav.is-open .mobile-sub:nth-of-type(6){animation-delay:.20s}}
@keyframes mobileSubInV11{from{opacity:0;transform:translateX(-10px)}to{opacity:.75;transform:none}}


/* ========================= V11.1 — CABECERA COMPACTA + REPRODUCTOR RETRÁCTIL ========================= */
/* La cabecera ocupa menos altura para que el contenido respire desde el primer pantallazo. */
.header-inner{min-height:68px}
.logo{width:148px}
.main-nav{gap:15px}
.nav-item{padding:20px 0}
.nav-item>a{font-size:12.5px}
.nav-sub{top:58px}
.nav-radio{padding:11px 15px;font-size:12.5px}
@media(max-width:1100px){
  .header-inner{min-height:64px}
  .logo{width:138px}
  .main-nav{gap:11px}
  .nav-radio{padding:10px 13px}
}
@media(max-width:1000px){
  .header-inner{min-height:64px}
  .logo{width:140px}
}

/* Reproductor: estado cerrado = una pequeña cápsula. Al pasar por encima/foco se despliega
   y muestra el widget SonicPanel real. No se crean controles falsos sobre el iframe. */
.sticky-player{
  left:auto;
  right:18px;
  bottom:18px;
  width:min(410px,calc(100vw - 36px));
  padding:0;
  border-radius:18px;
  overflow:visible;
  background:rgba(7,7,7,.97);
  transition:width .38s cubic-bezier(.2,.8,.2,1),box-shadow .3s ease,transform .3s ease;
}
.sticky-player:before{
  border-radius:20px;
}
.player-topline{
  min-height:52px;
  padding:7px 12px;
  cursor:pointer;
  user-select:none;
}
.player-brand strong{font-size:11px}
.player-live{font-size:8px}
.player-dot{width:7px;height:7px}
.player-widget{
  max-height:0;
  opacity:0;
  transform:translateY(5px);
  overflow:hidden;
  transition:max-height .42s cubic-bezier(.2,.8,.2,1),opacity .25s ease,transform .35s ease;
  pointer-events:none;
}
.sonic-iframe{height:110px;min-height:110px}
.sticky-player:hover .player-widget,
.sticky-player:focus-within .player-widget,
.sticky-player.is-expanded .player-widget{
  max-height:116px;
  opacity:1;
  transform:none;
  pointer-events:auto;
}
.sticky-player:hover,
.sticky-player:focus-within,
.sticky-player.is-expanded{
  box-shadow:0 20px 60px rgba(7,7,7,.48);
}
.player-toggle{
  appearance:none;
  border:0;
  background:transparent;
  color:#fff;
  display:flex;
  align-items:center;
  gap:8px;
  padding:0;
  font:inherit;
  cursor:pointer;
  text-align:left;
}
.player-toggle-icon{
  width:28px;
  height:28px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:var(--yellow);
  color:var(--ink);
  font-size:11px;
  font-weight:900;
  flex:0 0 auto;
  transition:transform .25s ease;
}
.player-toggle-hint{
  color:#b8bdb8;
  font-size:9px;
  letter-spacing:.08em;
  text-transform:uppercase;
  white-space:nowrap;
}
.sticky-player:hover .player-toggle-icon,
.sticky-player:focus-within .player-toggle-icon,
.sticky-player.is-expanded .player-toggle-icon{transform:rotate(90deg) scale(1.06)}
@media(max-width:560px){
  .logo{width:128px}
  .sticky-player{
    left:8px;
    right:8px;
    bottom:8px;
    width:auto;
    border-radius:16px;
  }
  .player-topline{min-height:48px;padding:6px 10px}
  .player-toggle-hint{font-size:8px}
  .sticky-player:hover .player-widget{max-height:116px}
}

/* ========================= V12 — REPRODUCTOR RETRÁCTIL PROPIO ========================= */
.sticky-player{
  left:16px;right:16px;bottom:16px;width:auto;max-width:680px;margin:0 auto;
  padding:7px;border-radius:22px;background:rgba(7,7,7,.97);
  box-shadow:0 18px 55px rgba(7,7,7,.48),0 0 28px rgba(247,197,0,.08);
  border:1px solid rgba(255,255,255,.08);overflow:hidden;
}
.sticky-player:before{inset:0;border-radius:22px;padding:1px;background:linear-gradient(90deg,var(--red),var(--yellow),var(--green));opacity:.9}
.player-topline{position:relative;z-index:2;min-height:44px;padding:2px 5px;}
.player-toggle{appearance:none;border:0;background:transparent;color:#fff;display:flex;align-items:center;gap:10px;padding:4px 7px;cursor:pointer;text-align:left;min-width:0}
.player-toggle-copy{display:flex;flex-direction:column;gap:2px;min-width:0}
.player-brand strong{font-size:11px;letter-spacing:.02em}
.player-toggle-hint{font-size:8px;color:#858b85;letter-spacing:.05em;transition:opacity .2s ease}
.player-toggle-icon{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:var(--yellow);color:#070707;font-size:10px;transition:transform .3s ease,box-shadow .3s ease}
.player-live{padding-right:8px;font-size:8px;letter-spacing:.12em;color:#54dc86}
.player-widget{position:relative;z-index:2;max-height:0;opacity:0;overflow:hidden;border-radius:16px;background:#101010;transition:max-height .42s cubic-bezier(.22,.8,.22,1),opacity .25s ease,padding .35s ease;border:1px solid transparent;padding:0}
.sticky-player:hover .player-widget,.sticky-player:focus-within .player-widget,.sticky-player.is-expanded .player-widget{max-height:145px;opacity:1;padding:10px;border-color:rgba(255,255,255,.07)}
.sticky-player:hover .player-toggle-icon,.sticky-player:focus-within .player-toggle-icon,.sticky-player.is-expanded .player-toggle-icon{transform:scale(1.08);box-shadow:0 0 20px rgba(247,197,0,.25)}
.sticky-player:hover .player-toggle-hint,.sticky-player:focus-within .player-toggle-hint,.sticky-player.is-expanded .player-toggle-hint{opacity:0}
.orm-player-main{display:grid;grid-template-columns:42px minmax(0,1fr) 30px 105px;gap:10px;align-items:center}
.orm-play{width:42px;height:42px;border:0;border-radius:50%;background:linear-gradient(135deg,var(--yellow),#ffe66b);color:#070707;cursor:pointer;font-weight:900;box-shadow:0 6px 20px rgba(247,197,0,.18);transition:transform .2s ease}
.orm-play:hover{transform:scale(1.06)}
.orm-play-icon{font-size:13px}
.orm-track{min-width:0}
.orm-track-top,.orm-track-bottom{display:flex;justify-content:space-between;gap:10px;align-items:center}
.orm-track-top strong{font-size:11px;color:#fff;white-space:nowrap}
.orm-track-top span,.orm-track-bottom{font-size:7px;letter-spacing:.1em;color:#7e847e}
.orm-bars{height:25px;display:flex;align-items:flex-end;gap:3px;margin:4px 0}
.orm-bars i{display:block;width:4px;height:5px;border-radius:4px;background:linear-gradient(to top,var(--red),var(--yellow),var(--green));opacity:.7;transform-origin:bottom}
.orm-bars.is-playing i{animation:ormEq .72s ease-in-out infinite alternate}
.orm-bars i:nth-child(2n){animation-delay:-.12s}.orm-bars i:nth-child(3n){animation-delay:-.24s}.orm-bars i:nth-child(5n){animation-delay:-.36s}
@keyframes ormEq{from{height:4px}to{height:23px}}
.orm-mute{border:0;background:transparent;color:#fff;font-size:16px;cursor:pointer;padding:4px}
.orm-volume{width:105px;accent-color:var(--yellow);cursor:pointer}
.orm-player-note{text-align:center;font-size:7px;letter-spacing:.14em;color:#666;margin-top:7px}
#orm-audio{display:none}
@media(max-width:700px){
 .sticky-player{left:8px;right:8px;bottom:8px;max-width:none}
 .orm-player-main{grid-template-columns:40px minmax(0,1fr) 28px}
 .orm-volume{display:none}
 .player-live{display:none}
}
@media(max-width:560px){
 .sticky-player{border-radius:18px;padding:6px}
 .player-topline{min-height:43px}
 .player-toggle-hint{font-size:7px}
 .sticky-player:hover .player-widget{max-height:145px}
 .player-widget{transition:max-height .36s ease,opacity .2s ease,padding .3s ease}
}
@media(prefers-reduced-motion:reduce){.orm-bars.is-playing i{animation:none!important}.player-widget,.player-toggle-icon{transition:none!important}}


/* =========================================================
   V13 — COMPACT HEADER + LEÓN + PLAYER RETRÁCTIL PROPIO
   ========================================================= */
.site-header{position:relative;z-index:100;background:rgba(247,243,223,.96)}
.header-inner{min-height:58px!important}
.logo{width:126px!important}
.main-nav{gap:11px!important}
.nav-item{padding:14px 0!important}
.nav-item>a{font-size:12px!important}
.nav-radio{padding:9px 12px!important;font-size:12px!important}
.nav-sub{top:48px!important}
@media(max-width:1100px){.header-inner{min-height:55px!important}.logo{width:120px!important}.main-nav{gap:9px!important}.nav-item{padding:12px 0!important}.nav-radio{padding:8px 11px!important;font-size:11.5px!important}}

/* Footer compacto V14: menú centrado y león ligeramente elevado en escritorio. */
.site-footer{position:relative;background:#070707!important;color:#fff!important;padding:10px 0 8px!important;min-height:88px!important;overflow:hidden}
.footer-v13{position:relative;min-height:70px;display:flex;flex-direction:column;align-items:center;justify-content:center}
.footer-lion{text-decoration:none;position:absolute;left:0;top:-5px;height:76px;width:96px;display:flex;align-items:center;justify-content:center;overflow:visible}
.footer-lion img{width:92px;height:auto;display:block;object-fit:contain;transform-origin:50% 72%;filter:drop-shadow(0 4px 12px rgba(247,197,0,.13));animation:oyrLionLifeV13 9s ease-in-out infinite}
@keyframes oyrLionLifeV13{0%,12%{opacity:1;transform:translateY(0) scale(1) rotate(0)}20%{opacity:.9;transform:translateY(-2px) scale(1.015) rotate(-.5deg)}30%{opacity:.35;transform:translateY(1px) scale(.985) rotate(.7deg)}38%{opacity:0;transform:scale(.965) rotate(-.3deg)}50%{opacity:.4;transform:translateY(-1px) scale(.99)}62%,100%{opacity:1;transform:translateY(0) scale(1) rotate(0)}}
.footer-nav{display:flex!important;justify-content:center;align-items:center;gap:18px;flex-wrap:wrap;min-width:0;width:calc(100% - 210px);margin:0 auto}
.footer-nav a{font-size:11px;text-decoration:none;color:#fff!important;opacity:.68;transition:opacity .2s,transform .2s}
.footer-nav a:hover{opacity:1;transform:translateY(-1px)}
.footer-v13 .copyright{margin:7px 0 0!important;padding:5px 0 0!important;border-top:1px solid rgba(255,255,255,.08)!important;font-size:9px!important;color:#666!important;text-align:center;width:100%}
@media(min-width:601px){.footer-lion{text-decoration:none;transform:translateY(-5px)}}

/* Reproductor propio: NO iframe SonicPanel. La señal entra al elemento audio HTML5. */
.oyr-floating-player{position:fixed;right:20px;bottom:18px;width:520px;height:82px;z-index:999999;display:flex;align-items:center;justify-content:flex-end;font-family:Arial,Helvetica,sans-serif;pointer-events:none}
.oyr-floating-player *{box-sizing:border-box}
.oyr-floating-player audio{display:none}
.oyr-player-panel{position:absolute;right:34px;width:440px;min-height:66px;display:flex;align-items:center;box-sizing:border-box;padding:0 72px 0 25px;background:linear-gradient(135deg,rgba(18,18,18,.98),rgba(35,35,35,.95));border:1px solid rgba(255,255,255,.12);border-radius:38px;box-shadow:0 18px 45px rgba(0,0,0,.4),inset 0 1px 0 rgba(255,255,255,.06);opacity:0;transform:translateX(45px) scale(.96);pointer-events:none;transition:opacity .35s ease,transform .45s cubic-bezier(.2,.8,.2,1)}
.oyr-floating-player:hover .oyr-player-panel,.oyr-floating-player:focus-within .oyr-player-panel,.oyr-floating-player.mobile-open .oyr-player-panel{opacity:1;transform:translateX(0) scale(1);pointer-events:auto}
.oyr-player-info{display:flex;align-items:center;gap:10px;min-width:145px}
.oyr-info-text{display:flex;flex-direction:column;gap:4px}.oyr-info-text strong{color:#fff;font-size:11px;font-weight:800;letter-spacing:1px;white-space:nowrap}.oyr-info-text span{color:#aaa;font-size:8px;letter-spacing:1.2px;white-space:nowrap}
.oyr-live-dot{width:8px;height:8px;flex-shrink:0;border-radius:50%;background:#D3193D;box-shadow:0 0 0 0 rgba(211,25,61,.7);animation:oyr-live-pulse-v13 1.7s infinite}
@keyframes oyr-live-pulse-v13{70%{box-shadow:0 0 0 7px rgba(211,25,61,0)}100%{box-shadow:0 0 0 0 rgba(211,25,61,0)}}
.oyr-controls{display:flex;align-items:center;gap:5px;margin-left:13px}.oyr-control{width:31px;height:31px;padding:0;border:0;border-radius:50%;background:transparent;color:#f8edcf;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .2s,background .2s,color .2s}.oyr-control svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.oyr-control:hover{transform:scale(1.13);background:rgba(245,197,24,.12);color:#f5c518}
.oyr-play{width:40px;height:40px;padding:0;border:0;border-radius:50%;background:linear-gradient(145deg,#f8edcf,#f5c518);color:#111;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 5px 18px rgba(0,0,0,.35),inset 0 1px 2px rgba(255,255,255,.5);transition:transform .2s,box-shadow .2s}.oyr-play:hover{transform:scale(1.09);box-shadow:0 7px 22px rgba(245,197,24,.28),inset 0 1px 2px rgba(255,255,255,.6)}.oyr-play svg{width:17px;height:17px;fill:#111}.oyr-pause-icon{display:none}.oyr-play.is-playing .oyr-play-icon{display:none}.oyr-play.is-playing .oyr-pause-icon{display:block}
.oyr-volume{display:flex;align-items:center;gap:6px;margin-left:11px;color:#fff}.oyr-volume-icon{width:19px;height:19px;padding:0;border:0;background:transparent;color:inherit;display:flex;align-items:center;justify-content:center;cursor:pointer}.oyr-volume-icon svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.oyr-volume-icon.is-muted{color:#D3193D}.oyr-volume input{width:52px;height:3px;cursor:pointer;accent-color:#F7C500}
.oyr-player-state{position:absolute;left:25px;bottom:7px;font-size:7px;letter-spacing:1.3px;color:#6e756e;white-space:nowrap;pointer-events:none}
.oyr-radio-button{position:absolute;right:0;top:0;width:82px;height:82px;padding:0;border:0;background:transparent;cursor:pointer;z-index:5;border-radius:50%;pointer-events:auto;transition:transform .35s cubic-bezier(.2,.8,.2,1),filter .35s ease;animation:oyr-button-breathe-v13 3.5s ease-in-out infinite}.oyr-radio-button svg{width:100%;height:100%;display:block;overflow:visible;filter:drop-shadow(0 8px 15px rgba(0,0,0,.3))}.oyr-radio-button:hover{transform:scale(1.08) rotate(-1deg);filter:brightness(1.08);animation:none}
@keyframes oyr-button-breathe-v13{0%,100%{transform:scale(1)}50%{transform:scale(1.025)}}
.speaker-left{animation:bassLeftV13 1.05s ease-in-out infinite;transform-origin:center bottom}.speaker-center{animation:bassCenterV13 .72s ease-in-out infinite;transform-origin:center bottom}.speaker-right{animation:bassRightV13 .9s ease-in-out infinite;transform-origin:center bottom}.cone-left{animation:coneLeftV13 .52s ease-in-out infinite;transform-origin:center}.cone-center{animation:coneCenterV13 .38s ease-in-out infinite;transform-origin:center}.cone-right{animation:coneRightV13 .67s ease-in-out infinite;transform-origin:center}
@keyframes bassLeftV13{0%,100%{transform:translateY(0) scaleY(1)}50%{transform:translateY(-2px) scaleY(1.015)}}@keyframes bassCenterV13{0%,100%{transform:translateY(0) scaleY(1)}50%{transform:translateY(-4px) scaleY(1.025)}}@keyframes bassRightV13{0%,100%{transform:translateY(0) scaleY(1)}50%{transform:translateY(-2px) scaleY(1.012)}}@keyframes coneLeftV13{0%,100%{transform:scale(1)}50%{transform:scale(1.1)}}@keyframes coneCenterV13{0%,100%{transform:scale(1)}50%{transform:scale(1.16)}}@keyframes coneRightV13{0%,100%{transform:scale(1)}50%{transform:scale(1.08)}}
.oyr-radio-button:hover .cone-center{animation-duration:.22s}.oyr-radio-button:hover .cone-left{animation-duration:.30s}.oyr-radio-button:hover .cone-right{animation-duration:.27s}
@media(max-width:600px){.oyr-floating-player{right:12px;bottom:12px;width:350px;max-width:calc(100vw - 24px);height:72px}.oyr-radio-button{width:72px;height:72px}.oyr-player-panel{right:28px;width:calc(100vw - 48px);max-width:310px;min-height:58px;padding:0 58px 0 15px}.oyr-info-text strong{font-size:9px}.oyr-info-text span{font-size:7px}.oyr-player-info{min-width:110px}.oyr-controls{margin-left:4px;gap:2px}.oyr-control{width:28px;height:28px}.oyr-play{width:36px;height:36px}.oyr-volume{display:none}.oyr-player-state{left:15px;bottom:5px;font-size:6px}.footer-v13{min-height:158px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding-top:2px;padding-bottom:3px}.site-footer{min-height:170px!important;padding:8px 0 7px!important}.footer-lion{text-decoration:none;position:relative;left:auto;top:auto;transform:none!important;width:68px;height:62px;order:1;margin:0 auto 3px}.footer-lion img{width:66px}.footer-nav{order:2;width:100%;display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:5px;margin:0 auto;padding:0 78px 0 20px}.footer-nav a{font-size:9px;line-height:1.15}.footer-v13 .copyright{order:3;font-size:7px!important;padding-top:4px!important;margin-top:6px!important;width:calc(100% - 90px)}.header-inner{min-height:54px!important}.logo{width:116px!important}.nav-radio{padding:7px 10px!important}}
@media(prefers-reduced-motion:reduce){.oyr-radio-button,.speaker-left,.speaker-center,.speaker-right,.cone-left,.cone-center,.cone-right,.oyr-live-dot,.footer-lion img{animation:none!important}.oyr-player-panel{transition:none!important}}


/* =========================================================
   V15 — ATMÓSFERA VIVA + MURAL EN MOVIMIENTO + FOOTER CENTRADO
   ========================================================= */

/* Fondo del Hero: ondas, halos y formas nubosas muy suaves. */
.hero{
    isolation:isolate;
    background:
      radial-gradient(circle at 18% 30%,rgba(247,197,0,.20) 0,rgba(247,197,0,0) 24%),
      radial-gradient(circle at 82% 68%,rgba(211,25,61,.16) 0,rgba(211,25,61,0) 26%),
      radial-gradient(circle at 55% 18%,rgba(255,255,255,.07) 0,rgba(255,255,255,0) 22%),
      linear-gradient(120deg,#084e29,#159448 48%,#d7df00);
}
.hero::before{
    content:"";
    position:absolute;
    inset:-18%;
    z-index:0;
    pointer-events:none;
    opacity:.34;
    background:
      radial-gradient(ellipse at 18% 35%,rgba(255,255,255,.14) 0 4%,transparent 16%),
      radial-gradient(ellipse at 78% 68%,rgba(247,197,0,.16) 0 5%,transparent 18%),
      repeating-radial-gradient(ellipse at 50% 55%,transparent 0 34px,rgba(255,255,255,.045) 35px 37px,transparent 38px 72px);
    filter:blur(1px);
    transform:scale(1);
    animation:oyeHeroAtmosphere 18s ease-in-out infinite alternate;
}
.hero::after{z-index:1;}
.hero-grid{z-index:2;}

@keyframes oyeHeroAtmosphere{
    0%{transform:translate3d(-2%,0,0) scale(1);opacity:.28;}
    50%{transform:translate3d(2%,-1.5%,0) scale(1.045);opacity:.38;}
    100%{transform:translate3d(-1%,2%,0) scale(1.08);opacity:.30;}
}

/* Ondas orgánicas adicionales, como una visualización musical ambiental. */
.hero-grid::after{
    content:"";
    position:absolute;
    left:-8%;
    right:-8%;
    top:8%;
    bottom:2%;
    z-index:-1;
    pointer-events:none;
    border-radius:50%;
    background:repeating-radial-gradient(ellipse at 50% 52%,transparent 0 46px,rgba(255,255,255,.035) 47px 49px,transparent 50px 88px);
    opacity:.34;
    transform:rotate(-4deg) scale(1.02);
    animation:oyeHeroWaves 14s ease-in-out infinite alternate;
}
@keyframes oyeHeroWaves{
    0%{transform:rotate(-4deg) translateX(-2%) scale(1);}
    100%{transform:rotate(-1deg) translateX(2%) scale(1.08);}
}

/* El cuadro del Mural respira suavemente; no se mueve el texto por separado. */
.hero-news-slide.is-active .hero-news-link{
    animation:oyeNewsFloat 6.8s ease-in-out infinite;
    will-change:transform,box-shadow;
}
.hero-news-slide.is-active .hero-news-link::after{
    content:"";
    position:absolute;
    inset:0;
    z-index:3;
    pointer-events:none;
    border-radius:inherit;
    box-shadow:inset 0 0 0 1px rgba(247,197,0,.08),0 0 0 0 rgba(247,197,0,0);
    animation:oyeNewsGlow 6.8s ease-in-out infinite;
}
.hero-news-slide.is-active .hero-news-link:hover{
    animation-play-state:paused;
    transform:translateY(-4px) rotate(-2deg) scale(1.012);
}
@keyframes oyeNewsFloat{
    0%,100%{transform:translateY(0) rotate(-2deg) scale(1);}
    50%{transform:translateY(-7px) rotate(-1deg) scale(1.012);}
}
@keyframes oyeNewsGlow{
    0%,100%{box-shadow:inset 0 0 0 1px rgba(247,197,0,.08),0 0 0 0 rgba(247,197,0,0);}
    50%{box-shadow:inset 0 0 0 1px rgba(247,197,0,.24),0 0 28px 2px rgba(247,197,0,.10);}
}

/* Footer V15: eje central real en escritorio y móvil. */
.site-footer{padding:7px 0 6px!important;min-height:72px!important;}
.footer-v13{width:100%;min-height:59px;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;}
.footer-lion{text-decoration:none;left:24px!important;top:50%!important;width:82px!important;height:58px!important;transform:translateY(-50%)!important;}
.footer-lion img{width:72px!important;}
.footer-nav{position:absolute!important;left:50%!important;top:7px!important;transform:translateX(-50%)!important;width:max-content!important;max-width:70%!important;min-width:0!important;margin:0!important;display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:center!important;gap:17px!important;flex-wrap:nowrap!important;}
.footer-nav a{font-size:10px!important;line-height:1.2!important;white-space:nowrap;}
.footer-v13 .copyright{position:absolute!important;left:50%!important;top:31px!important;transform:translateX(-50%)!important;width:220px!important;max-width:80%;margin:0!important;padding:4px 0 0!important;font-size:8px!important;}

@media(max-width:600px){
    .hero::before{opacity:.28;}
    .hero-grid::after{opacity:.22;}
    .hero-news-slide.is-active .hero-news-link{animation-duration:7.5s;}
    .site-footer{min-height:158px!important;padding:8px 0 7px!important;}
    .footer-v13{min-height:143px!important;justify-content:flex-start!important;padding:0!important;}
    .footer-lion{text-decoration:none;position:relative!important;left:auto!important;top:auto!important;width:68px!important;height:50px!important;transform:none!important;margin:0 auto 6px!important;order:1;}
    .footer-lion img{width:60px!important;}
    .footer-nav{position:relative!important;left:auto!important;top:auto!important;transform:none!important;width:auto!important;max-width:none!important;margin:0 auto!important;order:2;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:3px!important;flex-wrap:nowrap!important;}
    .footer-nav a{font-size:10px!important;line-height:13px!important;text-align:center;}
    .footer-v13 .copyright{position:relative!important;left:auto!important;top:auto!important;transform:none!important;width:180px!important;max-width:80%;margin:7px auto 0!important;order:3;font-size:8px!important;}
}

@media(prefers-reduced-motion:reduce){
    .hero::before,.hero-grid::after,.hero-news-slide.is-active .hero-news-link,.hero-news-slide.is-active .hero-news-link::after{animation:none!important;}
}


/* =========================================================
   V16 — EJE FOOTER + ATMÓSFERA MUSICAL DEL HERO
========================================================= */

/* Escritorio: tres zonas. El centro del menú nunca depende del león ni del reproductor. */
@media(min-width:601px){
  .site-footer{min-height:76px!important;padding:7px 0 6px!important}
  .footer-v13{width:100%;min-height:63px!important;display:grid!important;grid-template-columns:1fr auto 1fr;grid-template-rows:auto auto;align-items:center;justify-items:center;position:relative}
  .footer-lion{text-decoration:none;position:relative!important;grid-column:1;grid-row:1 / span 2;left:auto!important;top:auto!important;width:92px!important;height:62px!important;transform:none!important;justify-self:start!important;margin-left:24px!important}
  .footer-lion img{width:74px!important}
  .footer-nav{position:relative!important;grid-column:2;grid-row:1;left:auto!important;top:auto!important;transform:none!important;width:max-content!important;max-width:none!important;margin:0!important;gap:18px!important;display:flex!important;align-items:center!important;justify-content:center!important}
  .footer-nav a{font-size:10px!important;line-height:1.2!important}
  .footer-v13 .copyright{position:relative!important;grid-column:2;grid-row:2;left:auto!important;top:auto!important;transform:none!important;width:220px!important;max-width:none!important;margin:4px 0 0!important;padding:4px 0 0!important;font-size:8px!important}
}

/* Móvil: un solo eje vertical. */
@media(max-width:600px){
  .site-footer{min-height:170px!important;padding:8px 0 7px!important}
  .footer-v13{width:100%!important;min-height:154px!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:flex-start!important;padding:0!important}
  .footer-lion{text-decoration:none;position:relative!important;left:auto!important;top:auto!important;width:68px!important;height:50px!important;transform:none!important;margin:0 auto 6px!important;order:1}
  .footer-lion img{width:60px!important}
  .footer-nav{position:relative!important;left:auto!important;top:auto!important;transform:none!important;width:auto!important;max-width:none!important;margin:0 auto!important;padding:0!important;order:2;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:3px!important}
  .footer-nav a{font-size:10px!important;line-height:13px!important;text-align:center!important}
  .footer-v13 .copyright{position:relative!important;left:auto!important;top:auto!important;transform:none!important;order:3;width:180px!important;max-width:80%!important;margin:7px auto 0!important;padding:4px 0 0!important;font-size:8px!important;text-align:center!important}
}

/* ---------- Atmósfera musical ---------- */
.hero{isolation:isolate;overflow:hidden}
.hero .hero-grid{position:relative;z-index:2}
.hero-atmosphere{position:absolute;inset:0;z-index:1;pointer-events:none;overflow:hidden}
.hero-atmosphere .music-note{position:absolute;color:rgba(255,255,255,.24);font-family:Georgia,serif;font-weight:700;line-height:1;text-shadow:0 0 16px rgba(247,197,0,.18);animation:oyeNoteFloat var(--dur,12s) ease-in-out var(--delay,0s) infinite}
.hero-atmosphere .music-note:nth-child(2n){color:rgba(247,197,0,.22);text-shadow:0 0 18px rgba(247,197,0,.22)}
.hero-atmosphere .music-note:nth-child(3n){color:rgba(211,25,61,.18);text-shadow:0 0 18px rgba(211,25,61,.18)}
.hero-atmosphere .mist{position:absolute;width:190px;height:190px;border-radius:50%;filter:blur(24px);opacity:.12;mix-blend-mode:screen;animation:oyeMistMove var(--dur,16s) ease-in-out var(--delay,0s) infinite alternate}
.hero-atmosphere .mist.green{background:#138A3D}.hero-atmosphere .mist.yellow{background:#F7C500}.hero-atmosphere .mist.red{background:#D3193D}
.hero-atmosphere .wave{position:absolute;left:-10%;width:120%;height:90px;border:1px solid rgba(255,255,255,.09);border-left:0;border-right:0;border-radius:50%;opacity:.28;filter:blur(.2px);animation:oyeWaveDrift var(--dur,13s) ease-in-out var(--delay,0s) infinite alternate}
.hero-atmosphere .wave.w1{top:24%}.hero-atmosphere .wave.w2{top:52%;transform:scaleX(.86)}.hero-atmosphere .wave.w3{top:74%;transform:scaleX(1.08)}
@keyframes oyeNoteFloat{0%,100%{transform:translate3d(0,16px,0) rotate(-6deg) scale(.92);opacity:0}12%{opacity:.65}50%{transform:translate3d(14px,-30px,0) rotate(5deg) scale(1);opacity:.5}88%{opacity:.2}100%{transform:translate3d(-10px,-72px,0) rotate(-3deg) scale(.9);opacity:0}}
@keyframes oyeMistMove{0%{transform:translate3d(-18px,10px,0) scale(.9)}50%{transform:translate3d(25px,-18px,0) scale(1.08)}100%{transform:translate3d(-5px,25px,0) scale(.96)}}
@keyframes oyeWaveDrift{0%{transform:translateX(-3%) scaleY(.9)}100%{transform:translateX(3%) scaleY(1.08)}}

/* El cuadro Mural conserva su contenido, pero respira con un movimiento sutil. */
.hero-news-slide.is-active .hero-news-link{animation:oyeNewsFloatV16 7s ease-in-out infinite;will-change:transform,box-shadow}
.hero-news-slide.is-active .hero-news-link::after{content:"";position:absolute;inset:0;z-index:3;pointer-events:none;border-radius:inherit;box-shadow:inset 0 0 0 1px rgba(247,197,0,.10),0 0 0 0 rgba(247,197,0,0);animation:oyeNewsGlowV16 7s ease-in-out infinite}
@keyframes oyeNewsFloatV16{0%,100%{transform:translateY(0) rotate(-2deg) scale(1)}50%{transform:translateY(-6px) rotate(-1deg) scale(1.01)}}
@keyframes oyeNewsGlowV16{0%,100%{box-shadow:inset 0 0 0 1px rgba(247,197,0,.08),0 0 0 0 rgba(247,197,0,0)}50%{box-shadow:inset 0 0 0 1px rgba(247,197,0,.25),0 0 24px 2px rgba(247,197,0,.09)}}
.hero-news-slide.is-active .hero-news-link:hover{animation-play-state:paused;transform:translateY(-4px) rotate(-2deg) scale(1.012)}
@media(max-width:600px){.hero-atmosphere .music-note{font-size:.8em;opacity:.75}.hero-atmosphere .mist{width:130px;height:130px;filter:blur(22px);opacity:.09}.hero-atmosphere .wave{opacity:.18}.hero-news-slide.is-active .hero-news-link{animation-duration:7.5s}}
@media(prefers-reduced-motion:reduce){.hero-atmosphere .music-note,.hero-atmosphere .mist,.hero-atmosphere .wave,.hero-news-slide.is-active .hero-news-link,.hero-news-slide.is-active .hero-news-link::after{animation:none!important}}

/* =========================================================
   V37 — FIRMA RASTA: FLUJO V32 + BRILLO V36
   ========================================================= */

/* =========================================================
   V17 — FIRMA RASTA EN EL BORDE INFERIOR
========================================================= */
/* V25 — firma inferior Rasta: una sola franja, completa y responsiva */
body::after{
  content:"";
  position:fixed;
  left:0 !important;
  right:auto !important;
  bottom:0;
  width:100vw !important;
  height:4px;
  z-index:999998;
  pointer-events:none;
  /* V38: conserva el acabado luminoso de V36, recupera el flujo de color
     y añade el pulso vertical suave que daba vida a la franja en las
     primeras versiones. El color corre lateralmente mientras el brillo
     sube y baja ligeramente, sin engrosar la línea. */
  background:
    linear-gradient(90deg,#138A3D 0%,#138A3D 24%,#F7C500 43%,#F7C500 62%,#D3193D 81%,#D3193D 100%,#138A3D 100%);
  background-size:300% 100%;
  background-position:0% 50%;
  box-shadow:0 -1px 5px rgba(19,138,61,.16),0 0 10px rgba(247,197,0,.18),0 1px 7px rgba(211,25,61,.17);
  animation:oyeBottomRastaFlowV38 6s linear infinite,oyeBottomRastaPulseV38 2.8s ease-in-out infinite;
  will-change:background-position,opacity,filter,transform,box-shadow;
}
@keyframes oyeBottomRastaFlowV38{
  0%{background-position:0% 50%;}
  100%{background-position:300% 50%;}
}
@keyframes oyeBottomRastaPulseV38{
  0%,100%{
    opacity:.78;
    filter:saturate(.96) brightness(.98);
    transform:translateY(1px);
    box-shadow:0 -2px 5px rgba(19,138,61,.15),0 0 9px rgba(247,197,0,.16),0 2px 7px rgba(211,25,61,.15);
  }
  50%{
    opacity:1;
    filter:saturate(1.18) brightness(1.07);
    transform:translateY(-1px);
    box-shadow:0 -3px 7px rgba(19,138,61,.22),0 0 13px rgba(247,197,0,.25),0 3px 9px rgba(211,25,61,.22);
  }
}
@media(prefers-reduced-motion:reduce){
  body::after{animation:none!important;background-position:50% 50%;transform:none!important;}
}


/* =========================================================
   V18 — COMPOSICIÓN TIPOGRÁFICA CENTRADA
   Mantiene la estructura visual y centra el contenido textual.
========================================================= */
body.home .hero-copy{text-align:center;display:flex;flex-direction:column;align-items:center}
body.home .hero-copy .eyebrow{width:100%;text-align:center}
body.home .hero-copy .hero-text{margin-left:auto;margin-right:auto}
body.home .hero-actions{justify-content:center}
body.home .hero-news-content{text-align:center;display:flex;flex-direction:column;align-items:center}
body.home .hero-news-placeholder{text-align:center;align-items:center}
body.home .hero-news-placeholder strong{max-width:90%;text-align:center}
body.home .radio-strip-inner{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:18px}
body.home .radio-strip p{max-width:680px}
body.home .section-head{flex-direction:column;align-items:center;text-align:center}
body.home .section-head>div{display:flex;flex-direction:column;align-items:center}
body.home .section-link{text-align:center}
body.home .card-body,body.home .artist-card>div,body.home .partner-card>div{text-align:center}
body.home .card-body .meta,body.home .artist-card .meta,body.home .partner-card .meta{text-align:center}
body.home .card-body a,body.home .artist-card a{margin-left:auto;margin-right:auto}
body.home .manifesto-grid{grid-template-columns:1fr 1fr;align-items:center;text-align:center}
body.home .manifesto-grid>div{display:flex;flex-direction:column;align-items:center}
body.home .manifesto-grid p{max-width:680px;margin-left:auto;margin-right:auto}
body.home .gallery-item{align-items:center;justify-content:center;text-align:center;padding:20px}
@media(max-width:800px){body.home .manifesto-grid{grid-template-columns:1fr;gap:28px}body.home .hero-grid{gap:36px}}
@media(max-width:600px){body.home .hero{padding-top:62px}body.home .hero h1{max-width:680px}body.home .hero p{max-width:92%}body.home .section-head{margin-bottom:28px}body.home .radio-strip{padding:38px 0}body.home .radio-strip h2 br{display:none}}

/* =========================================================
   V20 — ENCABEZADOS TRÍADA + COLOR EN LA ATMÓSFERA HERO
========================================================= */
body.home .section-head-triad{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)!important;
  align-items:center!important;
  width:100%;
  gap:22px!important;
  text-align:initial!important;
}
body.home .section-head-triad .section-head-center{
  grid-column:2;
  text-align:center;
  display:flex;
  justify-content:center;
  align-items:center;
  min-width:0;
}
body.home .section-head-triad .section-head-center h2{
  margin:0!important;
  text-align:center;
  white-space:nowrap;
}
body.home .section-head-triad .section-side{
  display:flex;
  align-items:center;
  min-width:0;
}
body.home .section-head-triad .section-side-left{justify-content:flex-start;text-align:left}
body.home .section-head-triad .section-side-right{justify-content:flex-end;text-align:right}
body.home .section-head-triad .section-side-left .eyebrow{margin:0!important}
body.home .section-head-triad .section-side-right .section-link{white-space:nowrap}

/* Hero: notas con la paleta Oye Reggae Music, más visibles pero suaves. */
.hero-atmosphere .music-note{opacity:.35!important}
.hero-atmosphere .music-note:nth-child(3n+1){color:rgba(19,138,61,.48);text-shadow:0 0 18px rgba(19,138,61,.28)}
.hero-atmosphere .music-note:nth-child(3n+2){color:rgba(247,197,0,.52);text-shadow:0 0 20px rgba(247,197,0,.30)}
.hero-atmosphere .music-note:nth-child(3n){color:rgba(211,25,61,.42);text-shadow:0 0 18px rgba(211,25,61,.24)}
.hero-atmosphere .mist{opacity:.16!important}
.hero-atmosphere .mist.green{background:radial-gradient(circle,#138A3D 0%,rgba(19,138,61,.55) 42%,transparent 72%)}
.hero-atmosphere .mist.yellow{background:radial-gradient(circle,#F7C500 0%,rgba(247,197,0,.55) 42%,transparent 72%)}
.hero-atmosphere .mist.red{background:radial-gradient(circle,#D3193D 0%,rgba(211,25,61,.5) 42%,transparent 72%)}
.hero-atmosphere .wave{height:110px;border:0;opacity:.25!important;background:linear-gradient(90deg,transparent 0%,rgba(19,138,61,.22) 25%,rgba(247,197,0,.20) 50%,rgba(211,25,61,.18) 75%,transparent 100%);-webkit-mask:radial-gradient(ellipse at center,transparent 54%,#000 55%,#000 56%,transparent 57%);mask:radial-gradient(ellipse at center,transparent 54%,#000 55%,#000 56%,transparent 57%)}

@media(max-width:800px){
  body.home .section-head-triad{gap:10px!important;grid-template-columns:1fr auto 1fr!important}
  body.home .section-head-triad .section-head-center h2{font-size:clamp(28px,7vw,42px)!important}
  body.home .section-head-triad .section-side-left .eyebrow,
  body.home .section-head-triad .section-side-right .section-link{font-size:9px!important;letter-spacing:.9px}
}
@media(max-width:600px){
  body.home .section-head-triad{grid-template-columns:1fr!important;gap:7px!important;text-align:center!important}
  body.home .section-head-triad .section-side-left,
  body.home .section-head-triad .section-side-right,
  body.home .section-head-triad .section-head-center{grid-column:1;justify-content:center;text-align:center}
  body.home .section-head-triad .section-side-left{order:1}
  body.home .section-head-triad .section-head-center{order:2}
  body.home .section-head-triad .section-side-right{order:3}
  body.home .section-head-triad .section-head-center h2{white-space:normal}
}


/* =========================================================
   V20 — SISTEMA EDITORIAL Y PÁGINAS INTERNAS
   ========================================================= */
.orm-archive-wrap{text-align:center}
.orm-archive-wrap .lead{max-width:760px;margin:0 auto 2rem}
.orm-search{display:flex;justify-content:center;gap:10px;max-width:760px;margin:0 auto 2.5rem}
.orm-search input[type=search]{flex:1;min-width:0;border:1px solid rgba(19,138,61,.25);border-radius:999px;padding:13px 18px;background:rgba(255,255,255,.82);font:inherit}
.orm-search button{border:0;border-radius:999px;padding:12px 22px;background:#138A3D;color:#fff;font-weight:700;cursor:pointer}
.orm-search button:hover{background:#07552D}
.taxonomy-section{margin:4rem 0}
.taxonomy-section>h2{margin-bottom:1.5rem;text-align:center}
.empty-state{grid-column:1/-1;padding:2rem;opacity:.7}
.country-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:18px;max-width:1000px;margin:0 auto}
.country-card{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;min-height:145px;padding:18px;border-radius:20px;background:rgba(255,255,255,.7);text-decoration:none;color:inherit;border:1px solid rgba(19,138,61,.13);transition:transform .3s ease,box-shadow .3s ease}
.country-card:hover{transform:translateY(-5px);box-shadow:0 12px 28px rgba(7,85,45,.12)}
.country-card img{width:64px;height:42px;object-fit:cover;border-radius:4px;box-shadow:0 3px 10px rgba(0,0,0,.12)}
.country-placeholder{font-size:34px;line-height:1;color:#138A3D}
.single-meta{text-align:center;opacity:.7;margin:-.5rem auto 2rem;font-size:.9rem}
.institutional-page{max-width:980px;margin:2rem auto;text-align:center}
.institutional-page section{padding:3rem 0;border-bottom:1px solid rgba(7,85,45,.12)}
.institutional-page section:last-child{border-bottom:0}
.institutional-page h2{margin-bottom:1rem}
.static-content{max-width:760px;margin:0 auto;text-align:left;line-height:1.8}
.institutional-page .static-content{text-align:center}
.card-body h3 a{text-decoration:none;color:inherit}
@media(max-width:700px){.orm-search{flex-direction:column}.orm-search button{width:100%}.country-grid{grid-template-columns:repeat(2,1fr)}.taxonomy-section{margin:3rem 0}.institutional-page{padding:0 8px}.static-content{font-size:.98rem}}


/* Comentarios — sistema editorial Oye Reggae Music */
.comments-area-wrap{max-width:900px;margin:70px auto 20px;padding:42px 0 10px;border-top:1px solid rgba(7,7,7,.12)}
.comments-heading{text-align:center;margin-bottom:28px}.comments-heading h2{margin:.25rem 0 .45rem}.comments-heading p{margin:0;opacity:.72}
.comments-area{width:100%}.comments-title{font-size:1.15rem;margin:0 0 24px;text-align:left}.comment-list{margin:0 0 35px;padding-left:25px}.comment-list .comment{margin-bottom:22px}.comment-body{padding:18px;border:1px solid rgba(7,7,7,.1);border-radius:16px;background:rgba(255,255,255,.48)}.comment-author{display:flex;align-items:center;gap:10px}.comment-author .avatar{border-radius:50%}.comment-author .fn{font-weight:700}.comment-metadata{font-size:.78rem;opacity:.65;margin:5px 0 12px}.comment-content{line-height:1.7}.reply{margin-top:12px}.comment-form-wrap{padding:28px;border-radius:20px;background:rgba(255,255,255,.5);border:1px solid rgba(7,7,7,.1)}.comment-form-wrap form{margin:0}.comment-form-wrap label{display:block;font-weight:700;margin-bottom:7px}.comment-form-wrap input[type=text],.comment-form-wrap input[type=email],.comment-form-wrap input[type=url],.comment-form-wrap textarea{width:100%;box-sizing:border-box;border:1px solid rgba(7,7,7,.18);border-radius:12px;background:#fff;padding:12px 14px;font:inherit}.comment-form-wrap textarea{min-height:150px;resize:vertical}.comment-form-wrap .form-submit{margin-bottom:0}.comment-form-wrap input[type=submit]{border:0;border-radius:999px;padding:12px 20px;font-weight:700;cursor:pointer;background:var(--green);color:#fff}.comment-notes,.comments-closed{opacity:.72;font-size:.9rem}
@media(max-width:700px){.comments-area-wrap{margin-top:50px;padding-top:30px}.comment-form-wrap{padding:20px}.comment-list{padding-left:18px}}


/* =========================================================
   V22 — PRESENTACIÓN EDITORIAL, BÚSQUEDA COMPACTA E INFINITE FEED
   ========================================================= */
.page-heading-row,.single-heading-row{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:34px;align-items:end;margin-bottom:34px}.page-heading,.single-heading{text-align:left}.page-heading .lead{margin:10px 0 0;max-width:720px}.orm-search-compact{width:250px;max-width:250px;margin:0 0 5px auto;gap:6px}.orm-search-compact input[type=search]{width:100%;padding:10px 13px;font-size:13px;background:rgba(255,255,255,.72);border-color:rgba(7,7,7,.12)}.orm-search-compact button{width:42px;height:40px;padding:0;font-size:20px;line-height:1;background:var(--green-dark)}.single-heading-row .single-meta{text-align:left;margin:12px 0 0}.single-title.align-left{text-align:left}.single-title.align-center{text-align:center}.single-title.align-right{text-align:right}.single-excerpt{max-width:780px;margin:10px 0 0;font-size:18px;line-height:1.6;color:var(--muted)}.single-excerpt.align-left{text-align:left}.single-excerpt.align-center{text-align:center;margin-left:auto;margin-right:auto}.single-excerpt.align-right{text-align:right;margin-left:auto}.single-image{max-width:1024px;margin:0 auto 38px;display:flex;justify-content:center}.single-image.align-left{justify-content:flex-start}.single-image.align-center{justify-content:center}.single-image.align-right{justify-content:flex-end}.single-image img{width:auto;max-width:100%;height:auto;max-height:820px;object-fit:contain;border-radius:22px;box-shadow:0 20px 55px rgba(7,7,7,.13)}.single-body{max-width:820px;margin:0 auto 60px;line-height:1.9;font-size:18px}.single-body.align-left{text-align:left}.single-body.align-center{text-align:center}.single-body.align-right{text-align:right}.single-body p,.single-body ul,.single-body ol{margin-left:auto;margin-right:auto}.single-body img{max-width:100%;height:auto}.single-body blockquote{margin:2rem auto;padding:1rem 1.4rem;border-left:4px solid var(--yellow);background:rgba(247,197,0,.08)}
.card{position:relative}.card-img{position:relative;overflow:hidden}.card-img img{transition:transform .55s cubic-bezier(.2,.8,.2,1),filter .55s ease}.card:hover .card-img img{transform:scale(1.045)}.card-img-overlay{position:absolute;inset:auto 0 0 0;padding:34px 18px 17px;color:#fff;background:linear-gradient(180deg,transparent,rgba(0,0,0,.82));opacity:0;transform:translateY(12px);transition:opacity .32s ease,transform .32s ease;display:flex;flex-direction:column;gap:5px;text-align:var(--card-title-align,center);pointer-events:none}.card:hover .card-img-overlay,.card:focus-within .card-img-overlay{opacity:1;transform:none}.card-img-overlay strong{font-size:18px;line-height:1.15}.card-img-overlay span{font-size:12px;line-height:1.4;opacity:.9}.card.align-left .card-body{text-align:left}.card.align-center .card-body{text-align:center}.card.align-right .card-body{text-align:right}.card.align-right .card-body a{margin-left:auto}.card.align-center .card-body a{margin-left:auto;margin-right:auto}
.manifesto .manifesto-grid>p{animation:manifestoBreath 7.2s ease-in-out infinite}@keyframes manifestoBreath{0%,18%,82%,100%{opacity:.38;transform:translateY(5px)}35%,65%{opacity:1;transform:translateY(0)}}
.hero h1.page-hero-title{font-weight:950;letter-spacing:-.045em;text-wrap:balance;text-shadow:0 5px 0 rgba(7,85,45,.15),0 14px 30px rgba(7,7,7,.12);transform-origin:50% 70%}.hero .eyebrow{letter-spacing:.24em}.hero .hero-text{font-weight:700}.kinetic.is-typing .k-char{animation:caterpillarChar .72s cubic-bezier(.2,.9,.25,1) both;animation-delay:calc(var(--i)*22ms)}@keyframes caterpillarChar{0%{opacity:0;transform:translateY(.75em) rotate(-8deg) scale(.82)}55%{opacity:1;transform:translateY(-.14em) rotate(3deg) scale(1.05)}100%{opacity:1;transform:translateY(0) rotate(0) scale(1)}}.hero .page-hero-title .k-word:nth-child(2n){transform:translateY(2px)}
.orm-sponsor-strip{margin:54px auto 15px;padding:13px 0;border-top:1px solid rgba(7,7,7,.08);border-bottom:1px solid rgba(7,7,7,.08);overflow:hidden;max-width:980px}.orm-sponsor-track{min-height:42px;display:flex;align-items:center;justify-content:center;gap:20px}.orm-sponsor-item{width:54px;height:34px;display:flex;align-items:center;justify-content:center;opacity:0;transform:translateY(7px) scale(.94);animation:sponsorAppear 15s ease-in-out infinite;animation-delay:var(--sponsor-delay);text-decoration:none;border-radius:8px;overflow:hidden}.orm-sponsor-item img{display:block;width:54px;height:34px;object-fit:cover;border-radius:8px;filter:saturate(.88)}.orm-sponsor-item span{font-size:9px;font-weight:800;text-align:center}.orm-sponsor-item:hover{opacity:1!important;transform:scale(1.05)}@keyframes sponsorAppear{0%,100%{opacity:0;transform:translateY(7px) scale(.94)}10%,30%{opacity:.82;transform:none}40%,100%{opacity:0;transform:translateY(-5px) scale(.96)}}
.orm-infinite-feed{max-width:1180px;margin:70px auto 30px}.orm-infinite-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.orm-infinite-sentinel{height:2px}.orm-infinite-status{text-align:center;min-height:28px;padding:20px;opacity:.65;font-size:13px}.orm-infinite-end{grid-column:1/-1;text-align:center;padding:30px;opacity:.6}
@media(max-width:900px){.page-heading-row,.single-heading-row{grid-template-columns:1fr;gap:16px}.orm-search-compact{width:min(100%,420px);max-width:100%;margin:0 auto 0 0}.page-heading,.single-heading{text-align:center}.page-heading .lead{margin-left:auto;margin-right:auto}.single-heading-row .single-meta{text-align:center}.orm-infinite-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.page-heading-row,.single-heading-row{margin-bottom:25px}.orm-search-compact{width:100%}.orm-infinite-grid{grid-template-columns:1fr}.single-body{font-size:16px;line-height:1.8}.single-image img{border-radius:16px}.orm-sponsor-strip{margin-top:40px}.orm-sponsor-track{gap:12px}.orm-sponsor-item,.orm-sponsor-item img{width:46px;height:30px}.card-img-overlay{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.manifesto .manifesto-grid>p,.kinetic.is-typing .k-char,.orm-sponsor-item{animation:none!important;opacity:1!important;transform:none!important}}

/* V24 — ajustes finales de búsqueda, centrado y movimiento */
.orm-search-compact{width:180px;max-width:180px;margin:0 0 4px auto;display:flex;align-items:center;gap:5px;}
.orm-search-compact input[type=search]{height:32px;box-sizing:border-box;padding:7px 10px;font-size:11px;border-radius:999px;outline:none;}
.orm-search-compact button{width:32px!important;height:32px!important;font-size:15px!important;padding:0!important;}
.single-image{width:100%;box-sizing:border-box;}
.single-image.align-center{justify-content:center!important;text-align:center!important;}
.single-image.align-center img{margin-left:auto!important;margin-right:auto!important;display:block;}
.single-image.align-left{justify-content:flex-start!important;text-align:left!important;}
.single-image.align-right{justify-content:flex-end!important;text-align:right!important;}
@keyframes ormManifestoBreathV24{0%,66.666%{opacity:1;transform:translateY(0)}83.333%{opacity:.22;transform:translateY(4px)}100%{opacity:1;transform:translateY(0)}}
body.home .manifesto-grid>p{animation:ormManifestoBreathV24 12s ease-in-out infinite;will-change:opacity,transform;}
.kinetic.is-typing .k-char{animation:caterpillarCharV24 .68s cubic-bezier(.18,.9,.22,1) both;animation-delay:calc(var(--i)*19ms);}
@keyframes caterpillarCharV24{0%{opacity:0;transform:translateY(.72em) rotate(-7deg) scale(.84)}42%{opacity:1;transform:translateY(-.13em) rotate(2.5deg) scale(1.06)}72%{transform:translateY(.04em) rotate(-.8deg) scale(1.01)}100%{opacity:1;transform:translateY(0) rotate(0) scale(1)}}
@media(max-width:600px){.orm-search-compact{width:150px;max-width:150px}.orm-search-compact input[type=search]{height:30px;font-size:10px}.orm-search-compact button{width:30px!important;height:30px!important}.single-image{padding-left:0;padding-right:0}}
@media(prefers-reduced-motion:reduce){body.home .manifesto-grid>p{animation:none!important;opacity:1!important;transform:none!important}.kinetic.is-typing .k-char{animation:none!important;opacity:1!important;transform:none!important}}

/* V24 — overlays editoriales y buscador del Hero */
.hero-search{width:190px;max-width:190px;margin:16px 0 8px auto;justify-content:flex-end;}
.hero-search input[type=search]{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.38);color:#fff;box-shadow:0 8px 24px rgba(0,0,0,.08);backdrop-filter:blur(8px);}
.hero-search input[type=search]::placeholder{color:rgba(255,255,255,.76)}
.hero-search button{background:rgba(7,85,45,.86);border:1px solid rgba(255,255,255,.24);width:32px;height:32px;padding:0;}
.artist-card,.partner-card{position:relative;overflow:hidden;}
.artist-card-overlay,.partner-card-overlay{position:absolute;left:0;right:0;top:0;padding:38px 18px 18px;color:#fff;background:linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.82));opacity:0;transform:translateY(10px);transition:opacity .3s ease,transform .3s ease;pointer-events:none;z-index:2;}
.artist-card:hover .artist-card-overlay,.partner-card:hover .partner-card-overlay{opacity:1;transform:none;}
.artist-card-overlay strong,.partner-card-overlay strong{display:block;font-size:18px;line-height:1.15;}
.artist-card-overlay span,.partner-card-overlay span{display:block;font-size:12px;line-height:1.4;margin-top:4px;opacity:.9;}
@media(max-width:600px){.hero-search{width:150px;max-width:150px;margin:14px auto 8px;}.artist-card-overlay,.partner-card-overlay{opacity:1;transform:none;top:auto;bottom:0;padding:30px 14px 14px;}.hero-search input[type=search]{height:30px;}.hero-search button{width:30px;height:30px;}}
@media(prefers-reduced-motion:reduce){.artist-card-overlay,.partner-card-overlay{transition:none!important}.hero-search{backdrop-filter:none!important}}


/* V25 — alineación editorial, buscador del hero y tarjetas limpias */
.page-heading-row{
  display:grid;
  grid-template-columns:minmax(180px,1fr) minmax(260px,1.25fr) minmax(180px,1fr);
  gap:28px;
  align-items:center;
  margin-bottom:34px;
}
.page-heading-context{justify-self:start;text-align:left;min-width:0}
.page-heading-context .eyebrow{margin:0}
.page-heading{text-align:center;min-width:0}
.page-heading .page-title{margin:0;text-align:center}
.page-heading .lead{margin:10px auto 0;max-width:720px;text-align:center}
.page-heading-search{justify-self:end;min-width:180px}
.page-heading-search .orm-search-compact{margin:0 0 0 auto}
.single-heading-row{
  display:grid;
  grid-template-columns:minmax(180px,1fr) minmax(320px,2fr) minmax(180px,1fr);
  gap:28px;
  align-items:center;
  margin-bottom:34px;
}
.single-heading-context{justify-self:start;text-align:left;min-width:0}
.single-heading{grid-column:2;min-width:0;text-align:center}
.single-heading .single-title{margin:0;text-align:center}
.single-heading .single-excerpt{margin-left:auto;margin-right:auto;text-align:center}
.single-heading .single-meta{text-align:center;margin:12px 0 0}
.single-heading-row .single-title.align-left{text-align:left}
.single-heading-row .single-title.align-center{text-align:center}
.single-heading-row .single-title.align-right{text-align:right}
.single-heading-row .single-excerpt.align-left{text-align:left;margin-left:0;margin-right:auto}
.single-heading-row .single-excerpt.align-center{text-align:center;margin-left:auto;margin-right:auto}
.single-heading-row .single-excerpt.align-right{text-align:right;margin-left:auto;margin-right:0}
.card-body .meta,.card-body>p{display:none}
.card-body h3{margin-top:0}
.hero-copy{position:relative}
.hero-search{margin:0 0 16px auto!important;justify-content:flex-end}
.hero-copy>.hero-search{order:-1}
@media(max-width:900px){
 .page-heading-row{grid-template-columns:1fr;gap:12px;text-align:center}
 .page-heading-context,.page-heading,.page-heading-search{justify-self:center;width:100%;text-align:center}
 .page-heading-search .orm-search-compact{margin:0 auto}
 .single-heading-row{grid-template-columns:1fr;gap:12px;text-align:center}
 .single-heading-context,.single-heading{grid-column:1;justify-self:center;width:100%;text-align:center}
 .single-heading-row .single-title.align-left,.single-heading-row .single-title.align-center,.single-heading-row .single-title.align-right{text-align:center}
 .single-heading-row .single-excerpt.align-left,.single-heading-row .single-excerpt.align-center,.single-heading-row .single-excerpt.align-right{margin-left:auto;margin-right:auto;text-align:center}
 .hero-search{margin:0 auto 14px!important;}
}
@media(max-width:600px){
 .page-heading-row,.single-heading-row{margin-bottom:25px}
 .page-heading-context .eyebrow,.single-heading-context .eyebrow{font-size:10px}
 .hero-search{width:150px!important;max-width:150px!important;margin:0 auto 13px!important}
}


/* V26 — afinación final del Hero y tarjetas editoriales */
@media(min-width:901px){
  .hero-grid{align-items:center;}
  .hero-copy{display:flex;flex-direction:column;align-items:stretch;}
  .hero-copy>.hero-search{align-self:center!important;}
  .hero-news-slider{align-self:center;display:flex;align-items:center;justify-content:center;}
  .hero-news-track{margin:0 auto;}
}
.hero-search{margin:0 auto 16px!important;justify-content:center;}
.hero-search input[type=search]{text-align:left;}

/* El encabezado de la publicación y su imagen comparten exactamente el mismo eje central. */
.single-heading{width:100%;justify-self:stretch;}
.single-image.align-center{width:100%;justify-content:center;margin-left:auto;margin-right:auto;}
.single-image.align-center img{margin-left:auto;margin-right:auto;}

/* Mural Reggae: la imagen gana espacio; el título queda solo como overlay al pasar el cursor. */
.carousel-card .card-img{height:300px;}
.card-img-link{display:block;color:inherit;text-decoration:none;}
.carousel-card .card-body{padding:15px 20px 20px;text-align:center;}
.carousel-card .card-read{display:inline-block;text-decoration:none;color:var(--green);font-weight:900;}
.carousel-card .card-img-overlay{background:linear-gradient(180deg,transparent 35%,rgba(0,0,0,.72) 100%);}
.carousel-card:hover .card-img-overlay{opacity:1;transform:none;}

/* Bandas y Artistas: solo imagen + información al pasar + clic directo a la publicación. */
.artist-card{min-height:260px;}
.artist-card-link{position:relative;display:block;width:100%;height:100%;min-height:260px;color:inherit;text-decoration:none;overflow:hidden;}
.artist-card-link>img{width:100%;height:100%;min-height:260px;object-fit:cover;display:block;transition:transform .55s cubic-bezier(.2,.8,.2,1),filter .55s ease;}
.artist-card:hover .artist-card-link>img{transform:scale(1.045);filter:saturate(1.05);}
.artist-card-overlay{inset:auto 0 0 0;top:auto;padding:55px 20px 20px;background:linear-gradient(180deg,transparent,rgba(0,0,0,.82));}
.artist-card:hover .artist-card-overlay{opacity:1;transform:none;}

@media(max-width:600px){
  .carousel-card .card-img{height:245px;}
  .artist-card,.artist-card-link,.artist-card-link>img{min-height:245px;}
}


/* =========================================================
   V27 — tarjetas compactas y línea visual unificada
   ========================================================= */
/* Mural Reggae: la tarjeta es la imagen; no deja una franja blanca debajo. */
.carousel-card{width:min(320px,76vw);}
.carousel-card .card-img{height:255px;border-radius:20px;}
.carousel-card .card-body{display:none!important;}
.carousel-card .card-img-link{display:block;height:100%;}
.carousel-card .card-img-overlay{padding:48px 18px 18px;}
.carousel-card .card-img-overlay strong{font-size:17px;}
.carousel-card .card-img-overlay span{font-size:11px;}
/* La información aparece al pasar el cursor; no ocupa espacio permanente. */
.carousel-card .card-img-overlay{opacity:0;transform:translateY(10px);}
.carousel-card:hover .card-img-overlay,.carousel-card:focus-within .card-img-overlay{opacity:1;transform:none;}
/* Todas las tarjetas editoriales siguen la misma lógica visual. */
.page-grid .card{overflow:hidden;border-radius:20px;background:transparent;border:0;}
.page-grid .card-img{height:250px;border-radius:20px;}
.page-grid .card-body{display:none!important;}
.page-grid .card-img-link{display:block;text-decoration:none;color:inherit;}
.page-grid .card-img-overlay{opacity:0;transform:translateY(10px);}
.page-grid .card:hover .card-img-overlay,.page-grid .card:focus-within .card-img-overlay{opacity:1;transform:none;}
@media(max-width:600px){
  .carousel-card{width:min(290px,78vw);}
  .carousel-card .card-img{height:225px;}
  .page-grid .card-img{height:225px;}
  .page-grid .card-img-overlay{opacity:1;transform:none;}
}


/* =========================================================
   V28 — proporciones intercambiadas Mural / Bandas y Artistas
   ========================================================= */
/* Mural Reggae adopta la proporción mayor que tenía Bandas y Artistas. */
.carousel-card{width:min(370px,82vw);}
.carousel-card .card-img{height:300px;}
/* Bandas y Artistas adopta la proporción compacta que tenía Mural Reggae. */
.artist-card{min-height:255px;}
.artist-card-link{min-height:255px;}
.artist-card-link>img{min-height:255px;}
@media(max-width:600px){
  .carousel-card{width:min(320px,82vw);}
  .carousel-card .card-img{height:255px;}
  .artist-card,.artist-card-link,.artist-card-link>img{min-height:225px;}
}

/* V29 — Cabecera individual: sección/fecha arriba y título, bajada e imagen sobre un eje común */
.single-heading-row{
  width:100%;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:24px;
  align-items:start;
  margin:0 0 28px;
}
.single-heading-context{
  grid-column:1;
  justify-self:start;
  text-align:left;
  min-width:0;
}
.single-heading-date{
  grid-column:2;
  justify-self:end;
  text-align:right;
  font-size:12px;
  line-height:1.2;
  letter-spacing:.08em;
  font-weight:800;
  opacity:.68;
  padding-top:2px;
}
.single-content-axis{
  width:100%;
  max-width:1024px;
  margin:0 auto;
  display:block;
}
.single-content-axis .single-title{
  width:100%;
  margin:0 auto;
  line-height:1.02;
}
.single-content-axis .single-title.align-left{text-align:left;}
.single-content-axis .single-title.align-center{text-align:center;}
.single-content-axis .single-title.align-right{text-align:right;}
.single-content-axis .single-excerpt{
  width:100%;
  max-width:none;
  margin-top:14px;
  margin-bottom:28px;
  line-height:1.6;
}
.single-content-axis .single-excerpt.align-left{text-align:left;margin-left:0;margin-right:0;}
.single-content-axis .single-excerpt.align-center{text-align:center;margin-left:0;margin-right:0;}
.single-content-axis .single-excerpt.align-right{text-align:right;margin-left:0;margin-right:0;}
.single-content-axis .single-image{
  width:100%;
  max-width:1024px;
  margin:0 0 42px;
  display:flex;
  box-sizing:border-box;
}
.single-content-axis .single-image.align-left{justify-content:flex-start;}
.single-content-axis .single-image.align-center{justify-content:center;}
.single-content-axis .single-image.align-right{justify-content:flex-end;}
.single-content-axis .single-image img{
  display:block;
  width:auto;
  height:auto;
  max-width:100%;
  margin:0;
  object-fit:contain;
}
.single-content-axis .single-image.align-center img{margin-left:auto;margin-right:auto;}
.single-content-axis .single-image.align-left img{margin-left:0;margin-right:0;}
.single-content-axis .single-image.align-right img{margin-left:0;margin-right:0;}
@media(max-width:900px){
  .single-heading-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;margin-bottom:24px;}
  .single-content-axis{max-width:100%;}
}
@media(max-width:600px){
  .single-heading-row{gap:10px;margin-bottom:22px;}
  .single-heading-context .eyebrow{font-size:9px;letter-spacing:.16em;}
  .single-heading-date{font-size:10px;}
  .single-content-axis{padding:0 0;}
}


/* =========================================================
   V30 — Mural Reggae alineado al sistema de Bandas y Artistas
   ========================================================= */
/* En el Hero, Mural Reggae usa la misma escala física de tarjeta que
   Bandas y Artistas: tres tarjetas por fila en escritorio, dos en tablet
   y una en móvil. La imagen se muestra completa, sin recorte. */
.carousel-track{width:100%;align-items:stretch;}
.carousel-card{
  width:calc((100% - 36px) / 3);
  min-width:0;
  flex:0 0 calc((100% - 36px) / 3);
}
.carousel-card .card-img{
  height:255px;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  background:rgba(247,243,223,.72);
}
.carousel-card .card-img img{
  width:100%;
  height:100%;
  object-fit:contain;
  display:block;
}
/* Misma presentación para los archivos/páginas de Mural Reggae y Artistas. */
.page-grid .editorial-card-mural_reggae .card-img,
.page-grid .editorial-card-artista .card-img{
  height:255px;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  background:rgba(247,243,223,.72);
}
.page-grid .editorial-card-mural_reggae .card-img img,
.page-grid .editorial-card-artista .card-img img{
  width:100%;
  height:100%;
  object-fit:contain;
  display:block;
}
/* El overlay conserva el comportamiento aprobado: aparece sobre la imagen. */
.page-grid .editorial-card-mural_reggae .card-img-overlay,
.page-grid .editorial-card-artista .card-img-overlay{
  opacity:0;
  transform:translateY(10px);
}
.page-grid .editorial-card-mural_reggae:hover .card-img-overlay,
.page-grid .editorial-card-mural_reggae:focus-within .card-img-overlay,
.page-grid .editorial-card-artista:hover .card-img-overlay,
.page-grid .editorial-card-artista:focus-within .card-img-overlay{
  opacity:1;
  transform:none;
}
/* Partners: bloque deliberadamente más pequeño y discreto en el Hero. */
#partners .partner-card{width:220px;}
#partners .partner-card>img,
#partners .partner-card .partner-mark{height:120px;}
#partners .partner-card>div:not(.partner-card-overlay){padding:14px;}
#partners .partner-card h3{font-size:18px;margin:6px 0;}
#partners .partner-card p{font-size:12px;line-height:1.4;}
@media(max-width:1000px){
  .carousel-card{width:calc((100% - 18px) / 2);flex-basis:calc((100% - 18px) / 2);}
}
@media(max-width:600px){
  .carousel-card{width:100%;flex-basis:100%;}
  .carousel-card .card-img,
  .page-grid .editorial-card-mural_reggae .card-img,
  .page-grid .editorial-card-artista .card-img{height:225px;}
  #partners .partner-card{width:205px;}
  #partners .partner-card>img,
  #partners .partner-card .partner-mark{height:105px;}
}


/* =========================================================
   V31 — AJUSTE FINAL DE IMÁGENES / MURAL / PARTNERS
   - Mural Reggae usa exactamente la misma escala visual que
     Bandas y Artistas.
   - La imagen ocupa todo el marco sin fondos blancos artificiales.
   - En el Hero Mural solo aparece "Leer noticia" al pasar.
   - Partners del Hero: formato compacto + información al hover.
   - Las mismas reglas se heredan en páginas, subpáginas e
     infinite feed mediante .editorial-card.
========================================================= */

/* MURAL REGGAE — HERO/SECCIÓN PRINCIPAL
   Dos piezas por fila en escritorio, igual que la lectura visual
   de Bandas y Artistas. El marco es cuadrado para evitar espacios. */
#mural .carousel-track{
  width:100%;
  display:flex;
  gap:18px;
  align-items:stretch;
}
#mural .carousel-card{
  width:calc((100% - 18px) / 2);
  min-width:0;
  flex:0 0 calc((100% - 18px) / 2);
}
#mural .carousel-card .card-img{
  width:100%;
  height:auto;
  aspect-ratio:1 / 1;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  background:transparent;
  border-radius:20px;
}
#mural .carousel-card .card-img img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center;
}
#mural .carousel-card .card-img-overlay{
  inset:0;
  padding:0;
  display:flex;
  align-items:flex-end;
  justify-content:center;
  background:linear-gradient(180deg,transparent 55%,rgba(0,0,0,.76));
  opacity:0;
  transform:translateY(8px);
}
#mural .carousel-card:hover .card-img-overlay,
#mural .carousel-card:focus-within .card-img-overlay{
  opacity:1;
  transform:none;
}
#mural .carousel-card .card-img-overlay .card-read{
  display:inline-block;
  margin-bottom:22px;
  color:#fff;
  font-size:15px;
  font-weight:900;
  letter-spacing:.01em;
  text-decoration:none;
  text-shadow:0 2px 10px rgba(0,0,0,.45);
}

/* BANDAS Y ARTISTAS — MISMA ESCALA FÍSICA
   La imagen ocupa el marco y el contenido informativo aparece
   únicamente al pasar el cursor/foco. */
#artistas .artist-card{
  min-height:0;
  aspect-ratio:1 / 1;
}
#artistas .artist-card-link{
  min-height:0;
  height:100%;
  aspect-ratio:1 / 1;
}
#artistas .artist-card-link>img{
  width:100%;
  height:100%;
  min-height:0;
  object-fit:cover;
  object-position:center;
  display:block;
}

/* ARCHIVOS, PÁGINAS Y SUBPÁGINAS
   Mural Reggae y Bandas y Artistas heredan exactamente el mismo
   lenguaje visual del Hero. */
.page-grid .editorial-card-mural_reggae,
.page-grid .editorial-card-artista{
  min-width:0;
}
.page-grid .editorial-card-mural_reggae .card-img,
.page-grid .editorial-card-artista .card-img{
  width:100%;
  height:auto;
  aspect-ratio:1 / 1;
  min-height:0;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  background:transparent;
  border-radius:20px;
}
.page-grid .editorial-card-mural_reggae .card-img img,
.page-grid .editorial-card-artista .card-img img{
  width:100%;
  height:100%;
  min-height:0;
  display:block;
  object-fit:cover;
  object-position:center;
}

/* En páginas/subpáginas el título y bajada aparecen sobre la imagen
   al pasar el cursor, nunca debajo creando una franja blanca. */
.page-grid .editorial-card-mural_reggae .card-img-overlay,
.page-grid .editorial-card-artista .card-img-overlay{
  inset:0;
  display:flex;
  justify-content:flex-end;
  padding:48px 18px 18px;
  background:linear-gradient(180deg,transparent 35%,rgba(0,0,0,.82));
}

/* PARTNERS — HERO
   Más compacto, limpio y con logo completo. */
#partners .partner-card{
  width:220px;
  min-width:220px;
  border-radius:20px;
  overflow:hidden;
  position:relative;
  background:#fff;
  border:1px solid rgba(7,7,7,.10);
}
#partners .partner-card-link{
  position:relative;
  display:block;
  width:100%;
  height:100%;
  color:inherit;
  text-decoration:none;
  overflow:hidden;
}
#partners .partner-card-link>img,
#partners .partner-card .partner-mark{
  width:100%;
  height:120px;
  display:flex;
  align-items:center;
  justify-content:center;
  object-fit:contain;
  background:#fff;
}
#partners .partner-card-link>img{
  padding:8px;
}
#partners .partner-card .partner-mark{
  font-size:40px;
}
#partners .partner-card-overlay{
  position:absolute;
  inset:0;
  z-index:3;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  gap:5px;
  padding:48px 14px 14px;
  color:#fff;
  background:linear-gradient(180deg,transparent 35%,rgba(0,0,0,.84));
  opacity:0;
  transform:translateY(8px);
  transition:opacity .3s ease,transform .3s ease;
  pointer-events:none;
}
#partners .partner-card:hover .partner-card-overlay,
#partners .partner-card:focus-within .partner-card-overlay{
  opacity:1;
  transform:none;
}
#partners .partner-card-overlay strong{
  font-size:15px;
  line-height:1.15;
}
#partners .partner-card-overlay span{
  font-size:11px;
  line-height:1.35;
  opacity:.92;
}
#partners .partner-card-link:hover>img{
  transform:scale(1.025);
  transition:transform .45s ease;
}

@media(max-width:1000px){
  #mural .carousel-card{
    width:calc((100% - 18px) / 2);
    flex-basis:calc((100% - 18px) / 2);
  }
}
@media(max-width:600px){
  #mural .carousel-card{
    width:100%;
    flex-basis:100%;
  }
  #mural .carousel-card .card-img,
  #artistas .artist-card,
  #artistas .artist-card-link,
  .page-grid .editorial-card-mural_reggae .card-img,
  .page-grid .editorial-card-artista .card-img{
    aspect-ratio:1 / 1;
  }
  #partners .partner-card{
    width:205px;
    min-width:205px;
  }
  #partners .partner-card-link>img,
  #partners .partner-card .partner-mark{
    height:105px;
  }
}

/* En móvil el contenido informativo sigue apareciendo al tocar/foco,
   pero no se fuerza una franja blanca debajo de la imagen. */
@media(max-width:600px){
  .page-grid .editorial-card-mural_reggae .card-img-overlay,
  .page-grid .editorial-card-artista .card-img-overlay{
    opacity:1;
    transform:none;
  }
}

/* =========================================================
   V33 — MÓVIL: MURAL VERTICAL / BANDAS HORIZONTAL
   ========================================================= */
@media(max-width:600px){
  /* El fondo del documento coincide con las secciones claras y evita
     que aparezcan bandas verdes entre bloques al cambiar de orientación. */
  body{background:var(--cream)!important;}

  /* MURAL REGGAE: en móvil deja de ser carrusel horizontal.
     Las publicaciones quedan una debajo de otra y usan el scroll normal. */
  #mural .carousel-shell{
    overflow:visible!important;
    overflow-x:visible!important;
    padding:0!important;
    scroll-snap-type:none!important;
  }
  #mural .carousel-track{
    display:flex!important;
    flex-direction:column!important;
    width:100%!important;
    gap:18px!important;
  }
  #mural .carousel-card{
    width:100%!important;
    max-width:100%!important;
    flex:0 0 auto!important;
    scroll-snap-align:none!important;
  }
  #mural .carousel-card .card-img{
    width:100%!important;
    height:auto!important;
    aspect-ratio:16/10!important;
  }

  /* BANDAS Y ARTISTAS: en móvil se convierte en carrusel horizontal.
     Se conserva una tarjeta compacta y el gesto lateral nativo. */
  #artistas .artist-grid{
    display:flex!important;
    flex-direction:row!important;
    flex-wrap:nowrap!important;
    width:100%!important;
    max-width:100%!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    gap:14px!important;
    padding:2px 2px 16px!important;
    margin:0!important;
    scroll-snap-type:x mandatory!important;
    scrollbar-width:thin;
    -webkit-overflow-scrolling:touch;
  }
  #artistas .artist-card{
    width:min(78vw,300px)!important;
    min-width:min(78vw,300px)!important;
    max-width:min(78vw,300px)!important;
    min-height:225px!important;
    flex:0 0 min(78vw,300px)!important;
    scroll-snap-align:start!important;
  }
  #artistas .artist-card-link,
  #artistas .artist-card-link>img{
    min-height:225px!important;
    height:225px!important;
  }
}


/* =========================================================
   V34 — MÓVIL: HERO REAL + CARRUSEL BANDAS CONTINUO
   - Mural: publicación vertical, imagen protagonista y cuadrada.
   - Bandas y Artistas: hero horizontal continuo, automático y suave.
   - Solo móvil; escritorio permanece intacto.
========================================================= */
@media(max-width:600px){
  /* MURAL: la imagen se convierte en el Hero visual de la sección. */
  #mural .carousel-track{
    width:100%!important;
    display:flex!important;
    flex-direction:column!important;
    gap:26px!important;
    align-items:center!important;
  }
  #mural .carousel-card{
    width:92%!important;
    max-width:92%!important;
    flex:0 0 auto!important;
    margin:0 auto!important;
  }
  #mural .carousel-card .card-img{
    width:100%!important;
    height:auto!important;
    aspect-ratio:1 / 1!important;
    border-radius:24px!important;
    overflow:hidden!important;
    background:transparent!important;
  }
  #mural .carousel-card .card-img img{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:center!important;
  }

  /* BANDAS: Hero cuadrado, grande y en cinta horizontal. */
  #artistas .artist-grid{
    position:relative!important;
    display:flex!important;
    flex-direction:row!important;
    flex-wrap:nowrap!important;
    align-items:stretch!important;
    width:100%!important;
    max-width:none!important;
    overflow:hidden!important;
    gap:18px!important;
    padding:0 0 12px!important;
    margin:0!important;
    scrollbar-width:none!important;
    -ms-overflow-style:none!important;
    touch-action:pan-y!important;
  }
  #artistas .artist-grid::-webkit-scrollbar{display:none!important;}
  #artistas .artist-card{
    width:92vw!important;
    min-width:92vw!important;
    max-width:92vw!important;
    flex:0 0 92vw!important;
    aspect-ratio:1 / 1!important;
    min-height:0!important;
    height:auto!important;
    scroll-snap-align:none!important;
  }
  #artistas .artist-card-link{
    display:block!important;
    width:100%!important;
    height:100%!important;
    aspect-ratio:1 / 1!important;
    min-height:0!important;
    border-radius:24px!important;
    overflow:hidden!important;
  }
  #artistas .artist-card-link>img{
    display:block!important;
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    object-fit:cover!important;
    object-position:center!important;
  }
  #artistas .artist-card-overlay{
    border-radius:24px!important;
  }

  /* Pequeño indicador visual: la siguiente pieza asoma por el borde. */
  #artistas .artist-grid::after{
    content:"";
    position:absolute;
    right:0;
    top:8%;
    bottom:20px;
    width:14px;
    border-radius:10px 0 0 10px;
    background:linear-gradient(180deg,rgba(247,197,0,.18),rgba(19,138,61,.12),rgba(211,25,61,.18));
    pointer-events:none;
    opacity:.7;
  }
}

@media(prefers-reduced-motion:reduce){
  #artistas .artist-grid{overflow-x:auto!important;touch-action:auto!important;}
}


/* =========================================================
   V38 — SLIDERS PERPETUOS EN TODOS LOS FORMATOS
   - Bandas y Artistas: desplazamiento lateral continuo.
   - Partners: desplazamiento lateral continuo, más rápido.
   - Móvil, tablet y escritorio comparten la misma lógica.
========================================================= */
#artistas .artist-grid{
  display:flex!important;
  flex-direction:row!important;
  flex-wrap:nowrap!important;
  align-items:stretch!important;
  width:100%!important;
  max-width:100%!important;
  overflow:hidden!important;
  gap:18px!important;
  margin:0!important;
  padding:0 0 12px!important;
  scrollbar-width:none!important;
  -ms-overflow-style:none!important;
}
#artistas .artist-grid::-webkit-scrollbar{display:none!important;}
#artistas .artist-card{
  width:calc((100% - 18px) / 2)!important;
  min-width:calc((100% - 18px) / 2)!important;
  max-width:calc((100% - 18px) / 2)!important;
  flex:0 0 calc((100% - 18px) / 2)!important;
  aspect-ratio:1 / 1!important;
  min-height:0!important;
  height:auto!important;
}
#artistas .artist-card-link,
#artistas .artist-card-link>img{
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  aspect-ratio:1 / 1!important;
}
#artistas .artist-card-link>img{object-fit:cover!important;display:block!important;}

#partners .carousel-shell{
  overflow:hidden!important;
  overflow-x:hidden!important;
  overflow-y:hidden!important;
  scroll-snap-type:none!important;
  padding:2px 0 17px!important;
  scrollbar-width:none!important;
  -ms-overflow-style:none!important;
}
#partners .carousel-shell::-webkit-scrollbar{display:none!important;}
#partners .carousel-track{
  display:flex!important;
  flex-direction:row!important;
  flex-wrap:nowrap!important;
  align-items:stretch!important;
  width:max-content!important;
  gap:18px!important;
}
#partners .partner-card{
  flex:0 0 220px!important;
  width:220px!important;
  min-width:220px!important;
}

@media(max-width:1000px){
  #artistas .artist-card{
    width:calc((100% - 18px) / 2)!important;
    min-width:calc((100% - 18px) / 2)!important;
    max-width:calc((100% - 18px) / 2)!important;
    flex-basis:calc((100% - 18px) / 2)!important;
  }
  #partners .partner-card{
    flex-basis:205px!important;
    width:205px!important;
    min-width:205px!important;
  }
}

@media(max-width:600px){
  #artistas .artist-grid{gap:18px!important;padding-bottom:12px!important;}
  #artistas .artist-card{
    width:92vw!important;
    min-width:92vw!important;
    max-width:92vw!important;
    flex-basis:92vw!important;
  }
  #partners .partner-card{
    flex-basis:205px!important;
    width:205px!important;
    min-width:205px!important;
  }
}

@media(prefers-reduced-motion:reduce){
  #artistas .artist-grid,
  #partners .carousel-shell{scroll-behavior:auto!important;}
}

/* =========================================================
   V39 — LOOP INFINITO OPTIMIZADO
   Transform3D + CSS animation: movimiento continuo sin scrollLeft
   ni requestAnimationFrame. Solo se pausa al pasar sobre una imagen.
========================================================= */
.orm-perpetual-viewport{
  overflow:hidden!important;
  position:relative!important;
}
.orm-perpetual-track{
  --orm-cycle:0px;
  --orm-duration:20s;
  display:flex!important;
  flex-direction:row!important;
  flex-wrap:nowrap!important;
  align-items:stretch!important;
  width:max-content!important;
  max-width:none!important;
  gap:18px!important;
  transform:translate3d(0,0,0);
  will-change:transform;
  backface-visibility:hidden;
  -webkit-backface-visibility:hidden;
  animation:ormPerpetualSlide var(--orm-duration) linear infinite;
  animation-play-state:running;
}
/* El único motivo normal para detener la cinta es interactuar con una tarjeta. */
.orm-perpetual-track.is-visible{animation-play-state:running;}
.orm-perpetual-track.is-hovered{animation-play-state:paused!important;}
.orm-perpetual-track.is-resizing{animation-play-state:running!important;}
@keyframes ormPerpetualSlide{
  from{transform:translate3d(0,0,0);}
  to{transform:translate3d(calc(-1 * var(--orm-cycle)),0,0);}
}

/* Bandas y Artistas: una sola tarjeta grande visible por vez en móvil,
   dos en tablet/escritorio según el espacio disponible. */
#artistas .orm-perpetual-track .artist-card{
  flex:0 0 auto!important;
  min-height:0!important;
  height:auto!important;
}
#artistas .orm-perpetual-track .artist-card-link,
#artistas .orm-perpetual-track .artist-card-link>img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  aspect-ratio:1 / 1!important;
}
#artistas .orm-perpetual-track .artist-card-link>img{object-fit:cover!important;}

/* Partners: cinta continua en los tres formatos. */
#partners .orm-perpetual-track{
  gap:18px!important;
}
#partners .orm-perpetual-track .partner-card{
  flex:0 0 220px!important;
  width:220px!important;
  min-width:220px!important;
}

@media(max-width:1000px){
  #partners .orm-perpetual-track .partner-card{
    flex-basis:205px!important;
    width:205px!important;
    min-width:205px!important;
  }
}
@media(max-width:600px){
  #artistas .orm-perpetual-track{gap:18px!important;}
  #artistas .orm-perpetual-track .artist-card{
    flex-basis:92vw!important;
    width:92vw!important;
    min-width:92vw!important;
    max-width:92vw!important;
  }
  #partners .orm-perpetual-track{
    gap:14px!important;
  }
  #partners .orm-perpetual-track .partner-card{
    flex-basis:205px!important;
    width:205px!important;
    min-width:205px!important;
  }
}

@media(prefers-reduced-motion:reduce){
  .orm-perpetual-track{
    animation:none!important;
    transform:none!important;
    will-change:auto!important;
  }
}

/* V40 — Galería como slider perpetuo optimizado en todos los formatos */
.gallery-perpetual-viewport{overflow:hidden!important;scroll-behavior:auto!important;padding:2px 0 17px!important}
.gallery-perpetual-viewport>.orm-perpetual-track{display:flex!important;align-items:stretch!important;gap:12px;width:max-content!important;grid-template-columns:none!important;grid-template-rows:none!important;will-change:transform}
.gallery-perpetual-viewport .gallery-item{flex:0 0 clamp(300px,42vw,560px)!important;width:clamp(300px,42vw,560px)!important;height:360px!important;min-height:360px!important;grid-column:auto!important;grid-row:auto!important;background-size:cover;background-position:center;border-radius:18px;position:relative;overflow:hidden;box-sizing:border-box}
.gallery-perpetual-viewport .gallery-item span{position:relative;z-index:2;text-shadow:0 2px 12px rgba(0,0,0,.55)}
.gallery-perpetual-viewport .gallery-item::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.02) 35%,rgba(0,0,0,.62) 100%);pointer-events:none}
@media(max-width:1000px){.gallery-perpetual-viewport .gallery-item{flex-basis:72vw!important;width:72vw!important;height:330px!important;min-height:330px!important}}
@media(max-width:560px){.gallery-perpetual-viewport{padding-bottom:10px!important}.gallery-perpetual-viewport .gallery-item{flex-basis:88vw!important;width:88vw!important;height:300px!important;min-height:300px!important}}



/* =========================================================
   V54 — LIMPIEZA + FLUJO ESTRUCTURAL DE GALERÍA
   - Se elimina el CSS histórico de V35 y los parches V50-V53.
   - La Galería perpetua deja de heredar la cuadrícula 3x2/2x3
     de .gallery-grid. Esa cuadrícula dejaba filas vacías debajo
     del carrusel y generaba el espacio crema antes del footer.
   - Se conserva el diseño, las tarjetas y la animación perpetua.
   ========================================================= */
.gallery-perpetual-viewport{
  display:block!important;
  grid-template-columns:none!important;
  grid-template-rows:none!important;
  grid-auto-rows:auto!important;
  gap:0!important;
  overflow:hidden!important;
  padding-bottom:0!important;
  margin-bottom:0!important;
}
.gallery-perpetual-viewport>.orm-perpetual-track{
  display:flex!important;
  width:max-content!important;
  min-height:0!important;
  height:auto!important;
  grid-template-columns:none!important;
  grid-template-rows:none!important;
}
#galeria{
  padding-bottom:0!important;
  margin-bottom:0!important;
}
#galeria + .site-footer{
  margin-top:0!important;
}

/* En móvil/tableta el Hero conserva su composición, pero no puede
   arrastrar una altura residual desde elementos internos. */
@media(max-width:1000px){
  body.home .hero{
    height:auto!important;
    min-height:0!important;
  }
  body.home .hero-news-slider,
  body.home .hero-news-track{
    box-sizing:border-box;
  }
}
@media(max-width:600px){
  body.home .hero{
    min-height:0!important;
  }
  body.home .hero-news-slider{
    min-height:305px!important;
  }
  body.home .hero-news-track{
    height:305px!important;
  }
}

/* V55 — separación armónica entre Galería y menú inferior.
   No se altera el contenido interno de la Galería ni el footer;
   únicamente se recupera un pequeño respiro visual en tablet/móvil. */
@media (min-width:601px) and (max-width:1000px){
  body.home #galeria{
    margin-bottom:34px!important;
  }
  body.home #galeria + .site-footer{
    margin-top:0!important;
  }
}
@media(max-width:600px){
  body.home #galeria{
    margin-bottom:26px!important;
  }
  body.home #galeria + .site-footer{
    margin-top:0!important;
  }
}

/* V56 — Espacio armónico entre Galería y menú inferior.
   Único cambio de esta versión. Se conserva el carrusel y el contenido de Galería. */
@media (max-width:600px){
  body.home #galeria + .site-footer{
    margin-top:26px!important;
  }
}
@media (min-width:601px) and (max-width:1000px){
  body.home #galeria + .site-footer{
    margin-top:34px!important;
  }
}
@media (min-width:1001px){
  body.home #galeria + .site-footer{
    margin-top:30px!important;
  }
}

/* V56.1 — separación real al final del Home.
   El footer está fuera de <main>, por lo que #galeria + .site-footer
   no puede crear separación. Se aplica el espacio al cierre de main
   para que sea visible sin alterar el carrusel ni el contenido. */
@media (max-width:600px){
  body.home main{padding-bottom:26px!important;}
}
@media (min-width:601px) and (max-width:1000px){
  body.home main{padding-bottom:34px!important;}
}
@media (min-width:1001px){
  body.home main{padding-bottom:30px!important;}
}

/* V56.2 — Últimas publicaciones dentro de publicaciones.
   La tarjeta completa, su enlace, el marco de imagen y la miniatura
   comparten exactamente el mismo ancho. La imagen conserva una
   proporción cuadrada para evitar el bloque vacío lateral observado
   en el feed infinito. */
.orm-infinite-grid .card{
  width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
}
.orm-infinite-grid .card-img-link{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  box-sizing:border-box!important;
}
.orm-infinite-grid .card-img{
  width:100%!important;
  height:auto!important;
  aspect-ratio:1 / 1!important;
  box-sizing:border-box!important;
  display:block!important;
}
.orm-infinite-grid .card-img img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  object-fit:cover!important;
  object-position:center!important;
  margin:0!important;
  box-sizing:border-box!important;
}

/* V58 — Editor/navegación editorial y One Page Nosotros. Se conserva el diseño base. */
.orm-onepage-section{scroll-margin-top:90px;padding-top:18px;}
.orm-onepage-section .section-head{margin-bottom:28px;}
.orm-nosotros-onepage{position:relative;max-width:1120px;margin:0 auto;padding:12px 0 30px;}
.orm-about-section{scroll-margin-top:90px;padding:34px 0;}
.orm-about-card{position:relative;overflow:hidden;padding:54px clamp(22px,5vw,72px);border-radius:32px;background:linear-gradient(135deg,rgba(7,85,45,.98),rgba(19,138,61,.92));color:#fff;box-shadow:0 24px 60px rgba(7,7,7,.12);}
.orm-about-section:nth-child(even) .orm-about-card{background:linear-gradient(135deg,rgba(7,7,7,.97),rgba(7,85,45,.96));}
.orm-about-card:before{content:"";position:absolute;inset:auto -80px -100px auto;width:260px;height:260px;border-radius:50%;background:rgba(247,197,0,.14);filter:blur(2px);}
.orm-about-card h2{position:relative;margin:8px 0 14px;font-size:clamp(34px,5vw,64px);line-height:.98;color:var(--yellow);}
.orm-about-card .eyebrow,.orm-about-card .lead,.orm-about-card .static-content{position:relative;}
.orm-about-card .static-content{max-width:850px;color:rgba(255,255,255,.9);font-size:18px;line-height:1.8;}
.orm-about-card .lead{color:rgba(255,255,255,.78);max-width:800px;}
.orm-policy-grid{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:30px;}
.orm-policy-card{display:flex;min-height:112px;flex-direction:column;justify-content:space-between;padding:20px;border-radius:18px;text-decoration:none;background:rgba(247,243,223,.96);color:var(--green-dark);border:1px solid rgba(247,197,0,.42);transition:transform .25s ease,box-shadow .25s ease,background .25s ease;}
.orm-policy-card:hover{transform:translateY(-5px) rotate(-.4deg);box-shadow:0 15px 35px rgba(0,0,0,.15);background:#fff;}
.orm-policy-card strong{font-size:17px;line-height:1.2;}
.orm-policy-card span{font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.12em;color:var(--red);}
.orm-subpage-note{position:relative;margin:18px 0 0;font-size:12px;opacity:.72;}
.orm-policy-page{padding:12px 0 50px;}
.orm-policy-hero{padding:55px clamp(22px,5vw,72px);border-radius:30px;background:linear-gradient(135deg,#070707,#07552D);color:#fff;box-shadow:0 22px 55px rgba(7,7,7,.13);}
.orm-policy-hero h2{color:var(--yellow);font-size:clamp(38px,6vw,70px);margin:10px 0;line-height:1;}
.orm-policy-page .orm-policy-grid{max-width:1000px;margin:28px auto;}
@media(max-width:800px){.orm-policy-grid{grid-template-columns:1fr 1fr}.orm-about-card{padding:38px 24px;border-radius:24px;}.orm-about-card .static-content{font-size:16px;}}
@media(max-width:560px){.orm-policy-grid{grid-template-columns:1fr}.orm-about-section{padding:22px 0}.orm-about-card{padding:32px 20px}.orm-about-card h2{font-size:38px;}}
/* V58 — One Page Nosotros y anclas editoriales. */
.orm-onepage-section{scroll-margin-top:90px;padding-top:18px;}
.orm-onepage-section .section-head{margin-bottom:28px;}
.orm-nosotros-onepage{position:relative;max-width:1120px;margin:0 auto;padding:12px 0 30px;}
.orm-about-section{scroll-margin-top:90px;padding:34px 0;}
.orm-about-card{position:relative;overflow:hidden;padding:54px clamp(22px,5vw,72px);border-radius:32px;background:linear-gradient(135deg,rgba(7,85,45,.98),rgba(19,138,61,.92));color:#fff;box-shadow:0 24px 60px rgba(7,7,7,.12);}
.orm-about-section:nth-child(even) .orm-about-card{background:linear-gradient(135deg,rgba(7,7,7,.97),rgba(7,85,45,.96));}
.orm-about-card:before{content:"";position:absolute;inset:auto -80px -100px auto;width:260px;height:260px;border-radius:50%;background:rgba(247,197,0,.14);filter:blur(2px);}
.orm-about-card h2{position:relative;margin:8px 0 14px;font-size:clamp(34px,5vw,64px);line-height:.98;color:var(--yellow);}
.orm-about-card .eyebrow,.orm-about-card .lead,.orm-about-card .static-content{position:relative;}
.orm-about-card .static-content{max-width:850px;color:rgba(255,255,255,.9);font-size:18px;line-height:1.8;}
.orm-about-card .lead{color:rgba(255,255,255,.78);max-width:800px;}
.orm-policy-grid{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:30px;}
.orm-policy-card{display:flex;min-height:112px;flex-direction:column;justify-content:space-between;padding:20px;border-radius:18px;text-decoration:none;background:rgba(247,243,223,.96);color:var(--green-dark);border:1px solid rgba(247,197,0,.42);transition:transform .25s ease,box-shadow .25s ease,background .25s ease;}
.orm-policy-card:hover{transform:translateY(-5px) rotate(-.4deg);box-shadow:0 15px 35px rgba(0,0,0,.15);background:#fff;}
.orm-policy-card strong{font-size:17px;line-height:1.2;}
.orm-policy-card span{font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.12em;color:var(--red);}
.orm-subpage-note{position:relative;margin:18px 0 0;font-size:12px;opacity:.72;}
.orm-policy-page{padding:12px 0 50px;}
.orm-policy-hero{padding:55px clamp(22px,5vw,72px);border-radius:30px;background:linear-gradient(135deg,#070707,#07552D);color:#fff;box-shadow:0 22px 55px rgba(7,7,7,.13);}
.orm-policy-hero h2{color:var(--yellow);font-size:clamp(38px,6vw,70px);margin:10px 0;line-height:1;}
.orm-policy-page .orm-policy-grid{max-width:1000px;margin:28px auto;}
@media(max-width:800px){.orm-policy-grid{grid-template-columns:1fr 1fr}.orm-about-card{padding:38px 24px;border-radius:24px;}.orm-about-card .static-content{font-size:16px;}}
@media(max-width:560px){.orm-policy-grid{grid-template-columns:1fr}.orm-about-section{padding:22px 0}.orm-about-card{padding:32px 20px}.orm-about-card h2{font-size:38px;}}

/* V61 — One Page Términos y políticas: secciones internas en una sola página. */
.orm-policy-page{scroll-margin-top:90px;padding:18px 0 70px;}
.orm-policy-hero{position:relative;overflow:hidden;padding:64px clamp(24px,6vw,86px);border-radius:34px;background:linear-gradient(135deg,#070707 0%,#07552D 58%,#138A3D 100%);color:#fff;box-shadow:0 24px 60px rgba(7,7,7,.14);}
.orm-policy-hero:after{content:"";position:absolute;width:260px;height:260px;right:-90px;bottom:-130px;border-radius:50%;background:rgba(247,197,0,.16);filter:blur(3px);}
.orm-policy-hero h1{position:relative;z-index:1;color:var(--yellow);font-size:clamp(42px,7vw,78px);line-height:.96;margin:10px 0 16px;}
.orm-policy-hero .lead{position:relative;z-index:1;max-width:820px;color:rgba(255,255,255,.82);}
.orm-policy-sections{display:flex;flex-direction:column;gap:24px;margin-top:28px;}
.orm-policy-section{scroll-margin-top:105px;position:relative;padding:44px clamp(22px,5vw,64px);border-radius:28px;background:#fff;border:1px solid rgba(7,7,7,.08);box-shadow:0 16px 40px rgba(7,7,7,.08);}
.orm-policy-section:nth-child(even){background:linear-gradient(135deg,#f7f3df,#fff);}
.orm-policy-section:before{content:"";position:absolute;left:0;top:28px;bottom:28px;width:5px;border-radius:8px;background:linear-gradient(var(--red),var(--yellow),var(--green));}
.orm-policy-section h2{font-size:clamp(30px,4vw,52px);line-height:1;margin:8px 0 14px;color:var(--green-dark);}
.orm-policy-section .static-content{max-width:900px;color:#30352f;font-size:17px;line-height:1.85;}
.orm-policy-section .lead{max-width:850px;color:var(--muted);}
.orm-policy-more{text-align:center;margin-top:22px;}
@media(max-width:700px){.orm-policy-hero{padding:42px 22px;border-radius:24px}.orm-policy-section{padding:34px 22px}.orm-policy-section:before{top:20px;bottom:20px}.orm-policy-section .static-content{font-size:16px;line-height:1.7;}}

/* ========================= V62.1 — ACCESIBILIDAD Y PAGINACIÓN ========================= */
.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;width:1px;word-wrap:normal!important}
.skip-link.screen-reader-text:focus{clip:auto;clip-path:none;height:auto;width:auto;margin:0;overflow:visible;position:fixed!important;left:12px;top:12px;z-index:1000001;padding:12px 18px;background:var(--yellow);color:var(--ink);font-weight:900;border-radius:999px;text-decoration:none}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--green);outline-offset:3px}
.dark-section a:focus-visible,.site-footer a:focus-visible,.oyr-floating-player :focus-visible{outline-color:var(--yellow)}
.orm-search-compact input[type=search]:focus-visible{outline:3px solid var(--green);outline-offset:2px}
.navigation.pagination{margin:40px 0 10px}.navigation.pagination .nav-links{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.navigation.pagination .page-numbers{display:inline-block;padding:10px 16px;border-radius:999px;background:#fff;border:1px solid rgba(7,7,7,.12);text-decoration:none;font-weight:800}.navigation.pagination .page-numbers.current,.navigation.pagination a.page-numbers:hover{background:var(--green);color:#fff;border-color:var(--green)}

/* ========================= V63 — MOTOR EDITORIAL ========================= */
.orm-slider{overflow-x:auto;padding:2px 0 14px;scroll-snap-type:x proximity}
.orm-slider-track{display:flex;gap:18px;width:max-content}
.orm-slider-track>*{flex:0 0 clamp(240px,26vw,330px);scroll-snap-align:start}
.orm-slider.is-running{overflow:hidden;scroll-snap-type:none}
.orm-slider.is-running .orm-slider-track{animation:ormSlide var(--orm-dur,30s) linear infinite;will-change:transform}
.orm-slider.is-reverse.is-running .orm-slider-track{animation-direction:reverse}
.orm-slider.is-running:hover .orm-slider-track,.orm-slider.is-running:focus-within .orm-slider-track{animation-play-state:paused}
@keyframes ormSlide{from{transform:translate3d(0,0,0)}to{transform:translate3d(var(--orm-cycle,-100%),0,0)}}
@media(prefers-reduced-motion:reduce){.orm-slider.is-running .orm-slider-track{animation:none}}
.orm-country-hero{display:flex;gap:26px;align-items:center;margin:0 0 36px}.orm-country-hero img{width:130px;height:auto;border-radius:14px;box-shadow:0 8px 24px var(--shadow)}.orm-country-hero .lead{margin:0 0 14px}


/* V64 — MURAL REGGAE: slider horizontal en escritorio/tablet,
   listado vertical sin movimiento automático en móvil. */
@media (min-width:601px){
  #mural .carousel-shell{
    overflow:hidden!important;
    overflow-x:hidden!important;
    scroll-snap-type:none!important;
    padding-bottom:17px;
  }
  #mural .orm-perpetual-track .carousel-card{
    width:clamp(260px,42vw,560px)!important;
    min-width:clamp(260px,42vw,560px)!important;
    max-width:none!important;
    flex:0 0 clamp(260px,42vw,560px)!important;
    scroll-snap-align:none!important;
  }
}
@media (max-width:600px){
  #mural .carousel-shell{
    overflow:visible!important;
    overflow-x:visible!important;
    overflow-y:visible!important;
    scroll-snap-type:none!important;
  }
  #mural .carousel-track{
    display:flex!important;
    flex-direction:column!important;
    flex-wrap:nowrap!important;
    width:100%!important;
    max-width:100%!important;
    transform:none!important;
    animation:none!important;
  }
  #mural .carousel-card{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    flex:0 0 auto!important;
  }
}

/* ========================= V77 — MURAL REGGAE POR SECCIONES ========================= */
/* Últimas publicaciones: grid responsive; categorías editoriales: sliders. */
#ultimas-publicaciones .page-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
@media(max-width:1000px){#ultimas-publicaciones .page-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:560px){#ultimas-publicaciones .page-grid{grid-template-columns:1fr;}}
