html{scroll-padding-top:5rem;scroll-behavior:smooth}
body{padding-top:3.5rem}
.top{position:fixed;inset:0 0 auto;z-index:100;background:rgba(21,19,16,.97)}
.home-title-sub{transform:none;font-size:clamp(.95rem,1.35vw,1.15rem)}
.statement.compass-stage{display:flex;justify-content:center;align-items:center}
.statement.compass-stage .brand-compass{justify-self:auto}
.contact{padding-top:clamp(2rem,4.5vw,4.5rem);padding-bottom:clamp(2rem,4.5vw,4.5rem)}
.contact h2{font-size:clamp(3rem,7vw,7rem);margin-bottom:2rem}
.contact-lines{display:flex;flex-direction:column;align-items:flex-start;gap:.75rem;margin-top:1.75rem}
.contact-line{display:inline-flex;align-items:center;gap:.65rem}
.contact .contact-lines a,.contact .social-links a{border:0;text-decoration:none}
.social-links{display:flex;align-items:center;gap:.8rem;margin-top:1rem}
.contact-icon{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;flex:0 0 2rem;background-position:center;background-repeat:no-repeat;background-size:contain;transition:transform .2s ease,opacity .2s ease}
.contact-icon:hover{transform:translateY(-2px);opacity:.88}
.contact-email{border-radius:.24rem;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Crect x='1' y='3' width='22' height='18' rx='2.5' fill='%23f2eadc'/%3E%3Cpath d='m3 6 9 7 9-7M3 19l6.5-7M21 19l-6.5-7' fill='none' stroke='%23151310' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}
.contact-instagram{border-radius:27%;background:radial-gradient(circle at 31% 107%,#fdf497 0 6%,#fdf497 7%,#fd5949 38%,#d6249f 62%,#285aeb 100%)}
.contact-instagram:before{content:"";width:1.25rem;height:1.25rem;background:#fff;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='2.2'%3E%3Crect x='3' y='3' width='18' height='18' rx='5'/%3E%3Ccircle cx='12' cy='12' r='4'/%3E%3Ccircle cx='17.4' cy='6.6' r='1' fill='black' stroke='none'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat}
.contact-facebook{border-radius:50%;background:#1877f2;color:#fff;font:700 1.75rem/1 Arial,sans-serif;align-items:flex-end}
.contact-facebook:before{content:"f";transform:translateY(.13rem)}
.contact-whatsapp{display:inline-flex;align-items:center;gap:.65rem;font-size:clamp(1rem,1.5vw,1.3rem)}
.contact-whatsapp:before{content:"";width:2rem;height:2rem;flex:0 0 2rem;border-radius:50%;background-color:#25d366;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='white' d='M13.6 2.33A7.85 7.85 0 0 0 7.99 0C3.64 0 .1 3.54.1 7.9c0 1.39.36 2.75 1.06 3.94L.03 15.95l4.2-1.1a7.9 7.9 0 0 0 3.76.96c4.36 0 7.9-3.54 7.9-7.9a7.85 7.85 0 0 0-2.29-5.58Zm-5.61 12.13a6.56 6.56 0 0 1-3.33-.91l-.24-.14-2.5.65.67-2.43-.16-.25a6.56 6.56 0 0 1-1-3.5c0-3.63 2.95-6.58 6.58-6.58a6.57 6.57 0 0 1 4.66 1.93 6.55 6.55 0 0 1 1.93 4.66c0 3.64-2.96 6.58-6.61 6.58Zm3.61-4.93c-.2-.1-1.17-.58-1.35-.65-.18-.06-.32-.1-.45.1-.13.2-.51.65-.63.78-.11.13-.23.15-.43.05-.2-.1-.83-.31-1.59-.98-.59-.52-.98-1.17-1.1-1.37-.11-.2-.01-.3.09-.4.09-.09.2-.23.3-.35.1-.11.13-.2.2-.33.06-.13.03-.25-.02-.35-.05-.1-.45-1.07-.61-1.47-.16-.39-.32-.34-.45-.34h-.38c-.13 0-.35.05-.53.25-.18.2-.69.68-.69 1.65 0 .98.71 1.92.81 2.05.1.13 1.39 2.13 3.38 2.99.47.2.84.32 1.13.42.47.15.9.13 1.24.08.38-.06 1.17-.48 1.34-.94.16-.46.16-.86.11-.94-.05-.08-.18-.13-.38-.23Z'/%3E%3C/svg%3E");background-position:center;background-repeat:no-repeat;background-size:1.42rem}
.contact-site{margin-top:.8rem}
.contact .contact-site a{border:0;text-decoration:none}
.contact-grid>.kicker{display:none}
.contact-grid{grid-template-columns:1fr}
.language-switch{grid-column:3;display:flex;justify-self:end;gap:.4rem;font-size:.72rem;font-weight:600;letter-spacing:.08em}
.language-switch [aria-current="true"]{border-bottom:1px solid currentColor}
.home-sequence{scroll-behavior:smooth}
.home-chapter{min-height:calc(100svh - 3.5rem);scroll-margin-top:3.5rem;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:clamp(4rem,8vw,7rem) var(--pad) clamp(2rem,4vw,3rem)}
.home-manifesto-copy{width:min(100%,54rem);font-family:"Libre Caslon Display",Georgia,serif;font-size:clamp(1.45rem,2.3vw,2.2rem);line-height:1.38;letter-spacing:-.018em}
.home-manifesto-copy p{max-width:none;margin:0 0 1.35em}
.home-manifesto-copy p:last-child{margin-bottom:0}
.home-manifesto-copy strong{font-weight:600}
.chapter-arrow{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;margin-top:clamp(2rem,5vh,4rem);font-family:Georgia,serif;font-size:1.05rem;font-weight:400;line-height:1;text-decoration:none;animation:chapter-arrow 3s ease-in-out infinite}
.chapter-arrow:hover{transform:translateY(.18rem)}
@keyframes chapter-arrow{0%,70%,100%{transform:translateY(0)}85%{transform:translateY(.22rem)}}
@media(prefers-reduced-motion:reduce){html,.home-sequence{scroll-behavior:auto}.chapter-arrow{animation:none}}
@media(max-width:1050px){.language-switch{position:absolute;top:1rem;right:var(--pad)}}
@media(max-width:850px){body{padding-top:7.2rem}.home-chapter{min-height:calc(100svh - 7.2rem);scroll-margin-top:7.2rem;padding-top:3rem}.chapter-arrow{margin-top:2rem}}

/* Primera prueba de la nueva portada: una firma discreta, aire y una imagen a la derecha. */
.landing-redesign{padding-top:0;background:var(--red);color:var(--cream)}
.landing-redesign .top{position:relative;inset:auto;grid-template-columns:minmax(12rem,1fr) auto minmax(9rem,.55fr);padding:1.25rem var(--pad);background:var(--red);color:var(--cream);border-bottom:1px solid var(--line);backdrop-filter:none}
.landing-redesign .brand{align-self:start;display:flex;align-items:flex-start;font-family:"Libre Caslon Display",Georgia,serif;font-size:clamp(1.85rem,2.8vw,2.75rem);font-weight:400;line-height:.92;letter-spacing:-.035em;white-space:nowrap}
.landing-redesign .brand .mark{display:none}
.landing-redesign .menu a:hover,.landing-redesign .menu a[aria-current=page]{border-color:var(--cream)}
.landing-redesign main{background:var(--red)}
.landing-opening{display:grid;grid-template-columns:minmax(15rem,.9fr) minmax(22rem,1.1fr);gap:clamp(2rem,6vw,7rem);min-height:calc(100svh - 5rem);padding:clamp(3rem,6vw,6.5rem) var(--pad) clamp(4rem,7vw,7rem);align-items:stretch}
.landing-opening-copy{display:flex;align-items:flex-start;padding:.25rem 0 0}
.landing-introduction{width:min(100%,34rem);font-size:clamp(1.12rem,1.55vw,1.45rem);line-height:1.42;letter-spacing:-.018em}
.landing-introduction p{margin:0 0 1.35rem;max-width:none}
.landing-introduction strong{font-weight:600}
.landing-more{display:inline-flex;align-items:center;gap:.65rem;margin-top:.8rem;padding-bottom:.18rem;border-bottom:1px solid currentColor;font-family:"Libre Caslon Display",Georgia,serif;font-size:.9rem;font-weight:400;letter-spacing:.06em;text-transform:uppercase}
.landing-more span{font-size:1rem;transition:transform .2s ease}
.landing-more:hover span{transform:translateX(.2rem)}
.landing-actions{display:flex;flex-direction:column;align-items:flex-start;gap:.8rem;margin-top:.8rem}
.landing-actions .landing-more{margin-top:0}
.landing-classes{font-size:.82rem;opacity:.82}
.landing-image-slot{min-height:34rem;margin:0;overflow:hidden;background:rgba(242,234,220,.08)}
.landing-image-slot img{display:block;width:100%;height:100%;min-height:34rem;object-fit:cover;object-position:center}
.continuation-opening .landing-introduction{width:min(100%,36rem)}
.continuation-arrow{margin-top:clamp(1.5rem,3vw,2.5rem);color:inherit}
.continuation-more{margin-top:clamp(.8rem,2vw,1.5rem)}
.landing-redesign .contact{color:var(--cream)}
.landing-redesign .footer{color:var(--red)}
@media(max-width:1050px){.landing-redesign .top{grid-template-columns:1fr auto}.landing-redesign .brand{grid-column:1}.landing-redesign .menu{grid-column:1 / -1}.landing-redesign .language-switch{grid-column:2;grid-row:1}}
@media(max-width:850px){.landing-redesign{padding-top:0}.landing-redesign .top{padding-top:1rem}.landing-opening{grid-template-columns:1fr;min-height:auto;padding-top:2.5rem}.landing-opening-copy{align-items:flex-start;padding:1rem 0}.landing-image-slot{min-height:min(118vw,34rem)}}

/* Cursos: acordeón editorial sobre el rojo de Hemisferio Sur. */
.courses-page{min-height:calc(100svh - 3.5rem);background:var(--red);color:var(--cream)}
.courses-page + .footer{background:#151310;color:var(--cream)}
.courses-opening{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(18rem,.8fr);gap:clamp(3rem,7vw,8rem);padding:clamp(4rem,7vw,7rem) var(--pad) clamp(5rem,8vw,8rem)}
.courses-list{max-width:58rem}
.courses-list .eyebrow{margin-bottom:.8rem;color:inherit;opacity:.78}
.courses-list h1{margin:0 0 clamp(2.5rem,4vw,3.75rem);font-family:"Libre Caslon Display",Georgia,serif;font-size:clamp(2.8rem,5vw,5rem);font-weight:400;line-height:.9;letter-spacing:-.04em}
.courses-accordion{border-top:1px solid rgba(242,234,220,.72)}
.course-item{border-bottom:1px solid rgba(242,234,220,.72)}
.course-item summary{position:relative;padding:1.15rem 3rem 1.15rem 0;cursor:pointer;list-style:none;font-family:"Libre Caslon Display",Georgia,serif;font-size:clamp(1.35rem,2.25vw,2.15rem);line-height:1.12;letter-spacing:-.02em}
.course-item summary::-webkit-details-marker{display:none}
.course-item summary:after{content:"";position:absolute;top:50%;right:.45rem;width:.55rem;height:.55rem;border-right:1px solid currentColor;border-bottom:1px solid currentColor;transform:translateY(-68%) rotate(45deg);transform-origin:center;transition:transform .25s ease}
.course-item[open] summary:after{transform:translateY(-30%) rotate(225deg)}
.course-item summary:focus-visible{outline:2px solid var(--cream);outline-offset:5px}
.course-answer{max-width:43rem;padding:.15rem 3rem 1.5rem 0;font-size:clamp(1rem,1.25vw,1.18rem);line-height:1.5}
.course-answer p{max-width:none;margin:0}
.course-answer .course-meta{margin-top:.9rem;font-size:.82em;letter-spacing:.025em;opacity:.72}
.course-links{display:flex;flex-wrap:wrap;gap:.8rem 1.6rem;margin-top:1.35rem}
.course-links a{display:inline-block;padding-bottom:.15rem;border-bottom:1px solid currentColor;font-size:.74rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}
.course-links a:hover{opacity:.72}
.courses-aside{display:flex;align-items:stretch;border-left:1px solid rgba(242,234,220,.58)}
.courses-aside-inner{display:flex;min-height:31rem;flex-direction:column;width:100%;padding:.2rem 0 .4rem clamp(2rem,5vw,5rem)}
.courses-aside-label{margin:0 0 auto;font-size:.72rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;opacity:.72}
.courses-aside-main{margin:0 0 2rem;font-family:"Libre Caslon Display",Georgia,serif;font-size:clamp(2rem,3.8vw,4rem);line-height:.93;letter-spacing:-.035em}
.courses-aside-main span{font-family:Inter,sans-serif;font-size:.28em;line-height:1.4;letter-spacing:.025em;opacity:.75}
.courses-contact{align-self:flex-start;margin-top:auto;padding-bottom:.2rem;border-bottom:1px solid currentColor;font-size:.78rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase}
@media(max-width:850px){.courses-page{min-height:auto}.courses-opening{grid-template-columns:1fr;gap:3.5rem;padding-top:3.5rem}.courses-list h1{margin-bottom:2.5rem}.courses-aside{border-left:0;border-top:1px solid rgba(242,234,220,.58)}.courses-aside-inner{min-height:0;padding:2rem 0 0}.courses-aside-label{margin-bottom:3.5rem}.courses-aside-main{font-size:clamp(2.4rem,12vw,4.2rem)}.courses-contact{margin-top:2rem}}

/* Portada: imagen proporcionada al texto y contacto más compacto. */
.landing-opening:not(.continuation-opening){align-items:start}
.landing-opening:not(.continuation-opening) .landing-image-slot{width:min(100%,34rem);min-height:0;aspect-ratio:4/3;justify-self:end}
.landing-opening:not(.continuation-opening) .landing-image-slot img{height:100%;min-height:0}
.landing-redesign .contact{padding-top:clamp(1.5rem,2.5vw,2.5rem);padding-bottom:clamp(1.5rem,2.5vw,2.5rem)}
.landing-redesign .contact h2{margin-bottom:1rem;font-size:clamp(2.5rem,4.5vw,4.75rem)}
.landing-redesign .contact-lines{margin-top:.75rem}
@media(max-width:850px){.landing-opening:not(.continuation-opening) .landing-image-slot{width:min(100%,32rem);justify-self:start;aspect-ratio:4/3}}

/* Lectura completa de la presentación en una sola página. */
.single-manifesto{background:var(--red);color:var(--cream);padding:clamp(4rem,8vw,8rem) var(--pad) clamp(6rem,10vw,10rem)}
.single-manifesto-copy{width:min(100%,54rem);margin:0 auto;font-family:"Libre Caslon Display",Georgia,serif;font-size:clamp(1.35rem,2.15vw,2rem);line-height:1.42;letter-spacing:-.018em}
.single-manifesto-copy p{max-width:none;margin:0 0 1.35em}
.single-manifesto-copy p:last-child{margin-bottom:0}
.single-manifesto-copy strong{font-weight:600}

/* Pie unificado en todo el sitio. */
.footer,.landing-redesign .footer,.courses-page + .footer{background:#151310;color:var(--cream)}
.footer{min-height:7rem;align-items:center;padding:clamp(1.75rem,3.25vw,3rem) var(--pad);font-size:.76rem}
.footer a{color:inherit}
@media(max-width:850px){.footer{min-height:6.5rem;padding-top:1.6rem;padding-bottom:1.6rem}}

/* Contacto con la misma escala visual que el resto de las barras. */
.contact,.landing-redesign .contact{display:grid;grid-template-columns:minmax(8rem,.35fr) minmax(0,1fr);align-items:center;gap:clamp(1.5rem,4vw,4rem);min-height:7rem;padding:clamp(1.75rem,3.25vw,3rem) var(--pad)}
.contact h2,.landing-redesign .contact h2{margin:0;font-size:clamp(1.9rem,3vw,2.75rem);line-height:1;letter-spacing:-.045em}
.contact .contact-grid{display:block}
.contact .contact-grid>div:last-child{display:flex;align-items:center;justify-content:flex-end;gap:clamp(1rem,2.5vw,2.5rem);flex-wrap:wrap}
.contact .contact-lines,.contact .social-links,.contact .contact-site{margin:0}
.contact p{font-size:clamp(.85rem,1vw,1rem)}
@media(max-width:850px){.contact,.landing-redesign .contact{grid-template-columns:1fr;min-height:6.5rem;padding-top:1.6rem;padding-bottom:1.6rem}.contact .contact-grid>div:last-child{justify-content:flex-start}}

/* Contacto reducido a la mitad de su altura anterior. */
.contact,.landing-redesign .contact{min-height:4rem;padding:.7rem var(--pad);gap:clamp(1rem,3vw,3rem)}
.contact h2,.landing-redesign .contact h2{font-size:clamp(1.45rem,2.1vw,2rem)}
.contact p{font-size:clamp(1rem,1.2vw,1.15rem)}
@media(max-width:850px){.contact,.landing-redesign .contact{min-height:4rem;padding-top:1rem;padding-bottom:1rem}}

/* Contacto: únicamente correo y redes, alineados a la izquierda. */
.contact,.landing-redesign .contact{grid-template-columns:1fr}
.contact h2,.landing-redesign .contact h2{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.contact .contact-grid{width:100%}
.contact .contact-grid>div:last-child{justify-content:flex-start}
.contact .contact-site{display:none}

/* Se conserva el rótulo Contacto junto al correo y las redes. */
.contact,.landing-redesign .contact{grid-template-columns:auto minmax(0,1fr)}
.contact h2,.landing-redesign .contact h2{position:static;width:auto;height:auto;padding:0;margin:0;overflow:visible;clip:auto;white-space:normal;border:0;font-size:clamp(1.45rem,2.1vw,2rem)}
.contact .contact-grid{width:auto}
@media(max-width:850px){.contact,.landing-redesign .contact{grid-template-columns:1fr}}

/* Navegación superior unificada */
.top,
.landing-redesign .top{
  background:#151310;
  color:var(--cream);
  border-bottom-color:rgba(242,234,220,.22);
}

/* Páginas preparadas para el desarrollo del programa diplomático. */
.diplomatic-page{min-height:calc(100vh - 4rem);display:flex;align-items:flex-start;padding:clamp(5rem,10vw,9rem) var(--pad)}
.diplomatic-placeholder{font-family:"Libre Caslon Display",Georgia,serif;font-size:clamp(2rem,4.5vw,4.5rem);line-height:1;letter-spacing:-.04em;max-width:15ch}
.single-manifesto-copy .diplomatic-signature{margin-top:clamp(3rem,6vw,5rem)}

/* Contacto del home: lectura vertical y ordenada. */
.contact,
.landing-redesign .contact{
  display:block;
  min-height:0;
  padding:clamp(1.6rem,3vw,2.5rem) var(--pad);
}
.contact h2,
.landing-redesign .contact h2{
  margin:0 0 1.25rem;
  font-size:clamp(1.65rem,2.4vw,2.25rem);
}
.contact .contact-grid,
.landing-redesign .contact .contact-grid{
  display:block;
  width:100%;
}
.contact .contact-grid > div:last-child,
.landing-redesign .contact .contact-grid > div:last-child{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:flex-start;
  gap:.9rem;
}
.contact .contact-lines,
.contact .social-links,
.landing-redesign .contact .contact-lines,
.landing-redesign .contact .social-links{
  margin:0;
}
.contact .social-links,
.contact-page .social-links{
  display:flex;
  align-items:center;
  gap:.8rem;
}

/* Redes monocromas: símbolos sin fondos de color. */
.contact-instagram{
  border-radius:0;
  background:transparent;
  color:inherit;
}
.contact-instagram:before{
  background:currentColor;
}
.contact-facebook{
  align-items:center;
  border-radius:0;
  background:transparent;
  color:inherit;
}
.contact-facebook:before{
  transform:none;
}
.header-socials .contact-facebook:before{
  transform:none;
}

/* Redes sociales en la navegación superior */
.top,
.landing-redesign .top{
  grid-template-columns:minmax(10rem,1fr) auto auto minmax(8rem,1fr);
}
.header-socials{
  grid-column:3;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:.8rem;
  margin-left:clamp(.75rem,1.5vw,1.5rem);
}
.header-socials .contact-icon{
  width:1.35rem;
  height:1.35rem;
  flex-basis:1.35rem;
}
.header-socials .contact-instagram:before{
  width:1.15rem;
  height:1.15rem;
}
.header-socials .contact-facebook{
  font-size:1.28rem;
}
.header-socials .contact-facebook:before{
  transform:translateY(.08rem);
}

/* Barra de contacto: rótulo, correo y redes en una única línea. */
.contact,
.landing-redesign .contact{
  display:grid;
  grid-template-columns:1fr 1fr 1fr;
  align-items:center;
  column-gap:clamp(1rem,4vw,4rem);
  width:100%;
}
.contact h2,
.landing-redesign .contact h2{
  margin:0;
  justify-self:start;
}
.contact .contact-grid,
.landing-redesign .contact .contact-grid,
.contact .contact-grid > div:last-child,
.landing-redesign .contact .contact-grid > div:last-child{
  display:contents;
}
.contact .contact-lines,
.landing-redesign .contact .contact-lines{
  justify-self:center;
}
.contact .social-links,
.landing-redesign .contact .social-links{
  justify-self:end;
}
@media(max-width:650px){
  .contact,
  .landing-redesign .contact{
    grid-template-columns:auto minmax(0,1fr) auto;
    column-gap:.75rem;
  }
  .contact h2,
  .landing-redesign .contact h2{
    font-size:1.25rem;
  }
  .contact .contact-line,
  .landing-redesign .contact .contact-line{
    gap:.35rem;
    font-size:.78rem;
  }
  .contact .contact-line .contact-icon,
  .landing-redesign .contact .contact-line .contact-icon{
    display:none;
  }
}
.language-switch,
.landing-redesign .language-switch{
  grid-column:4;
}
@media(max-width:1050px){
  .header-socials{
    position:absolute;
    top:1rem;
    right:calc(var(--pad) + 5.4rem);
    margin:0;
  }
}

/* Las redes forman un único grupo visual con el selector de idioma. */
.top,
.landing-redesign .top{
  grid-template-columns:minmax(10rem,1fr) auto minmax(8rem,1fr);
}
.header-socials,
.landing-redesign .header-socials{
  position:absolute;
  top:50%;
  right:calc(var(--pad) + 6.5rem);
  grid-column:auto;
  margin:0;
  transform:translateY(-50%);
}
.language-switch,
.landing-redesign .language-switch{
  grid-column:3;
}
@media(max-width:1050px){
  .header-socials,
  .landing-redesign .header-socials{
    top:1rem;
    transform:none;
  }
}

/* Los nombres de las secciones permanecen únicamente en la navegación. */
.page-title,
.courses-list > h1{
  display:none;
}

/* Firma de marca idéntica en todas las barras superiores. */
.top .brand,
.landing-redesign .top .brand{
  align-self:center;
  display:flex;
  align-items:center;
  gap:.7rem;
  font-family:"Libre Caslon Display",Georgia,serif;
  font-size:1.2rem;
  font-weight:400;
  line-height:1;
  letter-spacing:-.02em;
  white-space:nowrap;
}
.top .brand .mark,
.landing-redesign .top .brand .mark{
  display:inline-block;
  font-size:1.15rem;
  line-height:1;
}
.landing-redesign .top{
  position:sticky;
  top:0;
  padding:.9rem var(--pad);
  backdrop-filter:blur(12px);
}

/* La barra superior comparte la escala tipográfica del contacto. */
.top,
.landing-redesign .top{
  padding:1.05rem var(--pad);
}
.top .brand,
.landing-redesign .top .brand{
  font-size:clamp(1.65rem,2.4vw,2.25rem);
}
.top .brand .mark,
.landing-redesign .top .brand .mark{
  font-size:clamp(1.3rem,1.7vw,1.65rem);
}
.top .menu,
.landing-redesign .top .menu{
  font-size:.84rem;
}
.top .language-switch,
.landing-redesign .top .language-switch{
  font-size:.84rem;
}

/* Portadilla editorial de PIMBA! */
.pimba-page{min-height:calc(100vh - 5rem);background:var(--red);color:var(--cream)}
.pimba-hero{min-height:calc(100vh - 5rem);display:grid;grid-template-columns:minmax(0,1.55fr) minmax(15rem,.65fr);align-items:stretch;gap:clamp(3rem,8vw,9rem);padding:clamp(4rem,8vw,8rem) var(--pad) clamp(3rem,6vw,6rem)}
.pimba-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.pimba-kicker{margin:0 0 1rem;font-family:Inter,Arial,sans-serif;font-size:clamp(.72rem,.9vw,.9rem);font-weight:600;letter-spacing:.14em;text-transform:uppercase}
.pimba-copy h1{margin:0;font-family:"Libre Caslon Display",Georgia,serif;font-size:clamp(5.5rem,13.5vw,12.75rem);font-weight:400;line-height:.76;letter-spacing:-.065em}
.pimba-deck{max-width:31rem;margin:clamp(2rem,4vw,3.5rem) 0 0;font-family:"Libre Caslon Display",Georgia,serif;font-size:clamp(1.45rem,2.3vw,2.25rem);line-height:1.18;letter-spacing:-.025em}
.pimba-cta{display:inline-flex;align-items:center;gap:1.2rem;margin-top:clamp(2rem,4vw,3.5rem);padding:1rem 1.35rem;border:1px solid var(--cream);color:var(--cream);font-family:Inter,Arial,sans-serif;font-size:.82rem;font-weight:600;letter-spacing:.08em;text-decoration:none;transition:background .2s ease,color .2s ease}
.pimba-cta:hover,.pimba-cta:focus-visible{background:var(--cream);color:var(--red)}
.pimba-index{align-self:stretch;display:flex;flex-direction:column;justify-content:center;border-left:1px solid rgba(242,234,220,.38);padding-left:clamp(1.5rem,4vw,4rem)}
.pimba-index span{display:block;padding:.45rem 0;font-family:"Libre Caslon Display",Georgia,serif;font-size:clamp(1.35rem,2.45vw,2.65rem);line-height:1}
@media(max-width:800px){.pimba-hero{grid-template-columns:1fr;gap:3.5rem;padding-top:4rem}.pimba-copy h1{font-size:clamp(4.75rem,22vw,7.5rem)}.pimba-index{border-left:0;border-top:1px solid rgba(242,234,220,.38);padding:2rem 0 0}}

/* PIMBA! como invitación de lectura, dentro de la identidad roja del sitio. */
.pimba-page{background:var(--red);color:var(--cream)}
.pimba-hero{min-height:calc(100vh - 5rem);display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:0;padding:clamp(5rem,10vw,9rem) var(--pad)}
.pimba-copy{max-width:52rem}
.pimba-kicker{margin-bottom:1.35rem;color:var(--cream)}
.pimba-copy h1{color:var(--cream);font-size:clamp(3rem,5.8vw,5.4rem);line-height:.84;letter-spacing:-.055em;text-transform:uppercase}
.pimba-deck{max-width:36rem;margin-top:2.25rem;font-size:clamp(1.4rem,2vw,1.9rem);line-height:1.28}
.pimba-cta{margin-top:2.25rem;padding:.25rem 0;border:0;border-bottom:1px solid currentColor;color:var(--cream);font-size:.78rem}
.pimba-cta:hover,.pimba-cta:focus-visible{background:transparent;color:var(--cream);opacity:.72}
.pimba-index{display:flex;flex-direction:row;flex-wrap:wrap;gap:.45rem 1.15rem;margin-top:4rem;padding:0;border:0;color:var(--cream)}
.pimba-index span{padding:0;font-family:Inter,Arial,sans-serif;font-size:.72rem;font-weight:500;line-height:1.3;letter-spacing:.08em;text-transform:uppercase}
@media(max-width:800px){.pimba-hero{display:flex;gap:0;padding-top:4.5rem}.pimba-copy h1{font-size:clamp(3rem,14vw,4.5rem)}.pimba-index{margin-top:3.25rem;padding:0;border:0}}
.pimba-actions{display:flex;flex-direction:column;align-items:flex-start;gap:1rem;margin-top:2.25rem}
.pimba-actions .pimba-cta{margin-top:0}
.pimba-actions .pimba-instagram{width:1.35rem;height:1.35rem;flex-basis:1.35rem;color:var(--cream)}
.pimba-actions .pimba-instagram:before{width:1.1rem;height:1.1rem}

/* Nombre editorial: texto de ancho natural y espacio tipográfico francés. */
.menu a[href$="/blog/"]{
  display:inline-block;
  flex:initial;
  width:auto;
  margin-right:0;
  font-size:0;
  text-indent:0;
}
.menu a[href$="/blog/"]::after{
  content:"Pimba\202F!";
  position:static;
  font-size:.84rem;
  line-height:inherit;
  white-space:nowrap;
}
.pimba-copy h1{font-size:0;text-indent:0}
.pimba-copy h1::after{
  content:"PIMBA\202F!";
  position:static;
  font-size:clamp(3rem,5.8vw,5.4rem);
  line-height:.84;
  letter-spacing:-.055em;
  white-space:nowrap;
}
@media(max-width:800px){
  .pimba-copy h1::after{font-size:clamp(3rem,14vw,4.5rem)}
}

/* Noticias se conserva como página, pero deja de aparecer en la navegación. */
.menu a[href="/noticias/"],
.menu a[href="/en/news/"],
.menu a[href="/fr/actualites/"]{display:none}

/* Nombre de la sección institucional en cada idioma. */
.menu a[href="/staff/"],
.menu a[href="/en/staff/"],
.menu a[href="/fr/staff/"]{font-size:0}
.menu a[href="/staff/"]::after{content:"Nosotros"}
.menu a[href="/en/staff/"]::after{content:"About us"}
.menu a[href="/fr/staff/"]::after{content:"Nous"}
.menu a[href="/staff/"]::after,
.menu a[href="/en/staff/"]::after,
.menu a[href="/fr/staff/"]::after{font-size:.84rem}

/* Orden común del menú: Nosotros antes de Cursos. */
.menu a[href="/staff/"],
.menu a[href="/en/staff/"],
.menu a[href="/fr/staff/"]{order:1}
.menu a[href="/cursos/"],
.menu a[href="/en/courses/"],
.menu a[href="/fr/cours/"]{order:2}
.menu a[href="/blog/"],
.menu a[href="/en/blog/"],
.menu a[href="/fr/blog/"]{order:3}
.menu a[href="/contacto/"],
.menu a[href="/en/contact/"],
.menu a[href="/fr/contact/"]{order:4}

/* La portada completa cabe en la primera ventana, sin desplazamiento. */
body.cover-page{height:100svh;min-height:100svh;padding-top:0;overflow:hidden;display:flex;flex-direction:column}
.cover-page .top{position:relative;flex:0 0 auto}
.cover-page main{flex:1;min-height:0;display:grid;grid-template-rows:minmax(0,1fr) auto auto}
.cover-page .hero{min-height:0;padding:clamp(1rem,2.5vh,2rem) var(--pad) .25rem;justify-content:center}
.cover-page .hero>div{transform:none}
.cover-page .home-title{font-size:clamp(3.7rem,min(9vw,14vh),8rem)}
.cover-page .statement.compass-stage{margin:0;padding:.35rem var(--pad) clamp(.65rem,1.7vh,1.15rem);background:var(--red);color:var(--cream)}
.cover-page .brand-compass{width:clamp(6.25rem,14vh,8.75rem)}
.cover-page .contact{min-height:0;padding:clamp(.7rem,1.5vh,1rem) var(--pad)}
.cover-page .contact h2{font-size:clamp(1.3rem,2vw,1.75rem)}
.cover-page .contact p{font-size:clamp(.85rem,1vw,1rem)}
@media(max-width:850px){
  body.cover-page{padding-top:0}
  .cover-page .home-title{font-size:clamp(3rem,min(16vw,12vh),5.4rem)}
  .cover-page .brand-compass{width:clamp(5.5rem,13vh,7.25rem)}
  .cover-page .contact{grid-template-columns:auto minmax(0,1fr) auto;padding:.65rem var(--pad)}
  .cover-page .contact h2{font-size:1.15rem}
}

/* Segunda prueba: conservar la escala original y recuperar espacio por superposición. */
.cover-page main{position:relative;grid-template-rows:minmax(0,1fr) auto}
.cover-page .hero{grid-row:1;grid-column:1;padding:0 var(--pad);align-items:center;justify-content:center}
.cover-page .hero>div{transform:translateY(-7vh)}
.cover-page .home-title{font-size:clamp(4.15rem,10.1vw,9.2rem);line-height:.72;letter-spacing:-.075em}
.cover-page .statement.compass-stage{grid-row:1;grid-column:1;align-self:end;z-index:2;margin:0;padding:0 var(--pad) clamp(.8rem,2vh,1.35rem);pointer-events:none}
.cover-page .brand-compass{width:clamp(9.2rem,14.7vw,12rem)}
.cover-page .contact{grid-row:2}
.cover-page .contact h2{font-size:clamp(1.45rem,2.1vw,2rem)}
.cover-page .contact p{font-size:clamp(1rem,1.2vw,1.15rem)}
@media(max-width:850px){
  .cover-page .hero>div{transform:translateY(-5vh)}
  .cover-page .home-title{font-size:clamp(3.7rem,18.5vw,6.5rem)}
  .cover-page .brand-compass{width:min(44vw,10.2rem)}
}

/* Ajuste final de la portada: título más alto y brújula más contenida. */
.cover-page .hero>div{transform:translateY(-11vh)}
.cover-page .brand-compass{width:clamp(7.25rem,11vw,9.25rem)}
@media(max-width:850px){
  .cover-page .hero>div{transform:translateY(-8vh)}
  .cover-page .brand-compass{width:min(34vw,8.2rem)}
}

/* Equilibrio entre título y brújula. */
.cover-page .home-title{font-size:clamp(3.8rem,9.2vw,8.4rem)}
.cover-page .brand-compass{width:clamp(8.5rem,13vw,10.75rem)}
@media(max-width:850px){
  .cover-page .home-title{font-size:clamp(3.35rem,17vw,5.8rem)}
  .cover-page .brand-compass{width:min(40vw,9.35rem)}
}

/* Más aire entre el nombre y la brújula. */
.cover-page .hero>div{transform:translateY(-14vh)}
.cover-page .statement.compass-stage{padding-bottom:.25rem}
@media(max-width:850px){
  .cover-page .hero>div{transform:translateY(-10vh)}
  .cover-page .statement.compass-stage{padding-bottom:.2rem}
}

/* Portada con más respiración vertical. */
.cover-page .hero>div{transform:translateY(-12vh)}
.cover-page .home-title{font-size:clamp(3.5rem,8.2vw,7.5rem)}
.cover-page .statement.compass-stage{padding-bottom:clamp(1.5rem,3vh,2.5rem)}
@media(max-width:850px){
  .cover-page .hero>div{transform:translateY(-8vh)}
  .cover-page .home-title{font-size:clamp(3.1rem,15vw,5.2rem)}
  .cover-page .statement.compass-stage{padding-bottom:1.2rem}
}

/* Ajuste del bloque del nombre: más alto y con mejor interlínea. */
.cover-page .hero>div{transform:translateY(-14vh)}
.cover-page .home-title{line-height:.8}
.cover-page .home-title-south{margin-top:.04em}
@media(max-width:850px){
  .cover-page .hero>div{transform:translateY(-10vh)}
  .cover-page .home-title{line-height:.8}
}

/* Portada ligeramente extendida: más aire con un recorrido breve. */
body.cover-page{height:auto;min-height:115svh;overflow-x:hidden;overflow-y:auto}
.cover-page .top{position:sticky;top:0}
.cover-page main{flex:0 0 auto;min-height:calc(115svh - 5rem)}
@media(max-width:850px){
  body.cover-page{min-height:112svh}
  .cover-page main{min-height:calc(112svh - 7rem)}
}

/* Regreso a una identidad predominantemente roja: barras sin fondo negro. */
.top,
.landing-redesign .top,
.contact,
.landing-redesign .contact,
.footer,
.landing-redesign .footer,
.courses-page + .footer{
  background:var(--red);
  color:var(--cream);
}
.top,
.landing-redesign .top{border-bottom:1px solid rgba(242,234,220,.3)}
.contact,
.landing-redesign .contact,
.footer,
.landing-redesign .footer{border-top:1px solid rgba(242,234,220,.3)}

/* Ajuste mínimo: brújula apenas más alta. */
.cover-page .statement.compass-stage{padding-bottom:clamp(1.9rem,3.5vh,2.9rem)}
@media(max-width:850px){
  .cover-page .statement.compass-stage{padding-bottom:1.55rem}
}

/* Portada: título y brújula un poco más altos, manteniendo su separación. */
.cover-page .hero>div{transform:translateY(-16vh)}
.cover-page .statement.compass-stage{padding-bottom:clamp(2.5rem,4.5vh,3.6rem)}
@media(max-width:850px){
  .cover-page .hero>div{transform:translateY(-12vh)}
  .cover-page .statement.compass-stage{padding-bottom:2rem}
}

/* Segundo ajuste vertical de la portada. */
.cover-page .hero>div{transform:translateY(-18vh)}
.cover-page .statement.compass-stage{padding-bottom:clamp(3.1rem,5.5vh,4.25rem)}
@media(max-width:850px){
  .cover-page .hero>div{transform:translateY(-14vh)}
  .cover-page .statement.compass-stage{padding-bottom:2.55rem}
}

/* Adaptación móvil común a las tres versiones del sitio. */
@media(max-width:1050px){
  body,body.landing-redesign{padding-top:0}
  .top,.landing-redesign .top,.cover-page .top{
    position:sticky;inset:auto;top:0;
    display:grid;grid-template-columns:minmax(0,1fr) auto auto;
    gap:.75rem 1.5rem;padding:1rem var(--pad);
    background:var(--red);
  }
  .top .brand,.landing-redesign .top .brand{grid-column:1;grid-row:1;font-size:clamp(1.55rem,3.2vw,2rem);min-width:0}
  .top .header-socials,.landing-redesign .top .header-socials{
    position:static;grid-column:2;grid-row:1;inset:auto;
    transform:none;justify-self:end;display:flex;gap:.6rem;
  }
  .top .language-switch,.landing-redesign .top .language-switch{
    position:static;grid-column:3;grid-row:1;inset:auto;
    justify-self:end;align-items:center;font-size:.875rem;
  }
  .top .menu,.landing-redesign .top .menu{
    grid-column:1 / -1;grid-row:2;justify-content:center;
    align-items:center;flex-wrap:wrap;gap:.4rem 1.5rem;margin:0;
    font-size:.875rem;
  }
  .top .menu a{display:inline-flex;align-items:center;min-height:2.5rem;white-space:nowrap}
  .top .menu a::after{font-size:.875rem}
  .top .menu a[href="/noticias/"],.top .menu a[href="/en/news/"],.top .menu a[href="/fr/actualites/"]{display:none}
  .top .header-socials .contact-icon{width:2rem;height:2rem;flex-basis:2rem}
  body.cover-page{min-height:100svh;height:auto;overflow:visible}
  .cover-page main{display:grid;grid-template-rows:minmax(23rem,1fr) auto auto;min-height:calc(105svh - 7rem)}
  .cover-page .hero{grid-row:1;grid-column:1;padding:3rem var(--pad) 2rem;min-height:0}
  .cover-page .hero>div{transform:none}
  .cover-page .home-title{line-height:.9}
  .cover-page .statement.compass-stage{grid-row:2;grid-column:1;align-self:auto;padding:.5rem var(--pad) 3rem}
  .cover-page .contact{grid-row:3}
}
@media(max-width:600px){
  :root{--pad:clamp(1.25rem,5vw,2rem)}
  html{scroll-padding-top:10rem}
  .top,.landing-redesign .top,.cover-page .top{
    grid-template-columns:1fr 1fr;gap:.2rem 1.5rem;padding:.75rem var(--pad);
  }
  .top .brand,.landing-redesign .top .brand{
    grid-column:1 / -1;grid-row:1;justify-self:center;font-size:1.75rem;
  }
  .top .menu,.landing-redesign .top .menu{grid-row:2;gap:0 clamp(.65rem,3.4vw,1.25rem);letter-spacing:.025em}
  .top .header-socials,.landing-redesign .top .header-socials{grid-column:1;grid-row:3;justify-self:end}
  .top .language-switch,.landing-redesign .top .language-switch{grid-column:2;grid-row:3;justify-self:start;min-height:2.5rem}
  .language-switch a{display:inline-flex;align-items:center;min-height:2.5rem;padding:0 .15rem}
  body.cover-page{min-height:100svh;height:auto;overflow:visible}
  .cover-page main{
    display:grid;grid-template-rows:minmax(20rem,1fr) auto auto;
    min-height:calc(100svh - 9.5rem);flex:1;
  }
  .cover-page .hero{grid-row:1;grid-column:1;padding:2.75rem var(--pad) 2rem;min-height:0}
  .cover-page .hero>div{transform:none}
  .cover-page .home-title{font-size:clamp(3.4rem,16vw,5.8rem);line-height:.9;letter-spacing:-.055em}
  .cover-page .home-title-south{margin-top:.08em}
  .cover-page .statement.compass-stage{
    grid-row:2;grid-column:1;align-self:auto;padding:.5rem var(--pad) 3rem;
  }
  .cover-page .brand-compass{width:clamp(8rem,35vw,10rem)}
  .cover-page .contact{grid-row:3}
  .contact,.landing-redesign .contact,.cover-page .contact{
    grid-template-columns:minmax(0,1fr) auto;gap:.5rem 1rem;
    padding:1.25rem var(--pad);min-height:0;
  }
  .contact h2,.landing-redesign .contact h2,.cover-page .contact h2{
    grid-column:1;grid-row:1;font-size:1.5rem;line-height:1.1;
  }
  .contact .contact-lines,.landing-redesign .contact .contact-lines{
    grid-column:1;grid-row:2;justify-self:start;margin:0;min-width:0;
  }
  .contact .contact-line,.landing-redesign .contact .contact-line{font-size:1rem;overflow-wrap:anywhere}
  .contact .social-links,.landing-redesign .contact .social-links{
    grid-column:2;grid-row:1 / 3;justify-self:end;margin:0;gap:.6rem;
  }
  .single-manifesto{padding:2.75rem var(--pad) 4rem}
  .single-manifesto-copy,.home-manifesto-copy{font-size:1.4rem;line-height:1.45;letter-spacing:-.01em}
  .landing-opening{padding:2.75rem var(--pad) 4rem;gap:2rem}
  .landing-introduction{font-size:1.4rem;line-height:1.45}
  .courses-opening{padding:2.75rem var(--pad) 4rem;gap:2.5rem;min-width:0}
  .courses-list,.courses-aside{min-width:0}
  .course-item summary{font-size:1.6rem;line-height:1.18;padding:1.25rem 2rem 1.25rem 0}
  .course-links{display:flex;flex-wrap:wrap;gap:1rem}
  .course-links a{font-size:.875rem;min-height:2.75rem;display:inline-flex;align-items:center}
  .contact-page{padding:2.75rem var(--pad) 4rem;gap:2.5rem;min-height:0}
  .contact-details,.contact-form{min-width:0}
  .contact-address{font-size:1rem;overflow-wrap:anywhere}
  .form-field label{font-size:.875rem}
  .form-field input,.form-field textarea{font-size:1.1rem}
  .contact-submit{font-size:.875rem;min-height:2.75rem}
  .pimba-hero{padding:3.5rem var(--pad);min-height:calc(100svh - 9.5rem)}
  .pimba-kicker{font-size:.875rem;line-height:1.5}
  .pimba-cta{font-size:.875rem;min-height:2.75rem;align-items:center}
}
@media(max-height:500px) and (max-width:1050px){
  .cover-page .hero>div{transform:none}
  .cover-page main{display:flex;flex-direction:column;min-height:0}
  .cover-page .hero{padding:2.5rem var(--pad)}
  .cover-page .home-title{font-size:clamp(3.5rem,9vw,5rem);line-height:.9}
  .cover-page .statement.compass-stage{padding:1rem var(--pad) 2rem}
}

/* Composición móvil más cercana a la portada de escritorio. */
@media(max-width:600px){
.top,.landing-redesign .top,.cover-page .top{grid-template-columns:minmax(0,1fr) auto;gap:.55rem 1rem;padding:.8rem var(--pad) .5rem}
.top .brand,.landing-redesign .top .brand{grid-column:1;grid-row:1;justify-self:start;font-size:clamp(1.5rem,6.3vw,1.8rem)}
.top .header-socials,.landing-redesign .top .header-socials{grid-column:2;grid-row:1;justify-self:end;gap:.5rem}
.top .header-socials .contact-icon{width:1.75rem;height:1.75rem;flex-basis:1.75rem}
.top .menu,.landing-redesign .top .menu{grid-column:1;grid-row:2;justify-content:flex-start;gap:0 clamp(.55rem,2.5vw,.85rem);letter-spacing:0;font-weight:400}
.top .language-switch,.landing-redesign .top .language-switch{grid-column:2;grid-row:2;justify-self:end;gap:.2rem;font-size:.875rem}
html{scroll-padding-top:7rem}
.cover-page main{min-height:calc(100svh - 6.5rem);grid-template-rows:minmax(16rem,1fr) auto auto}
.cover-page .hero{padding:clamp(2.25rem,7svh,4rem) var(--pad) 2rem;align-items:center}
.cover-page .home-title{font-size:clamp(3.6rem,17.2vw,6.2rem);line-height:.86;letter-spacing:-.055em}
.cover-page .home-title-south{margin-top:.08em}
.cover-page .statement.compass-stage{padding:1rem var(--pad) clamp(2.5rem,6svh,4rem)}
.cover-page .brand-compass{width:clamp(8.5rem,37vw,10.5rem)}
.cover-page .contact{padding:1.15rem var(--pad)}
.single-manifesto-copy,.home-manifesto-copy,.landing-introduction{font-size:clamp(1.25rem,5.3vw,1.5rem);line-height:1.42}
.single-manifesto{padding-top:3rem}
.course-item summary{font-size:clamp(1.4rem,5.8vw,1.75rem)}
}
@media(max-width:360px){
.top .menu,.landing-redesign .top .menu{grid-column:1 / -1;justify-content:center}
.top .language-switch,.landing-redesign .top .language-switch{grid-column:1 / -1;grid-row:3;justify-self:center}
.cover-page main{min-height:calc(100svh - 9rem)}
}

/* Corrección basada en la captura móvil: menú alineado y portada compacta. */
@media(max-width:600px){
.top,.landing-redesign .top,.cover-page .top{row-gap:.2rem;padding:.65rem var(--pad) .4rem}
.top .menu,.landing-redesign .top .menu{grid-column:1 / -1;grid-row:2;display:flex;justify-content:space-between;flex-wrap:nowrap;gap:.4rem;min-width:0}
.top .menu a{min-height:2.2rem;font-size:.875rem}
.top .menu a::after{font-size:.875rem}
.top .language-switch,.landing-redesign .top .language-switch{grid-column:1 / -1;grid-row:3;justify-self:end;min-height:1.75rem}
.language-switch a{min-height:1.75rem}
body.cover-page{display:flex;flex-direction:column;min-height:100svh;height:auto}
.cover-page main{flex:1;min-height:0;grid-template-rows:minmax(0,1fr) auto auto}
.cover-page .hero{padding:2rem var(--pad) 1.75rem;min-height:0}
.cover-page .home-title{font-size:clamp(3.2rem,16vw,5.5rem);line-height:.86}
.cover-page .statement.compass-stage{padding:0 var(--pad) 1.75rem}
.cover-page .brand-compass{width:clamp(7.5rem,33vw,9rem)}
.cover-page .contact{padding:.85rem var(--pad);gap:.35rem .75rem}
.cover-page .contact h2{font-size:1.35rem}
.cover-page .contact .contact-line{font-size:.95rem}
}

/* Les libellés sont désormais présents directement dans le menu. */
.top .menu a[href$="/staff/"],.top .menu a[href$="/blog/"]{font-size:.875rem;text-indent:0}
.top .menu a[href$="/staff/"]::after,.top .menu a[href$="/blog/"]::after{content:none;display:none}

/* Brújula móvil más próxima al título, conservando el orden. */
@media(max-width:600px){
.cover-page main{grid-template-rows:auto minmax(0,1fr) auto}
.cover-page .hero{padding:2rem var(--pad) 1.5rem}
.cover-page .statement.compass-stage{align-self:stretch;align-items:flex-start;padding:0 var(--pad) 1.75rem}
}

/* Équilibre de la portada móvil: encabezado más bajo y contacto más alto. */
@media(max-width:600px){
.top,.landing-redesign .top,.cover-page .top{padding-top:1.3rem}
.cover-page main{flex:0 0 auto;min-height:0;grid-template-rows:auto auto auto}
.cover-page .hero{justify-content:center;align-items:center;text-align:center;padding:2.5rem var(--pad) 1.75rem}
.cover-page .hero>div{width:100%;transform:none}
.cover-page .home-title{margin:0 auto;align-items:center}
.cover-page .statement.compass-stage{justify-content:center;align-items:center;padding:.25rem var(--pad) 2.5rem}
.cover-page .brand-compass{margin:0 auto;flex-shrink:0}
.cover-page .contact{align-self:start}
}

/* Simetría móvil: firma, portada y contacto comparten el eje central. */
@media(max-width:600px){
.top,.landing-redesign .top,.cover-page .top{grid-template-columns:1fr 1fr;gap:.35rem 1.25rem;padding:1rem var(--pad) .75rem;text-align:center}
.top .brand,.landing-redesign .top .brand{grid-column:1 / -1;grid-row:1;justify-self:center;justify-content:center}
.top .menu,.landing-redesign .top .menu{grid-column:1 / -1;grid-row:2;justify-content:center;gap:clamp(.7rem,4vw,1.4rem)}
.top .header-socials,.landing-redesign .top .header-socials{grid-column:1;grid-row:3;justify-self:end;align-self:center}
.top .language-switch,.landing-redesign .top .language-switch{grid-column:2;grid-row:3;justify-self:start;align-self:center;min-height:2rem}
.cover-page .hero{padding:2.25rem var(--pad) 1.75rem}
.cover-page .statement.compass-stage{padding:.25rem var(--pad) 2.25rem}
.contact,.landing-redesign .contact,.cover-page .contact{display:grid;grid-template-columns:1fr;gap:.65rem;padding:1rem var(--pad);text-align:center}
.contact h2,.landing-redesign .contact h2,.cover-page .contact h2{grid-column:1;grid-row:1;justify-self:center;margin:0}
.contact .contact-lines,.landing-redesign .contact .contact-lines{grid-column:1;grid-row:2;justify-self:center;align-items:center;margin:0}
.contact .social-links,.landing-redesign .contact .social-links{grid-column:1;grid-row:3;justify-self:center;margin:0}
.contact .contact-line{justify-content:center}
}

/* Barras móviles de igual altura y navegación más legible. */
@media(max-width:600px){
:root{--mobile-bar-height:10.5rem}
.top,.landing-redesign .top,.cover-page .top{
height:var(--mobile-bar-height);min-height:var(--mobile-bar-height);
grid-template-columns:1fr;grid-template-rows:auto auto auto;
align-content:center;row-gap:.4rem;padding:1.65rem var(--pad) .8rem;
}
.top .brand,.landing-redesign .top .brand{grid-column:1;grid-row:1;font-size:clamp(1.85rem,7.3vw,2.1rem)}
.top .menu,.landing-redesign .top .menu{grid-column:1;grid-row:2;gap:clamp(.65rem,3.4vw,1.2rem)}
.top .menu a,.top .menu a[href$="/staff/"],.top .menu a[href$="/blog/"]{font-size:1rem;min-height:2.2rem}
.top .header-socials,.landing-redesign .top .header-socials{display:none}
.top .language-switch,.landing-redesign .top .language-switch{grid-column:1;grid-row:3;justify-self:center;font-size:.95rem}
.contact,.landing-redesign .contact,.cover-page .contact{
height:var(--mobile-bar-height);min-height:var(--mobile-bar-height);
align-content:center;gap:.5rem;padding:.75rem var(--pad);
}
}

@media(max-width:600px){
.top .menu,.landing-redesign .top .menu{transform:translateY(.25rem)}
.top .menu a{border-bottom:0;text-decoration:none}
}

.testimonial-note{max-width:70ch;margin:0 auto 2rem;font-family:"Libre Caslon Display",Georgia,serif;font-size:clamp(1.15rem,2vw,1.4rem);line-height:1.6}.testimonial-note p{margin:0 0 1.3rem}.testimonial-note a{text-decoration:underline;text-underline-offset:.15em}

.diplomatic-page:has(.testimonial-note){flex-direction:column;align-items:center}.diplomatic-page:has(.testimonial-note) .diplomatic-placeholder{font-size:1.1rem;letter-spacing:0;max-width:none;opacity:.7;margin:0 auto}

/* Portada: prueba de descriptor bajo el nombre. */
.cover-page .home-title-sub{display:block;font-family:"Libre Caslon Display",Georgia,serif;font-size:clamp(1.25rem,2.5vw,2rem);font-weight:400;line-height:1.2;letter-spacing:.02em;text-align:center;margin:1rem auto 0;transform:none}

