/* ══ Instituto Avanza · página Nosotros ══ */

/* portada de página */
.pagehero{position:relative;background:var(--navy);color:rgba(255,255,255,.75);overflow:hidden}
.pagehero__in{position:relative;z-index:2;padding-block:clamp(56px,7vw,96px) clamp(52px,6.5vw,84px)}
.pagehero__in > *{max-width:860px}
.pagehero h1{font-size:clamp(32px,4.4vw,52px)}
.pagehero h1{color:#fff;margin-top:4px}
.pagehero h1 em{font-style:normal;color:var(--accent)}
.pagehero .lead{color:rgba(255,255,255,.72)}
.crumbs{display:flex;align-items:center;gap:10px;font-size:13.5px;color:rgba(255,255,255,.5);margin-bottom:22px}
.crumbs a{color:rgba(255,255,255,.7)}
.crumbs a:hover{color:var(--accent)}
.anim .pagehero__in .crumbs{animation:rise .7s cubic-bezier(.22,.68,.28,1) both}
.anim .pagehero__in .hero__eyebrow{animation:rise .8s cubic-bezier(.22,.68,.28,1) .08s both}
.anim .pagehero__in h1{animation:rise .95s cubic-bezier(.22,.68,.28,1) .16s both}
.anim .pagehero__in .lead{animation:rise .9s cubic-bezier(.22,.68,.28,1) .28s both}

/* misión y visión */
.mv{position:relative;background:var(--white);border:1px solid var(--line);border-radius:var(--r-card);
  padding:clamp(28px,3.2vw,38px);transition:transform .3s cubic-bezier(.22,.68,.28,1),border-color .3s,box-shadow .3s}
.mv:hover{transform:translateY(-4px);border-color:#C9D3E4;box-shadow:0 20px 44px -28px rgba(14,30,63,.34)}
.mv__k{display:inline-flex;align-items:center;gap:10px;font-size:12.5px;font-weight:600;letter-spacing:.16em;
  text-transform:uppercase;color:var(--brand-cta);margin-bottom:20px}
.mv__k::before{content:'';width:15px;height:15px;flex:none;border-radius:50%;border:2px solid var(--brand);
  border-right-color:transparent;border-bottom-color:transparent;transform:rotate(45deg);
  transition:transform .45s cubic-bezier(.22,.68,.28,1)}
.mv:hover .mv__k::before{transform:rotate(225deg) scale(1.12)}
.mv__q{font-family:'Poppins',sans-serif;font-weight:500;font-size:clamp(20px,2.2vw,26px);line-height:1.32;
  color:var(--navy);letter-spacing:-.01em;margin-bottom:16px}
.mv__t{font-size:16px;line-height:1.68}

/* modelo educativo */
.model{grid-template-columns:repeat(2,1fr)}
.model li:first-child{grid-column:1 / -1}

/* equipo */
.team{gap:clamp(16px,2vw,24px)}
.team-card{background:var(--white);border:1px solid var(--line);border-radius:var(--r-card);padding:28px;
  transition:transform .3s cubic-bezier(.22,.68,.28,1),border-color .3s,box-shadow .3s}
.team-card:hover{transform:translateY(-4px);border-color:#C9D3E4;box-shadow:0 20px 44px -28px rgba(14,30,63,.34)}
.team-card__k{font-family:'Poppins',sans-serif;font-weight:500;font-size:19px;color:var(--navy);margin-bottom:12px}
.team-card p{font-size:15.5px;line-height:1.65}
.team-card__c{margin-top:14px;padding-top:14px;border-top:1px solid var(--line);font-size:14px;
  color:var(--navy);font-weight:500;overflow-wrap:anywhere}

@media(max-width:860px){
  .model{grid-template-columns:1fr}
  .model li:first-child{grid-column:auto}
  .team{grid-template-columns:1fr}
}

/* ══ v2 · secciones propias de Nosotros ══ */

/* aviso de borrador */
.draftbar{background:#3A2A05;color:#FFD98A;border-bottom:1px solid rgba(255,217,138,.28);
  padding:11px var(--pad);font-size:13.5px;text-align:center;font-family:'Google Sans Flex',system-ui,sans-serif}
.draftbar b{color:#FFE9BC;font-weight:600}
.mark{margin-top:22px;padding:12px 16px;border-left:3px solid #C9971F;background:#FFF8E7;
  color:#6B5210;font-size:13.5px;line-height:1.55;border-radius:0 8px 8px 0}
.mark--dark{background:rgba(201,151,31,.14);color:#F0D79A;border-left-color:#C9971F}

/* fricción */
.friction{display:grid;gap:16px}
.friction li{padding:22px 24px;border:1px solid var(--line);border-radius:var(--r-card);background:var(--white);
  transition:transform .3s cubic-bezier(.22,.68,.28,1),border-color .3s,box-shadow .3s}
.friction li:hover{transform:translateX(5px);border-color:#C9D3E4;box-shadow:0 16px 34px -26px rgba(14,30,63,.3)}
.friction b{display:block;font-family:'Poppins',sans-serif;font-weight:500;font-size:17px;color:var(--navy);margin-bottom:5px}
.friction span{font-size:15px;line-height:1.62}

/* línea de tiempo */
.timeline,.criteria,.reqs,.friction{list-style:none;margin:0;padding-left:0}
.timeline{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(20px,3vw,32px);padding-top:34px}
.timeline::before{content:'';position:absolute;top:9px;left:6%;right:6%;height:1.5px;
  background:linear-gradient(90deg,var(--accent),var(--brand),var(--navy-3))}
.timeline li{position:relative;padding-top:26px}
.timeline li::before{content:'';position:absolute;top:-28px;left:0;width:13px;height:13px;border-radius:50%;
  background:var(--white);border:2px solid var(--brand);transition:transform .35s cubic-bezier(.22,.68,.28,1)}
.timeline li:hover::before{transform:scale(1.4)}
.timeline__y{display:block;font-family:'Poppins',sans-serif;font-weight:600;font-size:15px;
  letter-spacing:.08em;color:var(--brand-cta);margin-bottom:10px}
.timeline h3{font-size:20px;margin-bottom:9px}
.timeline p{font-size:15.5px;line-height:1.65}

/* criterio académico */
.criteria{display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(18px,2.4vw,26px)}
.criteria li{padding:28px;border:1px solid var(--line-dark);border-radius:var(--r-card);background:rgba(255,255,255,.03);
  transition:transform .3s cubic-bezier(.22,.68,.28,1),border-color .3s,background .3s}
.criteria li:hover{transform:translateY(-4px);border-color:rgba(140,198,63,.5);background:rgba(255,255,255,.06)}
.criteria__n{display:block;font-family:'Poppins',sans-serif;font-weight:600;font-size:14px;
  letter-spacing:.12em;color:var(--accent);margin-bottom:14px}
.criteria h3{font-size:19px;color:#fff;margin-bottom:9px}
.criteria p{font-size:15.5px;line-height:1.65;color:rgba(255,255,255,.68)}

/* requisitos docentes */
.reqs{display:grid;gap:2px;border:1px solid var(--line);border-radius:var(--r-card);overflow:hidden;background:var(--white)}
.reqs li{display:flex;align-items:flex-start;gap:13px;padding:17px 22px;border-bottom:1px solid var(--line);
  font-size:15.5px;line-height:1.55;color:var(--navy);transition:background .25s,padding-left .25s}
.reqs li:last-child{border-bottom:0}
.reqs li:hover{background:var(--smoke);padding-left:26px}
.reqs li::before{content:'';flex:none;margin-top:6px;width:13px;height:13px;border-radius:50%;
  border:2px solid var(--brand);border-right-color:transparent;border-bottom-color:transparent;transform:rotate(45deg)}

/* lo que no hacemos */
.nolist{gap:clamp(16px,2vw,22px)}
.no{padding:28px;border:1px solid var(--line);border-radius:var(--r-card);background:var(--white);
  transition:transform .3s cubic-bezier(.22,.68,.28,1),border-color .3s,box-shadow .3s}
.no:hover{transform:translateY(-4px);border-color:#C9D3E4;box-shadow:0 20px 44px -28px rgba(14,30,63,.34)}
.no h3{position:relative;padding-left:30px;font-size:19px;margin-bottom:10px}
.no h3::before{content:'';position:absolute;left:0;top:6px;width:16px;height:16px;border-radius:50%;
  border:2px solid var(--gray);opacity:.5}
.no h3::after{content:'';position:absolute;left:4px;top:13px;width:8px;height:2px;background:var(--gray);opacity:.5;border-radius:2px}
.no p{font-size:15.5px;line-height:1.65}

/* nombre del equipo */
.team-card__n{font-size:14px;font-weight:600;color:var(--brand-cta);margin-bottom:10px}

/* avales explicados */
.avals{display:grid;gap:2px;border:1px solid var(--line);border-radius:var(--r-card);overflow:hidden;background:var(--white)}
.avals > div{padding:24px 26px;border-bottom:1px solid var(--line);transition:background .25s}
.avals > div:last-child{border-bottom:0}
.avals > div:hover{background:var(--smoke)}
.avals dt{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-family:'Poppins',sans-serif;
  font-weight:500;font-size:17px;color:var(--navy);margin-bottom:9px}
.avals dd{font-size:15.5px;line-height:1.65;margin:0}

/* cifras con contexto */
.figures > div{max-width:760px}
.figures h2 em{font-style:normal;color:var(--brand-cta)}
.figures .lead b{color:var(--navy);font-weight:600}

@media(max-width:860px){
  .timeline{grid-template-columns:1fr;gap:28px;padding-top:8px}
  .timeline::before{display:none}
  .timeline li{padding-top:0;padding-left:28px}
  .timeline li::before{top:5px;left:0}
  .criteria,.nolist{grid-template-columns:1fr}
}

/* ══ aviso de página en construcción ══ */
.construccion{background:#FFF6E0;border-bottom:1px solid #F0DCA8}
.construccion__in{display:flex;align-items:flex-start;gap:13px;padding-block:14px}
.construccion svg{color:#B8860B;flex:none;margin-top:2px}
.construccion p{font-size:14.5px;line-height:1.55;color:#6B5210}
.construccion b{color:#4A3808;font-weight:600}
.construccion a{color:#8A6508;font-weight:600;text-decoration:underline;text-underline-offset:3px}
.construccion a:hover{color:#4A3808}
@media(max-width:620px){.construccion p{font-size:13.5px}}
