.gallery-controls{display:flex;align-items:center;justify-content:center;gap:20px;margin:12px 0}.gallery-controls button{background:#e6bf70;color:#15202b;border:0;border-radius:50%;width:44px;height:44px;font-size:24px}.gallery-controls span{color:inherit;font-variant-numeric:tabular-nums}.photo-thumbs{overflow-x:auto;flex-wrap:nowrap}.photo-thumbs button{flex-shrink:0}.detail-cover{touch-action:pan-y}.consultation-phone{font-weight:700}.site-notice .site-container{flex-wrap:wrap;gap:8px 20px}@media(max-width:600px){.site-notice .site-container{justify-content:center}.consultation-phone{font-size:12px}}
.site-notice a.consultation-phone{display:inline-flex;align-items:center;min-height:28px;color:#f7dfa4}.gallery-controls button:focus-visible{outline:3px solid #86d1f4;outline-offset:3px}
.school-card-content,.detail-columns>*{min-width:0}.school-card h3,.institution-name,.modal-title,.page-heading h1,.contact-list dd{overflow-wrap:anywhere}
.detail-cover.is-logo{object-fit:contain;padding:40px;background:#182330}.photo-thumbs[hidden]{display:none}
.compare-gallery{margin:18px auto 0;max-width:280px;min-width:190px}.compare-gallery img.compare-photo{width:100%;height:150px;object-fit:cover;border-radius:12px;display:block}.compare-gallery .photo-thumbs img{width:55px;height:42px;border-radius:0}.compare-gallery .gallery-controls{gap:14px;margin:10px 0}
.compare-gallery .compare-photo{touch-action:pan-y}
.school-brand-logo{width:56px;height:56px;object-fit:contain;padding:5px;background:#fff;border-radius:12px;float:right;margin:0 0 12px 12px}.budget-badge{display:inline-block;background:#c7efdc;color:#113d2c;border:1px solid #83c6a7;border-radius:999px;padding:5px 11px;font-size:13px;font-weight:750;margin:0 8px 8px 0;line-height:1.4}.school-kind{display:block}
img[src*="official-uuait-ru"]{background:#1c2b3d!important;padding:8px;object-fit:contain}

/* A logo is a small brand mark, never a stretched campus photograph. */
.school-card .school-photo{position:relative;min-width:0;width:100%;max-width:100%;aspect-ratio:16/10;overflow:hidden;background:#1c2b3a}
.school-card .school-photo>img{display:block;width:100%;height:100%;object-fit:cover;filter:none!important;opacity:1!important;transform:none!important}
.school-card .school-photo--logo{display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at 20% 0%,#39556c,transparent 70%),linear-gradient(135deg,#182b3a,#101b26)}
.school-card .school-photo--logo>img{width:auto!important;height:auto!important;max-width:100px;max-height:100px;object-fit:contain;padding:10px;border-radius:18px;background:#fff;box-shadow:0 14px 36px #0004}
.school-photo--logo::after{content:none;display:none}
.school-brand-logo{max-width:56px;image-rendering:auto}.catalog-order-note{color:#bccbda;font-size:14px;line-height:1.6;margin-bottom:20px}
.school-card .school-photo::before{display:none!important}.school-card-content{display:flex;flex-direction:column;align-items:flex-start}.school-card-content .school-actions{margin-top:auto;padding-top:12px}.school-excerpt{line-height:1.65;overflow-wrap:anywhere}
@media(max-width:600px){.school-card .school-photo{aspect-ratio:16/9}.school-card h2,.school-card h3{font-size:22px}.school-photo--logo::after{bottom:12px}}
.direction-picker-panel{position:absolute;z-index:1100;inset:calc(100% + 6px) 0 auto;background:#10202d;border:1px solid #8da4b6;border-radius:14px;padding:12px;box-shadow:0 20px 50px #0007;max-width:100%;color:#f2f6fa}.direction-picker-panel[hidden]{display:none}.direction-picker-panel .direction-picker-list{position:static;max-height:240px;border:0;box-shadow:none;margin-top:8px}.direction-picker-panel small{display:block;padding:6px;color:#c9d6e0}.direction-picker-panel .form-control{min-width:0;width:100%}.direction-picker-option{overflow-wrap:anywhere;white-space:normal}

/* Keep replaced-image intrinsic dimensions out of the desktop grid calculation. */
@media(min-width:768px){
 .school-card{align-items:start;min-width:0}
 .school-card>.school-photo{min-width:0;min-height:0;height:auto;align-self:start;aspect-ratio:4/5}
 .school-card>.school-photo>img:not(.school-brand-logo){position:absolute;inset:0;width:100%;height:100%;max-width:100%;object-fit:cover}

 .home-schools .school-card>.school-photo{aspect-ratio:16/10;min-height:0;height:auto}
}
.school-card-content{position:relative;width:100%;max-width:100%;box-sizing:border-box}
.school-card-content>h2,.school-card-content>h3,.school-card-content>p{max-width:100%}
.school-card-content>.school-brand-logo{float:none;align-self:flex-end;flex-shrink:0;margin:0 0 8px 0}
.school-actions{display:flex;flex-wrap:wrap;gap:8px;max-width:100%}
.school-actions .btn{max-width:100%;white-space:normal}
.school-brand-logo{flex:none}
.school-card .school-photo--logo>img{box-sizing:border-box}
.program-guide-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:20px 0}
.program-guide-card{padding:20px;border:1px solid #405266;border-radius:16px;background:#162332;min-width:0}
.program-guide-card h3{color:#f3d28d;margin:0 0 10px;font-size:20px;line-height:1.35}
.program-guide-card p{margin:0;color:#dce6ef;line-height:1.75;overflow-wrap:anywhere}
.program-guide-note{padding:16px 20px;border-left:3px solid #e6bf70;background:#1b2b3a;color:#dce6ef;line-height:1.7}
@media(max-width:767px){.program-guide-grid{grid-template-columns:1fr}.school-card-content>.school-brand-logo{align-self:flex-start}}

img[src*="official-5831.svg"]{background:#173347!important}
/* Decorative ticker stays inside the page; text itself is allowed to wrap. */
.page-home #main{overflow-x:clip}
.page-home .hero-copy{min-width:0}
.page-home .hero-emphasis{white-space:normal;overflow-wrap:normal}

/* The same centering applies before lazy loading and after a failed photograph. */
 .school-card>.school-photo.school-photo--logo>img:not(.school-brand-logo){
  position:absolute;inset:0;margin:auto;width:min(100px,70%)!important;
  height:100px!important;max-width:70%;max-height:70%;object-fit:contain;
  transform:none!important;
 }

/* Keep the catalogue controls legible in the dark theme. */
.catalog-toolbar{flex-wrap:wrap}
.catalog-toolbar #sortBy{width:240px;max-width:100%;flex-shrink:0;background-color:#101b26;color:#f2f6fa;border:1px solid #405266}
.view-switch{background:#1c2b3a;border:1px solid #405266}
.view-switch .btn{color:#e7eef5}
.view-switch .btn[aria-pressed="true"]{background:#e6bf70;color:#15202b;box-shadow:none}
