/* Propuesta local: el producto ocupa el lugar de la fotografía. */
/* Fuentes y métricas forman un único bloque; las cinco vistas reproducen funciones reales. */
.precision { --hueso:#eeeef0; --hueso-hondo:#e5e5e8; --tinta:#202124; --tinta-media:#52555b; --tinta-suave:#696d75; --senal:#ec8964; --senal-honda:#ad4d29; --raya:#d4d6da; background:#111316; }
.precision .barra { background:#111316ed; border-color:#ffffff14; color:#f4f4f5; }
.precision .marca__sep, .precision .marca__producto, .precision .barra__nav a { color:#a9adb5; }
.precision .barra__nav a:hover { color:#fff; }
.precision .barra__cta { background:#25282e; border-color:#454951; color:#fff; }
.precision .barra__cta:hover { background:#383d45; border-color:#737b89; }
.precision .portada { background:#111316; color:#f6f6f8; padding:72px 0 0; overflow:hidden; border:0; }
.precision .portada__rejilla { grid-template-columns:minmax(0,.87fr) minmax(0,1.13fr); gap:clamp(36px,5vw,76px); align-items:center; padding-bottom:64px; }
.precision .portada__caja { padding:12px 0; }
.precision .sello { color:#babdc5; font-size:12px; letter-spacing:.12em; display:flex; align-items:center; gap:12px; margin-bottom:32px; }
.senal-viva { width:7px; height:7px; background:#f1a282; display:inline-block; box-shadow:0 0 18px #e78a6277; }
.precision .portada__titulo { font-size:clamp(45px,5.3vw,78px); line-height:1.04; letter-spacing:-.055em; font-weight:520; max-width:none; margin:0 0 24px; }
.precision .portada__titulo span { color:#b0b5be; }
.precision .portada__entrada { color:#a8aeb8; font-size:18px; line-height:1.7; max-width:40ch; margin-bottom:26px; }
.premium-nota { padding:0 0 0 15px; border-left:2px solid #ed9a78; color:#d7d9de; font-size:15px; line-height:1.7; margin:0 0 28px; }
.premium-nota strong { color:#eea989; font-weight:450; }
.precision .portada .boton--enorme { background:#efa381; border-color:#efa381; color:#211915; box-shadow:none; border-radius:5px; padding:15px 21px; }
.precision .portada .boton--enorme:hover { background:#ffc5a8; border-color:#ffc5a8; color:#211915; }
.precision .portada .boton--linea { color:#d6d9df; }
.precision .portada__garantias { color:#9199a5; font-size:13px; }
.precision .portada__indice { display:flex; align-items:center; justify-content:space-between; gap:20px; padding-top:24px; padding-bottom:24px; border-top:1px solid #ffffff18; color:#9199a5; font-size:12px; letter-spacing:.08em; }
.portada__indice a { font-size:14px; letter-spacing:0; text-decoration:none; color:#c3c8d1; }
.producto { --px:50%; --py:35%; position:relative; isolation:isolate; min-width:0; width:100%; color:#eceef3; border:1px solid #5a626f; background:#1a1e25; border-radius:14px; box-shadow:0 38px 80px #0007,0 0 100px -25px #718bb523; transform:perspective(1600px) rotateY(-4deg) rotateX(1deg); transition:transform .35s ease,border-color .3s; scroll-margin-top:100px; }
.producto:hover, .producto:focus-within { transform:perspective(1600px) rotateY(0) rotateX(0); border-color:#929ba9; }
.producto__borde { position:absolute; inset:0; z-index:-1; pointer-events:none; border-radius:inherit; background:radial-gradient(350px circle at var(--px) var(--py),#9cb7d817,transparent 75%); }
.producto button { font:inherit; cursor:pointer; }
.producto button:disabled { cursor:default; }
.producto [hidden] { display:none !important; }
.producto button:focus-visible { outline:2px solid #f2b292; outline-offset:4px; }
.producto__top { padding:18px 24px; display:flex; justify-content:space-between; gap:16px; border-bottom:1px solid #ffffff10; color:#959eac; font-size:11px; letter-spacing:.08em; }
.producto__top span:first-child { display:flex; align-items:center; gap:8px; }
.producto__top i { width:6px; height:6px; border-radius:50%; background:#c7d0df; }
.producto__tabs { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); padding:0 24px; border-bottom:1px solid #ffffff12; gap:10px; }
.producto__tabs button { border:0; border-bottom:2px solid transparent; color:#8d97a6; background:none; font-size:12px; padding:18px 0; display:flex; justify-content:center; gap:9px; }
.producto__tabs button span { font-size:14px; }
.producto__tabs button[aria-selected="true"] { color:#f8c5ac; border-color:#efa381; }
.producto__tabs button:hover { color:#fff; }
.producto__panel { padding:25px 28px 20px; min-height:435px; }
.muestra-meta { display:flex; justify-content:space-between; gap:16px; align-items:center; color:#bdc7d7; font-size:12px; letter-spacing:.02em; margin-bottom:20px; }
.muestra-meta span:first-child { padding:4px 9px; background:#2a303b; border-radius:3px; }
.producto__panel h2 { color:#f1f3f8; font-size:19px; font-weight:500; line-height:1.5; letter-spacing:-.02em; margin:0 0 20px; }
.muestra-opciones { display:grid; gap:8px; }
.muestra-opciones button { position:relative; display:flex; align-items:center; text-align:left; gap:12px; width:100%; border:1px solid #ffffff18; border-radius:5px; padding:12px; color:#cbd1dc; background:#171a21; font-size:13px; line-height:1.5; transition:background .15s, border-color .15s, transform .15s; }
.muestra-opciones button > span { flex:none; border:1px solid #4a5262; border-radius:3px; width:25px; height:25px; display:grid; place-items:center; color:#a1adbf; font-size:11px; }
.muestra-opciones button:hover:not(:disabled) { background:#2a313d; border-color:#eab69c; transform:translateX(3px); color:#fff; }
.muestra-opciones button[data-estado="correcta"] { background:#203c35; border-color:#70b59b; color:#d0f0e1; }
.muestra-opciones button[data-estado="incorrecta"] { background:#442b2c; border-color:#c5867d; color:#f5d3cf; }
.muestra-feedback:not(:empty) { margin:15px 0 0; padding:14px 16px; border-left:2px solid #a3b8d8; background:#222936; color:#c4cede; font-size:13px; line-height:1.65; }
.muestra-feedback strong { display:block; margin-bottom:4px; color:#f3f5f8; font-weight:550; }
.muestra-fuente { color:#949eae; font-size:11px; margin:18px 0 0; line-height:1.6; }
.muestra-acciones { display:flex; justify-content:space-between; align-items:center; gap:12px; margin-top:18px; font-size:12px; color:#909aa9; }
.muestra-acciones button, .sesion-volver { background:none; border:0; color:#f1b799; padding:8px 0; font-size:13px; text-align:left; }
.producto__pie { padding:15px 24px; border-top:1px solid #ffffff12; display:flex; justify-content:space-between; gap:15px; color:#939eae; font-size:11px; }
.producto__noscript { margin:20px; font-size:14px; }
.memoria-intro { color:#acb6c5; font-size:14px; margin:0 0 22px; }
.memoria-carta { display:flex; flex-direction:column; align-items:flex-start; justify-content:space-between; gap:22px; min-height:245px; width:100%; padding:25px; border:1px solid #6c7688; border-radius:9px; text-align:left; background:linear-gradient(125deg,#313b4a,#232c38); color:#fff; box-shadow:5px 5px 0 #151a22,6px 6px 0 #48515e; transition:transform .25s,border-color .25s; }
.memoria-carta:hover { transform:translateY(-3px); border-color:#f3b89a; }
.memoria-carta[aria-expanded="true"] { background:#243932; border-color:#83b69d; }
.memoria-carta__etiqueta { font-size:11px; letter-spacing:.1em; color:#b5c2d4; }
.memoria-carta__texto { font-size:23px; letter-spacing:-.025em; line-height:1.4; }
.memoria-carta__accion { font-size:12px; color:#e7b59c; }
.memoria-valoracion { display:flex; gap:10px; margin-top:20px; }
.memoria-valoracion button { flex:1; padding:12px; border:1px solid #596576; background:transparent; border-radius:4px; color:#d9dfe8; font-size:13px; }
.memoria-valoracion button:hover { background:#354235; border-color:#a4b995; }
.sesion-intro, .sesion-nota { font-size:14px; color:#aeb8c7; line-height:1.7; }
.sesion-datos { display:grid; grid-template-columns:1fr 1fr; margin:30px 0 22px; }
.sesion-datos div { display:grid; gap:8px; }
.sesion-datos strong { font-size:45px; font-weight:450; line-height:1; letter-spacing:-.05em; }
.sesion-datos span, .sesion-detalle { font-size:13px; color:#aeb8c7; }
.sesion-linea { height:5px; background:#383f4b; border-radius:3px; overflow:hidden; }
.sesion-linea span { display:block; height:100%; width:0; background:#e9a482; transition:width .3s; }
.sesion-detalle { display:flex; justify-content:space-between; margin:24px 0; }
.sesion-detalle strong { color:#fff; font-weight:500; }
.precision .fuentes { background:#16191e; color:#eff1f5; padding:65px 0; border-top:1px solid #ffffff12; }
.fuentes__cabecera { display:flex; align-items:flex-start; justify-content:space-between; gap:30px; margin-bottom:35px; }
.precision .fuentes .rotulo { color:#d2a18b; margin:9px 0 0; }
.fuentes h2 { margin:0; font-size:clamp(26px,3vw,39px); line-height:1.2; font-weight:450; letter-spacing:-.035em; }
.fuentes__intro { margin:0; padding:28px 0; border-top:1px solid #454b56; border-bottom:1px solid #454b56; color:#d0d6df; font-size:clamp(18px,1.8vw,23px); line-height:1.65; text-wrap:pretty; }
.fuentes__detalle { display:grid; grid-template-columns:1fr 1fr; gap:40px; padding-top:20px; }
.fuentes__detalle p { font-size:15px; color:#a6afbd; line-height:1.65; margin:0; }
.fuentes__detalle b { display:block; font-weight:500; color:#e1e6ed; margin-bottom:5px; }
.precision .cifras { background:#111316; color:#e9ecf2; padding:25px 0 42px; }
.precision .cifras__cabecera { border-color:#363b44; }
.precision .cifras__cabecera span, .precision .cifras__cabecera p, .precision .cifra__pie { color:#a0a8b5; }
.precision .cifra__numero { color:#e4e7ed; }
.precision .cifra + .cifra { border-color:#363b44; }
.precision .academia { background:#e9eaed; color:#292c33; padding:52px 0; }
.precision .academia__cabecera { gap:36px; margin-bottom:26px; }
.precision .academia__titulo { margin-top:8px; max-width:24ch; font-size:clamp(30px,3.2vw,43px); }
.precision .academia-card { min-height:0; padding:20px 0; }
.precision .academia-card h3 { font-size:22px; }
.precision .academia .academia-card__numero { color:#616978; }
.precision .academia .academia-card a { color:#303c50; }
.precision #temario { padding:52px 0; }
.precision #temario .titulo { max-width:32ch; font-size:clamp(30px,3.2vw,43px); margin-bottom:18px; }
.precision #temario .parrafo { max-width:78ch; font-size:16px; margin-bottom:0; }
.precision #temario .pilares { margin-top:26px; gap:16px; align-items:start; }
.precision #temario .pilar { min-height:0; padding:22px; }
.precision #temario .pilar h3 { font-size:24px; }
.precision #temario .pilar__lead { min-height:0; margin-bottom:14px; }
.precision #temario .pilar li { padding:5px 0; border-color:#d4d8de; color:#465260; }
.precision #comunidades { padding:48px 0; background:#1c222b; color:#edf1f7; border-color:#3d4654; }
.precision #comunidades::after { display:none; }
.precision #comunidades .rotulo { color:#efb99d; }
.precision #comunidades .titulo { color:#f0f3f8; font-size:clamp(29px,3.2vw,42px); max-width:30ch; margin-bottom:16px; }
.precision #comunidades .parrafo { color:#bac5d4; font-size:16px; max-width:74ch; margin-bottom:0; }
.precision #comunidades .comunidades { display:flex; flex-wrap:wrap; gap:8px; margin-top:24px; max-width:none; }
.precision #comunidades .chip { color:#e1e8f3; border-color:#556172; background:#2b3340; font-size:14px; padding:7px 12px; }
.precision #comunidades .chip:hover { color:#fff; background:#374354; border-color:#7d8da4; }
.precision .academia__titulo, .precision .academia-card h3 { color:#24272e; }
.precision .academia__entrada, .precision .academia .rotulo { color:#616874; }
.precision .academia-card { border-color:#c4c8d0; }
.precision .academia-card:last-child { border-color:#c4c8d0; }
.precision .academia-card:hover, .precision .academia-card:focus-within { background:#dce0e7; }
.precision .academia-card__numero, .precision .academia-card > p:last-of-type { color:#616978; }
.precision .academia-card a { color:#303c50; }
.precision .academia-card a span { color:#a74c2d; }
.precision .oferta { background:#151a21; color:#eff2f8; border-top:1px solid #353e4a; }
.precision .oferta__texto { color:#aab5c5; }
.precision .oferta .rotulo { color:#e4a183; }
.precision .oferta .boton--solido { background:#edaa89; border-color:#edaa89; color:#241a16; }
.precision .banda { background:#151a21; color:#adb7c6; }
.precision .entrenamientos { padding:65px 0; background:#e5e7ea; border-top:1px solid #c7ccd4; }
.precision .entreno__cabecera h2 { font-size:clamp(30px,3.5vw,44px); }
.precision .entreno__form { background:#222a34; }
.precision .entreno__generar { background:#b8c9e0; color:#1e293a; }
.precision .pie { background:#111316; }
@media (max-width:1100px) {
  .precision .portada__rejilla { gap:30px; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); }
  .producto__panel { padding:22px; }
  .producto__tabs { padding:0 16px; }
  .producto__top { font-size:10px; padding:16px 20px; }
}
@media (max-width:850px) {
  .precision .portada { padding-top:38px; }
  .precision .portada__rejilla { grid-template-columns:1fr; gap:35px; }
  .precision .portada__caja { max-width:640px; }
  .precision .portada__titulo { font-size:clamp(43px,8.5vw,70px); }
  .precision .portada__entrada { max-width:48ch; }
  .producto { transform:none; max-width:650px; justify-self:center; }
  .producto__panel { min-height:400px; }
  .fuentes__cabecera { flex-direction:column; gap:18px; }
}
@media (max-width:480px) {
  .producto__top { letter-spacing:0; font-size:10px; padding:14px; }
  .producto__tabs { padding:0 10px; gap:5px; }
  .producto__tabs button { gap:6px; font-size:10px; }
  .producto__tabs button span { font-size:12px; }
  .producto__panel { padding:20px 15px; }
  .producto__panel h2 { font-size:17px; }
  .muestra-opciones button { padding:10px; font-size:12px; gap:9px; }
  .producto__pie { padding:14px; font-size:10px; }
  .precision .portada__indice { align-items:flex-start; flex-direction:column; gap:10px; font-size:10px; }
  .memoria-carta { padding:20px; }
  .memoria-carta__texto { font-size:21px; }
  .fuentes__detalle { grid-template-columns:1fr; gap:20px; }
}
@media (prefers-reduced-motion:reduce), (hover:none) {
  .producto, .producto:hover, .producto:focus-within { transform:none; }
  .memoria-carta:hover, .muestra-opciones button:hover:not(:disabled) { transform:none; }
}

/* Planificador y precios: parte del servicio, antes de las pruebas físicas. */
.producto__tabs { grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; padding-inline:18px; }
.producto__tabs button { gap:6px; }
.producto__tabs button span { font-size:13px; }
.plan-controles { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-bottom:18px; }
.plan-controles label { display:grid; gap:7px; color:#aab5c5; font-size:12px; }
.plan-controles select { font:inherit; width:100%; min-width:0; padding:11px 7px; background:#242c38; color:#e3e9f4; border:1px solid #505d70; border-radius:4px; color-scheme:dark; }
.plan-controles select:focus-visible { outline:2px solid #f2b292; outline-offset:3px; }
.plan-resumen { font-size:12px; color:#e9bb9e; }
.plan-muestra { list-style:none; padding:0; margin:16px 0; display:grid; gap:0; }
.plan-muestra li { padding:13px 0 13px 16px; border-left:1px solid #62738b; display:grid; gap:4px; position:relative; }
.plan-muestra li::before { content:""; position:absolute; left:-3px; top:19px; width:5px; height:5px; background:#c1cad7; border-radius:50%; }
.plan-muestra span { font-size:11px; color:#a1afc3; }
.plan-muestra strong { font-size:15px; font-weight:500; color:#f1f4fa; }
.plan-muestra small { font-size:12px; color:#909eaf; }
.precision .planificador { padding:90px 0; background:#1c222b; color:#edf1f9; }
.planificador__rejilla { display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:center; }
.precision .planificador .rotulo { color:#e6a688; }
.planificador h2 { font-weight:450; font-size:clamp(35px,4.4vw,59px); line-height:1.08; letter-spacing:-.05em; margin:18px 0 22px; }
.planificador p { max-width:43ch; color:#acb7c8; font-size:17px; }
.planificador a { color:#edbb9d; font-size:14px; text-underline-offset:6px; }
.planificador__pasos { list-style:none; padding:0; margin:0; }
.planificador__pasos li { display:flex; gap:24px; padding:24px 0; border-bottom:1px solid #3d495c; }
.planificador__pasos li > span { color:#94a4ba; font-size:13px; padding-top:3px; }
.planificador__pasos h3 { font-weight:500; font-size:21px; margin:0 0 6px; }
.planificador__pasos p { margin:0; font-size:15px; }
.precision .oferta__caja { max-width:1240px; }
.precio-lanzamiento { color:#f0b99a; font-size:16px; margin:28px 0; }
.precios { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); text-align:left; border:1px solid #424b58; border-radius:6px; margin-top:25px; }
.precio { padding:28px 25px; min-width:0; }
.precio + .precio { border-left:1px solid #424b58; }
.precio > span { color:#c8d0dd; font-size:14px; }
.precio p { color:#aab6c8; font-size:13px; margin:20px 0 12px; }
.precio strong { color:#f3f5fa; font-size:36px; font-weight:450; letter-spacing:-.055em; white-space:nowrap; }
.precio small { color:#aab6c8; font-size:13px; }
.precio--anual { background:#263142; border-radius:0 6px 6px 0; }
.precio--anual > span { color:#f1b69a; }
.precios-nota { color:#929fb3; font-size:13px; max-width:65ch; margin:20px auto 0; }
@media (max-width:850px) {
  .planificador__rejilla { grid-template-columns:1fr; gap:30px; }
  .precision .planificador { padding:60px 0; }
  .precio { padding:22px 16px; }
  .precio strong { font-size:30px; }
}
@media (max-width:560px) {
  .producto__tabs button { font-size:10px; gap:4px; }
  .producto__tabs button span { font-size:11px; }
  .producto__tabs { padding-inline:12px; gap:5px; }
  .precios { grid-template-columns:1fr; }
  .precio + .precio { border-left:0; border-top:1px solid #424b58; }
  .precio { padding:22px; }
  .precio--anual { border-radius:0 0 6px 6px; }
  .precio p { margin:10px 0; }
}

.producto__tabs { grid-template-columns:repeat(5,minmax(64px,1fr)); gap:4px; padding-inline:12px; overflow-x:auto; }
.producto__tabs button { flex-direction:column; align-items:center; gap:5px; padding-block:13px; font-size:10px; }
.producto__tabs button span { font-size:12px; white-space:nowrap; }
.muestra-acciones { align-items:center; margin:14px 0 0; }
.muestra-acciones button { flex:none; background:#efa381; color:#211915; border:1px solid #efa381; border-radius:5px; padding:11px 13px; font-weight:550; text-align:center; }
.muestra-acciones button:hover:not(:disabled) { background:#ffc5a8; }
.muestra-acciones button:disabled { background:#333a46; color:#b8c2d2; border-color:#566173; }
.memoria-carta { min-height:0; gap:18px; padding:21px; }
.memoria-carta__texto { display:grid; gap:10px; font-size:13px; line-height:1.55; letter-spacing:0; }
.memoria-carta__texto strong { font-size:16px; font-weight:500; margin-bottom:3px; }
.memoria-carta__texto > span { color:#cbd5e3; }
.memoria-valoracion { gap:7px; }
.memoria-valoracion button { padding:11px 5px; font-size:12px; }
.memoria-valoracion small { display:block; font-size:11px; margin-top:5px; color:#abb9cd; }
.memoria-valoracion button:first-child { border-color:#81a994; }
.memoria-valoracion button:last-child { border-color:#c3997e; }
.memoria-estado { color:#c5e1d3; font-size:13px; line-height:1.65; }
.memoria-estado:empty { display:none; }
.plan-progreso { display:flex; justify-content:space-between; gap:10px; color:#c6d1df; font-size:12px; margin:17px 0 9px; }
.producto progress { display:block; appearance:none; width:100%; height:6px; border:0; border-radius:9px; overflow:hidden; background:#39414e; color:#efa381; }
.producto progress::-webkit-progress-bar { background:#39414e; border-radius:9px; }
.producto progress::-webkit-progress-value { background:#efa381; border-radius:9px; }
.producto progress::-moz-progress-bar { background:#efa381; border-radius:9px; }
.plan-muestra { margin:14px 0; }
.plan-muestra li { padding:0; border-left:0; border-bottom:1px solid #ffffff13; }
.plan-muestra li::before { display:none; }
.plan-muestra label { display:flex; gap:12px; align-items:center; padding:11px 0; cursor:pointer; }
.plan-muestra input { flex:none; width:18px; height:18px; accent-color:#eda380; cursor:pointer; }
.plan-muestra input:focus-visible { outline:2px solid #f2b292; outline-offset:4px; }
.plan-muestra label > span { display:grid; gap:3px; }
.plan-muestra strong { font-size:13px; }
.plan-muestra small { font-size:11px; color:#a6b4c7; }
.plan-muestra li[data-done="true"] strong { color:#a0bdaf; text-decoration:line-through; }
.avance-numeros { display:grid; grid-template-columns:1fr 1fr; gap:22px 18px; border-block:1px solid #414957; padding:20px 0; margin:23px 0; }
.avance-numeros div { display:grid; gap:7px; }
.avance-numeros strong { color:#edf2f9; font-size:30px; line-height:1.1; font-weight:500; letter-spacing:-.04em; }
.avance-numeros span { color:#aab9cd; font-size:11px; }
.avance-cabecera { display:flex; justify-content:space-between; gap:12px; align-items:baseline; margin:20px 0 16px; }
.avance-cabecera h3 { margin:0; color:#e7edf6; font-size:14px; font-weight:500; }
.avance-cabecera > span { font-size:11px; color:#aab7ca; }
.avance-bloques { display:grid; gap:16px; }
.avance-bloques > div { display:grid; grid-template-columns:1fr auto; gap:9px; font-size:12px; color:#c4d0e1; }
.avance-bloques strong { font-weight:500; color:#f0c1a9; }
.avance-bloques progress { grid-column:1/-1; height:4px; }
.avance-consejo { padding:13px 16px; background:#252f3d; border-left:2px solid #e7ab8c; font-size:12px; color:#bfcddd; line-height:1.65; margin:22px 0 0; }
.avance-consejo > span { display:block; color:#f2c6ad; font-weight:500; margin-bottom:3px; }
.ranking-filtros { display:flex; gap:6px; background:#12161d; border-radius:5px; padding:4px; }
.ranking-filtros button { flex:1; border:1px solid transparent; border-radius:3px; padding:9px 6px; background:transparent; color:#a9b7ca; font-size:12px; }
.ranking-filtros button[aria-pressed="true"] { background:#333e4e; border-color:#546279; color:#f1f4f8; }
.ranking-posicion { display:flex; align-items:flex-end; justify-content:space-between; gap:20px; margin:22px 0 14px; }
.ranking-posicion > div { display:grid; gap:8px; }
.ranking-posicion > div:last-child { text-align:right; }
.ranking-posicion span { color:#b0bed0; font-size:12px; }
.ranking-posicion strong { font-size:32px; font-weight:500; letter-spacing:-.04em; line-height:1.1; }
.ranking-posicion small { font-size:13px; color:#b0bed0; font-weight:400; letter-spacing:0; }
.ranking-percentil { color:#f3bfa2; font-size:13px; margin:0; }
.ranking-grafica { display:block; width:100%; height:auto; overflow:visible; }
#ranking-barras { fill:#91acc6; opacity:.16; }
#ranking-area { fill:#96b6d4; opacity:.14; }
#ranking-curva { fill:none; stroke:#9cbbd7; stroke-width:2; }
#ranking-mediana { stroke:#a9b6c8; stroke-width:1; stroke-dasharray:3 4; }
#ranking-marca { stroke:#efa381; stroke-width:2; }
#ranking-punto { fill:#efa381; }
.ranking-eje { display:flex; justify-content:space-between; gap:12px; font-size:10px; color:#a8b7cb; }
.ranking-leyenda { display:flex; align-items:center; gap:8px; color:#efbb9d; font-size:12px; margin:12px 0 0; }
.ranking-leyenda i { width:7px; height:7px; border-radius:50%; background:#efa381; }
.fuentes__contenido { display:grid; grid-template-columns:1.2fr 1fr; gap:clamp(30px,5vw,75px); align-items:center; }
.precision .fuentes .rotulo { margin:0 0 17px; }
.fuentes h2 { font-size:clamp(28px,3vw,39px); }
.fuentes__intro { border:0; padding:0; margin:22px 0; font-size:16px; line-height:1.75; }
.fuentes__detalle { gap:20px; padding-top:20px; border-top:1px solid #454b56; }
.fuentes__detalle p { font-size:13px; }
.precision .fuentes__cifras { display:grid; grid-template-columns:1fr 1fr; gap:0; align-self:stretch; align-content:center; border-left:1px solid #454b56; padding-left:28px; }
.precision .fuentes__cifras .cifra { padding:25px 16px; border:0; display:flex; flex-direction:column; gap:11px; min-width:0; }
.precision .fuentes__cifras .cifra:nth-child(n+3) { border-top:1px solid #454b56; }
.precision .fuentes__cifras .cifra__numero { font-size:clamp(33px,3.8vw,52px); letter-spacing:-.04em; line-height:1; color:#f1c4ab; }
.precision .fuentes__cifras .cifra__pie { color:#b8c3d2; font-size:12px; line-height:1.6; max-width:21ch; }
@media (max-width:1000px) and (min-width:851px) {
  .precision .portada__rejilla { grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:22px; }
}
@media (max-width:850px) {
  .fuentes__contenido { grid-template-columns:1fr; gap:25px; }
  .precision .fuentes__cifras { border-left:0; border-top:1px solid #454b56; padding-left:0; grid-template-columns:repeat(4,1fr); }
  .precision .fuentes__cifras .cifra:nth-child(n+3) { border-top:0; }
}
@media (max-width:560px) {
  .precision .fuentes { padding:45px 0; }
  .precision .fuentes__cifras { grid-template-columns:1fr 1fr; }
  .precision .fuentes__cifras .cifra { padding:22px 8px; }
  .precision .fuentes__cifras .cifra:nth-child(n+3) { border-top:1px solid #454b56; }
  .muestra-acciones { flex-wrap:wrap; }
  .muestra-acciones button { margin-left:auto; }
  .producto__tabs { padding-inline:6px; gap:1px; }
  .producto__tabs button span { font-size:11px; }
  .avance-numeros strong { font-size:27px; }
}
