/* Jupá · Guía pública de proveedores sin cuenta (jupa.app/proveedores-de-casamiento). Las tarjetas, el buscador y la hoja de
   filtros son los del panel (proveedores.css, shell.css, auth.css); acá solo el encabezado, el pie y el corte para crear la cuenta. */
.gp-body{min-height:100svh;background:var(--paper)}
.gp-top{position:sticky;top:0;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:12px;box-sizing:border-box;height:calc(64px + env(safe-area-inset-top));padding:env(safe-area-inset-top) clamp(16px,4vw,40px) 0;background:rgba(251,250,252,.94);border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.gp-logo{display:flex;align-items:center;min-height:44px}
.gp-logo img{display:block;height:26px;width:auto}
.gp-nav{display:flex;align-items:center;gap:6px}
.gp-ing{display:inline-flex;align-items:center;min-height:44px;padding:0 12px;border-radius:12px;color:var(--ink);font:600 15px var(--font-body);text-decoration:none;transition:background .2s ease-out}
.gp-ing:active{background:var(--lilac-soft)}
.gp-new.btn{width:auto;min-height:44px;padding:0 18px;font-size:15px}
.gp .pv-head{padding-top:6px}
.gp .pv-head h1{max-width:760px}

/* ——— Después de las fichas reales: relleno borroso (sin datos) y el corte ——— */
.gp-more{position:relative;margin-top:2px}
.gp-more:empty{display:none}
.gp-fakes{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:20px;filter:blur(7px);opacity:.85;pointer-events:none;user-select:none;-webkit-mask-image:linear-gradient(#000 55%,transparent);mask-image:linear-gradient(#000 55%,transparent)}
.gp-fake{animation:none}
.gp-fake .pv-ph{background:var(--lilac)}
.gp-fake:nth-child(3n+2) .pv-ph{background:var(--lavender)}
.gp-fake:nth-child(3n) .pv-ph{background:var(--lilac-soft)}
.gp-l{display:block;height:12px;border-radius:999px;background:#ece5f1}
.gp-l1{width:40%;height:9px;background:#cdb8ec}.gp-l2{width:78%;height:18px;background:var(--lilac)}.gp-l3{width:58%}.gp-l4{width:46%;height:16px;background:#cdb8ec}
.gp-fake .pv-ct{gap:9px}
.gp-wall{position:absolute;inset:0;display:flex;justify-content:center;align-items:flex-start;padding:clamp(24px,6vw,72px) 0 0}
.gp-gate{position:sticky;top:calc(84px + env(safe-area-inset-top));box-sizing:border-box;display:grid;justify-items:center;gap:12px;width:min(520px,100%);padding:30px clamp(20px,4vw,40px) 26px;border-radius:28px;background:var(--paper);text-align:center;box-shadow:0 0 0 1px var(--line),0 30px 60px -36px rgba(35,26,46,.55);animation:gp-up .28s ease-out both}
@keyframes gp-up{from{opacity:0;transform:translateY(10px)}}
.gp-seal{display:inline-block;padding:7px 14px 5px;border:4px double var(--violet);border-radius:12px;color:var(--violet);font:600 22px/1 var(--font-display);letter-spacing:.04em;transform:rotate(-6deg);animation:gp-seal .26s cubic-bezier(.3,1.4,.5,1) .12s both}
@keyframes gp-seal{from{opacity:0;transform:rotate(-6deg) scale(1.5)}}
.gp-gate h2{margin:0;font:500 clamp(24px,2.6vw,30px)/1.02 var(--font-display);letter-spacing:.02em;text-transform:uppercase;color:var(--ink);text-wrap:balance}
.gp-gate h2 em{display:block;margin-top:4px;font:400 1.02em/1.05 var(--font-accent);font-style:italic;text-transform:none;letter-spacing:0;color:var(--violet)}
.gp-gate p{margin:0;max-width:420px;color:var(--muted);font-size:15.5px;line-height:1.5}
.gp-cta.btn{width:auto;min-height:50px;padding:0 26px;margin-top:4px;font-size:16px;text-decoration:none}
.gp-in{display:inline-flex;align-items:center;min-height:44px;padding:0 10px;color:var(--violet-deep);font:600 14.5px var(--font-body)}
.gp-foot{padding:8px 16px calc(28px + env(safe-area-inset-bottom));text-align:center;color:var(--muted);font-size:13.5px}
.gp-foot a{display:inline-block;padding:10px 2px;color:var(--muted)}

/* ——— Etiquetas (base 187): enlaces a las páginas por etiqueta (y por rubro dentro de una), como pastillas ——— */
.gp-tags{display:grid;gap:12px;margin:clamp(28px,5vw,48px) 0 0;padding-top:clamp(20px,3vw,28px);border-top:2px dashed var(--line)}
.gp-tags[hidden]{display:none}
.gp-tk{margin:0;font:500 clamp(20px,2vw,24px)/1.05 var(--font-display);letter-spacing:.02em;text-transform:uppercase;color:var(--ink)}
.gp-tk em{font:400 1.05em var(--font-accent);font-style:italic;text-transform:none;letter-spacing:0;color:var(--violet)}
.gp-tl{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 6px;padding:0;list-style:none}
.gp-tl a{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 16px;border:1px solid var(--lavender);border-radius:999px;background:#fff;color:var(--violet-deep);font:600 14.5px var(--font-body);text-decoration:none;transition:background .18s ease-out,border-color .18s ease-out}
.gp-tl a small{font:600 12px var(--font-body);color:var(--muted)}
.gp-tl a:hover{background:var(--lilac-soft);border-color:var(--violet)}
.gp-tl a:active{transform:scale(.97)}
.gp-tl a[aria-current]{background:var(--ink);border-color:var(--ink);color:#fff}
.gp-tl a[aria-current] small{color:var(--lavender)}

@media (max-width:899px){
  .gp-top{height:calc(56px + env(safe-area-inset-top))}
  .gp-logo img{height:24px}
  .gp-ing{padding:0 10px;font-size:14.5px}
  .gp-new.btn{padding:0 14px;font-size:14.5px}
  .gp .pv-head .pv-lead{display:block;font-size:15px}
  .gp-fakes{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .gp-wall{padding-top:28px}
  .gp-gate{top:calc(72px + env(safe-area-inset-top));padding:24px 18px 18px;border-radius:24px}
  .gp-cta.btn{width:100%}
}
@media (max-width:359px){.gp-fakes{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.gp-gate,.gp-seal{animation:none}}
/* Compu: 3 columnas y desde 1100 px 4 (Mati TG 4296), así las 8 fichas que se ven llenan dos filas enteras y el relleno empieza en una fila nueva */
@media (min-width:900px){.gp .pv-grid,.gp-fakes{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (min-width:1100px){.gp .pv-grid,.gp-fakes{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}}

/* ——— Hoja «Entren gratis» (Mati 29-oct): sin sesión, cualquier toque en la guía la abre (src/guia-page.js) ——— */
.gp-login.sheet{display:grid;justify-items:center;gap:12px;text-align:center;padding-bottom:calc(24px + env(safe-area-inset-bottom))}
@media(min-width:900px){.gp-login.sheet{width:min(500px,calc(100vw - 48px));padding:34px 40px 30px}}
.gp-lk{margin:0;font:600 12px/1 var(--font-body);letter-spacing:.26em;text-transform:uppercase;color:var(--violet)}
#gpLogin .gp-login h2{margin:0;font:500 clamp(26px,2.6vw,32px)/1.02 var(--font-display);letter-spacing:.02em;text-transform:uppercase;color:var(--ink);text-wrap:balance}
#gpLogin .gp-login h2 em{display:block;margin-top:4px;font:400 1.02em/1.05 var(--font-accent);font-style:italic;text-transform:none;letter-spacing:0;color:var(--violet)}
.gp-lp{margin:0;max-width:400px;color:var(--muted);font-size:16px;line-height:1.5}
.gp-lb{display:grid;gap:10px;width:min(360px,100%);margin-top:6px}
.gp-lb .btn{min-height:50px;justify-content:center;font-size:16px;text-decoration:none}
.gp-lf{margin:0;color:var(--muted);font-size:13.5px}
.gp-login>.close{width:44px;height:44px;min-width:44px;min-height:44px}
