/* ====== Base */
:root{
  --blue:#1659d6;
  --green:#11a36c;
  --ink:#0f172a;
  --bg:#f6f8fb;
  --card:#ffffff;
  --ring:rgba(22,89,214,.15);

  --fb:#1877f2;
  --wa:#25d366;
  --ig:#d62976;
  --tt:#000000;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{font:16px/1.45 system-ui,-apple-system,Segoe UI,Inter,Roboto,Arial,sans-serif;color:var(--ink);background:#fff}
img{max-width:100%;display:block}

/* ====== Tira superior */
.topstrip{background:#0b1526;color:#cfe1ff;font-size:.88rem}
.topstrip .inner{max-width:1200px;margin:auto;padding:.55rem .75rem;display:flex;gap:12px;align-items:center;justify-content:flex-end}
.topstrip a{color:#fff;text-decoration:none}
.pill{background:#133a92;border-radius:999px;padding:.25rem .7rem}

/* ====== Topbar */
.topbar{background:#fff;position:sticky;top:0;z-index:50;border-bottom:1px solid #eef2f7}
.navwrap{max-width:1200px;margin:auto;padding:.5rem .75rem;display:flex;align-items:center;gap:24px}
.brand-logo{width:140px;height:140px;object-fit:contain}   /* DOBLE tamaño */
.brand{display:inline-block;margin-right:8px}

.mainnav{display:flex;gap:22px;flex-wrap:wrap;align-items:center}
.mainnav a{color:#111827;text-decoration:none;font-weight:600;padding:.55rem .1rem;border-radius:10px}
.mainnav a:hover{color:var(--blue)}
.mainnav .navpill{background:#edf3ff;color:var(--blue);padding:.55rem .9rem;border-radius:12px;border:1px solid #dbe8ff}
.mainnav .navpill.active{box-shadow:inset 0 -3px 0 0 var(--blue)}

/* ====== Slider superior */
.palmer-slider{position:relative;max-width:1200px;margin:14px auto;border-radius:16px;overflow:hidden;height:430px;background:#0b1526}
.palmer-slider .slide{position:absolute;inset:0;opacity:0;animation:fadeShow 45s infinite}
.palmer-slider .slide img{width:100%;height:100%;object-fit:cover}
.palmer-slider .slide figcaption{position:absolute;left:18px;bottom:14px;background:rgba(2,6,23,.55);color:#fff;padding:8px 12px;border-radius:10px;font-weight:700}
.palmer-slider .slide:nth-child(1){animation-delay:0s}
.palmer-slider .slide:nth-child(2){animation-delay:5s}
.palmer-slider .slide:nth-child(3){animation-delay:10s}
.palmer-slider .slide:nth-child(4){animation-delay:15s}
.palmer-slider .slide:nth-child(5){animation-delay:20s}
.palmer-slider .slide:nth-child(6){animation-delay:25s}
.palmer-slider .slide:nth-child(7){animation-delay:30s}
.palmer-slider .slide:nth-child(8){animation-delay:35s}
.palmer-slider .slide:nth-child(9){animation-delay:40s}
@keyframes fadeShow{
  0%{opacity:0}
  5%{opacity:1}
  20%{opacity:1}
  25%{opacity:0}
  100%{opacity:0}
}

/* ====== Contenedor principal y centrado */
.wrap{max-width:1200px;margin:auto;padding:8px 12px 48px}
.centered{max-width:980px;margin-left:auto;margin-right:auto} /* verdadero centrado */

/* ====== Matrícula 2026 */
.enrollment{margin-top:18px}
.enrollment h2{margin:0 0 12px;font-size:1.9rem}
.enrollment .accent strong{color:var(--blue)}
.tabs{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:8px}
.tab{display:flex;align-items:center;gap:10px;border:1px solid #e7eefc;background:#f7faff;padding:10px 14px;border-radius:12px;cursor:pointer}
.tab .emoji{font-size:1.1rem}
.tab.is-active{background:#eaf1ff;border-color:#cddfff;box-shadow:0 0 0 4px var(--ring)}
.req-title{margin:10px 0 14px;font-size:1.15rem;color:#0b2a66}
.req-box{display:none;border:1px solid #edf2fa;border-radius:14px;padding:14px;margin-bottom:12px;background:#fff}
.req-box.is-visible{display:block}
.req-item{border:1px solid #edf2fa;border-radius:12px;padding:12px;margin:10px 0;background:#fff}
.req-item h4{margin:.1rem 0 .4rem}

/* ====== Colegio Palmer */
.about{display:grid;grid-template-columns:1.05fr .95fr;gap:24px;align-items:stretch;margin:26px 0 30px}
.about-text h2{margin:0 0 8px}
.about-text p{color:#263246;margin:0 0 14px}
.btn-whatsapp{display:inline-flex;align-items:center;gap:10px;background:#14b56a;color:#fff;text-decoration:none;padding:.75rem 1.05rem;border-radius:999px;font-weight:800;box-shadow:0 6px 16px rgba(20,181,106,.28)}
.btn-whatsapp.ghost{background:#eafff4;color:#14b56a;border:1px solid #b8f0d3}
.wa-svg{width:22px;height:22px}
.about-visual{
  border-radius:16px;
  min-height:360px;       /* más espacio y sin transparencia */
  background:url("assets/hero/slide1.jpeg") center/cover no-repeat;
  border:1px solid #eef2fa;
}

/* ====== Secciones full width (banner y banda) */
.full{width:100vw;position:relative;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw}
.full .inner{max-width:1200px;margin:auto;padding:22px 12px}

/* ====== Banner medio */
.mid-banner{margin:10px 0 26px;background:linear-gradient(135deg,#f7fbff,#edf3ff);border-top:1px solid #e6eefc;border-bottom:1px solid #e6eefc}
.mid-banner .inner{display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:12px}
.mb-title .mb-year{font-size:1.9rem;letter-spacing:.02em;color:#ff5d00;font-weight:800}
.mb-title .mb-2026{font-size:3.4rem;font-weight:900;color:#ff5d00;margin-top:-8px}
.mb-title p{margin:.2rem 0 1rem;color:#374151}
.btn-primary{display:inline-block;background:var(--blue);color:#fff;text-decoration:none;padding:.7rem 1.1rem;border-radius:12px;font-weight:700}
.mb-figure{height:240px;border-radius:14px;background:radial-gradient(1200px 360px at 20% 10%, #eaf1ff 0, #fff 70%);border:1px solid #e6eefc}

/* ====== Banda inferior */
.qb-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}
.qitem{display:flex;flex-direction:column;gap:6px;padding:16px;border:1px solid #e7edf9;border-radius:16px;background:#fff;text-decoration:none;color:inherit}
.qitem:hover{box-shadow:0 10px 26px rgba(0,16,64,.06)}
.qico{font-size:1.25rem}
.qtitle{font-weight:800}
.qdesc{color:#49566f;font-size:.95rem}

/* ====== Footer */
.sitefoot{border-top:1px solid #eef2f7;padding:18px;text-align:center;color:#55627e;background:#fff}

/* ====== Social bar (iconos mucho más visibles) */
.social-bar{position:fixed;right:18px;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:12px;z-index:60}
.sb{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:#fff;border:2px solid #e6e6e6;box-shadow:0 6px 16px rgba(0,0,0,.08)}
.sb svg{width:26px;height:26px}
.sb-fb{color:var(--fb);border-color:var(--fb)}
.sb-wa{color:var(--wa);border-color:var(--wa)}
.sb-ig{color:var(--ig);border-color:var(--ig)}
.sb-tt{color:var(--tt);border-color:var(--tt)}

/* ====== Modal campaña */
.modal{position:fixed;inset:0;display:none;align-items:center;justify-content:center;z-index:80}
.modal.is-open{display:flex}
.modal-backdrop{position:absolute;inset:0;background:rgba(3,7,18,.55);backdrop-filter:blur(2px)}
.modal-card{position:relative;background:#fff;border-radius:16px;box-shadow:0 30px 80px rgba(2,6,23,.35);max-width:900px;width:92%;overflow:hidden}
.modal-close{position:absolute;top:8px;right:10px;border:none;background:#fff;border-radius:999px;width:36px;height:36px;cursor:pointer;box-shadow:0 4px 12px rgba(0,0,0,.15)}
.modal-body{display:grid;grid-template-columns:1.1fr .9fr}
.modal-left{padding:24px}
.modal-left h3{margin:0 0 8px;font-size:2rem;color:#ff5d00}
.modal-left p{margin:0 0 14px;color:#334155}
.modal-actions{display:flex;gap:10px;flex-wrap:wrap}
.modal-right{min-height:260px;background:url("assets/hero/slide7.png") center/cover no-repeat}

/* ====== Responsive */
@media (max-width: 1024px){
  .palmer-slider{height:360px}
  .about{grid-template-columns:1fr}
  .mid-banner .inner{grid-template-columns:1fr}
}
@media (max-width: 720px){
  .brand-logo{width:96px;height:96px}
  .palmer-slider{height:280px}
  .centered{max-width:92%}
  .qb-grid{grid-template-columns:1fr 1fr}
  .modal-body{grid-template-columns:1fr}
}
