/* October layout corrections. No map, Bitrix or form transport changes. */
.academy-photo{display:block;width:100%;padding:0;border:0;background:transparent;cursor:zoom-in}
.academy-photo img{display:block;position:static;left:auto;top:auto;width:100%;height:100%;max-width:100%;object-fit:cover;object-position:center}
.testimonial-photo{display:block;position:relative;border:0;padding:0;background:transparent;min-width:0;cursor:zoom-in}
.testimonial-photo .testimonial-image{display:block;aspect-ratio:441/625;object-fit:cover;object-position:center}
.photo-dialog{width:min(1120px,calc(100% - 32px));height:fit-content;margin:auto;padding:52px 20px 20px;overflow:auto}
.gallery-stage{display:flex;align-items:center;justify-content:center;height:min(68dvh,760px);touch-action:pan-y pinch-zoom}
.gallery-stage img{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}
.gallery-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:16px}
.gallery-toolbar button{flex:0 0 48px;min-height:48px;border:1px solid var(--blue);border-radius:50%;background:white;color:var(--blue);font-size:26px}
.gallery-caption{flex:1;min-width:0;text-align:center;font-size:18px;line-height:1.3}
.gallery-caption span{display:block;margin-top:6px;font-size:14px;color:#666}
.program.has-pages{background:var(--blue);padding-bottom:28px}
.program.has-pages + .testimonials .testimonial-image{margin-top:0}
.program.has-pages .program-controls{display:flex!important;align-items:center;justify-content:center;margin-top:24px;gap:16px;font-size:16px;line-height:1.3}
.program-controls button:disabled{opacity:.35;cursor:default}
.program-cta{max-width:100%}
.footer-socials{display:flex;align-items:center;gap:14px;margin:14px 0}
.footer-socials a{display:grid;place-items:center;min-width:32px;min-height:32px}
.footer-socials img{width:24px;height:24px;object-fit:contain}
@media(min-width:1280px){
  /* Let the contact column, including its action, determine the footer height. */
  .footer-grid{grid-template-rows:minmax(calc(104 * var(--u)),auto) minmax(calc(122 * var(--u)),auto)}
  .footer-question{width:min(149px,100%);height:auto;aspect-ratio:1;flex-shrink:0}
  .footer-question>img{width:100%;height:100%}
}
@media(max-width:767px){
  .photo-dialog{width:calc(100% - 20px);max-width:none;padding:48px 12px 16px;max-height:calc(100dvh - 20px)}
  .gallery-stage{height:58dvh}
  .gallery-toolbar{gap:8px}
  .gallery-caption{font-size:15px}
  .gallery-toolbar button{flex-basis:44px;min-height:44px}
  .program-cta{grid-column:auto!important}
  .program.has-pages .program-controls{gap:12px;font-size:14px}
  .program.has-pages .program-controls p{text-align:center}
  .testimonial-photo{width:100%}
}

/* Pagination fallback links share the approved arrow appearance. */
.program-controls a{display:inline-grid;place-items:center;width:46px;height:46px;text-decoration:none;color:#fff;background:var(--blue);border:2px solid var(--cyan);border-radius:50%;font-size:24px}
.program-controls [aria-disabled="true"]{opacity:.35;cursor:default}
.program-empty{padding:24px 0}
