/*
Theme Name: FM Vida On Air
Theme URI: https://fmvidachajari.com.ar/
Author: Promix Media
Description: Tema moderno para FM Vida Chajarí 103.9, compatible con Elementor, con reproductor de radio y espacios comerciales.
Version: 1.7.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: fmvida-onair
*/
:root{--bg:#0e111a;--panel:#1b2030;--pink:#f33279;--text:#f8f9fc;--muted:#aab2c3}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}a:hover{color:#ff8cb4}.container{max-width:1180px;margin:auto;padding:0 22px}.site-header{background:#101521;border-bottom:1px solid #293044;position:relative;z-index:3}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:85px}.brand{display:flex;align-items:center;gap:13px}.brand-mark{width:50px;height:50px;border-radius:14px;background:var(--pink);display:grid;place-items:center;font-weight:900;font-size:22px}.brand-name{font-weight:900;font-size:21px;letter-spacing:.3px}.brand-sub{font-size:12px;color:var(--muted)}.nav{display:flex;gap:24px;align-items:center;font-weight:700;font-size:14px}.nav ul{display:flex;gap:22px;list-style:none;margin:0;padding:0}.btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:12px;padding:13px 20px;background:var(--pink);color:white;font-weight:800;cursor:pointer}.btn:hover{background:#d91f64;color:white}.btn-outline{background:transparent;border:1px solid #566078}.hero{padding:62px 0 34px;background:radial-gradient(ellipse at 75% 15%,#4a1b42 0,transparent 50%),linear-gradient(140deg,#101522,#16182b)}.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:40px;align-items:center}.eyebrow{color:#ff77aa;font-size:13px;letter-spacing:2px;font-weight:900}.hero h1{font-size:clamp(48px,8vw,104px);line-height:.94;letter-spacing:-4px;margin:15px 0 22px}.hero h1 span{color:var(--pink)}.hero p{font-size:19px;line-height:1.6;color:#c4cada;max-width:560px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.radio-card{background:#1a2031;border:1px solid #394055;border-radius:25px;padding:28px;box-shadow:0 24px 70px #0006}.radio-top{display:flex;align-items:center;justify-content:space-between}.live{display:inline-flex;gap:7px;align-items:center;color:#fff;background:#e72b66;padding:8px 12px;border-radius:99px;font-size:11px;font-weight:900}.live-dot{width:8px;height:8px;background:#fff;border-radius:50%}.radio-logo{font-weight:900;font-size:38px;line-height:1;margin:45px 0 7px}.radio-sub{color:#b3bdd0}.player-row{display:flex;align-items:center;gap:20px;margin-top:28px}.play-btn{width:70px;height:70px;border:0;border-radius:50%;background:var(--pink);color:white;font-size:26px;cursor:pointer;flex-shrink:0}.player-info{flex:1}.player-info strong{display:block;margin-bottom:6px}.player-info small{color:var(--muted)}.player-volume{width:100%;accent-color:var(--pink);margin-top:22px}.player-status{font-size:12px;color:#b4bfd1;min-height:20px;margin-top:12px}.wave{display:flex;align-items:center;gap:4px;height:36px;margin-top:18px}.wave i{display:block;flex:1;background:#ee3878;border-radius:5px;opacity:.9}.section{padding:65px 0}.section h2{font-size:clamp(29px,4vw,46px);letter-spacing:-1px;margin:0 0 13px}.section-lead{color:var(--muted);font-size:17px;margin-bottom:28px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{background:var(--panel);border:1px solid #30384b;border-radius:18px;padding:28px}.card h3{font-size:21px;margin:0 0 10px}.card p{color:#b7bfce;line-height:1.6}.card-icon{font-size:34px;margin-bottom:20px}.ad-banner{border:1px dashed #697188;background:#1b2130;border-radius:20px;padding:40px 25px;text-align:center}.ad-banner small{display:block;color:#b3bbcb;letter-spacing:2px;font-weight:800}.ad-banner h3{font-size:29px;margin:15px 0}.cta{background:linear-gradient(120deg,#3c1b38,#1c2033);border-radius:24px;padding:48px;display:flex;align-items:center;justify-content:space-between;gap:24px}.cta p{color:#c7c9d5}.site-footer{background:#090c14;border-top:1px solid #252b3a;padding:38px 0;color:#b8c0cf}.footer-inner{display:flex;justify-content:space-between;gap:25px;flex-wrap:wrap}.page-content{min-height:45vh;padding:55px 0}.page-content a{color:#ff75a6}.wp-block-image img{max-width:100%;height:auto}.elementor-page .page-content{padding:0}.screen-reader-text{position:absolute;left:-9999px}.menu-toggle{display:none}.notice{color:#e8b5c8;font-size:12px;margin-top:12px}@media(max-width:800px){.hero-grid{grid-template-columns:1fr}.hero{padding-top:40px}.hero h1{letter-spacing:-2px}.cards{grid-template-columns:1fr}.nav{display:none}.nav.open{display:flex;position:absolute;top:85px;left:0;right:0;background:#111624;padding:20px}.nav ul{flex-direction:column}.menu-toggle{display:block;background:transparent;color:white;border:1px solid #596177;padding:10px 13px;border-radius:8px}.cta{display:block;padding:30px}.cta .btn{margin-top:15px}.radio-logo{margin-top:28px}.section{padding:45px 0}}

.fmvida-elementor-home{width:100%;max-width:none;min-height:50vh}.fmvida-elementor-home .elementor{width:100%}.fmvida-elementor-home .elementor-section-wrap{width:100%}

/* Home construida con widgets nativos de Elementor, editables por separado. */
.fmvida-elementor-home .elementor-section>.elementor-container{max-width:1180px;margin:auto;padding:0 22px;display:flex;gap:22px}
.fmvida-elementor-home .elementor-column{min-width:0}
.fmvida-elementor-home .elementor-widget-heading .elementor-heading-title{color:#f8f9fc;font-family:Arial,Helvetica,sans-serif;font-weight:900}
.fmvida-elementor-home .elementor-widget-text-editor{color:#b9c1d0;font-size:17px;line-height:1.65}
.fmvida-elementor-home .elementor-widget-button .elementor-button{background:#f33279;color:white;border-radius:12px;font-weight:800;padding:14px 21px}
.fmvida-elementor-home .elementor-widget-button .elementor-button:hover{background:#d91f64}
.fm-hero-section{background:radial-gradient(ellipse at 75% 15%,#4a1b42 0,transparent 50%),linear-gradient(140deg,#101522,#16182b);padding:65px 0 48px}
.fm-hero-section>.elementor-container{align-items:center}
.fm-hero-title .elementor-heading-title{font-size:clamp(52px,7vw,100px)!important;line-height:.96;letter-spacing:-3px}
.fm-hero-title span{color:#f33279}
.fm-eyebrow{color:#ff77aa!important;letter-spacing:2px;font-size:12px!important;font-weight:900}
.fm-lead{font-size:20px!important;max-width:550px}
.fm-section-head{padding:70px 0 18px}
.fm-section-head .elementor-heading-title,.fm-news-section .elementor-heading-title{font-size:clamp(30px,4vw,46px)!important}
.fm-features-section{padding:10px 0 65px}
.fm-features-section .fm-feature>.elementor-widget-wrap{padding:26px!important;background:#1b2030;border:1px solid #30384b;border-radius:18px;height:100%}
.fm-features-section .elementor-heading-title{font-size:22px!important}
.fm-ad-section{padding:18px 0 70px;text-align:center}
.fm-ad-section>.elementor-container{border:1px dashed #697188;border-radius:20px;background:#1b2130;padding:35px!important}
.fm-ad-section .elementor-heading-title{font-size:32px!important}
.fm-cta-section{padding:55px 0;background:linear-gradient(120deg,#3c1b38,#1c2033)}
.fm-cta-section>.elementor-container{align-items:center}
.fm-cta-section .elementor-heading-title{font-size:40px!important}
.fm-news-section{padding:65px 0}
.fm-contact-section{padding:50px 0;background:#151a28}
.fm-contact-section .elementor-heading-title{font-size:30px!important}
.site-header .custom-logo{width:auto;max-width:150px;max-height:65px;object-fit:contain}
.fmvida-elementor-home .radio-card{width:100%}
@media(max-width:767px){.fmvida-elementor-home .elementor-section>.elementor-container{display:block;padding:0 18px}.fm-hero-section{padding:40px 0}.fm-hero-title .elementor-heading-title{font-size:55px!important}.fm-hero-section .fm-player-column{margin-top:25px}.fm-features-section .fm-feature{margin-bottom:14px}.fm-cta-section .elementor-column{margin-bottom:20px}}

/* Carrusel publicitario FM Vida */
.fm-carousel-section{padding:52px 0 66px;background:#111827}
.fm-carousel-section>.elementor-container{max-width:1180px;margin:auto;padding:0 20px}
.fm-carousel-section .elementor-heading-title{font-size:clamp(26px,3.5vw,40px)!important;margin-bottom:20px}
.fmvida-carousel{position:relative;width:100%;border-radius:20px;overflow:hidden;background:#202841;box-shadow:0 16px 38px rgba(0,0,0,.25)}
.fmvida-carousel-viewport{position:relative;aspect-ratio:3 / 1;min-height:220px}
.fmvida-carousel-slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .5s ease,visibility .5s;overflow:hidden}
.fmvida-carousel-slide.is-active{opacity:1;visibility:visible;z-index:1}
.fmvida-carousel-click{display:block;width:100%;height:100%;color:inherit;text-decoration:none}
.fmvida-carousel-slide img{width:100%;height:100%;display:block;object-fit:cover}
.fmvida-carousel-placeholder{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;background:radial-gradient(circle at 70% 30%,#623c79,transparent 48%),linear-gradient(125deg,#1c285f,#24234c 60%,#8c1d76);color:white}
.fmvida-carousel-placeholder span{font-size:clamp(34px,6vw,72px);font-weight:900;letter-spacing:-2px}.fmvida-carousel-placeholder b{color:#ff66af}.fmvida-carousel-placeholder small{letter-spacing:3px;font-weight:700}
.fmvida-carousel-copy{position:absolute;left:0;right:0;bottom:0;padding:36px 70px 24px;background:linear-gradient(transparent,rgba(0,0,0,.75));color:#fff;display:flex;flex-direction:column;gap:5px}
.fmvida-carousel-copy strong{font-size:clamp(20px,3vw,32px)}.fmvida-carousel-copy span{font-size:15px}
.fmvida-carousel-prev,.fmvida-carousel-next{position:absolute;top:50%;z-index:3;transform:translateY(-50%);width:38px;height:38px;border:0;border-radius:50%;background:rgba(10,15,35,.7);color:#fff;cursor:pointer;font-size:18px}
.fmvida-carousel-prev{left:14px}.fmvida-carousel-next{right:14px}.fmvida-carousel-prev:hover,.fmvida-carousel-next:hover{background:#c41b88}
.fmvida-carousel-dots{position:absolute;bottom:12px;left:50%;transform:translateX(-50%);z-index:4;display:flex;gap:8px}
.fmvida-carousel-dots button{width:9px;height:9px;padding:0;border:0;border-radius:50%;background:#ffffff88;cursor:pointer}.fmvida-carousel-dots button.is-active{background:#ff4aa4;width:25px;border-radius:9px}
@media(max-width:767px){.fmvida-carousel-viewport{aspect-ratio:1.7 / 1;min-height:195px}.fmvida-carousel-copy{padding:35px 48px 25px}.fmvida-carousel-copy span{display:none}.fmvida-carousel-prev,.fmvida-carousel-next{width:30px;height:30px}.fmvida-carousel-prev{left:8px}.fmvida-carousel-next{right:8px}}
@media(prefers-reduced-motion:reduce){.fmvida-carousel-slide{transition:none}}

/* Navegación anclada y nuevas secciones */
html{scroll-behavior:smooth} .site-header{position:sticky;top:0;z-index:9999;box-shadow:0 8px 28px #0004}body.admin-bar .site-header{top:32px} .elementor-section[id],#escuchanos{scroll-margin-top:105px}
.fm-video-section,.fm-ranking-section{padding:55px 0;background:#131827}.fm-ranking-section{background:#101521}.fm-video-section .elementor-heading-title,.fm-ranking-section .elementor-heading-title{font-size:clamp(30px,4vw,48px)!important}.fm-youtube-wrap{position:relative;aspect-ratio:16/9;width:100%;max-width:1020px;margin:22px auto;overflow:hidden;border-radius:20px;border:1px solid #414761;background:#080a10}.fm-youtube-wrap iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.fm-youtube-note{text-align:center}.fm-youtube-note a,.fm-ranking-credit a{color:#ff76ad}.fm-ranking{max-width:1000px;margin:24px auto}.fm-rank-item{display:flex;gap:18px;align-items:center;background:#1d2436;border:1px solid #303c54;padding:14px 18px;margin:8px 0;border-radius:12px}.fm-rank-num{font-size:22px;font-weight:900;color:#ff66a1;min-width:45px}.fm-rank-song{font-size:16px;font-weight:700}.fm-ranking-credit{font-size:12px;color:#adb8ce;margin-top:15px}.nav a{white-space:nowrap}.nav ul{gap:14px}.nav{font-size:12px}@media(max-width:800px){body.admin-bar .site-header{top:46px}.nav.open{display:flex;flex-direction:column;z-index:999}.nav.open ul{width:100%;gap:0}.nav.open a{display:block;padding:13px 8px;border-bottom:1px solid #30384b}}
