/* Páginas «a fondo» (funciones/*.html): solo lo propio de estas páginas; el resto viene de styles.css y v2/v2.css. */
.page-hero { position: relative; overflow: hidden; padding: 120px 0 70px; }
.page-back { display: table; margin-bottom: 22px; font-size: 13px; font-weight: 600; color: var(--muted); transition: color .2s; }
.page-back:hover { color: var(--text); }
.page-h1 { font-size: clamp(46px, 6.2vw, 84px) !important; line-height: .94 !important; color: var(--text); max-width: 900px; animation: fadeUp .7s var(--ease) both; }
.page-lead { max-width: 720px; margin-top: 22px; animation: fadeUp .7s var(--ease) .1s both; }
.nav__links a[aria-current="page"] { color: var(--text); background: #161b26; }

.pts { display: grid; gap: 12px; margin-top: 34px; }
.pts--2 { grid-template-columns: repeat(2, 1fr); }
.pts--3 { grid-template-columns: repeat(3, 1fr); }
@media (max-width: 860px) { .pts--2, .pts--3 { grid-template-columns: 1fr; } }
.pt { display: flex; gap: 12px; align-items: flex-start; padding: 18px 18px; border-radius: 14px; background: var(--surface); border: 1px solid var(--border); transition: border-color .25s, transform .25s var(--ease); }
.pt:hover { border-color: var(--border-hover); transform: translateY(-2px); }
.pt b { display: block; font-size: 15px; font-weight: 650; color: var(--text); margin-bottom: 4px; }
.pt span { display: block; font-size: 13.5px; line-height: 1.6; color: var(--muted); }

.page-cta { display: flex; align-items: center; justify-content: space-between; gap: 28px; flex-wrap: wrap; padding: 34px 36px; border-radius: 22px;
  background: radial-gradient(600px 300px at 0% 0%, rgba(79, 70, 229, .16), transparent 60%), var(--surface); border: 1px solid var(--border-2); }
.page-cta .lead { margin-top: 10px; }
.pts--1 { grid-template-columns: 1fr; margin-top: 0; }
.founders .pts { margin-top: 0; }
