*{box-sizing:border-box}html{scroll-padding-top:6rem}body{margin:0;background:#fff9ee;color:#182a33;font:17px/1.55 system-ui,sans-serif}header{position:sticky;top:0;z-index:2;background:#142b32;color:white}nav{display:flex;align-items:center;justify-content:space-between;gap:1rem;max-width:1240px;margin:auto;padding:12px 5%}nav img,footer img{width:138px;max-height:55px;object-fit:contain}nav a,footer a{color:inherit;text-decoration:none;font-weight:700}a:focus-visible{outline:3px solid #e37825;outline-offset:4px}.hero,.programs{max-width:1240px;margin:auto;padding:clamp(28px,6vw,85px) 5%}.hero{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:clamp(24px,5vw,68px)}h1,h2,h3{line-height:1.05;margin:.25em 0;font-family:Georgia,serif}h1{font-size:clamp(3rem,7vw,6.1rem);letter-spacing:-.055em}h1 em{color:#b14032;display:block}h2{font-size:clamp(2.2rem,5vw,4rem);letter-spacing:-.04em}h3{font-size:1.8rem}small{font-weight:800;letter-spacing:.085em;color:#23574e}.hero-art{aspect-ratio:1;border-radius:26px;display:block;width:100%;height:auto;object-fit:cover;background:#f9be65}.button{display:inline-flex;background:#173c37;color:white;text-decoration:none;border-radius:999px;padding:.65em 1.05em;font-weight:700}.button:hover{background:#a53a2d}.programs{border-top:1px solid #d9c9af}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:32px}article{display:flex;flex-direction:column;overflow:hidden;background:white;border:1px solid #ded4c2;border-radius:22px}article>div{padding:20px;flex:1;display:flex;flex-direction:column;align-items:flex-start}article>div>p{flex:1}article img{display:block;width:100%;aspect-ratio:11/6;object-fit:cover}.pending{font-size:.87rem;color:#4f5251;font-weight:700}footer{background:#141a1a;color:white;text-align:center;padding:36px 5%;font-size:.9rem}footer hr{max-width:430px;border:0;border-top:1px solid #626b68}footer nav{justify-content:center}footer svg{width:22px;height:22px;fill:currentColor}@media(max-width:850px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.hero,.grid{grid-template-columns:1fr}.hero-art{min-height:0}nav{font-size:.88rem}}

footer .footer-logo{width:276px;max-width:100%;max-height:110px}
footer .footer-title{font-size:1.8rem;letter-spacing:0;margin:8px 0 18px}
footer .footer-details p{margin:2px 0;line-height:1.4}
footer .socials{flex-wrap:wrap;gap:12px}
footer .social{display:grid;place-items:center;min-width:44px;min-height:44px}
footer svg{width:33px;height:33px}

header nav img{width:166px;max-height:66px;display:block}
.nav-links{display:flex;align-items:center;gap:clamp(8px,2vw,24px)}
.nav-contact{background:#176044;border-radius:999px;padding:.55em .85em;white-space:nowrap}
.hero h1 span{display:block;font-size:.42em;letter-spacing:-.025em;margin-bottom:.16em}
.hero-art{aspect-ratio:auto;object-fit:contain;background:transparent}
.whatsapp{position:fixed;right:18px;bottom:max(18px,env(safe-area-inset-bottom));z-index:3;display:grid;place-items:center;width:57px;height:57px;border-radius:50%;background:#087b4a;color:white;box-shadow:0 4px 18px #182a3344}
.whatsapp svg{width:32px;height:32px}
@media(max-width:600px){header nav img{width:114px;max-height:52px}header nav{gap:8px}.nav-links{text-align:center;font-size:.76rem}}

footer .footer-title{margin-bottom:0}
footer hr{margin:24px auto}
footer .social-title{margin:0 0 10px}
footer .socials{padding-block:0}
footer .footer-details p:first-child{margin-top:0}

footer{padding-bottom:72px}

.hero.hero-feature {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  align-items: stretch;
  gap: 0;
  max-width: none;
  padding: 0;
  color: #fff;
  background: #081e38;
}
.hero-feature .hero-photo {position: relative; min-height: 540px}
.hero-photo img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 35%;
}
.hero-photo::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, transparent 76%, #081e38);
}
.hero-feature .hero-intro {
  align-self: center;
  max-width: 730px;
  padding: clamp(34px, 4.5vw, 72px) clamp(24px, 5vw, 76px) clamp(34px, 4.5vw, 72px) clamp(22px, 3vw, 46px);
}
.hero-feature .hero-welcome {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 0 0 22px;
  color: #9ee6ff;
  font-size: .76rem;
  font-weight: 750;
  letter-spacing: .16em;
  text-transform: uppercase;
}
.hero-welcome::before {content: ""; width: 28px; height: 1px; background: currentColor}
.hero-feature h1, .programs h2 {font-family: system-ui, sans-serif}
.hero-feature h1 {
  margin: 0;
  font-size: clamp(2rem, 4.15vw, 4.5rem);
  font-weight: 750;
  line-height: 1.06;
  letter-spacing: -.05em;
}
.hero-feature h1 span {
  display: block;
  margin-bottom: 12px;
  color: #e5f4ff;
  font-size: .46em;
  font-weight: 650;
  letter-spacing: -.02em;
}
.hero-feature h1 em {
  display: inline;
  color: #77d9f9;
  font-style: normal;
}
.hero-description {max-width: 44ch; margin: 22px 0 26px; color: #dbe8f4}
.hero-feature .button {background: #58d1fa; color: #081e38; border-radius: 6px}
.hero-feature .button:hover {background: #a9ecff}
@media (max-width: 760px) {
  .hero.hero-feature {grid-template-columns: 1fr}
  .hero-feature .hero-photo {min-height: 0; aspect-ratio: 16 / 10}
  .hero-photo::after {background: linear-gradient(180deg, transparent 76%, #081e38)}
  .hero-feature .hero-intro {padding: 22px 6% 38px}
}
.programs#programas {border-top: 0; padding-top: clamp(24px, 3vw, 38px)}
.programs h2 {color: #061d40; font-size: clamp(1.4rem, 3vw, 2.25rem); margin: 0 0 16px}
.programs .grid {margin-top: 0}
.grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.grid article{padding:0;overflow:hidden}
.original-banner{display:block;text-decoration:none}
.original-banner img{display:block;width:100%;height:auto;aspect-ratio:auto;object-fit:contain}
.grid article a:focus-visible{outline:3px solid #00b3ec;outline-offset:-5px}
@media (max-width: 760px) { .grid { grid-template-columns: 1fr; } }
