/* Las páginas para las búsquedas de Google (2026-10-02): «Software para nutricionistas en
   Argentina» y las cuatro hermanas (planes, antropometría ISAK, agenda y turnos, historia clínica).
   Todas con el mismo molde —la cabecera, «En pocas palabras», las tarjetas, cómo funciona, las
   preguntas y el cierre— y cada una con su texto. Se apoya en sitio.css y portada.css. */
.spa-cab { padding-bottom: 72px; }
.spa-cab .heroe-ctas { justify-content: center; margin-top: 6px; }
.spa-def { display: grid; grid-template-columns: 380px 1fr; gap: 80px; align-items: start; }
.spa-def p { margin: 0; font: 400 clamp(17px, 1.6vw, 20px)/1.65 var(--body); color: #2b3a35; }
.spa-def p + p { margin-top: 18px; }
.spa-def b { color: var(--ink); }
.spa-ar { display: grid; grid-template-columns: 1fr 1fr; gap: 64px; align-items: center; }
.spa-lista { display: flex; flex-direction: column; gap: 16px; margin: 28px 0 0; padding: 0; list-style: none; }
.spa-lista li { font-size: 16.5px; }
.spa-lista small { display: block; margin-top: 3px; font: 400 14.5px/1.5 var(--body); color: var(--mu); }
.spa-platos { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.spa-platos figure { margin: 0; }
.spa-platos img { width: 100%; height: auto; aspect-ratio: 1; object-fit: cover; border-radius: 20px; }
.spa-platos figcaption { margin-top: 8px; font: 500 13px/1.35 var(--body); color: var(--mu); }
.spa-platos figure:nth-child(2) { transform: translateY(26px); }
.spa-platos figure:nth-child(5) { transform: translateY(26px); }
.spa-precio { display: grid; grid-template-columns: 1fr auto; gap: 40px; align-items: center; padding: 40px 44px; border-radius: 28px; background: #fff; border: 1px solid var(--line); }
.spa-precio p { margin: 12px 0 0; font: 400 17px/1.6 var(--body); color: var(--mu); max-width: 640px; }
.spa-precio .num { font: 800 clamp(40px, 5vw, 60px)/1 var(--disp); letter-spacing: -0.03em; }
.spa-precio .num small { font: 500 18px var(--body); color: var(--mu); letter-spacing: 0; }
.spa-pasos { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; margin-top: 48px; padding: 0; list-style: none; counter-reset: paso; }
.spa-pasos li { padding: 24px; border-radius: var(--r); border: 1px solid var(--line); background: #fff; counter-increment: paso; }
.spa-pasos li::before { content: counter(paso); display: grid; place-items: center; width: 34px; height: 34px; border-radius: 50%; background: var(--ink); color: #fff; font: 700 15px var(--body); }
.spa-pasos b { display: block; margin-top: 14px; font: 750 20px/1.2 var(--disp); }
.spa-pasos p { margin: 8px 0 0; font: 400 15px/1.55 var(--body); color: var(--mu); }
.spa-leer { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; margin-top: 36px; }
.spa-leer a { display: flex; flex-direction: column; gap: 8px; padding: 22px; border-radius: 18px; border: 1px solid var(--line); background: #fff; }
.spa-leer a:hover { border-color: #c5d3cc; }
.spa-leer b { font: 700 17px/1.3 var(--disp); }
.spa-leer.cuatro { grid-template-columns: repeat(4, 1fr); }
.spa-leer span { font: 600 14px var(--body); color: var(--g); }
@media (max-width: 900px) {
  .spa-def, .spa-ar, .spa-precio { grid-template-columns: 1fr; gap: 32px; }
  .spa-precio { padding: 28px 24px; }
  .spa-pasos, .spa-leer, .spa-leer.cuatro { grid-template-columns: 1fr; }
}
@media (max-width: 560px) {
  .spa-platos { gap: 8px; }
  .spa-platos figure:nth-child(2), .spa-platos figure:nth-child(5) { transform: none; }
  .spa-platos figcaption { font-size: 11.5px; }
}

/* ---------- los videos de cada parte, debajo de «Qué incluye» (2026-10-02) ---------- */
.spa-video { margin-top: 64px; }
.spa-video-cab { text-align: center; }
.spa-video-cab h3 { margin: 12px 0 0; font: 750 clamp(22px, 2.4vw, 28px)/1.2 var(--disp); letter-spacing: -0.01em; }
.spa-videos { display: grid; grid-template-columns: minmax(0, 880px); justify-content: center; gap: 28px; margin-top: 28px; }
.spa-videos.dos { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.spa-videos figure { margin: 0; }
.spa-videos video { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; border-radius: 20px; background: #0f2a22; box-shadow: 0 30px 60px -40px rgba(8,60,48,.45); }
.spa-videos figcaption { margin-top: 14px; text-align: center; }
.spa-videos figcaption b { display: block; font: 700 17px/1.3 var(--disp); }
.spa-videos figcaption small { display: block; margin-top: 4px; font: 500 14px/1.5 var(--body); color: var(--mu); }
@media (max-width: 760px) {
  .spa-video { margin-top: 44px; }
  .spa-videos.dos { grid-template-columns: 1fr; }
  .spa-videos video { border-radius: 14px; }
}

/* ---------- «Conectá tu IA» (2026-10-05): la dirección para copiar, la ruta de menús, los pasos ---------- */
.ia-dir-caja { max-width: 720px; margin: 36px auto 0; text-align: center; }
.ia-dir-caja > p { margin: 0 0 10px; font: 600 15px var(--body); color: var(--mu); }
.ia-dir { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; margin: 10px 0 0; padding: 12px 14px; border-radius: 16px; background: #fff; border: 1px solid var(--line); text-align: left; }
.ia-dir code { flex: 1 1 240px; min-width: 0; font: 700 15px/1.4 var(--mono); color: var(--ink); overflow-wrap: anywhere; }
.ia-elegir { display: flex; justify-content: center; gap: 10px; flex-wrap: wrap; margin-top: 28px; }
.ia-elegir a { padding: 12px 22px; border-radius: 999px; border: 1px solid var(--line); background: #fff; font: 700 15px var(--body); color: var(--ink); }
.ia-elegir a:hover { border-color: #c5d3cc; }
.ia-ia { max-width: 820px; margin: 56px auto 0; scroll-margin-top: 90px; }
.ia-ia-cab { display: flex; align-items: baseline; gap: 6px 14px; flex-wrap: wrap; }
.ia-ia-cab h3 { margin: 0; font: 800 clamp(26px, 3vw, 34px)/1.1 var(--disp); letter-spacing: -0.02em; }
.ia-ia-cab small { font: 500 14px var(--body); color: var(--mu); }
.ia-pasos { list-style: none; counter-reset: paso; margin: 22px 0 0; padding: 0; display: flex; flex-direction: column; gap: 12px; }
.ia-pasos li { counter-increment: paso; display: grid; grid-template-columns: 40px minmax(0, 1fr); gap: 14px; padding: 20px 22px; border-radius: 18px; background: #fff; border: 1px solid var(--line); }
.ia-pasos li::before { content: counter(paso); display: grid; place-items: center; width: 34px; height: 34px; border-radius: 50%; background: var(--ink); color: #fff; font: 700 15px var(--body); }
.ia-pasos b.t { display: block; font: 750 19px/1.3 var(--disp); }
.ia-pasos p { margin: 6px 0 0; font: 400 15.5px/1.6 var(--body); color: #2b3a35; }
.ia-pasos a { color: var(--g); font-weight: 600; text-decoration: underline; text-underline-offset: 3px; }
.ruta { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; margin: 10px 0 0; }
.ruta > span { padding: 5px 11px; border-radius: 9px; background: var(--alt); border: 1px solid var(--line); font: 600 14px var(--body); color: var(--ink); }
.ruta i { font-style: normal; font-weight: 700; color: var(--mu); }
.ia-pasos p.ia-nota { margin-top: 12px; padding: 10px 14px; border-radius: 12px; background: var(--golds); color: #6b5a3e; font: 500 14px/1.55 var(--body); }
.ia-cel { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 16px; align-items: center; max-width: 820px; margin: 40px auto 0; padding: 22px 24px; border-radius: 22px; background: var(--gd); }
.ia-cel .ic { width: 28px; height: 28px; color: var(--gold); }
.ia-cel p { margin: 0; font: 400 16px/1.6 var(--body); color: var(--claro); }
.ia-cel b { color: #fff; }
.fn p a { color: var(--g); font-weight: 600; }
/* la comunidad de WhatsApp: una línea después del paso a paso y un recuadro antes del cierre */
.ia-mas { max-width: 820px; margin: 16px auto 0; text-align: center; font: 500 15px/1.5 var(--body); color: var(--mu); }
.ia-mas a { color: var(--g); font-weight: 700; text-decoration: underline; text-underline-offset: 3px; }
/* uso responsable (5/10): separado de las tarjetas de Seguridad, y la línea del consentimiento en
   letra de texto (la caja de la dirección usa la monoespaciada) */
.ia-cuidado-cab { margin-top: 88px; }
.ia-dir code.ia-frase { font: 500 15.5px/1.6 var(--body); }
.ia-sec-ayuda { padding-bottom: 24px; }
.ia-ayuda { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 20px; align-items: center; max-width: 920px; margin: 0 auto; padding: 26px 28px; border-radius: 24px; background: #fff; border: 1px solid var(--line); box-shadow: 0 24px 48px -36px rgba(8,60,48,.35); }
.ia-ayuda-ic { display: grid; place-items: center; width: 56px; height: 56px; border-radius: 16px; background: #e6f7ec; color: #1f9d55; }
.ia-ayuda-ic .ic { width: 30px; height: 30px; }
.ia-ayuda h2 { margin: 0; font: 800 clamp(22px, 2.6vw, 28px)/1.15 var(--disp); letter-spacing: -0.02em; }
.ia-ayuda p { margin: 6px 0 0; font: 400 16px/1.6 var(--body); color: #2b3a35; }
@media (max-width: 760px) {
  .ia-pasos li { grid-template-columns: minmax(0, 1fr); gap: 10px; padding: 18px; }
  .ia-cel { grid-template-columns: minmax(0, 1fr); }
  /* la dirección entera en un renglón: cortada en «/a pi/mcp» confunde al copiarla a mano */
  .ia-dir { padding: 10px 12px; }
  .ia-dir code { flex-basis: 100%; font-size: 12.5px; }
  .ia-dir code.ia-frase { font-size: 14.5px; }
  .ia-cuidado-cab { margin-top: 64px; }
  .ia-ayuda { grid-template-columns: minmax(0, 1fr); gap: 14px; padding: 22px 20px; }
  .ia-ayuda .btn { justify-self: start; }
}
@media (max-width: 380px) {
  .ia-pasos li { padding: 16px 14px; }
  .ia-pasos .ia-dir code { font-size: 11px; }
}

/* ---------- la calculadora de requerimiento (2026-10-02) ---------- */
.calc { display: grid; grid-template-columns: 360px 1fr; gap: 28px; align-items: start; padding: 28px; border-radius: 28px; background: #fff; border: 1px solid var(--line); box-shadow: 0 30px 60px -40px rgba(8,60,48,.35); }
.calc-datos { display: flex; flex-direction: column; gap: 16px; padding: 22px; border-radius: 20px; background: var(--alt); }
.calc-datos h2, .calc-res h2 { margin: 0; font: 750 20px var(--disp); }
.calc-datos label { display: flex; flex-direction: column; gap: 6px; font: 600 13.5px var(--body); color: var(--mu); }
.calc-datos input { height: 48px; padding: 0 14px; border-radius: 12px; border: 1.5px solid var(--line); background: #fff; font: 600 17px var(--body); color: var(--ink); }
.calc-datos input:focus { outline: none; border-color: var(--g); box-shadow: 0 0 0 3px var(--gs); }
.calc-sexo { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; padding: 4px; border-radius: 13px; background: #e4ece8; }
.calc-sexo input { position: absolute; opacity: 0; pointer-events: none; }
.calc-sexo span { display: grid; place-items: center; height: 40px; border-radius: 10px; font: 600 14.5px var(--body); color: var(--mu); cursor: pointer; }
.calc-sexo input:checked + span { background: #fff; color: var(--gd); box-shadow: 0 1px 3px rgba(0,0,0,.1); }
.calc-sexo input:focus-visible + span { outline: 3px solid var(--gold); }
.calc-ej { align-self: flex-start; padding: 4px 10px; border-radius: 99px; background: var(--golds); color: #7a5418; font: 600 12px var(--body); }
.calc-res { display: flex; flex-direction: column; gap: 22px; padding: 8px 6px; }
.calc-res small.sub { display: block; margin-top: 2px; font: 500 13.5px var(--body); color: var(--mu); }
.calc-fila { display: grid; grid-template-columns: 1fr auto; align-items: baseline; gap: 4px 12px; margin-top: 14px; }
.calc-fila span { font: 600 15px var(--body); }
.calc-fila span small { font-weight: 500; color: var(--mu); }
.calc-fila b { font: 800 26px var(--disp); letter-spacing: -0.02em; font-variant-numeric: tabular-nums; }
.calc-fila b small { font: 500 14px var(--body); color: var(--mu); letter-spacing: 0; }
.calc-barra { grid-column: 1 / -1; height: 8px; border-radius: 99px; background: #eef3f0; overflow: hidden; }
.calc-barra i { display: block; height: 100%; border-radius: 99px; background: var(--g); transition: width .3s ease; }
.calc-nivel { display: grid; grid-template-columns: 1fr auto; gap: 2px 12px; align-items: center; margin-top: 10px; padding: 14px 16px; border-radius: 14px; border: 1px solid var(--line); }
.calc-nivel b { font: 600 15px var(--body); }
.calc-nivel small { font: 500 13px var(--body); color: var(--mu); }
.calc-nivel em { grid-row: 1 / span 2; grid-column: 2; font: 800 22px var(--disp); font-style: normal; color: var(--gd); font-variant-numeric: tabular-nums; }
.calc-nivel em small { display: block; font: 500 11.5px var(--body); color: var(--mu); text-align: right; }
.calc-nota { margin: 12px 0 0; font: 400 14px/1.55 var(--body); color: var(--mu); }
.calc-nota b { color: var(--ink); }
.calc-aviso { padding: 14px 16px; border-radius: 14px; background: var(--golds); color: #6b5a3e; font: 500 14.5px/1.5 var(--body); }
.calc-cta { display: grid; grid-template-columns: 1fr auto; gap: 18px; align-items: center; padding: 20px 22px; border-radius: 18px; background: var(--gd); color: #fff; }
.calc-cta p { margin: 0; font: 400 15px/1.55 var(--body); color: var(--claro); }
.calc-cta p b { color: #fff; }
.calc-formulas { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin-top: 40px; }
.calc-formulas article { padding: 24px; border-radius: var(--r); border: 1px solid var(--line); background: #fff; }
.calc-formulas h3 { margin: 0; font: 750 19px/1.2 var(--disp); }
.calc-formulas p { margin: 10px 0 0; font: 400 14.5px/1.55 var(--body); color: var(--mu); }
.calc-formulas code { display: block; margin-top: 10px; padding: 10px 12px; border-radius: 10px; background: var(--alt); font: 600 13px/1.6 var(--mono); color: var(--ink); white-space: normal; }
.calc-pal { width: 100%; margin-top: 18px; border-collapse: collapse; font: 500 15px var(--body); background: #fff; border-radius: 16px; overflow: hidden; }
.calc-pal th, .calc-pal td { padding: 12px 16px; border-bottom: 1px solid var(--line); text-align: left; }
.calc-pal th { font: 700 12px var(--body); letter-spacing: .06em; text-transform: uppercase; color: var(--mu); background: var(--alt); }
@media (max-width: 900px) {
  .calc { grid-template-columns: 1fr; padding: 16px; }
  .calc-formulas { grid-template-columns: 1fr; }
  .calc-cta { grid-template-columns: 1fr; }
}
/* · los bloques de abajo: kcal del plan y reparto, objetivo, gasto de una sesión (lo mismo que «Requerimiento» en la app) */
.calc-nivel { width: 100%; text-align: left; cursor: pointer; background: #fff; font: inherit; color: inherit; }
.calc-nivel:hover { border-color: #c5d3cc; }
.calc-nivel.on { border-color: var(--g); background: var(--gs); }
.calc-nivel em small.usar { color: var(--g); font-weight: 600; }
.calc-bloque { margin-top: 24px; padding: 28px; border-radius: 28px; background: #fff; border: 1px solid var(--line); }
.calc-bloque-cab h2 { margin: 0; font: 750 22px var(--disp); }
.calc-bloque-cab .sub { display: block; margin-top: 3px; font: 500 14px var(--body); color: var(--mu); }
.calc-dos-col { display: grid; grid-template-columns: 1fr 1fr; gap: 32px; margin-top: 20px; align-items: start; }
/* · el atributo hidden manda: un display de acá (el grid de arriba) le gana al [hidden] del navegador, y con «Mantener» se veían el déficit y el mantenimiento */
.calc [hidden], .calc-bloque [hidden], .calc-bloque[hidden] { display: none !important; }
.calc-campo { display: flex; flex-direction: column; gap: 6px; font: 600 13.5px var(--body); color: var(--mu); }
.calc-campo input, .calc-campo select { height: 46px; padding: 0 12px; border-radius: 12px; border: 1.5px solid var(--line); background: #fff; font: 600 16px var(--body); color: var(--ink); width: 100%; }
.calc-campo input:focus, .calc-campo select:focus { outline: none; border-color: var(--g); box-shadow: 0 0 0 3px var(--gs); }
.calc-uni { position: relative; display: block; }
.calc-uni small { position: absolute; right: 12px; top: 50%; transform: translateY(-50%); font: 500 13px var(--body); color: var(--mu); pointer-events: none; }
.calc-kcal-in input { height: 60px; font: 800 30px var(--disp); padding-right: 90px; }
.calc-cap { margin: 8px 0 0; font: 500 13px/1.45 var(--body); color: var(--mu); }
.calc-macbar { display: flex; height: 12px; border-radius: 99px; overflow: hidden; gap: 2px; margin-top: 18px; background: #eef3f0; }
.calc-macbar i { display: block; height: 100%; }
.calc-macros { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin-top: 12px; }
.calc-macro { padding: 12px 14px; border-radius: 14px; background: var(--alt); }
.calc-macro b { display: block; font: 600 13px var(--body); }
.calc-macro b i { display: inline-block; width: 9px; height: 9px; border-radius: 50%; margin-right: 6px; }
.calc-macro strong { display: block; margin-top: 4px; font: 800 24px var(--disp); font-variant-numeric: tabular-nums; }
.calc-macro strong small { font: 500 13px var(--body); color: var(--mu); }
.calc-macro span { display: block; margin-top: 2px; font: 500 12px/1.4 var(--body); color: var(--mu); }
.calc-chips { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 10px; }
.calc-chip { padding: 8px 13px; border-radius: 99px; border: 1px solid var(--line); background: #fff; font: 600 13.5px var(--body); color: var(--ink); cursor: pointer; }
.calc-chip:hover { border-color: #c5d3cc; }
.calc-chip.on { background: var(--gd); border-color: var(--gd); color: #fff; }
.calc-chip:disabled { opacity: .45; cursor: default; }
.calc-slider { margin-top: 16px; }
.calc-slider div { display: flex; align-items: baseline; gap: 8px; font: 600 14px var(--body); }
.calc-slider div i { width: 10px; height: 10px; border-radius: 50%; }
.calc-slider div span { margin-left: auto; font: 500 13px var(--body); color: var(--mu); }
.calc-slider div b { min-width: 42px; text-align: right; font: 800 17px var(--disp); }
.calc-slider input[type="range"] { width: 100%; margin-top: 6px; }
.calc-suma { display: flex; align-items: center; gap: 12px; margin-top: 16px; }
.calc-pill { padding: 5px 11px; border-radius: 99px; font: 700 12.5px var(--body); }
.calc-pill.ok { background: var(--gs); color: var(--gd); }
.calc-pill.warn { background: #fdecd8; color: #9a4d0b; }
.calc-link { font: 600 13.5px var(--body); color: var(--g); text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }
.calc-alerta { margin: 10px 0 0; padding: 11px 14px; border-radius: 12px; background: var(--golds); color: #6b5a3e; font: 500 13.5px/1.5 var(--body); }
.calc-alerta.fuerte { background: #fde7e4; color: #8e2a1f; }
.calc-sub { margin-top: 16px; font: 700 12px var(--body); letter-spacing: .06em; text-transform: uppercase; color: var(--mu); }
.calc-sub span { text-transform: none; letter-spacing: 0; font-weight: 500; }
.calc-dos { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-top: 12px; }
.calc-obj-res { display: flex; flex-direction: column; gap: 4px; width: 100%; padding: 16px 18px; border-radius: 16px; border: 1.5px solid var(--g); background: var(--gs); text-align: left; font: inherit; color: inherit; cursor: pointer; }
.calc-obj-res:disabled { cursor: default; opacity: .6; }
.calc-obj-res b { font: 600 15px var(--body); }
.calc-obj-res b strong { font: 800 28px var(--disp); color: var(--gd); }
.calc-obj-res small { font: 500 13px var(--body); color: var(--mu); }
.calc-obj-res em { font: 700 13.5px var(--body); font-style: normal; color: var(--g); }
.calc-linea { margin: 12px 0 0; font: 500 14.5px/1.55 var(--body); }
.calc-vlcd { display: flex; gap: 8px; align-items: flex-start; margin-top: 10px; font: 500 13.5px/1.45 var(--body); }
.calc-ses-res { margin-top: 12px; padding: 12px 14px; border-radius: 14px; background: var(--alt); font: 500 14px var(--body); }
.calc-ses-res b { font: 800 22px var(--disp); }
.calc-pie { margin-top: 24px; display: flex; flex-direction: column; gap: 12px; }
.calc-act { grid-template-columns: 2fr 1fr; }
@media (max-width: 560px) { .calc-act { grid-template-columns: 1fr; } }
@media (max-width: 900px) {
  .calc-bloque { padding: 18px; }
  .calc-dos-col { grid-template-columns: 1fr; gap: 24px; }
  .calc-macros { grid-template-columns: 1fr; }
}
