/* OM Global — coordinated hover and focus details across all eight pages. */
body { cursor: auto; }
a,button,summary { cursor: pointer; }
input,textarea { cursor: text; }
select { cursor: pointer; }
.cursor { display: none; left: 0; top: 0; opacity: 0; transition: opacity .2s,width .25s,height .25s,background .25s; }
.hover-motion .cursor { display: block; }
.cursor.is-visible { opacity: .8; }
.cursor.over-photo:not(.hover) { width: 64px; height: 64px; background: rgba(227,180,90,.07); }
.hover-button { position: relative; isolation: isolate; overflow: hidden; }
.hover-ripple { position: absolute; display: block; pointer-events: none; border-radius: 50%; background: currentColor; z-index: 0; }
.hover-glint { position: absolute; inset: 0; border-radius: inherit; pointer-events: none; opacity: 0; background: radial-gradient(360px circle at var(--hover-x,50%) var(--hover-y,50%),rgba(227,180,90,.14),transparent 65%); transition: opacity .35s; }
.hover-card { position: relative; }
.hover-card>.hover-glint { inset: 0; margin: 0; }
.hover-photo { overflow: hidden; }
.hover-photo img { transition: scale .8s var(--ease),translate .7s var(--ease),transform .8s var(--ease); }
.hero__slider-nav .hero-slider-pause { width: auto; height: auto; min-height: 28px; padding: 4px 10px; color: white; background: #071a3d; font-size: 10px; border: 1px solid rgba(255,255,255,.5); border-radius: 4px; margin-top: -12px; }
.hero__slider-nav [data-slide-to] { position: relative; }
.hero__slider-nav [data-slide-to]::after { content: ''; position: absolute; inset: -12px 0; }
.form-grid label>span,.modal__fields label>span { display: inline-block; transition: color .25s,translate .25s; }
.form-grid label:focus-within>span,.modal__fields label:focus-within>span { color: #b77a1c; translate: 3px 0; }
:is(a,button,summary,input,select,textarea):focus-visible { outline: 3px solid #d79f3f; outline-offset: 4px; }
.hover-card:focus-within { border-color: var(--gold); }
.side-menu.open nav a { animation: menuLinkEnter .5s var(--ease) both; }
.side-menu.open nav a:nth-child(2) { animation-delay: 35ms; }
.side-menu.open nav a:nth-child(3) { animation-delay: 70ms; }
.side-menu.open nav a:nth-child(4) { animation-delay: 105ms; }
.side-menu.open nav a:nth-child(5) { animation-delay: 140ms; }
.side-menu.open nav a:nth-child(6) { animation-delay: 175ms; }
.side-menu.open nav a:nth-child(7) { animation-delay: 210ms; }
.side-menu.open nav a:nth-child(8) { animation-delay: 245ms; }
@keyframes menuLinkEnter { from { opacity: 0; transform: translateX(24px); } to { opacity: 1; transform: translateX(0); } }
@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) {
  .hover-motion .hover-button { translate: var(--magnet-x,0px) var(--magnet-y,0px); transition: translate .25s var(--ease),transform .35s var(--ease),box-shadow .35s,background .3s,color .3s; }
  .hover-button:hover { box-shadow: 0 10px 24px rgba(7,26,61,.16); }
  .hover-button>span:not(.hover-ripple) { transition: translate .3s,rotate .3s; }
  .button:hover>span:not(.hover-ripple),.header-enquiry:hover>span:not(.hover-ripple),.chat-choice:hover>span:not(.hover-ripple) { translate: 4px -2px; }
  .hover-motion .hover-card { transition: transform .4s var(--ease),opacity .75s var(--ease),box-shadow .4s,border-color .35s,background .35s; }
  .hover-motion .hover-card:hover { transform: perspective(1200px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg)) translateY(-5px); box-shadow: 0 20px 45px rgba(7,26,61,.13); }
  .hover-card:hover>.hover-glint { opacity: 1; }
  .hover-photo:hover img { scale: 1.055; translate: var(--image-x,0px) var(--image-y,0px); }
  .hover-photo figcaption { transition: translate .45s var(--ease),box-shadow .45s; }
  .hover-photo:hover figcaption { translate: 0 -5px; box-shadow: 0 8px 20px rgba(7,26,61,.1); }
  .site-header nav a,.side-menu nav a,.text-link,.footer-grid a,.footer-grid button,.footer-base a { transition: color .25s,translate .3s var(--ease),background-size .35s; }
  .site-header nav a:hover { translate: 0 -2px; color: #b27a1d; }
  .side-menu nav a:hover { translate: 6px 0; color: #b27a1d; }
  .side-menu nav a span { transition: translate .3s; }
  .side-menu nav a:hover span { translate: -5px -3px; }
  .text-link:hover { translate: 4px 0; }
  .footer-grid a:hover,.footer-grid button:hover { translate: 5px 0; color: var(--gold); }
  .footer-base a:hover { color: var(--gold); }
  .brand img { transition: scale .45s var(--ease); }
  .brand:hover img { scale: 1.035; }
  .menu-toggle span { transition: width .3s,translate .3s,transform .3s; }
  .menu-toggle:hover span:first-child { width: 30px; translate: 2px 0; }
  .menu-toggle:hover span:last-child { width: 18px; translate: -2px 0; }
  .chat-launcher { transition: scale .4s var(--ease),box-shadow .4s; }
  .chat-launcher:hover { scale: 1.09; box-shadow: 0 12px 38px rgba(22,167,101,.4); }
  .chat-launcher svg { transition: rotate .35s var(--ease); }
  .chat-launcher:hover svg { rotate: -10deg; }
  .modal__close,.chat-close,.side-menu__head button { transition: rotate .35s; }
  .modal__close:hover,.chat-close:hover,.side-menu__head button:hover { rotate: 90deg; }
  .confidence-grid svg,.check-grid svg,.career-icon-row svg { transition: translate .4s,rotate .4s; }
  .confidence-grid article:hover svg,.check-grid li:hover svg,.career-icon-row span:hover svg { translate: 0 -4px; rotate: -7deg; }
  .admission-timeline li,.feature-list li,.accordion summary { transition: background .3s,color .3s; }
  .admission-timeline li:hover,.feature-list li:hover { background: rgba(227,180,90,.07); }
  .accordion summary:hover { color: #b27a1d; }
  .js-whatsapp-form :is(input,textarea,select):hover { border-color: #c49c51; box-shadow: 0 0 0 3px rgba(227,180,90,.1); }
}
@media (prefers-reduced-motion:reduce) {
  .cursor,.hover-glint,.hover-ripple { display: none!important; }
  .hover-photo img,.hover-button,.hover-card { translate: none!important; scale: none!important; }
  .js :is(.motion-card,.eligibility-grid article,.process-list li,.admission-timeline li,.university-card,.country-feature) { opacity: 1; transform: none; }
}
