.carta-pagina { padding-bottom: 116px; }
.marca-chica { font-size: 13px; gap: 6px; opacity: .6; }
.marca-chica img { width: 20px; height: 20px; }
.cp-cabeza { display: grid; justify-items: center; gap: 6px; padding: max(34px, env(safe-area-inset-top)) 24px 0; text-align: center; }
.cp-logo { width: 72px; height: 72px; border-radius: 50%; background: #fff; box-shadow: 0 0 0 4px var(--superficie), 0 10px 24px -12px rgb(28 25 54 / .45); margin-bottom: 6px; }
.cp-cabeza h1 { margin: 0; font-size: 34px; font-weight: 800; letter-spacing: -.04em; line-height: 1; }
.cp-cabeza p { font-size: 14px; color: var(--apagado); font-weight: 520; text-wrap: balance; }
.cp-intro { padding: 18px 32px 0; text-align: center; font-size: 17px; line-height: 1.4; font-weight: 560; text-wrap: balance; }
.cp-nota { display: grid; grid-template-columns: auto 1fr; gap: 10px 12px; align-items: center; margin: 20px 20px 0; padding: 14px 16px; border-radius: 20px; background: var(--superficie); font-size: 14.5px; line-height: 1.35; color: #3d3a48; box-shadow: 0 1px 2px rgb(28 25 54 / .06); }
.cp-nota > span:nth-child(2) { display: grid; gap: 1px; }
.cp-nota b { font-size: 16.5px; font-weight: 780; color: var(--tinta); letter-spacing: -.015em; }
.cp-nota .avatar { width: 42px; height: 42px; font-size: 18px; }
.cp-nota-fotos { grid-column: 2; display: flex; gap: 6px; }
.cp-nota-fotos img { width: 44px; height: 44px; border-radius: 12px; object-fit: cover; }
.cp-saldo { display: grid; place-items: center; width: 56px; height: 56px; border-radius: 50%; background: var(--lima); border: 2px solid var(--tinta); font-size: 11px; font-weight: 750; line-height: 1; }
.cp-saldo b { font-size: 20px; letter-spacing: -.03em; }
.cp-hoja {
  position: relative; margin: 22px 16px 0; padding: 26px 18px 10px; border-radius: 26px; background: var(--superficie);
  box-shadow: 0 1px 2px rgb(28 25 54 / .06), 0 24px 44px -28px rgb(28 25 54 / .4);
}
.cp-hoja::before { content: ""; position: absolute; inset: 8px; border-radius: 20px; border: 1px solid var(--linea); pointer-events: none; }
.cp-hoja-cabeza { display: grid; justify-items: center; gap: 2px; text-align: center; padding-bottom: 6px; }
.cp-hoja-cabeza small { font-size: 12px; font-weight: 750; letter-spacing: .14em; text-transform: uppercase; color: var(--apagado); }
.cp-hoja-cabeza > span { font-size: 13px; color: var(--apagado); margin-top: 4px; }

.cp-seccion { padding-top: 18px; }
.cp-seccion h3 { display: flex; align-items: center; gap: 10px; margin: 0 0 8px; font-size: 12px; font-weight: 780; letter-spacing: .12em; text-transform: uppercase; color: var(--violeta-boton); }
.cp-seccion h3::before, .cp-seccion h3::after { content: ""; flex: 1; height: 1px; background: var(--linea); }
.cp-seccion ul { list-style: none; margin: 0; padding: 0; display: grid; }
.cp-seccion li { display: grid; grid-template-columns: 40px auto minmax(12px, 1fr) auto; align-items: center; gap: 10px; padding: 9px 2px; }
.cp-seccion li img { width: 40px; height: 40px; border-radius: 50%; object-fit: cover; }
.cp-nombre { display: grid; min-width: 0; }
.cp-nombre b { font-size: 15.5px; font-weight: 700; letter-spacing: -.015em; line-height: 1.2; }
.cp-nombre small { font-size: 12.5px; color: var(--apagado); font-weight: 520; }
.cp-guia { align-self: center; translate: 0 6px; height: 2px; background: radial-gradient(circle, var(--apagado) 1px, transparent 1.3px) 0 0 / 6px 2px repeat-x; opacity: .55; }
.cp-precio { font-size: 15.5px; font-weight: 760; letter-spacing: -.02em; font-variant-numeric: tabular-nums; white-space: nowrap; }
.cp-ya { font-size: 13px; border: 1.5px solid var(--tinta); }
.cp-destacado { display: flex; align-items: center; gap: 18px; margin: 4px -6px 6px; padding: 14px 14px 18px; border-radius: 22px; background: color-mix(in oklab, var(--lima) 34%, var(--superficie)); }
.cp-destacado .circulo { width: 104px; flex: none; }
.cp-destacado .ficha { font-size: 14px; right: auto; left: 50%; top: auto; bottom: -10px; translate: -50% 0; white-space: nowrap; }
.cp-destacado > span { display: grid; gap: 4px; }
.cp-destacado b { font-size: 21px; font-weight: 800; letter-spacing: -.03em; line-height: 1.1; }
.cp-destacado small { font-size: 14px; line-height: 1.35; color: #3d3a48; }
.cp-como { list-style: none; margin: 26px 20px 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.cp-como li { display: grid; gap: 6px; align-content: start; font-size: 13.5px; font-weight: 620; line-height: 1.25; }
.cp-como b { display: grid; place-items: center; width: 28px; height: 28px; border-radius: 50%; background: var(--tinta); color: var(--lima); font-size: 14px; }
.cp-sin { padding: 14px 20px 0; font-size: 13.5px; color: var(--apagado); }
.cp-pie { display: grid; justify-items: center; gap: 16px; padding: 22px 16px 0; }
.cp-local { width: 100%; border-radius: 20px; background: var(--superficie); }
.cp-local svg { width: 20px; height: 20px; flex: none; color: var(--apagado); }
.insta { background: #fff; color: #111; font-family: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif; font-weight: 400; }
.insta-barra { padding: max(14px, env(safe-area-inset-top)) 16px 10px; font-weight: 700; font-size: 18px; }
.insta-perfil { display: flex; align-items: center; gap: 22px; padding: 6px 16px 10px; }
.insta-avatar { width: 84px; height: 84px; border-radius: 50%; padding: 3px; background: #fff; box-shadow: 0 0 0 2px #d6249f; }
.insta-numeros { flex: 1; display: flex; justify-content: space-around; text-align: center; font-size: 13px; }
.insta-numeros b { display: block; font-size: 17px; }
.insta-bio { display: grid; gap: 2px; padding: 0 16px 12px; font-size: 14.5px; line-height: 1.35; }
.insta-rubro { color: #737373; }
.insta-bio p { margin: 2px 0; }
.insta-link { display: inline-flex; align-items: center; gap: 4px; width: fit-content; color: #00376b; font-weight: 600; animation: tocar 1.9s ease-in-out infinite; border-radius: 6px; padding: 1px 4px; margin-left: -4px; }
.insta-link svg { width: 14px; height: 14px; rotate: -45deg; }
.insta-botones { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; padding: 0 16px 14px; }
.insta-botones span { padding: 7px; border-radius: 8px; background: #efefef; text-align: center; font-weight: 600; font-size: 14px; }
.insta-grilla { display: grid; grid-template-columns: repeat(3, 1fr); gap: 2px; }
.insta-grilla img { width: 100%; aspect-ratio: 4 / 5; object-fit: cover; }
.tarjeta-og { display: grid; border-radius: 10px; overflow: hidden; background: var(--superficie); color: var(--tinta); font-family: "Bricolage", system-ui, sans-serif; text-align: left; }
.tarjeta-og img { width: 100%; aspect-ratio: 1.91; object-fit: cover; }
.tarjeta-og > span { display: grid; gap: 2px; padding: 10px 12px 12px; }
.tarjeta-og b { font-size: 16.5px; font-weight: 800; letter-spacing: -.02em; line-height: 1.15; }
.tarjeta-og small { font-size: 12.5px; color: var(--apagado); }
