/* Todo en tu Zona v30 — Preregistro diseñado como parte de la PWA principal. */
:root{--ink:#362b42;--muted:#746879;--violet:#8031d4;--violet-dark:#6935b6;--sky:#1a70d2;--gold:#efab29;--line:rgba(100,75,124,.16);--bg:#fffaf5;--shadow:0 18px 46px rgba(74,52,91,.10)}
body{font-family:Montserrat,'Segoe UI',Arial,sans-serif;color:#342b42!important}
.demo-banner{background:linear-gradient(90deg,#2b56ad,#6534ad 55%,#9655a5);font-size:11px;padding:6px 16px;color:#fff}
.site-header{background:rgba(255,250,246,.97);border-bottom:1px solid rgba(100,75,124,.12);border-image:none;box-shadow:0 9px 26px rgba(70,45,85,.05);backdrop-filter:blur(20px)}
.header-inner{max-width:1380px;min-height:84px;padding-block:10px;display:flex;align-items:center;gap:20px}
.site-header .brand{display:flex;align-items:center;gap:12px;min-width:0}
.site-header .brand-icon{width:62px;height:62px;display:grid;place-items:center;background:transparent;box-shadow:none;border-radius:0;flex:none}
.site-header .brand-icon img{width:100%;height:100%;object-fit:contain;display:block}
.site-header .brand-text{font-size:25px;line-height:1.08;letter-spacing:-.045em;font-family:Montserrat,system-ui,sans-serif;font-weight:850;color:#342b42;white-space:nowrap}
.site-header .brand-text small{font-family:Montserrat,system-ui,sans-serif;color:#806f87;font-size:9px;letter-spacing:.1em;font-weight:800}
.header-nav{display:flex;gap:9px;align-items:center;margin-inline:auto}
.header-nav button{background:transparent;color:#4d415a;border:0;border-radius:12px;padding:10px 13px;font-family:Montserrat,system-ui,sans-serif;font-size:12px;font-weight:850}
.header-nav button:hover,.header-nav button[aria-current="page"]{background:#f1e8fa;color:#6734a5}
.header-nav button[data-nav="panel"]{background:#f3edfc}
.header-actions{display:flex;align-items:center;gap:10px;margin-left:auto}
.header-actions .back-main{border:1px solid rgba(100,75,124,.16);background:#fff;color:#513769;padding:12px 15px;border-radius:999px;font-size:12px;font-weight:850;white-space:nowrap;text-decoration:none}
.btn,.header-actions .back-main{font-family:Montserrat,system-ui,sans-serif}
.btn-primary{background:linear-gradient(110deg,#1a70d2,#7c2fce 64%,#ad50a8)!important;color:white;border:0;box-shadow:0 10px 22px rgba(90,57,174,.20)}
.btn-outline{color:#603999;border-color:rgba(106,62,164,.24)}
.top-cta{margin:0!important;min-height:44px;border-radius:999px;padding:10px 16px!important;white-space:nowrap;font-size:12px!important}
/* Mismo ambiente cálido/azul/violeta que el directorio; no una portada negra ajena */
.hero-backdrop{color:#342b42;background:transparent!important;overflow:hidden;padding-top:20px}
.hero-backdrop::before{display:none!important}
.hero-backdrop .hero-copy h1{color:#342b42}
.hero-backdrop .hero-copy h1 em{color:#7137b0}
.hero-backdrop .hero-lead,.hero-backdrop .hero-note{color:#675c69!important}
.hero-backdrop .eyebrow{background:#fff;color:#6b36a4;border:1px solid rgba(106,62,164,.14);box-shadow:0 8px 22px rgba(85,60,100,.06)}
.hero-backdrop .live-dot{background:#f0ad3b}
.showcase{border:1px solid rgba(111,67,159,.14);background:radial-gradient(circle at 68% 22%,rgba(127,61,213,.13),transparent 53%),linear-gradient(145deg,rgba(255,255,255,.86),rgba(255,247,235,.92));border-radius:32px;box-shadow:0 22px 52px rgba(81,59,98,.08)}
.illustration-center{background:linear-gradient(130deg,#285ec4,#733ac3)!important}
.float-card{background:#fff;color:#342b42;border:1px solid rgba(111,67,159,.15);box-shadow:0 10px 26px rgba(76,54,96,.08)}
.info-card,.form-card,.success-card,.public-card,.admin-card,.faq details,.feature-strip{border-radius:23px;border:1px solid rgba(100,75,124,.13);box-shadow:0 12px 34px rgba(68,54,79,.07)}
.info-card{background:rgba(255,255,255,.93)}
.feature-strip{background:linear-gradient(110deg,#e9effe,#f6eaff 55%,#fff0dc);color:#422f62}
.feature-strip h3,.feature-strip p{color:#422f62}
.page-section{background:transparent!important}
.page-section::before,.page-section::after{display:none!important}
.site-footer{background:#352a4b}
.site-footer p,.site-footer span{color:#ecdfec}
@media(max-width:1180px){.header-inner{gap:12px}.header-nav{gap:3px}.header-nav button{font-size:11px;padding:9px 8px}.site-header .brand-text{font-size:21px}.site-header .brand-icon{width:50px;height:50px}.header-actions .back-main{display:none}}
@media(max-width:760px){.header-inner{flex-wrap:wrap;padding:9px 0;min-height:68px}.site-header .brand-icon{width:44px;height:44px}.site-header .brand-text{font-size:18px;white-space:normal}.site-header .brand-text small{font-size:8px}.header-actions{margin-left:auto}.top-cta{font-size:10px!important;padding:9px 11px!important;min-height:38px}.header-nav{order:3;display:flex;justify-content:space-around;width:100%;gap:3px;margin:0}.header-nav button{font-size:11px;padding:8px 7px;flex:1}.hero-backdrop{padding-top:4px}.showcase{margin:14px 0}}
@media(max-width:420px){.site-header .brand-text{font-size:16px}.site-header .brand-text small{display:none}.site-header .brand-icon{width:39px;height:39px}.header-actions .top-cta{max-width:130px;white-space:normal;line-height:1.15}}

/* ===== v31 integración visual real con la home ===== */
.site-header .brand.brand-main{gap:0;min-width:0;background:transparent;border:0;padding:0}
.site-header .brand-icon{display:none!important}
.prereg-logo-full{display:block;width:210px;max-width:34vw;height:auto;object-fit:contain;filter:drop-shadow(0 8px 16px rgba(53,44,66,.08))}
.brand-text-fallback{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.header-nav button{border:1px solid rgba(100,75,124,.12);background:#fff;box-shadow:0 8px 18px rgba(68,54,79,.04);border-radius:999px}
.header-nav button:hover,.header-nav button[aria-current="page"]{background:#f6edff;color:#6734a5;border-color:rgba(106,62,164,.18)}
.header-actions .back-main{box-shadow:0 8px 18px rgba(68,54,79,.04)}
.hero-copy h1,.section-heading h2,.page-head h1,.step-title h2{font-family:'Playfair Display',serif;letter-spacing:-.03em}
.hero-copy h1 em{font-style:normal}
.hero-backdrop .hero-copy{padding-top:8px}
.hero-backdrop .hero-copy h1{font-size:clamp(2.7rem,5vw,4.6rem);line-height:.96}
.hero-backdrop .hero-copy .hero-lead{max-width:62ch}
.showcase{position:relative}
.showcase::before{content:'Todo en tu Zona';position:absolute;left:24px;top:22px;font-size:11px;font-weight:900;letter-spacing:.18em;color:#7a6980;text-transform:uppercase}
.feature-strip{align-items:center}
.page-head,.form-wrap,.public-card,.admin-card{box-shadow:0 16px 38px rgba(68,54,79,.09)}
.page-head{background:linear-gradient(110deg,rgba(233,239,254,.92),rgba(246,234,255,.92) 55%,rgba(255,240,220,.92));border:1px solid rgba(100,75,124,.13);border-radius:24px;padding:22px 24px}
.form-wrap{border:1px solid rgba(100,75,124,.13)}
.form-sidebar{background:linear-gradient(180deg,#f4ebff,#f7f2ff 52%,#fff5e8)}
.form-main{background:rgba(255,255,255,.92)}
.faq details{background:rgba(255,255,255,.86)}
.site-footer .brand{display:block}
.site-footer .brand img{width:210px;max-width:100%;background:#fff;border-radius:18px;padding:8px 10px;box-shadow:0 10px 24px rgba(0,0,0,.12)}
@media(max-width:980px){.prereg-logo-full{width:172px;max-width:42vw}}
@media(max-width:760px){.prereg-logo-full{width:150px;max-width:48vw}.header-nav button{font-size:10px}.page-head{padding:18px 18px}.showcase::before{display:none}}
