/* Cap viewport-based sizing while keeping the page full width. */
:root {--layout-vw: min(1vw, 16px);}
html, body {width: 100%;max-width: none;margin: 0;padding: 0;}

/* Standalone details-page styles, including only its required shared components. */
:root {
  --orange: #F2994A;
  --pink: #E0559B;
  --teal: #1FA6A6;
  --dotorange: #ff6600;
  --dark: #1e2a36;
  --white: #fff;
  --black: #000;
  --navy: #1e2a36;
  --slate: #3d4854;
  --blue: #08a7d6;
  --red: #ef3b2d;
  --cloud: #c6f3ff;
}

* {font-family: 'Outfit', sans-serif;box-sizing: border-box;margin: 0;padding: 0;}
* {font-variant-ligatures: none;}
.pair-gap {letter-spacing: 1px;}
.iat-initial {
  font-family: "Times New Roman", Times, serif;
  /* Match the capital height of the surrounding Outfit text at every size. */
  font-size: 1.06em;
  font-weight: inherit;
  line-height: 0;
  vertical-align: baseline;
}

@font-face {font-family: Outfit;src: url('../fonts/Outfit-Regular.ttf') format('truetype');font-weight: 400;font-display: swap;}
@font-face {font-family: Outfit;src: url('../fonts/Outfit-SemiBold.ttf') format('truetype');font-style: normal;font-weight: 600;font-display: swap;}
@font-face {font-family: Outfit;src: url('../fonts/Outfit-Bold.ttf') format('truetype');font-weight: 700;font-display: swap;}
@font-face {font-family: Outfit;src: url('../fonts/Outfit-ExtraBold.ttf') format('truetype');font-weight: 800;font-display: swap;}

html {scroll-behavior: smooth;}
body {color: #202020;background: #fff;font-family: Outfit,Arial,sans-serif;}
/* Keep the hero background at its original size; scale its content and other sections. */
body > header, main > section:not(.details-hero), .details-hero-inner, body > .footer-wrap {zoom: .9;}
img {display: block;max-width: 100%;}
a {color: inherit;text-decoration: none;}

/*==Header==*/
header {background: var(--navy);display: flex;align-items: center;justify-content: space-between;flex-wrap: wrap;gap: 20px;padding: 18px 40px;}
.logo {display: flex;align-items: center;gap: 6px;}
.logo img {max-width: 200px;}
.btn-group {display: flex;gap: 14px;flex-wrap: wrap;}
.btn {position: relative;display: flex;align-items: stretch;overflow: hidden;text-decoration: none;transition: transform .25s ease, box-shadow .25s ease;}
.btn::before {content: "";position: absolute;inset: 0;background: linear-gradient(110deg, transparent 25%, rgba(255, 255, 255, .28) 50%, transparent 75%);transform: translateX(-120%);pointer-events: none;animation: buttonShine 3.2s ease-in-out infinite;}
.btn:hover {transform: translateY(-4px);box-shadow: 0 8px 18px rgba(0, 0, 0, 0.35);}
.btn:hover::before {animation: buttonShine .65s ease;}
.btn:active {transform: translateY(-1px) scale(.98);box-shadow: 0 4px 10px rgba(0, 0, 0, 0.25);}
.btn:focus-visible {outline: 3px solid #fff;outline-offset: 3px;}
.btn-text {background: var(--slate);color: #fff;font-size: 17px;padding: 5px 15px;display: flex;align-items: center;}
.btn:hover .btn-text {background: var(--white);color: var(--black);}
.btn-arrow {width: 44px;display: flex;align-items: center;justify-content: center;color: #fff;}
.btn-arrow svg {width: 18px;height: 18px;transition: transform .3s ease;}
.btn:hover .btn-arrow svg {transform: translateX(4px);}
.register .btn-arrow {background: var(--red);}
.login .btn-arrow {background: var(--blue);}
.login::before {animation-delay: 1.6s;}
.btn.login .btn-text {display: block;align-self: center;}
.btn.login .iat-initial {display: inline;font-family: "Times New Roman", Times, serif;font-size: 1.06em;line-height: inherit;vertical-align: baseline;letter-spacing: 0;margin-right: .04em;}

@keyframes buttonShine {
  0%,  20% {transform: translateX(-120%);}
  60%,  100% {transform: translateX(120%);}
}

  /*==Hero-Section==*/
.hero {position: relative;width: 100%;min-height: max(675px, calc(49.4 * var(--layout-vw)));overflow: hidden;background-color: var(--navy);background-image: url(../images/hero-bg.png);background-repeat: no-repeat;background-position: center top;background-size: 100% auto;border-top: 3px solid #27333b;}
.hero-content {width: 52%;position: relative;z-index: 5;padding-left: 20px;animation: contentReveal 1s ease forwards;}
.heading-text {flex: 1 1 auto;min-width: 0;}
.heading-text p {font-size: clamp(28px, calc(2.8 * var(--layout-vw)), 52px);line-height: 1.2;color: transparent;background: linear-gradient(90deg, #222 0%, #222 38%, var(--blue) 50%, #222 62%, #222 100%);background-size: 250% auto;background-clip: text;-webkit-background-clip: text;margin-bottom: 10px;animation: textSlide 1s ease 0.3s both, textColorFill 4s ease-in-out 1.2s infinite;font-family: 'Outfit', Arial, sans-serif;font-weight: 400;}
.heading-text h1 {--h1-line-height: 80px;font-size: clamp(32px, calc(4.5 * var(--layout-vw)), 72px);width: min(100%, 720px);max-width: 100%;line-height: var(--h1-line-height);color: transparent;background: none;-webkit-text-fill-color: transparent;letter-spacing: -2px;white-space: nowrap;font-family: 'Outfit', Arial, sans-serif;font-weight: 600;position: relative;z-index: 4;}
.heading-text h1::before, .heading-text h1::after {color: var(--blue);-webkit-text-fill-color: var(--blue);display: block;position: absolute;left: 0;width: 0;overflow: hidden;white-space: nowrap;}
.heading-text h1::before {content: "The World’s Largest";top: 0;animation: titleFirstCycle 8s linear 0.2s infinite;}
.heading-text h1::after {content: "Intelligence Test";top: var(--h1-line-height);animation: titleSecondCycle 8s linear 0.2s infinite;}

@keyframes textColorFill {
  0%,  100% {background-position: 100% center;}
  50% {background-position: 0 center;}
}

@keyframes titleFirstCycle {
  0%,  3% {width: 0;}
  23%,  83% {width: 100%;}
  100% {width: 0;}
}

@keyframes titleSecondCycle {
  0%,  26% {width: 0;}
  47%,  63% {width: 100%;}
  83%,  100% { width: 0;}
}

@keyframes logoFloat {
  0%,  100% {filter: drop-shadow(0 7px 10px rgba(0, 80, 110, 0.12));transform: translateY(0) rotate(0deg);}
  50% {filter: drop-shadow(0 14px 18px rgba(0, 168, 215, 0.26)); transform: translateY(-8px) rotate(-1deg);}
}

.cloud-edge {position: absolute;top: -1px;left: 0;width: 100%;line-height: 0;}
.cloud-edge svg {width: 100%;height: 70px;display: block;}
.blob {position: absolute;width: 180px;height: 180px;border-radius: 50%;filter: blur(50px);opacity: .55;z-index: 0;}
.blob.teal {background: #2FD9D9;bottom: -60px;left: -60px;}
.blob.pink {background: #F58BA0;bottom: -60px;right: -60px;}
.plane-trail {position: absolute;top: 30px;width: 220px;height: 130px;z-index: 1;animation: float 4s ease-in-out infinite;}
.plane-trail.right {right: 6%;}
.plane-trail.left {left: 6%;transform: scaleX(-1);animation-delay: .6s;}

@keyframes float {
  0%,  100% {transform: translateY(0);}
  50% {transform: translateY(-10px);}
}

.plane-trail.left {animation-name: floatLeft;}

@keyframes floatLeft {
  0%,  100% {transform: scaleX(-1) translateY(0);}
  50% {transform: scaleX(-1) translateY(-10px);}
}

.trail-path {animation: dashFlow 1.4s linear infinite;}

.footer-card {position: relative;z-index: 2; max-width: 640px;margin: 0 auto;background: var(--navy);border: 2px solid #fff;border-radius: 26px;padding: 34px 40px;display: flex;flex-wrap: wrap;gap: 36px;justify-content: space-between;}
.col h4 {display: inline-block;background: var(--red);color: #fff;font-size: 13px;font-weight: 600;padding: 6px 16px;border-radius: 5px;margin-bottom: 14px;}
.col a {display: block;color: rgba(255, 255, 255, 0.8);text-decoration: none;font-size: 13px;margin-bottom: 8px;transition: color .25s ease;}
.col a:hover {color: #fff;}
.socials {display: flex;gap: 8px;}
.socials a {width: 30px;height: 30px;border-radius: 8px;display: flex;align-items: center;justify-content: center;color: #fff;font-size: 14px;transition: transform .25s ease, box-shadow .25s ease;}
.socials a:hover {transform: translateY(-4px);box-shadow: 0 6px 14px rgba(0, 0, 0, 0.35);}
.footer-wrap {position: relative;z-index: 2;min-height: min(729px, calc(37.969 * var(--layout-vw)));padding: min(325px, calc(16.927 * var(--layout-vw))) 24px min(93px, calc(4.844 * var(--layout-vw)));margin-top: max(-220px, calc(-11.5 * var(--layout-vw)));overflow: hidden;background: transparent url('../images/footer-bg.png') center top / 100% 100% no-repeat;}
.footer-wrap .cloud-edge,  .footer-wrap>.blob,  .footer-wrap>.plane-trail {display: none;}
.footer-wrap .footer-aeroplane {position: absolute;z-index: 3;top: 31.8%;right: 2.3%;width: min(449px, calc(23.385 * var(--layout-vw)));height: auto;pointer-events: none;}
.footer-wrap .footer-card {display: grid;grid-template-columns: 28.3fr 38fr 33.7fr;width: min(1345px, calc(70.052 * var(--layout-vw)));max-width: 1345px;min-height: min(312px, calc(16.25 * var(--layout-vw)));margin: 0 auto;padding: min(44px, calc(2.292 * var(--layout-vw))) min(95px, calc(4.948 * var(--layout-vw)));gap: min(64px, calc(3.333 * var(--layout-vw)));align-items: flex-start;border: min(15px, calc(.781 * var(--layout-vw))) solid #fff;border-radius: min(60px, calc(3.125 * var(--layout-vw)));background: #24384b;}
.footer-wrap .col {flex: 1 1 0;}
.footer-wrap .col:nth-child(2) {flex-grow: 1.28;}
.footer-wrap .col h4 {position: relative;z-index: 0;width: fit-content;min-width: 185px;margin-bottom: min(12px, calc(.625 * var(--layout-vw)));padding: min(5px, calc(.26 * var(--layout-vw))) min(12px, calc(.625 * var(--layout-vw)));border-radius: min(11px, calc(.573 * var(--layout-vw)));background: linear-gradient(90deg, transparent 0%,rgba(239, 59, 49, .08) 8%,rgba(239, 59, 49, .48) 20%, #ef3b31 38%, #ef3b31 100%);font-size: clamp(17px, calc(1.615 * var(--layout-vw)), 31px);font-weight: 500;line-height: 1.18;text-align: left;cursor: default;transform-origin: left center;transition: transform .38s cubic-bezier(.16, 1, .3, 1), filter .38s ease, letter-spacing .38s ease;}
.footer-wrap .col h4:hover {background: #ef3b31;transform: translateY(-4px) scale(1.035);filter: drop-shadow(0 7px 8px rgba(239, 59, 49, .3));letter-spacing: .02em;}
.footer-wrap .col:nth-child(2) h4 {min-width: 120px;}
.footer-wrap .col:nth-child(3) h4 {min-width: 207px;}
.footer-wrap .col a {margin-bottom: min(8px, calc(.417 * var(--layout-vw)));color: #fff;font-size: clamp(15px, calc(1.406 * var(--layout-vw)), 27px);font-weight: 300;line-height: 1.18;}
.footer-wrap .col>a {position: relative;width: fit-content;transition: color .32s ease, translate .38s cubic-bezier(.16, 1, .3, 1), text-shadow .32s ease;}
.footer-wrap .col>a::after {content: "";position: absolute;left: 0;bottom: -3px;width: 100%;height: 2px;border-radius: 2px;background: #ef4136;transform: scaleX(0);transform-origin: left center;transition: transform .38s cubic-bezier(.16, 1, .3, 1);}
.footer-wrap .col>a:hover {color: #ff6a61;translate: 7px 0;text-shadow: 0 4px 12px rgba(239, 65, 54, .25);}
.footer-wrap .col>a:hover::after {transform: scaleX(1);}
.footer-wrap .socials {gap: min(20px, calc(1.042 * var(--layout-vw)));margin-top: min(25px, calc(1.302 * var(--layout-vw)));}
.footer-wrap .socials a {width: min(50px, calc(2.604 * var(--layout-vw)));height: min(50px, calc(2.604 * var(--layout-vw)));margin: 0;overflow: hidden;border-radius: 4px;background: transparent;}
.footer-wrap .socials img {width: 100%;height: 100%;object-fit: contain;}
.footer-wrap .footer-aeroplane {transform-origin: 72% 28%;animation: footerPlaneFlight 5.5s ease-in-out infinite;}

@keyframes footerPlaneFlight {
  0%,  100% {transform: translate3d(0, 0, 0) rotate(0deg);}
  35% {transform: translate3d(-12px, -8px, 0) rotate(-1.2deg);}
  70% {transform: translate3d(7px, -3px, 0) rotate(.7deg);}
}

@media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  h2 {transition: transform .3s ease, text-shadow .3s ease, background-color .3s ease, color .3s ease, border-color .3s ease;}
  h2:hover {transform: translateY(-4px);text-shadow: 0 5px 12px rgba(25, 41, 54, .2);}
}

@media (hover: hover) and (pointer: fine) {
  body h2:hover {background-color: var(--heading-hover-bg, #192936);border-color: var(--heading-hover-bg, #192936);color: var(--heading-hover-color, #fff);}
}

html,  body {overflow-x: hidden;}
header,  .hero-content,  .heading-text {min-width: 0;}

.logo img {width: min(200px, calc(42 * var(--layout-vw)));height: auto;}
html {-webkit-text-size-adjust: 100%;text-size-adjust: 100%;}
body {min-width: 280px;}
a {-webkit-tap-highlight-color: transparent;}

@media (min-width: 1201px) {
  .hero {min-height: calc(49.4 * var(--layout-vw));}
  .hero-content { top: clamp(-40px, calc(-2 * var(--layout-vw)), -20px);}
  .heading-text h1 {--h1-line-height: 1.12em;}
}

@media (max-width: 1200px) {
  .footer-wrap .footer-aeroplane {display: none;}
}

@media (max-width: 1200px) {
  header {padding: 16px clamp(24px, calc(4 * var(--layout-vw)), 40px);}
 .hero {min-height: 650px;background-size: 100% 100%;}
 .hero-content {width: 55%;padding-left: 0;}
}

@media (max-width: 992px) {
  header {padding: 16px 32px;}
 .btn-group {gap: 12px;}
 .hero {min-height: auto;}
 .hero-content {width: 100%;padding-left: 0;text-align: center;display: flex; flex-direction: column;align-items: center;}
 .heading-text {min-width: 0;}
 .heading-text h1 {--h1-line-height: 1.08em;}
}

@media (max-width: 900px) {
  .hero {min-height: 0;background-size: auto 100%;background-position: center top;}
  .footer-wrap {position: relative;z-index: 2;}
  .footer-wrap {min-height: auto;padding: 30px 24px 30px;margin-top: -120px;background-image: none;background-color: var(--navy);}
  .footer-wrap .footer-card {display: flex;width: min(680px, calc(92 * var(--layout-vw)));min-height: 240px;padding: 32px;border-width: 8px;border-radius: 38px;gap: 30px;}
  .footer-wrap .col h4 {min-width: 130px;}
  .footer-wrap .col:nth-child(2) h4 {min-width: 100px;}
  .footer-wrap .col:nth-child(3) h4 {min-width: 160px;}
  .footer-wrap .socials {margin-top: 16px;gap: 8px;}
  .footer-wrap .socials a {width: 42px;height: 42px;}
  .footer-wrap .footer-aeroplane {top: 29%;width: 250px;}
}

@media (max-width: 767px) {
  .logo img {max-width: 170px;}
  .btn-group {gap: 10px;}
  .hero {background-size: 100% 100%;}
  .heading-text {min-width: 0;flex: 1 1 auto;max-width: calc(100% - 25px);}
  .heading-text p {line-height: 1.2;}
  .heading-text h1 {--h1-line-height: 1.08em;letter-spacing: -1px;max-width: 100%;}
  .blob {width: 130px;height: 130px;}
  .footer-card {flex-direction: column;gap: 26px;padding: 28px 24px;}
  .plane-trail {display: none;}
  header {flex-wrap: nowrap;gap: 14px;padding: 14px 18px;}
  .logo {flex: 1 1 auto;}
 .logo img {width: min(170px, calc(34 * var(--layout-vw)));}
  .btn-group {flex: 0 0 auto;flex-wrap: nowrap;}
  .btn-text {padding: 7px 10px;font-size: 14px;}
  .btn-arrow {width: 36px;}
  .hero-content {text-align: left;}
  .heading-text p {font-size: clamp(20px, calc(5.2 * var(--layout-vw)), 31px);}
  .heading-text h1 {font-size: clamp(25px, calc(6.7 * var(--layout-vw)), 42px);white-space: normal;}
  .footer-wrap .footer-card {display: grid;grid-template-columns: repeat(2, minmax(0, 1fr));align-items: start;}
  .footer-wrap .col:last-child {grid-column: 1 / -1;}
  .footer-wrap .socials {flex-wrap: wrap;}
  .footer-wrap .footer-card {width: min(430px, calc(92 * var(--layout-vw)));padding: 30px 28px;text-align: center;}
  .footer-wrap .socials {justify-content: flex-start;}
  .footer-wrap .footer-aeroplane {top: 22%; right: -24px;width: 210px;}
}

@media (max-width: 640px) {
  header {text-align: center; padding: 16px 20px;}
 .logo {order: 1;}
 .btn-group {order: 2;justify-content: center;flex-wrap: nowrap;}
 .btn-text {padding: 10px 16px;font-size: 13px;}
 .btn-arrow {width: 38px;}
 header {flex-wrap: wrap;}
 .logo {flex: 0 0 auto;}
  .logo img {width: min(185px, calc(52 * var(--layout-vw)));}
  .btn-group {width: auto;}
  .footer-wrap {min-height: 0;padding: 30px 16px 30px;background-size: auto 100%;}
  .footer-wrap .footer-card {width: min(calc(94 * var(--layout-vw)), 460px);min-height: 0;padding: 26px 22px;gap: 24px 18px;border-width: 6px;border-radius: 30px;}
  .footer-wrap .col h4,  .footer-wrap .col:nth-child(2) h4,  .footer-wrap .col:nth-child(3) h4 {min-width: 0;width: 100%;font-size: 20px;}
  .footer-wrap .col a {font-size: 16px;}
  header {flex-direction: column;justify-content: center;align-items: center;}
  header .logo {flex: 0 0 auto;}
  header .btn-group {width: 100%;justify-content: center;}
  .footer-wrap .footer-card {max-width: 100%;overflow: hidden;}
  .footer-wrap .col {min-width: 0;}
  .footer-wrap .col a {overflow-wrap: anywhere;}
}

@media (max-width: 480px) {
  header {justify-content: space-between;gap: 14px;padding: 14px 16px;}
  .logo img {width: min(150px, calc(45 * var(--layout-vw)));}
  .btn-group {gap: 8px;}
  .btn-text{padding: 9px 12px;}
  .btn-arrow {width: 34px;}
  .heading-text p {font-size: 21px;}
  .heading-text h1 {font-size: clamp(16px, calc(5 * var(--layout-vw)), 31px);--h1-line-height: 1.12em;}
  .btn-group {width: 100%;justify-content: center;}
  .btn {min-height: 30px;}
  .footer-wrap .footer-card {grid-template-columns: 1fr;}
  .footer-wrap .col:last-child {grid-column: auto;}
}

@media (max-width: 420px) {
  .footer-wrap .socials a {width: 35px;height: 35px;}
}

@media (max-width: 380px) {
  .btn-group {flex-direction: row;flex-wrap: nowrap;justify-content: center;align-items: center;}
  .btn-text {flex: 1;justify-content: center;}
  .logo img {max-width: 135px;}
  .heading-text p {font-size: clamp(18px, calc(6.2 * var(--layout-vw)), 21px);}
  .heading-text h1 {font-size: clamp(16px, calc(6 * var(--layout-vw)), 23px);letter-spacing: 0;}
}

@media (max-width: 360px) {
  .btn-text {padding-inline: 8px;font-size: 12px;}
  .btn-arrow {width: 32px;}
  .heading-text p {font-size: 19px;}
  .heading-text h1 {font-size: 22px;}
  header .btn-group {gap: 6px;}
}

@media (prefers-reduced-motion: reduce) {
  .heading-text h1::before {width: 19ch;}
  .heading-text h1::after {width: 17ch;}
  * {scroll-behavior: auto !important;animation-duration: .01ms !important;animation-delay: 0s !important;animation-iteration-count: 1 !important;transition-duration: .01ms !important;}
}

@media (max-width: 767px) {
  .heading-text h1::before,  .heading-text h1::after {max-width: 100%;}
  .btn-text {min-width: 0;}
}

@media (max-width: 640px) {
  .footer-wrap .col a {padding-block: 5px;}
}

@media (hover: none), (pointer: coarse) {
  .btn:hover,  .socials a:hover {transform: none;}
}

a:focus-visible {outline: 2px solid #08afd8;outline-offset: 4px;}

.details-hero {width: 100%;background-color: var(--navy);}
.details-hero::after {content: "";position: absolute;z-index: 1;right: 0;top: 50%;width: clamp(72px,calc(6.25 * var(--layout-vw)),120px);height: 18%;pointer-events: none;background: radial-gradient(circle at 100% 72%,rgba(8,175,216,.9) 0 15%,rgba(8,175,216,.48) 32%,rgba(8,175,216,.12) 52%,transparent 68%),rgba(255,255,255,.96);}
.details-hero-inner {position: relative;z-index: 2;width: min(88%,1690px);min-height: clamp(675px,calc(45 * var(--layout-vw)),865px);margin: auto;display: grid;grid-template-columns: 46% 54%;align-items: center;padding-bottom: clamp(25px,calc(4.16 * var(--layout-vw)),80px);}
.details-copy {width: 100%;padding-top: 34px;translate: 0 clamp(0px,calc(1.67 * var(--layout-vw)),32px);}
.details-logo-box {width: clamp(300px,calc(21.875 * var(--layout-vw)),420px);height: auto;margin: 0 0 clamp(60px,calc(5.16 * var(--layout-vw)),99px);}
.iat-logo {width: 100%;height: auto;object-fit: contain;transform-origin: center;}
.hero-message {display: flex;align-items: stretch;gap: 35px;}
.message-stripe {width: 11px;flex: 0 0 11px;border-radius: 2px;overflow: hidden;background: linear-gradient(to bottom,#00a9d5 0 33.333%,#1d1d1d 33.333% 66.666%,#ed3c31 66.666%);}
.details-heading-text {flex: 1 1 auto;min-width: 0;}
.hero-message .message-stripe {height: auto;align-self: stretch;margin-block: 0;}
/* Align the stripe with the visible text, excluding outer line-height space. */
.details-heading-text h1,
.details-heading-text h1::before,
.details-heading-text h1::after {text-box-trim: trim-start;text-box-edge: cap text;}
/* Use the text edge to retain descenders in the background-clipped paragraph. */
.details-heading-text > p:last-child {margin-bottom: 0;text-box-trim: trim-end;text-box-edge: cap text;}
.details-visual {position: relative;align-self: center;min-height: clamp(400px,calc(30.2 * var(--layout-vw)),580px);translate: 4% -3%;}
.details-visual .details-shape {position: absolute;z-index: 1;left: 13.2%;top: 8.4%;width: 74.3%;height: auto;max-width: none;animation: shapeFloat 5s ease-in-out infinite;transform-origin: center;}
.details-visual>.details-students {position: absolute;z-index: 5;right: -9.5%;bottom: -12%;width: min(112%,1095px);height: auto;max-width: none;}

@keyframes shapeFloat {
  0%, 100% {transform: translateY(0) rotate(0);}
  50% {transform: translateY(-7px) rotate(.8deg);}
}

.details-logo-box {animation: logoAnimation 1s ease forwards;}
.iat-logo {animation: logoFloat 4s ease-in-out 1s infinite;}
.message-stripe {transform-origin: top;animation: lineAnimation 1s ease forwards;}
.details-visual {animation: studentsReveal 1.2s ease forwards;}
.details-visual>img:not(.details-shape) {transition: transform .7s ease;}
.details-visual:hover>img:not(.details-shape) {transform: scale(1.04);}

.rounds-section { position: relative;padding: clamp(80px,calc(7 * var(--layout-vw)),150px) clamp(20px,calc(2.5 * var(--layout-vw)),48px);overflow: hidden;color: #fff;background-color: #1e2a36;}
.rounds-section::before {content: "";position: absolute;inset: 0;opacity: .2;pointer-events: none;background-image: radial-gradient(circle,#9fb0b9 0 1px,transparent 1.4px);background-size: 23px 27px;mix-blend-mode: soft-light;}
.rounds-panel {position: relative;z-index: 1;width: min(92%,1660px);margin: auto;padding: 74px 28px 32px;border-radius: 28px;background: rgba(9,56,78,.32);box-shadow: 0 18px 50px rgba(0,0,0,.2);animation: roundsPanelIn 1s ease both;animation-timeline: view();animation-range: entry 8% cover 30%;}
.rounds-panel>h2 {position: absolute;left: 50%;top: -47px;min-width: 382px;padding: 10px 30px 13px;border: 2px solid #fff;background: #1d2b36;font-size: clamp(45px,calc(3.3 * var(--layout-vw)),64px);line-height: 1.05;text-align: center;font-weight: 800;}
.rounds-grid {display: grid;grid-template-columns: repeat(2,minmax(0,1fr));gap: 48px;}
.rounds-column {min-width: 0;}
.rounds-column>h3 {margin: 0 0 40px;text-align: center;font-size: clamp(30px,calc(2.4 * var(--layout-vw)),46px);line-height: 1.1;font-weight: 700;}
.rounds-indian {--round-color: #f87516;}
.rounds-international {--round-color: #08bced;}
.rounds-column>h3, .round-card h4 {color: var(--round-color);}
.round-card+ .round-card {margin-top: 34px;}
.round-card h4 {margin-bottom: 18px;padding: 4px 20px 7px;background: var(--round-color);color: #fff;font-size: clamp(26px,calc(1.8 * var(--layout-vw)),35px);line-height: 1;text-align: center;font-weight: 700;}
.round-card table {width: 100%;border-collapse: separate;border-spacing: 0;table-layout: fixed;border: 2px solid #fff;font-size: clamp(18px,calc(1.5 * var(--layout-vw)),28px);line-height: 1.1;}
.round-card th, .round-card td {height: 81px;padding: 12px 22px;border: 0;border-right: 2px solid #fff;border-bottom: 2px solid #fff;text-align: center;font-weight: 400;}
/* Separate cell borders stay visible over striped rows at fractional zoom. */
.round-card tr > :last-child {border-right: 0;}
.round-card tbody tr:last-child > * {border-bottom: 0;}
.round-card th {width: 37%;white-space: nowrap;}
.round-card td {white-space: nowrap;}
.rounds-column:first-child {animation: roundColumnLeft 1s ease both;animation-timeline: view();animation-range: entry 5% cover 28%;}
.rounds-column:last-child {animation: roundColumnRight 1s ease both;animation-timeline: view();animation-range: entry 5% cover 28%;}

.criteria-section {position: relative;overflow: hidden;padding: 70px 28px 105px;color: #192936;background-color: #fff;background-image: repeating-linear-gradient(90deg,rgba(26,43,54,.018) 0 2px,transparent 2px 6px),repeating-linear-gradient(0deg,rgba(26,43,54,.014) 0 1px,transparent 1px 5px);}
.criteria-inner {width: min(100%,1640px);margin: auto;}
.criteria-section h2 {width: fit-content;margin: 0 auto;border: 2px solid #ff615a;font-weight: 800;text-align: center;}
.criteria-inner>h2 {max-width: 900px;padding: 14px 44px 18px;font-size: clamp(36px,calc(3 * var(--layout-vw)),58px);line-height: 1.13;}
.criteria-flow {position: relative;margin: 72px auto 55px;display: grid;align-items: center;justify-content: center;}
.criteria-band {position: absolute;z-index: 0;}
.criteria-node {position: relative;z-index: 2;border-radius: 50%;}
.criteria-circle {display: flex;flex-direction: column;align-items: center;justify-content: center;}
.white-circle {background-color: var(--white);width: 90%;height: 90%;box-shadow: 0 0 10px rgba(0, 0, 0, 0.35);border-radius: 50%;overflow: hidden;padding: 10px;align-items: center;justify-content: center;display: flex;flex-direction: column;}
.criteria-classes {--node-color: #f1362b;}
.criteria-ranks {--node-color: #f3531d;}
.criteria-marks {--node-color: #f77716;}
.criteria-circle h3 {position: relative;min-width: 135px;padding: 8px 18px 9px;border-radius: 10px;background: #1d2c39;color: #fff;font-size: 28px;line-height: 1;text-align: center;font-weight: 400;}
.criteria-circle h3::after {content: "";position: absolute;right: -13px;top: 50%;translate: 0 -50%;border-block: 12px solid transparent;border-left: 14px solid #1d2c39;}
.criteria-circle p {margin-top: 10px;color: #090909;font-size: 29px;line-height: 1.35;text-align: center;}
.flow-arrows {position: relative;z-index: 3;display: flex;justify-content: center;gap: 18px;}
.flow-arrows i {width: 0;height: 0;border-block: 26px solid transparent;border-left: 34px solid #fff;}
.criteria-note {text-align: center;font-size: clamp(27px,calc(2.1 * var(--layout-vw)),41px);line-height: 1.25;font-weight: 700;}
.criteria-note strong {color: #ef382e;}

.syllabus-title {margin-top: 25px!important;padding: 4px 90px 10px;font-size: clamp(40px,calc(3.2 * var(--layout-vw)),62px);line-height: 1;}
.syllabus-grid {margin-top: 66px;display: grid;gap: 0;}
.syllabus-card {--card: #f1372b;position: relative;isolation: isolate;min-height: 255px;padding: 26px 22px 22px;display: flex;flex-direction: column;align-items: center;color: #fff;background: var(--card);text-align: center;}
.syllabus-card::before {content: "";position: absolute;z-index: -2;inset: 0;background: #192936;translate: 18px 0;}
.syllabus-card::after {content: "";position: absolute;z-index: -1;inset: 0;background: var(--card);}
.syllabus-red::after {border-radius: 0 130px 130px 0;}
.syllabus-red {--card: #f1362b;}
.syllabus-blue {--card: #08afd8;}
.syllabus-blue::after {border-radius: 135px;}
.syllabus-orange {--card: #f77716;}
.syllabus-orange::after {border-radius: 135px 0 0 135px;}
.syllabus-card h3 {padding: 3px 18px 5px;background: #192936;font-size: clamp(27px,calc(2 * var(--layout-vw)),39px);line-height: 1;font-weight: 700;}
.syllabus-card p {margin: 9px 0 12px;font-size: clamp(20px,calc(1.55 * var(--layout-vw)),30px);line-height: 1.18;font-weight: 600;}
.syllabus-card a {margin-top: auto;padding: 2px 18px 4px;background: #fff;color: var(--card);font-size: 26px;line-height: 1;}
.syllabus-card a:hover {transform: translateY(-3px);box-shadow: 0 5px 12px #0003;}
.criteria-inner>h2, .criteria-node, .syllabus-card {animation: criteriaRise 1s ease both;animation-timeline: view();animation-range: entry 5% cover 28%;}

.eligibility-section {position: relative;min-height: 550px;padding: 100px 28px 62px;overflow: hidden;background: #e93a29 url('../images/eligibility-bg.png') center/cover no-repeat;color: #1d2c39;background-size: 100%;}
.eligibility-inner {width: min(100%,900px);margin: auto;display: grid;grid-template-columns: repeat(2,minmax(0,1fr));gap: 50px;}
.eligibility-card {min-height: 300px;padding: 48px 40px;border: 2px solid currentColor;border-radius: 40px;animation: eligibilityCardIn 1s ease both;animation-timeline: view();animation-range: entry 5% cover 28%;}
.eligibility-card-light {background: #fff;color: #1d2c39;}
.eligibility-card-dark {border-color: #fff;background: #1d2c39;color: #fff;}
.eligibility-icon {color: #ef372a;}
.eligibility-card h2 {margin-top: 14px;color: #ef372a;font-size: 32px;line-height: 1;font-weight: 700;}
.eligibility-rule {display: block;width: 168px;margin: 15px 0 10px;border-top: 3px dotted currentColor;}
.eligibility-card p {font-size: 22px;line-height: 1.25;white-space: nowrap;}

.rules-link {width: fit-content;min-width: 550px;margin: 62px auto 0;display: flex;align-items: stretch;font-size: 25px;line-height: 1;font-weight: 700;transition: transform .25s,box-shadow .25s;}
.rules-link > span, .rules-link > strong {padding: 8px 20px 8px;text-align: center;}
.rules-link > span {flex: 1;background: #fff;color: #1d2c39;}
.rules-link strong {min-width: 285px;background: #1d2c39;color: #fff;}
.rules-link:hover {transform: translateY(-4px);box-shadow: 0 10px 22px #7e170f55;}

.enroll-section {position: relative;min-height: 965px;padding: 70px 28px 85px;overflow: hidden;color: #fff;background-color: #fff;background-image: repeating-linear-gradient(90deg,rgba(26,43,54,.018) 0 2px,transparent 2px 6px),repeating-linear-gradient(0deg,rgba(26,43,54,.014) 0 1px,transparent 1px 5px);}
.enroll-section::before, .enroll-section::after {content: "";position: absolute;width: 320px;height: 320px;border-radius: 50%;filter: blur(25px);opacity: .75;pointer-events: none;}
.enroll-section::after {right: -205px;bottom: -120px;background: #ffaaa6;}
.enroll-inner {position: relative;z-index: 1;width: min(100%,1120px);margin: auto;}
.enroll-inner>h2 {width: fit-content;max-width: 100%;margin: 0 auto;padding: 8px 48px 13px;border: 2px solid #ff615a;color: #192936;font-size: clamp(40px,calc(3.35 * var(--layout-vw)),64px);line-height: 1.08;text-align: center;font-weight: 800;}
.enroll-layout {position: relative;margin-top: 145px;padding-left: 190px;}
.enroll-pencil {position: absolute;z-index: 3;left: 0;top: -108px;width: 300px;height: auto;transform: rotate(0deg);transform-origin: center 70%;}
.enroll-list { position: relative;}
.enroll-row {--enroll: #ef382c;position: relative;min-height: 108px;padding: 15px 145px 14px 90px;display: flex;align-items: center;background: var(--enroll);}
.enroll-row+ .enroll-row {margin-top: 18px;}
.enroll-red {--enroll: #ef382c;}
.enroll-blue {--enroll: #08afd8;}
.enroll-orange {--enroll: #f77716;}
.enroll-copy h3 {font-size: clamp(24px,calc(1.65 * var(--layout-vw)),31px);line-height: 1.15;font-weight: 700;}
.enroll-copy p {margin-top: 0px;font-size: clamp(20px,calc(1.5 * var(--layout-vw)),28px);line-height: 1.18;}
.enroll-row>img {position: absolute;right: -52px;top: 50%;width: 134px;height: 134px;translate: 0 -50%;filter: drop-shadow(0 7px 8px #0002);transition: transform .35s ease;}

.route-section {position: relative;min-height: 930px;padding: 115px 30px 85px;overflow: hidden;background: #1d2c39;color: #fff;}
.route-section::before {content: "";position: absolute;left: -145px;bottom: -160px;width: 320px;height: 320px;border-radius: 50%;background: #ffaaa6;filter: blur(30px);opacity: .85;}
.route-inner {position: relative;z-index: 1;width: min(100%,1325px);margin: auto;}
.route-inner>h2 {width: fit-content;max-width: 100%;margin: 0 auto;padding: 10px 38px 14px;border: 2px solid #f77716;font-size: clamp(42px,calc(3.35 * var(--layout-vw)),64px);line-height: 1.05;text-align: center;font-weight: 800;}
.route-map {position: relative;height: 590px;margin-top: 70px;}
.route-axis {position: absolute;top: 265px;height: 4px;background: #fff;}
.route-axis::after {content: "";position: absolute;right: -8px;top: 50%;translate: 0 -50%;border-block: 7px solid transparent;border-left: 12px solid #fff;}
.route-step {--route: #ef382c;position: absolute;width: 34%;height: 100%;display: flex;flex-direction: column;align-items: center;}
.route-prepare {left: 0;}
.route-appear {left: 33%;--route: #08afd8;}
.route-results {right: 0;--route: #f77716;}
.route-marker {height: 245px;display: flex;flex-direction: column;align-items: center;}

.map-pin {position: relative;flex-shrink: 0;width: 86px;height: auto;aspect-ratio: 88 / 118;margin-top: 8px;background: url('../images/route-pin-red.png') center / contain no-repeat;animation: none;}
.route-appear .map-pin {background-image: url('../images/route-pin-blue.png');}
.route-results .map-pin {background-image: url('../images/route-pin-orange.png');}
.route-marker i {width: 0;height: 100px;margin-top: 16px;border-left: 3px dotted var(--route);}
.route-marker i::after {content: "";display: block;width: 19px;height: 19px;margin: 95px 0 0 -11px;border-radius: 50%;background: var(--route);}
.route-card {width: 100%;min-height: 220px;padding: 25px 24px 20px;border: 2px solid var(--route);border-top: 0;border-radius: 0 0 24px 24px;text-align: center;}
.route-card h3 {color: var(--route);font-size: clamp(25px,calc(1.7 * var(--layout-vw)),32px);line-height: 1.18;font-weight: 700;}
.route-card p {margin-top: 15px;font-size: clamp(21px,calc(1.55 * var(--layout-vw)),29px);line-height: 1.25;}
.route-appear .route-card {order: 0;border-top: 2px solid var(--route);border-bottom: 0;border-radius: 24px 24px 0 0;}
.route-appear .route-marker {order: 1;height: 220px;flex-direction: column-reverse;}
.route-appear .route-marker .map-pin {margin: 19px 0 0;}
.route-appear .route-marker i {height: 100px;margin: 0 0 13px;}
.route-appear .route-marker i::after {margin: -7px 0 0 -11px;}
.route-step:hover .route-card {box-shadow: 0 15px 30px #0004;transform: translateY(-5px);}
.route-card {transition: transform .3s ease,box-shadow .3s ease;}

@keyframes routePinBounce {
  0%, 100% {translate: 0 0;}
  50% { translate: 5px -5px;}
}

.preparation-section {position: relative;padding: 80px 28px 215px;overflow: hidden;olor: #fff;background-color: #fff;background-image: repeating-linear-gradient(90deg,rgba(26,43,54,.018) 0 2px,transparent 2px 6px),repeating-linear-gradient(0deg,rgba(26,43,54,.014) 0 1px,transparent 1px 5px);}
.preparation-inner {width: min(100%,1170px);margin: auto;}
.preparation-inner>h2 {width: fit-content;max-width: 100%;margin: 0 auto;padding: 9px 52px 14px;border: 2px solid #ff615a;color: #192936;font-size: clamp(38px,calc(3.35 * var(--layout-vw)),64px);line-height: 1.05;text-align: center;font-weight: 800;}
.preparation-grid {margin-top: 80px;display: grid;grid-template-columns: repeat(3,minmax(0,1fr));gap: 48px;}
.preparation-card {--prep: #ef382c;position: relative;min-height: 250px;padding: 31px 40px 28px;border-radius: 36px;background: var(--prep);color: #fff;box-shadow: 0 12px 28px rgba(25,41,54,.1);animation: preparationRise 1s ease both;animation-timeline: view();animation-range: entry 5% cover 30%;}
.preparation-red {--prep: #ef382c;}
.preparation-blue {--prep: #08afd8;}
.preparation-orange {--prep: #f77716;}
.preparation-card h3 {font-size: clamp(28px,calc(2 * var(--layout-vw)),38px);line-height: 1.16;ont-weight: 700;}
.preparation-rule {display: block;width: 165px;margin: 12px 0 10px;border-top: 3px dotted #fff;}
.preparation-card p {font-size: clamp(21px,calc(1.55 * var(--layout-vw)),29px);line-height: 1.28;font-weight: 400;}
.preparation-card>a {position: absolute;right: 30px;bottom: 20px;width: 40px;height: 40px;display: grid;place-items: center;background: #fff;color: var(--prep);transition: transform .25s,box-shadow .25s;}
.preparation-card>a svg {width: 34px;height: 27px;fill: none;stroke: currentColor;stroke-width: 3;stroke-linecap: round;stroke-linejoin: round;}
.preparation-card>a:hover {transform: translateX(5px);box-shadow: 0 6px 14px #0003;}
.preparation-card:nth-child(2) {animation-delay: .12s;}
.preparation-card:nth-child(3) {animation-delay: .24s;}

.page-progress {position: fixed;z-index: 100000;top: 0;left: 0;width: 100%;height: 4px;transform: scaleX(0);transform-origin: left;background: linear-gradient(90deg,#ef382c,#f77716,#08afd8);box-shadow: 0 1px 8px #08afd899;pointer-events: none;}
.js-motion .motion-reveal {animation: none!important;animation-timeline: auto!important;opacity: 0;translate: 0 48px;scale: .97;filter: blur(5px);transition: opacity .75s ease var(--motion-delay,0ms),translate .85s cubic-bezier(.16,1,.3,1) var(--motion-delay,0ms),scale .85s cubic-bezier(.16,1,.3,1) var(--motion-delay,0ms),filter .7s ease var(--motion-delay,0ms);}
.js-motion .motion-reveal.is-visible {opacity: 1;translate: 0 0;scale: 1;filter: blur(0);}
.js-motion .table-row-reveal {opacity: 0;translate: -28px 0;transition: opacity .55s ease var(--row-delay,0ms),translate .65s cubic-bezier(.16,1,.3,1) var(--row-delay,0ms);}
.js-motion .table-row-reveal.is-visible {opacity: 1;translate: 0 0;}
.motion-tilt {transform: perspective(900px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));transition: transform .18s ease,box-shadow .3s ease;}
.motion-tilt:hover {z-index: 5;}

.round-card {transition: transform .3s ease,filter .3s ease;}
.round-card:hover {transform: translateY(-7px);filter: drop-shadow(0 12px 16px #0005);}
/* Alternate timing rows use the slate sampled from the rounds reference. */
.round-card tbody tr:nth-child(even) {background-color: #3d4854;}
.round-card tr {transition: background-color .25s,color .25s;}
.round-card tr:hover {background: rgba(8,188,237,.28);color: #fff;}
.rounds-indian .round-card tr:hover {background: rgba(248,117,22,.3);}
.round-card h4 {background-image: linear-gradient(110deg,transparent 30%,rgba(255,255,255,.38) 50%,transparent 70%);background-size: 250% 100%;animation: roundShine 4s linear infinite;}

@keyframes roundShine {
  0%, 55% {background-position: 150% 0;}
  100% {background-position: -100% 0;}
}

.criteria-band {background-size: 200% 100%;}
.flow-arrows i {animation: flowArrowRun 1.5s ease-in-out infinite;}
.flow-arrows i:nth-child(2) {animation-delay: .18s;}
.flow-arrows i:nth-child(3) {animation-delay: .36s;}
.criteria-node {transition: transform .35s ease,filter .35s ease;}
.criteria-node:hover {transform: translateY(-9px) rotate(1deg);filter: drop-shadow(0 15px 14px #19293638);}
.criteria-node:hover .criteria-circle {animation: criteriaPulse .65s ease;}
.criteria-circle h3 {transition: transform .3s ease;}
.criteria-node:hover h3 {transform: translateX(5px);}

@keyframes flowArrowRun {
  0%, 100% {opacity: .45;translate: -7px 0;}
  50% {opacity: 1;translate: 7px 0;}
}

@keyframes criteriaPulse {
  50% {transform: scale(1.035);}
}

.eligibility-icon {animation: iconFloat 3.2s ease-in-out infinite;}
.eligibility-card:nth-child(2) .eligibility-icon {animation-delay: .6s;}
.eligibility-card:hover .eligibility-rule {width: 235px;}
.eligibility-rule {transition: width .45s cubic-bezier(.16,1,.3,1);}
.rules-link strong {position: relative;overflow: hidden;}
.rules-link strong::after {content: "→";display: inline-block;margin-left: 14px;animation: readArrow 1.3s ease-in-out infinite;}

@keyframes iconFloat {
  0%, 100% {translate: 0 0;rotate: 0deg;}
  50% {translate: 0 -8px;rotate: -2deg;}
}

@keyframes readArrow {
  0%, 100% {translate: 0 0;}
  50% {translate: 8px 0;}
}

.preparation-card::before {content: "";position: absolute;inset: 0;border-radius: inherit;background: linear-gradient(120deg,transparent 25%,rgba(255,255,255,.2),transparent 75%);translate: -120% 0;pointer-events: none;}
.preparation-card:hover::before {animation: cardSweep .75s ease;}
.preparation-card:hover .preparation-rule {width: 220px;}
.preparation-rule {transition: width .4s ease;}
.preparation-card>a svg {animation: prepArrowRun 1.4s ease-in-out infinite;}

@keyframes prepArrowRun {
  0%, 100% {translate: -3px 0;}
  50% {translate: 4px 0;}
}

.syllabus-card h3 {transition: letter-spacing .3s ease,transform .3s ease;}
.syllabus-card:hover h3 {letter-spacing: 1px;transform: scale(1.04);}
.syllabus-card a {transition: transform .25s,box-shad
  
  ow .25s;}
.eligibility-section {animation: eligibilityBgMove 18s ease-in-out infinite alternate;}

/* Keep the standard desktop header dimensions on wide screens. */

@media(max-width:1100px) {
  .details-hero {min-height: 1050px;}
  .details-hero-inner {width: min(90%,760px);grid-template-columns: 1fr;padding: 48px 0 135px;}
 .details-copy {position: relative;z-index: 8;translate: 0 0;}
  .details-logo-box {width: 300px;margin-bottom: 45px;}
  .details-visual {width: min(760px,100%); min-height: 500px;margin-top: -10px;translate: 0 0;}
}

@media(max-width:1250px) {
  .rounds-grid {gap: 34px;}
  .rounds-panel {padding-inline: 22px;}
  .round-card th, .round-card td {padding-inline: 12px;}
  .round-card table {font-size: clamp(18px,calc(2 * var(--layout-vw)),25px);}
}

@media(max-width:900px) {
  .rounds-section {padding: 100px 20px 70px;}
  .rounds-panel {width: min(100%,700px);padding: 72px 20px 28px;}
  .rounds-panel>h2 {min-width: min(360px,calc(80 * var(--layout-vw)));}
  .rounds-grid {grid-template-columns: 1fr;gap: 30px;}
  .rounds-column>h3 {margin-bottom: 20px;}
  .round-card table {font-size: clamp(17px,calc(3.2 * var(--layout-vw)),23px);}
}

@media(max-width:900px) {
  .criteria-flow {margin-block: 55px;}
  .criteria-band {bottom: 4%;width: 150px;border-radius: 80px;}
  .criteria-node {margin: auto;}
  .flow-arrows {rotate: 90deg;align-items: center;}
  .criteria-note {max-width: 750px;margin-inline: auto;}
  .syllabus-grid {width: min(100%,650px);margin-inline: auto;}
  .syllabus-card::after {border-radius: 120px;}
  .syllabus-card::before {border-radius: 120px;}
}

@media(max-width:900px) {
  .eligibility-section {padding-top: 75px;}
  .eligibility-inner {width: min(100%,560px);grid-template-columns: 1fr;gap: 28px;}
  .eligibility-card {min-height: 300px;}
  .rules-link {min-width: 0;width: min(100%,560px);margin-top: 38px;font-size: clamp(25px,calc(5 * var(--layout-vw)),35px);}
  .rules-link > span, .rules-link > strong {padding-inline: 20px;}
  .rules-link strong {min-width: 42%;}
}

@media(max-width:1000px) {
  .enroll-section {min-height: 0;}
  .enroll-layout {width: min(100%,720px);margin: 90px auto 0;padding-left: 0;}
  .enroll-pencil {left: -75px;top: -52px;width: 205px;opacity: .9;}
  .enroll-row {padding-left: 145px;padding-right: 110px;}
  .enroll-row>img {right: -8px;width: 108px;height: 108px;}
}

@media(max-width:900px) {
  .route-section {min-height: 0;padding: 75px 20px;}
  .route-map {height: auto;margin-top: 65px;display: grid;gap: 38px;}
  .route-axis {top: 10px;bottom: 10px;width: 4px;height: auto;}
  .route-axis::after {right: auto;left: 50%;top: auto;bottom: -10px;translate: -50% 0;border-inline: 7px solid transparent;border-top: 12px solid #fff;border-left-color: transparent;}
  .route-step {position: relative;left: auto!important;right: auto!important;width: 100%;height: auto;min-height: 210px;padding-left: 90px;display: block;}
  .route-marker, .route-appear .route-marker {position: absolute;left: 0;top: 0;width: 72px;height: auto;display: flex;flex-direction: column;align-items: center;}
  .map-pin, .route-appear .route-marker .map-pin {width: 62px;height: auto;margin: 0;}
  .route-marker i, .route-appear .route-marker i {height: 105px;margin: 13px 0 0;order: initial;}
  .route-marker i::after, .route-appear .route-marker i::after {margin: 100px 0 0 -11px;}
  .route-card, .route-appear .route-card {min-height: 190px;padding: 24px 18px;border: 2px solid var(--route);border-radius: 22px;}
  .route-appear .route-card {order: initial;}
}

@media(max-width:950px) {
  .preparation-section {padding-top: 65px;}
  .preparation-grid {width: min(100%,560px);margin: 65px auto 0;grid-template-columns: 1fr;gap: 28px;}
  .preparation-card {min-height: 280px;}
}

@media(max-width:700px) {
  .details-hero {min-height: 820px;}
  .details-hero-inner {width: 92%;padding-top: 35px;}
  .details-logo-box {width: min(260px,calc(70 * var(--layout-vw)));margin-bottom: 35px;}
  .hero-message {gap: 18px;}
  .message-stripe {width: 7px;flex-basis: 7px;}
  .details-visual {width: 100%;min-height: 330px;margin-top: 10px;}
  .details-visual img {bottom: 15px;}
}

@media(max-width:560px) {
  .rounds-section {padding-inline: 12px;}
  .rounds-panel {padding: 62px 10px 20px;border-radius: 20px;}
  .rounds-panel>h2 {top: -35px;min-width: 240px;font-size: 25px;}
  .rounds-column>h3 {font-size:clamp(22px,calc(5 * var(--layout-vw)),30px);}
  .round-card h4 { margin-bottom: 10px;}
  .round-card th, .round-card td {height: 45px;padding: 6px 6px;}
  .round-card th {width: 36%;white-space: normal;}
  .round-card td {white-space: normal;}
  .round-card table {font-size: clamp(15px,calc(4.2 * var(--layout-vw)),19px);}
  .round-card+ .round-card {margin-top: 26px;}
  .round-card h4{font-size: clamp(20px, calc(1.8 * var(--layout-vw)), 35px);}
}

@media(max-width:560px) {
  .criteria-section {padding: 48px 12px 65px;}
  .criteria-inner>h2 {padding: 11px 14px 14px;font-size:clamp(21px,calc(5 * var(--layout-vw)),30px);}
  .criteria-circle {border-width: 20px;}
  .flow-arrows i {border-block-width: 20px;border-left-width: 27px;}
  .criteria-note {font-size: clamp(22px,calc(6 * var(--layout-vw)),29px);}
  .syllabus-title {padding-inline: 45px;}
  .syllabus-grid {margin-top: 42px;}
  .syllabus-card {min-height: auto;padding-inline: 18px;}
  .syllabus-card p {font-size: 20px;}
  .syllabus-card a {font-size: 22px;}
  .details-copy{padding-top:0px;}
}

@media(max-width:560px) {
  .eligibility-section {padding:30px 14px 30px;background-position: center;}
  .eligibility-card {min-height: 220px;padding: 30px 24px;border-radius: 28px;}
  .eligibility-card h2 {font-size: 22px;}
  .eligibility-rule {margin-block: 17px 12px;}
  .eligibility-card p {font-size: clamp(20px,calc(4.5 * var(--layout-vw)),26px);white-space: normal;}
  .rules-link {font-size: 16px;}
  .rules-link > span, .rules-link > strong {padding: 7px 7px 7px;}
}

@media(max-width:650px) {
  .enroll-section {padding: 30px 14px 30px;}
  .enroll-inner>h2 {padding: 9px 15px 12px;font-size: clamp(22px,calc(5 * var(--layout-vw)),30px);}
  .enroll-layout {margin-top: 30px;}
  .enroll-pencil { display: none;}
  .enroll-row {min-height: 155px;padding: 20px 82px 20px 20px;border-radius: 22px;}
  .enroll-row+ .enroll-row {margin-top: 20px;}
  .enroll-copy h3 {font-size: 23px;}
  .enroll-copy p {font-size: 18px;}
  .enroll-row>img {right: -2px;width: 82px;height: 82px;}
}

@media(max-width:560px) {
  .route-section {padding: 55px 12px;}
  .route-inner>h2 {padding: 9px 14px 12px;font-size: clamp(25px,calc(5 * var(--layout-vw)),30px);}
  .route-step {padding-left: 64px;}
  .route-marker, .route-appear .route-marker {width: 48px;}
  .map-pin, .route-appear .route-marker .map-pin {width: 46px;height: auto;}
  .route-card p {font-size: 18px;}
  .route-card h3 {font-size: 23px;}
}

@media(max-width:560px) {
  .preparation-section {padding: 50px 14px 100px;}
  .preparation-inner>h2 {padding: 10px 14px 13px;font-size: clamp(27px,calc(6 * var(--layout-vw)),30px);}
  .preparation-grid {margin-top: 45px;}
  .preparation-card {min-height: 220px;padding: 27px 25px;border-radius: 28px;}
  .preparation-card h3 {font-size: 22px;}
  .preparation-card p {font-size: 18px;}
  .preparation-card>a {right: 22px;bottom: 18px;}
}

@media(max-width:400px) {
  .details-hero {min-height: 755px;}
}

@media(prefers-reduced-motion:reduce) {
  html {scroll-behavior: auto;}
  .details-copy, .iat-logo, .message-stripe, .hero-message h1, .hero-message p, .details-visual, .details-visual img, .rounds-panel, .rounds-column, .criteria-inner>h2, .criteria-node, .syllabus-card, .eligibility-card, .enroll-pencil, .enroll-row, .route-step, .map-pin, .preparation-card {animation: none!important;}
}

.preparation-card {overflow: hidden;}
.eligibility-icon {width: 85px;height: 85px;object-fit: contain;}

@media(min-width:1101px) {
  .enroll-layout {padding-left: 360px;}
}

@media(min-width:901px) {
  .rounds-section {min-height: min(calc(60 * var(--layout-vw)),1536px);padding-top: min(calc(8.44 * var(--layout-vw)),162px);}
}

@media(min-width:901px) {
  .rounds-panel {padding-left: 20px;padding-right: 20px;border-radius: 20px;}
  .rounds-panel>h2 {top: -34px;min-width: 272px;padding: 7px 21px 9px;font-size: 45px;}
  .rounds-grid {gap: 32px;}
  .rounds-column>h3 {margin-bottom: 28px;}
  .round-card+ .round-card {margin-top: 24px;}
  .round-card h4 { margin-bottom: 13px;padding: 3px 14px 5px;}
  .round-card table {font-size: clamp(16px,calc(1.5 * var(--layout-vw)),23px);}
  .round-card th, .round-card td {height: 58px;padding: 6px 10px;}
}

@media(min-width:901px) {
  .criteria-section {padding-top: 50px;}
  .criteria-inner>h2:not(.syllabus-title) {width: min(640px,92%);padding: 10px 20px 13px;font-size: 38px;}
  .criteria-flow {margin: 52px auto 40px;}
  .criteria-node {border-width: 3px;}
  .criteria-circle {border-width: 20px;}
  .flow-arrows {gap: 12px;}
  .flow-arrows i {border-block-width: 20px;border-left-width: 27px;}
  .criteria-note {font-size: 29px;}
  .syllabus-title {margin-top: 42px!important;padding: 4px 72px 8px;font-size: 44px;}
  .syllabus-grid {margin: 48px auto 0;}
  .syllabus-card::before {translate: 13px 0;}
  .syllabus-card p { margin: 7px 0 9px;}
  .syllabus-card a {padding: 2px 13px 3px;}
}

.rounds-panel>h2 {translate: none;transform: translateX(-50%);transition: transform .35s cubic-bezier(.16,1,.3,1),background-color .3s,color .3s,box-shadow .35s;}
.rounds-panel>h2:hover {color: var(--heading-hover-color, #fff);background: var(--heading-hover-bg, #f77716);transform: translateX(-50%) translateY(-6px) scale(1.045);box-shadow: 0 12px 25px rgba(0,0,0,.32);}
.rounds-section {--heading-hover-bg: #f77716;--heading-hover-color: #fff;}
.syllabus-title,  .eligibility-card-dark {--heading-hover-bg: #f77716;--heading-hover-color: #fff;}
.criteria-section,  .preparation-section {--heading-hover-bg: #f77716;--heading-hover-color: #fff;}
.route-section {--heading-hover-bg: #f77716;--heading-hover-color: #fff;}
.round-card tr:hover, .rounds-indian .round-card tr:hover, .rounds-international .round-card tr:hover {background: #fff;color: #111;}
.round-card tr {height: 81px;}

@media(min-width:901px) {
  .round-card tr, .round-card th, .round-card td {height: 58px;}
}

@media(max-width:900px) {
  .round-card tr {height: 45px;}
}

.criteria-flow {height: 371px;max-width: 1358px;grid-template-columns: 337px 1fr 337px 1fr 337px;}
.criteria-flow::before {content: "";position: absolute;z-index: 1;inset: 0;background: url('../images/criteria-outline.png') center/100% 100% no-repeat;pointer-events: none;}
.criteria-band {left: 1.25%;right: 1.25%;top: 50%;height: 337px;translate: 0 -50%;clip-path: none;background: url('../images/criteria-band.png') center/100% 100% no-repeat;animation: none;}
.criteria-node {width: 337px;height: 337px;padding: 0;border: 0;display: grid;place-items: center;background: transparent;}
.criteria-circle {border: 0;border-radius: 50%;background: #fff;}
.syllabus-red::before {border-radius: 0 130px 130px 0;}
.syllabus-blue::before {border-radius: 135px;}
.syllabus-orange::before {border-radius: 135px 0 0 135px;translate: -18px 0;}

@media(min-width:901px) {
  .enroll-layout {margin-top: 103px;padding-left: 256px;}
}

.route-card {border-color: transparent;background: linear-gradient(#1d2c39,#1d2c39) padding-box,linear-gradient(to bottom,transparent 0%,var(--route) 25%,var(--route) 100%) border-box;}
.route-appear .route-card {border-color: transparent;background: linear-gradient(#1d2c39,#1d2c39) padding-box,linear-gradient(to bottom,var(--route) 0%,var(--route) 72%,transparent 100%) border-box;}
.route-axis {left: 0;right: 0;}
.route-prepare .route-marker, .route-results .route-marker {height: 309px;}

@media(min-width:901px) {
  .route-section {min-height: 662px;padding: 82px 21px 60px;}
  .route-section::before {left: -103px;bottom: -114px;width: 228px;height: 228px;}
  .route-inner { width: min(100%,942px);}
  .route-inner>h2 {padding: 7px 27px 10px;font-size: 45px;}
  .route-map {height: 420px;margin-top: 50px;}
  .route-axis {top: 188px;height: 3px;}
  .route-axis::after {right: -6px;border-block-width: 5px;border-left-width: 9px;}
  .route-marker {height: 174px;}
  .route-prepare .route-marker, .route-results .route-marker {height: 220px;}
  .map-pin {width: 61px;height: auto;margin-top: 6px;}
  .route-marker i {height: 71px;margin-top: 5px;border-left-width: 2px;}
  .route-marker i::after {width: 14px; height: 14px;margin: 68px 0 0 -8px;}
  .route-card {min-height: 156px;padding: 18px 17px 14px;border-width: 1.5px;border-top-width: 0;border-radius: 0 0 17px 17px;}
  .route-card h3 {font-size: 23px;}
  .route-card p {margin-top: 11px;font-size: 21px;}
  .route-appear .route-card {border-top-width: 1.5px;border-bottom-width: 0;border-radius: 17px 17px 0 0;}
  .route-appear .route-marker {height: 200px;}
  .route-appear .route-marker .map-pin { margin-top: -5px;}
  .route-appear .route-marker i {height: 71px;margin-bottom: 9px;}
  .route-appear .route-marker i::after {margin: -5px 0 0 -8px;}
}

.flow-arrows {width: 116px;height: 38px;flex: 0 0 116px;background: url('../images/criteria-arrow.png') center/100% auto no-repeat;}
.flow-arrows i {display: none;}
.syllabus-grid {grid-template-columns: 32.8fr 34.4fr 32.8fr;}
.syllabus-card {overflow: visible;background-color: transparent;background-position: center;background-repeat: no-repeat;background-size: 100% 100%;}
.syllabus-red {background-image: url('../images/syllabus-red.png');}
.syllabus-blue {background-image: url('../images/syllabus-blue.png');}
.syllabus-orange {background-image: url('../images/syllabus-orange.png');}
.syllabus-card::after, .syllabus-card::before {display: none;}
.syllabus-blue::before, .syllabus-orange::before {content: "";display: block;position: absolute;z-index: 0;left: -17%;top: 0;bottom: 0;width: 34%;background: transparent url('../images/syllabus-curve.png') center/100% 100% no-repeat;}
.syllabus-card h3, .syllabus-card p, .syllabus-card a {position: relative;z-index: 2;}

@media(min-width:901px) {
  .flow-arrows {flex-basis: 82px;}
}

@media(max-width:560px) {
  .eligibility-icon {width: 72px;height: 72px;}
}

.criteria-circle {width: 84.87%;height: 84.87%;box-shadow: 0 2px 7px rgba(0, 0, 0, .3);}
.criteria-circle .white-circle {width: 100%;height: 100%;padding: 0;background: transparent;box-shadow: none;overflow: visible;}
.criteria-circle h3 {flex-shrink: 0;}
.criteria-circle p {white-space: nowrap;}
.flow-arrows {justify-self: center;}

.syllabus-blue::before, .syllabus-orange::before {inset: 0 auto 0 0;border-radius: 0;translate: -50% 0;pointer-events: none;}
.syllabus-blue::before {width: 52.52%;}
.syllabus-orange::before {width: 55.41%;}

@media (min-width: 901px) {
  .criteria-flow {width: min(1358px, calc(70.7292 * var(--layout-vw)));max-width: 100%;height: auto;aspect-ratio: 1358 / 371;padding-inline: 1.25%;grid-template-columns: 25.45fr 11.825fr 25.45fr 11.825fr 25.45fr;gap: 0;}
  .criteria-band {height: 90.836%;}
  .criteria-node {width: 100%;height: auto;aspect-ratio: 1;margin: 0;animation: none;}
  .criteria-circle h3 {min-width: min(140px, calc(7.292 * var(--layout-vw)));padding: min(12px, calc(.625 * var(--layout-vw))) min(18px, calc(.938 * var(--layout-vw)));font-size: min(31px, calc(1.615 * var(--layout-vw)));line-height: 1.2;}
  .criteria-circle p {margin-top: min(10px, calc(.521 * var(--layout-vw)));font-size: min(31px, calc(1.615 * var(--layout-vw)));line-height: 1.35;}
  .criteria-circle h3::after {right: min(-11px, calc(-.573 * var(--layout-vw)));border-block-width: min(10px, calc(1.521 * var(--layout-vw)));border-left-width: min(12px, calc(1.625 * var(--layout-vw)));}
  .flow-arrows {width: min(117px, calc(6.094 * var(--layout-vw)));height: min(59px, calc(3.073 * var(--layout-vw)));rotate: none;}
  .syllabus-grid {width: min(1600px, calc(83.333 * var(--layout-vw)));max-width: 100%;margin-inline: auto;translate: none;grid-template-columns: 527fr 556fr 527fr;gap: 0;}
  .syllabus-card {min-height: 0;height: min(268.32px, calc(13.975 * var(--layout-vw)));padding: min(30px, calc(1.563 * var(--layout-vw))) min(18px, calc(.938 * var(--layout-vw))) min(24px, calc(1.25 * var(--layout-vw)));animation: none;}
  .syllabus-card h3 {font-size: min(40px, calc(2.083 * var(--layout-vw)));}
  .syllabus-card p {font-size: min(29px, calc(1.51 * var(--layout-vw)));line-height: 1.25;}
  .syllabus-card a {font-size: min(29px, calc(1.51 * var(--layout-vw)));}
}

@media (max-width: 900px) {
  .criteria-flow {height: auto;grid-template-columns: 1fr;gap: 18px;}
  .criteria-flow::before,  .criteria-band {display: none;}
  .criteria-node {width: min(300px, 100%);height: auto;aspect-ratio: 1;background: var(--node-color);}
  .criteria-circle p {font-size: 24px;}
  .criteria-circle h3 {font-size: 24px;}
  .syllabus-grid {grid-template-columns: 1fr;translate: none;gap: 22px;}
  .syllabus-blue::before,  .syllabus-orange::before {display: none;}
}

@media (min-width: 901px) {
  .criteria-inner > h2.syllabus-title {display: grid;place-items: center;width: min(440px, calc(22.917 * var(--layout-vw)));height: min(90px, calc(4.688 * var(--layout-vw)));padding: 0;font-size: min(64px, calc(3.333 * var(--layout-vw)));line-height: 1;}
  .syllabus-card a {position: absolute;bottom: min(24px, calc(1.25 * var(--layout-vw)));margin-top: 0;}
}

.enroll-pencil {filter: none;animation: enrollPencilSway 5s ease-in-out infinite;translate: none;rotate: none;}

@keyframes enrollPencilSway {
  0%,  100% {translate: 0 0;rotate: 0deg;}
  50% {translate: 0 -8px; rotate: -.6deg;}
}

.enroll-list {z-index: 1;isolation: isolate;}
.enroll-row {box-shadow: none;transition: box-shadow .25s ease;}
.enroll-row:hover {z-index: auto;transform: none;box-shadow: inset 0 0 0 2px #ffffff80;}
.enroll-row:hover > img {transform: none;filter: drop-shadow(0 0 8px #ffffff80);}
.enroll-navy {--enroll: #272e5c;}
.enroll-section::before {left: 0;top: 0;width: min(300px, calc(15.625 * var(--layout-vw)));height: min(310px, calc(16.146 * var(--layout-vw)));background: url('../images/enroll-corner.svg') left top / 100% 100% no-repeat;border-radius: 0;filter: none;opacity: 1;}

@media (min-width: 901px) {
  .enroll-section {min-height: 0;padding: min(70px, calc(3.646 * var(--layout-vw))) 0 min(80px, calc(4.167 * var(--layout-vw)));}
  .enroll-section::after {width: min(380px, calc(19.792 * var(--layout-vw)));height: min(470px, calc(24.479 * var(--layout-vw)));right: min(-170px, calc(-8.854 * var(--layout-vw)));bottom: min(-90px, calc(-4.688 * var(--layout-vw)));filter: blur(min(35px, calc(1.823 * var(--layout-vw))));}
  .enroll-inner {width: min(75%, 1440px);container-type: inline-size;}
  .enroll-inner > h2 {width: 77.5%;height: 6.25cqw;padding: 0;display: grid;place-items: center;line-height: 1.08;white-space: nowrap;}
  .enroll-layout {width: 100%;height: auto;aspect-ratio: 1440 / 674;margin: 3.4722cqw 0 0;padding: 0;}
  .enroll-pencil {display: block;left: 0;top: 0;width: 30.0694%;height: auto;max-width: none;opacity: 1;filter: none;}
  .enroll-list {position: absolute;top: 16.7656%;left: 0;width: 100%;}
  .enroll-row {min-height: 0;padding: 0;border-radius: 0;}
  .enroll-row + .enroll-row {margin-top: 1.25cqw;}
  .enroll-row:nth-child(1) {width: calc(688 / 1440 * 100%);margin-left: 25%;--copy-left: 3.9583cqw;}
  .enroll-row:nth-child(2) {width: calc(866 / 1440 * 100%);margin-left: 20.1389%;--copy-left: 4.5139cqw;}
  .enroll-row:nth-child(3) {width: calc(1053 / 1440 * 100%);margin-left: 15.2778%;--copy-left: 4.7222cqw;}
  .enroll-row:nth-child(4) {width: calc(1263 / 1440 * 100%);margin-left: calc(106 / 1440 * 100%);--copy-left: 8.1944cqw;}
  .enroll-copy {margin-left: var(--copy-left);white-space: nowrap;}
  .enroll-orange .enroll-copy {min-width: 0;white-space: normal;}
  .enroll-orange .enroll-copy p {overflow-wrap: anywhere;}
  .enroll-copy h3 {margin-left: 1.8056cqw;font-size: 2.1528cqw;line-height: 1.15;}
  .enroll-copy p {margin-top: .6944cqw;font-size: 2.1528cqw;line-height: 1.18;}
  .enroll-row > img {width: 9.8611cqw;height: 9.8611cqw;right: -4.9306cqw;filter: drop-shadow(0 2px 3px #0002);}
}

@media (prefers-reduced-motion: reduce) {
  .enroll-row,  .enroll-row > img {transition: none;animation: none!important;}
}

@media (min-width: 901px) {
  .enroll-inner > h2 {font-size: 4.3403cqw;padding-bottom: .6944cqw;}
  .enroll-row {height: 7.4653cqw;}
  .enroll-copy h3,  .enroll-copy p {font-size: 2.1528cqw;}
  .enroll-row:last-child .enroll-copy {translate: 0 -.2778cqw;}
}

@keyframes enrollIconFloat {
  0%, 100% {transform: translateY(0) rotate(-2deg) scale(1);}
  50% {transform: translateY(-6px) rotate(3deg) scale(1.04);}
}
.enroll-row > img {transform-origin: center;animation: enrollIconFloat 3.2s ease-in-out infinite;}
.enroll-row:nth-child(2) > img {animation-delay: -.8s;}
.enroll-row:nth-child(3) > img {animation-delay: -1.6s;}
.enroll-row:nth-child(4) > img {animation-delay: -2.4s;}

@media (max-width: 900px) {
 .route-axis {left: 35px;right: auto;}
 .route-marker,  .route-prepare .route-marker,  .route-results .route-marker, .route-appear .route-marker {height: auto;}
 .flow-arrows {background: #192936; -webkit-mask: url('../images/criteria-arrow.png') center / contain no-repeat;mask: url('../images/criteria-arrow.png') center / contain no-repeat;}
 .details-hero-inner {min-width: 0;}
 .details-heading-text {min-width: 0;}
 .preparation-section {padding-bottom: 65px;}
  main + .footer-wrap {margin-top: 0;}
}

@media (min-width: 651px) and (max-width: 900px) {
  .enroll-pencil {left: 0; top: 0;width: 145px;}
  .enroll-row {padding-left: 160px;}
}

@media (max-width: 560px) {
  .route-axis {left: 24px;}
  .details-visual {min-height: clamp(240px, calc(75 * var(--layout-vw)), 330px);}
  .details-visual > .details-students {width: 110%;left: -5%;}
  .criteria-inner > h2.syllabus-title {padding: 10px 30px;font-size: 35px;}
}

@media (min-width: 901px) and (max-width: 1100px) {
  .rounds-grid {gap: 24px;}
  .round-card table {font-size: clamp(16px, calc(1.8 * var(--layout-vw)), 20px);}
  .round-card th,  .round-card td {padding: 6px 8px;white-space: normal;}
}

@media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  .js-motion h2.motion-reveal {transition: opacity .75s ease var(--motion-delay, 0ms), translate .85s cubic-bezier(.16, 1, .3, 1) var(--motion-delay, 0ms), scale .85s cubic-bezier(.16, 1, .3, 1) var(--motion-delay, 0ms), filter .7s ease var(--motion-delay, 0ms), transform .3s ease, text-shadow .3s ease, background-color .3s ease, color .3s ease, box-shadow .35s ease;}
}

@keyframes contentReveal {
  from {opacity: 0;transform: translateX(-70px);}
  to {opacity: 1;transform: translateX(0);}
}

@keyframes textSlide {
  from {opacity: 0;transform: translateX(-40px);}
  to {opacity: 1;transform: translateX(0);}
}

/* Match homepage text sizing despite the details layout zoom. */
.hero-message {zoom: calc(1 / .9);}

/* Reveal each full text line without clipping its last letter or descenders. */
.details-heading-text h1::before,
.details-heading-text h1::after {
  width: max-content;
  max-width: none;
  overflow: visible;
  padding-bottom: .2em;
  clip-path: inset(-.2em 100% -.2em -.05em);
}
.details-heading-text h1::before {animation-name: detailsTitleFirstCycle;}
.details-heading-text h1::after {animation-name: detailsTitleSecondCycle;}

@keyframes detailsTitleFirstCycle {
  0%, 3% {clip-path: inset(-.2em 100% -.2em -.05em);}
  23%, 83% {clip-path: inset(-.2em -.05em -.2em -.05em);}
  100% {clip-path: inset(-.2em 100% -.2em -.05em);}
}
@keyframes detailsTitleSecondCycle {
  0%, 26% {clip-path: inset(-.2em 100% -.2em -.05em);}
  47%, 63% {clip-path: inset(-.2em -.05em -.2em -.05em);}
  83%, 100% {clip-path: inset(-.2em 100% -.2em -.05em);}
}

@media (prefers-reduced-motion: reduce) {
  .details-heading-text h1::before,
  .details-heading-text h1::after {animation: none;clip-path: none;}
}

/* Keep the message and stripe aligned, with homepage spacing at each width. */
@media (max-width: 767px) {
  .hero-message {gap: 18px;}
  .message-stripe {width: 7px;flex-basis: 7px;}
}
@media (max-width: 480px) {
  .hero-message {gap: 14px;}
  .message-stripe {width: 6px;flex-basis: 6px;}
}
@media (max-width: 380px) {
  .hero-message {gap: 10px;}
  .message-stripe {width: 5px;flex-basis: 5px;}
}

.small-round-txt {
    color: #fff;
    margin: 5px 0px 10px 0px;
    font-size: 16px;
    font-weight: normal;
    text-align: right;
    padding: 0px 10px 10px 0px;
    width: 100%;
}

.prep-copy-mobile {display:none;}

@media (max-width: 700px) {
  .details-logo-box {width: 150px;margin-bottom: 24px;}
  .details-logo-box .iat-logo {width: 100%;height: auto;}
  .rounds-panel > h2,
  .criteria-inner > h2:not(.syllabus-title),
  .syllabus-title,
  .enroll-inner > h2,
  .route-inner > h2 {font-size: 24px;}
  .rounds-panel > h2 {min-width: 0;padding: 9px 16px;}
  .criteria-inner > h2:not(.syllabus-title) {padding: 10px 12px;}
  .syllabus-title {padding: 8px 24px;}
  .enroll-inner > h2 {width: 100%;max-width: 100%;padding: 8px;line-height: 1.15;font-size: clamp(19px, 6vw, 24px);overflow-wrap: normal;word-break: normal;}
  .enroll-inner > h2 .enroll-brand {white-space: nowrap;}
  .route-inner > h2 {padding: 8px 12px;}
  .syllabus-card p {margin-bottom: 4px;}
  .syllabus-card a {margin-top: 6px;}
}

@media (max-width: 650px) {
  .enroll-layout {width: 100%;margin: 26px auto 0;}
  .enroll-row {left: -10px;width: calc(100% - 40px);min-height: 100px;margin-inline: auto;padding: 12px 76px 12px 18px;border-radius: 20px;}
  .enroll-row + .enroll-row {margin-top: 18px;}
  .enroll-copy h3 {font-size: 18px;line-height: 1.2;}
  .enroll-copy p {margin-top: 5px;font-size: 16px;line-height: 1.2;}
  .enroll-row > img {right: -20px;width: 76px;height: 76px;}
}

@media (max-width: 650px) {
  .route-section {padding: 55px 28px;}
  .route-map {height: auto;margin: 38px auto 0;display: grid;gap: 34px;}
  .route-axis,
  .route-step .route-marker {display: none;}
  .route-step {position: relative;left: auto!important;right: auto!important;width: 100%;height: auto;min-height: 0;padding: 0;display: block;}
  .route-section .route-step::before {position: absolute;z-index: 3;top: -18px;left: -18px;width: 46px;height: 46px;display: grid;place-items: center;border: 2px solid #fff;border-radius: 50%;color: #fff;font-size: 24px;font-weight: 700;line-height: 1;}
  .route-prepare::before {content: "1";background: #ef382c;}
  .route-appear::before {content: "2";background: #08afd8;}
  .route-results::before {content: "3";background: #f77716;}
  .route-section .route-step .route-card {width: 100%;min-height: 0;padding: 30px 16px 20px;border: 2px solid var(--route);border-radius: 18px;background: #1d2c39;text-align: center;}
  .route-section .route-card h3 {font-size: 20px;line-height: 1.2;}
  .route-section .route-card p {margin-top: 10px;font-size: 18px;line-height: 1.35;}
}

@media (max-width: 560px) {
  .prep-copy-desktop {display:none;}
  .prep-copy-mobile {display:inline;}
  .preparation-section {padding-inline: 12px;}
  .preparation-inner {width: 100%;}
  .preparation-grid {width: 100%;margin: 28px auto 0;grid-template-columns: 1fr;gap: 16px;}
  .preparation-section .preparation-card {width: 100%;min-height: 0;padding: 18px 16px;border-radius: 22px;text-align: center;}
  .preparation-section .preparation-card h3 {font-size: 20px;}
  .preparation-section .preparation-rule {width: 125px;margin: 9px auto;}
  .preparation-section .preparation-card p {font-size: 18px;line-height: 1.25;}
  .preparation-section .preparation-card > a {position: static;width: 32px;height: 32px;margin: 12px auto 0;}
  .preparation-section .preparation-card > a svg {width: 26px;height: 22px;}
}
