:root {
 --ff-bg:#050509;
 --ff-bg2:#090D16;
 --ff-card:rgba(255,255,255,.065);
 --ff-card2:rgba(255,255,255,.09);
 --ff-border:rgba(255,255,255,.105);
 --ff-text:#F8FAFC;
 --ff-text2:#CBD5E1;
 --ff-text3:#94A3B8;
 --accent:#00B7FF;
 --accent2:#0078FF;
 --accent3:#FF7A1A;
 --page-bg:#050509;
 --safe-bottom:108px;
}

*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--ff-bg);color:var(--ff-text);font-family:Arial,Helvetica,sans-serif;overflow-x:hidden;scroll-behavior:smooth}
body{background:radial-gradient(circle at top left,color-mix(in srgb,var(--accent) 16%,transparent),transparent 32%),radial-gradient(circle at top right,color-mix(in srgb,var(--accent3) 14%,transparent),transparent 34%),linear-gradient(180deg,var(--ff-bg) 0%,var(--ff-bg2) 52%,var(--ff-bg) 100%);padding-bottom:var(--safe-bottom)}
a{color:inherit}
img{max-width:100%;display:block}
button,input,textarea,select{font:inherit}
:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 70%,white 30%);outline-offset:4px}
.skip-link{position:absolute;left:-999px;top:12px;z-index:2000;padding:12px 16px;border-radius:999px;background:var(--accent);color:#fff;font-weight:900;text-decoration:none}
.skip-link:focus{left:12px}

.site-header{position:sticky;top:0;z-index:1000;background:rgba(5,5,9,.86);border-bottom:1px solid var(--ff-border);backdrop-filter:blur(13px)}
.nav-wrap{max-width:1260px;margin:0 auto;padding:12px 18px;display:flex;align-items:center;gap:16px}
.logo{display:inline-flex;align-items:center;gap:10px;text-decoration:none;min-width:max-content}
.logo img{width:52px;height:52px;border-radius:14px;object-fit:cover;box-shadow:0 8px 22px rgba(0,0,0,.28)}
.logo strong{display:block;font-size:19px;letter-spacing:-.4px;line-height:1}
.logo span span{display:block;margin-top:2px;color:var(--ff-text3);font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:1px}

.brand-inline{display:inline-flex;align-items:center;gap:8px;vertical-align:middle;white-space:nowrap}
.brand-inline img{width:1.55em;height:1.55em;border-radius:10px;object-fit:cover;box-shadow:0 6px 16px rgba(0,0,0,.28);flex:0 0 auto}
.brand-inline--small img{width:1.28em;height:1.28em;border-radius:8px}
.brand-inline span{display:inline-block}
.btn .brand-inline,.station-link .brand-inline,.gp-title .brand-inline,.gp-status .brand-inline{gap:6px}
.btn .brand-inline img,.station-link .brand-inline img{width:1.2em;height:1.2em;border-radius:8px}
.hero h1 .brand-inline img,.player-title .brand-inline img{width:1.35em;height:1.35em}
.footer-links .brand-inline img,.site-footer .brand-inline img{width:1.15em;height:1.15em}
.menu-toggle{display:none;margin-left:auto;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:rgba(255,255,255,.07);color:var(--ff-text);padding:10px 14px;font-weight:900;cursor:pointer}
.main-nav{margin-left:auto;display:flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.main-nav a{padding:9px 11px;border-radius:999px;color:var(--ff-text2);text-decoration:none;font-size:13px;font-weight:900;transition:.2s ease}
.main-nav a:hover,.main-nav a.active{background:linear-gradient(135deg,var(--accent2),var(--accent));color:#fff;transform:translateY(-1px)}

.hero{position:relative;overflow:hidden;padding:72px 22px 80px;text-align:center;background:radial-gradient(circle at top left,color-mix(in srgb,var(--accent) 30%,transparent),transparent 32%),radial-gradient(circle at top right,color-mix(in srgb,var(--accent3) 26%,transparent),transparent 35%),radial-gradient(circle at bottom center,color-mix(in srgb,var(--accent2) 15%,transparent),transparent 42%),linear-gradient(135deg,var(--page-bg) 0%,#080B12 46%,#16051f 78%,var(--page-bg) 100%)}
.hero::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.56;background:radial-gradient(circle at 20% 26%,rgba(255,255,255,.08),transparent 2px),radial-gradient(circle at 72% 30%,rgba(255,255,255,.07),transparent 2px),radial-gradient(circle at 48% 78%,rgba(255,255,255,.06),transparent 2px),linear-gradient(180deg,rgba(255,255,255,.035),transparent 58%);background-size:140px 140px,190px 190px,230px 230px,100% 100%}
.hero>*{position:relative;z-index:2}
.badge{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;margin-bottom:26px;border:1px solid color-mix(in srgb,var(--accent) 68%,white 10%);border-radius:999px;color:color-mix(in srgb,var(--accent) 78%,white 22%);font-size:13px;font-weight:900;letter-spacing:1.5px;text-transform:uppercase;background:color-mix(in srgb,var(--accent) 10%,transparent);box-shadow:inset 0 0 12px rgba(255,255,255,.04),0 0 24px color-mix(in srgb,var(--accent) 20%,transparent)}
.hero h1{margin:0;font-size:clamp(44px,8.6vw,104px);line-height:.94;font-weight:900;text-transform:uppercase;letter-spacing:-3px;text-shadow:0 1px 0 rgba(255,255,255,.12),0 0 34px color-mix(in srgb,var(--accent) 26%,transparent)}
.hero h1 span{color:var(--accent);text-shadow:0 0 10px color-mix(in srgb,var(--accent) 85%,transparent),0 0 34px color-mix(in srgb,var(--accent) 45%,transparent)}
.tagline{max-width:980px;margin:28px auto 18px;color:#fff;font-size:clamp(23px,3.2vw,38px);line-height:1.18;font-weight:900}
.lead{max-width:930px;margin:0 auto 30px;color:var(--ff-text2);font-size:18px;line-height:1.72}
.hero-actions,.section-actions,.share-panel{display:flex;justify-content:center;flex-wrap:wrap;gap:14px;margin:30px auto}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:0;border-radius:999px;padding:16px 28px;color:#fff;background:linear-gradient(135deg,var(--accent2),var(--accent));text-decoration:none;text-transform:uppercase;letter-spacing:.75px;font-size:14px;font-weight:900;cursor:pointer;box-shadow:0 0 22px color-mix(in srgb,var(--accent) 34%,transparent);transition:transform .2s ease,box-shadow .2s ease}
.btn:hover{transform:translateY(-3px);box-shadow:0 0 30px color-mix(in srgb,var(--accent) 46%,transparent)}
.btn.secondary{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.18);box-shadow:none}
.btn.hot{background:linear-gradient(135deg,var(--accent3),#FF4D3D)}

.player-card{max-width:840px;margin:30px auto 0;padding:24px;border-radius:26px;background:radial-gradient(circle at top right,color-mix(in srgb,var(--accent) 16%,transparent),transparent 40%),rgba(0,0,0,.35);border:1px solid rgba(255,255,255,.11);box-shadow:0 24px 70px rgba(0,0,0,.35),inset 0 0 24px rgba(255,255,255,.025)}
.player-title{margin:0 0 8px;font-size:20px;font-weight:900}
.player-desc{margin:0 0 18px;color:var(--ff-text2);font-size:15px;line-height:1.5}
audio{width:100%;display:block}
.now-playing-note{max-width:820px;margin:14px auto 0;color:var(--ff-text3);font-size:13px;line-height:1.45}
.trust-row{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;max-width:980px;margin:28px auto 0}
.trust-item{padding:14px 12px;border-radius:16px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08);font-size:14px;font-weight:900}

.section{padding:76px 22px;text-align:center}
.section.alt{background:radial-gradient(circle at top left,color-mix(in srgb,var(--accent) 12%,transparent),transparent 34%),radial-gradient(circle at bottom right,color-mix(in srgb,var(--accent3) 10%,transparent),transparent 34%),linear-gradient(180deg,rgba(255,255,255,.015),rgba(255,255,255,0))}
.section h2{margin:0 0 18px;font-size:clamp(34px,5.8vw,60px);line-height:1.05;font-weight:900;letter-spacing:-1.6px}
.section h2 span{color:var(--accent);text-shadow:0 0 24px color-mix(in srgb,var(--accent) 38%,transparent)}
.section-intro{max-width:880px;margin:0 auto 42px;color:var(--ff-text2);font-size:18px;line-height:1.65}
.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;max-width:1120px;margin:0 auto}
.feature-card,.station-card,.shop-card,.contact-card,.article-card,.price-card{border-radius:22px;padding:26px 22px;background:radial-gradient(circle at top right,color-mix(in srgb,var(--accent) 12%,transparent),transparent 38%),rgba(255,255,255,.058);border:1px solid rgba(255,255,255,.09);text-align:left;transition:.22s ease}
.feature-card:hover,.station-card:hover,.shop-card:hover,.contact-card:hover,.article-card:hover,.price-card:hover{transform:translateY(-5px);border-color:color-mix(in srgb,var(--accent) 50%,transparent);background:radial-gradient(circle at top right,color-mix(in srgb,var(--accent) 18%,transparent),transparent 38%),rgba(255,255,255,.075)}
.feature-icon,.station-icon{display:block;font-size:40px;margin-bottom:14px}
.feature-card h3,.station-card h3,.shop-card h3,.contact-card h3,.article-card h3,.price-card h3{margin:0 0 10px;color:color-mix(in srgb,var(--accent3) 75%,white 25%);font-size:23px;line-height:1.1;font-weight:900}
.feature-card p,.station-card p,.shop-card p,.contact-card p,.article-card p,.price-card p{margin:0;color:var(--ff-text2);font-size:15.5px;line-height:1.55}
.moment-list{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;max-width:960px;margin:0 auto}
.moment{padding:13px 17px;border-radius:999px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.10);color:var(--ff-text);font-weight:900;font-size:14px}

.stations-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;max-width:1180px;margin:0 auto}
.station-card{min-height:220px;display:flex;flex-direction:column;justify-content:space-between;color:var(--ff-text);text-decoration:none}
.station-card.active{grid-column:span 3;background:radial-gradient(circle at top right,color-mix(in srgb,var(--accent) 25%,transparent),transparent 42%),radial-gradient(circle at bottom left,color-mix(in srgb,var(--accent3) 12%,transparent),transparent 42%),rgba(255,255,255,.075);border-color:color-mix(in srgb,var(--accent) 42%,transparent)}
.station-top{display:flex;align-items:center;gap:14px;margin-bottom:15px}
.station-top .station-icon{margin:0;flex:0 0 auto}
.station-link{display:inline-flex;align-self:flex-start;margin-top:20px;padding:10px 14px;border-radius:999px;color:#fff;background:linear-gradient(135deg,var(--accent2),var(--accent));text-transform:uppercase;font-size:12px;font-weight:900;letter-spacing:.7px}
.cta-box{max-width:980px;margin:0 auto;padding:46px 30px;border-radius:26px;background:radial-gradient(circle at top right,color-mix(in srgb,var(--accent3) 14%,transparent),transparent 36%),rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.10);box-shadow:0 24px 70px rgba(0,0,0,.28)}
.cta-box p{max-width:800px;margin:0 auto 24px;color:var(--ff-text2);font-size:18px;line-height:1.65}
.split-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:18px;max-width:1080px;margin:0 auto}
.price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;max-width:1180px;margin:0 auto}
.price{font-size:36px;font-weight:900;color:var(--accent);margin:12px 0}
.price small{font-size:14px;color:var(--ff-text3)}
.article-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;max-width:1180px;margin:0 auto}
.article-card{text-decoration:none;color:var(--ff-text)}
.legal-text{text-align:left;max-width:960px;margin:0 auto;color:var(--ff-text2);font-size:16px;line-height:1.7}
.legal-text h2{font-size:28px;letter-spacing:-.6px;margin-top:30px}
.legal-text a{color:var(--accent);font-weight:900}
.mini-note{max-width:900px;margin:22px auto 0;color:var(--ff-text3);font-size:12.5px;line-height:1.5}
.copy-message{min-height:20px;margin-top:14px;color:var(--accent3);font-weight:900;font-size:14px}

.site-footer{padding:54px 22px 100px;text-align:center;color:var(--ff-text3);background:rgba(0,0,0,.18);border-top:1px solid rgba(255,255,255,.08)}
.footer-links{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 18px;margin:18px auto}
.footer-links a{color:var(--ff-text2);text-decoration:none;font-size:14px;font-weight:800}
.footer-links a:hover{color:var(--accent)}

.global-player{position:fixed;left:50%;bottom:14px;transform:translateX(-50%);z-index:1200;width:calc(100% - 28px);max-width:1080px;border-radius:999px;background:linear-gradient(135deg,rgba(5,5,9,.96),rgba(9,13,22,.96));border:1px solid rgba(255,255,255,.16);box-shadow:0 18px 54px rgba(0,0,0,.58),0 0 28px color-mix(in srgb,var(--accent) 17%,transparent);display:grid;grid-template-columns:1fr minmax(240px,360px) auto;gap:12px;align-items:center;padding:12px 14px;backdrop-filter:blur(12px)}
.gp-info{min-width:0;text-align:left}
.gp-title{display:block;font-size:14px;font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gp-status{display:block;margin-top:2px;color:var(--ff-text2);font-size:12px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gp-controls{display:flex;align-items:center;gap:8px}
.gp-btn{border:0;border-radius:999px;background:linear-gradient(135deg,var(--accent2),var(--accent));color:#fff;font-weight:900;cursor:pointer;padding:12px 18px;text-transform:uppercase;font-size:13px}
.gp-select{max-width:220px;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:#101827;color:#fff;padding:11px 14px;font-weight:900}
.gp-link{padding:11px 14px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);text-decoration:none;color:#fff;font-size:12px;font-weight:900;text-transform:uppercase}
.back-to-top{position:fixed;left:18px;bottom:18px;z-index:1100;display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:999px;border:1px solid rgba(255,255,255,.16);color:#fff;background:rgba(5,5,9,.82);text-decoration:none;font-weight:900;box-shadow:0 12px 32px rgba(0,0,0,.42);backdrop-filter:blur(8px)}
.floating-whatsapp{position:fixed;right:18px;bottom:18px;z-index:1100;display:flex;align-items:center;gap:9px;padding:12px 16px;border-radius:999px;color:#fff;background:linear-gradient(135deg,#25D366,#128C7E);text-decoration:none;font-size:13px;font-weight:900;box-shadow:0 12px 32px rgba(0,0,0,.45),0 0 24px rgba(37,211,102,.22);border:1px solid rgba(255,255,255,.16)}

@media (prefers-reduced-motion: reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
@media (max-width:980px){
 .menu-toggle{display:inline-flex}
 .nav-wrap{flex-wrap:wrap}
 .main-nav{display:none;width:100%;margin-left:0;padding-top:10px;justify-content:flex-start}
 .main-nav.open{display:flex}
 .main-nav a{background:rgba(255,255,255,.055)}
 .trust-row,.card-grid,.stations-grid,.split-grid,.price-grid,.article-grid{grid-template-columns:1fr}
 .station-card.active{grid-column:span 1}
 .global-player{grid-template-columns:1fr;border-radius:24px}
 .gp-select,.gp-link{display:none}.gp-audio{width:100%;height:38px}
}
@media (max-width:640px){
 :root{--safe-bottom:104px}
 .nav-wrap{padding:10px 14px}.logo img{width:38px;height:38px}.logo strong{font-size:17px}
 .hero{padding:38px 16px 44px}.badge{margin-bottom:18px;padding:8px 13px;font-size:11px;letter-spacing:1.1px}
 .hero h1{font-size:clamp(40px,13vw,62px);letter-spacing:-1.5px}.tagline{margin:18px auto 16px;font-size:22px}.lead{font-size:15.5px;line-height:1.58}
 .btn{width:100%;padding:14px 18px;font-size:13px;text-align:center}.hero-actions,.section-actions,.share-panel{gap:10px}
 .player-card{padding:18px 14px;border-radius:18px}.player-title{font-size:17px}.player-desc{display:none}
 .section{padding:50px 16px}.section h2{font-size:clamp(30px,9vw,42px);letter-spacing:-.8px}.section-intro,.cta-box p{font-size:16px;line-height:1.55}
 .feature-card,.station-card,.shop-card,.contact-card,.article-card,.price-card,.cta-box{padding:24px 18px;border-radius:18px}.station-card{min-height:auto}
 .global-player{bottom:10px;width:calc(100% - 20px);padding:10px 12px}.gp-title{font-size:13px}.gp-status{font-size:11px}.gp-btn{padding:11px 14px;font-size:12px}
 .back-to-top{left:12px;bottom:12px;width:42px;height:42px}.floating-whatsapp{right:12px;bottom:12px;padding:11px 13px;font-size:12px}
 .site-footer{padding-bottom:92px}
}

.gp-audio{width:100%;height:40px;display:block;filter:brightness(1.05)}

@media (max-width:640px){.floating-whatsapp{display:none}.back-to-top{display:none}}


/* Free FM language switcher */
.ff-language-switcher {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 7px;
  margin-left: auto;
  padding: 6px 0;
}

.ff-lang-btn {
  border: 1px solid rgba(255,255,255,.16);
  background: rgba(255,255,255,.055);
  color: #f8fafc;
  border-radius: 999px;
  padding: 7px 10px;
  font-size: 12px;
  font-weight: 900;
  cursor: pointer;
  transition: transform .18s ease, background .18s ease, border-color .18s ease;
}

.ff-lang-btn:hover,
.ff-lang-btn.active {
  transform: translateY(-1px);
  background: linear-gradient(135deg, var(--accent, #00B7FF), var(--accent2, #0078FF));
  border-color: rgba(255,255,255,.35);
  box-shadow: 0 0 16px rgba(0,183,255,.18);
}

@media (max-width: 980px) {
  .ff-language-switcher {
    width: 100%;
    order: 4;
    justify-content: center;
    margin-left: 0;
    padding: 8px 0 2px;
  }
}

@media (max-width: 640px) {
  .ff-lang-btn {
    padding: 6px 8px;
    font-size: 11px;
  }
}


/* Free FM multilingual selector - flag buttons */
.ff-language-switcher {
  display: flex !important;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: center;
  gap: 7px;
  margin-left: 4px;
  padding: 4px 0;
  z-index: 1005;
}

.ff-lang-btn {
  width: 38px;
  height: 38px;
  min-width: 38px;
  border: 1px solid rgba(255,255,255,.18);
  background: rgba(255,255,255,.065);
  color: #f8fafc;
  border-radius: 999px;
  padding: 0;
  font-size: 21px;
  line-height: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: transform .18s ease, background .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.ff-lang-btn:hover,
.ff-lang-btn.active {
  transform: translateY(-1px) scale(1.04);
  background: linear-gradient(135deg, var(--accent, #00B7FF), var(--accent2, #0078FF));
  border-color: rgba(255,255,255,.42);
  box-shadow: 0 0 16px rgba(0,183,255,.22);
}

#google_translate_element,
.goog-te-gadget,
.goog-te-banner-frame,
.goog-te-balloon-frame,
body > .skiptranslate {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  overflow: hidden !important;
}

html.translated-ltr,
html.translated-rtl,
body {
  margin-top: 0 !important;
  top: 0 !important;
}

@media (max-width: 980px) {
  .ff-language-switcher {
    order: 2;
    margin-left: auto;
    margin-right: 4px;
  }

  .menu-toggle {
    order: 3;
  }

  .main-nav {
    order: 4;
  }
}

@media (max-width: 640px) {
  .ff-language-switcher {
    gap: 5px;
  }

  .ff-lang-btn {
    width: 32px;
    height: 32px;
    min-width: 32px;
    font-size: 18px;
  }
}

/* Free FM V25 - banderas reales visibles, sin letras */
.ff-language-switcher {
  display:flex !important;
  flex-wrap:nowrap !important;
  align-items:center !important;
  justify-content:center !important;
  gap:8px !important;
  margin-left:8px !important;
  padding:4px 0 !important;
  z-index:1006 !important;
}
.ff-lang-btn {
  width:42px !important;
  height:32px !important;
  min-width:42px !important;
  border:1px solid rgba(255,255,255,.22) !important;
  background:rgba(255,255,255,.075) !important;
  color:transparent !important;
  border-radius:10px !important;
  padding:3px !important;
  font-size:0 !important;
  line-height:0 !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  cursor:pointer !important;
  overflow:hidden !important;
  box-shadow:0 8px 22px rgba(0,0,0,.22) !important;
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease !important;
}
.ff-lang-btn:hover,.ff-lang-btn.active {
  transform:translateY(-1px) scale(1.05) !important;
  border-color:rgba(255,255,255,.70) !important;
  box-shadow:0 0 18px rgba(0,183,255,.28),0 8px 22px rgba(0,0,0,.24) !important;
}
.ff-flag {
  width:100% !important;
  height:100% !important;
  display:block !important;
  border-radius:7px !important;
  background-size:cover !important;
  background-position:center !important;
  background-repeat:no-repeat !important;
  box-shadow:inset 0 0 0 1px rgba(0,0,0,.16) !important;
}
.ff-flag-es { background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 20'%3E%3Crect width='30' height='20' fill='#AA151B'/%3E%3Crect y='5' width='30' height='10' fill='#F1BF00'/%3E%3C/svg%3E") !important; }
.ff-flag-gb { background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 40'%3E%3Cpath fill='#012169' d='M0 0h60v40H0z'/%3E%3Cpath stroke='#fff' stroke-width='8' d='m0 0 60 40M60 0 0 40'/%3E%3Cpath stroke='#C8102E' stroke-width='4.8' d='m0 0 60 40M60 0 0 40'/%3E%3Cpath stroke='#fff' stroke-width='13' d='M30 0v40M0 20h60'/%3E%3Cpath stroke='#C8102E' stroke-width='8' d='M30 0v40M0 20h60'/%3E%3C/svg%3E") !important; }
.ff-flag-cn { background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 20'%3E%3Crect width='30' height='20' fill='#EE1C25'/%3E%3Cpolygon fill='#FFFF00' points='5,2 6.1,5.3 9.6,5.3 6.8,7.3 7.9,10.6 5,8.6 2.1,10.6 3.2,7.3 .4,5.3 3.9,5.3'/%3E%3Ccircle cx='12' cy='4' r='1.1' fill='#FFFF00'/%3E%3Ccircle cx='15' cy='7' r='1.1' fill='#FFFF00'/%3E%3Ccircle cx='15' cy='11' r='1.1' fill='#FFFF00'/%3E%3Ccircle cx='12' cy='14' r='1.1' fill='#FFFF00'/%3E%3C/svg%3E") !important; }
.ff-flag-jp { background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 20'%3E%3Crect width='30' height='20' fill='#fff'/%3E%3Ccircle cx='15' cy='10' r='5.8' fill='#BC002D'/%3E%3C/svg%3E") !important; }
.ff-flag-de { background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 20'%3E%3Crect width='30' height='20' fill='#000'/%3E%3Crect width='30' height='13.333' y='6.667' fill='#DD0000'/%3E%3Crect width='30' height='6.667' y='13.333' fill='#FFCE00'/%3E%3C/svg%3E") !important; }
#google_translate_element,.goog-te-gadget,.goog-te-banner-frame,.goog-te-balloon-frame,body>.skiptranslate {
  display:none !important; visibility:hidden !important; height:0 !important; overflow:hidden !important;
}
html.translated-ltr,html.translated-rtl,body { margin-top:0 !important; top:0 !important; }
@media (max-width:980px) {
  .ff-language-switcher { order:2 !important; margin-left:auto !important; margin-right:4px !important; width:auto !important; padding:2px 0 !important; }
  .menu-toggle { order:3 !important; }
  .main-nav { order:4 !important; }
}
@media (max-width:640px) {
  .ff-language-switcher { gap:5px !important; }
  .ff-lang-btn { width:34px !important; height:26px !important; min-width:34px !important; border-radius:8px !important; padding:2px !important; }
  .ff-flag { border-radius:6px !important; }
}

/* Free FM V26 - selector de idiomas con banderas inline SVG */
.ff-language-switcher {
  display: flex !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  margin-left: 8px !important;
  padding: 4px 0 !important;
  z-index: 1006 !important;
}

.ff-lang-btn {
  width: 44px !important;
  height: 34px !important;
  min-width: 44px !important;
  border: 1px solid rgba(255,255,255,.24) !important;
  background: rgba(255,255,255,.075) !important;
  border-radius: 10px !important;
  padding: 3px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  overflow: hidden !important;
  box-shadow: 0 8px 22px rgba(0,0,0,.24) !important;
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease !important;
}

.ff-lang-btn:hover,
.ff-lang-btn.active {
  transform: translateY(-1px) scale(1.05) !important;
  border-color: rgba(255,255,255,.75) !important;
  box-shadow: 0 0 18px rgba(0,183,255,.30), 0 8px 22px rgba(0,0,0,.26) !important;
}

.ff-flag-svg {
  width: 100% !important;
  height: 100% !important;
  display: block !important;
  border-radius: 7px !important;
  overflow: hidden !important;
  box-shadow: inset 0 0 0 1px rgba(0,0,0,.18) !important;
}

#google_translate_element,
.goog-te-gadget,
.goog-te-banner-frame,
.goog-te-balloon-frame,
body > .skiptranslate {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  overflow: hidden !important;
}

html.translated-ltr,
html.translated-rtl,
body {
  margin-top: 0 !important;
  top: 0 !important;
}

@media (max-width: 980px) {
  .ff-language-switcher {
    order: 2 !important;
    margin-left: auto !important;
    margin-right: 4px !important;
    width: auto !important;
  }

  .menu-toggle {
    order: 3 !important;
  }

  .main-nav {
    order: 4 !important;
  }
}

@media (max-width: 640px) {
  .ff-language-switcher {
    gap: 5px !important;
  }

  .ff-lang-btn {
    width: 34px !important;
    height: 26px !important;
    min-width: 34px !important;
    border-radius: 8px !important;
    padding: 2px !important;
  }

  .ff-flag-svg {
    border-radius: 6px !important;
  }
}


.ff-language-switcher.ff-language-floating {
  position: fixed !important;
  top: 12px !important;
  right: 12px !important;
  padding: 8px !important;
  border-radius: 999px !important;
  background: rgba(5,5,9,.82) !important;
  border: 1px solid rgba(255,255,255,.14) !important;
  backdrop-filter: blur(10px) !important;
}

/* Free FM V27 - selector visible con banderas SVG inline */
.ff-language-switcher {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 7px !important;
  margin-left: auto !important;
  margin-right: 8px !important;
  padding: 4px 0 !important;
  z-index: 10050 !important;
  position: relative !important;
}

.ff-lang-btn {
  width: 44px !important;
  height: 34px !important;
  min-width: 44px !important;
  border: 1px solid rgba(255,255,255,.32) !important;
  background: rgba(255,255,255,.11) !important;
  border-radius: 10px !important;
  padding: 3px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  overflow: hidden !important;
  box-shadow: 0 8px 20px rgba(0,0,0,.26) !important;
}

.ff-lang-btn:hover,
.ff-lang-btn.active {
  transform: translateY(-1px) scale(1.04) !important;
  border-color: rgba(255,255,255,.85) !important;
  box-shadow: 0 0 18px rgba(0,183,255,.30), 0 8px 20px rgba(0,0,0,.28) !important;
}

.ff-flag-svg {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  border-radius: 7px !important;
  overflow: hidden !important;
  box-shadow: inset 0 0 0 1px rgba(0,0,0,.18) !important;
  background: #fff !important;
}

#google_translate_element,
.goog-te-gadget,
.goog-te-banner-frame,
.goog-te-balloon-frame,
body > .skiptranslate {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  overflow: hidden !important;
}

html.translated-ltr,
html.translated-rtl,
body {
  margin-top: 0 !important;
  top: 0 !important;
}

@media (max-width: 980px) {
  .ff-language-switcher {
    order: 2 !important;
    margin-left: auto !important;
    margin-right: 6px !important;
    width: auto !important;
  }

  .menu-toggle {
    order: 3 !important;
  }

  .main-nav {
    order: 4 !important;
  }
}

@media (max-width: 640px) {
  .ff-language-switcher {
    gap: 4px !important;
    margin-right: 4px !important;
  }

  .ff-lang-btn {
    width: 33px !important;
    height: 25px !important;
    min-width: 33px !important;
    border-radius: 7px !important;
    padding: 2px !important;
  }

  .ff-flag-svg {
    border-radius: 5px !important;
  }
}
