/* Prisma: sistema editorial consolidado. Paleta y geometría del kit-v2 aprobado. */

@font-face {
  font-family: "Lato";
  src: url("../fonts/Lato-Regular.woff2") format("woff2"),
       url("../fonts/Lato-Regular.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Lato";
  src: url("../fonts/Lato-Bold.woff2") format("woff2"),
       url("../fonts/Lato-Bold.ttf") format("truetype");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Lato";
  src: url("../fonts/Lato-Heavy.woff2") format("woff2"),
       url("../fonts/Lato-Heavy.ttf") format("truetype");
  font-weight: 800;
  font-style: normal;
  font-display: swap;
}


:root {
  --azul: #3155D9; --azul-hover: #2646B8; --tinta: #171C26; --plano: #293241;
  --papel: #F7F5EF; --azul-claro: #B7C6FF; --blanco: #FFFFFF; --papel-azulado: #E9EBF3;
  --borde: rgba(23,28,38,.15); --ancho-maximo: 1180px; --gutter: 24px;
  --texto: 1rem; --subtitulo: 1.125rem; --destacado: 1.25rem;
  --titulo-seccion: clamp(1.75rem, 3.2vw, 2.5rem); --importe: 2.5rem;
  --gap: 72px; --radio: 12px; --radio-chico: 8px; --dur: 160ms; --ease: ease-out;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--papel); color: var(--tinta); font-family: "Lato", -apple-system, "Segoe UI", sans-serif; font-size: var(--texto); line-height: 1.5; -webkit-font-smoothing: antialiased; }
img { display: block; max-width: 100%; height: auto; }
a { color: inherit; }
p,h1,h2,h3 { margin: 0; }
h1,h2,h3 { font-family: "Lato", sans-serif; line-height: 1.12; letter-spacing: -.02em; }
h1,h2 { font-weight: 800; }
h2 { font-size: var(--titulo-seccion); text-wrap: balance; }
h3 { font-size: var(--subtitulo); font-weight: 700; line-height: 1.5; }
.contenedor { width: 100%; max-width: var(--ancho-maximo); margin-inline: auto; padding-inline: var(--gutter); }
.seccion { padding-block: 64px; }
section[id],main[id] { scroll-margin-top: 100px; }
:focus-visible { outline: 3px solid var(--azul); outline-offset: 4px; }
.salto-al-contenido { position: fixed; left: -9999px; top: 12px; z-index: 200; background: var(--azul); color: white; padding: 12px 20px; border-radius: 8px; font-weight: 700; }
.salto-al-contenido:focus { left: var(--gutter); }
.boton { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: 12px 24px; border: 2px solid transparent; border-radius: 8px; font-size: 1rem; font-weight: 700; text-decoration: none; cursor: pointer; transition: background var(--dur), border-color var(--dur), transform var(--dur); }
.boton:active { transform: translateY(1px); }
.boton-primario { background: var(--azul); color: var(--blanco); }
.boton-primario:hover { background: var(--azul-hover); }
.boton-secundario { border-color: var(--borde); background: transparent; }
.boton-secundario:hover { border-color: var(--tinta); }
.cabecera { position: sticky; top: 0; z-index: 100; background: rgba(247,245,239,.96); border-bottom: 1px solid var(--borde); backdrop-filter: blur(8px); }
.cabecera__fila { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding-block: 16px; }
.logo-enlace { display: inline-flex; align-items: center; min-height: 44px; flex-shrink: 0; }
.logo-enlace img { width: 144px; height: auto; }
.nav-principal__enlaces { display: flex; align-items: center; gap: 24px; list-style: none; margin: 0; padding: 0; }
.nav-principal__enlaces a { display: inline-flex; min-height: 44px; align-items: center; font-weight: 700; text-decoration: none; border-bottom: 2px solid transparent; }
.nav-principal__enlaces a:hover { color: var(--azul); border-color: var(--azul-claro); }
.boton-menu { display: none; align-items: center; justify-content: center; width: 44px; height: 44px; border: 1px solid var(--borde); border-radius: 8px; background: transparent; color: var(--tinta); cursor: pointer; }
.boton-menu:hover { border-color: var(--tinta); }
.boton-menu svg { width: 24px; height: 24px; }
.nav-movil { display: none; }
.hero { padding-block: 64px 80px; }
.hero__grilla { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(0, .85fr); gap: 64px; align-items: start; }
.hero__texto { display: flex; flex-direction: column; gap: 24px; padding-top: 8px; align-items: flex-start; }
.hero h1 { font-size: clamp(3rem, 5.6vw, 5rem); line-height: 1.06; letter-spacing: -.035em; max-width: 12ch; text-wrap: balance; }
.hero__parrafo { max-width: 42ch; font-size: var(--subtitulo); color: var(--plano); }
.hero__ctas { display: flex; flex-wrap: wrap; gap: 16px; margin-top: 8px; }
.hero__oferta { padding: 32px; background: var(--azul); color: white; border-radius: var(--radio); }
.hero__oferta-cabecera { display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.hero__oferta-titulo { font-weight: 700; font-size: var(--destacado); line-height: 1.3; }
.hero__marca { width: 72px; flex-shrink: 0; }
.hero__importes { margin: 32px 0 24px; }
.hero__importes div + div { margin-top: 24px; }
.hero__importes dt { font-size: 1rem; }
.hero__importes dd { margin: 4px 0 0; font-weight: 800; font-size: var(--importe); line-height: 1.15; font-variant-numeric: lining-nums tabular-nums; }
.hero__moneda { display: block; margin-top: 8px; font-weight: 400; }
.hero__oferta-incluido { font-weight: 700; font-size: 1rem; }
.hero__oferta-nota { margin-top: 24px; padding-top: 24px; border-top: 1px solid rgba(255,255,255,.35); font-size: 1rem; }
.contenido-web,.equipo-prisma { background: var(--papel-azulado); }
.contenido-web__grilla,.servicio__grilla,.precio-bloque,.preguntas__grilla,.equipo-prisma__grilla { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: var(--gap); align-items: start; }
.contenido-web__intro h2,.preguntas__grilla h2,.equipo-prisma__intro h2 { max-width: 18ch; }
.contenido-web__intro p { max-width: 42ch; margin-top: 24px; color: var(--plano); }
.contenido-web__enlace { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; margin-top: 16px; color: var(--azul); font-weight: 700; text-underline-offset: 5px; }
.contenido-web__enlace:hover { text-decoration-thickness: 2px; }
.contenido-web__datos { margin: 0; }
.contenido-web__datos div + div { margin-top: 24px; }
.contenido-web__datos dt { font-weight: 700; font-size: var(--subtitulo); line-height: 1.5; }
.contenido-web__datos dd { margin: 8px 0 0; color: var(--plano); }
.contenido-web__rubros { margin-top: 40px; }
.contenido-web__rubros > p { font-weight: 700; }
.contenido-web__rubros ul { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 24px; padding: 24px 0 0; margin: 16px 0 0; border-top: 1px solid var(--borde); list-style: none; }
.contenido-web__rubros strong,.contenido-web__rubros span { display: block; }
.contenido-web__rubros strong { min-height: 2.6em; }
.contenido-web__rubros span { margin-top: 8px; color: var(--plano); }
.servicio__proceso p { margin-top: 24px; max-width: 46ch; color: var(--plano); }
.servicio__proceso .servicio__limite { margin-top: 16px; }
.servicio__ejemplo { background: var(--blanco); padding: 32px; border: 1px solid var(--borde); border-radius: var(--radio); }
.servicio__ejemplo-rotulo { font-weight: 700; color: var(--azul); }
.servicio__comparacion { margin: 24px 0 0; }
.servicio__comparacion div + div { margin-top: 24px; }
.servicio__comparacion dt { font-size: 1rem; color: var(--plano); margin-bottom: 8px; }
.servicio__comparacion dd { margin: 0; }
.servicio__comparacion div:last-child { border-top: 1px solid var(--borde); padding-top: 24px; }
.servicio__comparacion div:last-child dt { color: var(--azul); font-weight: 700; }
.servicio__ejemplo-despues { font-size: var(--destacado); font-weight: 700; line-height: 1.35; }
.puesta-en-marcha { padding-top: 0; }
.puesta-en-marcha__cabecera { border-top: 1px solid var(--borde); padding-top: 48px; }
.puesta-en-marcha__cabecera p { margin-top: 16px; color: var(--plano); }
.puesta-en-marcha__pasos { display: grid; grid-auto-rows: 1fr; list-style: none; margin: 32px 0 0; padding: 0; }
.puesta-en-marcha__pasos li { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: var(--gap); padding: 24px 0; border-top: 1px solid var(--borde); }
.puesta-en-marcha__pasos h3 { display: grid; grid-template-columns: 32px minmax(0,1fr); gap: 16px; align-items: start; line-height: 28px; }
.paso-numero { display: grid; place-items: center; width: 32px; height: 28px; color: var(--azul); font-size: var(--texto); font-weight: 700; line-height: 28px; letter-spacing: 0; font-variant-numeric: lining-nums tabular-nums; }
.paso-titulo { font-size: var(--texto); font-weight: 700; line-height: 28px; }
.puesta-en-marcha__pasos p { color: var(--plano); }
.puesta-en-marcha__materiales { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: var(--gap); padding-top: 24px; border-top: 1px solid var(--borde); }
.puesta-en-marcha__materiales > p { font-weight: 700; }
.puesta-en-marcha__materiales ul { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px 24px; list-style: none; padding: 0; margin: 0; color: var(--plano); }
.seccion__cabecera { margin-bottom: 32px; }
.precio-bloque { padding-block: 32px; border-top: 1px solid var(--borde); border-bottom: 1px solid var(--borde); }
.precio-bloque__montos { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px; }
.precio-bloque__monto { display: block; font-size: var(--importe); font-variant-numeric: lining-nums tabular-nums; font-weight: 800; letter-spacing: -.03em; line-height: 1.15; }
.precio-bloque__detalle { display: block; margin-top: 8px; min-height: 2.4em; color: var(--plano); }
.precio-bloque__inicial { margin-top: 24px; max-width: 44ch; }
.precio-bloque__moneda { margin-top: 16px; color: var(--plano); }
.precio-bloque__cta { margin-top: 24px; }
.precio-bloque__responsabilidad + .precio-bloque__responsabilidad { margin-top: 24px; }
.precio-bloque__responsabilidad p { margin-top: 8px; color: var(--plano); }
.precio-bloque__responsabilidad .precio-bloque__limite { margin-top: 16px; color: var(--tinta); font-weight: 700; }
.precio-bloque__dominio { margin-top: 24px; }
.precio-bloque__detalle-completo { margin-top: 24px; border-top: 1px solid var(--borde); }
.precio-bloque__detalle-completo summary { display: flex; align-items: center; min-height: 48px; cursor: pointer; font-weight: 700; color: var(--azul); padding-block: 8px; }
.precio-bloque__condiciones { padding-top: 8px; }
.precio-bloque__condiciones p + p { margin-top: 16px; }
.faq details { border-bottom: 1px solid var(--borde); padding-block: 16px; }
.faq details:first-child { padding-top: 0; }
.faq summary { display: flex; align-items: center; justify-content: space-between; gap: 24px; min-height: 44px; cursor: pointer; font-weight: 700; list-style: none; }
.faq summary::-webkit-details-marker { display: none; }
.faq summary::after { content: "+"; color: var(--azul); font-size: 1.5rem; line-height: 1; flex-shrink: 0; }
.faq details[open] summary::after { content: "−"; }
.faq summary:hover { color: var(--azul); }
.faq p { margin-top: 16px; color: var(--plano); }
.equipo-prisma__firma { font-weight: 700; color: var(--azul); margin-bottom: 16px; }
.equipo-prisma__principal { font-size: var(--subtitulo); line-height: 1.5; }
.equipo-prisma__historia > p + p { margin-top: 16px; }
.equipo-prisma__acuerdos { margin: 24px 0 0; }
.equipo-prisma__acuerdos div { padding-block: 16px; border-top: 1px solid var(--borde); }
.equipo-prisma__acuerdos dt { font-weight: 700; }
.equipo-prisma__acuerdos dd { margin: 8px 0 0; color: var(--plano); }
.seccion--plano { background: var(--plano); color: var(--papel); }
.contacto { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px var(--gap); align-items: start; }
.contacto__texto { display: contents; }
.contacto__texto h2 { grid-column: 1; grid-row: 1 / 3; max-width: 17ch; }
.contacto__presentacion,.contacto__ctas { grid-column: 2; }
.contacto__nombres { font-weight: 700; margin-bottom: 16px; }
.contacto__ctas { display: flex; flex-wrap: wrap; align-items: center; gap: 16px 24px; }
.contacto__instagram { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; text-underline-offset: 5px; }
.contacto__instagram:hover { color: var(--azul-claro); }
.contacto :focus-visible { outline-color: var(--papel); }
.pie { padding-block: 24px; }
.pie__fila { display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.pie__marca { display: flex; align-items: center; gap: 16px; }
.pie__marca img { width: 24px; }
.pie__marca span,.pie__legal { font-size: 1rem; color: var(--plano); }
@media (max-width: 1100px) {
  :root { --gap: 48px; }
  .cabecera__fila { gap: 16px; }
  .nav-principal__enlaces { gap: 16px; }
  .hero__grilla { gap: 48px; }
}
@media (max-width: 900px) {
  :root { --gap: 32px; --importe: 2.25rem; }
  .nav-principal,.cabecera__cta-desktop { display: none; }
  .boton-menu { display: inline-flex; }
  .nav-movil { padding: 16px var(--gutter); background: var(--papel); border-top: 1px solid var(--borde); }
  .nav-movil.abierto { display: flex; flex-direction: column; gap: 8px; }
  .nav-movil a { display: flex; align-items: center; min-height: 44px; padding: 8px; border-radius: 8px; text-decoration: none; font-weight: 700; }
  .nav-movil a:hover { background: var(--papel-azulado); }
  .nav-movil .boton-primario:hover { background: var(--azul-hover); }
  .hero { padding-block: 48px; }
  .hero__grilla { grid-template-columns: minmax(0,1fr); gap: 32px; }
  .hero__texto { padding-top: 0; }
  .hero h1 { max-width: 17ch; font-size: clamp(2.5rem,7.5vw,4rem); }
  .hero__parrafo { max-width: 48ch; }
  .hero__oferta { padding: 24px; }
  .hero__marca { width: 56px; }
  .hero__importes { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px; margin-block: 24px; }
  .hero__importes div + div { margin-top: 0; }
  .hero__importes dt { min-height: 3em; }
  .contenido-web__rubros ul { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 720px) {
  :root { --gap: 24px; --importe: clamp(1.625rem,7vw,2rem); }
  .seccion { padding-block: 48px; }
  .cabecera__fila { padding-block: 12px; }
  .logo-enlace img { width: 128px; }
  .hero { padding-block: 32px 48px; }
  .hero h1 { max-width: 16ch; font-size: clamp(2.5rem,7.5vw,3.25rem); }
  .hero__texto { gap: 16px; }
  .hero__parrafo { font-size: 1rem; }
  .hero__ctas { margin-top: 8px; gap: 16px; }
  .hero__oferta-titulo { font-size: var(--subtitulo); }
  .hero__marca { width: 48px; }
  .hero__importes { gap: 16px; }
  .hero__oferta-nota { margin-top: 16px; padding-top: 16px; }
  .contenido-web__grilla,.servicio__grilla,.precio-bloque,.preguntas__grilla,.equipo-prisma__grilla,.puesta-en-marcha__pasos li,.puesta-en-marcha__materiales,.contacto { grid-template-columns: minmax(0,1fr); }
  .contenido-web__intro h2,.preguntas__grilla h2,.equipo-prisma__intro h2 { max-width: 22ch; }
  .contenido-web__intro p { margin-top: 16px; }
  .contenido-web__rubros { margin-top: 32px; }
  .contenido-web__rubros ul { gap: 24px 16px; }
  .servicio__proceso p { margin-top: 16px; }
  .servicio__ejemplo { padding: 24px; }
  .puesta-en-marcha { padding-top: 0; }
  .puesta-en-marcha__cabecera { padding-top: 32px; }
  .puesta-en-marcha__pasos { margin-top: 24px; }
  .puesta-en-marcha__pasos li { gap: 8px; }
  .puesta-en-marcha__materiales { gap: 16px; }
  .precio-bloque { padding-block: 24px; }
  .precio-bloque__montos { gap: 16px; }
  .preguntas__grilla .seccion__cabecera { margin: 0; }
  .contacto__texto h2,.contacto__presentacion,.contacto__ctas { grid-column: auto; grid-row: auto; }
  .pie__fila { flex-direction: column; align-items: flex-start; gap: 16px; }
}
@media (max-width: 420px) {
  .hero__ctas,.hero__ctas .boton,.precio-bloque__cta .boton,.contacto__ctas .boton { width: 100%; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *,*::before,*::after { transition: none !important; }
}

@media (max-width: 360px) { .hero__oferta { padding: 16px; } }
