/* Academy: an editorial diptych, scoped to the course introduction. */
.academy-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(35px,5vw,76px);align-items:center;padding-top:65px;padding-bottom:65px}
.academy-hero-copy{min-width:0}
.academy-hero h1{font-size:clamp(50px,5.3vw,78px);line-height:1.12;letter-spacing:-.045em;margin:30px 0}
.academy-hero-copy>p{max-width:410px;line-height:2;color:var(--muted);text-wrap:pretty}
.academy-program-link{display:inline-flex;gap:36px;align-items:center;border-bottom:1px solid var(--brown);padding:14px 0 10px;margin-top:12px;font-size:9px;font-weight:600;letter-spacing:.13em;text-transform:uppercase;color:var(--brown)}
.academy-program-link span{font-size:22px;transition:transform .4s}
.academy-program-link:hover span{transform:translate(3px,3px)}
.academy-gallery{min-width:0;outline-offset:8px}
.academy-gallery-topline{display:flex;justify-content:space-between;gap:12px;margin-bottom:18px;color:var(--brown);font-size:7px;letter-spacing:.2em}
.academy-gallery-composition{position:relative;padding:0 19% 28px 0}
.academy-gallery-composition::before{content:"";position:absolute;inset:20px 13% 8px 20px;border:1px solid #cc998b75;pointer-events:none}
.academy-gallery-frame{position:relative;aspect-ratio:2/3;overflow:hidden;background:#211e1c;box-shadow:0 18px 36px #241d1c14;isolation:isolate}
.academy-gallery-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;opacity:0;transition:opacity 1.6s ease;z-index:1}
.academy-gallery-photo.is-current{opacity:1;z-index:2}
.academy-gallery-preview{position:absolute;right:0;bottom:70px;width:36%;padding:7px;background:var(--paper);box-shadow:0 14px 30px #241d1c24;transform:rotate(5deg)}
.academy-gallery-preview img{width:100%;height:auto;aspect-ratio:2/3;object-fit:contain;background:#211e1c}
.academy-gallery-preview>span{display:block;text-align:center;font-size:6px;letter-spacing:.14em;padding:8px 0 3px;color:var(--brown)}
.academy-gallery-signature{position:absolute;right:0;bottom:1px;font:italic 400 clamp(22px,2.4vw,34px)/1.2 var(--serif);color:var(--brown)}
.academy-gallery-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:19px;border-top:1px solid var(--line);padding-top:16px}
.academy-gallery-label{display:block;font-size:7px;letter-spacing:.18em;color:var(--muted)}
.academy-gallery-counter{display:block;margin-top:7px;font-size:11px;letter-spacing:.15em}
.academy-gallery-counter b{font-weight:600;color:var(--brown)}
.academy-gallery-counter span{color:var(--muted)}
.academy-gallery-controls{display:flex;gap:8px}
.academy-gallery-controls[hidden]{display:none}
.academy-gallery-controls button{display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;background:transparent;color:var(--ink);width:42px;height:42px;font-size:18px;transition:background .3s,color .3s,border-color .3s}
.academy-gallery-controls [data-gallery-pause]{font-size:12px}
.academy-gallery-controls button:hover{background:var(--brown);color:var(--paper);border-color:var(--brown)}
.academy-gallery-controls button:focus-visible,.academy-program-link:focus-visible{outline:2px solid var(--brown);outline-offset:4px}
.academy-gallery-status{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%)}
#programas{scroll-margin-top:130px}
@media(min-width:1000px){.academy-gallery{max-width:470px;justify-self:end;width:100%}}
@media(max-width:760px){
  .academy-hero{grid-template-columns:minmax(0,1fr);gap:45px;padding-top:45px;padding-bottom:45px}
  .academy-hero h1{font-size:clamp(44px,9vw,66px);margin:24px 0}
  .academy-hero-copy>p{max-width:520px}
  .academy-gallery{width:100%;max-width:480px;margin-inline:auto}
  .academy-gallery-signature{font-size:28px}
}
@media(prefers-reduced-motion:reduce){.academy-gallery-photo,.academy-program-link span,.academy-gallery-controls button{transition:none}}
