body{margin:0;background:linear-gradient(120deg,#eafcff,#fff 46%,#fff1fc);color:#102654;font-family:Arial,sans-serif}.panel,.conceptpage{max-width:1080px;margin:42px auto;padding:45px;border:1px solid #cce3f6;border-radius:24px;background:#fffffff5;box-shadow:0 14px 35px #21336818}.panel>p:first-child,.conceptpage>p:first-child{font-size:0.9375rem;font-weight:800;color:#6d48c7}.panel h1,.conceptpage h1{font-size:2.375rem;margin:10px 0 15px}.panel h2,.conceptpage h2{font-size:1.4375rem;margin-top:30px}.panel p,.conceptpage p{font-size:17px;line-height:1.65;max-width:780px}.az{padding:18px;overflow-x:auto;white-space:nowrap;border-radius:14px;background:#eafaff;font-size:18px;line-height:2;color:#5342b0}.relations,.ask{padding:18px;border-radius:16px;background:#f6fbff;border:1px solid #cfe5f6;margin-top:18px}.relations>*{display:inline-block;margin:5px;padding:9px 12px;border-radius:14px;background:#fff;font-size:13px}.ask{font-size:16px}.ask button{padding:11px;margin:10px 5px 0 0;border:1px solid #b4dff0;border-radius:18px;background:#fff;font-weight:bold}.topic{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:18px}.topic div{padding:20px;border:1px solid #cde4f5;border-radius:17px;background:#fff;font-weight:bold}.topic div:nth-child(3n){border-color:#dfb9ed}@media(max-width:650px){.panel,.conceptpage{margin:18px 12px;padding:26px 20px;border-radius:18px}.panel p,.conceptpage p{font-size:16px}.az{font-size:16px}.relations>*{display:block}.topic{grid-template-columns:1fr 1fr}.topic div{padding:15px}}

/* Correccion logo footer maestro */
footer .foot-brand img { width: 250px; height: 95px; object-fit: contain; object-position: left center; max-width: 100%; }
@media(max-width: 650px) { footer .foot-brand img { width: 230px; } }

/* Master Footer CSS minimal fallback */
footer { display: grid; grid-template-columns: 1.5fr repeat(4, 1fr); gap: 26px; padding: 58px 5.5% 25px; background: linear-gradient(105deg, #e1f8ff, #fff 52%, #f9e6fb); border-top: 1px solid #dce8f3; }
footer h4 { font-family: sans-serif; font-size: 14px; margin: 7px 0 16px; text-transform: uppercase; }
footer div:not(.foot-brand) { display: grid; align-content: start; gap: 9px; }
footer a, footer p, footer small { font-size:0.9375rem; color: #526985; text-decoration: none; line-height: 1.6; }
footer a:hover { text-decoration: underline; }
.social { display: flex; gap: 9px; margin: 0; }
.social i { font-style: normal; width: 34px; height: 34px; border: 1px solid #c9b6ec; border-radius: 9px; display: grid; place-items: center; font-size: 18px; color: #4d4e9b; background: #ffffff80; }
footer > em { grid-column: 1 / -1; text-align: center; margin-top: 14px; font-size:0.875rem; font-style: normal; color: #607692; }
@media (max-width: 1100px) { footer { grid-template-columns: repeat(3, 1fr); } .foot-brand { grid-column: span 3; } }
@media (max-width: 650px) { footer { grid-template-columns: 1fr 1fr; padding: 46px 22px 24px; gap: 26px; } .foot-brand { grid-column: 1 / -1; } }

@media (min-width: 768px) {
  .hero h1, .section-head h2 { font-size: 4.25rem !important; }
  .contact-header h1 { font-size: 3.75rem !important; }
  .conceptpage h1, .panel h1 { font-size: 4rem !important; }
  .conceptpage h2, .panel h2 { font-size: 2rem !important; }
  .family-card h3 { font-size: 1.75rem; }
}