/* kjv-fit.css · Motor 2 · 9-nov-2026 · video del dueño «Arreglos Web»: cada sección completa en una pantalla,
   compacta y armónica; el click to call como globo que dice el avatar, pequeño y sin tapar nada.
   Todo vive bajo html.kfit (lo pone kjv-fit.js solo en pantallas ≥ 900 px de ancho). El teléfono no cambia. */

/* ---------- 0 · base: títulos y espacios de sección más compactos ---------- */
html.kfit .kfit-s{box-sizing:border-box!important;height:auto!important;max-height:none!important}
html.kfit .kfit-s .x-h2{font-size:clamp(38px,4.2vw,62px);margin-top:8px;margin-bottom:12px}
html.kfit .kfit-s .x-lead{margin-top:10px;margin-bottom:14px;font-size:clamp(16px,1.25vw,19px);line-height:1.45}
html.kfit .kfit-s .x-kick{margin-top:0;margin-bottom:6px}
html.kfit .kfit-s .ch-head,html.kfit .kfit-s>header{margin-bottom:clamp(14px,2.4vh,26px)!important}

/* ---------- 1 · Precios (pricing.html) ---------- */
/* hero: solo él en la primera pantalla */
html.kfit .xp-hero .x-h1{font-size:clamp(64px,7.4vw,112px);margin-top:10px;margin-bottom:14px}
/* tarjetas de beneficios: todo a la vista */
html.kfit .xp-cards{margin-top:18px!important;margin-bottom:6px!important}
html.kfit .xp-card{padding:18px 18px 16px!important}
html.kfit .xp-card h3{font-size:20px}
html.kfit .xp-card .xp-promise{font-size:16px;margin-bottom:4px;line-height:1.25}
html.kfit .xp-card .xp-best{font-size:12.5px;line-height:1.38;margin-bottom:8px}
html.kfit .xp-card .xp-subs{margin-bottom:10px;padding-bottom:10px}
html.kfit .xp-card ul{gap:6px!important;font-size:13px;line-height:1.36}
html.kfit .xp-card .x-btn{margin-top:12px;padding:11px 14px}
html.kfit .xp-card .xp-more{margin:10px 0 6px}
html.kfit .xp-card .m2g-chip{margin-top:6px;padding:4px 10px}
/* diagnóstico: 8 entregables en 4 columnas, dos filas */
html.kfit #diagnostico .xd-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:12px!important;margin-top:16px!important}
html.kfit #diagnostico .xd-c{grid-column:auto!important;grid-row:auto!important;padding:16px 16px 16px!important;gap:6px!important}
html.kfit #diagnostico .xd-c .xd-ic{width:34px;height:34px}
html.kfit #diagnostico .xd-c .xd-ic svg{width:18px;height:18px}
html.kfit #diagnostico .xd-c h3{font-size:15px!important;line-height:1.25;margin-top:2px}
html.kfit #diagnostico .xd-c p{font-size:12.5px!important;line-height:1.42}
html.kfit #diagnostico .xd-c.star{box-shadow:0 0 0 1px rgba(212,175,55,.55),0 18px 40px rgba(0,0,0,.25)}
html.kfit #diagnostico .xd-c.star p{max-width:none}
html.kfit #diagnostico .xd-c .xd-h{flex-wrap:wrap}
/* calculadora */
html.kfit .xc{gap:16px!important;margin-top:14px!important}
html.kfit .xc-box{padding:22px 24px!important}
/* tabla comparativa: filas más bajas */
html.kfit .xt-wrap{margin-top:12px!important}
html.kfit table.xt th,html.kfit table.xt td{padding-top:7px!important;padding-bottom:7px!important;line-height:1.3}
/* preguntas */
html.kfit .xf{margin-top:12px!important}
html.kfit .xf details summary{padding-top:13px!important;padding-bottom:13px!important}

/* ---------- 2 · click to call: el avatar te lo dice (globo de diálogo pequeño, sin tapar) ---------- */
html.kfit .x-fin-guia{left:auto!important;right:calc(50% + clamp(54px,4.6vw,86px))!important;top:clamp(4px,2%,22px)!important;
  width:clamp(176px,15vw,214px)!important;padding:10px 12px 10px!important;gap:4px!important;font-size:11.5px!important;line-height:1.35;
  border-radius:16px 16px 4px 16px!important;background:rgba(6,26,19,.94)!important;border:1px solid rgba(212,175,55,.6)!important;
  box-shadow:0 14px 34px rgba(0,0,0,.42)!important;transform-origin:100% 100%}
html.kfit .x-fin-guia::before,html.kfit .x-fin-guia::after{content:"";position:absolute;right:-10px;bottom:10px;border:9px solid transparent;border-left-color:rgba(212,175,55,.6);border-right:0}
html.kfit .x-fin-guia::after{right:-8px;bottom:11px;border-width:8px;border-left-color:rgba(6,26,19,.94)}
html.kfit .x-fin-guia b{font-size:12px!important}
html.kfit .x-fin-guia .x-fin-guia-d{font-size:11px!important;line-height:1.35}
html.kfit .x-fin-guia a{padding:6px 10px!important;font-size:11.5px!important}
html.kfit .x-fin-guia .x-fin-guia-free{font-size:11px!important}
html.kfit .x-fin.x-on .x-fin-guia{animation:kfitSay .7s cubic-bezier(.3,1.45,.5,1) both 1.1s}
@keyframes kfitSay{0%{opacity:0;transform:scale(.4) translate(20px,14px)}100%{opacity:1;transform:none}}
/* que las frases sobresalgan */
html.kfit .x-fin-side .x-fin-w{text-shadow:0 2px 24px rgba(0,0,0,.55)}
html.kfit .x-fin-side{z-index:6}

/* guía flotante: el globo de cada sección más pequeño y sin tapar contenido */
html.kfit .x-guide-say:not(.mini){max-width:212px!important;min-width:150px!important;padding:8px 12px 9px!important;font-size:12px!important;line-height:1.35}
html.kfit .x-guide-say:not(.mini) b{font-size:10px!important;margin-bottom:2px}

/* ---------- 3 · botón de la guía junto a la calculadora (portada) ---------- */
.xl-more{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;align-items:center}
.xl-more .kfit-guia{border:1px solid rgba(212,175,55,.6)}

@media (prefers-reduced-motion:reduce){html.kfit .x-fin.x-on .x-fin-guia{animation:none}}

/* ---------- 4 · Portada ---------- */
/* precios de la portada: a todo el ancho (tarjetas más anchas = más bajas), encabezado compacto */
html.kfit #ladder .in{max-width:min(1240px,92vw)!important;width:100%}
html.kfit #ladder header{text-align:center}
html.kfit #ladder header h2{font-size:clamp(34px,3.4vw,52px)!important;margin:6px auto 8px!important}
html.kfit #ladder header .lead{margin:4px auto 0!important;max-width:760px;font-size:16px}
html.kfit #ladder .xl{margin-top:14px!important}
html.kfit #ladder .xl-opts{justify-content:center}
html.kfit #ladder .xp-cards{margin-top:12px!important}
html.kfit #ladder .xl-more{margin:14px 0 4px!important}
/* la carta: papel más compacto, toda a la vista */
html.kfit #letter h2{margin-bottom:12px!important}
html.kfit #letter .paper{padding:30px 40px 30px!important;margin-top:12px!important;width:min(560px,100%)}
html.kfit #letter .paper .body{margin-top:16px!important;font-size:19px!important;line-height:1.5}
html.kfit #letter .paper .lh{gap:4px!important}
html.kfit #letter .paper .wax{width:64px;height:64px}
html.kfit #letter .cta{margin-top:16px!important}
/* «¿Guía gratis?» flotante: en escritorio el guía ya lleva a la guía; quitarlo evita que se monte sobre su globo */
html.kfit.x-g3-on .m2g-t{display:none!important}

/* ---------- 5 · Sobre mí ---------- */
/* héroe como el intro del CV: título + firma + texto | avatar completo | datos. Nada tapa el título. */
html.kfit .xa-hero{display:grid!important;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);grid-template-rows:auto auto;
  column-gap:clamp(20px,3vw,56px);align-items:center;align-content:center;padding-left:clamp(24px,5vw,90px)!important;padding-right:clamp(24px,5vw,90px)!important}
html.kfit .xa-hero .xa-t{grid-column:1;grid-row:1;align-self:end;padding:0!important;margin:0!important;text-align:right;position:relative;z-index:3}
html.kfit .xa-hero .xa-t .x-kick{justify-content:flex-end;margin-bottom:10px}
html.kfit .xa-hero .xa-t .x-h1{font-size:clamp(40px,4.2vw,66px)!important;line-height:.98!important;text-align:right;margin:0!important;width:auto!important}
html.kfit .xa-hero .xa-av{grid-column:2;grid-row:1/3;position:relative!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;
  transform:none!important;margin:0!important;height:min(649px,calc(100svh - 120px))!important;width:auto!important;aspect-ratio:460/649;z-index:2}
html.kfit .xa-hero .xa-av canvas,html.kfit .xa-hero .xa-av img{width:100%!important;height:100%!important;object-fit:contain}
html.kfit .xa-hero .xa-side{position:relative!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;width:auto!important;max-width:340px;z-index:3}
html.kfit .xa-hero .xa-side.l{grid-column:1;grid-row:2;align-self:start;justify-self:end;text-align:right;margin-top:18px}
html.kfit .xa-hero .xa-side.l img{margin-left:auto;display:block;width:200px;height:auto}
html.kfit .xa-hero .xa-side.l .xa-scroll{justify-content:flex-end}
html.kfit .xa-hero .xa-side.r{grid-column:3;grid-row:1/3;align-self:center;justify-self:start;text-align:left}
html.kfit .xa-hero .xa-side span{font-size:15px;line-height:1.5}


/* ---------- 6 · CV: dos columnas para que cada sección quepa entera ---------- */
html.kfit #hire .in,html.kfit #record .in{max-width:min(1240px,92vw)!important;width:100%;display:grid!important;column-gap:clamp(28px,3.4vw,56px);align-items:start}
html.kfit #hire .in>header h2,html.kfit #record .in>header h2{font-size:clamp(36px,3.6vw,54px)!important;margin:6px 0 10px!important}
html.kfit #hire .in>header .lead,html.kfit #record .in>header .lead{margin-top:6px!important;font-size:16px}
html.kfit #hire .in{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);grid-template-areas:"h s" "l s" "w s" "c s"}
html.kfit #hire .in>header{grid-area:h;text-align:left}
html.kfit #hire .in>header *{text-align:left;margin-left:0!important}
html.kfit #hire #charSel{grid-area:s;margin-top:0!important;width:100%!important;max-width:none!important;align-self:center}
html.kfit #hire .in>.lead.small{grid-area:l;margin-top:14px!important;text-align:left}
html.kfit #hire .in>.where{grid-area:w;margin-top:10px!important;width:100%!important;max-width:none!important}
html.kfit #hire .in>.where>div{padding:12px 14px!important}
html.kfit #hire .in>.cta{grid-area:c;margin-top:16px!important;justify-content:flex-start;flex-wrap:wrap}
html.kfit #record .in{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);grid-template-areas:"h c" "g c"}
html.kfit #record .in>header{grid-area:h;text-align:left}
html.kfit #record .in>header *{text-align:left;margin-left:0!important}
html.kfit #record .gt{grid-area:g;margin-top:12px!important;width:100%!important;max-width:none!important}
html.kfit #record .creds{grid-area:c;margin-top:0!important;width:100%!important;max-width:none!important;align-self:center}
html.kfit #record .creds h3{font-size:26px!important;margin-bottom:10px!important}
html.kfit #record .creds .cr-wall{gap:8px!important}
html.kfit #record .in{grid-template-rows:1fr auto auto 1fr;grid-template-areas:". c" "h c" "g c" ". c"}
html.kfit #record .in>header,html.kfit #record .gt{align-self:start}
html.kfit #record .in>header h2,html.kfit #record .in>header h2 *,html.kfit #hire .in>header h2,html.kfit #hire .in>header h2 *{text-align:left!important}
html.kfit #hire .in{grid-template-rows:1fr auto auto auto auto 1fr;grid-template-areas:". s" "h s" "l s" "w s" "c s" ". s"}

/* ---------- 7 · 10-nov (dueño): tamaño de lectura normal; títulos en una línea; rediseños para que quepa sin achicar ---------- */
html.kfit .kfit-s h2.xk:not(.x-h1){max-width:none!important;font-size:clamp(34px,3.3vw,50px)!important;line-height:1.06!important}
html.kfit .kfit-s .in>header h2.xk,html.kfit .kfit-s .in>header .lead{margin-left:auto;margin-right:auto}
html.kfit .kfit-s .in>header .lead{max-width:860px!important;margin-top:12px!important}
html.kfit .kfit-s .in>header h2.xk{margin-top:10px!important;margin-bottom:6px!important}
/* el problema: avisos a la izquierda, mensaje a la derecha */
html.kfit #problem .in{display:grid!important;grid-template-columns:minmax(300px,380px) minmax(0,1fr);column-gap:clamp(36px,5vw,80px);align-items:center;max-width:min(1180px,92vw)!important}
html.kfit #problem .in>.eyebrow{grid-column:1/-1;margin-bottom:14px}
html.kfit #problem .sl-stack{grid-column:1;grid-row:2/5;margin:0!important}
html.kfit #problem .sl-h{grid-column:2;margin:0 0 12px!important;font-size:clamp(34px,3.6vw,54px)!important;text-align:left!important;max-width:none!important}
html.kfit #problem .sl-h span{display:block}
html.kfit #problem .sl-kick{grid-column:2;margin:0!important;text-align:left!important;max-width:560px}
html.kfit #problem .cta{grid-column:2;margin-top:18px!important;justify-content:flex-start}
/* cómo vendo: sin hueco entre el título y los pasos */
html.kfit #method .sys{margin-top:14px!important;width:100%!important}
html.kfit #method .sys>svg{max-height:110px}
html.kfit #method .sys-meter{margin-top:14px!important}
/* el tráiler: el video a la medida de la pantalla */
html.kfit #film .filmbox{margin:14px auto 0!important;width:min(1030px,calc((100svh - 250px) * 1.778))!important;max-width:100%}
html.kfit #film .filmbox video{width:100%!important;height:auto!important}
html.kfit #film .tr-ch{margin-top:10px!important}
/* hacia dónde vamos: arcos más bajos */
html.kfit #horizon .dr-row{margin-top:18px!important}
html.kfit #horizon .door4{padding:40px 20px 18px!important}
html.kfit #horizon .flowline{margin:16px 0 6px!important}
html.kfit #horizon .cta{margin-top:10px!important}
/* el regalo */
html.kfit #gift .gift-in{padding:26px 34px!important;gap:40px!important;align-items:center}
html.kfit #gift .gift-photo{max-height:calc(100svh - 160px)}
html.kfit #gift .gift-photo img{max-height:calc(100svh - 160px);width:auto}
html.kfit #gift h2{margin-top:8px!important}
html.kfit #gift .gift-list{margin:10px 0 10px!important}
html.kfit #gift .nform{margin-top:12px!important}
/* precios de la portada: título en una línea, más presencia de los montos */
html.kfit #ladder .xp-card .xp-best{display:none}
html.kfit #ladder .xp-card .xp-price{font-size:17px}
/* la carta: papel horizontal */
html.kfit #letter .paper{width:min(860px,100%)!important;padding:26px 48px 26px!important}
html.kfit #letter .paper .body{font-size:18px!important;line-height:1.5!important;column-count:1}
html.kfit #ladder .xp-card .xp-promise{display:none}
html.kfit #ladder .xp-card ul{gap:3px!important;font-size:12.5px}
html.kfit #ladder .xp-card .xp-subs{margin-bottom:6px;padding-bottom:6px}
html.kfit #ladder header .lead{display:none}
html.kfit #letter .paper{padding:20px 48px 18px!important}
html.kfit #letter .paper .lh{margin-bottom:0!important}
html.kfit #letter .paper .body{margin-top:10px!important}
html.kfit #horizon .door4{padding-top:30px!important}

/* ---------- 8 · CV: intro con el avatar más arriba (la firma la coloca kjv-fit.js debajo de él) ---------- */
html.kfit .cvhero .x-hav.cv{top:clamp(66px,9.5vh,86px)!important;height:calc(100svh - 200px)!important;width:auto!important;aspect-ratio:339/540;bottom:auto!important}
html.kfit .cvhero .x-hav.cv canvas{width:100%!important;height:100%!important}
html.kfit .cvhero .cv-firma{z-index:6;filter:drop-shadow(0 4px 14px rgba(0,0,0,.45))}

/* ---------- 9 · CV · «Dónde lo aprendí»: al centro, credenciales clave en una fila ---------- */
#record .cr-wall>li.kfit-more{display:none}
#record .cr-wall.kfit-all>li.kfit-more{display:revert;animation:kfitIn .45s ease both}
@keyframes kfitIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.kfit-crmore{display:block;margin:12px auto 0;padding:9px 18px;border-radius:99px;border:1px solid rgba(212,175,55,.6);background:rgba(212,175,55,.08);color:#F3DD8A;font:600 13px/1 var(--body,system-ui);cursor:pointer;letter-spacing:.02em}
.kfit-crmore:hover,.kfit-crmore:focus-visible{background:rgba(212,175,55,.18);outline:none}
html[data-theme="light"] .kfit-crmore{color:#0F6B45;border-color:rgba(15,107,69,.5);background:rgba(15,107,69,.06)}
html.kfit #record .in{display:flex!important;flex-direction:column;align-items:center;max-width:min(1180px,92vw)!important;grid-template-areas:none!important}
html.kfit #record .in>header{text-align:center!important}
html.kfit #record .in>header *,html.kfit #record .in>header h2,html.kfit #record .in>header h2 *{text-align:center!important;margin-left:auto!important;margin-right:auto!important}
html.kfit #record .gt{width:min(900px,100%)!important;margin:14px auto 0!important;align-self:center}
html.kfit #record .creds{width:100%!important;margin-top:18px!important;align-self:stretch}
html.kfit #record .creds h3{text-align:center;font-size:22px!important;margin-bottom:10px!important}
html.kfit #record .creds .cr-wall{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px!important}
html.kfit #record .creds .cr-wall.kfit-all{grid-template-columns:repeat(5,minmax(0,1fr))}
html.kfit #record .creds .cr-wall>li{grid-column:auto!important;grid-row:auto!important;min-height:0!important}
html.kfit #record .creds .fine{text-align:center;margin:8px 0 0!important}
html.kfit #record .gt-rows{gap:2px!important}
html.kfit #record .gt-b{padding-top:6px!important;padding-bottom:6px!important;font-size:15px!important}
html.kfit #record .gt-d{margin-bottom:4px!important;font-size:13.5px!important}
html.kfit #record .in>header .lead{margin-top:4px!important;font-size:15px}
html.kfit #record .creds{margin-top:12px!important}
html.kfit #record .creds h3{display:none}
html.kfit #record .cr-wall>li{padding:12px 12px 10px!important;gap:4px!important}
html.kfit #record .cr-wall>li .cr-logo{width:34px!important;height:34px!important}
html.kfit #record .cr-wall>li>b{font-size:15px!important;line-height:1.25}
html.kfit #record .cr-wall>li .cr-links{margin-top:2px!important;padding-top:6px!important}
html.kfit #record .in>header{width:100%!important;max-width:none!important;display:flex;flex-direction:column;align-items:center}
html.kfit #record .in>header .eyebrow{justify-content:center}
html.kfit #record .gt-b{white-space:nowrap}
html.kfit #record .cr-wall>li>span{font-size:12px!important}
html.kfit #record .kfit-crmore{margin-top:8px;padding:7px 16px}

/* ---------- 10 · Servicios · catálogo: selector a la izquierda, 6 servicios a la derecha ---------- */
html.kfit #estudio{display:grid!important;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);column-gap:clamp(24px,3vw,44px);align-items:start;
  grid-template-areas:"k s" "h s" "l s" "g s" "n s";max-width:min(1320px,94vw)!important}
html.kfit #estudio>.x-kick{grid-area:k}
html.kfit #estudio>h2{grid-area:h;font-size:clamp(30px,2.8vw,42px)!important;margin:4px 0 6px!important}
html.kfit #estudio>.x-lead{grid-area:l;font-size:15px!important;margin:0 0 10px!important}
html.kfit #estudio>.sv3-goal{grid-area:g;margin:0!important;padding:16px!important;display:flex!important;flex-direction:column;gap:12px!important}
html.kfit #estudio>.sv3-goal>*{width:auto!important;max-width:none!important}
html.kfit #estudio .sv3-rec{padding:14px 16px!important}
html.kfit #estudio>.sv3-k2{grid-area:s;align-self:start;margin:0 0 8px!important;position:relative;z-index:1}
html.kfit #estudio>.sv6{grid-area:s;margin-top:24px!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
html.kfit #estudio .sv6-c{padding:14px 16px!important;gap:5px!important}
html.kfit #estudio .sv6-c h3{font-size:17px!important;line-height:1.2}
html.kfit #estudio .sv6-c p{font-size:13px!important;line-height:1.4;margin:0!important}
html.kfit #estudio>.sv6-note{grid-area:n;margin-top:10px!important;font-size:12.5px}
html.kfit #estudio .sv3-gl button,html.kfit #estudio .sv3-gl [role="radio"],html.kfit #estudio .sv3-gl label{padding-top:7px!important;padding-bottom:7px!important;min-height:0!important}
html.kfit #estudio .sv3-rec h3,html.kfit #estudio .sv3-rec h4{font-size:20px!important;margin:2px 0!important}
html.kfit #estudio .sv3-rec p{font-size:14px!important;margin:2px 0 6px!important}
/* v2: arriba título | selector; abajo los 6 servicios en 3 × 2 */
html.kfit #estudio{grid-template-columns:minmax(0,.62fr) minmax(0,1.38fr)!important;grid-template-areas:"k g" "h g" "l g" "t t" "s s" "n n"!important;row-gap:0}
html.kfit #estudio>.sv3-goal{flex-direction:row!important;align-items:stretch;padding:12px!important}
html.kfit #estudio>.sv3-goal>.sv3-gl{flex:1 1 52%}
html.kfit #estudio>.sv3-goal>.sv3-rec{flex:1 1 48%;display:flex;flex-direction:column;justify-content:center}
html.kfit #estudio>.sv3-k2{grid-area:t;margin:14px 0 8px!important}
html.kfit #estudio>.sv6{grid-area:s;margin-top:0!important;grid-template-columns:repeat(3,minmax(0,1fr))!important}
html.kfit #estudio>.sv6-note{grid-area:n}
html.kfit #estudio{--kfit-min:.88;grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr)!important}
html.kfit #estudio .sv6-c{padding:12px 14px!important}
html.kfit #estudio .sv6-c h3{margin:0!important}
html.kfit #estudio>.sv3-k2{margin:10px 0 6px!important}
html.kfit #estudio>.sv6-note{margin-top:6px!important}
html.kfit #estudio>.sv3-k2{display:none}
html.kfit #estudio>.sv6{margin-top:14px!important}

/* ---------- 11 · Precios: más presencia, sin pasarse de la pantalla ---------- */
/* encabezados en dos columnas: título a la izquierda, explicación a la derecha */
html.kfit #diagnostico,html.kfit section[aria-labelledby="xcT"]{display:grid!important;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);column-gap:36px;grid-template-areas:"k k" "h l" "b b" "b2 b2"}
html.kfit #diagnostico>.x-kick,html.kfit section[aria-labelledby="xcT"]>.x-kick{grid-area:k}
html.kfit #diagnostico>h2,html.kfit section[aria-labelledby="xcT"]>h2{grid-area:h;margin:4px 0 0!important;align-self:end}
html.kfit #diagnostico>.x-lead,html.kfit section[aria-labelledby="xcT"]>.x-lead{grid-area:l;align-self:end;margin:0 0 4px!important;font-size:15px!important}
html.kfit #diagnostico>.xd-grid,html.kfit section[aria-labelledby="xcT"]>.xc{grid-area:b}
html.kfit #diagnostico>*:not(.x-kick):not(h2):not(.x-lead):not(.xd-grid),html.kfit section[aria-labelledby="xcT"]>*:not(.x-kick):not(h2):not(.x-lead):not(.xc){grid-column:1/-1}
html.kfit #diagnostico .xd-c{padding:14px 14px 13px!important}
html.kfit #diagnostico .xd-c p{font-size:12.5px!important}
html.kfit .xc-box{padding:18px 20px!important}
/* tarjetas: montos más grandes, el recomendado resalta */
html.kfit .xp-cards .xp-price{font-size:17px}
html.kfit .xp-cards .xp-price b,html.kfit .xp-cards .xp-price strong{font-size:clamp(30px,2.6vw,40px)}
html.kfit .xp-cards .xp-card.rec{transform:translateY(-6px);box-shadow:0 0 0 1px rgba(212,175,55,.75),0 24px 60px rgba(212,175,55,.14)}
html.kfit .xp-card ul{font-size:12.8px}
html.kfit .xp-card .xp-best{font-size:12px;margin-bottom:6px}

/* ---------- 12 · Sobre mí · «Cómo trabajo» (dueño 10-nov): como antes, uno por uno con el scroll (texto de un lado, partículas del otro),
   pero compacto: el título vive dentro del escenario fijo y todo cabe en una pantalla ---------- */
html.kfit .x-how2{padding-top:0!important;padding-bottom:0!important}
html.kfit .x-how2 .xa-track{margin-top:0!important}
html.kfit .x-how2 .x-lab-st{top:var(--kfit-hh,64px)!important;height:calc(100svh - var(--kfit-hh,64px))!important}
html.kfit .x-how2 .x-lab-st>.x-lab-cv{height:100%!important}
html.kfit .x-how2 .x-lab-st>ol{top:0!important;bottom:0!important;height:auto!important}
.kfit-howh{position:absolute;left:0;right:0;top:clamp(8px,2vh,20px);z-index:4;text-align:center;pointer-events:none}
.kfit-howh .x-kick{justify-content:center;margin:0 0 6px!important}
.kfit-howh h2{font-size:clamp(28px,2.7vw,42px)!important;margin:0!important;line-height:1.05!important}
html.kfit .x-how2 .x-how-loop{margin:10px 0 24px!important}

/* ---------- 13 · Precios · pedidos del dueño (10-nov) ---------- */
/* textos bajo el nombre del plan: legibles */
html.kfit .xp-card .xp-promise{font-size:15.5px!important;line-height:1.3!important;color:#F3DD8A}
html.kfit .xp-card .xp-best{font-size:13.5px!important;line-height:1.42!important;color:rgba(247,241,230,.9)!important}
html[data-theme="light"].kfit .xp-card .xp-promise{color:#0F6B45}
html[data-theme="light"].kfit .xp-card .xp-best{color:#173d2d!important}
/* el enlace que se montaba detrás de «Agendar el diagnóstico»: fuera (la sección de entregables está justo debajo) */
html.kfit .xp-card .xp-more{display:none!important}
/* calculadora: los números arriba y todos a la vista */
html.kfit .xc{align-items:start!important}
html.kfit .xc>.xc-out{padding:16px 18px!important;margin-top:0!important}
html.kfit .xc>.xc-out>*{margin-top:0!important}
html.kfit .xc>.xc-out>*+*{margin-top:10px!important}
html.kfit .xc-out [class*="big"],html.kfit .xc-out strong{line-height:1.05}
/* compara: tabla más compacta y con más presencia del título */
html.kfit table.xt th,html.kfit table.xt td{padding-top:5px!important;padding-bottom:5px!important;font-size:13px}
html.kfit table.xt thead th{font-size:12px;letter-spacing:.08em}
/* preguntas: en dos columnas, título con presencia */
html.kfit .xf{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:28px;width:min(1180px,100%)!important;max-width:none!important;align-items:start}
html.kfit .xf details summary{font-size:16px!important}
html.kfit .xp-card .m2g-chip{display:none!important}

/* ---------- 14 · Portada · entrada: los textos un poco más arriba (dueño, video) — desde el primer pintado ---------- */
@media (min-width:900px) and (min-height:540px){
  #intro .h4-title{top:-7vh}
  #intro .h4-side{position:relative;top:-9vh}
}
/* pantallas bajas (≤ 760 px de alto): un poco más de margen de escala en las secciones más densas */
@media (max-height:760px){
  html.kfit #hire,html.kfit section.xp-biz,html.kfit #record{--kfit-min:.86}
}

/* ---------- 15 · Reseñas en «De dónde sale esto» (se muestran solo las aprobadas por cada cliente) ---------- */
.kfit-rv{position:relative;z-index:2;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:clamp(16px,2.6vh,28px) auto 0;width:min(1180px,92vw);text-align:left}
.kfit-rv-c{position:relative;margin:0;display:flex;flex-direction:column;gap:10px;padding:18px 20px 16px;border-radius:18px;
  background:linear-gradient(160deg,rgba(212,175,55,.10),rgba(6,26,19,.65) 45%);border:1px solid rgba(212,175,55,.38);box-shadow:0 18px 44px rgba(0,0,0,.28);
  animation:kfitIn .6s cubic-bezier(.2,.8,.2,1) both;animation-delay:calc(var(--i) * 120ms)}
.kfit-rv-top{display:flex;align-items:center;gap:10px;font:700 12px/1.2 var(--body,system-ui);letter-spacing:.1em;text-transform:uppercase;color:#F3DD8A}
.kfit-rv-top img{width:38px;height:38px;border-radius:10px;object-fit:cover;border:1px solid rgba(212,175,55,.4)}
.kfit-rv-top i{margin-left:auto;font-style:normal;color:#D4AF37;letter-spacing:.08em;font-size:12px}
.kfit-rv-c blockquote{margin:0;font:400 16px/1.5 var(--display,Georgia,serif);font-style:italic;color:#F7F1E6}
.kfit-rv-c figcaption{margin-top:auto;display:flex;flex-direction:column;gap:2px;padding-top:10px;border-top:1px solid rgba(212,175,55,.22)}
.kfit-rv-c figcaption b{font:700 14px/1.2 var(--body,system-ui);color:#F7F1E6}
.kfit-rv-c figcaption small{font-size:12px;color:rgba(247,241,230,.72)}
.kfit-rv-c figcaption small.kfit-rv-loc{display:inline-flex;align-items:center;gap:5px;color:#D4AF37;font-weight:600;letter-spacing:.02em}
.kfit-rv-c figcaption a{margin-top:6px;font-size:12px;font-weight:600;color:#D4AF37;text-decoration:none}
.kfit-rv-c figcaption a:hover{text-decoration:underline}
.kfit-rv-flag{position:absolute;top:-10px;right:14px;padding:3px 10px;border-radius:99px;background:#8a1c1c;color:#fff;font:700 10px/1.4 var(--body,system-ui);letter-spacing:.06em}
html[data-theme="light"] .kfit-rv-c{background:linear-gradient(160deg,rgba(15,107,69,.08),rgba(255,253,247,.95) 45%);border-color:rgba(15,107,69,.3)}
html[data-theme="light"] .kfit-rv-c blockquote,html[data-theme="light"] .kfit-rv-c figcaption b{color:#10291f}
html[data-theme="light"] .kfit-rv-c figcaption small.kfit-rv-loc{color:#8A6A12}
html[data-theme="light"] .kfit-rv-c figcaption small{color:#3b4a40}
html[data-theme="light"] .kfit-rv-top{color:#0F6B45}
@media (max-width:819px){.kfit-rv{grid-template-columns:1fr;gap:12px}.kfit-rv-c blockquote{font-size:15px}}
@media (prefers-reduced-motion:reduce){.kfit-rv-c{animation:none}}

/* ---------- 16 · «De dónde sale esto» reconfigurado: título y texto | botones y nota; abajo, las reseñas ---------- */
html.kfit #desk{display:grid!important;grid-template-columns:minmax(0,640px) minmax(0,440px);justify-content:center;column-gap:clamp(32px,4vw,64px);row-gap:12px;align-items:center}
html.kfit #desk>.rv{grid-column:1;grid-row:1/3;text-align:left!important;width:auto!important;max-width:none!important;margin:0!important}
html.kfit #desk>.rv *{text-align:left!important;margin-left:0!important}
html.kfit #desk>.rv h2{font-size:clamp(34px,3.2vw,50px)!important}
html.kfit #desk>.cta{grid-column:2;grid-row:1;align-self:end;display:flex!important;flex-direction:row!important;flex-wrap:wrap;gap:10px;margin:0!important;width:auto!important}
html.kfit #desk>.fine{grid-column:2;grid-row:2;align-self:start;text-align:left!important;margin:4px 0 0!important;max-width:none!important;width:auto!important;font-size:12.5px;line-height:1.5;opacity:.85}
html.kfit #desk>.kfit-rv{grid-column:1/-1;grid-row:3;width:100%;max-width:1120px;margin-top:clamp(14px,2.4vh,24px)}
@media (max-width:819px){#estudio .sv6{max-width:100%;box-sizing:border-box}}

/* ---------- 17 · Video del teléfono (dueño 10-nov) ---------- */
/* el guía ofrece la guía gratis desde su globo: la pastilla suelta sobra en todas las pantallas */
html.kfit-gift .m2g-t{display:none!important}
.x-guide-say .kfit-gb{color:#F3DD8A;letter-spacing:.04em!important;text-transform:none!important;font-size:12px!important}
/* precios de la portada: todas las tarjetas del mismo tamaño y con todos los beneficios */
#ladder.kfit-full-on .xp-cards{align-items:stretch!important}
#ladder.kfit-full-on .xp-card ul.kfit-full li{font-size:12.5px;line-height:1.35}
@media (max-width:899px){
  #ladder .xp-cards>.xp-card,#ladder .xp-cards>.xp-card.mv-on{width:272px!important;flex:0 0 272px!important;height:auto!important;transform:none!important;align-self:stretch!important}
  #horizon .dr-row{align-items:stretch!important}
  #horizon .dr-row>.door4,#horizon .dr-row>.door4.mv-on{width:272px!important;flex:0 0 272px!important;height:auto!important;transform:none!important;align-self:stretch!important}
}
/* hacia dónde vamos (escritorio): arcos iguales y alineados */
#horizon .dr-row{align-items:stretch}
#horizon .door4{display:flex;flex-direction:column}
/* cierre en el teléfono (dueño, video 10-nov): el avatar al CENTRO, caminando; el globo a su IZQUIERDA, a la altura de la cara, como si lo dijera */
@media (max-width:819px){
  html body .x-fin .x-fin-stage .x-fin-av,html body .x-fin .x-fin-stage .x-fin-av.x-fin-full{justify-self:center!important;margin-left:auto!important;margin-right:auto!important}
  .x-fin .x-fin-guia{justify-self:start!important;align-self:start!important;margin-top:7%!important;width:min(31vw,124px)!important;left:0!important;right:auto!important;z-index:7!important;
    border-radius:16px 16px 4px 16px!important;box-shadow:0 12px 28px rgba(0,0,0,.35)}
  .x-fin .x-fin-guia::before{content:"";position:absolute;right:-9px;left:auto;top:18px;border:8px solid transparent;border-left-color:rgba(212,175,55,.6);border-right:0}
  .x-fin .x-fin-guia::after{content:"";position:absolute;right:-7px;left:auto;top:19px;border:7px solid transparent;border-left-color:rgba(6,26,19,.94);border-right:0}
}
#ladder.kfit-full-on .xp-card ul li.xp-plus{display:grid!important}
/* el nombre vertical del CV, también en las portadas de Sobre mí, Servicios y Precios (dueño 10-nov) */
.kfit-vname{display:none}
@media (min-width:1100px){
  .kfit-vname{display:flex;position:absolute;z-index:0;top:50%;right:max(1.2vw,calc((100vw - 1440px) / 2));flex-direction:column;align-items:flex-start;gap:.06em;writing-mode:vertical-rl;transform:translateY(-50%) rotate(180deg);
    font:900 clamp(44px,6.6vh,78px)/.8 var(--body,'Montserrat',system-ui);letter-spacing:-.05em;text-transform:uppercase;color:transparent;-webkit-text-stroke:1.5px rgba(212,175,55,.28);pointer-events:none;user-select:none}
  .kfit-vname span{display:block;opacity:0;transform:translateY(-35%);transition:transform 1.4s cubic-bezier(.16,1,.3,1),opacity 1s}
  .kfit-vname span:nth-child(2){transition-delay:.12s;-webkit-text-stroke-color:rgba(212,175,55,.45)}
  .kfit-vname span:nth-child(3){transition-delay:.24s}
  .kfit-vname.in span{opacity:1;transform:none}
  html[data-theme="light"] .kfit-vname{-webkit-text-stroke-color:rgba(15,107,69,.3)}
  .xp-hero .kfit-vname{right:calc((100% - 100vw) / 2 + max(1.2vw,calc((100vw - 1440px) / 2)))}
}
@media (prefers-reduced-motion:reduce){.kfit-vname span{transition:none;opacity:1;transform:none}}

/* === Dueño 10-nov (video WA0000) · cierre: el avatar comenta «¿Quieres la guía? Presiona aquí» — pequeño, sin botón, más arriba
   (se ve la chaqueta), detrás del avatar y sin tapar nada === */
html .x-fin .x-fin-guia.kfit-fgc{width:auto!important;max-width:min(46vw,190px)!important;padding:7px 11px!important;gap:0!important;z-index:1!important;top:0!important;margin-top:0!important}
html .x-fin .x-fin-guia.kfit-fgc a.kfit-fgt{display:block;margin:0;padding:0!important;background:none!important;border-radius:0;color:#F7F1E6!important;font:600 12px/1.3 var(--body,system-ui)!important;text-decoration:none;white-space:normal}
html .x-fin .x-fin-guia.kfit-fgc a.kfit-fgt u{color:#E6C766;text-underline-offset:2px;white-space:nowrap}
html .x-fin .x-fin-guia.kfit-fgc a.kfit-fgt:hover{filter:none}
html .x-fin .x-fin-guia.kfit-fgc a.kfit-fgt:hover u{color:#fff}
@media (max-width:819px){html .x-fin .x-fin-guia.kfit-fgc{max-width:min(34vw,128px)!important;padding:6px 9px!important;margin-top:2%!important}html .x-fin .x-fin-guia.kfit-fgc a.kfit-fgt{font-size:11px!important}}

/* === Dueño 10-nov (video WA0000) · el guía de la esquina nunca se monta sobre botones, enlaces ni títulos: se aparta y vuelve === */
.x-guide.kfit-gdodge,.mv-guide.kfit-gdodge{opacity:0!important;visibility:hidden!important;pointer-events:none!important;transition:opacity .28s ease,visibility 0s linear .28s}
.x-guide.kfit-gdodge *,.mv-guide.kfit-gdodge *{pointer-events:none!important}
/* el riel de puntos de la derecha termina ENCIMA del guía y de su globo (antes el guía tapaba «ORIGEN» y «Hablemos») */
html.x-g3-on .rail{top:auto!important;bottom:calc(clamp(210px,33vh,350px) * .86 + 84px)!important;transform:none!important}

/* 11-nov (dueño): flechas para pasar de lado a lado con ratón en pantallas angostas (kjv-fit.js lado()) */
.kjv-lado{position:absolute;z-index:6;display:grid;place-items:center;padding:0 0 3px;border-radius:50%;border:1px solid rgba(212,175,55,.75);background:rgba(6,26,19,.92);color:#F2D98B;font:700 24px/1 system-ui,sans-serif;cursor:pointer;box-shadow:0 6px 18px rgba(0,0,0,.4);transition:background .2s,color .2s,transform .2s}
.kjv-lado[hidden]{display:none}.kjv-lado:hover,.kjv-lado:focus-visible{background:#D4AF37;color:#061A13;transform:scale(1.08)}
:root[data-theme="light"] .kjv-lado{background:rgba(251,248,240,.96);color:#6B4E16;border-color:#B8902A}
.kjv-lado-on{cursor:grab}.kjv-lado-drag{cursor:grabbing!important;user-select:none}.kjv-lado-drag *{pointer-events:none}
@media print{.kjv-lado{display:none}}

/* 11-nov (dueño): «Juego limpio» mejor configurado y preguntas más concretas. Computadora: lo que no prometemos | preguntas,
   alineados arriba y del mismo peso; tablet y teléfono: apilado a todo el ancho. La primera pregunta abre sola. */
.svc-trust{align-items:start!important}
.svc-trust .kfit-faq{margin:0!important;max-width:none!important;width:100%!important;display:block!important}
.kfit-faq .kfit-faq-t{margin:6px 0 16px;font:700 clamp(22px,2.1vw,30px)/1.15 var(--body,inherit);color:var(--head,#F7F1E6)}
.kfit-faq .kfit-faq-t em{font-family:var(--serif,Georgia,serif);font-weight:400;color:var(--gold,#D4AF37)}
.kfit-faq details{border:1px solid var(--sv-line,rgba(247,241,230,.14));border-radius:14px;background:var(--sv-card,rgba(255,255,255,.03));margin:0 0 8px;transition:border-color .25s,background .25s}
.kfit-faq details[open]{border-color:rgba(212,175,55,.55);background:rgba(212,175,55,.06)}
.kfit-faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:14px;padding:13px 16px!important;font:700 clamp(15px,1.15vw,17px)/1.35 var(--body,inherit)!important;color:var(--head,#F7F1E6)}
.kfit-faq summary::-webkit-details-marker{display:none}
.kfit-faq summary::after{content:"+";flex:none;display:grid;place-items:center;width:26px;height:26px;border-radius:50%;border:1px solid rgba(212,175,55,.6);font:400 20px/1 system-ui,sans-serif;color:var(--gold,#D4AF37);transition:transform .3s}
.kfit-faq details[open] summary::after{transform:rotate(45deg)}
.kfit-faq details p{margin:0;padding:0 16px 14px;font-size:clamp(14px,1.05vw,15.5px);line-height:1.55;color:var(--ink,#E9E2D3)}
.kfit-faq details p a{color:var(--gold,#D4AF37);font-weight:700;text-decoration:underline;text-underline-offset:3px}
:root[data-theme="light"] .kfit-faq .kfit-faq-t,:root[data-theme="light"] .kfit-faq summary{color:#10261D}
:root[data-theme="light"] .kfit-faq details p{color:#2F3833}
:root[data-theme="light"] .kfit-faq details p a{color:#6B4E16}
@media (max-width:899px){.svc-trust{grid-template-columns:1fr!important}.svc-trust .kfit-faq{margin-top:26px!important}}
/* 11-nov: la carta lleva un párrafo más (pedido del dueño); para que siga entera en una pantalla, el papel se ensancha y la letra baja un punto */
html.kfit #letter .paper{width:min(1000px,100%)!important;max-width:1000px!important}
html.kfit #letter .paper .body{font-size:16.5px!important;line-height:1.45!important}
html.kfit #letter .paper .body p{margin-top:0;margin-bottom:9px}
/* 11-nov (dueño): «KEVIN JIMÉNEZ VERGARA» en UNA sola línea, no en tres renglones, e igual en todas las páginas (CV, Sobre mí,
   Servicios, Precios). Sigue en la franja de la derecha con el mismo trazo dorado y la misma entrada; solo cambia a una línea. */

@media (min-width:1100px){.kfit-vname{flex-direction:row!important;align-items:center!important;gap:.3em!important;white-space:nowrap;font-size:min(5.6vh,62px)!important}}
/* 11-nov (dueño): «igual en todos lados y para todos los dispositivos». Computadora (>=1100 px): franja vertical a la derecha, una
   línea, mismo tamaño en CV, Sobre mí, Servicios y Precios. Tablet y teléfono (<1100 px): una sola línea HORIZONTAL al pie de la
   portada, a todo el ancho, con el mismo trazo dorado, detrás del contenido (no tapa botones ni textos). */
@media (min-width:1100px){html .kfit-vname{font-size:clamp(28px,4.2vh,44px)!important;letter-spacing:-.05em!important;-webkit-text-stroke-width:1.2px!important;right:clamp(8px,1vw,18px)!important}}  /* = el del CV (#pagetop.x-cv3 .x-cvbig), que es el modelo */
@media (max-width:1099px){
  html .kfit-vname{display:flex!important;position:absolute!important;z-index:0!important;writing-mode:horizontal-tb!important;flex-direction:row!important;align-items:baseline!important;justify-content:center!important;gap:.3em!important;white-space:nowrap!important;
    top:auto!important;right:auto!important;left:50%!important;bottom:10px!important;transform:translateX(-50%)!important;width:max-content!important;font:900 calc((100vw - 28px) / 15.2)/1 var(--body,'Montserrat',system-ui)!important;letter-spacing:-.04em!important;
    text-transform:uppercase;color:transparent!important;-webkit-text-stroke:1.2px rgba(212,175,55,.34)!important;pointer-events:none!important;user-select:none}
  html .kfit-vname span{display:inline-block!important;transform:translateX(18%);opacity:0}
  html .kfit-vname.in span{transform:none!important;opacity:1!important}


}
/* CV en tablet y teléfono: la misma línea horizontal, en el flujo (antes del avatar) para no pisar los números */
@media (max-width:999px){#pagetop.x-cv3 .x-cvbig,#pagetop .x-cvbig{display:flex!important;position:relative!important;order:2;left:auto!important;bottom:auto!important;transform:none!important;margin:4px auto 2px!important;font-size:calc((100vw - 28px) / 15.2)!important}
  #pagetop.x-cv3 .x-cvbig span{display:inline-block!important;margin-inline-end:0!important}}
@media (max-width:999px){#pagetop.x-cv3 .x-cvbig.x-tr,#pagetop .x-cvbig .x-tr{display:none!important}}
@media (max-width:999px){html .x-cvbig{writing-mode:horizontal-tb!important;flex-direction:row!important;align-items:baseline!important;justify-content:center!important;gap:.3em!important;white-space:nowrap!important;width:max-content!important;line-height:1!important;letter-spacing:-.04em!important;-webkit-text-stroke:1.2px rgba(212,175,55,.34)!important} html .x-cvbig span{display:inline-block!important;transform:translateX(18%);opacity:0} html .x-cv2-in .x-cvbig span{transform:none!important;opacity:1!important}}
/* 11-nov: en tablet y teléfono la línea va EN EL FLUJO, como último renglón de la portada (al pie se montaba sobre botones y textos) */
@media (max-width:1099px){html .kfit-vname{position:relative!important;left:auto!important;bottom:auto!important;transform:none!important;margin:18px auto 6px!important;grid-column:1/-1!important;grid-row:auto!important;align-self:center!important;justify-self:center!important;order:99}}
@media (min-width:900px) and (max-width:1099px){html .svc-hero .kfit-vname{margin-top:74px!important}}

/* 11-nov (dueño): la carta cerrada parece una carta (hojas apiladas, sello) y cabe en la sección; clic = se abre completa */
#letter .paper.kfit-carta{cursor:pointer;transition:transform .35s ease,box-shadow .35s ease;box-shadow:0 1px 0 rgba(255,255,255,.6) inset,7px 9px 0 -3px #E9DFC9,14px 18px 0 -6px #DCCFB2,0 40px 90px -40px rgba(0,0,0,.65),0 10px 30px -18px rgba(0,0,0,.4)!important}
#letter .paper.kfit-cerrada{transform:rotate(-.8deg)}
#letter .paper.kfit-cerrada:hover,#letter .paper.kfit-cerrada:focus-visible{transform:rotate(0) translateY(-4px)}
#letter .paper.kfit-abierta{cursor:auto;transform:none}
#letter .paper .body{transition:max-height .7s cubic-bezier(.2,.8,.2,1)}
#letter .paper.kfit-cerrada .body{max-height:clamp(150px,22vh,210px);overflow:hidden;-webkit-mask-image:linear-gradient(#000 35%,transparent 96%);mask-image:linear-gradient(#000 35%,transparent 96%);pointer-events:none}
#letter .paper.kfit-cerrada .foot{margin-top:6px!important}
.kfit-leer{position:absolute;left:50%;bottom:clamp(30px,5vh,46px);transform:translateX(-50%);display:inline-flex;align-items:center;gap:8px;padding:10px 20px;border-radius:99px;background:#0B3D2E;color:#F7F1E6;font:700 14px/1 var(--body,system-ui);letter-spacing:.02em;white-space:nowrap;box-shadow:0 10px 24px -10px rgba(0,0,0,.55);z-index:3;transition:opacity .3s,transform .3s}
.kfit-leer i{font-style:normal;color:#D4AF37}
#letter .paper.kfit-abierta .kfit-leer{opacity:0;pointer-events:none;transform:translateX(-50%) translateY(8px)}
@media (hover:hover) and (pointer:fine){#letter .paper.kfit-cerrada:hover .kfit-leer{opacity:0}}
.kfit-cerrar{position:absolute;top:16px;right:16px;z-index:4;width:38px;height:38px;border-radius:50%;border:1px solid rgba(184,150,46,.7);background:#FBF7EE;color:#6B4E16;font:700 16px/1 system-ui,sans-serif;cursor:pointer}
.kfit-cerrar:hover,.kfit-cerrar:focus-visible{background:#0B3D2E;color:#F7F1E6}
.kfit-cerrar[hidden]{display:none}
.kfit-leer-cur{position:fixed;left:0;top:0;z-index:80;pointer-events:none;display:inline-flex;align-items:center;gap:7px;padding:8px 14px;border-radius:99px;background:#D4AF37;color:#061A13;font:800 13px/1 var(--body,system-ui);white-space:nowrap;box-shadow:0 10px 26px -8px rgba(0,0,0,.5);opacity:0;transition:opacity .2s}
.kfit-leer-cur i{font-style:normal}
.kfit-leer-cur.on{opacity:1}
@media print{.kfit-leer,.kfit-leer-cur,.kfit-cerrar{display:none}#letter .paper.kfit-cerrada .body{max-height:none;-webkit-mask-image:none;mask-image:none}}
/* 11-nov: la hoja con proporción de carta (no apaisada) */
html #letter .paper.kfit-carta{width:min(700px,100%)!important;max-width:700px!important}
/* 11-nov 03:00 (dueño): en el CV NO va el nombre gigante (ni en computadora ni en teléfono); sigue en Sobre mí, Servicios y Precios */
html #pagetop .x-cvbig.x-cvbig,html #pagetop.x-cv3 .x-cvbig.x-cvbig{display:none!important}
/* 11-nov (dueño): al final nada se tapa. Teléfono: las dos pestañas de abajo caben en una fila («© 2026 KJV», marca pública);
   la flecha «arriba» sube con la barra (--a11y-b, kjv-a11y.js); el marco final gana aire abajo para que «Agenda 20 minutos» quede sobre la barra */
#toTop{margin-bottom:var(--a11y-b,0px)!important;transition:margin-bottom .25s ease}
@media (max-width:600px){.x-fin .x-tab.b.l span{font-size:0!important}.x-fin .x-tab.b.l span::before{content:"© 2026 KJV";font-size:12px}
  .x-fin .x-tab.b{padding:10px 12px 0!important}.x-fin .x-tab.b.r{gap:10px!important;font-size:11px!important}.x-fin .x-fin-stage{margin-bottom:58px!important}}
.gav-mute{margin-bottom:var(--a11y-b,0px)!important;transition:margin-bottom .25s ease}
