:root{--ink:#15202b;--muted:#62707d;--surface:#fff;--bg:#f4f6f8;--line:#dfe5ea;--brand:#182a3c;--brand2:#2c4862;--soft:#edf2f6}*{box-sizing:border-box}html{scroll-behavior:smooth}body.public-body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}.public-header{height:78px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 max(22px,calc((100vw - 1160px)/2));position:sticky;top:0;z-index:20}.public-brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--ink)}.public-brand-mark{width:42px;height:42px;border-radius:12px;background:var(--brand);color:#fff;display:grid;place-items:center;font-weight:900}.public-brand strong,.public-brand small{display:block}.public-brand small{color:var(--muted);margin-top:2px}.public-header nav a{text-decoration:none;font-weight:700;color:var(--brand)}.public-wrap{max-width:1160px;margin:0 auto;padding-left:22px;padding-right:22px}.public-hero{background:linear-gradient(135deg,#172433,#243f58);color:#fff;padding:86px 0 78px}.public-hero.root{padding:100px 0}.public-hero h1{font-size:clamp(38px,6vw,72px);line-height:1.02;max-width:900px;margin:12px 0 18px;letter-spacing:-.035em}.public-hero p.lead{font-size:22px;max-width:780px;color:#d8e2eb;line-height:1.5}.hero-copy{font-size:17px;line-height:1.7;max-width:780px;color:#d3dde6}.public-eyebrow,.kicker,.section-heading>span{font-size:12px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.public-eyebrow{color:#a9c1d6}.public-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}.public-btn{display:inline-flex;text-decoration:none;border-radius:10px;padding:11px 15px;font-weight:800;border:1px solid rgba(255,255,255,.3)}.public-btn.primary{background:#fff;color:var(--brand)}.public-btn.ghost{color:#fff}.public-section{padding-top:68px;padding-bottom:68px}.section-heading{max-width:820px;margin-bottom:28px}.section-heading>span{color:#55728b}.section-heading h2{font-size:32px;margin:8px 0 8px;letter-spacing:-.02em}.section-heading p{color:var(--muted);line-height:1.65;margin:0}.section-heading.compact{margin-top:48px}.public-two{display:grid;grid-template-columns:1fr 1fr;gap:18px}.public-panel,.item-card,.directory-card,.public-empty{background:#fff;border:1px solid var(--line);border-radius:16px;padding:24px}.public-panel h3,.item-card h3,.directory-card h3{margin:7px 0 8px}.public-panel p,.item-card p,.directory-card p{color:var(--muted);line-height:1.65;margin-bottom:0}.public-panel.wide{margin-top:18px}.kicker{color:#55728b}.item-grid,.directory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.directory-card{text-decoration:none;color:inherit;transition:.18s ease}.directory-card:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(20,34,46,.08)}.directory-card>span{color:#60758a;font-size:12px;font-weight:800;text-transform:uppercase}.directory-card b{display:block;margin-top:18px;color:var(--brand2)}.public-empty{text-align:center;color:var(--muted)}.public-empty strong{color:var(--ink)}.contact-band{background:#e9eef2;border-top:1px solid var(--line);padding:54px 0}.contact-band .public-wrap{display:flex;align-items:flex-start;justify-content:space-between;gap:35px}.contact-band h2{margin:8px 0 0}.contact-links{display:flex;flex-direction:column;gap:9px;min-width:280px}.contact-links a{color:var(--brand2);font-weight:700}.preview-banner{background:#fff1c7;color:#74520d;padding:10px 20px;text-align:center;font-weight:800;font-size:13px}.public-footer{max-width:1160px;margin:0 auto;padding:28px 22px 38px;display:flex;justify-content:space-between;gap:25px;color:var(--muted);font-size:12px}.public-footer strong,.public-footer span{display:block}.public-footer strong{color:var(--ink);margin-bottom:4px}.public-footer p{max-width:500px;text-align:right;margin:0}@media(max-width:850px){.public-two,.item-grid,.directory-grid{grid-template-columns:1fr}.public-hero{padding:64px 0}.contact-band .public-wrap,.public-footer{display:block}.contact-links{margin-top:24px}.public-footer p{text-align:left;margin-top:14px}.public-brand small{display:none}}@media(max-width:520px){.public-header{height:68px;padding:0 14px}.public-brand strong{font-size:14px}.public-hero h1{font-size:40px}.public-section{padding-top:46px;padding-bottom:46px}.public-wrap{padding-left:15px;padding-right:15px}}
.public-header nav{display:flex;align-items:center;gap:16px}
/* v0.6.0 · Eventos públicos */
.event-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.event-card{display:block;background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px;text-decoration:none;color:inherit;transition:.18s ease}.event-card:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(20,34,46,.08)}.event-card>span{font-size:12px;font-weight:800;text-transform:uppercase;color:#55728b}.event-card h3{margin:8px 0}.event-card p{color:var(--muted);line-height:1.5}.event-card b{color:var(--brand2)}.event-hero{padding:62px 0}.event-public-grid{display:grid;grid-template-columns:1fr 1.25fr;gap:18px;align-items:start}.event-dl{display:grid;grid-template-columns:110px 1fr;gap:8px 12px}.event-dl dt{font-weight:800;color:#5d6b78}.event-dl dd{margin:0}.public-notice{border-radius:12px;padding:14px 16px;margin-bottom:18px;border:1px solid var(--line);background:#fff}.public-notice.success{background:#eaf7ef;color:#24613b;border-color:#c9e5d3}.public-notice.error{background:#fff0f0;color:#8c1d1d;border-color:#efcaca}.public-notice.warning{background:#fff6df;color:#7a5512;border-color:#ead9ad}.public-btn.dark{background:var(--brand);color:#fff;border-color:var(--brand);margin-top:10px}.public-check{display:flex;gap:10px;align-items:flex-start;font-weight:400;line-height:1.5;margin-top:14px}.public-check input{width:auto;margin-top:4px}.event-registration input,.event-registration select{width:100%;box-sizing:border-box;border:1px solid #cbd3da;border-radius:9px;padding:10px 11px;background:#fff}.event-registration label:not(.public-check){display:block;font-weight:700;font-size:13px;margin:12px 0 5px}.referral-note{background:var(--soft);border-radius:10px;padding:11px 12px;color:var(--brand2)!important}.event-registration .public-btn{cursor:pointer}
@media(max-width:850px){.event-card-grid,.event-public-grid{grid-template-columns:1fr}.event-dl{grid-template-columns:1fr}}
/* v0.11.1 · Logotipo propio por directorio */
.public-brand-logo{width:48px;height:48px;border-radius:12px;background:#fff;border:1px solid var(--line);display:grid;place-items:center;overflow:hidden;flex:0 0 auto}.public-brand-logo img{width:100%;height:100%;object-fit:contain;padding:4px}.directory-hero-logo{display:block;max-width:190px;max-height:115px;object-fit:contain;background:#fff;border-radius:16px;padding:10px;margin:0 0 24px;box-shadow:0 10px 30px rgba(0,0,0,.16)}@media(max-width:520px){.public-brand-logo{width:40px;height:40px}.directory-hero-logo{max-width:150px;max-height:92px}}
