/* FitDoctor · home y /valoracion/ · móvil primero */
:root{--bg:#f7f5ef;--ink:#13231f;--ink2:#52605c;--mute:#7a8581;--deep:#0b2b25;--moss:#123f35;--moss2:#103b32;--mint:#367565;--gold:#f4d26b;--line:#dde2dc;--white:#fff;--serif:'Newsreader',Georgia,serif;--sans:'Manrope',system-ui,-apple-system,sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;min-width:320px;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img,svg{max-width:100%}
a{color:inherit}
h1,h2,h3{font-family:var(--serif);font-weight:600;line-height:1.08;letter-spacing:-.025em;margin:0}
p{margin:0}
.wrap{max-width:1180px;margin:0 auto;padding:0 20px}
.narrow{max-width:760px}
section{padding:56px 0}
.label{font-size:12px;font-weight:800;letter-spacing:.22em;text-transform:uppercase;color:var(--mint);margin:0 0 16px}
.label.l{color:#b9d9c9}
h1{font-size:2.9rem;line-height:.96;letter-spacing:-.045em}
h2{font-size:2.1rem}
h3{font-size:1.6rem}
.lead{font-size:1.1rem;color:var(--ink2);margin-top:22px;max-width:42rem}

/* botones */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:0 24px;border-radius:999px;font-weight:800;font-size:.92rem;text-decoration:none;border:0;cursor:pointer;background:var(--moss);color:#fff;font-family:var(--sans);transition:background .2s}
.btn:hover{background:#0b2f28}
.btn.gold{background:var(--gold);color:#102f29}
.btn.gold:hover{background:#ffe08a}
.btn.line{background:transparent;color:var(--moss);border:1px solid var(--moss)}
.btn.block{width:100%}
.btn:disabled{opacity:.6;cursor:wait}
.link{font-weight:800;color:#173c33;text-decoration:none;padding:12px 8px;display:inline-block}

/* cabecera */
.top{background:var(--deep);color:#eef4ef;font-size:11px;font-weight:700;letter-spacing:.03em;text-align:center;padding:10px 16px}
header.nav{position:sticky;top:0;z-index:40;background:rgba(247,245,239,.95);backdrop-filter:blur(8px);border-bottom:1px solid rgba(0,0,0,.05)}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;height:64px}
.logo{font-size:1.25rem;font-weight:800;letter-spacing:-.05em;text-decoration:none}
.logo span{color:#4b8b78}
.nav nav{display:none;gap:28px;font-size:.88rem;font-weight:700;color:#42534e}
.nav nav a{text-decoration:none}
.nav nav a:hover{color:var(--moss)}
.nav .btn{min-height:40px;padding:0 16px;font-size:.82rem}
.nav .btn svg{display:none}

/* hero */
.hero{border-bottom:1px solid #d9ddd7;padding:44px 0 56px}
.hero .grid{display:grid;gap:40px}
.hero h1 em{font-style:normal;color:var(--mint)}
.hero .ctas{display:flex;flex-direction:column;gap:10px;margin-top:30px;align-items:flex-start}
.hero .note{display:flex;gap:10px;margin-top:24px;font-size:.88rem;color:#66726e;max-width:34rem}
.card-dark{background:var(--moss2);color:#fff;border-radius:28px;padding:28px;box-shadow:0 24px 70px rgba(13,48,41,.18)}
.card-dark .k{font-size:12px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:#b9d9c9}
.card-dark .t{font-family:var(--serif);font-size:1.9rem;margin-top:6px;line-height:1.1}
.card-dark ol{list-style:none;margin:24px 0;padding:24px 0;border-top:1px solid rgba(255,255,255,.15);border-bottom:1px solid rgba(255,255,255,.15);display:grid;gap:16px}
.card-dark li{display:flex;gap:14px;align-items:center;font-weight:700}
.card-dark li b{flex:none;width:28px;height:28px;border:1px solid rgba(255,255,255,.25);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.75rem;color:var(--gold)}
.card-dark blockquote{margin:0;background:rgba(255,255,255,.08);border-radius:16px;padding:18px;font-size:.9rem;color:#d7e3dc}

/* beneficios */
.bene{background:#fff;padding:28px 0}
.bene .g{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:16px;overflow:hidden}
.bene .g div{background:#fff;padding:18px}
.bene b{display:block;font-weight:800}
.bene span{display:block;font-size:.78rem;color:#6a7571;margin-top:6px;line-height:1.5}

/* bloques */
.dark{background:#0d3029;color:#fff}
.dark .cols{display:grid;gap:28px}
.dark p{color:#cad9d2;font-size:1.05rem;margin-top:18px}
.dark p.q{color:#fff;font-weight:700;border-left:2px solid var(--gold);padding-left:18px}
.phases{display:grid;gap:16px;margin-top:36px}
.phase{background:#fff;border:1px solid #d7ddd6;border-radius:24px;padding:26px}
.phase small{font-weight:900;font-size:.82rem;color:#4b806f}
.phase h3{margin:10px 0 14px}
.phase p{color:#63706b}
.included{background:#e8eee9}
.inc-g{display:grid;gap:12px;margin-top:28px}
.inc{display:flex;gap:14px;background:#fff;border-radius:16px;padding:20px}
.inc i{flex:none;width:32px;height:32px;border-radius:50%;background:#dcebe3;color:#285f51;display:flex;align-items:center;justify-content:center;font-style:normal;font-weight:800}
.inc small{display:block;font-size:11px;font-weight:900;letter-spacing:.15em;text-transform:uppercase;color:#8a9691}
.inc b{display:block;margin-top:4px;line-height:1.3}

/* programas */
.progs{display:grid;gap:20px;margin-top:36px}
.prog{background:#fff;border:1px solid #cfd7d1;border-radius:28px;padding:28px;position:relative}
.prog.rec{background:var(--moss2);color:#fff;border:0;box-shadow:0 24px 70px rgba(13,48,41,.18)}
.prog .k{font-size:12px;font-weight:900;letter-spacing:.2em;text-transform:uppercase;color:#4b806f}
.prog.rec .k{color:#b9d9c9}
.prog h3{font-size:2.1rem;margin-top:16px}
.prog .sub{color:#6a7571;margin-top:6px}
.prog.rec .sub{color:#cad9d2}
.prog .price{font-size:3rem;font-weight:900;letter-spacing:-.03em;margin-top:26px}
.prog .price small{font-size:1rem;font-weight:700;color:#75807c}
.prog.rec .price small{color:#b6c9c0}
.prog ul{list-style:none;padding:24px 0 0;margin:24px 0;border-top:1px solid #e3e7e3;display:grid;gap:12px;font-size:.88rem;font-weight:700}
.prog.rec ul{border-color:rgba(255,255,255,.15)}
.prog li::before{content:"✓";margin-right:10px;color:#3d7c6b}
.prog.rec li::before{color:var(--gold)}
.badge{position:absolute;right:20px;top:20px;background:var(--gold);color:#173a31;border-radius:999px;font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;padding:6px 12px}
.fine{font-size:.78rem;color:var(--mute);text-align:center;max-width:56rem;margin:26px auto 0}

/* evidencia */
.evid{background:#fff;border-top:1px solid #d9dfd9;border-bottom:1px solid #d9dfd9}
.evid .g{display:grid;gap:12px;margin-top:28px}
.stat{background:#f1f4f0;border-radius:16px;padding:22px}
.stat b{display:block;font-family:var(--serif);font-size:2.8rem;color:#245c4e;line-height:1}
.stat p{margin-top:12px;font-size:.88rem;font-weight:700}
.stat.d{background:var(--moss2);color:#fff}
.stat.d p{font-size:1.05rem}
.stat.d small{display:block;margin-top:8px;font-weight:400;color:#c9d9d1;font-size:.85rem}
.src{margin-top:28px;padding-top:20px;border-top:1px solid #e1e5e1;font-size:.78rem;color:var(--mute)}

/* recursos */
.res{display:grid;gap:16px;margin-top:32px}
.rcard{display:flex;flex-direction:column;background:#fff;border:1px solid #d5ddd7;border-radius:28px;padding:26px}
.rcard.on{background:var(--moss2);color:#fff;border-color:#276656}
.rcard .e{margin-top:6px;font-size:11px;font-weight:900;letter-spacing:.18em;text-transform:uppercase;color:#4b806f}
.rcard.on .e{color:#b9d9c9}
.rcard h3{margin-top:12px;font-size:1.5rem}
.rcard p.t{margin:16px 0 22px;color:#64706c}
.rcard.on p.t{color:#cbdad3}
.rcard button{margin-top:auto}
.rcard.on .btn{background:var(--gold);color:#102f29}
.rcard .btn{background:#e5eee8;color:#173c33}
.formbox{margin-top:24px;background:#fff;border-radius:28px;overflow:hidden;box-shadow:0 24px 70px rgba(13,48,41,.18)}
.formbox .l{background:#0d3029;color:#fff;padding:26px}
.formbox .l h3{margin-top:14px;font-size:1.8rem}
.formbox .l p{margin-top:12px;font-size:.88rem;color:#d2dfd8}
.formbox form{padding:26px}
.formbox .sel{font-size:12px;font-weight:900;letter-spacing:.18em;text-transform:uppercase;color:#4b806f}
.formbox .selt{font-weight:800;font-size:1.05rem;margin-top:6px}
.fields{display:grid;gap:16px;margin-top:22px}
.fields label{font-size:.88rem;font-weight:700;color:#31443e}
.fields input{display:block;width:100%;margin-top:8px;border:1px solid #cfd9d2;background:#fbfcfa;border-radius:12px;padding:14px;font:inherit;font-weight:400;color:var(--ink)}
.fields input:focus{outline:2px solid rgba(59,120,103,.25);border-color:#3b7867}
.chk{display:flex;gap:12px;margin-top:20px;font-size:.88rem;color:#596761;cursor:pointer}
.chk input{margin-top:4px;width:17px;height:17px;accent-color:var(--moss);flex:none}
.priv{margin-top:14px;font-size:.78rem;color:#77827e}
.status{margin-top:14px;font-size:.88rem;font-weight:700;color:#2c6a59}
.status.err{color:#9d2f2f}
.baja{margin-top:16px;text-align:center;font-size:.78rem;color:#77827e}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

/* testimonios, para quién, faq */
.quotes{display:grid;gap:16px}
.quote{background:#fff;border:1px solid #d6ddd7;border-radius:28px;padding:28px}
.quote p{font-family:var(--serif);font-size:1.4rem;line-height:1.3;margin-top:4px}
.quote footer{margin-top:20px;font-size:11px;font-weight:900;letter-spacing:.15em;text-transform:uppercase;color:#66736e}
.who{background:#e8eee9}
.who .box{background:#fff;border-radius:28px;padding:28px;display:grid;gap:24px}
.who ul{list-style:none;margin:0;padding:0;display:grid;gap:16px}
.who li{display:flex;gap:14px;padding-bottom:16px;border-bottom:1px solid #e4e8e4;font-weight:700}
.who li::before{content:"✓";color:#3b7867}
.cta-final{background:var(--deep);color:#fff;text-align:center}
.cta-final p{color:#c8d8d0;margin:18px auto 30px;max-width:40rem;font-size:1.05rem}
.faq{background:#fff}
.faq .l{display:grid;gap:28px}
details{border-bottom:1px solid #dce2dc}
details:first-of-type{border-top:1px solid #dce2dc}
summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:20px;padding:20px 0;font-weight:800}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";font-size:1.4rem;line-height:1}
details[open] summary::after{content:"–"}
details p{padding:0 0 20px;color:#64706c;max-width:40rem}
.next{background:var(--gold);padding:48px 0}
.next .wrap{display:flex;flex-direction:column;gap:24px}
.next .k{font-size:12px;font-weight:900;letter-spacing:.2em;text-transform:uppercase;color:#486156}
.next h2{margin-top:8px;color:#102f29;font-size:2rem}

/* pie */
footer.site{background:#081f1b;color:#b9cbc2;padding:44px 0}
footer.site .row{display:flex;flex-direction:column;gap:16px;padding-bottom:28px;border-bottom:1px solid rgba(255,255,255,.1)}
footer.site .logo{color:#fff}
footer.site .logo span{color:var(--gold)}
footer.site .cols{display:grid;gap:20px;padding-top:28px;font-size:11px}
footer.site strong{color:#fff}
footer.site a{color:#fff}
footer.site .links{font-size:12px;display:flex;flex-wrap:wrap;gap:6px 18px}
.sticky{position:fixed;left:16px;right:16px;bottom:16px;z-index:50;display:none}
.sticky.on{display:block}
.sticky .btn{width:100%;box-shadow:0 24px 70px rgba(13,48,41,.3)}

/* valoración */
.vhero{padding:48px 0 32px}
.vfacts{display:grid;gap:0;border-top:1px solid #bfb8aa;border-bottom:1px solid #bfb8aa;margin-top:32px}
.vfacts div{padding:16px 0;border-top:1px solid var(--line)}
.vfacts div:first-child{border-top:0}
.vfacts b{display:block;font-family:var(--serif);font-size:1.6rem}
.vfacts span{font-size:.85rem;color:var(--mute)}
.vlist{list-style:none;padding:0;margin:24px 0 0;display:grid;gap:14px}
.vlist li{display:flex;gap:14px}
.vlist li::before{content:"✓";color:#3b7867;font-weight:800}
.paynote{font-size:.85rem;color:var(--mute);margin-top:12px}

@media(min-width:640px){
  .wrap{padding:0 32px}
  h1{font-size:3.8rem}
  h2{font-size:2.8rem}
  .hero .ctas{flex-direction:row;align-items:center}
  .bene .g{grid-template-columns:repeat(4,1fr)}
  .phases,.inc-g,.evid .g{grid-template-columns:1fr 1fr}
  .stat.d{grid-column:span 2}
  .nav .btn svg{display:inline}
  .vfacts{grid-template-columns:repeat(3,1fr)}
  .vfacts div{border-top:0;border-left:1px solid var(--line);padding:16px}
  .vfacts div:first-child{border-left:0;padding-left:0}
  .fields{grid-template-columns:1fr 1fr}
  .fields label:first-child{grid-column:span 2}
}
@media(min-width:960px){
  section{padding:96px 0}
  h1{font-size:5.2rem}
  h2{font-size:3.4rem}
  .nav nav{display:flex}
  .hero{padding:80px 0}
  .hero .grid{grid-template-columns:1.08fr .92fr;align-items:center}
  .dark .cols{grid-template-columns:1fr 1fr}
  .included .wrap{display:grid;grid-template-columns:.85fr 1.15fr;gap:48px}
  .progs{grid-template-columns:1fr 1fr;max-width:1000px;margin-left:auto;margin-right:auto}
  .evid .cols{display:grid;grid-template-columns:1fr 1fr;gap:48px}
  .evid .g{margin-top:0}
  .res{grid-template-columns:repeat(3,1fr)}
  .formbox{display:grid;grid-template-columns:.72fr 1.28fr}
  .formbox .l,.formbox form{padding:40px}
  .quotes{grid-template-columns:1fr 1fr}
  .who .box{grid-template-columns:.9fr 1.1fr;padding:48px;align-items:center}
  .faq .l{grid-template-columns:.72fr 1.28fr}
  .next .wrap{flex-direction:row;align-items:center;justify-content:space-between}
  footer.site .row{flex-direction:row;justify-content:space-between;align-items:center}
  footer.site .cols{grid-template-columns:repeat(3,1fr)}
  .sticky{display:none!important}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
