/* Dirección Bombero: grafito, fotografía y líneas de precisión. */
.precision {
  --sans: "Segoe UI", "Helvetica Neue", Arial, sans-serif;
  --serif: var(--sans);
  --hueso: #f3f4f3;
  --hueso-hondo: #e9ecea;
  --tinta: #242727;
  --tinta-media: #555e58;
  --tinta-suave: #626e66;
  --raya: #d2d8d2;
  --senal: #c24a38;
  --senal-honda: #a43b2c;
  --amarillo: #c5ccbd;
  --sombra-dura: none;
  background: var(--hueso);
}
.precision .ancho { max-width: 1400px; }
.precision .barra { background: #f3f4f3f5; color: #242727; border-bottom: 1px solid #d2d8d2; backdrop-filter: blur(16px); }
.precision .barra__fila { gap: 20px; height: 80px; }
.precision .marca__texto { font-family: var(--sans); font-weight: 650; letter-spacing: -.05em; }
.precision .marca__producto, .precision .marca__sep { color: #616b64; }
.precision .barra__nav { gap: 22px; }
.precision .barra__nav a { color: #49554d; font-size: 14px; font-weight: 500; }
.precision .boton,
.precision .barra__cta,
.precision .portada .boton {
  border-radius: 3px; box-shadow: none; min-height: 48px;
  font-size: 15px; font-weight: 550; padding: 13px 20px;
  transition: background .2s, border-color .2s;
}
.precision .boton--solido,
.precision .barra__cta,
.precision .portada .boton--enorme { background: #2b3432; border-color: #2b3432; color: #fff; }
.precision .boton--solido:hover,
.precision .barra__cta:hover,
.precision .portada .boton--enorme:hover { background: #434e4a; border-color: #434e4a; transform: none; box-shadow: none; }
.precision .boton:focus-visible, .precision a:focus-visible { outline: 3px solid #bd523b; outline-offset: 5px; }
.precision .portada {
  min-height: 0; padding: 66px 0 52px; color: #242727; background: #f3f4f3;
  border-bottom: 1px solid #d2d8d2; isolation: isolate;
}
.precision .portada::before, .precision .portada::after { display: none; }
.precision .portada__rejilla { grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); gap: 50px; }
.precision .portada__caja { padding: 20px 0 55px; }
.precision .sello { display: block; padding: 0; background: none; border: 0; border-radius: 0; color: #657168; margin: 0 0 44px; font-size: 13px; font-weight: 500; letter-spacing: .04em; }
.precision .portada__titulo { font-size: clamp(48px, 6.6vw, 96px); font-weight: 450; letter-spacing: -.072em; line-height: 1.02; margin-bottom: 30px; }
.precision .portada__titulo span { color: #6c7771; }
.precision .portada__entrada { color: #536056; font-size: 18px; max-width: 43ch; line-height: 1.65; }
.precision .portada .boton--linea { color: #283b2e; border-color: transparent; background: transparent; padding-left: 4px; }
.precision .portada .boton--linea:hover { text-decoration: underline; text-underline-offset: 5px; }
.precision .portada__garantias { color: #606c63; font-size: 14px; gap: 9px 24px; margin-top: 20px; }
.precision .entreno-acceso { font-size: 14px; color: #526357; margin-top: 16px; font-weight: 400; }
.precision .portada__visual--foto { min-height: 0; width: 100%; align-self: center; }
.precision .portada__visual--foto::before, .precision .portada__visual--foto::after { display: none; }
.precision .portada__visual--foto img { display: block; height: clamp(420px, 42vw, 600px); min-height: 0; object-position: 62% center; clip-path: none; box-shadow: none; filter: saturate(.63); }
.foto-pie { display: flex; justify-content: space-between; gap: 20px; padding: 14px 0; color: #647168; font-size: 12px; letter-spacing: .04em; }
.campo-lineas { position: absolute; inset: 0; width: 100%; height: 100%; pointer-events: none; z-index: -1; }
.precision .cifras { background: #f3f4f3; color: #292e2d; padding: 24px 0 36px; }
.precision .cifras__cabecera { border-color: #d2d8d2; }
.precision .cifras__cabecera span { color: #5d6b61; font-size: 12px; font-weight: 500; letter-spacing: .06em; }
.precision .cifras__cabecera p { color: #657168; font-size: 14px; }
.precision .cifra__numero { color: #292e2d; font-weight: 450; font-size: clamp(32px, 3.8vw, 52px); letter-spacing: -.055em; }
.precision .cifra__pie { color: #606b63; font-size: 14px; }
.precision .cifra + .cifra { border-color: #d2d8d2; }
.precision .academia { background: #222626; color: #edf0eb; padding: 100px 0; }
.precision .academia::before { display: none; }
.precision .academia__cabecera { grid-template-columns: 1fr 1fr; align-items: end; gap: 90px; margin-bottom: 60px; }
.precision .academia__titulo { color: #edf0eb; max-width: 18ch; font-size: clamp(34px, 4.2vw, 58px); font-weight: 450; letter-spacing: -.055em; line-height: 1.1; }
.precision .academia__entrada { border: 0; padding: 0; color: #afbdb1; font-size: 17px; max-width: 42ch; }
.precision .rotulo { font-size: 12px; font-weight: 500; letter-spacing: .08em; color: #647569; }
.precision .rotulo::before { display: none; }
.precision .academia .rotulo { color: #b7c6ba; }
.precision .academia__rejilla { grid-template-columns: 1fr; gap: 0; }
.precision .academia-card {
  display: grid; grid-template-columns: 48px minmax(160px, .8fr) minmax(210px, 1fr) 170px;
  column-gap: 24px; align-items: center; min-height: 138px; padding: 28px 0;
  border: 0; border-top: 1px solid #455047; border-radius: 0;
  background: transparent; color: #edf0eb; box-shadow: none; transform: none;
  transition: background .25s;
}
.precision .academia-card:last-child { border-bottom: 1px solid #455047; }
.precision .academia-card:hover, .precision .academia-card:focus-within { transform: none; background: #29342c; box-shadow: none; }
.precision .academia-card__numero { position: static; color: #9eafa1; font-size: 14px; font-weight: 400; letter-spacing: 0; font-variant-numeric: tabular-nums; }
.precision .academia-card__tipo { display: none; }
.precision .academia-card h3 { margin: 0; max-width: 18ch; font-size: 26px; font-weight: 450; line-height: 1.15; letter-spacing: -.035em; }
.precision .academia-card > p:last-of-type { margin: 0; color: #b2beb5; font-size: 16px; line-height: 1.6; }
.precision .academia-card a { margin: 0; color: #e2e9df; font-size: 14px; font-weight: 400; text-align: right; }
.precision .academia-card a span { color: #d6a896; padding-left: 8px; }
.precision .bloque, .precision .entrenamientos { background: #f3f4f3; }
.precision .bloque--tinte { background: #e9ecea; }
.precision .titulo, .precision .entreno__cabecera h2,
.precision .oferta__titulo, .precision .cierre__titulo { font-family: var(--sans); font-size: clamp(32px, 4.2vw, 58px); line-height: 1.12; font-weight: 450; letter-spacing: -.05em; max-width: 23ch; }
.precision .pilar, .precision .rasgo, .precision .video-card { border-radius: 0; box-shadow: none; border: 1px solid #d2d8d2; }
.precision .pilar { background: transparent; color: #292e2d; min-height: 0; }
.precision .pilar:hover { transform: none; box-shadow: none; }
.precision .pilar::before { display: none; }
.precision .pilar h3 { font-weight: 500; font-family: var(--sans); }
.precision .pilar .pilar__lead, .precision .pilar li { color: #556259; }
.precision .pilar li::before { color: #667d6c; }
.precision .chip { border-radius: 2px; box-shadow: none; background: transparent; border-color: #c4cdc4; font-weight: 400; }
.precision .entreno__cabecera > p { color: #56635a; }
.precision .entreno__panel { border-radius: 3px; box-shadow: none; border-color: #c4cdc4; background: #fff; }
.precision .entreno__form { background: #292e2d; }
.precision .entreno__generar { background: #d9e0da; color: #1f3022; border-radius: 3px; }
.precision .rasgo { border-width: 1px 0 0; padding-top: 28px; background: transparent; }
.precision .rasgo h3 { font-weight: 500; }
.precision .demo { background: #222626; }
.precision .demo .rotulo { color: #b2c6b7; }
.precision .video-card { border-color: #49554c; background: transparent; }
.precision .video-card:hover { transform: none; background: #2c372f; }
.precision .video-card__meta { color: #b4c5b8; }
.precision .youtube { border-radius: 2px; box-shadow: none; }
.precision .oferta { background: #e8ece9; color: #292e2d; }
.precision .oferta__titulo { margin-inline: auto; }
.precision .oferta__texto { color: #55635a; }
.precision .banda { background: #e8ece9; border-color: #c4cdc4; color: #536058; }
.precision .cierre { background: #f3f4f3; color: #292e2d; }
.precision .cierre__titulo { margin-inline: auto; }
.precision .cierre__texto { color: #55635a; }
.precision .pie { background: #222626; color: #f3f4f3; }
.precision .rev { opacity: 1; transform: none; }
@media (max-width: 1100px) {
  .precision .barra__nav { display: none; }
  .precision .barra__cta { margin-left: auto; }
  .precision .academia-card { grid-template-columns: 30px 1fr 1.3fr; }
  .precision .academia-card a { grid-column: 2 / -1; text-align: left; margin-top: 18px; }
}
@media (max-width: 760px) {
  .precision .barra__fila { height: auto; min-height: 72px; padding-block: 14px; gap: 10px; flex-wrap: wrap; }
  .precision .barra__cta { padding: 10px 12px; font-size: 14px; }
  .precision .marca__sep, .precision .marca__producto { display: none; }
  .precision .portada { padding: 34px 0 24px; }
  .precision .portada__rejilla { grid-template-columns: 1fr; gap: 20px; }
  .precision .portada__caja { padding: 0; max-width: 100%; }
  .precision .sello { margin-bottom: 28px; font-size: 12px; }
  .precision .portada__titulo { font-size: clamp(44px, 9.2vw, 70px); }
  .precision .portada__entrada { font-size: 17px; }
  .precision .portada__visual--foto { display: block; min-height: 0; }
  .precision .portada__visual--foto img { height: 380px; max-height: 80vw; min-height: 0; }
  .precision .academia { padding: 64px 0; }
  .precision .academia__cabecera { grid-template-columns: 1fr; gap: 24px; margin-bottom: 32px; }
  .precision .academia-card { grid-template-columns: 28px 1fr; gap: 14px; padding: 26px 0; }
  .precision .academia-card h3 { font-size: 24px; max-width: none; }
  .precision .academia-card > p:last-of-type { grid-column: 2; }
  .precision .academia-card a { margin-top: 0; }
  .precision .cifras__cabecera { flex-direction: column; gap: 8px; }
  .precision .cifra + .cifra { padding-left: 0; border: 0; }
  .precision .cifras__rejilla { gap: 20px; }
}
@media (prefers-reduced-motion: reduce) {
  .precision *, .precision *::before, .precision *::after { transition: none !important; animation: none !important; }
}
/* Remove the older promotional ornaments throughout the page. */
.precision .oferta::before, .precision .rasgo::before { display: none; }
.precision .rasgo { padding: 28px 0; }
.precision .oferta .boton--solido,
.precision .cierre .boton--solido { border-radius: 3px; background: #2b3432; border-color: #2b3432; }
.precision .oferta .boton--solido:hover,
.precision .cierre .boton--solido:hover { background: #434e4a; border-color: #434e4a; }
.precision .banda__fila { font-weight: 400; font-size: 14px; }

