:root{font-family:system-ui,-apple-system,Segoe UI,sans-serif;color:#1d2930;background:#f6f8f7}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}.wrap{max-width:1080px;margin:auto;padding:18px 18px 100px}.hero{background:linear-gradient(140deg,#52757a,#153e47);color:white;border-radius:26px;padding:28px 24px}.eyebrow{letter-spacing:1.5px;text-transform:uppercase;font-size:12px;opacity:.82}h1{font-size:clamp(29px,6vw,46px);line-height:1.08;margin:12px 0}h2{font-size:23px;margin:30px 0 15px}h3{margin:0 0 8px}.sub{opacity:.88}.search{width:100%;border:0;border-radius:14px;padding:16px;margin-top:18px;font-size:16px}.emergency{background:#faecec;border-radius:22px;padding:19px;margin:20px 0}.emergency h2{margin:0 0 12px}.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:30px;padding:13px 18px;font-weight:750;border:1px solid #d4d9d9;background:white;cursor:pointer;text-align:center}.red{background:#df3034;color:white;border-color:#df3034}.buttons{display:flex;flex-wrap:wrap;gap:10px}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.tile{background:white;border:1px solid #dce2e1;border-radius:20px;min-height:152px;padding:20px;display:flex;flex-direction:column;justify-content:space-between;transition:transform .15s,box-shadow .15s}.tile:hover{transform:translateY(-2px);box-shadow:0 5px 20px #0001}.tile .emoji{font-size:27px}.tile strong{font-size:19px}.tile small{color:#687678;font-size:14px}.tile .arrow{align-self:flex-end;color:#789}.card{background:white;border:1px solid #dce2e1;border-radius:18px;padding:20px;margin:12px 0}.muted{color:#657477}.tag{display:inline-block;border-radius:20px;padding:5px 10px;background:#e9f1ef;color:#315c58;font-size:12px;font-weight:700}.topbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.topbar a{color:#225d62;font-weight:700}.floating{position:fixed;bottom:18px;right:18px;background:#d9282f;color:#fff;padding:13px 18px;border-radius:50px;font-weight:800;box-shadow:0 4px 20px #0004;z-index:10}.sponsors{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}.sponsor{background:#fff;border:1px solid #dde5e3;border-radius:18px;padding:18px}.footer{margin-top:36px;border-top:1px solid #dce2e1;padding-top:20px;color:#677}.warning{border-left:5px solid #d7353a;background:#fff2f1;padding:14px 18px;border-radius:8px}.steps li{padding:8px 0;line-height:1.5}.directory{display:grid;gap:10px}.directory .card{margin:0}.links{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.links a{background:#eaf1f0;padding:9px 13px;border-radius:30px;font-size:14px;font-weight:700}.links a[href^='https://wa.me']{background:#ddf7e7;color:#126339}.empty{padding:20px;background:#f2f5f4;border-radius:16px;color:#526}.notice{font-size:13px;color:#687678}.hidden{display:none!important}@media(min-width:800px){.grid{grid-template-columns:repeat(4,minmax(0,1fr))}.tile{min-height:170px}}@media(max-width:390px){.tile{padding:14px;min-height:148px}.tile strong{font-size:17px}.wrap{padding:12px 12px 95px}}

/* Identidad Bruja Tiangüera */
:root{--purple:#4b126b;--magenta:#a4218b;--gold:#ffbe32}body{background:#fff9fd;color:#291c33}.hero{background:linear-gradient(130deg,#270a40,#632083 65%,#8e278e)}.brand-hero{position:relative;display:grid;grid-template-columns:125px 1fr 135px;align-items:center;gap:15px;overflow:hidden;min-height:220px}.brand-logo{width:100%;border-radius:18px;background:#fff;object-fit:contain}.brand-copy{z-index:1}.brand-mascot{width:100%;max-height:220px;object-fit:cover;object-position:top;border-radius:20px}.brand-hero h1{font-size:clamp(24px,4.5vw,43px)}.tile{border-color:#e9d8eb;overflow:hidden}.tile-photo{width:100%;height:105px;object-fit:cover;object-position:50% 70%;border-radius:12px}.tile-club-infantil{padding:10px 12px 14px}.tile-club-infantil strong,.tile-club-infantil small{padding-left:4px}.tile-club-infantil .emoji{display:none}.tag{background:#f4e8f8;color:#632083}.topbar a{color:#6c267b}.links a{background:#f4e8f8}.featured-sponsor{display:flex;align-items:center;gap:18px;background:white;border:2px solid #dfc2e7;border-radius:22px;padding:14px;margin-bottom:14px}.featured-sponsor img{width:155px;aspect-ratio:1;object-fit:cover;border-radius:15px}.featured-sponsor strong{font-size:19px}.featured-sponsor p{color:#67566d}.featured-sponsor .btn{background:#652281;color:white;border-color:#652281}.floating{background:#d9282f}@media(max-width:700px){.brand-hero{grid-template-columns:95px 1fr;gap:10px;padding:17px}.brand-mascot{display:none}.brand-hero h1{font-size:25px}.brand-logo{max-width:95px}.featured-sponsor{align-items:flex-start}.featured-sponsor img{width:105px}.featured-sponsor strong{font-size:16px}}@media(max-width:390px){.brand-hero{grid-template-columns:75px 1fr}.brand-logo{max-width:75px}.tile-photo{height:85px}.featured-sponsor img{width:85px}}

/* V3: banner original y logo dental transparente */
.tile-club-infantil .tile-photo{height:auto;aspect-ratio:1.7;object-fit:contain;object-position:center;border-radius:12px}
.featured-sponsor .sponsor-logo{object-fit:contain;background:#fff;aspect-ratio:1.35;width:205px}
.floating{max-width:calc(100vw - 26px);font-size:14px;text-align:center}
@media(max-width:700px){.featured-sponsor .sponsor-logo{width:130px}}
