/*
Theme Name: FormadorFútbol
Theme URI: https://formadorfutbol.com/
Author: FormadorFútbol
Description: Tema profesional para biblioteca de ejercicios, formaciones, plantillas y contenidos de fútbol base.
Version: 3.2.0
Requires at least: 6.4
Requires PHP: 8.0
Text Domain: formadorfutbol
*/
:root{--ff-green:#08764b;--ff-dark:#082c21;--ff-pale:#e7f2ec;--ff-paper:#fbfaf5;--ff-line:#c8d8d0;--ff-lime:#b9ff2c;--ff-muted:#60746a}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f4f7f5;color:var(--ff-dark);font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}.ff-shell{width:min(1240px,calc(100% - 40px));margin:auto}.ff-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);border-bottom:1px solid #dae3de;backdrop-filter:blur(14px)}.ff-header-inner{height:82px;display:flex;align-items:center;gap:34px}.ff-brand{font-size:17px;letter-spacing:-.04em;white-space:nowrap}.ff-brand strong{font-weight:900}.ff-nav{display:flex;align-items:center;gap:27px;margin:auto;font-size:15px;font-weight:700}.ff-nav a:hover{color:var(--ff-green)}.ff-actions{display:flex;gap:18px;font-size:14px;font-weight:700}.ff-hero{padding:74px 0;background:linear-gradient(120deg,#dceee4,#f7faf8);border-bottom:1px solid var(--ff-line)}.ff-kicker{font-size:11px;letter-spacing:.15em;font-weight:900;color:var(--ff-green)}.ff-hero h1{font:700 clamp(44px,6vw,76px)/.95 Arial;margin:24px 0 0;max-width:1050px;letter-spacing:-.055em}.ff-dashboard{display:grid;grid-template-columns:repeat(2,1fr);margin-top:22px;background:white;border:1px solid var(--ff-line);border-radius:14px;overflow:hidden}.ff-fact{padding:20px;border-right:1px solid var(--ff-line)}.ff-fact:last-child{border:0}.ff-fact small{display:block;font-size:10px;letter-spacing:.12em;color:var(--ff-muted);font-weight:900;text-transform:uppercase}.ff-fact strong{display:block;margin-top:9px;line-height:1.35}.ff-index{margin-top:18px;border:1px solid var(--ff-line);border-radius:12px;background:var(--ff-pale);overflow:hidden}.ff-index summary{padding:19px 22px;font-weight:900;cursor:pointer;display:flex;justify-content:space-between}.ff-index-links{border-top:1px solid var(--ff-line);padding:18px 22px;display:flex;flex-wrap:wrap;gap:9px}.ff-index-links a{padding:8px 11px;background:white;border-radius:7px;color:var(--ff-green);font-size:13px}.ff-content{max-width:1120px;margin:34px auto 90px;padding:64px 76px;background:var(--ff-paper);border:1px solid #dddcd3;border-radius:5px;font-size:17px;line-height:1.7}.ff-content h2,.ff-content h3{line-height:1.15;margin-top:2em}.ff-content h3{padding:28px;border:1px solid var(--ff-line);border-radius:14px;background:white}.ff-content hr,.ff-content .wp-block-spacer{display:none}.ff-content img{max-width:100%;height:auto}.ff-pager{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:0 0 42px}.ff-pager.bottom{margin:55px 0 0}.ff-pager a{min-height:106px;padding:22px;border:1px solid #afd0bf;border-radius:14px;background:white;display:flex;flex-direction:column;justify-content:space-between}.ff-pager a:last-child{text-align:right;align-items:flex-end}.ff-pager small{color:var(--ff-green);font-size:10px;letter-spacing:.1em;font-weight:900}.ff-pager strong{font-size:18px}.ff-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;padding:60px 0 100px}.ff-card{min-height:370px;border-radius:14px;overflow:hidden;position:relative;background:var(--ff-dark);color:white}.ff-card img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;opacity:.68}.ff-card:after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(3,27,20,.96))}.ff-card-content{position:absolute;z-index:2;left:30px;right:30px;bottom:28px}.ff-card h2{font:400 34px Georgia;margin:9px 0}.ff-card p{line-height:1.5;color:#e0ebe5}.ff-card span{font-size:10px;color:var(--ff-lime);font-weight:900;letter-spacing:.12em}.ff-footer{background:var(--ff-dark);color:white;padding:60px 0 28px}.ff-footer p{color:#b9cac2}.ff-footer-bottom{border-top:1px solid #365448;margin-top:40px;padding-top:22px;font-size:12px;color:#91a79d}@media(max-width:850px){.ff-header-inner{height:auto;min-height:72px;flex-wrap:wrap;padding:14px 0}.ff-nav{order:3;width:100%;overflow:auto;padding-bottom:8px}.ff-actions{margin-left:auto}.ff-dashboard{grid-template-columns:1fr 1fr}.ff-grid{grid-template-columns:1fr}.ff-content{padding:32px 24px}.ff-pager{grid-template-columns:1fr}.ff-pager a:last-child{text-align:left;align-items:flex-start}}
/* Normalización visual de fichas migradas */
.ff-content{counter-reset:ff-exercise}.ff-content h2:has(+ul),.ff-content h3:has(+ul),.ff-content h2:has(+ol),.ff-content h3:has(+ol),.ff-content h2:has(+p),.ff-content h3:has(+p){counter-increment:ff-exercise;margin:22px auto 0;padding:28px 28px 16px;border:1px solid var(--ff-line);border-bottom:0;border-radius:12px 12px 0 0;background:#fff}.ff-content h2:has(+ul):before,.ff-content h3:has(+ul):before,.ff-content h2:has(+ol):before,.ff-content h3:has(+ol):before,.ff-content h2:has(+p):before,.ff-content h3:has(+p):before{content:"Ejercicio " counter(ff-exercise);display:block;margin-bottom:8px;color:var(--ff-green);font:900 11px Arial;letter-spacing:.12em;text-transform:uppercase}.ff-content h2+ul,.ff-content h3+ul,.ff-content h2+ol,.ff-content h3+ol,.ff-content h2+p,.ff-content h3+p{margin:0 auto 22px;padding:8px 28px 27px 50px;border:1px solid var(--ff-line);border-top:0;border-radius:0 0 12px 12px;background:#fff}.ff-content h2+p,.ff-content h3+p{padding-left:28px}
/* Premium home v4 */
.ff-premium-home{background:#f8faf7;color:#08271d}.ff-home-hero{background:linear-gradient(135deg,#f9f7f0,#dcefe5);padding:80px 0}.ff-home-hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.ff-home-kicker,.ff-home-heading p,.ff-home-faq header>div>p{font-size:10px;font-weight:800;letter-spacing:.15em;color:#0d6b47}.ff-home-hero h1,.ff-home-heading h2,.ff-home-statement h2,.ff-home-faq h2,.ff-home-closing h2{font-size:clamp(52px,6.5vw,94px);line-height:.9;letter-spacing:-.065em;margin:22px 0}.ff-home-hero h1 em,.ff-home-statement h2 em{font-family:Georgia,serif;font-weight:400;color:#0d6b47}.ff-home-lede{max-width:580px;color:#50655d;line-height:1.65}.ff-home-search{background:white;border:1px solid #b8cfc3;border-radius:14px;padding:12px;margin-top:30px;box-shadow:0 20px 55px rgba(8,39,29,.1)}.ff-home-search label{display:block;font-size:10px;font-weight:800;color:#0d6b47;padding:5px}.ff-home-search>div{display:flex}.ff-home-search input{flex:1;border:0;background:#f2f6f3;padding:17px}.ff-home-search button{border:0;background:#08271d;color:white;padding:17px 25px}.ff-home-photo{height:520px;border-radius:180px 180px 25px 25px;overflow:hidden;position:relative}.ff-home-photo img{width:100%;height:100%;object-fit:cover}.ff-home-photo span{position:absolute;right:20px;top:60px;width:110px;height:110px;border-radius:50%;background:#c7ff38;display:grid;place-content:center;text-align:center;font-size:10px}.ff-home-photo b{font-size:26px}.ff-home-section,.ff-home-faq{padding-block:120px}.ff-home-heading,.ff-home-faq>header{display:flex;justify-content:space-between;align-items:end;gap:60px;margin-bottom:55px}.ff-home-heading h2,.ff-home-faq h2{font-size:clamp(46px,5vw,74px);margin-bottom:0}.ff-home-age-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.ff-home-age-grid>a{background:white;border:1px solid #d7e1dc;border-radius:18px;overflow:hidden;padding-bottom:25px}.ff-home-age-grid>a>div{height:260px;position:relative}.ff-home-age-grid img{width:100%;height:100%;object-fit:cover}.ff-home-age-grid b{position:absolute;left:18px;top:18px;background:white;border-radius:50%;padding:12px}.ff-home-age-grid small,.ff-home-age-grid h3,.ff-home-age-grid p,.ff-home-age-grid strong{display:block;margin-inline:25px}.ff-home-age-grid small{margin-top:25px;color:#0d6b47;font-weight:800}.ff-home-age-grid h3{font-size:30px;margin-block:8px}.ff-home-age-grid p{color:#60736a;line-height:1.55}.ff-home-age-grid strong{border-top:1px solid #d7e1dc;padding-top:16px;font-size:10px}.ff-home-statement{background:#08271d;color:white;padding:120px 0}.ff-home-statement>.ff-shell{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:70px;align-items:end}.ff-home-statement h2{font-size:clamp(54px,6vw,90px)}.ff-home-statement h2 em{color:#c7ff38}.ff-home-statement aside{border-top:1px solid #ffffff55;padding-top:20px}.ff-home-statement aside p{color:#ffffff99;line-height:1.6}.ff-home-faq>header>p{max-width:420px;color:#60736a}.ff-home-faq details{border-top:1px solid #b8cbc1}.ff-home-faq details:last-of-type{border-bottom:1px solid #b8cbc1}.ff-home-faq summary{list-style:none;display:grid;grid-template-columns:60px 1fr 40px;align-items:center;padding:24px 8px;cursor:pointer}.ff-home-faq summary span{color:#0d6b47;font-size:10px}.ff-home-faq summary strong{font-size:20px}.ff-home-faq summary i{font-style:normal;background:#dcefe5;border-radius:50%;width:34px;height:34px;display:grid;place-items:center}.ff-home-faq details[open] summary i{transform:rotate(45deg);background:#c7ff38}.ff-home-faq details>p{margin:0 50px 25px 76px;max-width:850px;color:#60736a;line-height:1.7}.ff-home-closing{background:#f4eee2;text-align:center;padding:120px 0}.ff-home-closing h2{font-size:clamp(48px,5vw,74px)}.ff-home-closing a{display:inline-block;background:#08271d;color:white;border-radius:999px;padding:18px 28px;font-weight:800}@media(max-width:800px){.ff-home-hero-grid,.ff-home-statement>.ff-shell{grid-template-columns:1fr}.ff-home-photo{height:420px}.ff-home-age-grid{grid-template-columns:1fr}.ff-home-heading,.ff-home-faq>header{display:block}.ff-home-heading>a{display:inline-block;margin-top:25px}}@media(max-width:520px){.ff-home-hero{padding:55px 0}.ff-home-hero h1{font-size:55px}.ff-home-search>div{display:block}.ff-home-search input,.ff-home-search button{width:100%}.ff-home-search button{margin-top:6px}.ff-home-photo{height:360px}.ff-home-section,.ff-home-faq{padding-block:75px}.ff-home-faq summary{grid-template-columns:34px 1fr 34px;gap:8px}.ff-home-faq summary strong{font-size:17px}.ff-home-faq details>p{margin-left:42px}.ff-home-statement{padding:80px 0}.ff-home-closing{padding:80px 0}}
