/* Client layout corrections, 26 October 2026. Existing brand and content retained. */
.gallery-main-slider, .team-main-slider, .blog-main-slider, .news-main-slider { min-width: 0; }
.simple-swiper-scroll { max-width: 100%; touch-action: pan-x pan-y pinch-zoom; scrollbar-width: none; }
.simple-swiper-scroll::-webkit-scrollbar { display: none; }
.simple-swiper-scroll > .swiper-wrapper { display: flex; flex-wrap: nowrap; align-items: stretch; height: auto; }
.simple-swiper-scroll .swiper-slide { flex: 0 0 auto; min-width: 0; box-sizing: border-box; }
.slider-controls { display: flex; align-items: center; justify-content: flex-end; gap: 14px; margin-top: 18px; min-height: 44px; }
.slider-controls[hidden] { display: none; }
.slider-controls .swiper-button-prev, .slider-controls .swiper-button-next, .slider-controls .swiper-pagination { position: static !important; inset: auto !important; margin: 0 !important; transform: none; }
.slider-controls .swiper-button-prev, .slider-controls .swiper-button-next { display: block; width: 44px; height: 44px; border: 0; flex: 0 0 44px; }
.slider-controls .swiper-pagination { width: auto; min-width: 48px; text-align: center; order: 0; }
.slider-controls .swiper-button-prev { order: -1; }
.slider-controls .swiper-button-next { order: 1; }
.slider-controls [aria-disabled="true"] { opacity: .35; cursor: default; }
.gallery-main-slider .simple-swiper-scroll { height: auto !important; }
.gallery-main-slider .swiper-slide { height: 325px; }
.gallery-main-slider .swiper-slide img { display: block; width: 100%; height: 100%; object-fit: contain; }
.team-main-slider .team-slider, .team-main-slider .swiper-wrapper { height: auto !important; min-height: 0 !important; }
.team-main-slider .swiper-slide { height: auto !important; padding-bottom: 20px; white-space: normal; }
.team-main-slider .swiper-slide > img { display: block; width: 100% !important; height: auto !important; aspect-ratio: 5 / 6; object-fit: cover; }
.team-main-slider .swiper-slide > p { white-space: pre-line; overflow-wrap: anywhere; line-height: 1.45; margin-top: 12px; margin-bottom: 8px; }
.administrators-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 48px 56px; align-items: start; }
.administrator-card { width: 100% !important; max-width: 300px; height: auto !important; min-width: 0; justify-self: center; }
.administrator-card > img { width: 100% !important; height: auto !important; aspect-ratio: 5 / 6; object-fit: cover; display: block; }
.administrator-card > p { white-space: pre-line; overflow-wrap: anywhere; line-height: 1.5; }
.blog-main-slider .swiper.blog { height: auto !important; }
.blog-main-slider .swiper-slide > a { height: 100%; }
.blog-main-slider .swiper-slide > a > div:first-child { position: relative; height: 220px; padding: 0 !important; flex: none; background: #faf7f2; }
.blog-main-slider .swiper-slide img { position: absolute !important; inset: 0; width: 100%; height: 100%; object-fit: contain !important; }
.blog-main-slider .swiper-slide > a > div:last-child { padding: 18px 20px 22px; justify-content: flex-start; }
.blog-main-slider .blog-card-title { white-space: normal; line-height: 1.45; }
.news-main-slider #newsSwiper { height: auto !important; }
.news-main-slider .swiper-slide { height: auto; }
.news-main-slider .swiper-slide h3 { white-space: normal; line-height: 1.4; }
.form-consent { display: flex !important; align-items: flex-start !important; gap: 12px !important; white-space: normal !important; }
.form-consent input[type="checkbox"] { appearance: auto !important; accent-color: #df3930; position: static !important; flex: 0 0 22px; width: 22px !important; height: 22px !important; margin: 1px 0 0 !important; transform: none !important; }
.form-consent > p { flex: 1; min-width: 0; width: auto !important; margin: 0 !important; font-size: 12px; line-height: 1.5; white-space: normal !important; }
.form-consent > span:empty { display: none; }
.form-consent a { margin-left: 0 !important; }
form:has(.form-consent) button[type="submit"] { margin-left: 0 !important; }
.school-intro-copy { flex: 1 1 0; min-width: 0; position: relative; z-index: 1; }
.school-intro-copy h1 { overflow-wrap: break-word; }
.school-intro > img { flex: 0 1 370px; max-width: 100%; }
.news-primary-image { margin: 24px 0 32px; }
.news-primary-image img { display: block; width: auto; max-width: 100%; height: auto; max-height: 640px; object-fit: contain; border-radius: 16px; }
@media (max-width: 1199px) and (min-width: 768px) {
  .administrators-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 40px; }
}
@media (max-width: 1023px) {
  .school-intro { align-items: stretch; }
  .school-intro-copy { width: 100%; flex-basis: auto; }
  .school-intro-copy h1 { font-size: clamp(24px, 6.7vw, 34px); line-height: 1.25; overflow-wrap: normal; }
  .school-intro > img { flex: none; width: 100%; height: auto; max-height: 420px; aspect-ratio: 5 / 4; }
  .team-main-slider .all-teachers-link { position: static; display: inline-block; margin: 0 0 24px; }
  .team-main-slider > h2 { margin-bottom: 20px; }
  .team-main-slider .team-slider { margin-top: 0; margin-bottom: 20px; }
  .gallery-main-slider .swiper-slide { height: 280px; }
  .blog-main-slider > a, .news-main-slider > a { position: static; display: inline-block; margin-bottom: 20px; }
  .blog-main-slider > h2, .news-main-slider > h2 { margin-bottom: 16px; }
  .blog-main-slider .swiper.blog, .news-main-slider #newsSwiper { margin-top: 0; }
}
@media (max-width: 767px) {
  .administrators-grid { grid-template-columns: minmax(0, 1fr); gap: 36px; }
  .administrator-card { max-width: 320px; padding-bottom: 20px; }
  .administrator-card > p { padding-left: 20px; padding-right: 20px; }
}

/* News previews are independent of the text-only excerpt. */
.news-main-slider .news-card-image { display: block; margin-bottom: 18px; overflow: hidden; border-radius: 12px; background: #faf7f2; }
.news-main-slider .news-card-image img { display: block; width: 100%; height: 220px; object-fit: contain; }
