:root {
    --iit-font-body: "DM Sans", sans-serif;
    --iit-font-heading: "Playfair Display", Georgia, serif;
    --iit-text-scale: 1;
    --iit-heading-scale: 1;
}

/* Theme palette (IIT Patna brand: Congress Blue #00487E, Sunshade #FF8B25, Foam #EBFAFD).
   Admin -> Appearance overrides these; every page and section reads them. */
:root {
    --iit-primary: #00487e;
    /* buttons, links, highlights (Congress Blue) */
    --iit-primary-hover: #003660;
    --iit-button-text: #ffffff;
    --iit-nav-active: #ff8b25;
    --iit-header-bg: #ffffff;
    --iit-header-text: #0d2a40;
    --iit-topbar-bg: #ff8b25;
    --iit-topbar-text: #0d2a40;
    --iit-navy: #003a66;
    /* dark sections and headings */
    --iit-deep: #002f54;
    /* hero and darkest panels */
    --iit-darkest: #00243f;
    /* footer */
    --iit-gold: #ff8b25;
    /* accent (Sunshade) */
    --iit-cream: #ebfafd;
    /* page background (Foam) */
    --iit-mint: #d6eef6;
    /* soft tinted sections */
    --iit-mint-bright: #8fd3ff;
    /* light accent on dark backgrounds */
    --iit-ink: #0d2a40;
    /* body text */
    --iit-muted: #5b6e7f;
    --iit-white: #ffffff;
    --iit-border: rgba(16, 41, 52, 0.1);
    --iit-shadow: 0 22px 54px rgba(8, 44, 59, 0.12);
    --iit-radius: 12px;
    --iit-radius-sm: 8px;
    --iit-max-width: 1160px;
    --iit-transition: 0.25s ease;
}

* {
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

body {
    margin: 0;
    background: var(--iit-cream);
    color: var(--iit-ink);
    font: calc(16px * var(--iit-text-scale))/1.5 var(--iit-font-body);
}

a {
    text-decoration: none;
    color: inherit;
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
    outline: 3px solid var(--iit-gold);
    outline-offset: 2px;
}

img {
    max-width: 100%;
    display: block;
}

.wrap {
    width: min(var(--iit-max-width), calc(100% - 40px));
    margin: auto;
}

.top {
    background: var(--iit-topbar-bg);
    color: var(--iit-topbar-text);
    font-size: calc(12px * var(--iit-text-scale));
    font-weight: 700;
}

.top .wrap {
    min-height: 35px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.head {
    height: 80px;
    background: var(--iit-header-bg);
    color: var(--iit-header-text);
    position: sticky;
    top: 0;
    z-index: 10;
    box-shadow: 0 1px 0 rgba(8, 44, 59, 0.04);
}

.head .wrap {
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.brand {
    display: flex;
    align-items: center;
    gap: 11px;
    font-size: calc(18px * var(--iit-text-scale));
    font-weight: 700;
}

.brand-logo {
    width: 190px;
    height: 58px;
    object-fit: contain;
    display: block;
}

.seal {
    width: 43px;
    height: 43px;
    border: 2px solid var(--iit-primary);
    border-radius: 50%;
    display: grid;
    place-items: center;
    color: var(--iit-primary);
    font: 700 calc(17px * var(--iit-text-scale)) Georgia, serif;
    background: rgba(0, 130, 125, 0.04);
}

.brand small {
    display: block;
    color: #728289;
    font-size: calc(8px * var(--iit-text-scale));
    text-transform: uppercase;
    letter-spacing: 1.1px;
}

.nav {
    display: flex;
    align-items: center;
    gap: 25px;
    font-size: calc(13px * var(--iit-text-scale));
    font-weight: 600;
}

.menu {
    display: none;
}

.nav a:hover,
.nav a.active {
    color: var(--iit-primary);
}

.button,
button.button,
input.button,
.btn-primary {
    display: inline-block;
    border: 0;
    border-radius: 4px;
    background: var(--iit-primary);
    color: var(--iit-button-text);
    padding: 13px 20px;
    font: 700 calc(13px * var(--iit-text-scale)) var(--iit-font-body);
    cursor: pointer;
    transition: background var(--iit-transition), transform var(--iit-transition), box-shadow var(--iit-transition);
}

.button:hover,
button.button:hover,
.btn-primary:hover {
    background: var(--iit-primary-hover);
    transform: translateY(-1px);
    box-shadow: 0 12px 22px rgba(0, 130, 125, 0.18);
}

.ghost {
    border: 1px solid rgba(125, 224, 204, 0.6);
    background: transparent;
    color: var(--iit-ink);
}

.ghost:hover {
    background: rgba(255, 255, 255, 0.08);
}

.hero {
    background: var(--iit-deep);
    color: var(--iit-white);
    position: relative;
    overflow: hidden;
}

.hero:before {
    content: "";
    position: absolute;
    width: 700px;
    height: 700px;
    border: 1px solid rgba(122, 222, 204, 0.24);
    border-radius: 50%;
    right: -220px;
    top: -380px;
}

.hero .wrap {
    position: relative;
    z-index: 1;
    padding: 80px 0 90px;
}

.crumb {
    font-size: calc(12px * var(--iit-text-scale));
    color: #bdd0ce;
    margin-bottom: 30px;
}

.crumb a {
    color: var(--iit-mint-bright);
}

.eyebrow {
    color: var(--iit-mint-bright);
    text-transform: uppercase;
    letter-spacing: 2px;
    font-size: calc(11px * var(--iit-text-scale));
    font-weight: 700;
}

.eyebrow:before {
    content: "";
    display: inline-block;
    width: 27px;
    height: 2px;
    background: var(--iit-gold);
    margin: 0 9px 3px 0;
}

h1,
h2,
h3,
.hero h1,
.hero h2,
.section h2 {
    margin: 0;
    line-height: 1.1;
    font-family: var(--iit-font-heading);
}

h1 {
    font-size: calc(clamp(42px, 5vw, 68px) * var(--iit-heading-scale));
    letter-spacing: -1.7px;
    margin: 16px 0;
}

h1 em {
    font-style: normal;
    color: var(--iit-gold);
}

.section {
    padding: 82px 0;
}

.section p {
    color: var(--iit-muted);
}

.cta {
    background: var(--iit-mint);
    padding: 26px 0;
    border-top: 3px solid var(--iit-gold);
}

.cta .wrap {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
}

.formbox,
.callout,
.contactcard,
.assistcard,
.benefit,
.value,
.fact,
.rank,
.product-card,
.news,
.program-card {
    border-radius: var(--iit-radius);
    box-shadow: var(--iit-shadow);
}

@media (max-width: 760px) {
    body[data-iit-page=home] .top {
        display: none;
    }

    .head {
        height: auto;
        min-height: 80px;
    }

    .nav {
        display: none;
    }

    .menu {
        display: block;
        border: 0;
        border-radius: 4px;
        background: var(--iit-primary);
        color: var(--iit-white);
        padding: 10px 13px;
        font: 700 calc(11px * var(--iit-text-scale)) var(--iit-font-body);
        letter-spacing: 0.7px;
        cursor: pointer;
    }

    .cta .wrap,
    .top .wrap {
        display: block;
        padding: 12px 0;
    }
}


/* Page styles are scoped by body[data-iit-page] to avoid cross-page overrides. */
/* home page styles */

body[data-iit-page=home] {
    --navy: var(--iit-navy);
    --deep: var(--iit-deep);
    --teal: var(--iit-primary);
    --gold: var(--iit-gold);
    --cream: var(--iit-cream);
    --mint: var(--iit-mint);
    --ink: var(--iit-ink);
    --muted: var(--iit-muted);
    --white: #fff
}

body[data-iit-page=home] * {
    box-sizing: border-box
}

body[data-iit-page=home] html {
    scroll-behavior: smooth
}

body[data-iit-page=home] {
    margin: 0;
    overflow-x: clip;
    background: var(--cream);
    color: var(--ink);
    font: calc(16px * var(--iit-text-scale))/1.5 var(--iit-font-body)
}

body[data-iit-page=home] .wrap {
    width: min(1160px, calc(100% - 40px));
    margin: auto
}

body[data-iit-page=home] a {
    text-decoration: none;
    color: inherit
}

body[data-iit-page=home] .top {
    background: var(--gold);
    font-size: calc(12px * var(--iit-text-scale));
    font-weight: 700
}

body[data-iit-page=home] .top .wrap {
    min-height: 35px;
    display: flex;
    align-items: center;
    justify-content: space-between
}

body[data-iit-page=home] .top-links {
    display: flex;
    gap: 23px
}

body[data-iit-page=home] .head {
    height: 80px;
    background: var(--iit-header-bg)
}

body[data-iit-page=home] .head .wrap {
    height: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center
}

body[data-iit-page=home] .brand {
    display: flex;
    align-items: center;
    gap: 11px;
    font-weight: 700;
    font-size: calc(18px * var(--iit-text-scale))
}

body[data-iit-page=home] .brand-logo {
    width: 190px;
    height: auto;
    object-fit: contain;
    display: block;
    max-height: 58px
}

body[data-iit-page=home] .nav {
    display: flex;
    align-items: center;
    gap: 26px;
    font-size: calc(13px * var(--iit-text-scale));
    font-weight: 600
}

body[data-iit-page=home] .nav a:not(.button):hover {
    color: var(--teal)
}

body[data-iit-page=home] .button {
    display: inline-block;
    border: 0;
    background: var(--teal);
    color: #fff;
    border-radius: 4px;
    padding: 12px 19px;
    font: 700 calc(13px * var(--iit-text-scale)) var(--iit-font-body);
    cursor: pointer;
    transition: .2s
}

body[data-iit-page=home] .button:hover {
    background: var(--iit-primary-hover);
    transform: translateY(-2px);
    box-shadow: 0 8px 18px color-mix(in srgb, var(--iit-primary) 20%, transparent)
}

body[data-iit-page=home] .menu {
    display: none;
    border: 0;
    border-radius: 4px;
    background: var(--teal);
    color: #fff;
    padding: 10px 13px;
    font: 700 calc(11px * var(--iit-text-scale)) var(--iit-font-body);
    letter-spacing: .7px;
    cursor: pointer
}

body[data-iit-page=home] .hero {
    background: var(--deep);
    color: #fff;
    min-height: 585px;
    overflow: hidden;
    position: relative
}

body[data-iit-page=home] .hero:before {
    content: "";
    position: absolute;
    width: 680px;
    height: 680px;
    border: 1px solid color-mix(in srgb, var(--iit-mint-bright) 17%, transparent);
    border-radius: 50%;
    right: -220px;
    top: -345px
}

body[data-iit-page=home] .hero .wrap {
    min-height: 585px;
    display: grid;
    grid-template-columns: 1.1fr .9fr;
    gap: 35px;
    align-items: center;
    position: relative;
    z-index: 1
}

body[data-iit-page=home] .eyebrow {
    color: var(--iit-mint-bright);
    text-transform: uppercase;
    letter-spacing: 2px;
    font-size: calc(11px * var(--iit-text-scale));
    font-weight: 700
}

body[data-iit-page=home] .eyebrow:before {
    content: "";
    display: inline-block;
    width: 27px;
    height: 2px;
    background: var(--gold);
    margin: 0 9px 3px 0
}

body[data-iit-page=home] h1,
body[data-iit-page=home] h2,
body[data-iit-page=home] h3 {
    line-height: 1.1;
    margin: 0
}

body[data-iit-page=home] h1,
body[data-iit-page=home] h2 {
    font-family: var(--iit-font-heading)
}

body[data-iit-page=home] h1 {
    font-size: calc(clamp(42px, 5vw, 71px) * var(--iit-heading-scale));
    letter-spacing: -2px;
    margin: 16px 0 19px;
    max-width: 670px
}

body[data-iit-page=home] h1 em {
    font-style: normal;
    color: var(--gold)
}

body[data-iit-page=home] .hero p {
    color: #d4e3e0;
    max-width: 540px;
    margin: 0 0 28px
}

body[data-iit-page=home] .button.gold {
    background: var(--gold);
    color: var(--ink);
    margin-right: 10px
}

body[data-iit-page=home] .button.ghost {
    background: transparent;
    border: 1px solid #ffffff85
}

body[data-iit-page=home] .trust {
    display: flex;
    gap: 30px;
    margin-top: 40px
}

body[data-iit-page=home] .trust b {
    display: block;
    color: var(--gold);
    font-size: calc(21px * var(--iit-text-scale))
}

body[data-iit-page=home] .trust span {
    font-size: calc(11px * var(--iit-text-scale));
    color: #c7d6d4
}

body[data-iit-page=home] .visual {
    height: 430px;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center
}

body[data-iit-page=home] .campus {
    width: 345px;
    height: 402px;
    border-radius: 170px 170px 9px 9px;
    background: linear-gradient(180deg, #00000008, #00000038), url("https://images.unsplash.com/photo-1562774053-701939374585?auto=format&fit=crop&w=900&q=85") center/cover
}

body[data-iit-page=home] .float {
    position: absolute;
    background: #fff;
    color: var(--ink);
    padding: 13px 16px;
    border-radius: 6px;
    box-shadow: 0 15px 35px #00141d70;
    font-size: calc(12px * var(--iit-text-scale))
}

body[data-iit-page=home] .float b {
    display: block;
    font-size: calc(13px * var(--iit-text-scale))
}

body[data-iit-page=home] .float small {
    color: #69797e
}

body[data-iit-page=home] .first {
    left: -3px;
    top: 52px
}

body[data-iit-page=home] .second {
    right: -3px;
    bottom: 34px
}

body[data-iit-page=home] .partner {
    background: #fff;
    border-bottom: 1px solid #e1e8e5;
    padding: 22px 0
}

body[data-iit-page=home] .partner .wrap {
    display: flex;
    align-items: center;
    gap: 35px
}

body[data-iit-page=home] .partner p {
    margin: 0;
    max-width: 170px;
    font-size: calc(12px * var(--iit-text-scale));
    color: var(--muted)
}

body[data-iit-page=home] .rankbar {
    display: flex;
    flex: 1;
    justify-content: space-around;
    gap: 15px
}

body[data-iit-page=home] .rankbar span {
    color: #879598;
    font: 700 calc(13px * var(--iit-text-scale)) Georgia
}

body[data-iit-page=home] .section {
    padding: 88px 0
}

body[data-iit-page=home] .section-head {
    max-width: 650px;
    margin-bottom: 38px
}

body[data-iit-page=home] .section h2 {
    font-size: calc(clamp(32px, 3.5vw, 48px) * var(--iit-heading-scale));
    letter-spacing: -1px;
    margin-top: 13px
}

body[data-iit-page=home] .section-head p {
    color: var(--muted);
    margin: 15px 0 0
}

body[data-iit-page=home] .cards {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px
}

body[data-iit-page=home] .card {
    background: #fff;
    border: 1px solid #dfe7e4;
    transition: .25s
}

body[data-iit-page=home] .card:hover {
    transform: translateY(-7px);
    box-shadow: 0 18px 35px #15334218
}

body[data-iit-page=home] .art {
    height: 150px;
    padding: 25px;
    display: flex;
    align-items: center;
    color: #fff;
    font: 700 calc(30px * var(--iit-text-scale)) Georgia;
    letter-spacing: 1px
}

body[data-iit-page=home] .card:nth-child(1) .art {
    background: linear-gradient(125deg, var(--iit-primary), color-mix(in srgb, var(--iit-primary) 70%, #ffffff))
}

body[data-iit-page=home] .card:nth-child(2) .art {
    background: linear-gradient(125deg, #173a6d, #3c89c0)
}

body[data-iit-page=home] .card:nth-child(3) .art {
    background: linear-gradient(125deg, #592b60, #c76391)
}

body[data-iit-page=home] .cardbody {
    padding: 22px
}

body[data-iit-page=home] .tag {
    color: var(--teal);
    text-transform: uppercase;
    letter-spacing: 1px;
    font-size: calc(10px * var(--iit-text-scale));
    font-weight: 700
}

body[data-iit-page=home] .card h3 {
    font-size: calc(20px * var(--iit-heading-scale));
    margin: 8px 0
}

body[data-iit-page=home] .card p {
    min-height: 64px;
    margin: 0;
    color: var(--muted);
    font-size: calc(13px * var(--iit-text-scale))
}

body[data-iit-page=home] .cardfoot {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 18px;
    padding-top: 14px;
    border-top: 1px solid #edf0ef;
    font-size: calc(12px * var(--iit-text-scale));
    font-weight: 700
}

body[data-iit-page=home] .arrow {
    color: var(--teal);
    font-size: calc(21px * var(--iit-text-scale))
}

body[data-iit-page=home] .advantage {
    background: var(--mint)
}

body[data-iit-page=home] .advgrid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 68px;
    align-items: center
}

body[data-iit-page=home] .features {
    padding: 0;
    list-style: none;
    margin: 25px 0 0
}

body[data-iit-page=home] .features li {
    display: flex;
    gap: 12px;
    margin: 15px 0;
    font-size: calc(14px * var(--iit-text-scale))
}

body[data-iit-page=home] .tick {
    flex: 0 0 22px;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    background: var(--teal);
    color: #fff;
    display: grid;
    place-items: center;
    font-size: calc(12px * var(--iit-text-scale))
}

body[data-iit-page=home] .features small {
    display: block;
    color: var(--muted);
    margin-top: 3px
}

body[data-iit-page=home] .stats {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 13px
}

body[data-iit-page=home] .stat {
    background: #fff;
    padding: 23px 20px;
    border-left: 3px solid var(--gold);
    min-height: 135px
}

body[data-iit-page=home] .stat b {
    display: block;
    color: var(--teal);
    font: calc(32px * var(--iit-text-scale)) var(--iit-font-heading)
}

body[data-iit-page=home] .stat span {
    font-size: calc(12px * var(--iit-text-scale));
    color: var(--muted)
}

body[data-iit-page=home] .audience {
    background: #fff
}

body[data-iit-page=home] .audgrid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px
}

body[data-iit-page=home] .aud {
    padding: 25px;
    border-top: 3px solid var(--gold);
    background: var(--cream)
}

body[data-iit-page=home] .aud i {
    display: grid;
    place-items: center;
    width: 42px;
    height: 42px;
    border-radius: 50%;
    background: var(--mint);
    color: var(--teal);
    font-weight: 700;
    font-style: normal
}

body[data-iit-page=home] .aud h3 {
    font-size: calc(17px * var(--iit-heading-scale));
    margin: 18px 0 8px
}

body[data-iit-page=home] .aud p {
    font-size: calc(13px * var(--iit-text-scale));
    color: var(--muted);
    margin: 0
}

body[data-iit-page=home] .gallery {
    background: linear-gradient(180deg, #f4f9f8 0%, #eef5f4 100%);
    position: relative;
    overflow: hidden
}

body[data-iit-page=home] .gallery:before {
    content: "";
    position: absolute;
    inset: 28px 0 auto;
    height: 150px;
    background: radial-gradient(circle at center, rgba(0, 130, 125, .12), transparent 62%);
    pointer-events: none
}

body[data-iit-page=home] .gallery-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 22px;
    align-items: stretch;
    position: relative;
    z-index: 1
}

body[data-iit-page=home] .gallery-card {
    background: rgba(255, 255, 255, .78);
    border: 1px solid rgba(11, 62, 74, .08);
    border-radius: 24px;
    padding: 12px;
    box-shadow: 0 18px 32px rgba(8, 44, 59, .08);
    backdrop-filter: blur(2px)
}

body[data-iit-page=home] .gallery-card:nth-child(1),
body[data-iit-page=home] .gallery-card:nth-child(4) {
    transform: translateY(18px)
}

body[data-iit-page=home] .gallery-media {
    position: relative;
    height: 245px;
    border-radius: 18px;
    overflow: hidden;
    background: center/cover no-repeat
}

body[data-iit-page=home] .gallery-card.tall .gallery-media {
    height: 295px
}

body[data-iit-page=home] .gallery-card.wide {
    grid-column: span 2
}

body[data-iit-page=home] .gallery-card.wide .gallery-media {
    height: 270px
}

body[data-iit-page=home] .gallery-media:after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(8, 44, 59, 0) 30%, rgba(8, 44, 59, .7))
}

body[data-iit-page=home] .gallery-meta {
    position: absolute;
    left: 16px;
    right: 16px;
    bottom: 15px;
    z-index: 1;
    color: #fff
}

body[data-iit-page=home] .gallery-meta small {
    display: block;
    font-size: calc(10px * var(--iit-text-scale));
    letter-spacing: 1.3px;
    text-transform: uppercase;
    opacity: .9
}

body[data-iit-page=home] .gallery-meta b {
    display: block;
    margin-top: 6px;
    font: 600 calc(20px * var(--iit-text-scale)) var(--iit-font-heading)
}

body[data-iit-page=home] .gallery-card-body {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
    padding: 14px 6px 4px
}

body[data-iit-page=home] .gallery-card-body span {
    font-size: calc(12px * var(--iit-text-scale));
    letter-spacing: 1px;
    text-transform: uppercase;
    color: var(--teal);
    font-weight: 700
}

body[data-iit-page=home] .gallery-card-body i {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: var(--mint);
    color: var(--teal);
    display: grid;
    place-items: center;
    font-style: normal;
    font-size: calc(12px * var(--iit-text-scale))
}

body[data-iit-page=home] .alumni {
    background: linear-gradient(180deg, #f7f7f7 0%, #edf2f1 100%);
    padding: 76px 0 50px
}

body[data-iit-page=home] .alumni-wrap {
    padding: 0 14px
}

body[data-iit-page=home] .alumni-row {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 24px;
    align-items: stretch
}

body[data-iit-page=home] .alumni-card {
    background: #f7f7f7;
    border: 4px solid #0d2c79;
    border-radius: 28px 28px 20px 20px;
    overflow: hidden;
    box-shadow: 0 18px 32px rgba(12, 44, 121, .08)
}

body[data-iit-page=home] .alumni-card-inner {
    background: #f1f1f1;
    padding: 18px 18px 0
}

body[data-iit-page=home] .alumni-portrait-wrap {
    width: 100%;
    aspect-ratio: 1 / 1.08;
    border-radius: 50% 50% 26px 26px;
    overflow: hidden;
    background: #e7e7e7;
    border: 4px solid #0d2c79;
    position: relative
}

body[data-iit-page=home] .alumni-portrait-wrap:before {
    content: "";
    position: absolute;
    inset: 16px 16px auto auto;
    width: 62%;
    height: 62%;
    border-radius: 50%;
    background: rgba(255, 255, 255, .18);
    filter: blur(18px)
}

body[data-iit-page=home] .alumni-portrait {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block
}

body[data-iit-page=home] .alumni-name {
    background: linear-gradient(180deg, #f3c14e, #f0b736);
    color: #0c1e38;
    min-height: 90px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 14px 10px;
    font-size: calc(13px * var(--iit-text-scale));
    letter-spacing: .04em;
    font-weight: 800;
    text-transform: uppercase;
    line-height: 1.25
}

body[data-iit-page=home] .alumni-name strong {
    display: block;
    font-size: calc(13px * var(--iit-text-scale))
}

body[data-iit-page=home] .alumni-name span {
    display: block;
    margin-top: 4px;
    font-size: calc(11px * var(--iit-text-scale));
    letter-spacing: .02em;
    text-transform: none;
    font-weight: 600;
    opacity: .9
}

body[data-iit-page=home] .alumni-brand {
    background: #fff;
    border-top: 3px solid #0d2c79;
    min-height: 90px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 16px 12px
}

body[data-iit-page=home] .alumni-brand img {
    display: block;
    max-width: 140px;
    max-height: 40px;
    object-fit: contain;
    filter: saturate(.9)
}

body[data-iit-page=home] .alumni-dots {
    display: flex;
    justify-content: center;
    gap: 10px;
    margin-top: 20px
}

body[data-iit-page=home] .alumni-dots span {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    display: block;
    background: rgba(13, 44, 121, .22)
}

body[data-iit-page=home] .alumni-dots span.active {
    background: #0d2c79;
    box-shadow: 0 0 0 2px rgba(13, 44, 121, .12)
}

@media(max-width:1200px) {
    body[data-iit-page=home] .alumni-row {
        grid-template-columns: repeat(3, minmax(0, 1fr))
    }
}

@media(max-width:760px) {
    body[data-iit-page=home] .alumni-row {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }
}

@media(max-width:520px) {
    body[data-iit-page=home] .alumni-row {
        grid-template-columns: 1fr
    }
}

body[data-iit-page=home] .stories {
    background: var(--deep);
    color: #fff
}

body[data-iit-page=home] .stories .section-head p {
    color: #bcd0cd
}

body[data-iit-page=home] .testgrid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 18px
}

body[data-iit-page=home] .testimonial {
    background: #fff;
    color: var(--ink);
    padding: 27px 24px
}

body[data-iit-page=home] .testimonial q {
    display: block;
    font: calc(17px * var(--iit-text-scale))/1.55 var(--iit-font-heading);
    min-height: 132px
}

body[data-iit-page=home] .testimonial q:before {
    color: var(--gold);
    font: calc(50px * var(--iit-text-scale)) Georgia;
    line-height: 0;
    vertical-align: -20px
}

body[data-iit-page=home] .student {
    display: flex;
    gap: 10px;
    align-items: center;
    border-top: 1px solid #edf0ef;
    padding-top: 15px;
    margin-top: 15px
}

body[data-iit-page=home] .avatar {
    width: 37px;
    height: 37px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    background: linear-gradient(135deg, #e6ae76, #704126);
    color: #fff;
    font-weight: 700
}

body[data-iit-page=home] .student b,
body[data-iit-page=home] .student small {
    display: block;
    font-size: calc(12px * var(--iit-text-scale))
}

body[data-iit-page=home] .student small {
    color: #718084
}

body[data-iit-page=home] .newsgrid {
    display: grid;
    grid-template-columns: 1.25fr 1fr 1fr;
    gap: 18px
}

body[data-iit-page=home] .news {
    background: #fff;
    padding: 23px;
    border: 1px solid #dfe7e4
}

body[data-iit-page=home] .news:first-child {
    background: var(--navy);
    color: #fff
}

body[data-iit-page=home] .news small {
    font-weight: 700;
    color: var(--teal);
    font-size: calc(10px * var(--iit-text-scale));
    letter-spacing: 1px
}

body[data-iit-page=home] .news:first-child small {
    color: var(--gold)
}

body[data-iit-page=home] .news h3 {
    font: calc(20px * var(--iit-heading-scale))/1.3 var(--iit-font-heading);
    margin: 13px 0
}

body[data-iit-page=home] .news p {
    font-size: calc(12px * var(--iit-text-scale));
    color: var(--muted)
}

body[data-iit-page=home] .news:first-child p {
    color: #c4d4d2
}

body[data-iit-page=home] .news a {
    font-size: calc(12px * var(--iit-text-scale));
    font-weight: 700;
    color: var(--teal)
}

body[data-iit-page=home] .enquire {
    background: var(--gold);
    padding: 65px 0
}

body[data-iit-page=home] .enquire .wrap {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px
}

body[data-iit-page=home] .enquire h2 {
    font: calc(38px * var(--iit-heading-scale)) var(--iit-font-heading)
}

body[data-iit-page=home] .enquire p {
    margin: 7px 0 0
}

body[data-iit-page=home] .enquire .button {
    background: var(--deep);
    padding: 15px 27px;
    white-space: nowrap
}

body[data-iit-page=home] .footer {
    background: #08212b;
    color: #d3e0df;
    padding: 52px 0 20px
}

body[data-iit-page=home] .footgrid {
    display: grid;
    grid-template-columns: 1.4fr 1fr 1fr;
    gap: 40px;
    padding-bottom: 35px
}

body[data-iit-page=home] .footer .brand {
    color: #fff
}

body[data-iit-page=home] .footer p,
body[data-iit-page=home] .footer a {
    font-size: calc(12px * var(--iit-text-scale));
    color: #9fb1b4
}

body[data-iit-page=home] .footer a {
    display: block;
    margin: 8px 0
}

body[data-iit-page=home] .footer h4 {
    color: #fff;
    margin: 0 0 14px;
    font-size: calc(12px * var(--iit-text-scale))
}

body[data-iit-page=home] .copy {
    display: flex;
    justify-content: space-between;
    border-top: 1px solid #ffffff1a;
    padding-top: 18px;
    color: #82969a;
    font-size: calc(11px * var(--iit-text-scale))
}

@media(max-width:800px) {

    body[data-iit-page=home] .nav,
    body[data-iit-page=home] .top-links {
        display: none
    }

    body[data-iit-page=home] .menu {
        display: block
    }

    body[data-iit-page=home] .nav.mobile-open {
        position: absolute;
        display: flex;
        z-index: 30;
        top: 70px;
        right: 20px;
        width: min(280px, calc(100vw - 40px));
        padding: 12px;
        background: #fff;
        border: 1px solid #dbe5e2;
        border-radius: 7px;
        box-shadow: 0 16px 35px color-mix(in srgb, var(--iit-navy) 17%, transparent);
        flex-direction: column;
        align-items: stretch;
        gap: 0
    }

    body[data-iit-page=home] .nav.mobile-open a {
        padding: 12px 10px;
        border-bottom: 1px solid #edf1ef
    }

    body[data-iit-page=home] .nav.mobile-open a:last-child {
        margin: 8px 0 0;
        text-align: center;
        border-bottom: 0
    }

    body[data-iit-page=home] .hero .wrap,
    body[data-iit-page=home] .advgrid {
        grid-template-columns: 1fr
    }

    body[data-iit-page=home] .hero .wrap {
        padding-top: 53px;
        gap: 0
    }

    body[data-iit-page=home] .visual {
        height: 345px
    }

    body[data-iit-page=home] .campus {
        width: 255px;
        height: 305px
    }

    body[data-iit-page=home] .cards,
    body[data-iit-page=home] .testgrid,
    body[data-iit-page=home] .gallery-grid {
        grid-template-columns: 1fr
    }

    body[data-iit-page=home] .gallery-item.tall,
    body[data-iit-page=home] .gallery-item:nth-child(5) {
        grid-column: auto;
        grid-row: auto
    }

    body[data-iit-page=home] .card p,
    body[data-iit-page=home] .testimonial q {
        min-height: 0
    }

    body[data-iit-page=home] .section {
        padding: 64px 0
    }

    body[data-iit-page=home] .audgrid {
        grid-template-columns: 1fr
    }

    body[data-iit-page=home] .newsgrid {
        grid-template-columns: 1fr
    }

    body[data-iit-page=home] .partner .wrap {
        flex-direction: column;
        align-items: flex-start
    }

    body[data-iit-page=home] .rankbar {
        width: 100%;
        flex-wrap: wrap;
        justify-content: space-between
    }

    body[data-iit-page=home] .footgrid {
        grid-template-columns: 1fr 1fr
    }
}

@media(max-width:460px) {
    body[data-iit-page=home] .wrap {
        width: min(100% - 30px, 1160px)
    }

    body[data-iit-page=home] .top .wrap {
        justify-content: center
    }

    body[data-iit-page=home] .hero .button {
        display: block;
        text-align: center;
        margin: 10px 0
    }

    body[data-iit-page=home] .trust {
        gap: 13px
    }

    body[data-iit-page=home] .stats,
    body[data-iit-page=home] .footgrid {
        grid-template-columns: 1fr
    }

    body[data-iit-page=home] .enquire .wrap {
        align-items: flex-start;
        flex-direction: column
    }

    body[data-iit-page=home] .copy {
        display: block
    }

    body[data-iit-page=home] .copy span+span {
        display: block;
        margin-top: 8px
    }

    body[data-iit-page=home] .first {
        left: 0
    }

    body[data-iit-page=home] .second {
        right: 0
    }
}

body[data-iit-page=home] .success-stats {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1px;
    background: #ffffff2b;
    margin: 0 0 34px
}

body[data-iit-page=home] .success-stat {
    background: #ffffff12;
    padding: 22px
}

body[data-iit-page=home] .success-stat b {
    display: block;
    color: var(--gold);
    font: calc(31px * var(--iit-text-scale)) var(--iit-font-heading)
}

body[data-iit-page=home] .success-stat span {
    font-size: calc(11px * var(--iit-text-scale));
    color: #c4d5d2
}

body[data-iit-page=home] .success-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 18px
}

body[data-iit-page=home] .success-card {
    background: #fff;
    color: var(--ink);
    padding: 0 24px 23px;
    border: 1px solid rgba(10, 55, 68, .08);
    border-radius: 16px;
    box-shadow: 0 10px 22px rgba(8, 44, 59, .06);
    transition: transform .25s ease, box-shadow .25s ease
}

body[data-iit-page=home] .success-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 18px 32px rgba(8, 44, 59, .12)
}

body[data-iit-page=home] .success-card .story-top {
    background: linear-gradient(135deg, #eaf4f3, #dfeee9);
    margin: 0 -24px 20px;
    padding: 18px 24px;
    display: flex;
    align-items: center;
    gap: 12px
}

body[data-iit-page=home] .success-card .avatar {
    width: 46px;
    height: 46px
}

body[data-iit-page=home] .success-card h3 {
    font-size: calc(17px * var(--iit-heading-scale))
}

body[data-iit-page=home] .success-card small {
    display: block;
    color: var(--muted);
    font-size: calc(11px * var(--iit-text-scale));
    margin-top: 3px
}

body[data-iit-page=home] .success-card p {
    font-size: calc(13px * var(--iit-text-scale));
    color: var(--muted);
    min-height: 80px
}

body[data-iit-page=home] .journey-line {
    display: flex;
    align-items: center;
    gap: 8px;
    border-top: 1px solid #e8efec;
    padding-top: 14px;
    font-size: calc(11px * var(--iit-text-scale));
    font-weight: 700;
    color: var(--teal)
}

body[data-iit-page=home] .journey-line i {
    font-style: normal;
    background: var(--teal);
    color: #fff;
    border-radius: 50%;
    width: 19px;
    height: 19px;
    display: grid;
    place-items: center;
    font-size: calc(10px * var(--iit-text-scale))
}

@media(max-width:800px) {

    body[data-iit-page=home] .success-stats,
    body[data-iit-page=home] .success-grid {
        grid-template-columns: 1fr 1fr
    }
}

@media(max-width:460px) {

    body[data-iit-page=home] .success-stats,
    body[data-iit-page=home] .success-grid {
        grid-template-columns: 1fr
    }

    body[data-iit-page=home] .success-card p {
        min-height: 0
    }
}

body[data-iit-page=home] .convocation {
    background: #fff
}

body[data-iit-page=home] .convocation-head {
    display: flex;
    justify-content: space-between;
    align-items: end;
    gap: 30px;
    margin-bottom: 35px
}

body[data-iit-page=home] .convocation-head .section-head {
    margin: 0
}

body[data-iit-page=home] .convocation-note {
    max-width: 280px;
    color: var(--muted);
    font-size: calc(13px * var(--iit-text-scale));
    margin: 0 0 5px
}

body[data-iit-page=home] .convocation-grid {
    display: grid;
    grid-template-columns: 1.4fr .9fr .9fr;
    grid-template-rows: 185px 185px;
    gap: 13px
}

body[data-iit-page=home] .convocation-photo {
    position: relative;
    overflow: hidden;
    min-height: 160px;
    background: center/cover
}

body[data-iit-page=home] .convocation-photo:after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, transparent 45%, color-mix(in srgb, var(--iit-navy) 73%, transparent))
}

body[data-iit-page=home] .convocation-photo:first-child {
    grid-row: span 2;
    background-image: url("https://images.unsplash.com/photo-1523050854058-8df90110c9f1?auto=format&fit=crop&w=1100&q=85")
}

body[data-iit-page=home] .convocation-photo:nth-child(2) {
    background-image: url("https://images.unsplash.com/photo-1541339907198-e08756dedf3f?auto=format&fit=crop&w=700&q=85")
}

body[data-iit-page=home] .convocation-photo:nth-child(3) {
    background-image: url("https://images.unsplash.com/photo-1523240795612-9a054b0db644?auto=format&fit=crop&w=700&q=85")
}

body[data-iit-page=home] .convocation-photo:nth-child(4) {
    background-image: url("https://images.unsplash.com/photo-1562774053-701939374585?auto=format&fit=crop&w=700&q=85")
}

body[data-iit-page=home] .convocation-photo:nth-child(5) {
    background-image: url("https://images.unsplash.com/photo-1517486808906-6ca8b3f04846?auto=format&fit=crop&w=700&q=85")
}

body[data-iit-page=home] .convocation-caption {
    position: absolute;
    z-index: 1;
    left: 18px;
    bottom: 15px;
    color: #fff
}

body[data-iit-page=home] .convocation-caption b {
    display: block;
    font: calc(18px * var(--iit-text-scale)) var(--iit-font-heading)
}

body[data-iit-page=home] .convocation-caption small {
    font-size: calc(10px * var(--iit-text-scale));
    letter-spacing: .8px;
    text-transform: uppercase;
    color: #d3e3e0
}

body[data-iit-page=home] .convocation-photo:first-child .convocation-caption b {
    font-size: calc(25px * var(--iit-text-scale))
}

body[data-iit-page=home] .convocation-link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--teal);
    font-size: calc(12px * var(--iit-text-scale));
    font-weight: 700;
    margin-top: 22px
}

body[data-iit-page=home] .convocation-link i {
    font-style: normal;
    font-size: calc(18px * var(--iit-text-scale))
}

@media(max-width:800px) {
    body[data-iit-page=home] .convocation-grid {
        grid-template-columns: 1fr 1fr;
        grid-template-rows: 240px 165px 165px
    }

    body[data-iit-page=home] .convocation-photo:first-child {
        grid-column: span 2;
        grid-row: auto
    }

    body[data-iit-page=home] .convocation-head {
        display: block
    }

    body[data-iit-page=home] .convocation-note {
        margin-top: 14px
    }
}

@media(max-width:460px) {
    body[data-iit-page=home] .convocation-grid {
        grid-template-columns: 1fr;
        grid-template-rows: 260px repeat(4, 170px)
    }

    body[data-iit-page=home] .convocation-photo:first-child {
        grid-column: auto
    }
}

body[data-iit-page=home] .nav a.active:not(.button) {
    color: var(--teal);
    position: relative
}

body[data-iit-page=home] .nav a.active:not(.button):after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: -9px;
    height: 2px;
    background: var(--teal)
}

@media(max-width:800px) {
    body[data-iit-page=home] .nav.mobile-open a.active:not(.button) {
        background: var(--mint);
        color: var(--teal);
        border-radius: 3px
    }

    body[data-iit-page=home] .nav.mobile-open a.active:not(.button):after {
        display: none
    }
}

body[data-iit-page=home] .footer {
    padding: 0;
    background: #061e29
}

body[data-iit-page=home] .footer-cta {
    background: var(--teal);
    padding: 29px 0
}

body[data-iit-page=home] .footer-cta .wrap {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 25px;
    color: #fff
}

body[data-iit-page=home] .footer-cta b {
    font: calc(25px * var(--iit-text-scale)) var(--iit-font-heading)
}

body[data-iit-page=home] .footer-cta span {
    font-size: calc(13px * var(--iit-text-scale));
    color: var(--iit-mint)
}

body[data-iit-page=home] .footer-cta .button {
    background: var(--gold);
    color: var(--ink);
    white-space: nowrap
}

body[data-iit-page=home] .footer-main {
    padding: 52px 0 38px
}

body[data-iit-page=home] .footgrid {
    grid-template-columns: 1.45fr 1fr 1fr 1.2fr
}

body[data-iit-page=home] .footer .brand {
    margin-bottom: 17px
}

body[data-iit-page=home] .footer .brand .seal {
    border-color: var(--iit-mint-bright);
    color: var(--iit-mint-bright)
}

body[data-iit-page=home] .footer h4 {
    letter-spacing: 1px;
    color: var(--iit-mint-bright)
}

body[data-iit-page=home] .footer a {
    transition: .2s
}

body[data-iit-page=home] .footer a:hover {
    color: var(--gold)
}

body[data-iit-page=home] .footer .contact-line {
    display: flex;
    gap: 10px;
    margin: 10px 0;
    color: #9fb1b4;
    font-size: calc(12px * var(--iit-text-scale))
}

body[data-iit-page=home] .footer .contact-line i {
    color: var(--gold);
    font-style: normal;
    width: 16px;
    text-align: center
}

body[data-iit-page=home] .socials {
    display: flex;
    gap: 9px;
    margin-top: 18px
}

body[data-iit-page=home] .socials a {
    width: 34px;
    height: 34px;
    border: 1px solid #ffffff31;
    border-radius: 50%;
    display: grid;
    place-items: center;
    color: #fff;
    font-size: calc(13px * var(--iit-text-scale))
}

body[data-iit-page=home] .socials a:hover {
    background: var(--gold);
    color: var(--navy);
    border-color: var(--gold);
    transform: translateY(-2px)
}

body[data-iit-page=home] .copy {
    padding: 18px 0;
    margin: 0;
    border-top: 1px solid #ffffff1a
}

body[data-iit-page=home] .copy a {
    color: var(--gold);
    font-weight: 700
}

@media(max-width:800px) {
    body[data-iit-page=home] .footgrid {
        grid-template-columns: 1fr 1fr
    }

    body[data-iit-page=home] .footer-cta .wrap {
        align-items: flex-start;
        flex-direction: column
    }
}

@media(max-width:460px) {
    body[data-iit-page=home] .footgrid {
        grid-template-columns: 1fr
    }

    body[data-iit-page=home] .footer-cta b {
        font-size: calc(22px * var(--iit-text-scale))
    }
}

body[data-iit-page=home] .footer-contact {
    padding: 4px 0
}

body[data-iit-page=home] .footer-contact h4 {
    border-left: 3px solid #ff7a00;
    padding-left: 12px;
    color: #fff;
    font-size: calc(17px * var(--iit-text-scale));
    letter-spacing: 0;
    margin-bottom: 18px
}

body[data-iit-page=home] .footer-contact .contact-line {
    align-items: flex-start;
    margin: 15px 0
}

body[data-iit-page=home] .footer-contact .contact-line i {
    flex: 0 0 45px;
    width: 45px;
    height: 45px;
    border: 1px solid #ff7a005c;
    border-radius: 12px;
    background: #ff7a0012;
    color: #ff8500;
    display: grid;
    place-items: center;
    font-size: calc(17px * var(--iit-text-scale))
}

body[data-iit-page=home] .footer-contact .contact-line span {
    padding-top: 2px
}

body[data-iit-page=home] .footer-contact .contact-label {
    display: block;
    color: #9baec0;
    font-size: calc(10px * var(--iit-text-scale));
    font-weight: 700;
    letter-spacing: 1px;
    margin-bottom: 3px
}

body[data-iit-page=home] .footer-contact .contact-value {
    display: block;
    color: #fff;
    font-size: calc(13px * var(--iit-text-scale));
    font-weight: 600;
    line-height: 1.35
}

body[data-iit-page=home] .footer-contact .contact-value:hover {
    color: var(--gold)
}

body[data-iit-page=home] .footer-contact .connect {
    display: flex;
    align-items: center;
    gap: 10px;
    color: #aebdcc;
    font-size: calc(12px * var(--iit-text-scale));
    font-weight: 600;
    margin-top: 22px
}

body[data-iit-page=home] .footer-contact .connect .socials {
    margin: 0
}

body[data-iit-page=home] .footer-contact .socials a {
    width: 33px;
    height: 33px;
    background: #ffffff0c;
    border-color: #ffffff24
}

/* Refined footer layout */
body[data-iit-page=home] .footer {
    background: var(--iit-darkest)
}

body[data-iit-page=home] .footer-main {
    padding: 58px 0 22px
}

body[data-iit-page=home] .footgrid {
    display: grid;
    grid-template-columns: 1.45fr .9fr 1.15fr 1.35fr;
    gap: 56px;
    align-items: start
}

body[data-iit-page=home] .footer .brand {
    gap: 12px
}

body[data-iit-page=home] .footer .brand .seal {
    width: 46px;
    height: 46px;
    border-width: 2px;
    font-size: calc(16px * var(--iit-text-scale))
}

body[data-iit-page=home] .footer .brand span {
    font-size: calc(18px * var(--iit-text-scale))
}

body[data-iit-page=home] .footer .brand small {
    color: #8bb1b5;
    letter-spacing: 1.25px
}

body[data-iit-page=home] .footer-main>.footgrid>div>p {
    max-width: 300px;
    line-height: 1.65;
    margin: 17px 0 0
}

body[data-iit-page=home] .footer h4 {
    font: 700 calc(12px * var(--iit-text-scale)) var(--iit-font-body);
    letter-spacing: 1.25px;
    margin: 4px 0 18px
}

body[data-iit-page=home] .footer .footgrid>div:not(:first-child)>a {
    display: block;
    width: max-content;
    max-width: 100%;
    margin: 0 0 12px;
    color: #9fb7ba;
    font-size: calc(12px * var(--iit-text-scale))
}

body[data-iit-page=home] .footer .footgrid>div:not(:first-child)>a:hover {
    padding-left: 4px
}

body[data-iit-page=home] .footer-contact {
    padding: 0 0 0 22px;
    border-left: 1px solid #ffffff17
}

body[data-iit-page=home] .footer-contact h4 {
    border-left: 3px solid #ff8500;
    padding: 3px 0 3px 12px;
    margin: 0 0 19px;
    color: #fff;
    font: 700 calc(17px * var(--iit-text-scale)) var(--iit-font-body);
    letter-spacing: 0
}

body[data-iit-page=home] .footer-contact .contact-line {
    gap: 12px;
    margin: 14px 0
}

body[data-iit-page=home] .footer-contact .contact-line i {
    flex: 0 0 45px;
    width: 45px;
    height: 45px;
    border-radius: 11px
}

body[data-iit-page=home] .footer-contact .contact-label {
    font-size: calc(10px * var(--iit-text-scale));
    letter-spacing: 1.05px
}

body[data-iit-page=home] .footer-contact .contact-value {
    font-size: calc(13px * var(--iit-text-scale));
    line-height: 1.4
}

body[data-iit-page=home] .footer-contact .connect {
    margin-top: 20px;
    gap: 12px
}

body[data-iit-page=home] .footer-contact .connect .socials {
    gap: 8px
}

body[data-iit-page=home] .footer-contact .socials a {
    width: 33px;
    height: 33px
}

body[data-iit-page=home] .copy {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 20px 0 0;
    color: #7f9da1;
    font-size: calc(11px * var(--iit-text-scale))
}

body[data-iit-page=home] .copy span:last-child {
    text-align: right
}

body[data-iit-page=home] .copy a {
    display: inline-block;
    margin-left: 4px
}

body[data-iit-page=home] .footer .socials a {
    transition: background .2s, transform .2s, color .2s
}

@media(max-width:950px) {
    body[data-iit-page=home] .footgrid {
        grid-template-columns: 1.2fr 1fr;
        gap: 40px
    }

    body[data-iit-page=home] .footer-contact {
        padding-left: 0;
        border-left: 0
    }
}

@media(max-width:600px) {
    body[data-iit-page=home] .footer-main {
        padding-top: 42px
    }

    body[data-iit-page=home] .footgrid {
        grid-template-columns: 1fr;
        gap: 31px
    }

    body[data-iit-page=home] .footer-contact {
        border-top: 1px solid #ffffff17;
        padding-top: 28px
    }

    body[data-iit-page=home] .copy {
        display: block;
        line-height: 1.8
    }

    body[data-iit-page=home] .copy span:last-child {
        text-align: left;
        display: block;
        margin-top: 6px
    }

    body[data-iit-page=home] .footer-contact .connect {
        flex-wrap: wrap
    }
}

body[data-iit-page=home] .company-marquee {
    background: #fff;
    border-bottom: 1px solid #dce7e3;
    padding: 29px 0 27px;
    overflow: hidden
}

body[data-iit-page=home] .company-marquee .label {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin-bottom: 19px;
    color: var(--muted);
    font-size: calc(11px * var(--iit-text-scale));
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1.35px
}

body[data-iit-page=home] .company-marquee .label:before,
body[data-iit-page=home] .company-marquee .label:after {
    content: "";
    width: 48px;
    height: 1px;
    background: #c7d7d2
}

body[data-iit-page=home] .marquee-window {
    overflow: hidden;
    mask-image: linear-gradient(90deg, transparent, #000 7%, #000 93%, transparent)
}

body[data-iit-page=home] .marquee-track {
    display: flex;
    width: max-content;
    animation: company-scroll 32s linear infinite
}

body[data-iit-page=home] .marquee-window:hover .marquee-track {
    animation-play-state: paused
}

body[data-iit-page=home] .company-logo {
    height: 48px;
    min-width: 155px;
    padding: 0 27px;
    border-right: 1px solid #e5ece9;
    display: grid;
    place-items: center;
    color: #506a70;
    font: 700 calc(19px * var(--iit-text-scale)) Georgia;
    white-space: nowrap
}

body[data-iit-page=home] .company-logo small {
    display: block;
    font: 700 calc(9px * var(--iit-text-scale)) var(--iit-font-body);
    letter-spacing: 1px;
    color: #8aa0a2;
    text-align: center
}

body[data-iit-page=home] .company-logo-image {
    display: block;
    width: auto;
    max-width: 170px;
    /* wide logos (e.g. HDFC BANK) need the room */
    height: 40px;
    object-fit: contain;
}

body[data-iit-page=home] .company-logo:nth-child(3n) {
    font-family: var(--iit-font-body);
    font-size: calc(16px * var(--iit-text-scale));
    letter-spacing: -.6px
}

body[data-iit-page=home] .company-logo:nth-child(4n) {
    color: var(--iit-primary)
}

body[data-iit-page=home] .company-logo:nth-child(5n) {
    color: #9c2032
}

@keyframes company-scroll {
    to {
        transform: translateX(-50%)
    }
}

body.gl-lock-scroll {
    overflow: hidden
}

body[data-iit-page=home] .gl-lightbox {
    position: fixed;
    inset: 0;
    background: rgba(255, 255, 255, .96);
    backdrop-filter: blur(8px);
    display: grid;
    place-items: center;
    padding: 24px;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity .2s ease, visibility .2s ease;
    z-index: 9999
}

body[data-iit-page=home] .gl-lightbox.is-open {
    opacity: 1;
    visibility: visible;
    pointer-events: auto
}

body[data-iit-page=home] .gl-lightbox-panel {
    position: relative;
    width: 100vw;
    height: 100vh;
    display: flex;
    flex-direction: column;
    justify-content: center;
    background: transparent;
    overflow: hidden
}

body[data-iit-page=home] .gl-lightbox-close {
    position: absolute;
    top: 24px;
    right: 28px;
    z-index: 3;
    width: 42px;
    height: 42px;
    border-radius: 50%;
    border: 1px solid rgba(0, 72, 126, .14);
    background: #fff;
    color: var(--iit-primary);
    box-shadow: 0 5px 18px rgba(0, 0, 0, .14);
    cursor: pointer
}

body[data-iit-page=home] .gl-lightbox-media {
    position: relative;
    flex: 0 0 auto;
    min-height: 0;
    height: min(76vh, 500px);
    background: transparent;
    display: grid;
    place-items: center;
    padding: 0;
    overflow: hidden
}

body[data-iit-page=home] .gl-lightbox-stage {
    position: relative;
    width: 100%;
    height: 100%;
    display: grid;
    place-items: center;
    perspective: 1200px
}

body[data-iit-page=home] .gl-lightbox-card {
    position: absolute;
    left: 50%;
    top: 50%;
    width: clamp(190px, 22vw, 300px);
    height: 100%;
    padding: 0;
    border: 1px solid rgba(0, 72, 126, .16);
    border-radius: 16px;
    overflow: hidden;
    background: #eaf3f8;
    box-shadow: 0 10px 24px rgba(0, 0, 0, .28);
    cursor: pointer;
    opacity: max(.18, calc(1 - var(--gl-distance) * .22));
    transform: translate(calc(-50% + var(--gl-shift)), -50%) scale(calc(1 - var(--gl-distance) * .12));
    transition: transform .42s cubic-bezier(.2, .75, .25, 1), opacity .3s ease, box-shadow .3s ease;
    z-index: calc(10 - var(--gl-distance))
}

body[data-iit-page=home] .gl-lightbox-card[aria-current="true"] {
    width: 100%;
    cursor: default;
    box-shadow: 0 18px 42px rgba(0, 0, 0, .25)
}

body[data-iit-page=home] .gl-lightbox-card img {
    display: block;
    width: 100%;
    height: 100%;
}

body[data-iit-page=home] .gl-lightbox-card .gl-lightbox-card-bg {
    position: absolute;
    inset: 0;
    object-fit: cover;
    filter: blur(18px) brightness(.78);
    transform: scale(1.06)
}

body[data-iit-page=home] .gl-lightbox-card img:not(.gl-lightbox-card-bg) {
    position: relative;
    z-index: 1;
    object-fit: contain
}

body[data-iit-page=home] .gl-lightbox-nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 46px;
    height: 46px;
    border-radius: 50%;
    border: 1px solid rgba(0, 72, 126, .1);
    background: #fff;
    color: var(--iit-primary);
    box-shadow: 0 4px 14px rgba(0, 0, 0, .16);
    display: grid;
    place-items: center;
    cursor: pointer;
    z-index: 20
}

body[data-iit-page=home] .gl-lightbox-prev {
    left: 26px
}

body[data-iit-page=home] .gl-lightbox-next {
    right: 26px
}

body[data-iit-page=home] .gl-lightbox-body {
    flex: 0 0 auto;
    min-height: 150px;
    padding: 20px 24px 24px;
    text-align: center;
    color: var(--iit-ink);
    background: transparent
}

body[data-iit-page=home] .gl-lightbox-kicker {
    display: inline-flex;
    align-items: center;
    padding: 7px 12px;
    border-radius: 999px;
    background: rgba(255, 139, 37, .12);
    color: #a64b00;
    border: 1px solid rgba(255, 139, 37, .24);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .14em;
    text-transform: uppercase
}

body[data-iit-page=home] .gl-lightbox-body h3 {
    margin: 8px 0 0;
    color: var(--iit-primary);
    font-size: clamp(20px, 2vw, 28px);
    line-height: 1.14
}

body[data-iit-page=home] .gl-lightbox-body p {
    margin: 5px 0 0;
    color: var(--iit-muted);
    font-size: 13px;
    line-height: 1.6
}

body[data-iit-page=home] .gl-lightbox-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin-top: 10px;
    border-radius: 999px;
    padding: 9px 15px;
    background: var(--iit-primary);
    color: #fff;
    font-weight: 700;
    text-decoration: none
}

body[data-iit-page=home] .gl-lightbox-link:hover {
    filter: brightness(1.03)
}

@media(max-width:640px) {
    body[data-iit-page=home] .gl-lightbox {
        padding: 0
    }

    body[data-iit-page=home] .gl-lightbox-panel {
        border-radius: 0
    }

    body[data-iit-page=home] .gl-lightbox-media {
        height: 58vh;
        padding: 0
    }

    body[data-iit-page=home] .gl-lightbox-card {
        width: clamp(180px, 52vw, 250px);
        border-radius: 12px;
        transform: translate(calc(-50% + var(--gl-shift)), -50%) scale(calc(1 - var(--gl-distance) * .1))
    }

    body[data-iit-page=home] .gl-lightbox-card[aria-current="true"] {
        width: 100%
    }

    body[data-iit-page=home] .gl-lightbox-nav {
        width: 38px;
        height: 38px
    }

    body[data-iit-page=home] .gl-lightbox-prev { left: 7px }
    body[data-iit-page=home] .gl-lightbox-next { right: 7px }

    body[data-iit-page=home] .gl-lightbox-close {
        top: 12px;
        right: 12px
    }

    body[data-iit-page=home] .gl-lightbox-body {
        min-height: 140px;
        padding: 14px 18px 18px
    }
}

body[data-iit-page=home] .placements {
    background: var(--mint);
    padding: 78px 0
}

body[data-iit-page=home] .placement-head {
    display: flex;
    justify-content: space-between;
    gap: 30px;
    align-items: end;
    margin-bottom: 34px
}

body[data-iit-page=home] .placement-head h2 {
    font-family: var(--iit-font-heading);
    font-size: calc(clamp(32px, 3.5vw, 48px) * var(--iit-heading-scale));
    letter-spacing: -1px;
    margin: 13px 0 0
}

body[data-iit-page=home] .placement-head p {
    max-width: 350px;
    color: var(--muted);
    font-size: calc(14px * var(--iit-text-scale));
    margin: 0
}

body[data-iit-page=home] .placement-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 18px;
    margin-bottom: 34px
}

body[data-iit-page=home] .placement-card {
    background: #fff;
    padding: 23px;
    border-top: 3px solid var(--gold);
    display: flex;
    align-items: center;
    gap: 14px
}

body[data-iit-page=home] .placement-avatar {
    width: 49px;
    height: 49px;
    flex: 0 0 49px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--iit-primary), color-mix(in srgb, var(--iit-primary) 70%, #ffffff));
    display: grid;
    place-items: center;
    color: #fff;
    font: calc(19px * var(--iit-text-scale)) var(--iit-font-heading)
}

body[data-iit-page=home] .placement-card b,
body[data-iit-page=home] .placement-card small {
    display: block
}

body[data-iit-page=home] .placement-card b {
    font-size: calc(15px * var(--iit-text-scale))
}

body[data-iit-page=home] .placement-card small {
    color: var(--muted);
    font-size: calc(11px * var(--iit-text-scale));
    margin-top: 3px
}

body[data-iit-page=home] .placed-track .company-logo {
    background: #fff;
    border: 1px solid #dce7e3;
    border-right: 0;
    height: 58px;
    margin-right: 12px;
    border-radius: 4px;
    min-width: 170px
}

body[data-iit-page=home] .placed-track {
    animation-duration: 38s;
    animation-direction: reverse
}

@media(max-width:600px) {
    body[data-iit-page=home] .company-marquee {
        padding: 24px 0
    }

    body[data-iit-page=home] .company-logo {
        min-width: 130px;
        padding: 0 18px;
        font-size: calc(16px * var(--iit-text-scale))
    }

    body[data-iit-page=home] .company-logo-image {
        max-width: 140px;
        height: 34px
    }

    body[data-iit-page=home] .company-marquee .label {
        font-size: calc(10px * var(--iit-text-scale))
    }

    body[data-iit-page=home] .placements {
        padding: 60px 0
    }

    body[data-iit-page=home] .placement-head {
        display: block
    }

    body[data-iit-page=home] .placement-head p {
        margin-top: 15px
    }

    body[data-iit-page=home] .placement-grid {
        grid-template-columns: 1fr
    }

    body[data-iit-page=home] .placed-track .company-logo {
        min-width: 145px
    }
}


/* home page styles */

body[data-iit-page=home] .gl {
    background: var(--mint)
}

body[data-iit-page=home] .gl-head {
    display: flex;
    justify-content: space-between;
    align-items: end;
    gap: 35px;
    margin-bottom: 38px
}

body[data-iit-page=home] .gl-head .section-head {
    margin: 0
}

body[data-iit-page=home] .gl-note {
    max-width: 340px;
    margin: 0;
    color: var(--muted);
    font-size: calc(14px * var(--iit-text-scale))
}

body[data-iit-page=home] .gl-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: repeat(2, 230px);
    gap: 14px
}

body[data-iit-page=home] .gl-item {
    position: relative;
    overflow: hidden;
    margin: 0;
    background: var(--navy)
}

body[data-iit-page=home] .gl-item:first-child {
    grid-column: span 2;
    grid-row: span 2
}

body[data-iit-page=home] .gl-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform .6s ease
}

body[data-iit-page=home] .gl-item:hover img {
    transform: scale(1.06)
}

body[data-iit-page=home] .gl-item:after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, transparent 45%, color-mix(in srgb, var(--iit-deep) 85%, transparent))
}

body[data-iit-page=home] .gl-item figcaption {
    position: absolute;
    z-index: 1;
    left: 18px;
    right: 18px;
    bottom: 16px;
    color: #fff
}

body[data-iit-page=home] .gl-tag {
    display: inline-block;
    background: var(--gold);
    color: var(--ink);
    font-size: calc(10px * var(--iit-text-scale));
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
    padding: 3px 9px;
    margin-bottom: 8px
}

body[data-iit-page=home] .gl-item b {
    display: block;
    font: 600 calc(17px * var(--iit-text-scale))/1.25 var(--iit-font-heading)
}

body[data-iit-page=home] .gl-item:first-child b {
    font-size: calc(28px * var(--iit-text-scale));
    max-width: 360px
}

body[data-iit-page=home] .gl-item:first-child figcaption {
    left: 26px;
    bottom: 24px
}

@media(max-width:800px) {
    body[data-iit-page=home] .gl-head {
        display: block;
        margin-bottom: 28px
    }

    body[data-iit-page=home] .gl-note {
        margin-top: 14px
    }

    body[data-iit-page=home] .gl-grid {
        grid-template-columns: 1fr 1fr;
        grid-template-rows: 260px repeat(2, 170px)
    }

    body[data-iit-page=home] .gl-item:first-child {
        grid-column: span 2;
        grid-row: auto
    }

    body[data-iit-page=home] .gl-item:last-child {
        grid-column: span 2
    }

    body[data-iit-page=home] .gl-item b {
        font-size: calc(15px * var(--iit-text-scale))
    }
}

@media(max-width:460px) {
    body[data-iit-page=home] .gl-grid {
        grid-template-columns: 1fr;
        grid-template-rows: 250px repeat(4, 180px)
    }

    body[data-iit-page=home] .gl-item:first-child,
    body[data-iit-page=home] .gl-item:last-child {
        grid-column: auto
    }
}

@media(prefers-reduced-motion:reduce) {
    body[data-iit-page=home] .gl-item img {
        transition: none
    }

    body[data-iit-page=home] .gl-item:hover img {
        transform: none
    }
}


/* home page styles */

body[data-iit-page=home] .al {
    background: #fff;
    position: relative;
    overflow: hidden
}

body[data-iit-page=home] .al:before {
    content: "";
    position: absolute;
    width: 560px;
    height: 560px;
    border: 1px solid color-mix(in srgb, var(--iit-primary) 12%, transparent);
    border-radius: 50%;
    right: -200px;
    top: -300px
}

body[data-iit-page=home] .al .wrap {
    position: relative
}

body[data-iit-page=home] .al-head {
    display: flex;
    justify-content: space-between;
    align-items: end;
    gap: 35px;
    margin-bottom: 42px
}

body[data-iit-page=home] .al-head .section-head {
    margin: 0
}



body[data-iit-page=home] .al-note {
    max-width: 330px;
    margin: 0;
    color: var(--muted);
    font-size: calc(14px * var(--iit-text-scale))
}

body[data-iit-page=home] .al-note a {
    display: inline-block;
    margin-top: 10px;
    color: var(--teal);
    font-weight: 700;
    font-size: calc(13px * var(--iit-text-scale))
}

body[data-iit-page=home] .al-row {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 16px
}

body[data-iit-page=home] .al-card {
    background: var(--cream);
    border: 1px solid #e1e9e5;
    text-align: center;
    position: relative;
    transition: .25s;
    display: flex;
    flex-direction: column
}

body[data-iit-page=home] .al-card:before {
    content: "";
    height: 76px;
    background: linear-gradient(135deg, var(--navy), var(--iit-primary))
}

body[data-iit-page=home] .al-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 19px 35px color-mix(in srgb, var(--iit-navy) 10%, transparent);
    background: #fff
}

body[data-iit-page=home] .al-photo {
    width: 96px;
    height: 96px;
    margin: -48px auto 0;
    border-radius: 50%;
    border: 4px solid var(--cream);
    background: linear-gradient(135deg, var(--teal), var(--iit-mint-bright));
    color: #fff;
    display: grid;
    place-items: center;
    font: 600 calc(30px * var(--iit-text-scale)) var(--iit-font-heading);
    overflow: hidden;
    position: relative;
    transition: .25s
}

body[data-iit-page=home] .al-card:hover .al-photo {
    border-color: #fff
}

body[data-iit-page=home] .al-photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block
}

body[data-iit-page=home] .al-body {
    padding: 16px 16px 22px;
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center
}

body[data-iit-page=home] .al-body h3 {
    font-size: calc(16px * var(--iit-heading-scale));
    line-height: 1.25;
    margin-bottom: 5px
}

body[data-iit-page=home] .al-body p {
    margin: 0 0 18px;
    font-size: calc(12px * var(--iit-text-scale));
    color: var(--muted);
    min-height: 36px
}

body[data-iit-page=home] .al-co {
    margin-top: auto;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 7px 13px;
    border: 1px solid #d7e3de;
    border-radius: 99px;
    background: #fff;
    font-size: calc(11px * var(--iit-text-scale));
    font-weight: 700;
    letter-spacing: .3px
}

body[data-iit-page=home] .al-co i {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--c);
    display: block
}

body[data-iit-page=home] .al-strip {
    margin-top: 38px;
    padding: 22px 28px;
    background: var(--deep);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    flex-wrap: wrap
}

body[data-iit-page=home] .al-strip b {
    font: 600 calc(22px * var(--iit-text-scale)) var(--iit-font-heading)
}

body[data-iit-page=home] .al-strip b em {
    font-style: normal;
    color: var(--gold)
}

body[data-iit-page=home] .al-strip span {
    font-size: calc(13px * var(--iit-text-scale));
    color: #bcd0cd
}

body[data-iit-page=home] .al-strip .button {
    background: var(--gold);
    color: var(--ink)
}

@media(max-width:1000px) {
    body[data-iit-page=home] .al-row {
        grid-template-columns: repeat(3, 1fr)
    }
}

@media(max-width:700px) {
    body[data-iit-page=home] .al-head {
        display: block;
        margin-bottom: 30px
    }

    body[data-iit-page=home] .al-note {
        margin-top: 15px
    }

    body[data-iit-page=home] .al-row {
        display: flex;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        gap: 14px;
        padding: 0 0 18px;
        margin: 0 -15px;
        padding-inline: 15px;
        scrollbar-width: thin
    }

    body[data-iit-page=home] .al-card {
        flex: 0 0 72%;
        scroll-snap-align: start
    }

    body[data-iit-page=home] .al-strip {
        padding: 22px
    }
}

@media(prefers-reduced-motion:reduce) {

    body[data-iit-page=home] .al-card,
    body[data-iit-page=home] .al-photo {
        transition: none
    }
}


/* about page styles */

body[data-iit-page=about] {
    --navy: var(--iit-navy);
    --deep: var(--iit-deep);
    --teal: var(--iit-primary);
    --gold: var(--iit-gold);
    --cream: var(--iit-cream);
    --mint: var(--iit-mint);
    --ink: var(--iit-ink);
    --muted: var(--iit-muted)
}

body[data-iit-page=about] * {
    box-sizing: border-box
}

body[data-iit-page=about] html {
    scroll-behavior: smooth
}

body[data-iit-page=about] {
    margin: 0;
    background: var(--cream);
    color: var(--ink);
    font: calc(16px * var(--iit-text-scale))/1.55 var(--iit-font-body)
}

body[data-iit-page=about] a {
    text-decoration: none;
    color: inherit
}

body[data-iit-page=about] .wrap {
    width: min(1160px, calc(100% - 40px));
    margin: auto
}

body[data-iit-page=about] .top {
    background: var(--gold);
    font-size: calc(12px * var(--iit-text-scale));
    font-weight: 700
}

body[data-iit-page=about] .top .wrap {
    height: 35px;
    display: flex;
    align-items: center;
    justify-content: space-between
}

body[data-iit-page=about] .head {
    height: 80px;
    background: var(--iit-header-bg)
}

body[data-iit-page=about] .head .wrap {
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between
}

body[data-iit-page=about] .brand {
    display: flex;
    align-items: center;
    gap: 11px;
    font-size: calc(18px * var(--iit-text-scale));
    font-weight: 700
}

body[data-iit-page=about] .seal {
    width: 43px;
    height: 43px;
    border: 2px solid var(--teal);
    border-radius: 50%;
    display: grid;
    place-items: center;
    color: var(--teal);
    font: 700 calc(17px * var(--iit-text-scale)) Georgia
}

body[data-iit-page=about] .brand small {
    display: block;
    font-size: calc(8px * var(--iit-text-scale));
    text-transform: uppercase;
    letter-spacing: 1.1px;
    color: #728289
}

body[data-iit-page=about] .nav {
    display: flex;
    align-items: center;
    gap: 26px;
    font-size: calc(13px * var(--iit-text-scale));
    font-weight: 600
}

body[data-iit-page=about] .nav a:hover {
    color: var(--teal)
}

body[data-iit-page=about] .button {
    display: inline-block;
    padding: 12px 19px;
    border-radius: 4px;
    background: var(--teal);
    color: #fff;
    font-size: calc(13px * var(--iit-text-scale));
    font-weight: 700
}

body[data-iit-page=about] .button:hover {
    background: var(--iit-primary-hover)
}

body[data-iit-page=about] .hero {
    background: var(--deep);
    color: #fff;
    position: relative;
    overflow: hidden
}

body[data-iit-page=about] .hero:after {
    content: "";
    position: absolute;
    width: 650px;
    height: 650px;
    border: 1px solid color-mix(in srgb, var(--iit-mint-bright) 17%, transparent);
    border-radius: 50%;
    right: -190px;
    top: -400px
}

body[data-iit-page=about] .hero .wrap {
    padding: 86px 0 92px;
    position: relative;
    z-index: 1
}

body[data-iit-page=about] .crumb {
    font-size: calc(12px * var(--iit-text-scale));
    color: #bcd0cd;
    margin-bottom: 32px
}

body[data-iit-page=about] .crumb a {
    color: var(--iit-mint-bright)
}

body[data-iit-page=about] .eyebrow {
    color: var(--iit-mint-bright);
    text-transform: uppercase;
    letter-spacing: 2px;
    font-size: calc(11px * var(--iit-text-scale));
    font-weight: 700
}

body[data-iit-page=about] .eyebrow:before {
    content: "";
    display: inline-block;
    width: 27px;
    height: 2px;
    background: var(--gold);
    margin: 0 9px 3px 0
}

body[data-iit-page=about] h1,
body[data-iit-page=about] h2,
body[data-iit-page=about] h3 {
    line-height: 1.1;
    margin: 0
}

body[data-iit-page=about] h1,
body[data-iit-page=about] h2 {
    font-family: var(--iit-font-heading)
}

body[data-iit-page=about] h1 {
    font-size: calc(clamp(43px, 5vw, 68px) * var(--iit-heading-scale));
    letter-spacing: -1.7px;
    max-width: 770px;
    margin-top: 15px
}

body[data-iit-page=about] h1 em {
    font-style: normal;
    color: var(--gold)
}

body[data-iit-page=about] .hero p {
    max-width: 620px;
    color: #d1e0de;
    margin: 21px 0 0
}

body[data-iit-page=about] .intro {
    padding: 90px 0
}

body[data-iit-page=about] .introgrid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 70px;
    align-items: center
}

body[data-iit-page=about] .intro h2,
body[data-iit-page=about] .section h2 {
    font-size: calc(clamp(32px, 3.5vw, 47px) * var(--iit-heading-scale));
    letter-spacing: -1px;
    margin-top: 13px
}

body[data-iit-page=about] .intro p {
    color: var(--muted)
}

body[data-iit-page=about] .photo {
    height: 405px;
    border-radius: 7px;
    background: linear-gradient(180deg, #00000008, #00000033), url("https://images.unsplash.com/photo-1562774053-701939374585?auto=format&fit=crop&w=1000&q=85") center/cover;
    position: relative
}

body[data-iit-page=about] .photo-card {
    position: absolute;
    left: -25px;
    bottom: 26px;
    background: #fff;
    padding: 19px 22px;
    box-shadow: 0 14px 30px color-mix(in srgb, var(--iit-navy) 15%, transparent)
}

body[data-iit-page=about] .photo-card b {
    display: block;
    color: var(--teal);
    font: calc(31px * var(--iit-text-scale)) var(--iit-font-heading)
}

body[data-iit-page=about] .photo-card small {
    font-size: calc(11px * var(--iit-text-scale));
    color: var(--muted)
}

body[data-iit-page=about] .section {
    padding: 82px 0
}

body[data-iit-page=about] .values {
    background: var(--mint)
}

body[data-iit-page=about] .values .headcopy {
    max-width: 630px
}

body[data-iit-page=about] .values .headcopy p {
    color: var(--muted)
}

body[data-iit-page=about] .valuegrid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 19px;
    margin-top: 36px
}

body[data-iit-page=about] .value {
    background: #fff;
    padding: 28px 24px;
    border-top: 3px solid var(--gold)
}

body[data-iit-page=about] .num {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: var(--mint);
    display: grid;
    place-items: center;
    color: var(--teal);
    font-weight: 700
}

body[data-iit-page=about] .value h3 {
    font-size: calc(18px * var(--iit-heading-scale));
    margin: 19px 0 8px
}

body[data-iit-page=about] .value p {
    font-size: calc(13px * var(--iit-text-scale));
    color: var(--muted);
    margin: 0
}

body[data-iit-page=about] .rankings {
    background: #fff
}

body[data-iit-page=about] .rankgrid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 14px;
    margin-top: 38px
}

body[data-iit-page=about] .rank {
    padding: 27px 21px;
    background: var(--cream);
    border-left: 3px solid var(--gold)
}

body[data-iit-page=about] .rank b {
    display: block;
    color: var(--teal);
    font: calc(35px * var(--iit-text-scale)) var(--iit-font-heading)
}

body[data-iit-page=about] .rank span {
    font-size: calc(12px * var(--iit-text-scale));
    color: var(--muted)
}

body[data-iit-page=about] .impact {
    background: var(--navy);
    color: #fff
}

body[data-iit-page=about] .impactgrid {
    display: grid;
    grid-template-columns: 1fr 1.15fr;
    gap: 70px;
    align-items: center
}

body[data-iit-page=about] .impact h2 {
    font-size: calc(44px * var(--iit-heading-scale));
    margin-top: 14px
}

body[data-iit-page=about] .impact p {
    color: #bdd0ce
}

body[data-iit-page=about] .facts {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1px;
    background: #ffffff21
}

body[data-iit-page=about] .fact {
    padding: 26px;
    background: #ffffff0d
}

body[data-iit-page=about] .fact b {
    display: block;
    font: calc(35px * var(--iit-text-scale)) var(--iit-font-heading);
    color: var(--gold)
}

body[data-iit-page=about] .fact span {
    font-size: calc(12px * var(--iit-text-scale));
    color: #c1d3d1
}

body[data-iit-page=about] .cta {
    background: var(--gold);
    padding: 63px 0
}

body[data-iit-page=about] .cta .wrap {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px
}

body[data-iit-page=about] .cta h2 {
    font: calc(37px * var(--iit-heading-scale)) var(--iit-font-heading)
}

body[data-iit-page=about] .cta p {
    margin: 7px 0 0
}

body[data-iit-page=about] .cta .button {
    background: var(--deep);
    white-space: nowrap;
    padding: 15px 27px
}

body[data-iit-page=about] .footer {
    background: #08212b;
    color: #9fb1b4;
    padding: 46px 0 19px;
    font-size: calc(12px * var(--iit-text-scale))
}

body[data-iit-page=about] .footer .wrap {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 25px
}

body[data-iit-page=about] .footer .brand {
    color: #fff
}

body[data-iit-page=about] .footer p {
    margin: 0
}

body[data-iit-page=about] .footer a {
    color: #fff
}

@media(max-width:760px) {
    body[data-iit-page=about] .nav {
        display: none
    }

    body[data-iit-page=about] .top .wrap {
        justify-content: center
    }

    body[data-iit-page=about] .top span+span {
        display: none
    }

    body[data-iit-page=about] .hero .wrap {
        padding: 65px 0
    }

    body[data-iit-page=about] .introgrid,
    body[data-iit-page=about] .impactgrid {
        grid-template-columns: 1fr;
        gap: 38px
    }

    body[data-iit-page=about] .photo {
        height: 330px
    }

    body[data-iit-page=about] .photo-card {
        left: 15px
    }

    body[data-iit-page=about] .valuegrid,
    body[data-iit-page=about] .rankgrid {
        grid-template-columns: 1fr
    }

    body[data-iit-page=about] .section,
    body[data-iit-page=about] .intro {
        padding: 62px 0
    }

    body[data-iit-page=about] .cta .wrap {
        flex-direction: column;
        align-items: flex-start
    }

    body[data-iit-page=about] .footer .wrap {
        flex-direction: column;
        align-items: flex-start
    }
}

@media(max-width:460px) {
    body[data-iit-page=about] .wrap {
        width: min(100% - 30px, 1160px)
    }

    body[data-iit-page=about] h1 {
        font-size: calc(42px * var(--iit-heading-scale))
    }

    body[data-iit-page=about] .facts {
        grid-template-columns: 1fr
    }

    body[data-iit-page=about] .photo {
        height: 280px
    }
}

body[data-iit-page=about] .menu {
    display: none;
    border: 0;
    border-radius: 4px;
    background: var(--teal);
    color: #fff;
    padding: 10px 13px;
    font: 700 calc(11px * var(--iit-text-scale)) var(--iit-font-body);
    letter-spacing: .7px;
    cursor: pointer
}

@media(max-width:760px) {
    body[data-iit-page=about] .menu {
        display: block
    }

    body[data-iit-page=about] .nav.mobile-open {
        position: absolute;
        display: flex;
        z-index: 30;
        top: 70px;
        right: 20px;
        width: min(280px, calc(100vw - 40px));
        padding: 12px;
        background: #fff;
        border: 1px solid #dbe5e2;
        border-radius: 7px;
        box-shadow: 0 16px 35px color-mix(in srgb, var(--iit-navy) 17%, transparent);
        flex-direction: column;
        align-items: stretch;
        gap: 0
    }

    body[data-iit-page=about] .nav.mobile-open a {
        padding: 12px 10px;
        border-bottom: 1px solid #edf1ef
    }

    body[data-iit-page=about] .nav.mobile-open a:last-child {
        margin-top: 8px;
        text-align: center;
        border-bottom: 0
    }
}

body[data-iit-page=about] .nav a.active:not(.button) {
    color: var(--teal);
    position: relative
}

body[data-iit-page=about] .nav a.active:not(.button):after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: -9px;
    height: 2px;
    background: var(--teal)
}

@media(max-width:760px) {
    body[data-iit-page=about] .nav.mobile-open a.active:not(.button) {
        background: var(--mint);
        color: var(--teal);
        border-radius: 3px
    }

    body[data-iit-page=about] .nav.mobile-open a.active:not(.button):after {
        display: none
    }
}

/* advantage page styles */

body[data-iit-page=advantage] {
    --deep: var(--iit-deep);
    --navy: var(--iit-navy);
    --teal: var(--iit-primary);
    --gold: var(--iit-gold);
    --cream: var(--iit-cream);
    --mint: var(--iit-mint);
    --ink: var(--iit-ink);
    --muted: var(--iit-muted)
}

body[data-iit-page=advantage] * {
    box-sizing: border-box
}

body[data-iit-page=advantage] html {
    scroll-behavior: smooth
}

body[data-iit-page=advantage] {
    margin: 0;
    background: var(--cream);
    font: calc(16px * var(--iit-text-scale))/1.6 var(--iit-font-body);
    color: var(--ink)
}

body[data-iit-page=advantage] a {
    text-decoration: none;
    color: inherit
}

body[data-iit-page=advantage] .wrap {
    width: min(1160px, calc(100% - 40px));
    margin: auto
}

body[data-iit-page=advantage] .top {
    background: var(--gold);
    font-size: calc(12px * var(--iit-text-scale));
    font-weight: 700
}

body[data-iit-page=advantage] .top .wrap {
    height: 35px;
    display: flex;
    align-items: center;
    justify-content: space-between
}

body[data-iit-page=advantage] .head {
    height: 80px;
    background: var(--iit-header-bg)
}

body[data-iit-page=advantage] .head .wrap {
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between
}

body[data-iit-page=advantage] .brand {
    display: flex;
    align-items: center;
    gap: 11px;
    font-weight: 700;
    font-size: calc(18px * var(--iit-text-scale))
}

body[data-iit-page=advantage] .seal {
    width: 43px;
    height: 43px;
    border: 2px solid var(--teal);
    border-radius: 50%;
    display: grid;
    place-items: center;
    color: var(--teal);
    font: 700 calc(17px * var(--iit-text-scale)) Georgia
}

body[data-iit-page=advantage] .brand small {
    display: block;
    color: #728289;
    font-size: calc(8px * var(--iit-text-scale));
    text-transform: uppercase;
    letter-spacing: 1.1px
}

body[data-iit-page=advantage] .nav {
    display: flex;
    align-items: center;
    gap: 25px;
    font-size: calc(13px * var(--iit-text-scale));
    font-weight: 600
}

body[data-iit-page=advantage] .nav a:hover,
body[data-iit-page=advantage] .nav a.active {
    color: var(--teal)
}

body[data-iit-page=advantage] .button {
    display: inline-block;
    background: var(--teal);
    color: #fff;
    border: 0;
    border-radius: 4px;
    padding: 13px 20px;
    font: 700 calc(13px * var(--iit-text-scale)) var(--iit-font-body);
    cursor: pointer
}

body[data-iit-page=advantage] .button:hover {
    background: var(--iit-primary-hover)
}

body[data-iit-page=advantage] .menu {
    display: none
}

body[data-iit-page=advantage] .hero {
    background: var(--deep);
    color: #fff;
    position: relative;
    overflow: hidden
}

body[data-iit-page=advantage] .hero:before {
    content: "";
    width: 660px;
    height: 660px;
    border: 1px solid color-mix(in srgb, var(--iit-mint-bright) 18%, transparent);
    border-radius: 50%;
    position: absolute;
    right: -200px;
    top: -370px
}

body[data-iit-page=advantage] .hero .wrap {
    min-height: 505px;
    display: grid;
    grid-template-columns: 1.1fr .9fr;
    align-items: center;
    gap: 55px;
    position: relative;
    z-index: 1
}

body[data-iit-page=advantage] .crumb {
    font-size: calc(12px * var(--iit-text-scale));
    color: #bed1cf;
    margin-bottom: 29px
}

body[data-iit-page=advantage] .crumb a {
    color: var(--iit-mint-bright)
}

body[data-iit-page=advantage] .eyebrow {
    color: var(--iit-mint-bright);
    font-size: calc(11px * var(--iit-text-scale));
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 2px
}

body[data-iit-page=advantage] .eyebrow:before {
    content: "";
    display: inline-block;
    width: 27px;
    height: 2px;
    background: var(--gold);
    margin: 0 9px 3px 0
}

body[data-iit-page=advantage] h1,
body[data-iit-page=advantage] h2,
body[data-iit-page=advantage] h3 {
    margin: 0;
    line-height: 1.1
}

body[data-iit-page=advantage] h1,
body[data-iit-page=advantage] h2 {
    font-family: var(--iit-font-heading)
}

body[data-iit-page=advantage] h1 {
    font-size: calc(clamp(44px, 5vw, 72px) * var(--iit-heading-scale));
    letter-spacing: -2px;
    margin: 17px 0
}

body[data-iit-page=advantage] h1 em {
    color: var(--gold);
    font-style: normal
}

body[data-iit-page=advantage] .hero p {
    max-width: 600px;
    color: #d0e0dd;
    font-size: calc(17px * var(--iit-text-scale))
}

body[data-iit-page=advantage] .hero-art {
    position: relative;
    min-height: 370px;
    display: grid;
    place-items: center
}

body[data-iit-page=advantage] .orbit {
    width: 286px;
    height: 286px;
    border: 1px solid color-mix(in srgb, var(--iit-mint-bright) 39%, transparent);
    border-radius: 50%;
    display: grid;
    place-items: center;
    position: relative
}

body[data-iit-page=advantage] .orbit:before,
body[data-iit-page=advantage] .orbit:after {
    content: "";
    position: absolute;
    border: 1px solid color-mix(in srgb, var(--iit-mint-bright) 21%, transparent);
    border-radius: 50%
}

body[data-iit-page=advantage] .orbit:before {
    width: 360px;
    height: 360px
}

body[data-iit-page=advantage] .orbit:after {
    width: 175px;
    height: 175px
}

body[data-iit-page=advantage] .orb-core {
    position: relative;
    z-index: 1;
    width: 150px;
    height: 150px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    background: var(--gold);
    color: var(--deep);
    text-align: center;
    font: 700 calc(23px * var(--iit-text-scale)) var(--iit-font-heading)
}

body[data-iit-page=advantage] .orb-core small {
    display: block;
    font: 700 calc(9px * var(--iit-text-scale)) var(--iit-font-body);
    letter-spacing: 1.2px;
    text-transform: uppercase
}

body[data-iit-page=advantage] .float-badge {
    position: absolute;
    background: #fff;
    color: var(--ink);
    box-shadow: 0 14px 28px #00141d66;
    padding: 12px 15px;
    border-radius: 5px;
    font-size: calc(11px * var(--iit-text-scale))
}

body[data-iit-page=advantage] .float-badge b {
    display: block;
    font-size: calc(13px * var(--iit-text-scale));
    color: var(--teal)
}

body[data-iit-page=advantage] .b-one {
    left: 0;
    top: 55px
}

body[data-iit-page=advantage] .b-two {
    right: 0;
    bottom: 42px
}

body[data-iit-page=advantage] .ribbon {
    background: #fff;
    border-bottom: 1px solid #dee7e4
}

body[data-iit-page=advantage] .ribbon .wrap {
    display: grid;
    grid-template-columns: repeat(4, 1fr)
}

body[data-iit-page=advantage] .rank {
    padding: 24px;
    border-right: 1px solid #e3ebe8
}

body[data-iit-page=advantage] .rank b {
    color: var(--teal);
    font: calc(28px * var(--iit-text-scale)) var(--iit-font-heading)
}

body[data-iit-page=advantage] .rank span {
    display: block;
    font-size: calc(11px * var(--iit-text-scale));
    color: var(--muted);
    margin-top: 3px
}

body[data-iit-page=advantage] .section {
    padding: 90px 0
}

body[data-iit-page=advantage] .section h2 {
    font-size: calc(clamp(34px, 3.6vw, 50px) * var(--iit-heading-scale));
    letter-spacing: -1.2px;
    margin-top: 14px
}

body[data-iit-page=advantage] .introgrid {
    display: grid;
    grid-template-columns: 1fr .9fr;
    gap: 75px;
    align-items: start
}

body[data-iit-page=advantage] .introgrid p {
    font-size: calc(16px * var(--iit-text-scale));
    color: var(--muted)
}

body[data-iit-page=advantage] .quote-card {
    background: var(--mint);
    padding: 34px;
    border-top: 4px solid var(--gold);
    box-shadow: 14px 15px 0 #d6e5df
}

body[data-iit-page=advantage] .quote-card p {
    font: calc(22px * var(--iit-text-scale))/1.48 var(--iit-font-heading);
    color: var(--ink);
    margin: 0
}

body[data-iit-page=advantage] .quote-card small {
    display: block;
    margin-top: 20px;
    font-size: calc(11px * var(--iit-text-scale));
    color: var(--teal);
    font-weight: 700;
    letter-spacing: 1px
}

body[data-iit-page=advantage] .benefits {
    background: #fff
}

body[data-iit-page=advantage] .benefitgrid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 19px;
    margin-top: 38px
}

body[data-iit-page=advantage] .benefit {
    padding: 26px 24px;
    background: var(--cream);
    border-top: 3px solid var(--gold);
    transition: .25s
}

body[data-iit-page=advantage] .benefit:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 28px color-mix(in srgb, var(--iit-navy) 8%, transparent)
}

body[data-iit-page=advantage] .benefit i {
    display: grid;
    place-items: center;
    width: 43px;
    height: 43px;
    border-radius: 50%;
    background: var(--mint);
    color: var(--teal);
    font-style: normal;
    font-weight: 700
}

body[data-iit-page=advantage] .benefit h3 {
    font-size: calc(18px * var(--iit-heading-scale));
    margin: 18px 0 8px
}

body[data-iit-page=advantage] .benefit p {
    font-size: calc(13px * var(--iit-text-scale));
    color: var(--muted);
    margin: 0
}

body[data-iit-page=advantage] .career {
    background: var(--navy);
    color: #fff
}

body[data-iit-page=advantage] .career .copy {
    max-width: 635px;
    color: #c0d4d1
}

body[data-iit-page=advantage] .careergrid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 15px;
    margin-top: 36px
}

body[data-iit-page=advantage] .career-card {
    display: flex;
    gap: 15px;
    align-items: center;
    padding: 22px;
    background: #ffffff0d;
    border: 1px solid #ffffff13
}

body[data-iit-page=advantage] .career-card i {
    display: grid;
    place-items: center;
    width: 37px;
    height: 37px;
    border-radius: 50%;
    background: var(--gold);
    color: var(--deep);
    font-style: normal;
    font-size: calc(11px * var(--iit-text-scale));
    font-weight: 700
}

body[data-iit-page=advantage] .career-card h3 {
    font-size: calc(16px * var(--iit-heading-scale))
}

body[data-iit-page=advantage] .career-card p {
    margin: 3px 0 0;
    color: #bdd0cd;
    font-size: calc(12px * var(--iit-text-scale))
}

body[data-iit-page=advantage] .journey {
    background: var(--mint)
}

body[data-iit-page=advantage] .journeygrid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1px;
    background: #fff;
    margin-top: 36px
}

body[data-iit-page=advantage] .journey-card {
    padding: 27px 23px;
    background: var(--mint)
}

body[data-iit-page=advantage] .journey-card b {
    display: block;
    color: var(--teal);
    font: calc(30px * var(--iit-text-scale)) var(--iit-font-heading)
}

body[data-iit-page=advantage] .journey-card h3 {
    font-size: calc(16px * var(--iit-heading-scale));
    margin: 16px 0 7px
}

body[data-iit-page=advantage] .journey-card p {
    font-size: calc(12px * var(--iit-text-scale));
    color: var(--muted);
    margin: 0
}

body[data-iit-page=advantage] .company {
    background: #fff;
    text-align: center
}

body[data-iit-page=advantage] .company p {
    color: var(--muted);
    max-width: 650px;
    margin: 16px auto
}

body[data-iit-page=advantage] .company-row {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 12px;
    margin-top: 33px
}

body[data-iit-page=advantage] .company-row span {
    display: grid;
    place-items: center;
    min-height: 70px;
    border: 1px solid #dce7e3;
    color: #687e84;
    font: 700 calc(17px * var(--iit-text-scale)) Georgia;
    background: #fbfcfb
}

body[data-iit-page=advantage] .cta {
    background: var(--gold);
    padding: 65px 0
}

body[data-iit-page=advantage] .cta .wrap {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 25px
}

body[data-iit-page=advantage] .cta h2 {
    font-size: calc(39px * var(--iit-heading-scale))
}

body[data-iit-page=advantage] .cta p {
    margin: 8px 0 0
}

body[data-iit-page=advantage] .cta .button {
    background: var(--deep);
    padding: 15px 27px;
    white-space: nowrap
}

@media(max-width:800px) {
    body[data-iit-page=advantage] .nav {
        display: none
    }

    body[data-iit-page=advantage] .hero .wrap,
    body[data-iit-page=advantage] .introgrid {
        grid-template-columns: 1fr
    }

    body[data-iit-page=advantage] .hero .wrap {
        padding: 65px 0;
        gap: 15px
    }

    body[data-iit-page=advantage] .hero-art {
        min-height: 300px
    }

    body[data-iit-page=advantage] .ribbon .wrap {
        grid-template-columns: 1fr 1fr
    }

    body[data-iit-page=advantage] .rank {
        border-bottom: 1px solid #e3ebe8
    }

    body[data-iit-page=advantage] .benefitgrid {
        grid-template-columns: 1fr
    }

    body[data-iit-page=advantage] .careergrid {
        grid-template-columns: 1fr
    }

    body[data-iit-page=advantage] .journeygrid {
        grid-template-columns: 1fr 1fr
    }

    body[data-iit-page=advantage] .section {
        padding: 65px 0
    }

    body[data-iit-page=advantage] .company-row {
        grid-template-columns: repeat(2, 1fr)
    }

    body[data-iit-page=advantage] .cta .wrap {
        align-items: flex-start;
        flex-direction: column
    }
}

@media(max-width:460px) {
    body[data-iit-page=advantage] .wrap {
        width: min(100% - 30px, 1160px)
    }

    body[data-iit-page=advantage] .top .wrap {
        justify-content: center
    }

    body[data-iit-page=advantage] .top span+span {
        display: none
    }

    body[data-iit-page=advantage] h1 {
        font-size: calc(46px * var(--iit-heading-scale))
    }

    body[data-iit-page=advantage] .journeygrid,
    body[data-iit-page=advantage] .company-row {
        grid-template-columns: 1fr
    }

    body[data-iit-page=advantage] .orbit {
        transform: scale(.8)
    }

    body[data-iit-page=advantage] .hero-art {
        margin-top: -15px
    }
}


/* contact page styles */

body[data-iit-page=contact] {
    --navy: var(--iit-navy);
    --deep: var(--iit-deep);
    --teal: var(--iit-primary);
    --gold: var(--iit-gold);
    --cream: var(--iit-cream);
    --mint: var(--iit-mint);
    --ink: var(--iit-ink);
    --muted: var(--iit-muted)
}

body[data-iit-page=contact] * {
    box-sizing: border-box
}

body[data-iit-page=contact] html {
    scroll-behavior: smooth
}

body[data-iit-page=contact] {
    margin: 0;
    background: var(--cream);
    color: var(--ink);
    font: calc(16px * var(--iit-text-scale))/1.5 var(--iit-font-body)
}

body[data-iit-page=contact] a {
    text-decoration: none;
    color: inherit
}

body[data-iit-page=contact] .wrap {
    width: min(1160px, calc(100% - 40px));
    margin: auto
}

body[data-iit-page=contact] .top {
    background: var(--gold);
    font-size: calc(12px * var(--iit-text-scale));
    font-weight: 700
}

body[data-iit-page=contact] .top .wrap {
    height: 35px;
    display: flex;
    justify-content: space-between;
    align-items: center
}

body[data-iit-page=contact] .head {
    height: 80px;
    background: var(--iit-header-bg)
}

body[data-iit-page=contact] .head .wrap {
    height: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center
}

body[data-iit-page=contact] .brand {
    display: flex;
    align-items: center;
    gap: 11px;
    font-size: calc(18px * var(--iit-text-scale));
    font-weight: 700
}

body[data-iit-page=contact] .seal {
    width: 43px;
    height: 43px;
    border: 2px solid var(--teal);
    border-radius: 50%;
    display: grid;
    place-items: center;
    color: var(--teal);
    font: 700 calc(17px * var(--iit-text-scale)) Georgia
}

body[data-iit-page=contact] .brand small {
    display: block;
    color: #728289;
    font-size: calc(8px * var(--iit-text-scale));
    text-transform: uppercase;
    letter-spacing: 1.1px
}

body[data-iit-page=contact] .nav {
    display: flex;
    gap: 26px;
    align-items: center;
    font-size: calc(13px * var(--iit-text-scale));
    font-weight: 600
}

body[data-iit-page=contact] .nav a:hover {
    color: var(--teal)
}

body[data-iit-page=contact] .button {
    border: 0;
    border-radius: 4px;
    background: var(--teal);
    color: #fff;
    padding: 13px 20px;
    font: 700 calc(13px * var(--iit-text-scale)) var(--iit-font-body);
    cursor: pointer;
    display: inline-block
}

body[data-iit-page=contact] .button:hover {
    background: var(--iit-primary-hover)
}

body[data-iit-page=contact] .menu {
    display: none;
    border: 0;
    border-radius: 4px;
    background: var(--teal);
    color: #fff;
    padding: 10px 13px;
    font: 700 calc(11px * var(--iit-text-scale)) var(--iit-font-body);
    letter-spacing: .7px;
    cursor: pointer
}

body[data-iit-page=contact] .hero {
    background: var(--deep);
    color: #fff;
    position: relative;
    overflow: hidden
}

body[data-iit-page=contact] .hero:after {
    content: "";
    position: absolute;
    width: 650px;
    height: 650px;
    border: 1px solid color-mix(in srgb, var(--iit-mint-bright) 17%, transparent);
    border-radius: 50%;
    right: -190px;
    top: -395px
}

body[data-iit-page=contact] .hero .wrap {
    padding: 79px 0 86px;
    position: relative;
    z-index: 1
}

body[data-iit-page=contact] .crumb {
    font-size: calc(12px * var(--iit-text-scale));
    color: #bdd0ce;
    margin-bottom: 29px
}

body[data-iit-page=contact] .crumb a {
    color: var(--iit-mint-bright)
}

body[data-iit-page=contact] .eyebrow {
    color: var(--iit-mint-bright);
    text-transform: uppercase;
    letter-spacing: 2px;
    font-size: calc(11px * var(--iit-text-scale));
    font-weight: 700
}

body[data-iit-page=contact] .eyebrow:before {
    content: "";
    display: inline-block;
    background: var(--gold);
    height: 2px;
    width: 27px;
    margin: 0 9px 3px 0
}

body[data-iit-page=contact] h1,
body[data-iit-page=contact] h2,
body[data-iit-page=contact] h3 {
    margin: 0;
    line-height: 1.1
}

body[data-iit-page=contact] h1,
body[data-iit-page=contact] h2 {
    font-family: var(--iit-font-heading)
}

body[data-iit-page=contact] h1 {
    font-size: calc(clamp(43px, 5vw, 68px) * var(--iit-heading-scale));
    letter-spacing: -1.7px;
    margin-top: 15px
}

body[data-iit-page=contact] .hero p {
    color: #d0e0dd;
    max-width: 580px;
    margin: 20px 0 0
}

body[data-iit-page=contact] .section {
    padding: 82px 0
}

body[data-iit-page=contact] .contactgrid {
    display: grid;
    grid-template-columns: .8fr 1.2fr;
    gap: 68px;
    align-items: start
}

body[data-iit-page=contact] .section h2 {
    font-size: calc(clamp(31px, 3.4vw, 45px) * var(--iit-heading-scale));
    letter-spacing: -1px;
    margin-top: 13px
}

body[data-iit-page=contact] .intro {
    color: var(--muted);
    margin: 17px 0 25px
}

body[data-iit-page=contact] .contactcard {
    padding: 18px 0;
    border-top: 1px solid #d4dfdb;
    display: flex;
    gap: 14px
}

body[data-iit-page=contact] .contactcard:last-child {
    border-bottom: 1px solid #d4dfdb
}

body[data-iit-page=contact] .icon {
    width: 39px;
    height: 39px;
    flex: 0 0 39px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    background: var(--mint);
    color: var(--teal);
    font-weight: 700;
    font-size: calc(12px * var(--iit-text-scale))
}

body[data-iit-page=contact] .contactcard b {
    display: block;
    font-size: calc(13px * var(--iit-text-scale))
}

body[data-iit-page=contact] .contactcard span,
body[data-iit-page=contact] .contactcard a {
    display: block;
    font-size: calc(13px * var(--iit-text-scale));
    color: var(--muted);
    margin-top: 3px
}

body[data-iit-page=contact] .formbox {
    background: #fff;
    padding: 35px;
    box-shadow: 0 16px 36px color-mix(in srgb, var(--iit-navy) 7%, transparent);
    border-top: 4px solid var(--gold)
}

body[data-iit-page=contact] .formbox h2 {
    font-size: calc(31px * var(--iit-heading-scale))
}

body[data-iit-page=contact] .formbox p {
    font-size: calc(13px * var(--iit-text-scale));
    color: var(--muted)
}

body[data-iit-page=contact] .formgrid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 15px;
    margin-top: 24px
}

body[data-iit-page=contact] .field {
    display: flex;
    flex-direction: column;
    gap: 6px
}

body[data-iit-page=contact] .field.full {
    grid-column: span 2
}

body[data-iit-page=contact] .field label {
    font-size: calc(11px * var(--iit-text-scale));
    font-weight: 700;
    letter-spacing: .4px
}

body[data-iit-page=contact] .field input,
body[data-iit-page=contact] .field select,
body[data-iit-page=contact] .field textarea {
    width: 100%;
    border: 1px solid #d9e3df;
    border-radius: 3px;
    background: #fbfcfb;
    padding: 12px;
    font: calc(13px * var(--iit-text-scale)) var(--iit-font-body);
    color: var(--ink)
}

body[data-iit-page=contact] .field textarea {
    height: 100px;
    resize: vertical
}

body[data-iit-page=contact] .formbox .button {
    margin-top: 20px;
    padding: 14px 26px
}

body[data-iit-page=contact] .success {
    background: var(--mint);
    border-left: 3px solid var(--teal);
    padding: 14px 16px;
    font-size: calc(13px * var(--iit-text-scale));
    margin-top: 18px
}

body[data-iit-page=contact] .assist {
    background: var(--mint)
}

body[data-iit-page=contact] .assistgrid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 18px
}

body[data-iit-page=contact] .assistcard {
    background: #fff;
    padding: 26px 23px
}

body[data-iit-page=contact] .assistcard i {
    display: grid;
    place-items: center;
    background: var(--gold);
    color: var(--navy);
    width: 38px;
    height: 38px;
    border-radius: 50%;
    font-style: normal;
    font-size: calc(11px * var(--iit-text-scale));
    font-weight: 700
}

body[data-iit-page=contact] .assistcard h3 {
    font-size: calc(17px * var(--iit-heading-scale));
    margin: 17px 0 8px
}

body[data-iit-page=contact] .assistcard p {
    font-size: calc(13px * var(--iit-text-scale));
    color: var(--muted);
    margin: 0
}

body[data-iit-page=contact] .map {
    background: #fff;
    padding: 22px
}

body[data-iit-page=contact] .mapvisual {
    min-height: 275px;
    background: linear-gradient(color-mix(in srgb, var(--iit-navy) 43%, transparent), color-mix(in srgb, var(--iit-navy) 43%, transparent)), url("https://images.unsplash.com/photo-1562774053-701939374585?auto=format&fit=crop&w=1500&q=85") center/cover;
    display: grid;
    place-items: center;
    color: #fff;
    text-align: center
}

body[data-iit-page=contact] .pin {
    width: 52px;
    height: 52px;
    background: var(--gold);
    border-radius: 50% 50% 50% 0;
    transform: rotate(-45deg);
    display: grid;
    place-items: center;
    margin: auto
}

body[data-iit-page=contact] .pin span {
    transform: rotate(45deg);
    font-size: calc(11px * var(--iit-text-scale));
    font-weight: 700;
    color: var(--navy)
}

body[data-iit-page=contact] .mapvisual h3 {
    font: calc(25px * var(--iit-heading-scale)) var(--iit-font-heading);
    margin-top: 24px
}

body[data-iit-page=contact] .mapvisual p {
    font-size: calc(12px * var(--iit-text-scale));
    margin: 6px
}

body[data-iit-page=contact] .footer {
    background: #08212b;
    color: #9fb1b4;
    padding: 45px 0 18px;
    font-size: calc(12px * var(--iit-text-scale))
}

body[data-iit-page=contact] .footer .wrap {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    align-items: center
}

body[data-iit-page=contact] .footer .brand {
    color: #fff
}

body[data-iit-page=contact] .footer p {
    margin: 0
}

body[data-iit-page=contact] .footer a {
    color: #fff
}

@media(max-width:760px) {
    body[data-iit-page=contact] .nav {
        display: none
    }

    body[data-iit-page=contact] .menu {
        display: block
    }

    body[data-iit-page=contact] .nav.mobile-open {
        position: absolute;
        display: flex;
        z-index: 30;
        top: 70px;
        right: 20px;
        width: min(280px, calc(100vw - 40px));
        padding: 12px;
        background: #fff;
        border: 1px solid #dbe5e2;
        border-radius: 7px;
        box-shadow: 0 16px 35px color-mix(in srgb, var(--iit-navy) 17%, transparent);
        flex-direction: column;
        align-items: stretch;
        gap: 0
    }

    body[data-iit-page=contact] .nav.mobile-open a {
        padding: 12px 10px;
        border-bottom: 1px solid #edf1ef
    }

    body[data-iit-page=contact] .nav.mobile-open a:last-child {
        margin-top: 8px;
        text-align: center;
        border-bottom: 0
    }

    body[data-iit-page=contact] .top .wrap {
        justify-content: center
    }

    body[data-iit-page=contact] .top span+span {
        display: none
    }

    body[data-iit-page=contact] .hero .wrap {
        padding: 65px 0
    }

    body[data-iit-page=contact] .contactgrid {
        grid-template-columns: 1fr;
        gap: 40px
    }

    body[data-iit-page=contact] .assistgrid {
        grid-template-columns: 1fr
    }

    body[data-iit-page=contact] .section {
        padding: 62px 0
    }

    body[data-iit-page=contact] .footer .wrap {
        flex-direction: column;
        align-items: flex-start
    }
}

@media(max-width:460px) {
    body[data-iit-page=contact] .wrap {
        width: min(100% - 30px, 1160px)
    }

    body[data-iit-page=contact] h1 {
        font-size: calc(42px * var(--iit-heading-scale))
    }

    body[data-iit-page=contact] .formbox {
        padding: 25px 20px
    }

    body[data-iit-page=contact] .formgrid {
        grid-template-columns: 1fr
    }

    body[data-iit-page=contact] .field.full {
        grid-column: auto
    }
}

body[data-iit-page=contact] .nav a.active:not(.button) {
    color: var(--teal);
    position: relative
}

body[data-iit-page=contact] .nav a.active:not(.button):after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: -9px;
    height: 2px;
    background: var(--teal)
}

body[data-iit-page=contact] .nav .button.active {
    background: var(--deep);
    box-shadow: inset 0 -2px 0 var(--gold)
}

@media(max-width:760px) {
    body[data-iit-page=contact] .nav.mobile-open a.active:not(.button) {
        background: var(--mint);
        color: var(--teal);
        border-radius: 3px
    }

    body[data-iit-page=contact] .nav.mobile-open a.active:not(.button):after {
        display: none
    }
}

/* programs page styles */

body[data-iit-page=programs] {
    --deep: var(--iit-deep);
    --navy: var(--iit-navy);
    --teal: var(--iit-primary);
    --gold: var(--iit-gold);
    --cream: var(--iit-cream);
    --mint: var(--iit-mint);
    --ink: var(--iit-ink);
    --muted: var(--iit-muted)
}

body[data-iit-page=programs] * {
    box-sizing: border-box
}

body[data-iit-page=programs] html {
    scroll-behavior: smooth
}

body[data-iit-page=programs] {
    margin: 0;
    background: var(--cream);
    font: calc(16px * var(--iit-text-scale))/1.6 var(--iit-font-body);
    color: var(--ink)
}

body[data-iit-page=programs] a {
    text-decoration: none;
    color: inherit
}

body[data-iit-page=programs] a:focus-visible,
body[data-iit-page=programs] button:focus-visible,
body[data-iit-page=programs] summary:focus-visible {
    outline: 3px solid var(--gold);
    outline-offset: 2px
}

body[data-iit-page=programs] .wrap {
    width: min(1160px, calc(100% - 40px));
    margin: auto
}

body[data-iit-page=programs] .top {
    background: var(--gold);
    font-size: calc(12px * var(--iit-text-scale));
    font-weight: 700
}

body[data-iit-page=programs] .top .wrap {
    height: 35px;
    display: flex;
    align-items: center;
    justify-content: space-between
}

body[data-iit-page=programs] .head {
    height: 80px;
    background: var(--iit-header-bg);
    position: sticky;
    top: 0;
    z-index: 10;
    box-shadow: 0 1px 0 #e3ebe8
}

body[data-iit-page=programs] .head .wrap {
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between
}

body[data-iit-page=programs] .brand {
    display: flex;
    align-items: center;
    gap: 11px;
    font-size: calc(18px * var(--iit-text-scale));
    font-weight: 700
}

body[data-iit-page=programs] .seal {
    width: 43px;
    height: 43px;
    border: 2px solid var(--teal);
    border-radius: 50%;
    display: grid;
    place-items: center;
    color: var(--teal);
    font: 700 calc(17px * var(--iit-text-scale)) Georgia
}

body[data-iit-page=programs] .brand small {
    display: block;
    color: #728289;
    font-size: calc(8px * var(--iit-text-scale));
    text-transform: uppercase;
    letter-spacing: 1.1px
}

body[data-iit-page=programs] .nav {
    display: flex;
    align-items: center;
    gap: 25px;
    font-size: calc(13px * var(--iit-text-scale));
    font-weight: 600
}

body[data-iit-page=programs] .nav a:hover,
body[data-iit-page=programs] .nav a.active {
    color: var(--teal)
}

body[data-iit-page=programs] .button {
    display: inline-block;
    background: var(--teal);
    color: #fff;
    border-radius: 4px;
    padding: 13px 20px;
    font: 700 calc(13px * var(--iit-text-scale)) var(--iit-font-body)
}

body[data-iit-page=programs] .nav .button:hover,
body[data-iit-page=programs] .button:hover {
    background: var(--iit-primary-hover);
    color: #fff
}

body[data-iit-page=programs] .hero {
    background: var(--deep);
    color: #fff;
    position: relative;
    overflow: hidden
}

body[data-iit-page=programs] .hero:after {
    content: "";
    position: absolute;
    width: 700px;
    height: 700px;
    border: 1px solid color-mix(in srgb, var(--iit-mint-bright) 16%, transparent);
    border-radius: 50%;
    right: -250px;
    top: -380px
}

body[data-iit-page=programs] .hero .wrap {
    padding: 83px 0 0;
    position: relative;
    z-index: 1
}

body[data-iit-page=programs] .crumb {
    font-size: calc(12px * var(--iit-text-scale));
    color: #bdd0ce;
    margin-bottom: 29px
}

body[data-iit-page=programs] .crumb a {
    color: var(--iit-mint-bright)
}

body[data-iit-page=programs] .eyebrow {
    color: var(--iit-mint-bright);
    text-transform: uppercase;
    letter-spacing: 2px;
    font-size: calc(11px * var(--iit-text-scale));
    font-weight: 700
}

body[data-iit-page=programs] .eyebrow:before {
    content: "";
    display: inline-block;
    width: 27px;
    height: 2px;
    background: var(--gold);
    margin: 0 9px 3px 0
}

body[data-iit-page=programs] h1,
body[data-iit-page=programs] h2,
body[data-iit-page=programs] h3 {
    margin: 0;
    line-height: 1.1
}

body[data-iit-page=programs] h1,
body[data-iit-page=programs] h2 {
    font-family: var(--iit-font-heading)
}

body[data-iit-page=programs] h1 {
    font-size: calc(clamp(45px, 5vw, 70px) * var(--iit-heading-scale));
    letter-spacing: -1.8px;
    margin: 16px 0
}

body[data-iit-page=programs] h1 em {
    font-style: normal;
    color: var(--gold)
}

body[data-iit-page=programs] .hero p {
    max-width: 650px;
    font-size: calc(17px * var(--iit-text-scale));
    color: #d0e0dd
}

body[data-iit-page=programs] .hero-actions {
    display: flex;
    gap: 14px;
    flex-wrap: wrap;
    margin-top: 28px
}

body[data-iit-page=programs] .ghost {
    border: 1px solid color-mix(in srgb, var(--iit-mint-bright) 40%, transparent);
    background: transparent
}

body[data-iit-page=programs] .ghost:hover {
    background: #ffffff14 !important
}

body[data-iit-page=programs] .stats {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    margin-top: 64px;
    border-top: 1px solid #ffffff22
}

body[data-iit-page=programs] .stat {
    padding: 24px 20px 28px 0
}

body[data-iit-page=programs] .stat+.stat {
    padding-left: 24px;
    border-left: 1px solid #ffffff22
}

body[data-iit-page=programs] .stat b {
    display: block;
    font: 600 calc(32px * var(--iit-text-scale)) var(--iit-font-heading);
    color: var(--gold)
}

body[data-iit-page=programs] .stat span {
    font-size: calc(12px * var(--iit-text-scale));
    color: #bdd0ce
}

body[data-iit-page=programs] .program-section {
    padding: 88px 0
}

body[data-iit-page=programs] .program-head {
    display: flex;
    justify-content: space-between;
    align-items: end;
    gap: 35px;
    margin-bottom: 38px
}

body[data-iit-page=programs] .program-head h2 {
    font-size: calc(clamp(33px, 3.6vw, 49px) * var(--iit-heading-scale));
    letter-spacing: -1.1px;
    margin-top: 13px
}

body[data-iit-page=programs] .program-head p {
    max-width: 350px;
    color: var(--muted);
    font-size: calc(14px * var(--iit-text-scale));
    margin: 0
}

body[data-iit-page=programs] .filters {
    display: flex;
    gap: 9px;
    flex-wrap: wrap;
    margin-bottom: 26px
}

body[data-iit-page=programs] .filter {
    border: 1px solid #cddbd6;
    background: #fff;
    border-radius: 99px;
    padding: 8px 14px;
    font: 700 calc(12px * var(--iit-text-scale)) var(--iit-font-body);
    color: var(--muted);
    cursor: pointer
}

body[data-iit-page=programs] .filter.active {
    background: var(--teal);
    border-color: var(--teal);
    color: #fff
}

body[data-iit-page=programs] .program-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px
}

body[data-iit-page=programs] .program {
    background: #fff;
    border: 1px solid #dce6e2;
    overflow: hidden;
    transition: .25s;
    display: flex;
    flex-direction: column
}

body[data-iit-page=programs] .program[hidden] {
    display: none
}

body[data-iit-page=programs] .program:hover {
    transform: translateY(-8px);
    box-shadow: 0 19px 35px color-mix(in srgb, var(--iit-navy) 9%, transparent)
}

body[data-iit-page=programs] .art {
    height: 150px;
    padding: 25px;
    display: flex;
    align-items: flex-end;
    color: #fff;
    font: 700 calc(29px * var(--iit-text-scale)) Georgia;
    letter-spacing: 1px;
    position: relative;
    overflow: hidden
}

body[data-iit-page=programs] .art:after {
    content: "";
    width: 155px;
    height: 155px;
    border: 20px solid #ffffff24;
    border-radius: 50%;
    position: absolute;
    right: -37px;
    bottom: -72px
}

body[data-iit-page=programs] .g0 {
    background: linear-gradient(135deg, var(--iit-primary), color-mix(in srgb, var(--iit-primary) 70%, #ffffff))
}

body[data-iit-page=programs] .g1 {
    background: linear-gradient(135deg, #173a6d, #3e8bc0)
}

body[data-iit-page=programs] .g2 {
    background: linear-gradient(135deg, #5c2a60, #ca638f)
}

body[data-iit-page=programs] .body {
    padding: 24px;
    display: flex;
    flex-direction: column;
    flex: 1
}

body[data-iit-page=programs] .tag {
    font-size: calc(10px * var(--iit-text-scale));
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
    color: var(--teal)
}

body[data-iit-page=programs] .program h3 {
    font-size: calc(22px * var(--iit-heading-scale));
    margin: 9px 0
}

body[data-iit-page=programs] .program p {
    color: var(--muted);
    font-size: calc(14px * var(--iit-text-scale));
    margin: 0 0 14px
}

body[data-iit-page=programs] .hl {
    list-style: none;
    margin: 0 0 16px;
    padding: 0;
    font-size: calc(13px * var(--iit-text-scale))
}

body[data-iit-page=programs] .hl li {
    padding: 5px 0 5px 22px;
    position: relative;
    border-top: 1px solid #eef3f0
}

body[data-iit-page=programs] .hl li:before {
    content: "";
    position: absolute;
    left: 2px;
    top: 13px;
    width: 8px;
    height: 8px;
    background: var(--gold);
    border-radius: 50%
}

body[data-iit-page=programs] .elig {
    background: var(--mint);
    padding: 10px 12px;
    font-size: calc(12px * var(--iit-text-scale));
    margin-top: auto
}

body[data-iit-page=programs] .elig b {
    color: var(--teal)
}

body[data-iit-page=programs] .meta {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 16px;
    padding-top: 15px;
    border-top: 1px solid #eaf0ed;
    font-size: calc(12px * var(--iit-text-scale));
    font-weight: 700
}

body[data-iit-page=programs] .arrow {
    font-size: calc(13px * var(--iit-text-scale));
    color: var(--teal)
}

body[data-iit-page=programs] .arrow:hover {
    text-decoration: underline
}

body[data-iit-page=programs] .soon {
    font-size: calc(11px * var(--iit-text-scale));
    color: var(--muted)
}

body[data-iit-page=programs] .compare {
    background: #fff;
    padding: 84px 0
}

body[data-iit-page=programs] .compare h2,
body[data-iit-page=programs] .journey h2,
body[data-iit-page=programs] .faq h2 {
    font-size: calc(clamp(30px, 3.4vw, 44px) * var(--iit-heading-scale));
    margin: 13px 0 30px
}

body[data-iit-page=programs] .tablebox {
    overflow-x: auto;
    border: 1px solid #dce6e2
}

body[data-iit-page=programs] table {
    border-collapse: collapse;
    width: 100%;
    min-width: 700px;
    font-size: calc(14px * var(--iit-text-scale))
}

body[data-iit-page=programs] th,
body[data-iit-page=programs] td {
    text-align: left;
    padding: 15px 18px;
    border-bottom: 1px solid #e8efec;
    vertical-align: top
}

body[data-iit-page=programs] th {
    background: var(--navy);
    color: #fff;
    font-size: calc(12px * var(--iit-text-scale));
    letter-spacing: .6px
}

body[data-iit-page=programs] tr:last-child td {
    border-bottom: 0
}

body[data-iit-page=programs] td:first-child {
    font-weight: 700;
    color: var(--teal)
}

body[data-iit-page=programs] .journey {
    padding: 84px 0
}

body[data-iit-page=programs] .steps {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 0;
    border-top: 3px solid var(--teal)
}

body[data-iit-page=programs] .step {
    padding: 24px 24px 0 0
}

body[data-iit-page=programs] .step b {
    display: block;
    font: 600 calc(22px * var(--iit-text-scale)) var(--iit-font-heading);
    margin-bottom: 6px
}

body[data-iit-page=programs] .step span {
    font-size: calc(14px * var(--iit-text-scale));
    color: var(--muted)
}

body[data-iit-page=programs] .step i {
    display: block;
    font: 700 calc(12px * var(--iit-text-scale)) var(--iit-font-body);
    color: var(--gold);
    background: var(--navy);
    width: 28px;
    height: 28px;
    border-radius: 50%;
    text-align: center;
    line-height: 28px;
    margin: -39px 0 18px;
    font-style: normal
}

body[data-iit-page=programs] .why {
    background: var(--mint);
    padding: 84px 0
}

body[data-iit-page=programs] .whygrid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 70px;
    align-items: center
}

body[data-iit-page=programs] .why h2 {
    font-size: calc(clamp(33px, 3.5vw, 48px) * var(--iit-heading-scale));
    margin: 13px 0 16px
}

body[data-iit-page=programs] .why p {
    color: var(--muted);
    margin: 0 0 24px
}

body[data-iit-page=programs] .features {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 13px
}

body[data-iit-page=programs] .feature {
    background: #fff;
    padding: 22px;
    border-left: 3px solid var(--gold)
}

body[data-iit-page=programs] .feature b {
    display: block;
    color: var(--teal);
    font: calc(28px * var(--iit-text-scale)) var(--iit-font-heading)
}

body[data-iit-page=programs] .feature span {
    font-size: calc(12px * var(--iit-text-scale));
    color: var(--muted)
}

body[data-iit-page=programs] .faq {
    padding: 84px 0
}

body[data-iit-page=programs] .faqbox {
    max-width: 820px
}

body[data-iit-page=programs] details {
    background: #fff;
    border: 1px solid #dce6e2;
    margin-bottom: 10px
}

body[data-iit-page=programs] summary {
    cursor: pointer;
    padding: 18px 22px;
    font-weight: 700;
    list-style: none;
    display: flex;
    justify-content: space-between;
    gap: 16px
}

body[data-iit-page=programs] summary::-webkit-details-marker {
    display: none
}

body[data-iit-page=programs] summary:after {
    content: "+";
    color: var(--teal);
    font-size: calc(22px * var(--iit-text-scale));
    line-height: 1
}

body[data-iit-page=programs] details[open] summary:after {
    content: "\2212"
}

body[data-iit-page=programs] details p {
    margin: 0;
    padding: 0 22px 20px;
    color: var(--muted);
    font-size: calc(14px * var(--iit-text-scale))
}

body[data-iit-page=programs] .cta {
    background: var(--gold);
    padding: 64px 0
}

body[data-iit-page=programs] .cta .wrap {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 25px
}

body[data-iit-page=programs] .cta h2 {
    font-size: calc(39px * var(--iit-heading-scale))
}

body[data-iit-page=programs] .cta p {
    margin: 8px 0 0
}

body[data-iit-page=programs] .cta .button {
    background: var(--deep);
    padding: 15px 27px
}

@media(prefers-reduced-motion:reduce) {
    body[data-iit-page=programs] * {
        transition: none !important;
        scroll-behavior: auto !important
    }
}

@media(max-width:900px) {
    body[data-iit-page=programs] .program-grid {
        grid-template-columns: 1fr 1fr
    }

    body[data-iit-page=programs] .steps {
        grid-template-columns: 1fr 1fr
    }

    body[data-iit-page=programs] .step {
        padding-bottom: 20px
    }
}

@media(max-width:800px) {
    body[data-iit-page=programs] .nav {
        display: none
    }

    body[data-iit-page=programs] .hero .wrap {
        padding-top: 65px
    }

    body[data-iit-page=programs] .program-head,
    body[data-iit-page=programs] .cta .wrap {
        align-items: flex-start;
        flex-direction: column
    }

    body[data-iit-page=programs] .program-grid {
        grid-template-columns: 1fr
    }

    body[data-iit-page=programs] .whygrid {
        grid-template-columns: 1fr;
        gap: 35px
    }

    body[data-iit-page=programs] .program-section,
    body[data-iit-page=programs] .why,
    body[data-iit-page=programs] .compare,
    body[data-iit-page=programs] .journey,
    body[data-iit-page=programs] .faq {
        padding: 65px 0
    }

    body[data-iit-page=programs] .stats {
        grid-template-columns: 1fr 1fr;
        margin-top: 44px
    }

    body[data-iit-page=programs] .stat:nth-child(3) {
        padding-left: 0;
        border-left: 0
    }
}

@media(max-width:460px) {
    body[data-iit-page=programs] .wrap {
        width: min(100% - 30px, 1160px)
    }

    body[data-iit-page=programs] .top .wrap {
        justify-content: center
    }

    body[data-iit-page=programs] .top span+span {
        display: none
    }

    body[data-iit-page=programs] h1 {
        font-size: calc(45px * var(--iit-heading-scale))
    }

    body[data-iit-page=programs] .features,
    body[data-iit-page=programs] .steps {
        grid-template-columns: 1fr
    }
}


/* mba-finance page styles */

body[data-iit-page=mba-finance] {
    --deep: var(--iit-deep);
    --navy: var(--iit-navy);
    --teal: var(--iit-primary);
    --gold: var(--iit-gold);
    --cream: var(--iit-cream);
    --mint: var(--iit-mint);
    --ink: var(--iit-ink);
    --muted: var(--iit-muted)
}

body[data-iit-page=mba-finance] * {
    box-sizing: border-box
}

body[data-iit-page=mba-finance] html {
    scroll-behavior: smooth
}

body[data-iit-page=mba-finance] {
    margin: 0;
    background: var(--cream);
    font: calc(16px * var(--iit-text-scale))/1.5 var(--iit-font-body);
    color: var(--ink)
}

body[data-iit-page=mba-finance] a {
    text-decoration: none;
    color: inherit
}

body[data-iit-page=mba-finance] .wrap {
    width: min(1160px, calc(100% - 40px));
    margin: auto
}

body[data-iit-page=mba-finance] .top {
    background: var(--gold);
    font-size: calc(12px * var(--iit-text-scale));
    font-weight: 700
}

body[data-iit-page=mba-finance] .top .wrap {
    height: 35px;
    display: flex;
    align-items: center;
    justify-content: space-between
}

body[data-iit-page=mba-finance] .head {
    height: 80px;
    background: var(--iit-header-bg)
}

body[data-iit-page=mba-finance] .head .wrap {
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between
}

body[data-iit-page=mba-finance] .brand {
    display: flex;
    align-items: center;
    gap: 11px;
    font-size: calc(18px * var(--iit-text-scale));
    font-weight: 700
}

body[data-iit-page=mba-finance] .seal {
    width: 43px;
    height: 43px;
    border: 2px solid var(--teal);
    border-radius: 50%;
    display: grid;
    place-items: center;
    color: var(--teal);
    font: 700 calc(17px * var(--iit-text-scale)) Georgia
}

body[data-iit-page=mba-finance] .brand small {
    display: block;
    font-size: calc(8px * var(--iit-text-scale));
    text-transform: uppercase;
    letter-spacing: 1.1px;
    color: #728289
}

body[data-iit-page=mba-finance] .nav {
    display: flex;
    align-items: center;
    gap: 25px;
    font-size: calc(13px * var(--iit-text-scale));
    font-weight: 600
}

body[data-iit-page=mba-finance] .button {
    border: 0;
    border-radius: 4px;
    background: var(--teal);
    color: #fff;
    padding: 13px 20px;
    font: 700 calc(13px * var(--iit-text-scale)) var(--iit-font-body);
    display: inline-block
}

body[data-iit-page=mba-finance] .button:hover {
    background: var(--iit-primary)
}

body[data-iit-page=mba-finance] .hero {
    background: var(--deep);
    color: #fff;
    position: relative;
    overflow: hidden
}

body[data-iit-page=mba-finance] .hero:before {
    content: "";
    position: absolute;
    width: 680px;
    height: 680px;
    border: 1px solid color-mix(in srgb, var(--iit-mint-bright) 17%, transparent);
    border-radius: 50%;
    right: -200px;
    top: -370px
}

body[data-iit-page=mba-finance] .hero .wrap {
    display: grid;
    grid-template-columns: 1.1fr .9fr;
    gap: 40px;
    padding: 66px 0;
    position: relative;
    z-index: 1
}

body[data-iit-page=mba-finance] .crumb {
    font-size: calc(12px * var(--iit-text-scale));
    color: #bdd1ce;
    margin-bottom: 30px
}

body[data-iit-page=mba-finance] .crumb a {
    color: var(--iit-mint-bright)
}

body[data-iit-page=mba-finance] .eyebrow {
    color: var(--iit-mint-bright);
    text-transform: uppercase;
    letter-spacing: 2px;
    font-size: calc(11px * var(--iit-text-scale));
    font-weight: 700
}

body[data-iit-page=mba-finance] .eyebrow:before {
    content: "";
    display: inline-block;
    width: 27px;
    height: 2px;
    background: var(--gold);
    margin: 0 9px 3px 0
}

body[data-iit-page=mba-finance] h1,
body[data-iit-page=mba-finance] h2,
body[data-iit-page=mba-finance] h3 {
    line-height: 1.1;
    margin: 0
}

body[data-iit-page=mba-finance] h1,
body[data-iit-page=mba-finance] h2 {
    font-family: var(--iit-font-heading)
}

body[data-iit-page=mba-finance] h1 {
    font-size: calc(clamp(42px, 5vw, 68px) * var(--iit-heading-scale));
    letter-spacing: -1.7px;
    margin: 15px 0
}

body[data-iit-page=mba-finance] h1 em {
    color: var(--gold);
    font-style: normal
}

body[data-iit-page=mba-finance] .hero p {
    color: #d2e0de;
    max-width: 600px
}

body[data-iit-page=mba-finance] .hero-image {
    min-height: 335px;
    border-radius: 9px;
    background: linear-gradient(180deg, color-mix(in srgb, var(--iit-navy) 7%, transparent), color-mix(in srgb, var(--iit-navy) 50%, transparent)), url("https://images.unsplash.com/photo-1556761175-b413da4baf72?auto=format&fit=crop&w=900&q=85") center/cover;
    position: relative
}

body[data-iit-page=mba-finance] .hero-image b {
    position: absolute;
    bottom: 19px;
    left: 20px;
    font: calc(25px * var(--iit-text-scale)) var(--iit-font-heading);
    color: #fff
}

body[data-iit-page=mba-finance] .details {
    background: #fff;
    border-bottom: 1px solid #dde7e4
}

body[data-iit-page=mba-finance] .details .wrap {
    display: grid;
    grid-template-columns: repeat(3, 1fr)
}

body[data-iit-page=mba-finance] .detail {
    display: flex;
    gap: 13px;
    padding: 24px;
    border-right: 1px solid #e3ebe8
}

body[data-iit-page=mba-finance] .detail i {
    display: grid;
    place-items: center;
    flex: 0 0 37px;
    width: 37px;
    height: 37px;
    border-radius: 50%;
    background: var(--mint);
    color: var(--teal);
    font-style: normal;
    font-weight: 700
}

body[data-iit-page=mba-finance] .detail small {
    display: block;
    color: var(--muted);
    font-size: calc(10px * var(--iit-text-scale));
    font-weight: 700;
    letter-spacing: 1px
}

body[data-iit-page=mba-finance] .detail b {
    display: block;
    font-size: calc(14px * var(--iit-text-scale));
    margin-top: 2px
}

body[data-iit-page=mba-finance] .section {
    padding: 82px 0
}

body[data-iit-page=mba-finance] .intro {
    display: grid;
    grid-template-columns: 1fr .85fr;
    gap: 75px;
    align-items: start
}

body[data-iit-page=mba-finance] .section h2 {
    font-size: calc(clamp(31px, 3.5vw, 46px) * var(--iit-heading-scale));
    letter-spacing: -1px;
    margin-top: 13px
}

body[data-iit-page=mba-finance] .section p {
    color: var(--muted)
}

body[data-iit-page=mba-finance] .callout {
    background: var(--mint);
    padding: 28px;
    border-top: 3px solid var(--gold)
}

body[data-iit-page=mba-finance] .callout h3 {
    font-size: calc(19px * var(--iit-heading-scale))
}

body[data-iit-page=mba-finance] .callout ul {
    margin: 18px 0 0;
    padding: 0;
    list-style: none
}

body[data-iit-page=mba-finance] .callout li {
    padding: 10px 0;
    border-top: 1px solid #ceded8;
    font-size: calc(13px * var(--iit-text-scale))
}

body[data-iit-page=mba-finance] .callout li:before {
    content: "✓";
    color: var(--teal);
    font-weight: 700;
    margin-right: 9px
}

body[data-iit-page=mba-finance] .outcomes {
    background: #fff
}

body[data-iit-page=mba-finance] .outcomegrid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 18px;
    margin-top: 36px
}

body[data-iit-page=mba-finance] .outcome {
    background: var(--cream);
    padding: 24px;
    border-top: 3px solid var(--gold)
}

body[data-iit-page=mba-finance] .outcome i {
    display: grid;
    place-items: center;
    width: 39px;
    height: 39px;
    border-radius: 50%;
    background: var(--mint);
    color: var(--teal);
    font-style: normal;
    font-weight: 700
}

body[data-iit-page=mba-finance] .outcome h3 {
    font-size: calc(16px * var(--iit-heading-scale));
    margin: 17px 0 8px
}

body[data-iit-page=mba-finance] .outcome p {
    font-size: calc(13px * var(--iit-text-scale));
    margin: 0
}

body[data-iit-page=mba-finance] .highlights {
    background: var(--navy);
    color: #fff
}

body[data-iit-page=mba-finance] .highlightgrid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 1px;
    margin-top: 35px;
    background: #ffffff22
}

body[data-iit-page=mba-finance] .highlight {
    padding: 23px;
    background: #ffffff0c
}

body[data-iit-page=mba-finance] .highlight b {
    display: block;
    color: var(--gold);
    font: calc(28px * var(--iit-text-scale)) var(--iit-font-heading)
}

body[data-iit-page=mba-finance] .highlight span {
    font-size: calc(12px * var(--iit-text-scale));
    color: #c4d5d2
}

body[data-iit-page=mba-finance] .immersion {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 60px;
    align-items: center
}

body[data-iit-page=mba-finance] .immersion-photo {
    min-height: 330px;
    background: linear-gradient(color-mix(in srgb, var(--iit-navy) 15%, transparent), color-mix(in srgb, var(--iit-navy) 33%, transparent)), url("https://images.unsplash.com/photo-1523050854058-8df90110c9f1?auto=format&fit=crop&w=950&q=85") center/cover;
    border-radius: 7px
}

body[data-iit-page=mba-finance] .curriculum {
    background: #fff
}

body[data-iit-page=mba-finance] .semesters {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
    margin-top: 34px
}

body[data-iit-page=mba-finance] .semester {
    border: 1px solid #dce6e2;
    background: #fff
}

body[data-iit-page=mba-finance] .semester h3 {
    padding: 17px 20px;
    background: var(--deep);
    color: #fff;
    font-size: calc(17px * var(--iit-heading-scale))
}

body[data-iit-page=mba-finance] .semester ol {
    margin: 0;
    padding: 12px 20px 14px 39px;
    color: var(--muted);
    font-size: calc(13px * var(--iit-text-scale))
}

body[data-iit-page=mba-finance] .semester li {
    padding: 7px 0;
    border-bottom: 1px solid #edf1ef
}

body[data-iit-page=mba-finance] .fees {
    display: grid;
    grid-template-columns: 1fr .8fr;
    gap: 70px;
    align-items: start
}

body[data-iit-page=mba-finance] .fee-card {
    background: var(--deep);
    color: #fff;
    padding: 30px
}

body[data-iit-page=mba-finance] .fee-card h3 {
    font: calc(25px * var(--iit-heading-scale)) var(--iit-font-heading)
}

body[data-iit-page=mba-finance] .fee {
    color: var(--gold);
    font: calc(43px * var(--iit-text-scale)) var(--iit-font-heading);
    margin: 14px 0 4px
}

body[data-iit-page=mba-finance] .fee-card p {
    color: #c3d4d2;
    font-size: calc(13px * var(--iit-text-scale))
}

body[data-iit-page=mba-finance] .fee-card small {
    color: #9bb4b2
}

body[data-iit-page=mba-finance] .faq {
    background: var(--mint)
}

body[data-iit-page=mba-finance] .faqgrid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
    margin-top: 34px
}

body[data-iit-page=mba-finance] .faqgrid details {
    background: #fff;
    padding: 18px 19px
}

body[data-iit-page=mba-finance] .faqgrid summary {
    font-size: calc(14px * var(--iit-text-scale));
    font-weight: 700;
    cursor: pointer
}

body[data-iit-page=mba-finance] .faqgrid p {
    font-size: calc(13px * var(--iit-text-scale));
    margin: 12px 0 0
}

body[data-iit-page=mba-finance] .cta {
    background: var(--gold);
    padding: 63px 0
}

body[data-iit-page=mba-finance] .cta .wrap {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 25px
}

body[data-iit-page=mba-finance] .cta h2 {
    font-size: calc(37px * var(--iit-heading-scale))
}

body[data-iit-page=mba-finance] .cta p {
    margin: 8px 0 0
}

body[data-iit-page=mba-finance] .cta .button {
    background: var(--deep);
    white-space: nowrap
}

body[data-iit-page=mba-finance] .menu {
    display: none
}

@media(max-width:800px) {
    body[data-iit-page=mba-finance] .nav {
        display: none
    }

    body[data-iit-page=mba-finance] .hero .wrap,
    body[data-iit-page=mba-finance] .intro,
    body[data-iit-page=mba-finance] .immersion,
    body[data-iit-page=mba-finance] .fees {
        grid-template-columns: 1fr
    }

    body[data-iit-page=mba-finance] .hero-image {
        min-height: 270px
    }

    body[data-iit-page=mba-finance] .details .wrap {
        grid-template-columns: 1fr
    }

    body[data-iit-page=mba-finance] .detail {
        border-bottom: 1px solid #e3ebe8
    }

    body[data-iit-page=mba-finance] .outcomegrid {
        grid-template-columns: 1fr
    }

    body[data-iit-page=mba-finance] .highlightgrid {
        grid-template-columns: 1fr 1fr
    }

    body[data-iit-page=mba-finance] .semesters,
    body[data-iit-page=mba-finance] .faqgrid {
        grid-template-columns: 1fr
    }

    body[data-iit-page=mba-finance] .section {
        padding: 62px 0
    }

    body[data-iit-page=mba-finance] .cta .wrap {
        align-items: flex-start;
        flex-direction: column
    }
}

@media(max-width:460px) {
    body[data-iit-page=mba-finance] .wrap {
        width: min(100% - 30px, 1160px)
    }

    body[data-iit-page=mba-finance] .top .wrap {
        justify-content: center
    }

    body[data-iit-page=mba-finance] .top span+span {
        display: none
    }

    body[data-iit-page=mba-finance] h1 {
        font-size: calc(42px * var(--iit-heading-scale))
    }

    body[data-iit-page=mba-finance] .highlightgrid {
        grid-template-columns: 1fr
    }
}

/* Premium readability refinement */
body[data-iit-page=mba-finance] {
    font-size: calc(17px * var(--iit-text-scale));
    line-height: 1.65
}

body[data-iit-page=mba-finance] .hero .wrap {
    gap: 54px;
    padding: 88px 0
}

body[data-iit-page=mba-finance] h1 {
    font-size: calc(clamp(48px, 5vw, 74px) * var(--iit-heading-scale));
    letter-spacing: -2px;
    margin: 18px 0
}

body[data-iit-page=mba-finance] .hero p {
    font-size: calc(18px * var(--iit-text-scale));
    line-height: 1.65
}

body[data-iit-page=mba-finance] .hero .button {
    margin-top: 12px;
    padding: 15px 27px;
    font-size: calc(14px * var(--iit-text-scale))
}

body[data-iit-page=mba-finance] .hero-image {
    min-height: 370px;
    border-radius: 12px;
    box-shadow: 16px 18px 0 var(--gold)
}

body[data-iit-page=mba-finance] .hero-image b {
    bottom: 23px;
    left: 24px;
    font-size: calc(29px * var(--iit-text-scale))
}

body[data-iit-page=mba-finance] .detail {
    padding: 28px 24px;
    gap: 15px
}

body[data-iit-page=mba-finance] .detail i {
    flex-basis: 43px;
    width: 43px;
    height: 43px;
    font-size: calc(12px * var(--iit-text-scale))
}

body[data-iit-page=mba-finance] .detail b {
    font-size: calc(16px * var(--iit-text-scale))
}

body[data-iit-page=mba-finance] .section {
    padding: 98px 0
}

body[data-iit-page=mba-finance] .section h2 {
    font-size: calc(clamp(35px, 3.7vw, 52px) * var(--iit-heading-scale));
    letter-spacing: -1.3px
}

body[data-iit-page=mba-finance] .section p {
    font-size: calc(16px * var(--iit-text-scale))
}

body[data-iit-page=mba-finance] .callout {
    padding: 33px;
    border-top-width: 4px;
    box-shadow: 12px 13px 0 #d6e5df
}

body[data-iit-page=mba-finance] .callout h3 {
    font-size: calc(22px * var(--iit-heading-scale))
}

body[data-iit-page=mba-finance] .callout li {
    padding: 12px 0;
    font-size: calc(14px * var(--iit-text-scale))
}

body[data-iit-page=mba-finance] .outcome {
    padding: 28px
}

body[data-iit-page=mba-finance] .outcome:hover {
    transform: translateY(-5px);
    box-shadow: 0 14px 26px color-mix(in srgb, var(--iit-navy) 9%, transparent)
}

body[data-iit-page=mba-finance] .outcome i {
    width: 44px;
    height: 44px
}

body[data-iit-page=mba-finance] .outcome h3 {
    font-size: calc(19px * var(--iit-heading-scale));
    margin: 19px 0 9px
}

body[data-iit-page=mba-finance] .outcome p {
    font-size: calc(14px * var(--iit-text-scale))
}

body[data-iit-page=mba-finance] .highlight {
    padding: 27px 23px
}

body[data-iit-page=mba-finance] .highlight b {
    font-size: calc(32px * var(--iit-text-scale))
}

body[data-iit-page=mba-finance] .highlight span {
    font-size: calc(14px * var(--iit-text-scale));
    line-height: 1.45
}

body[data-iit-page=mba-finance] .semester h3 {
    padding: 19px 22px;
    font-size: calc(20px * var(--iit-heading-scale))
}

body[data-iit-page=mba-finance] .semester ol {
    padding: 14px 22px 17px 43px;
    font-size: calc(14px * var(--iit-text-scale))
}

body[data-iit-page=mba-finance] .semester li {
    padding: 9px 0
}

body[data-iit-page=mba-finance] .fee-card {
    padding: 36px;
    box-shadow: 15px 16px 0 var(--gold)
}

body[data-iit-page=mba-finance] .fee-card h3 {
    font-size: calc(29px * var(--iit-heading-scale))
}

body[data-iit-page=mba-finance] .fee {
    font-size: calc(49px * var(--iit-text-scale))
}

body[data-iit-page=mba-finance] .fee-card p {
    font-size: calc(15px * var(--iit-text-scale))
}

body[data-iit-page=mba-finance] .fee-card small {
    font-size: calc(13px * var(--iit-text-scale))
}

body[data-iit-page=mba-finance] .faqgrid details {
    padding: 21px
}

body[data-iit-page=mba-finance] .faqgrid summary {
    font-size: calc(16px * var(--iit-text-scale))
}

body[data-iit-page=mba-finance] .faqgrid p {
    font-size: calc(14px * var(--iit-text-scale))
}

body[data-iit-page=mba-finance] .cta h2 {
    font-size: calc(42px * var(--iit-heading-scale))
}

@media(max-width:800px) {
    body[data-iit-page=mba-finance] .hero .wrap {
        padding: 64px 0
    }

    body[data-iit-page=mba-finance] .hero-image {
        min-height: 285px;
        box-shadow: 10px 10px 0 var(--gold)
    }

    body[data-iit-page=mba-finance] .section {
        padding: 70px 0
    }
}

@media(max-width:460px) {
    body[data-iit-page=mba-finance] {
        font-size: calc(16px * var(--iit-text-scale))
    }

    body[data-iit-page=mba-finance] h1 {
        font-size: calc(46px * var(--iit-heading-scale))
    }

    body[data-iit-page=mba-finance] .hero p {
        font-size: calc(17px * var(--iit-text-scale))
    }

    body[data-iit-page=mba-finance] .section h2 {
        font-size: calc(35px * var(--iit-heading-scale))
    }

    body[data-iit-page=mba-finance] .callout,
    body[data-iit-page=mba-finance] .fee-card {
        padding: 27px
    }
}

body[data-iit-page=mba-finance] .immersion-photo {
    overflow: hidden;
    position: relative;
    background: none;
    box-shadow: 15px 16px 0 var(--mint)
}

body[data-iit-page=mba-finance] .immersion-photo img {
    width: 100%;
    height: 100%;
    min-height: 360px;
    object-fit: cover;
    display: block
}

body[data-iit-page=mba-finance] .immersion-photo:after {
    /* label text comes from the page: "<SITE NAME> CAMPUS IMMERSION" */
    content: attr(data-label);
    position: absolute;
    left: 18px;
    bottom: 17px;
    color: #fff;
    background: color-mix(in srgb, var(--iit-deep) 85%, transparent);
    padding: 9px 12px;
    font-size: calc(11px * var(--iit-text-scale));
    font-weight: 700;
    letter-spacing: 1px
}

@media(max-width:800px) {
    body[data-iit-page=mba-finance] .immersion-photo img {
        min-height: 290px
    }
}


/* Shared footer styles */

.site-footer {
    padding: 0;
    background: var(--iit-darkest);
    color: #9fb7ba;
    font: calc(12px * var(--iit-text-scale))/1.5 var(--iit-font-body)
}

.site-footer * {
    box-sizing: border-box
}

.site-footer a {
    text-decoration: none;
    color: inherit
}

.site-footer .footer-wrap {
    width: min(1160px, calc(100% - 40px));
    margin: auto
}

.site-footer .footer-cta {
    background: var(--iit-primary);
    padding: 29px 0
}

.site-footer .footer-cta .footer-wrap {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 25px;
    color: #fff
}

.site-footer .footer-cta b {
    font: calc(25px * var(--iit-text-scale)) var(--iit-font-heading)
}

.site-footer .footer-cta span {
    color: var(--iit-mint);
    font-size: calc(13px * var(--iit-text-scale))
}

.site-footer .footer-button {
    display: inline-block;
    border-radius: 4px;
    background: var(--iit-gold);
    color: var(--iit-ink);
    padding: 13px 21px;
    font-weight: 700
}

.site-footer .footer-button:hover {
    background: #fff
}

.site-footer .footer-main {
    padding: 52px 0 20px
}

.site-footer .footer-grid {
    display: grid;
    grid-template-columns: 1.55fr 1fr 1.2fr 1.35fr;
    gap: 54px;
    align-items: start;
    min-height: 330px
}

.site-footer .footer-brand {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 2px;
    color: #fff;
    font-size: calc(14px * var(--iit-text-scale));
    font-weight: 700
}

.site-footer .footer-logo {
    width: auto;
    max-width: 170px;
    height: 48px;
    object-fit: contain;
    object-position: left center
}

.site-footer .footer-seal {
    width: 45px;
    height: 45px;
    border: 2px solid var(--iit-mint-bright);
    border-radius: 50%;
    display: grid;
    place-items: center;
    color: var(--iit-mint-bright);
    font: 700 calc(16px * var(--iit-text-scale)) Georgia
}

.site-footer .footer-brand small {
    display: block;
    color: #8bb1b5;
    font-size: calc(8px * var(--iit-text-scale));
    text-transform: uppercase;
    letter-spacing: 1.25px
}

.site-footer .footer-description {
    max-width: 300px;
    margin: 17px 0 0;
    line-height: 1.65
}

.site-footer h4 {
    margin: 0 0 18px;
    color: var(--iit-mint-bright);
    font-size: calc(12px * var(--iit-text-scale));
    letter-spacing: 1.25px
}

.site-footer .footer-links a {
    display: block;
    width: max-content;
    max-width: 100%;
    margin: 0 0 12px;
    transition: .2s
}

.site-footer .footer-links a:hover {
    color: var(--iit-gold);
    padding-left: 4px
}

.site-footer .footer-contact {
    border-left: 0;
    padding-left: 0
}

.site-footer .footer-contact h4 {
    border-left: 3px solid #ff8500;
    padding: 3px 0 3px 12px;
    margin: 0 0 19px;
    color: #fff;
    font-size: calc(17px * var(--iit-text-scale));
    letter-spacing: 0
}

.site-footer .contact-line {
    display: flex;
    gap: 12px;
    align-items: flex-start;
    margin: 14px 0
}

.site-footer .contact-line>i {
    flex: 0 0 45px;
    width: 45px;
    height: 45px;
    border: 1px solid #ff7a005c;
    border-radius: 11px;
    background: #ff7a0012;
    color: #ff8500;
    display: grid;
    place-items: center;
    font-size: calc(17px * var(--iit-text-scale))
}

.site-footer .contact-label {
    display: block;
    color: #9baec0;
    font-size: calc(10px * var(--iit-text-scale));
    font-weight: 700;
    letter-spacing: 1.05px;
    margin-bottom: 3px
}

.site-footer .contact-value {
    display: block;
    color: #fff;
    font-size: calc(13px * var(--iit-text-scale));
    font-weight: 600;
    line-height: 1.4
}

.site-footer .contact-value:hover {
    color: var(--iit-gold)
}

.site-footer .footer-socials {
    display: flex;
    gap: 9px;
    margin-top: 25px
}

.site-footer .footer-socials a {
    display: grid;
    place-items: center;
    width: 34px;
    height: 34px;
    border: 1px solid #ffffff31;
    border-radius: 50%;
    color: #fff;
    font-size: calc(13px * var(--iit-text-scale));
    transition: .2s
}

.site-footer .footer-socials a:hover {
    background: var(--iit-gold);
    border-color: var(--iit-gold);
    color: var(--iit-darkest);
    transform: translateY(-2px)
}

.site-footer .connect {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px;
    margin-top: 27px;
    color: #aebdcc;
    font-weight: 600
}

.site-footer .connect .footer-socials {
    margin: 0;
    gap: 8px
}

.site-footer .connect .footer-socials a {
    width: 33px;
    height: 33px;
    background: #ffffff0c
}

.site-footer .footer-bottom {
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-top: 1px solid #ffffff1a;
    padding: 20px 0 0;
    color: #7f9da1;
    font-size: calc(11px * var(--iit-text-scale))
}

.site-footer .footer-bottom span:last-child {
    text-align: right
}

.site-footer .footer-bottom a {
    color: var(--iit-gold);
    font-weight: 700
}

/* Enhanced visual treatment */
.site-footer {
    position: relative;
    overflow: hidden;
    background:
        radial-gradient(circle at 8% 14%, color-mix(in srgb, var(--iit-navy) 30%, transparent) 0, transparent 26%),
        radial-gradient(circle at 90% 18%, color-mix(in srgb, var(--iit-navy) 20%, transparent) 0, transparent 24%),
        var(--iit-darkest)
}

.site-footer:before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    opacity: .3;
    background-image: radial-gradient(var(--iit-mint-bright) 1px, transparent 1px);
    background-size: 18px 18px;
    mask-image: linear-gradient(90deg, transparent, #000 45%, transparent)
}

.site-footer .footer-main {
    position: relative;
    z-index: 1;
    padding-top: 60px
}

.site-footer .footer-grid {
    min-height: 350px
}

.site-footer .footer-brand {
    position: relative;
    padding-bottom: 13px
}

.site-footer .footer-seal {
    box-shadow: 0 0 0 6px color-mix(in srgb, var(--iit-mint-bright) 5%, transparent)
}

.site-footer .footer-links h4 {
    padding-bottom: 10px;
    border-bottom: 1px solid #ffffff14
}

.site-footer .footer-links a {
    display: flex;
    align-items: center;
    gap: 7px
}

.site-footer .footer-links a:before {
    content: "›";
    color: var(--iit-gold);
    font-size: calc(17px * var(--iit-text-scale));
    line-height: 10px;
    opacity: 0;
    transform: translateX(-5px);
    transition: .2s
}

.site-footer .footer-links a:hover:before {
    opacity: 1;
    transform: none
}

.site-footer .footer-contact {
    padding: 21px 20px 18px;
    border: 1px solid #ffffff14;
    border-radius: 10px;
    background: linear-gradient(135deg, #ffffff0c, #ffffff03);
    box-shadow: 0 14px 30px #0000001c
}

.site-footer .footer-contact h4 {
    margin-bottom: 21px
}

.site-footer .contact-line {
    padding-bottom: 13px;
    margin: 0 0 13px;
    border-bottom: 1px solid #ffffff12
}

.site-footer .contact-line:nth-last-of-type(1) {
    border-bottom: 0;
    padding-bottom: 0;
    margin-bottom: 0
}

.site-footer .footer-bottom {
    position: relative;
    z-index: 1;
    padding: 21px 0 2px
}

/* Quiet, editorial finish */
.site-footer {
    background: var(--iit-darkest)
}

.site-footer:before {
    opacity: .12;
    background-size: 22px 22px
}

.site-footer .footer-main {
    padding-top: 66px
}

.site-footer .footer-grid {
    grid-template-columns: 1.5fr .95fr 1.25fr 1.45fr;
    gap: 48px;
    min-height: 336px
}

.site-footer .footer-brand {
    font-size: calc(15px * var(--iit-text-scale));
    letter-spacing: -.15px
}

.site-footer .footer-description {
    max-width: 285px;
    color: #a6bec1;
    font-size: calc(12px * var(--iit-text-scale))
}

.site-footer h4 {
    color: var(--iit-mint-bright);
    font-size: calc(11px * var(--iit-text-scale));
    letter-spacing: 1.45px
}

.site-footer .footer-links h4 {
    border-bottom: 0;
    padding-bottom: 0
}

.site-footer .footer-links a {
    margin-bottom: 11px;
    color: #a6bec1
}

.site-footer .footer-links a:before {
    display: none
}

.site-footer .footer-links a:hover {
    padding-left: 0;
    color: #fff
}

.site-footer .footer-contact {
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none
}

.site-footer .footer-contact h4 {
    font-size: calc(16px * var(--iit-text-scale));
    padding: 2px 0 2px 12px
}

.site-footer .contact-line {
    gap: 13px;
    margin-bottom: 14px;
    padding-bottom: 14px
}

.site-footer .contact-line>i {
    width: 44px;
    height: 44px;
    flex-basis: 44px;
    border-radius: 10px;
    background: transparent
}

.site-footer .contact-label {
    color: #8eabb0;
    font-size: calc(9px * var(--iit-text-scale))
}

.site-footer .contact-value {
    font-size: calc(13px * var(--iit-text-scale));
    letter-spacing: -.08px
}

.site-footer .connect {
    margin-top: 24px;
    font-size: calc(12px * var(--iit-text-scale))
}

.site-footer .footer-socials a {
    background: transparent
}

.site-footer .footer-bottom {
    padding-top: 20px;
    color: #77979b
}

.site-footer .footer-bottom a {
    color: var(--iit-gold)
}

@media(max-width:950px) {
    .site-footer .footer-grid {
        grid-template-columns: 1.25fr 1fr;
        gap: 42px
    }
}

@media(max-width:950px) {
    .site-footer .footer-grid {
        grid-template-columns: 1.2fr 1fr;
        gap: 40px;
        min-height: 0
    }

    .site-footer .footer-contact {
        border-left: 0;
        padding-left: 0
    }
}

@media(max-width:600px) {
    .site-footer .footer-wrap {
        width: min(100% - 30px, 1160px)
    }

    .site-footer .footer-main {
        padding-top: 42px
    }

    .site-footer .footer-grid {
        grid-template-columns: 1fr;
        gap: 31px
    }

    .site-footer .footer-contact {
        border-top: 1px solid #ffffff17;
        padding-top: 28px
    }

    .site-footer .footer-bottom {
        display: block;
        line-height: 1.8
    }

    .site-footer .footer-bottom span:last-child {
        display: block;
        text-align: left;
        margin-top: 6px
    }
}

@media (max-width: 1000px) {
    body[data-iit-page] .top>.wrap {
        display: flex;
        height: auto;
        min-height: 0;
        padding: 7px 0;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        gap: 2px;
        text-align: center;
    }

    body[data-iit-page] .top-links {
        display: flex;
        justify-content: center;
        gap: 0;
    }

    body[data-iit-page] .top-links>a:first-child {
        display: none;
    }

    body[data-iit-page] .head .wrap {
        position: relative;
    }

    body[data-iit-page] .menu {
        display: block;
        border: 0;
        border-radius: 4px;
        background: var(--iit-primary);
        color: var(--iit-white);
        padding: 10px 13px;
        font: 700 calc(11px * var(--iit-text-scale)) var(--iit-font-body);
        cursor: pointer;
    }

    body[data-iit-page] .nav,
    body[data-iit-page] .nav.mobile-open {
        position: absolute;
        z-index: 30;
        top: calc(100% + 4px);
        right: 0;
        width: min(280px, calc(100vw - 40px));
        padding: 12px;
        background: var(--iit-white);
        border: 1px solid #dbe5e2;
        border-radius: 7px;
        box-shadow: 0 16px 35px rgba(8, 44, 59, 0.17);
        flex-direction: column;
        align-items: stretch;
        gap: 0;
    }

    body[data-iit-page] .nav {
        display: none;
    }

    body[data-iit-page] .nav.mobile-open {
        display: flex;
    }

    body[data-iit-page] .nav a {
        padding: 12px 10px;
        border-bottom: 1px solid #edf1ef;
    }

    body[data-iit-page] .nav a:last-child {
        margin-top: 8px;
        text-align: center;
        border-bottom: 0;
    }
}

body[data-iit-page=home] .hero-slideshow {
    display: block;
    height: 585px;
    min-height: 585px;
    padding: 0;
    background: var(--iit-deep);
}

body[data-iit-page=home] .hero-slideshow:before {
    display: none;
}

body[data-iit-page=home] .hero-slide {
    position: absolute;
    inset: 0;
    display: grid;
    grid-template-columns: minmax(0, 1.12fr) minmax(360px, .88fr);
    overflow: hidden;
    opacity: 0;
    visibility: hidden;
    transition: opacity .6s ease, visibility .6s ease;
}

body[data-iit-page=home] .hero-slide.is-active {
    opacity: 1;
    visibility: visible;
}

body[data-iit-page=home] .hero-slide-media {
    position: relative;
    min-width: 0;
    overflow: hidden;
}

body[data-iit-page=home] .hero-slide-media:after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, transparent 68%, rgba(8, 39, 31, .38));
    pointer-events: none;
}

body[data-iit-page=home] .hero-slide-media>img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

body[data-iit-page=home] .hero-slide-panel {
    display: flex;
    align-items: center;
    min-width: 0;
    padding: 58px clamp(28px, 5vw, 72px) 78px;
    background: var(--iit-deep);
    color: #fff;
}

body[data-iit-page=home] .hero-slide-copy {
    width: min(100%, 520px);
    margin: 0 auto;
}

body[data-iit-page=home] .hero-slide-copy h1 {
    margin: 20px 0 18px;
    font-size: calc(48px * var(--iit-heading-scale));
    line-height: 1.08;
}

body[data-iit-page=home] .hero-slide-copy p {
    max-width: 500px;
    margin: 0 0 28px;
    color: #d6dfd8;
    font-size: calc(16px * var(--iit-text-scale));
    line-height: 1.7;
}

body[data-iit-page=home] .hero-slide-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
}

body[data-iit-page=home] .hero-slide-actions .button {
    margin-right: 0;
}

body[data-iit-page=home] .hero-slider-controls {
    position: absolute;
    z-index: 3;
    right: 32px;
    bottom: 24px;
    display: flex;
    align-items: center;
    gap: 12px;
}

body[data-iit-page=home] .hero-slider-arrow,
body[data-iit-page=home] .hero-slider-dot {
    display: grid;
    place-items: center;
    color: #fff;
    cursor: pointer;
}

body[data-iit-page=home] .hero-slider-arrow {
    width: 40px;
    height: 40px;
    border: 1px solid rgba(255, 255, 255, .65);
    border-radius: 50%;
    background: rgba(4, 23, 33, .35);
}

body[data-iit-page=home] .hero-slider-dots {
    display: flex;
    align-items: center;
    gap: 7px;
}

body[data-iit-page=home] .hero-slider-dot {
    width: 10px;
    height: 10px;
    padding: 0;
    border: 1px solid #fff;
    border-radius: 50%;
    background: transparent;
}

body[data-iit-page=home] .hero-slider-dot.is-active {
    background: #fff;
}

@media (max-width: 760px) {

    body[data-iit-page=home] .hero-slideshow,
    body[data-iit-page=home] .hero-slideshow .hero-slide {
        height: 700px;
        min-height: 700px;
    }

    body[data-iit-page=home] .hero-slide {
        grid-template-columns: 1fr;
        grid-template-rows: 46% 54%;
    }

    body[data-iit-page=home] .hero-slide-panel {
        align-items: flex-start;
        padding: 28px 24px 76px;
    }

    body[data-iit-page=home] .hero-slide-copy h1 {
        margin: 13px 0 12px;
        font-size: calc(34px * var(--iit-heading-scale));
    }

    body[data-iit-page=home] .hero-slide-copy p {
        margin-bottom: 18px;
        font-size: calc(14px * var(--iit-text-scale));
    }

    body[data-iit-page=home] .hero-slider-controls {
        right: 20px;
        bottom: 16px;
    }
}

body[data-iit-page] .nav a:not(.button):hover,
body[data-iit-page] .nav a.active:not(.button) {
    color: var(--iit-nav-active);
}

body[data-iit-page] .nav a.active:not(.button),
body[data-iit-page] .nav a.button.active {
    position: relative;
}

body[data-iit-page] .nav a.active:not(.button)::after,
body[data-iit-page] .nav a.button.active::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: -8px;
    height: 2px;
    background: var(--iit-nav-active);
}

/* home: news and press */
body[data-iit-page=home] .press-head {
    display: flex;
    justify-content: space-between;
    align-items: end;
    gap: 35px;
    margin-bottom: 38px
}

body[data-iit-page=home] .press-head .section-head {
    margin: 0
}

body[data-iit-page=home] .press-note {
    max-width: 330px;
    color: var(--muted);
    font-size: calc(13px * var(--iit-text-scale));
    margin: 0 0 5px
}

body[data-iit-page=home] .press-grid {
    display: grid;
    grid-template-columns: 1.1fr 1fr;
    gap: 22px;
    align-items: stretch
}

body[data-iit-page=home] .press-grid--single {
    grid-template-columns: 1fr
}

body[data-iit-page=home] .press-meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    font-size: calc(11px * var(--iit-text-scale));
    color: var(--muted)
}

body[data-iit-page=home] .press-source {
    font-weight: 700;
    letter-spacing: 1.2px;
    text-transform: uppercase;
    color: var(--teal)
}

body[data-iit-page=home] .press-meta time:before {
    content: "";
    display: inline-block;
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background: currentColor;
    opacity: .6;
    margin-right: 10px;
    vertical-align: middle
}

body[data-iit-page=home] .press-link {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    font-size: calc(12px * var(--iit-text-scale));
    font-weight: 700;
    color: var(--teal);
    text-decoration: none
}

body[data-iit-page=home] .press-link i {
    font-style: normal;
    font-size: calc(16px * var(--iit-text-scale));
    transition: transform .2s ease
}

body[data-iit-page=home] .press-link:hover i {
    transform: translateX(4px)
}

body[data-iit-page=home] .press-link:after {
    content: "";
    position: absolute;
    inset: 0
}

body[data-iit-page=home] .press-feature {
    position: relative;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    border-radius: 18px;
    background: var(--navy);
    color: #fff;
    box-shadow: var(--iit-shadow);
    transition: transform .25s ease
}

body[data-iit-page=home] .press-feature:hover {
    transform: translateY(-4px)
}

body[data-iit-page=home] .press-feature-media {
    aspect-ratio: 16 / 9;
    background: center / cover;
    flex-shrink: 0
}

body[data-iit-page=home] .press-feature-body {
    position: relative;
    display: flex;
    flex-direction: column;
    flex: 1;
    padding: 30px 32px 32px
}

body[data-iit-page=home] .press-feature--plain .press-feature-body {
    justify-content: flex-end;
    min-height: 360px;
    padding-top: 90px
}

body[data-iit-page=home] .press-feature--plain .press-feature-body:before {
    content: "\201C";
    position: absolute;
    top: 6px;
    right: 28px;
    font: calc(170px * var(--iit-text-scale))/1 var(--iit-font-heading);
    color: var(--gold);
    opacity: .22;
    pointer-events: none
}

body[data-iit-page=home] .press-feature .press-meta {
    color: #c4d4d2
}

body[data-iit-page=home] .press-feature .press-source {
    color: var(--gold)
}

body[data-iit-page=home] .press-feature h3 {
    font: calc(28px * var(--iit-heading-scale))/1.25 var(--iit-font-heading);
    margin: 16px 0 12px
}

body[data-iit-page=home] .press-feature p {
    color: #c4d4d2;
    font-size: calc(14px * var(--iit-text-scale));
    margin: 0 0 22px
}

body[data-iit-page=home] .press-feature .press-link {
    color: var(--gold);
    margin-top: auto
}

body[data-iit-page=home] .press-list {
    display: flex;
    flex-direction: column;
    gap: 14px
}

body[data-iit-page=home] .press-item {
    position: relative;
    flex: 1;
    display: grid;
    grid-template-columns: 92px 1fr;
    gap: 18px;
    align-items: start;
    padding: 18px;
    background: #fff;
    border: 1px solid #dfe7e4;
    border-radius: 16px;
    transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease
}

body[data-iit-page=home] .press-item:hover {
    transform: translateY(-3px);
    border-color: transparent;
    box-shadow: 0 16px 34px rgba(8, 44, 59, .1)
}

body[data-iit-page=home] .press-thumb {
    width: 92px;
    height: 92px;
    border-radius: 12px;
    overflow: hidden;
    background: var(--mint);
    display: grid;
    place-items: center
}

body[data-iit-page=home] .press-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover
}

body[data-iit-page=home] .press-thumb span {
    font: calc(26px * var(--iit-text-scale)) var(--iit-font-heading);
    color: var(--teal)
}

body[data-iit-page=home] .press-item h3 {
    font: calc(18px * var(--iit-heading-scale))/1.3 var(--iit-font-heading);
    margin: 8px 0 6px
}

body[data-iit-page=home] .press-item p {
    font-size: calc(12.5px * var(--iit-text-scale));
    color: var(--muted);
    margin: 0 0 10px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden
}

@media(max-width:800px) {
    body[data-iit-page=home] .press-head {
        display: block
    }

    body[data-iit-page=home] .press-note {
        margin-top: 14px
    }

    body[data-iit-page=home] .press-grid {
        grid-template-columns: 1fr
    }

    body[data-iit-page=home] .press-feature--plain .press-feature-body {
        min-height: 0;
        padding-top: 70px
    }

    body[data-iit-page=home] .press-feature h3 {
        font-size: calc(23px * var(--iit-heading-scale))
    }
}

@media(max-width:460px) {
    body[data-iit-page=home] .press-item {
        grid-template-columns: 64px 1fr;
        gap: 14px;
        padding: 15px
    }

    body[data-iit-page=home] .press-thumb {
        width: 64px;
        height: 64px
    }

    body[data-iit-page=home] .press-thumb span {
        font-size: calc(20px * var(--iit-text-scale))
    }

    body[data-iit-page=home] .press-feature-body {
        padding: 24px
    }
}

/* home: custom sections (admin rich text) */
body[data-iit-page=home] .custom-section h2 {
    color: inherit
}

body[data-iit-page=home] .custom-content {
    font-size: calc(16px * var(--iit-text-scale));
    line-height: 1.7;
    overflow-wrap: anywhere
}

body[data-iit-page=home] .custom-content> :first-child {
    margin-top: 0
}

body[data-iit-page=home] .custom-content> :last-child {
    margin-bottom: 0
}

body[data-iit-page=home] .custom-content p,
body[data-iit-page=home] .custom-content ul,
body[data-iit-page=home] .custom-content ol,
body[data-iit-page=home] .custom-content blockquote,
body[data-iit-page=home] .custom-content table {
    margin: 0 0 1em
}

body[data-iit-page=home] .custom-content h1,
body[data-iit-page=home] .custom-content h2,
body[data-iit-page=home] .custom-content h3,
body[data-iit-page=home] .custom-content h4 {
    font-family: var(--iit-font-heading);
    line-height: 1.2;
    margin: 1.4em 0 .5em
}

body[data-iit-page=home] .custom-content h1 {
    font-size: calc(36px * var(--iit-heading-scale))
}

body[data-iit-page=home] .custom-content h2 {
    font-size: calc(30px * var(--iit-heading-scale))
}

body[data-iit-page=home] .custom-content h3 {
    font-size: calc(24px * var(--iit-heading-scale))
}

body[data-iit-page=home] .custom-content ul,
body[data-iit-page=home] .custom-content ol {
    padding-left: 1.4em
}

body[data-iit-page=home] .custom-content a {
    color: var(--teal);
    font-weight: 700
}

body[data-iit-page=home] .custom-content img {
    max-width: 100%;
    height: auto;
    border-radius: 12px
}

body[data-iit-page=home] .custom-content iframe {
    max-width: 100%;
    border: 0;
    border-radius: 12px
}

body[data-iit-page=home] .custom-content blockquote {
    border-left: 3px solid var(--gold);
    padding: 4px 0 4px 18px;
    font-style: italic
}

body[data-iit-page=home] .custom-content hr {
    border: 0;
    border-top: 1px solid currentColor;
    opacity: .15;
    margin: 2em 0
}

body[data-iit-page=home] .custom-content table {
    display: block;
    max-width: 100%;
    overflow-x: auto;
    border-collapse: collapse
}

body[data-iit-page=home] .custom-content th,
body[data-iit-page=home] .custom-content td {
    border: 1px solid #dfe7e4;
    padding: 9px 12px;
    text-align: left
}

/* program pages (dynamic, share the mba-finance scope): optional sections */
body[data-iit-page=mba-finance] .program-rich ol,
body[data-iit-page=mba-finance] .program-rich ul {
    color: var(--muted);
    padding-left: 1.3em
}

body[data-iit-page=mba-finance] .program-rich li {
    margin: 0 0 8px
}

body[data-iit-page=mba-finance] .program-rich img {
    max-width: 100%;
    height: auto
}

body[data-iit-page=mba-finance] .program-rich table {
    width: 100%;
    border-collapse: collapse;
    background: #fff;
    font-size: calc(13px * var(--iit-text-scale));
    display: block;
    overflow-x: auto
}

body[data-iit-page=mba-finance] .program-rich th,
body[data-iit-page=mba-finance] .program-rich td {
    border: 1px solid #dde7e4;
    padding: 11px 14px;
    text-align: left;
    vertical-align: top
}

body[data-iit-page=mba-finance] .program-rich th {
    background: var(--mint);
    color: var(--ink)
}

body[data-iit-page=mba-finance] .program-eligibility {
    background: #fff
}

body[data-iit-page=mba-finance] .program-eligibility .program-rich {
    max-width: 900px;
    margin-top: 22px
}

body[data-iit-page=mba-finance] .objective-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
    margin-top: 32px
}

body[data-iit-page=mba-finance] .objective {
    display: flex;
    gap: 16px;
    align-items: flex-start;
    background: #fff;
    padding: 22px;
    border-left: 3px solid var(--teal)
}

body[data-iit-page=mba-finance] .objective i {
    flex-shrink: 0;
    color: var(--teal);
    font: calc(24px * var(--iit-text-scale))/1 var(--iit-font-heading);
    font-style: normal
}

body[data-iit-page=mba-finance] .objective p {
    margin: 0;
    font-size: calc(14px * var(--iit-text-scale))
}

body[data-iit-page=mba-finance] .skill-tool-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    margin-top: 44px
}

body[data-iit-page=mba-finance] .skill-tool-grid h3 {
    font-size: calc(19px * var(--iit-heading-scale));
    margin: 0 0 14px
}

body[data-iit-page=mba-finance] .skill-tool-grid small {
    display: block;
    margin-top: 12px;
    color: var(--muted);
    font-size: calc(11px * var(--iit-text-scale))
}

body[data-iit-page=mba-finance] .chips {
    display: flex;
    flex-wrap: wrap;
    gap: 9px
}

body[data-iit-page=mba-finance] .chip {
    display: inline-block;
    padding: 8px 15px;
    border-radius: 999px;
    background: var(--navy);
    color: #fff;
    font-size: calc(13px * var(--iit-text-scale));
    font-weight: 700
}

body[data-iit-page=mba-finance] .chip--outline {
    background: #fff;
    color: var(--ink);
    border: 1px solid #ceded8;
    font-weight: 500
}

body[data-iit-page=mba-finance] .electives {
    margin-top: 34px
}

body[data-iit-page=mba-finance] .electives h3 {
    font-size: calc(20px * var(--iit-heading-scale));
    margin: 0 0 14px
}

body[data-iit-page=mba-finance] .fee-original {
    color: #9bb4b2;
    font: calc(22px * var(--iit-text-scale)) var(--iit-font-heading);
    margin-top: 14px
}

body[data-iit-page=mba-finance] .fee-original+.fee {
    margin-top: 0
}

@media(max-width:800px) {

    body[data-iit-page=mba-finance] .objective-grid,
    body[data-iit-page=mba-finance] .skill-tool-grid {
        grid-template-columns: 1fr
    }
}

/* program pages: hero */
body[data-iit-page=mba-finance] .phero {
    position: relative;
    overflow: hidden;
    color: #fff;
    background:
        radial-gradient(900px 480px at 88% -10%, color-mix(in srgb, var(--iit-primary) 33%, transparent), transparent 65%),
        radial-gradient(700px 420px at -10% 110%, color-mix(in srgb, var(--iit-gold) 13%, transparent), transparent 60%),
        linear-gradient(160deg, #0a3446 0%, var(--deep) 55%, #041c26 100%)
}

body[data-iit-page=mba-finance] .phero:before {
    content: "";
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(#ffffff08 1px, transparent 1px),
        linear-gradient(90deg, #ffffff08 1px, transparent 1px);
    background-size: 56px 56px;
    mask-image: linear-gradient(180deg, #000 0%, transparent 85%);
    -webkit-mask-image: linear-gradient(180deg, #000 0%, transparent 85%);
    pointer-events: none
}

body[data-iit-page=mba-finance] .phero-grid {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: 1.08fr .92fr;
    gap: 56px;
    align-items: center;
    padding: 54px 0 78px
}

body[data-iit-page=mba-finance] .phero--with-details .phero-grid {
    padding-bottom: 118px
}

body[data-iit-page=mba-finance] .phero-crumb {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    font-size: calc(12px * var(--iit-text-scale));
    color: #9fb9b6;
    margin-bottom: 26px
}

body[data-iit-page=mba-finance] .phero-crumb a {
    color: var(--iit-mint-bright);
    text-decoration: none
}

body[data-iit-page=mba-finance] .phero-crumb a:hover {
    text-decoration: underline
}

body[data-iit-page=mba-finance] .phero-badge {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    padding: 7px 14px 7px 11px;
    margin-bottom: 18px;
    border: 1px solid color-mix(in srgb, var(--iit-gold) 40%, transparent);
    border-radius: 999px;
    background: color-mix(in srgb, var(--iit-gold) 8%, transparent);
    color: var(--gold);
    font-size: calc(12px * var(--iit-text-scale));
    font-weight: 700;
    letter-spacing: .3px
}

body[data-iit-page=mba-finance] .phero-badge i {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--gold);
    box-shadow: 0 0 0 0 color-mix(in srgb, var(--iit-gold) 67%, transparent);
    animation: phero-pulse 2s infinite
}

@keyframes phero-pulse {
    70% {
        box-shadow: 0 0 0 9px color-mix(in srgb, var(--iit-gold) 0%, transparent)
    }

    100% {
        box-shadow: 0 0 0 0 color-mix(in srgb, var(--iit-gold) 0%, transparent)
    }
}

@media (prefers-reduced-motion: reduce) {
    body[data-iit-page=mba-finance] .phero-badge i {
        animation: none
    }
}

body[data-iit-page=mba-finance] .phero h1 {
    font-size: calc(clamp(40px, 5vw, 66px) * var(--iit-heading-scale));
    line-height: 1.04;
    margin: 14px 0 18px
}

body[data-iit-page=mba-finance] .phero h1 em {
    color: var(--gold);
    font-style: italic
}

body[data-iit-page=mba-finance] .phero-lead {
    color: #cddcda;
    font-size: calc(17px * var(--iit-text-scale));
    line-height: 1.6;
    max-width: 590px;
    margin: 0
}

body[data-iit-page=mba-finance] .phero-points {
    list-style: none;
    padding: 0;
    margin: 24px 0 0;
    display: grid;
    gap: 11px
}

body[data-iit-page=mba-finance] .phero-points li {
    position: relative;
    padding-left: 32px;
    color: #e8f1ef;
    font-size: calc(15px * var(--iit-text-scale))
}

body[data-iit-page=mba-finance] .phero-points li:before {
    content: "\2713";
    position: absolute;
    left: 0;
    top: 1px;
    width: 21px;
    height: 21px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: var(--teal);
    color: #fff;
    font-size: calc(11px * var(--iit-text-scale));
    font-weight: 700
}

body[data-iit-page=mba-finance] .phero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 30px
}

body[data-iit-page=mba-finance] .phero-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 15px 26px;
    border-radius: 6px;
    font: 700 calc(14px * var(--iit-text-scale)) var(--iit-font-body);
    text-decoration: none;
    transition: transform .2s ease, background .2s ease, border-color .2s ease
}

body[data-iit-page=mba-finance] .phero-btn--primary {
    background: var(--gold);
    color: var(--deep);
    box-shadow: 0 12px 28px color-mix(in srgb, var(--iit-gold) 25%, transparent)
}

body[data-iit-page=mba-finance] .phero-btn--primary:hover {
    background: #f7c95e;
    transform: translateY(-2px)
}

body[data-iit-page=mba-finance] .phero-btn--ghost {
    border: 1px solid #ffffff4d;
    color: #fff
}

body[data-iit-page=mba-finance] .phero-btn--ghost:hover {
    background: #ffffff14;
    border-color: #ffffff80
}

body[data-iit-page=mba-finance] .phero-btn:focus-visible {
    outline: 3px solid var(--iit-mint-bright);
    outline-offset: 3px
}

body[data-iit-page=mba-finance] .phero-rankings {
    list-style: none;
    margin: 34px 0 0;
    padding: 22px 0 0;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(96px, 1fr));
    gap: 14px 0;
    border-top: 1px solid #ffffff1f
}

body[data-iit-page=mba-finance] .phero-rankings li {
    display: flex;
    flex-direction: column;
    padding: 0 12px;
    border-left: 1px solid #ffffff1f
}

body[data-iit-page=mba-finance] .phero-rankings li:first-child {
    padding-left: 0;
    border-left: 0
}

body[data-iit-page=mba-finance] .phero-rankings b {
    font: calc(24px * var(--iit-text-scale))/1.1 var(--iit-font-heading);
    color: var(--gold)
}

body[data-iit-page=mba-finance] .phero-rankings span {
    margin-top: 3px;
    font-size: calc(11px * var(--iit-text-scale));
    line-height: 1.35;
    color: #9fb9b6
}

body[data-iit-page=mba-finance] .phero-visual {
    position: relative;
    padding: 0 0 34px 34px
}

body[data-iit-page=mba-finance] .phero-visual:before {
    content: "";
    position: absolute;
    right: -16px;
    top: -16px;
    width: 62%;
    height: 62%;
    border: 2px solid color-mix(in srgb, var(--iit-gold) 33%, transparent);
    border-radius: 22px
}

body[data-iit-page=mba-finance] .phero-image {
    position: relative;
    min-height: 470px;
    border-radius: 22px;
    overflow: hidden;
    background: linear-gradient(180deg, color-mix(in srgb, var(--iit-navy) 80%, transparent), color-mix(in srgb, var(--iit-navy) 0%, transparent) 45%), url("https://images.unsplash.com/photo-1556761175-b413da4baf72?auto=format&fit=crop&w=1000&q=85") center/cover;
    box-shadow: 0 30px 70px #0000004d
}

body[data-iit-page=mba-finance] .phero-tagline {
    position: absolute;
    left: 26px;
    right: 26px;
    top: 24px;
    font: calc(26px * var(--iit-text-scale))/1.2 var(--iit-font-heading);
    color: #fff;
    text-shadow: 0 2px 14px #0006
}

body[data-iit-page=mba-finance] .phero-card {
    position: absolute;
    background: #fff;
    color: var(--ink);
    border-radius: 14px;
    box-shadow: 0 20px 45px #0000003d
}

body[data-iit-page=mba-finance] .phero-card--fee {
    left: 0;
    bottom: 0;
    min-width: 210px;
    padding: 16px 20px;
    border-top: 4px solid var(--gold)
}

body[data-iit-page=mba-finance] .phero-card--fee small {
    display: block;
    font-size: calc(10px * var(--iit-text-scale));
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
    color: var(--muted)
}

body[data-iit-page=mba-finance] .phero-card--fee s {
    display: block;
    margin-top: 6px;
    font-size: calc(13px * var(--iit-text-scale));
    color: #94a6aa
}

body[data-iit-page=mba-finance] .phero-card--fee b {
    display: block;
    font: calc(28px * var(--iit-text-scale))/1.15 var(--iit-font-heading);
    color: var(--deep)
}

body[data-iit-page=mba-finance] .phero-card--fee span {
    display: block;
    margin-top: 4px;
    font-size: calc(11px * var(--iit-text-scale));
    color: var(--muted)
}

body[data-iit-page=mba-finance] .phero-card--seats {
    right: -14px;
    bottom: 0;
    width: 200px;
    padding: 14px 16px
}

body[data-iit-page=mba-finance] .phero-seats-head {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    font-size: calc(12px * var(--iit-text-scale));
    font-weight: 700
}

body[data-iit-page=mba-finance] .phero-seats-head b {
    color: #c0392b;
    font-size: calc(16px * var(--iit-text-scale))
}

body[data-iit-page=mba-finance] .phero-seats-bar {
    height: 7px;
    margin: 9px 0 8px;
    border-radius: 999px;
    background: #edf2f1;
    overflow: hidden
}

body[data-iit-page=mba-finance] .phero-seats-bar i {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, var(--gold), #e67e22)
}

body[data-iit-page=mba-finance] .phero-card--seats small {
    font-size: calc(11px * var(--iit-text-scale));
    color: var(--muted)
}

/* info boxes lifted over the bottom of the hero */
body[data-iit-page=mba-finance] .pdetails {
    position: relative;
    z-index: 2;
    margin-top: -62px
}

body[data-iit-page=mba-finance] .pdetails-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    background: #fff;
    border-radius: 16px;
    box-shadow: 0 22px 50px color-mix(in srgb, var(--iit-navy) 15%, transparent);
    overflow: hidden
}

body[data-iit-page=mba-finance] .pdetail {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 24px 26px;
    border-left: 1px solid #e3ebe8
}

body[data-iit-page=mba-finance] .pdetail:first-child {
    border-left: 0
}

body[data-iit-page=mba-finance] .pdetail i {
    flex: 0 0 46px;
    width: 46px;
    height: 46px;
    display: grid;
    place-items: center;
    border-radius: 12px;
    background: var(--mint);
    color: var(--teal);
    font-style: normal;
    font-weight: 700;
    font-size: calc(13px * var(--iit-text-scale))
}

body[data-iit-page=mba-finance] .pdetail small {
    display: block;
    font-size: calc(10px * var(--iit-text-scale));
    font-weight: 700;
    letter-spacing: 1px;
    color: var(--muted)
}

body[data-iit-page=mba-finance] .pdetail b {
    display: block;
    margin-top: 3px;
    font-size: calc(15px * var(--iit-text-scale));
    line-height: 1.35
}

@media(max-width:960px) {
    body[data-iit-page=mba-finance] .phero-grid {
        grid-template-columns: 1fr;
        gap: 44px
    }

    body[data-iit-page=mba-finance] .phero-visual {
        max-width: 560px
    }

    body[data-iit-page=mba-finance] .phero-image {
        min-height: 360px
    }
}

@media(max-width:560px) {
    body[data-iit-page=mba-finance] .phero-grid {
        padding-top: 36px
    }

    body[data-iit-page=mba-finance] .phero-lead {
        font-size: calc(15px * var(--iit-text-scale))
    }

    body[data-iit-page=mba-finance] .phero-btn {
        flex: 1 1 100%;
        justify-content: center
    }

    body[data-iit-page=mba-finance] .phero-rankings {
        grid-template-columns: repeat(3, 1fr)
    }

    body[data-iit-page=mba-finance] .phero-rankings li:nth-child(3n+1) {
        padding-left: 0;
        border-left: 0
    }

    body[data-iit-page=mba-finance] .phero-visual {
        padding: 0
    }

    body[data-iit-page=mba-finance] .phero-visual:before {
        display: none
    }

    body[data-iit-page=mba-finance] .phero-image {
        min-height: 280px
    }

    body[data-iit-page=mba-finance] .phero-card {
        position: static;
        width: auto;
        margin-top: 12px
    }

    body[data-iit-page=mba-finance] .pdetails-grid {
        grid-template-columns: 1fr
    }

    body[data-iit-page=mba-finance] .pdetail {
        border-left: 0;
        border-top: 1px solid #e3ebe8
    }

    body[data-iit-page=mba-finance] .pdetail:first-child {
        border-top: 0
    }
}

/* home: IIT Patna advantage (redesign) */
body[data-iit-page=home] .adv2 {
    --adv-text: #ffffff;
    --adv-muted: #b9cdca;
    --adv-line: #ffffff1f;
    --adv-card: #ffffff0d;
    --adv-card-hover: #ffffff17;
    --adv-num-bg: color-mix(in srgb, var(--iit-gold) 12%, transparent);
    position: relative;
    overflow: hidden;
    color: var(--adv-text)
}

body[data-iit-page=home] .adv2--light {
    --adv-text: var(--ink);
    --adv-muted: var(--muted);
    --adv-line: color-mix(in srgb, var(--iit-navy) 14%, transparent);
    --adv-card: #ffffff;
    --adv-card-hover: #ffffff;
    --adv-num-bg: var(--mint)
}

body[data-iit-page=home] .adv2--dark:before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        radial-gradient(640px 420px at 100% 0%, color-mix(in srgb, var(--iit-primary) 25%, transparent), transparent 70%),
        radial-gradient(520px 380px at 0% 100%, color-mix(in srgb, var(--iit-gold) 10%, transparent), transparent 70%);
    pointer-events: none
}

body[data-iit-page=home] .adv2-grid {
    position: relative;
    display: grid;
    grid-template-columns: 1.05fr .95fr;
    gap: 64px;
    align-items: center
}

body[data-iit-page=home] .adv2 .eyebrow {
    color: var(--gold)
}

body[data-iit-page=home] .adv2--light .eyebrow {
    color: var(--teal)
}

body[data-iit-page=home] .adv2 h2 {
    color: var(--adv-text);
    margin: 14px 0 0
}

body[data-iit-page=home] .adv2-lead {
    color: var(--adv-muted);
    font-size: calc(16px * var(--iit-text-scale));
    line-height: 1.65;
    max-width: 540px;
    margin: 16px 0 0
}

body[data-iit-page=home] .adv2-features {
    list-style: none;
    padding: 0;
    margin: 30px 0 0;
    display: grid;
    gap: 12px
}

body[data-iit-page=home] .adv2-features li {
    display: flex;
    gap: 16px;
    align-items: flex-start;
    padding: 18px 20px;
    border: 1px solid var(--adv-line);
    border-radius: 14px;
    background: var(--adv-card);
    transition: background .25s ease, transform .25s ease, border-color .25s ease
}

body[data-iit-page=home] .adv2-features li:hover {
    background: var(--adv-card-hover);
    border-color: color-mix(in srgb, var(--iit-gold) 40%, transparent);
    transform: translateX(4px)
}

body[data-iit-page=home] .adv2--light .adv2-features li:hover {
    box-shadow: 0 12px 28px color-mix(in srgb, var(--iit-navy) 8%, transparent)
}

body[data-iit-page=home] .adv2-num {
    flex: 0 0 42px;
    height: 42px;
    display: grid;
    place-items: center;
    border-radius: 12px;
    background: var(--adv-num-bg);
    color: var(--gold);
    font: 700 calc(15px * var(--iit-text-scale)) var(--iit-font-heading)
}

body[data-iit-page=home] .adv2--light .adv2-num {
    color: var(--teal)
}

body[data-iit-page=home] .adv2-features b {
    display: block;
    font-size: calc(15px * var(--iit-text-scale));
    line-height: 1.4;
    color: var(--adv-text)
}

body[data-iit-page=home] .adv2-features small {
    display: block;
    margin-top: 5px;
    font-size: calc(13px * var(--iit-text-scale));
    line-height: 1.55;
    color: var(--adv-muted)
}

body[data-iit-page=home] .adv2-panel {
    position: relative;
    padding: 30px;
    border: 1px solid var(--adv-line);
    border-radius: 22px;
    background: linear-gradient(160deg, #ffffff12, #ffffff05)
}

body[data-iit-page=home] .adv2--light .adv2-panel {
    background: #ffffff8c;
    box-shadow: 0 24px 60px color-mix(in srgb, var(--iit-navy) 8%, transparent)
}

body[data-iit-page=home] .adv2-stats {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px
}

body[data-iit-page=home] .adv2-stat {
    position: relative;
    padding: 24px 22px 22px;
    border-radius: 16px;
    background: var(--adv-card);
    border: 1px solid var(--adv-line);
    overflow: hidden
}

body[data-iit-page=home] .adv2-stat:after {
    content: "";
    position: absolute;
    left: 22px;
    top: 0;
    width: 34px;
    height: 3px;
    border-radius: 0 0 3px 3px;
    background: var(--gold)
}

body[data-iit-page=home] .adv2-stat b {
    display: block;
    font: calc(42px * var(--iit-text-scale))/1.05 var(--iit-font-heading);
    color: var(--gold)
}

body[data-iit-page=home] .adv2--light .adv2-stat b {
    color: var(--teal)
}

body[data-iit-page=home] .adv2-stat span {
    display: block;
    margin-top: 8px;
    font-size: calc(13px * var(--iit-text-scale));
    line-height: 1.45;
    color: var(--adv-muted)
}

body[data-iit-page=home] .adv2-link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-top: 22px;
    padding: 13px 22px;
    border-radius: 6px;
    background: var(--gold);
    color: var(--deep);
    font-size: calc(14px * var(--iit-text-scale));
    font-weight: 700;
    text-decoration: none;
    transition: transform .2s ease, background .2s ease
}

body[data-iit-page=home] .adv2-link:hover {
    background: #f7c95e;
    transform: translateY(-2px)
}

body[data-iit-page=home] .adv2-link:focus-visible,
body[data-iit-page=home] .adv2-features li:focus-within {
    outline: 3px solid var(--iit-mint-bright);
    outline-offset: 3px
}

@media (prefers-reduced-motion: reduce) {

    body[data-iit-page=home] .adv2-features li,
    body[data-iit-page=home] .adv2-link {
        transition: none
    }

    body[data-iit-page=home] .adv2-features li:hover,
    body[data-iit-page=home] .adv2-link:hover {
        transform: none
    }
}

@media(max-width:900px) {
    body[data-iit-page=home] .adv2-grid {
        grid-template-columns: 1fr;
        gap: 40px
    }
}

@media(max-width:520px) {
    body[data-iit-page=home] .adv2-panel {
        padding: 18px
    }

    body[data-iit-page=home] .adv2-stats {
        gap: 10px
    }

    body[data-iit-page=home] .adv2-stat {
        padding: 20px 16px 18px
    }

    body[data-iit-page=home] .adv2-stat b {
        font-size: calc(32px * var(--iit-text-scale))
    }

    body[data-iit-page=home] .adv2-features li {
        padding: 16px
    }

    body[data-iit-page=home] .adv2-link {
        display: flex;
        justify-content: center
    }
}

/* home: "Who is this program for?" (redesign, grid / list / slider) */
body[data-iit-page=home] .aud2-head {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 32px;
    margin-bottom: 40px
}

body[data-iit-page=home] .aud2-head .section-head {
    margin: 0
}

body[data-iit-page=home] .aud2-side {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 16px;
    max-width: 380px
}

body[data-iit-page=home] .aud2-note {
    margin: 0;
    color: var(--muted);
    font-size: calc(14px * var(--iit-text-scale));
    line-height: 1.6;
    text-align: right
}

body[data-iit-page=home] .aud2-track {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 22px
}

body[data-iit-page=home] .aud2-card {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 22px;
    padding: 30px 28px 32px;
    border: 1px solid #e3ebe8;
    border-radius: 18px;
    background: #fff;
    overflow: hidden;
    transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease
}

body[data-iit-page=home] .aud2-card:after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 64px;
    height: 4px;
    background: var(--gold);
    transition: width .35s ease
}

body[data-iit-page=home] .aud2-card:hover {
    transform: translateY(-6px);
    border-color: transparent;
    box-shadow: 0 24px 50px color-mix(in srgb, var(--iit-navy) 12%, transparent)
}

body[data-iit-page=home] .aud2-card:hover:after {
    width: 100%
}

body[data-iit-page=home] .aud2-num {
    display: grid;
    place-items: center;
    width: 54px;
    height: 54px;
    border-radius: 16px;
    background: linear-gradient(135deg, var(--teal), var(--iit-primary));
    color: #fff;
    font: 700 calc(19px * var(--iit-text-scale)) var(--iit-font-heading);
    box-shadow: 0 10px 22px color-mix(in srgb, var(--iit-primary) 25%, transparent);
    flex-shrink: 0
}

body[data-iit-page=home] .aud2-card h3 {
    font: calc(23px * var(--iit-heading-scale))/1.2 var(--iit-font-heading);
    margin: 0 0 10px;
    color: var(--ink)
}

body[data-iit-page=home] .aud2-card p {
    margin: 0;
    font-size: calc(14px * var(--iit-text-scale));
    line-height: 1.65;
    color: var(--muted)
}

/* list: one card below another */
body[data-iit-page=home] .aud2--list .aud2-track {
    grid-template-columns: 1fr;
    gap: 14px
}

body[data-iit-page=home] .aud2--list .aud2-card {
    flex-direction: row;
    align-items: center;
    gap: 26px;
    padding: 26px 30px
}

body[data-iit-page=home] .aud2--list .aud2-card:hover {
    transform: translateX(6px)
}

body[data-iit-page=home] .aud2--list .aud2-card:after {
    top: 0;
    bottom: 0;
    width: 4px;
    height: auto
}

body[data-iit-page=home] .aud2--list .aud2-card:hover:after {
    width: 4px
}

body[data-iit-page=home] .aud2--list .aud2-body {
    display: grid;
    grid-template-columns: minmax(200px, .8fr) 1.6fr;
    gap: 24px;
    align-items: center;
    flex: 1
}

body[data-iit-page=home] .aud2--list .aud2-card h3 {
    margin: 0
}

/* slider: horizontal scroll with snap */
body[data-iit-page=home] .aud2--slider .aud2-track {
    display: flex;
    gap: 22px;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    scrollbar-width: none;
    padding: 8px 4px 34px;
    margin: -8px -4px 0
}

body[data-iit-page=home] .aud2--slider .aud2-track::-webkit-scrollbar {
    display: none
}

body[data-iit-page=home] .aud2--slider .aud2-track:focus-visible {
    outline: 3px solid var(--iit-mint-bright);
    outline-offset: 4px;
    border-radius: 18px
}

body[data-iit-page=home] .aud2--slider .aud2-card {
    flex: 0 0 calc((100% - 44px) / 3);
    scroll-snap-align: start
}

body[data-iit-page=home] .aud2-nav {
    display: flex;
    gap: 10px
}

body[data-iit-page=home] .aud2-arrow {
    width: 46px;
    height: 46px;
    border-radius: 50%;
    border: 1px solid #ceded8;
    background: #fff;
    color: var(--ink);
    font-size: calc(18px * var(--iit-text-scale));
    cursor: pointer;
    transition: background .2s ease, color .2s ease, border-color .2s ease
}

body[data-iit-page=home] .aud2-arrow:hover:not(:disabled) {
    background: var(--teal);
    border-color: var(--teal);
    color: #fff
}

body[data-iit-page=home] .aud2-arrow:disabled {
    opacity: .35;
    cursor: default
}

body[data-iit-page=home] .aud2-arrow:focus-visible {
    outline: 3px solid var(--iit-mint-bright);
    outline-offset: 2px
}

body[data-iit-page=home] .aud2-dots {
    display: flex;
    justify-content: center;
    gap: 8px
}

body[data-iit-page=home] .aud2-dots button {
    width: 8px;
    height: 8px;
    padding: 0;
    border: 0;
    border-radius: 999px;
    background: #ceded8;
    cursor: pointer;
    transition: width .25s ease, background .25s ease
}

body[data-iit-page=home] .aud2-dots button.is-active {
    width: 26px;
    background: var(--teal)
}

@media (prefers-reduced-motion: reduce) {

    body[data-iit-page=home] .aud2-card,
    body[data-iit-page=home] .aud2-card:after {
        transition: none
    }

    body[data-iit-page=home] .aud2-card:hover,
    body[data-iit-page=home] .aud2--list .aud2-card:hover {
        transform: none
    }

    body[data-iit-page=home] .aud2--slider .aud2-track {
        scroll-behavior: auto
    }
}

@media(max-width:900px) {
    body[data-iit-page=home] .aud2--slider .aud2-card {
        flex-basis: calc((100% - 22px) / 2)
    }

    body[data-iit-page=home] .aud2--list .aud2-body {
        grid-template-columns: 1fr;
        gap: 8px
    }
}

@media(max-width:640px) {
    body[data-iit-page=home] .aud2-head {
        flex-direction: column;
        align-items: flex-start;
        margin-bottom: 28px
    }

    body[data-iit-page=home] .aud2-side {
        align-items: flex-start
    }

    body[data-iit-page=home] .aud2-note {
        text-align: left
    }

    body[data-iit-page=home] .aud2--slider .aud2-card {
        flex-basis: 86%
    }

    body[data-iit-page=home] .aud2--list .aud2-card {
        flex-direction: column;
        align-items: flex-start;
        gap: 16px;
        padding: 24px
    }
}

body[data-iit-page=home] .aud2 .eyebrow {
    color: var(--teal)
}

/* shared card slider controls (Who is this program for, Our alumni) */
body[data-iit-page=home] .cs-nav {
    display: flex;
    gap: 10px
}

body[data-iit-page=home] .cs-arrow {
    width: 46px;
    height: 46px;
    border-radius: 50%;
    border: 1px solid #ceded8;
    background: #fff;
    color: var(--ink);
    font-size: calc(18px * var(--iit-text-scale));
    cursor: pointer;
    transition: background .2s ease, color .2s ease, border-color .2s ease
}

body[data-iit-page=home] .cs-arrow:hover:not(:disabled) {
    background: var(--teal);
    border-color: var(--teal);
    color: #fff
}

body[data-iit-page=home] .cs-arrow:disabled {
    opacity: .35;
    cursor: default
}

body[data-iit-page=home] .cs-arrow:focus-visible,
body[data-iit-page=home] [data-slider-track]:focus-visible {
    outline: 3px solid var(--iit-mint-bright);
    outline-offset: 3px
}

body[data-iit-page=home] .cs-dots {
    display: flex;
    justify-content: center;
    gap: 8px
}

body[data-iit-page=home] .cs-dots button {
    width: 8px;
    height: 8px;
    padding: 0;
    border: 0;
    border-radius: 999px;
    background: #ceded8;
    cursor: pointer;
    transition: width .25s ease, background .25s ease
}

body[data-iit-page=home] .cs-dots button.is-active {
    width: 26px;
    background: var(--teal)
}

/* our alumni: layout options */
body[data-iit-page=home] .al-side {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 16px
}

body[data-iit-page=home] .al-side .al-note {
    text-align: right
}

/* slider */
body[data-iit-page=home] .al--slider .al-row {
    display: flex;
    gap: 16px;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    scrollbar-width: none;
    padding: 12px 4px 30px;
    margin: -12px -4px 0
}

body[data-iit-page=home] .al--slider .al-row::-webkit-scrollbar {
    display: none
}

body[data-iit-page=home] .al--slider .al-card {
    flex: 0 0 calc((100% - 48px) / 4);
    scroll-snap-align: start
}

/* list: one alumni below another */
body[data-iit-page=home] .al--list .al-row {
    display: grid;
    grid-template-columns: 1fr;
    gap: 12px;
    overflow: visible;
    margin: 0;
    padding: 0
}

body[data-iit-page=home] .al--list .al-card {
    flex-direction: row;
    align-items: center;
    gap: 22px;
    padding: 16px 24px 16px 16px;
    text-align: left;
    border-left: 4px solid var(--c);
    background: #fff
}

body[data-iit-page=home] .al--list .al-card:before {
    display: none
}

body[data-iit-page=home] .al--list .al-card:hover {
    transform: translateX(6px)
}

body[data-iit-page=home] .al--list .al-photo {
    flex: 0 0 72px;
    width: 72px;
    height: 72px;
    margin: 0;
    border-width: 3px;
    font-size: calc(24px * var(--iit-text-scale))
}

body[data-iit-page=home] .al--list .al-body {
    flex-direction: row;
    align-items: center;
    flex-wrap: wrap;
    gap: 6px 22px;
    padding: 0
}

body[data-iit-page=home] .al--list .al-body h3 {
    flex: 0 0 220px;
    margin: 0;
    font-size: calc(18px * var(--iit-heading-scale))
}

body[data-iit-page=home] .al--list .al-body p {
    flex: 1;
    min-height: 0;
    margin: 0;
    font-size: calc(14px * var(--iit-text-scale))
}

body[data-iit-page=home] .al--list .al-co {
    margin: 0
}

@media(max-width:1000px) {
    body[data-iit-page=home] .al--slider .al-card {
        flex-basis: calc((100% - 32px) / 3)
    }
}

@media(max-width:700px) {
    body[data-iit-page=home] .al-side {
        align-items: flex-start;
        margin-top: 15px
    }

    body[data-iit-page=home] .al-side .al-note {
        text-align: left;
        margin-top: 0
    }

    body[data-iit-page=home] .al--slider .al-card {
        flex-basis: 72%
    }

    body[data-iit-page=home] .al--list .al-card {
        flex: none;
        padding: 14px
    }

    body[data-iit-page=home] .al--list .al-photo {
        flex-basis: 60px;
        width: 60px;
        height: 60px
    }

    body[data-iit-page=home] .al--list .al-body h3 {
        flex-basis: 100%
    }
}

@media (prefers-reduced-motion: reduce) {
    body[data-iit-page=home] .al--list .al-card:hover {
        transform: none
    }

    body[data-iit-page=home] .al--slider .al-row {
        scroll-behavior: auto
    }
}

/* testimonials: layout options (grid / list / slider) */
body[data-iit-page=home] .stories-bar {
    display: flex;
    justify-content: flex-end;
    margin: -8px 0 18px
}

body[data-iit-page=home] #stories {
    background: #002f54 !important;
    color: #fff
}

body[data-iit-page=home] #stories .section-head h2,
body[data-iit-page=home] #stories .section-head p,
body[data-iit-page=home] #stories .section-head .eyebrow {
    color: #fff
}

body[data-iit-page=home] #stories .section-head p {
    opacity: .88
}

body[data-iit-page=home] #stories .section-head .eyebrow:before {
    background: #ff7a1a
}

body[data-iit-page=home] #stories .stories-head {
    max-width: 920px
}

body[data-iit-page=home] #stories .stories-eyebrow {
    display: flex;
    align-items: center;
    gap: 14px;
    color: rgba(255, 255, 255, .9);
    font: 700 calc(13px * var(--iit-text-scale))/1.2 var(--iit-font-body);
    letter-spacing: 2.6px;
    text-transform: uppercase
}

body[data-iit-page=home] #stories .stories-eyebrow span {
    display: flex;
    height: 6px
}

body[data-iit-page=home] #stories .stories-eyebrow i {
    display: block;
    height: 100%
}

body[data-iit-page=home] #stories .stories-eyebrow i:nth-child(1) {
    width: 30px;
    background: #ff7a1a
}

body[data-iit-page=home] #stories .stories-eyebrow i:nth-child(2) {
    width: 12px;
    background: #fff
}

body[data-iit-page=home] #stories .stories-eyebrow i:nth-child(3) {
    width: 30px;
    background: rgba(255, 255, 255, .45)
}

body[data-iit-page=home] #stories .stories-head h2 {
    margin-top: 14px;
    color: #fff;
    font-size: calc(clamp(36px, 4.2vw, 56px) * var(--iit-heading-scale));
    line-height: 1.1;
    letter-spacing: -.035em
}

body[data-iit-page=home] #stories .stories-head h2 em {
    color: #ff8a2a;
    font-style: normal
}

body[data-iit-page=home] #stories .stories-head p {
    max-width: 720px;
    margin-top: 16px;
    color: rgba(255, 255, 255, .9);
    line-height: 1.7
}

body[data-iit-page=home] .stories .cs-dots button.is-active {
    background: var(--gold)
}

/* slider */
body[data-iit-page=home] .stories--slider .success-grid {
    display: flex;
    gap: 18px;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    scrollbar-width: none;
    padding: 10px 4px 30px;
    margin: -10px -4px 0
}

body[data-iit-page=home] .stories--slider .success-grid::-webkit-scrollbar {
    display: none
}

body[data-iit-page=home] .stories--slider .success-card {
    flex: 0 0 calc((100% - 36px) / 3);
    scroll-snap-align: start
}

/* list: one testimonial below another */
body[data-iit-page=home] .stories--list .success-grid {
    grid-template-columns: 1fr;
    gap: 14px
}

body[data-iit-page=home] .stories--list .success-card {
    display: grid;
    grid-template-columns: 270px 1fr;
    grid-template-rows: 1fr auto;
    padding: 0;
    overflow: hidden
}

body[data-iit-page=home] .stories--list .success-card:hover {
    transform: translateX(6px)
}

body[data-iit-page=home] .stories--list .success-card .story-top {
    grid-row: 1 / span 2;
    margin: 0;
    padding: 22px 24px
}

body[data-iit-page=home] .stories--list .success-card p {
    min-height: 0;
    margin: 22px 26px 12px;
    font-size: calc(14px * var(--iit-text-scale));
    line-height: 1.65
}

body[data-iit-page=home] .stories--list .journey-line {
    margin: 0 26px 20px
}

@media(max-width:800px) {
    body[data-iit-page=home] .stories--slider .success-card {
        flex-basis: calc((100% - 18px) / 2)
    }

    body[data-iit-page=home] .stories--list .success-grid {
        grid-template-columns: 1fr
    }

    body[data-iit-page=home] .stories--list .success-card {
        grid-template-columns: 1fr;
        grid-template-rows: auto
    }

    body[data-iit-page=home] .stories--list .success-card .story-top {
        grid-row: auto
    }

    body[data-iit-page=home] .stories--list .success-card p {
        margin: 18px 22px 10px
    }

    body[data-iit-page=home] .stories--list .journey-line {
        margin: 0 22px 18px
    }
}

@media(max-width:460px) {
    body[data-iit-page=home] .stories--slider .success-card {
        flex-basis: 86%
    }

    body[data-iit-page=home] .stories-bar {
        justify-content: flex-start
    }
}

@media (prefers-reduced-motion: reduce) {
    body[data-iit-page=home] .stories--list .success-card:hover {
        transform: none
    }

    body[data-iit-page=home] .stories--slider .success-grid {
        scroll-behavior: auto
    }
}

/* home: news list scrolls inside a box with up / down arrows */
body[data-iit-page=home] .press-scroller {
    position: relative;
    min-height: 360px
}

body[data-iit-page=home] .press-scroller .press-list {
    position: absolute;
    inset: 0 62px 0 0;
    overflow-y: auto;
    scroll-snap-type: y mandatory;
    scrollbar-width: none;
    padding: 2px;
    gap: 14px
}

body[data-iit-page=home] .press-scroller .press-list::-webkit-scrollbar {
    display: none
}

body[data-iit-page=home] .press-scroller.is-scrollable .press-list {
    -webkit-mask-image: linear-gradient(180deg, #000 85%, transparent);
    mask-image: linear-gradient(180deg, #000 85%, transparent)
}

body[data-iit-page=home] .press-scroller .press-list:focus-visible {
    outline: 3px solid var(--iit-mint-bright);
    outline-offset: 3px;
    border-radius: 16px
}

body[data-iit-page=home] .press-scroller .press-item {
    flex: none;
    scroll-snap-align: start
}

body[data-iit-page=home] .press-scroller .press-item:hover {
    transform: none
}

body[data-iit-page=home] .press-arrows {
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    display: flex;
    flex-direction: column;
    gap: 10px
}

body[data-iit-page=home] .press-arrow {
    width: 46px;
    height: 46px;
    border-radius: 50%;
    border: 1px solid #ceded8;
    background: #fff;
    color: var(--ink);
    font-size: calc(18px * var(--iit-text-scale));
    cursor: pointer;
    transition: background .2s ease, color .2s ease, border-color .2s ease
}

body[data-iit-page=home] .press-arrow:hover:not(:disabled) {
    background: var(--teal);
    border-color: var(--teal);
    color: #fff
}

body[data-iit-page=home] .press-arrow:disabled {
    opacity: .35;
    cursor: default
}

body[data-iit-page=home] .press-arrow:focus-visible {
    outline: 3px solid var(--iit-mint-bright);
    outline-offset: 2px
}

@media(max-width:800px) {
    body[data-iit-page=home] .press-scroller {
        min-height: 0;
        height: 440px
    }
}

@media(max-width:460px) {
    body[data-iit-page=home] .press-scroller .press-list {
        right: 54px
    }

    body[data-iit-page=home] .press-arrow {
        width: 40px;
        height: 40px
    }
}

/* news detail page */
body[data-iit-page=home] .pnews-hero {
    background:
        radial-gradient(700px 360px at 90% -10%, color-mix(in srgb, var(--iit-primary) 25%, transparent), transparent 70%),
        linear-gradient(160deg, #0a3446, var(--deep));
    color: #fff
}

body[data-iit-page=home] .pnews-hero-inner {
    max-width: 860px;
    padding: 54px 0 60px
}

body[data-iit-page=home] .pnews-crumb {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    font-size: calc(12px * var(--iit-text-scale));
    color: #9fb9b6;
    margin-bottom: 26px
}

body[data-iit-page=home] .pnews-crumb a {
    color: var(--iit-mint-bright);
    text-decoration: none
}

body[data-iit-page=home] .pnews-crumb a:hover {
    text-decoration: underline
}

body[data-iit-page=home] .pnews-meta {
    color: #b9cdca
}

body[data-iit-page=home] .pnews-meta .press-source {
    color: var(--gold)
}

body[data-iit-page=home] .pnews-hero h1 {
    font-size: calc(clamp(32px, 4.2vw, 52px) * var(--iit-heading-scale));
    line-height: 1.12;
    letter-spacing: -1px;
    margin: 16px 0 0
}

body[data-iit-page=home] .pnews-lead {
    margin: 18px 0 0;
    font-size: calc(18px * var(--iit-text-scale));
    line-height: 1.6;
    color: #cddcda
}

body[data-iit-page=home] .pnews-body {
    padding: 56px 0 88px
}

body[data-iit-page=home] .pnews-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 340px;
    gap: 56px;
    align-items: start
}

body[data-iit-page=home] .pnews-image {
    display: block;
    width: 100%;
    max-height: 460px;
    object-fit: cover;
    border-radius: 18px;
    margin-bottom: 32px
}

body[data-iit-page=home] .pnews-article .custom-content {
    font-size: calc(17px * var(--iit-text-scale));
    line-height: 1.8;
    color: var(--ink)
}

body[data-iit-page=home] .pnews-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 14px 24px;
    margin-top: 36px;
    padding-top: 26px;
    border-top: 1px solid #dfe7e4
}

body[data-iit-page=home] .pnews-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 14px 24px;
    border-radius: 6px;
    background: var(--teal);
    color: #fff;
    font-size: calc(14px * var(--iit-text-scale));
    font-weight: 700;
    text-decoration: none
}

body[data-iit-page=home] .pnews-btn:hover {
    background: var(--iit-primary)
}

body[data-iit-page=home] .pnews-back {
    color: var(--teal);
    font-size: calc(14px * var(--iit-text-scale));
    font-weight: 700;
    text-decoration: none
}

body[data-iit-page=home] .pnews-back:hover {
    text-decoration: underline
}

body[data-iit-page=home] .pnews-more {
    position: sticky;
    top: 24px;
    display: grid;
    gap: 14px
}

body[data-iit-page=home] .pnews-more h2 {
    font-size: calc(24px * var(--iit-heading-scale));
    margin: 0 0 4px
}

body[data-iit-page=home] .pnews-more-item {
    grid-template-columns: 64px 1fr;
    gap: 14px;
    padding: 14px
}

body[data-iit-page=home] .pnews-more-item .press-thumb {
    width: 64px;
    height: 64px
}

body[data-iit-page=home] .pnews-more-item .press-thumb span {
    font-size: calc(20px * var(--iit-text-scale))
}

body[data-iit-page=home] .pnews-more-item h3 {
    font-size: calc(16px * var(--iit-heading-scale))
}

@media(max-width:900px) {
    body[data-iit-page=home] .pnews-layout {
        grid-template-columns: 1fr;
        gap: 44px
    }

    body[data-iit-page=home] .pnews-more {
        position: static
    }
}

/* nothing to scroll: hide the arrows and let the list use the full width */
body[data-iit-page=home] .press-scroller:not(.is-scrollable) .press-arrows {
    display: none
}

body[data-iit-page=home] .press-scroller:not(.is-scrollable) .press-list {
    right: 0
}

/* contact page: real Google map when an embed link is set */
body[data-iit-page=contact] .map-embed {
    display: block;
    width: 100%;
    height: 400px;
    border: 0;
    border-radius: 12px
}

@media(max-width:600px) {
    body[data-iit-page=contact] .map-embed {
        height: 300px
    }
}

/* contact page: campus picture text readable on any photo */
body[data-iit-page=contact] .mapvisual {
    padding: 36px 20px
}

body[data-iit-page=contact] .mapvisual h3 {
    text-shadow: 0 2px 14px #0009
}

body[data-iit-page=contact] .map .mapvisual p {
    color: #ffffffe6;
    font-size: calc(14px * var(--iit-text-scale));
    margin: 8px auto 0;
    max-width: 560px;
    text-shadow: 0 1px 10px #000a
}

body[data-iit-page=contact] .map-directions {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-top: 18px;
    padding: 11px 20px;
    border-radius: 6px;
    background: var(--gold);
    color: var(--navy);
    font-size: calc(13px * var(--iit-text-scale));
    font-weight: 700;
    text-decoration: none
}

body[data-iit-page=contact] .map-directions:hover {
    background: #f7c95e
}

body[data-iit-page=contact] .map-directions:focus-visible {
    outline: 3px solid #fff;
    outline-offset: 3px
}

/* home: FAQ section */
body[data-iit-page=home] .faq2-grid {
    display: grid;
    grid-template-columns: .8fr 1.2fr;
    gap: 64px;
    align-items: start
}

body[data-iit-page=home] .faq2-intro {
    position: sticky;
    top: 24px
}

body[data-iit-page=home] .faq2 .eyebrow {
    color: var(--teal)
}

body[data-iit-page=home] .faq2-intro .section-head {
    margin-bottom: 28px
}

body[data-iit-page=home] .faq2-cta {
    padding: 26px;
    border-radius: 18px;
    background: var(--deep);
    color: #fff
}

body[data-iit-page=home] .faq2-cta b {
    display: block;
    font: calc(22px * var(--iit-text-scale))/1.25 var(--iit-font-heading)
}

body[data-iit-page=home] .faq2-cta p {
    margin: 8px 0 0;
    font-size: calc(14px * var(--iit-text-scale));
    color: #c4d4d2
}

body[data-iit-page=home] .faq2-cta-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-top: 18px;
    padding: 12px 20px;
    border-radius: 6px;
    background: var(--gold);
    color: var(--deep);
    font-size: calc(14px * var(--iit-text-scale));
    font-weight: 700;
    text-decoration: none
}

body[data-iit-page=home] .faq2-cta-btn:hover {
    background: #f7c95e
}

body[data-iit-page=home] .faq2-list {
    display: grid;
    gap: 12px
}

body[data-iit-page=home] .faq2-content {
    min-width: 0
}

body[data-iit-page=home] .faq2-tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 14px
}

body[data-iit-page=home] .faq2-tab {
    padding: 10px 18px;
    border: 1px solid #cbdedc;
    border-radius: 999px;
    background: #fff;
    color: var(--iit-navy);
    font: 700 calc(14px * var(--iit-text-scale))/1.3 var(--iit-font-body);
    cursor: pointer;
    transition: color .2s ease, background .2s ease, border-color .2s ease
}

body[data-iit-page=home] .faq2-tab[aria-selected=true] {
    border-color: var(--iit-navy);
    background: var(--iit-navy);
    color: #fff
}

body[data-iit-page=home] .faq2-tab:focus-visible {
    outline: 3px solid var(--iit-mint-bright);
    outline-offset: 3px
}

body[data-iit-page=home] .faq2-level-tabs {
    gap: 6px;
    margin-bottom: 18px
}

body[data-iit-page=home] .faq2-tab--level {
    padding: 8px 16px;
    border-radius: 6px;
    font-size: calc(13px * var(--iit-text-scale))
}

body[data-iit-page=home] .faq2-empty {
    margin: 0;
    padding: 22px;
    border: 1px dashed #b8cfce;
    border-radius: 12px;
    background: #ffffff9c;
    color: var(--muted)
}

body[data-iit-page=home] .faq2-institute-panel[hidden],
body[data-iit-page=home] .faq2-level-panel[hidden] {
    display: none
}

body[data-iit-page=home] .faq2-item {
    border: 1px solid #dfe7e4;
    border-radius: 14px;
    background: #fff;
    transition: border-color .2s ease, box-shadow .2s ease
}

body[data-iit-page=home] .faq2-item[open] {
    border-color: color-mix(in srgb, var(--iit-primary) 33%, transparent);
    box-shadow: 0 14px 30px color-mix(in srgb, var(--iit-navy) 7%, transparent)
}

body[data-iit-page=home] .faq2-item summary {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 18px 20px;
    list-style: none;
    cursor: pointer
}

body[data-iit-page=home] .faq2-item summary::-webkit-details-marker {
    display: none
}

body[data-iit-page=home] .faq2-item summary:focus-visible {
    outline: 3px solid var(--iit-mint-bright);
    outline-offset: 2px;
    border-radius: 14px
}

body[data-iit-page=home] .faq2-num {
    flex: 0 0 36px;
    height: 36px;
    display: grid;
    place-items: center;
    border-radius: 10px;
    background: var(--mint);
    color: var(--teal);
    font: 700 calc(13px * var(--iit-text-scale)) var(--iit-font-heading)
}

body[data-iit-page=home] .faq2-item[open] .faq2-num {
    background: var(--teal);
    color: #fff
}

body[data-iit-page=home] .faq2-q {
    flex: 1;
    font-size: calc(15px * var(--iit-text-scale));
    font-weight: 700;
    line-height: 1.45;
    color: var(--ink)
}

body[data-iit-page=home] .faq2-icon {
    position: relative;
    flex: 0 0 28px;
    height: 28px;
    border-radius: 50%;
    border: 1px solid #ceded8
}

body[data-iit-page=home] .faq2-icon:before,
body[data-iit-page=home] .faq2-icon:after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 11px;
    height: 2px;
    margin: -1px 0 0 -5.5px;
    background: var(--teal);
    transition: transform .2s ease
}

body[data-iit-page=home] .faq2-icon:after {
    transform: rotate(90deg)
}

body[data-iit-page=home] .faq2-item[open] .faq2-icon:after {
    transform: rotate(0deg)
}

body[data-iit-page=home] .faq2-a {
    padding: 0 22px 20px 72px;
    font-size: calc(14px * var(--iit-text-scale));
    line-height: 1.7;
    color: var(--muted)
}

body[data-iit-page=home] .faq2-a a {
    color: var(--teal);
    font-weight: 700;
    word-break: break-word
}

body[data-iit-page=home] .faq2-more {
    justify-self: start;
    margin-top: 6px;
    padding: 12px 22px;
    border: 1px solid var(--teal);
    border-radius: 6px;
    background: transparent;
    color: var(--teal);
    font: 700 calc(14px * var(--iit-text-scale)) var(--iit-font-body);
    cursor: pointer;
    transition: background .2s ease, color .2s ease
}

body[data-iit-page=home] .faq2-more:hover {
    background: var(--teal);
    color: #fff
}

body[data-iit-page=home] .faq2-more:focus-visible {
    outline: 3px solid var(--iit-mint-bright);
    outline-offset: 2px
}

@media (prefers-reduced-motion: reduce) {

    body[data-iit-page=home] .faq2-icon:before,
    body[data-iit-page=home] .faq2-icon:after {
        transition: none
    }
}

@media(max-width:900px) {
    body[data-iit-page=home] .faq2-grid {
        grid-template-columns: 1fr;
        gap: 32px
    }

    body[data-iit-page=home] .faq2-intro {
        position: static
    }
}

@media(max-width:520px) {
    body[data-iit-page=home] .faq2-item summary {
        padding: 16px;
        gap: 12px
    }

    body[data-iit-page=home] .faq2-num {
        display: none
    }

    body[data-iit-page=home] .faq2-a {
        padding: 0 16px 18px
    }

    body[data-iit-page=home] .faq2-more {
        justify-self: stretch
    }
}

/* testimonials slider: one card at a time on phones (quotes are long) */
@media(max-width:640px) {
    body[data-iit-page=home] .stories--slider .success-card {
        flex-basis: 86%
    }
}

/* Convocation photos load lazily as <img> (only when scrolled near) */
body[data-iit-page=home] .convocation-photo.has-img {
    background-image: none
}

body[data-iit-page=home] .convocation-photo.has-img>img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center
}

/* Rankings strip: row of ranking cards (images), scrolls sideways when they do not fit */
.partner.rank-strip {
    padding: 26px 0
}

.partner.rank-strip .wrap {
    position: relative;
    display: block
}

.rank-strip-track {
    --rank-gap: 18px;
    display: flex;
    gap: var(--rank-gap);
    margin: 0;
    padding: 4px 2px 6px;
    list-style: none;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    scrollbar-width: none
}

.rank-strip-track::-webkit-scrollbar {
    display: none
}

.rank-card {
    flex: 0 0 calc((100% - 5 * var(--rank-gap)) / 6);
    scroll-snap-align: start
}

.rank-card a,
.rank-card img {
    display: block
}

.rank-card img {
    width: 100%;
    height: auto;
    aspect-ratio: 1;
    object-fit: contain;
    border-radius: 14px;
    transition: transform .25s ease, box-shadow .25s ease
}

.rank-card a:hover img,
.rank-card a:focus-visible img {
    transform: translateY(-3px);
    box-shadow: 0 12px 26px rgba(8, 44, 59, .14)
}

.rank-strip-btn {
    position: absolute;
    top: 50%;
    z-index: 2;
    width: 40px;
    height: 40px;
    margin-top: -22px;
    display: grid;
    place-items: center;
    border: 1px solid #dfe7e4;
    border-radius: 50%;
    background: #fff;
    color: var(--iit-navy);
    font-size: 26px;
    line-height: 1;
    box-shadow: 0 6px 18px rgba(8, 44, 59, .14);
    cursor: pointer;
    transition: opacity .2s, background .2s, color .2s
}

.rank-strip-btn:hover {
    background: var(--iit-navy);
    color: #fff
}

.rank-strip-btn[hidden] {
    display: none
}

.rank-strip-btn:disabled {
    opacity: 0;
    pointer-events: none
}

.rank-strip-btn.is-prev {
    left: 2px
}

.rank-strip-btn.is-next {
    right: 2px
}

@media (max-width: 1100px) {
    .rank-card {
        flex-basis: calc((100% - 3 * var(--rank-gap)) / 4)
    }
}

@media (max-width: 700px) {
    .rank-strip-track {
        --rank-gap: 12px
    }

    .rank-card {
        flex-basis: 42%
    }
}

body[data-iit-page=about] .partner.rank-strip--about {
    position: relative;
    overflow: hidden;
    padding: 46px 0 50px;
    background:
        radial-gradient(ellipse at 100% 0, rgba(255, 139, 37, .12), transparent 38%),
        linear-gradient(145deg, #edf7fb, #e3f0f7) !important
}

body[data-iit-page=about] .rank-strip--about .wrap {
    max-width: 1120px
}

body[data-iit-page=about] .rank-strip-heading {
    max-width: 650px;
    margin: 0 0 24px
}

body[data-iit-page=about] .rank-strip-heading span {
    display: block;
    margin-bottom: 7px;
    color: var(--iit-primary);
    font: 700 calc(12px * var(--iit-text-scale)) var(--iit-font-body);
    letter-spacing: 2px;
    text-transform: uppercase
}

body[data-iit-page=about] .rank-strip-heading h2 {
    margin: 0;
    color: var(--iit-ink);
    font: 700 calc(30px * var(--iit-heading-scale))/1.2 var(--iit-font-heading);
    letter-spacing: -.4px
}

body[data-iit-page=about] .rank-strip--about .rank-strip-track {
    --rank-gap: 18px;
    padding: 8px 4px 16px
}

body[data-iit-page=about] .rank-strip--about .rank-card {
    position: relative;
    overflow: hidden;
    padding: 11px;
    border: 1px solid rgba(0, 47, 84, .09);
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 12px 28px rgba(0, 47, 84, .09);
    scroll-snap-align: center;
    transition: transform .25s ease, box-shadow .25s ease
}

body[data-iit-page=about] .rank-strip--about .rank-card:before {
    content: "";
    position: absolute;
    top: 0;
    right: 18px;
    left: 18px;
    height: 3px;
    border-radius: 0 0 4px 4px;
    background: linear-gradient(90deg, var(--iit-gold), var(--iit-primary))
}

body[data-iit-page=about] .rank-strip--about .rank-card img {
    border-radius: 10px
}

body[data-iit-page=about] .rank-strip--about .rank-card a:hover img,
body[data-iit-page=about] .rank-strip--about .rank-card a:focus-visible img {
    transform: none;
    box-shadow: none
}

body[data-iit-page=about] .rank-strip--about .rank-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 18px 34px rgba(0, 47, 84, .15)
}

@media (max-width: 700px) {
    body[data-iit-page=about] .partner.rank-strip--about {
        padding: 34px 0 38px
    }

    body[data-iit-page=about] .rank-strip-heading h2 {
        font-size: calc(24px * var(--iit-heading-scale))
    }

    body[data-iit-page=about] .rank-strip--about .rank-card {
        flex-basis: 62%
    }
}

/* News ticker (marquee-style line of news under the rankings) */
body[data-iit-page=home] .news-ticker {
    background: var(--ticker-bg, var(--iit-navy));
    color: var(--ticker-text, #fff);
    overflow: hidden
}

body[data-iit-page=home] .news-ticker-inner {
    display: flex;
    align-items: stretch;
    min-height: 50px
}

body[data-iit-page=home] .news-ticker-label {
    position: relative;
    z-index: 1;
    flex: none;
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 0 22px 0 18px;
    background: var(--ticker-label-bg, var(--iit-gold));
    color: var(--ticker-label-text, var(--iit-navy));
    font: 700 calc(12.5px * var(--iit-text-scale)) var(--iit-font-body);
    letter-spacing: .8px;
    text-transform: uppercase;
    white-space: nowrap
}

/* little arrow tip on the right of the label */
body[data-iit-page=home] .news-ticker-label:after {
    content: "";
    position: absolute;
    top: 0;
    right: -14px;
    width: 0;
    height: 0;
    border-top: 25px solid transparent;
    border-bottom: 25px solid transparent;
    border-left: 14px solid var(--ticker-label-bg, var(--iit-gold))
}

body[data-iit-page=home] .news-ticker-dot {
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: var(--ticker-badge, #e5484d);
    box-shadow: 0 0 0 0 var(--ticker-badge, #e5484d);
    animation: news-ticker-pulse 1.6s infinite
}

body[data-iit-page=home] .news-ticker-window {
    flex: 1;
    min-width: 0;
    overflow: hidden;
    display: flex;
    align-items: center;
    -webkit-mask-image: linear-gradient(90deg, transparent, #000 40px, #000 calc(100% - 40px), transparent);
    mask-image: linear-gradient(90deg, transparent, #000 40px, #000 calc(100% - 40px), transparent)
}

body[data-iit-page=home] .news-ticker-track {
    display: flex;
    width: max-content;
    animation: news-ticker-scroll var(--ticker-duration, 45s) linear infinite
}

body[data-iit-page=home] .news-ticker:hover .news-ticker-track,
body[data-iit-page=home] .news-ticker:focus-within .news-ticker-track {
    animation-play-state: paused
}

body[data-iit-page=home] .news-ticker-list {
    display: flex;
    margin: 0;
    padding: 0 0 0 28px;
    list-style: none
}

body[data-iit-page=home] .news-ticker-list li {
    display: flex;
    align-items: center;
    gap: 10px;
    padding-right: 28px;
    font: 500 calc(14px * var(--iit-text-scale)) var(--iit-font-body);
    white-space: nowrap
}

/* diamond between news items */
body[data-iit-page=home] .news-ticker-list li:after {
    content: "";
    width: 6px;
    height: 6px;
    margin-left: 18px;
    background: var(--ticker-label-bg, var(--iit-gold));
    transform: rotate(45deg)
}

body[data-iit-page=home] .news-ticker-list a {
    color: inherit;
    text-decoration: none
}

body[data-iit-page=home] .news-ticker-list a:hover,
body[data-iit-page=home] .news-ticker-list a:focus-visible {
    color: var(--ticker-label-bg, var(--iit-gold));
    text-decoration: underline
}

body[data-iit-page=home] .news-ticker-badge {
    padding: 2px 7px;
    border-radius: 4px;
    background: var(--ticker-badge, #e5484d);
    color: #fff;
    font-size: calc(10px * var(--iit-text-scale));
    font-weight: 800;
    letter-spacing: .6px
}

@keyframes news-ticker-scroll {
    to {
        transform: translateX(-50%)
    }
}

@keyframes news-ticker-pulse {
    70% {
        box-shadow: 0 0 0 7px transparent
    }

    100% {
        box-shadow: 0 0 0 0 transparent
    }
}

@media (max-width: 700px) {
    body[data-iit-page=home] .news-ticker-inner {
        padding: 0;
        min-height: 44px
    }

    body[data-iit-page=home] .news-ticker-label {
        padding: 0 14px 0 14px;
        font-size: calc(11px * var(--iit-text-scale))
    }

    body[data-iit-page=home] .news-ticker-label:after {
        border-top-width: 22px;
        border-bottom-width: 22px
    }

    body[data-iit-page=home] .news-ticker-list li {
        font-size: calc(13px * var(--iit-text-scale))
    }
}

/* Visitors who turn off motion get a still line they can scroll sideways */
@media (prefers-reduced-motion: reduce) {
    body[data-iit-page=home] .news-ticker-track {
        animation: none
    }

    body[data-iit-page=home] .news-ticker-window {
        overflow-x: auto
    }

    body[data-iit-page=home] .news-ticker-list[aria-hidden="true"] {
        display: none
    }
}

/* Brand theme: the header call-to-action uses the accent (Sunshade) so it stands out on any header colour */
body[data-iit-page] .head .nav a.button {
    background: var(--iit-gold);
    border-color: var(--iit-gold);
    color: var(--iit-ink)
}

body[data-iit-page] .head .nav a.button:hover,
body[data-iit-page] .head .nav a.button.active {
    background: var(--iit-mint-bright);
    border-color: var(--iit-mint-bright);
    color: var(--iit-ink)
}

/* Brand theme: main buttons inside the dark page banners use the accent (Sunshade) so they stand out on blue */
body[data-iit-page] .hero a.button:not(.ghost):not(.secondary):not(.outline) {
    background: var(--iit-gold);
    border-color: var(--iit-gold);
    color: var(--iit-ink)
}

body[data-iit-page] .hero a.button:not(.ghost):not(.secondary):not(.outline):hover {
    background: var(--iit-mint-bright);
    border-color: var(--iit-mint-bright);
    color: var(--iit-ink)
}

/* Hero campus photo: bigger on computers and tablets in landscape */
@media (min-width: 801px) {
    body[data-iit-page=home] .hero .wrap {
        min-height: 640px
    }

    body[data-iit-page=home] .visual {
        height: 570px
    }

    body[data-iit-page=home] .campus {
        width: min(460px, 100%);
        height: 540px;
        border-radius: 230px 230px 12px 12px;
        background-size: cover;
        background-position: center
    }

    body[data-iit-page=home] .first {
        top: 80px
    }

    body[data-iit-page=home] .second {
        bottom: 50px
    }
}

/* Phones: a little bigger too */
@media (max-width: 800px) {
    body[data-iit-page=home] .visual {
        height: 400px
    }

    body[data-iit-page=home] .campus {
        width: min(310px, 82vw);
        height: 370px;
        border-radius: 155px 155px 10px 10px
    }
}

/* Mobile menu panel uses the header colours (Admin -> Appearance), so links stay readable
   whatever the header colour is (dark header = dark panel with light text). */
@media (max-width: 1000px) {

    body[data-iit-page] .nav,
    body[data-iit-page] .nav.mobile-open,
    body[data-iit-page=home] .nav.mobile-open,
    body[data-iit-page=about] .nav.mobile-open,
    body[data-iit-page=contact] .nav.mobile-open {
        background: var(--iit-header-bg);
        border-color: color-mix(in srgb, var(--iit-header-text) 18%, transparent);
        box-shadow: 0 18px 40px rgba(0, 20, 40, 0.35)
    }

    body[data-iit-page] .nav.mobile-open a:not(.button) {
        color: var(--iit-header-text);
        border-bottom-color: color-mix(in srgb, var(--iit-header-text) 14%, transparent)
    }

    body[data-iit-page] .nav.mobile-open a:not(.button):hover,
    body[data-iit-page] .nav.mobile-open a.active:not(.button),
    body[data-iit-page=home] .nav.mobile-open a.active:not(.button),
    body[data-iit-page=about] .nav.mobile-open a.active:not(.button),
    body[data-iit-page=contact] .nav.mobile-open a.active:not(.button) {
        background: color-mix(in srgb, var(--iit-header-text) 10%, transparent);
        color: var(--iit-nav-active);
        border-radius: 4px
    }
}

/* Gallery: the mosaic (1 big + 4 small) repeats for every 5 photos, big photo alternating sides.
   Photos after the first 10 open with "Show more photos". */
body[data-iit-page=home] .gl-grid {
    grid-template-rows: none;
    grid-auto-rows: 230px;
    grid-auto-flow: dense
}

body[data-iit-page=home] .gl-item:first-child {
    grid-column: auto;
    grid-row: auto
}

body[data-iit-page=home] .gl-item:nth-child(5n+1) {
    grid-column: span 2;
    grid-row: span 2
}

body[data-iit-page=home] .gl-item:nth-child(10n+6) {
    grid-column: 3 / span 2
}

/* a big photo left on its own at the end becomes one wide tile */
body[data-iit-page=home] .gl-item:nth-child(5n+1):last-child {
    grid-column: 1 / -1;
    grid-row: span 1
}

body[data-iit-page=home] .gl-item:nth-child(5n+1) b {
    font-size: calc(28px * var(--iit-text-scale));
    max-width: 360px
}

body[data-iit-page=home] .gl-item:nth-child(5n+1) figcaption {
    left: 26px;
    bottom: 24px
}

body[data-iit-page=home] .gl-item.is-extra {
    display: none
}

body[data-iit-page=home] .gl-grid.show-all .gl-item.is-extra {
    display: block
}

body[data-iit-page=home] .gl-more-wrap {
    display: flex;
    justify-content: center;
    margin-top: 26px
}

body[data-iit-page=home] .gl-more {
    padding: 12px 26px;
    border: 1.5px solid var(--iit-primary);
    border-radius: 999px;
    background: transparent;
    color: var(--iit-primary);
    font: 700 calc(14px * var(--iit-text-scale)) var(--iit-font-body);
    cursor: pointer;
    transition: background .2s, color .2s
}

body[data-iit-page=home] .gl-more:hover {
    background: var(--iit-primary);
    color: #fff
}

@media (max-width: 800px) {
    body[data-iit-page=home] .gl-grid {
        grid-template-columns: 1fr 1fr;
        grid-template-rows: none;
        grid-auto-rows: 160px
    }

    body[data-iit-page=home] .gl-item:nth-child(5n+1),
    body[data-iit-page=home] .gl-item:nth-child(10n+6),
    body[data-iit-page=home] .gl-item:nth-child(5n+1):last-child {
        grid-column: 1 / -1;
        grid-row: span 2
    }

    body[data-iit-page=home] .gl-item:last-child {
        grid-column: auto
    }

    body[data-iit-page=home] .gl-item:nth-child(5n+1) b {
        font-size: calc(19px * var(--iit-text-scale))
    }
}

@media (max-width: 460px) {
    body[data-iit-page=home] .gl-grid {
        grid-template-columns: 1fr;
        grid-auto-rows: 210px
    }

    body[data-iit-page=home] .gl-item:nth-child(5n+1),
    body[data-iit-page=home] .gl-item:nth-child(10n+6) {
        grid-column: auto;
        grid-row: span 1
    }
}

/* Our Programs: group headings and photo cards with Brochure / Apply buttons */
body[data-iit-page] .program-group-title {
    scroll-margin-top: 110px;
    position: relative;
    margin: 44px 0 20px;
    padding-left: 16px;
    font: 700 calc(22px * var(--iit-text-scale))/1.3 var(--iit-font-heading);
    color: var(--iit-navy)
}

body[data-iit-page] .program-group-title:before {
    content: "";
    position: absolute;
    left: 0;
    top: 4px;
    bottom: 4px;
    width: 5px;
    border-radius: 3px;
    background: var(--iit-gold)
}

body[data-iit-page] .section-head+.program-group-title {
    margin-top: 8px
}

body[data-iit-page=home] .program-partner-divider {
    position: relative;
    left: 50%;
    display: grid;
    place-items: center;
    width: 100vw;
    min-height: 132px;
    margin: 54px 0 42px;
    padding: 20px 24px;
    transform: translateX(-50%);
    background: #064b7d;
    color: #fff
}

body[data-iit-page=home] .program-partner-logo {
    display: block;
    width: min(490px, 88vw);
    max-height: 114px;
    object-fit: contain;
    /* background: rgba(255, 255, 255, .34) */
}

body[data-iit-page=home] .program-partner-divider+.program-group-title {
    margin-top: 0
}

@media (max-width: 520px) {
    body[data-iit-page=home] .program-partner-divider {
        min-height: 112px;
        margin: 38px 0 30px;
        padding: 16px
    }

    body[data-iit-page=home] .program-partner-logo {
        width: min(490px, 92vw);
        max-height: 84px
    }
}

body[data-iit-page=home] .cards.cards--photos {
    grid-template-columns: repeat(4, 1fr)
}

body[data-iit-page] .card.card--photo {
    scroll-margin-top: 110px;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    border-radius: 14px
}

body[data-iit-page] .card--photo .card-photo {
    aspect-ratio: 4 / 3.4;
    overflow: hidden;
    background: var(--iit-mint)
}

body[data-iit-page] .card--photo .card-photo img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center 18%;
    transition: transform .4s ease
}

body[data-iit-page] .card--photo:hover .card-photo img {
    transform: scale(1.04)
}

body[data-iit-page] .card--photo .cardbody {
    flex: 1;
    display: flex;
    flex-direction: column;
    padding: 18px
}

body[data-iit-page] .card--photo h3 {
    margin: 6px 0 6px;
    font-size: calc(19px * var(--iit-text-scale))
}

body[data-iit-page] .card--photo p {
    margin: 0 0 12px;
    font-size: calc(13.5px * var(--iit-text-scale));
    line-height: 1.5
}

body[data-iit-page] .card-meta {
    margin-top: auto;
    padding-top: 10px;
    border-top: 1px solid color-mix(in srgb, var(--iit-ink) 10%, transparent);
    font: 600 calc(12px * var(--iit-text-scale)) var(--iit-font-body);
    color: var(--iit-muted)
}

body[data-iit-page] .card-actions {
    display: grid;
    gap: 8px;
    margin-top: 12px
}

body[data-iit-page] .card-meta+.card-actions {
    margin-top: 10px
}

body[data-iit-page] .card-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: 8px 12px;
    border: 1.5px solid var(--iit-primary);
    border-radius: 8px;
    font: 700 calc(13px * var(--iit-text-scale))/1.25 var(--iit-font-body);
    text-align: center;
    text-decoration: none;
    transition: background .2s, color .2s, border-color .2s
}

body[data-iit-page] .card-btn--outline {
    background: transparent;
    color: var(--iit-primary)
}

body[data-iit-page] .card-btn--outline:hover {
    background: var(--iit-primary);
    color: #fff
}

body[data-iit-page] .card-btn--apply {
    background: var(--iit-gold);
    border-color: var(--iit-gold);
    color: var(--iit-ink)
}

body[data-iit-page] .card-btn--apply:hover {
    background: var(--iit-primary);
    border-color: var(--iit-primary);
    color: #fff
}

body[data-iit-page] .card-status {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: 8px 12px;
    border-radius: 8px;
    background: #fdecec;
    color: #b42318;
    font: 700 calc(12.5px * var(--iit-text-scale))/1.3 var(--iit-font-body);
    text-align: center
}

@media (max-width: 1100px) {
    body[data-iit-page=home] .cards.cards--photos {
        grid-template-columns: repeat(3, 1fr)
    }
}

@media (max-width: 800px) {
    body[data-iit-page=home] .cards.cards--photos {
        grid-template-columns: repeat(2, 1fr)
    }
}

@media (max-width: 520px) {
    body[data-iit-page=home] .cards.cards--photos {
        grid-template-columns: 1fr
    }
}

/* All Programs page: photo cards from Home > Our Programs */
body[data-iit-page=programs] .program.card--photo {
    display: flex;
    flex-direction: column;
    overflow: hidden
}


body[data-iit-page=programs] .program-group-note {
    display: block;
    margin-top: 4px;
    font-size: calc(11.5px * var(--iit-text-scale));
    line-height: 1.4;
    color: var(--iit-muted)
}

/* Compact program cards (Admin -> Our Programs -> Card design: Compact; scoped by .programs-compact) (photo on the left, buttons in one row) - overrides the taller photo cards above */
body[data-iit-page=home] .programs-compact .cards.cards--photos {
    grid-template-columns: repeat(3, 1fr);
    gap: 16px
}

body[data-iit-page] .programs-compact .card.card--photo,
body[data-iit-page=programs] .programs-compact .program.card--photo {
    display: grid;
    grid-template-columns: 96px 1fr;
    column-gap: 14px;
    align-content: start;
    padding: 14px;
    border-radius: 14px;
    transition: transform .25s ease, box-shadow .25s ease
}

body[data-iit-page] .programs-compact .card.card--photo:hover,
body[data-iit-page=programs] .programs-compact .program.card--photo:hover {
    transform: translateY(-3px);
    box-shadow: 0 14px 30px rgba(0, 36, 63, .12)
}

/* the text block's children sit straight in the card grid */
body[data-iit-page] .programs-compact .card--photo .cardbody,
body[data-iit-page=programs] .programs-compact .card--photo .body {
    display: contents
}

body[data-iit-page] .programs-compact .card--photo .card-photo {
    grid-column: 1;
    grid-row: 1 / span 4;
    align-self: start;
    width: 96px;
    height: 96px;
    aspect-ratio: auto;
    border-radius: 10px
}

body[data-iit-page] .programs-compact .card--photo .card-photo img {
    object-position: center 15%
}

body[data-iit-page] .programs-compact .card--photo .tag,
body[data-iit-page] .programs-compact .card--photo h3,
body[data-iit-page] .programs-compact .card--photo p,
body[data-iit-page] .programs-compact .card--photo .card-meta,
body[data-iit-page] .programs-compact .card--photo .program-group-note,
body[data-iit-page] .programs-compact .card--photo .elig {
    grid-column: 2;
    min-width: 0
}

body[data-iit-page] .programs-compact .card--photo .tag {
    font-size: calc(10px * var(--iit-text-scale));
    letter-spacing: .8px
}

body[data-iit-page] .programs-compact .card--photo h3 {
    margin: 2px 0 4px;
    font-size: calc(17px * var(--iit-text-scale));
    line-height: 1.25
}

body[data-iit-page] .programs-compact .card--photo p {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    margin: 0 0 4px;
    font-size: calc(12.5px * var(--iit-text-scale));
    line-height: 1.45
}

body[data-iit-page] .programs-compact .card--photo .card-meta {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: calc(11.5px * var(--iit-text-scale))
}

body[data-iit-page] .programs-compact .card--photo .hl {
    display: none
}

body[data-iit-page] .programs-compact .card--photo .program-group-note {
    margin: 0 0 4px
}

body[data-iit-page] .programs-compact .card--photo .card-actions,
body[data-iit-page] .programs-compact .card--photo .card-meta+.card-actions {
    grid-column: 1 / -1;
    display: flex;
    gap: 8px;
    margin-top: 12px
}

body[data-iit-page] .programs-compact .card--photo .card-btn,
body[data-iit-page] .programs-compact .card--photo .card-status {
    min-height: 38px;
    padding: 6px 12px;
    font-size: calc(12px * var(--iit-text-scale))
}

body[data-iit-page] .programs-compact .card--photo .card-btn--outline {
    flex: none
}

body[data-iit-page] .programs-compact .card--photo .card-btn--apply,
body[data-iit-page] .programs-compact .card--photo .card-status {
    flex: 1
}

@media (max-width: 1100px) {
    body[data-iit-page=home] .programs-compact .cards.cards--photos {
        grid-template-columns: repeat(2, 1fr)
    }
}

@media (max-width: 640px) {
    body[data-iit-page=home] .programs-compact .cards.cards--photos {
        grid-template-columns: 1fr
    }

    body[data-iit-page] .programs-compact .card.card--photo,
    body[data-iit-page=programs] .programs-compact .program.card--photo {
        grid-template-columns: 84px 1fr
    }

    body[data-iit-page] .programs-compact .card--photo .card-photo {
        width: 84px;
        height: 84px
    }
}

/* compact cards: keep the description to exactly two lines */
body[data-iit-page] .programs-compact .card--photo p,
body[data-iit-page=home] .programs-compact .card.card--photo p {
    align-self: start;
    min-height: 0;
    max-height: calc(2 * 1.45em)
}

/* compact cards: the text column may shrink (no overflow), simpler cards on the All Programs page */
body[data-iit-page] .programs-compact .card.card--photo,
body[data-iit-page=programs] .programs-compact .program.card--photo {
    grid-template-columns: 96px minmax(0, 1fr)
}

body[data-iit-page=programs] .programs-compact .card--photo .program-group-note {
    display: none
}

body[data-iit-page=programs] .programs-compact .card--photo .card-btn {
    white-space: normal
}

@media (max-width: 1100px) {
    body[data-iit-page=programs] .programs-compact .program-grid {
        grid-template-columns: repeat(2, 1fr)
    }
}

@media (max-width: 640px) {

    body[data-iit-page] .programs-compact .card.card--photo,
    body[data-iit-page=programs] .programs-compact .program.card--photo {
        grid-template-columns: 84px minmax(0, 1fr)
    }

    body[data-iit-page=programs] .programs-compact .program-grid {
        grid-template-columns: 1fr
    }
}

/* Large program cards on the All Programs page: buttons stay at the bottom of the card */
body[data-iit-page=programs] .programs-large .program.card--photo .body {
    flex: 1;
    display: flex;
    flex-direction: column
}

/* Our Programs: highlight badge under the section description */
body[data-iit-page=home] .section-head .programs-highlight {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin: 14px 0 0;
    padding: 8px 14px;
    border-radius: 999px;
    background: color-mix(in srgb, var(--iit-gold) 16%, #fff);
    border: 1px solid color-mix(in srgb, var(--iit-gold) 45%, transparent);
    color: var(--iit-ink);
    font: 700 calc(13.5px * var(--iit-text-scale))/1.35 var(--iit-font-body)
}

body[data-iit-page=home] .section-head .programs-highlight span {
    display: grid;
    place-items: center;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: var(--iit-gold);
    color: var(--iit-ink);
    font-size: 12px
}

/* Programs at a glance (home): intro + program lists per block */
body[data-iit-page=home] .admissions-intro {
    max-width: 860px;
    margin: 0 auto 34px;
    text-align: center
}

body[data-iit-page=home] .admissions-intro h2 {
    margin: 0 0 14px;
    font: 700 calc(36px * var(--iit-heading-scale))/1.15 var(--iit-font-heading);
    color: var(--iit-ink)
}

body[data-iit-page=home] .admissions-intro p {
    margin: 0;
    font-size: calc(16px * var(--iit-text-scale));
    line-height: 1.65;
    color: var(--iit-muted)
}

body[data-iit-page=home] .admissions-intro .admissions-highlight,
body[data-iit-page=home] .admissions-note {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-top: 16px;
    padding: 8px 16px;
    border-radius: 999px;
    background: color-mix(in srgb, var(--iit-gold) 15%, #fff);
    border: 1px solid color-mix(in srgb, var(--iit-gold) 45%, transparent);
    color: var(--iit-ink);
    font: 700 calc(14px * var(--iit-text-scale))/1.35 var(--iit-font-body)
}

body[data-iit-page=home] .admissions-highlight span {
    display: grid;
    place-items: center;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: var(--iit-gold);
    font-size: 12px
}

body[data-iit-page=home] .admissions-block {
    margin-top: 22px;
    padding: 30px 32px;
    background: #fff;
    border: 1px solid color-mix(in srgb, var(--iit-primary) 14%, transparent);
    border-top: 5px solid var(--iit-primary);
    border-radius: 16px;
    box-shadow: 0 14px 34px rgba(0, 36, 63, .07)
}

body[data-iit-page=home] .admissions-title {
    margin: 0;
    font: 700 calc(26px * var(--iit-heading-scale))/1.25 var(--iit-font-heading);
    color: var(--iit-ink)
}

body[data-iit-page=home] .admissions-title em {
    font-style: normal;
    color: var(--iit-primary);
    box-shadow: inset 0 -8px 0 color-mix(in srgb, var(--iit-gold) 35%, transparent)
}

body[data-iit-page=home] .admissions-note {
    margin: 12px 0 0;
    font-size: calc(13.5px * var(--iit-text-scale));
    border-radius: 8px
}

body[data-iit-page=home] .admissions-columns {
    display: grid;
    gap: 30px;
    margin-top: 24px
}

body[data-iit-page=home] .admissions-columns.is-two {
    grid-template-columns: 1fr 1fr
}

body[data-iit-page=home] .admissions-column h4 {
    margin: 0 0 14px;
    padding-bottom: 10px;
    border-bottom: 1px solid color-mix(in srgb, var(--iit-ink) 10%, transparent);
    font: 700 calc(15px * var(--iit-text-scale))/1.4 var(--iit-font-body);
    color: var(--iit-navy)
}

body[data-iit-page=home] .admissions-list {
    margin: 0;
    padding: 0;
    list-style: none;
    counter-reset: adm
}

body[data-iit-page=home] .admissions-list>li {
    position: relative;
    padding: 0 0 14px 40px;
    counter-increment: adm;
    font-size: calc(14.5px * var(--iit-text-scale));
    line-height: 1.55;
    color: var(--iit-ink)
}

body[data-iit-page=home] .admissions-list>li:before {
    content: counter(adm);
    position: absolute;
    left: 0;
    top: 0;
    width: 27px;
    height: 27px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: var(--iit-primary);
    color: #fff;
    font: 700 13px/1 var(--iit-font-body)
}

body[data-iit-page=home] .admissions-list b {
    color: var(--iit-ink)
}

body[data-iit-page=home] .admissions-list span {
    color: var(--iit-muted)
}

body[data-iit-page=home] .admissions-flag {
    display: inline-block;
    margin-left: 4px;
    padding: 1px 8px;
    border-radius: 999px;
    background: #fdecec;
    color: #b42318;
    font: 700 calc(12px * var(--iit-text-scale))/1.6 var(--iit-font-body)
}

body[data-iit-page=home] .admissions-list ul {
    margin: 6px 0 0;
    padding: 0;
    list-style: none
}

body[data-iit-page=home] .admissions-list ul li {
    position: relative;
    padding-left: 22px;
    margin-bottom: 3px;
    font-size: calc(14px * var(--iit-text-scale));
    color: var(--iit-muted)
}

body[data-iit-page=home] .admissions-list ul li:before {
    content: "";
    position: absolute;
    left: 4px;
    top: .55em;
    width: 8px;
    height: 8px;
    border-radius: 2px;
    background: var(--iit-gold);
    transform: rotate(45deg)
}

@media (max-width: 800px) {
    body[data-iit-page=home] .admissions-intro h2 {
        font-size: calc(27px * var(--iit-heading-scale))
    }

    body[data-iit-page=home] .admissions-block {
        padding: 22px 18px
    }

    body[data-iit-page=home] .admissions-columns.is-two {
        grid-template-columns: 1fr
    }

    body[data-iit-page=home] .admissions-title {
        font-size: calc(21px * var(--iit-heading-scale))
    }
}

/* Header logo: bigger on desktop (all pages). The logo is wide (about 4.5 : 1), so width sets the size. */
@media (min-width: 1001px) {

    body[data-iit-page] .brand-logo,
    body[data-iit-page=home] .brand-logo {
        width: 330px;
        height: auto;
        max-height: 74px;
        object-fit: contain;
        object-position: left center
    }
}

/* Banner slides (Admin -> Home Page -> Banner Slides): same banner design, slides fade into each other */
body[data-iit-page=home] .hero-slides-track {
    display: grid
}

body[data-iit-page=home] .hero-banner-slide {
    grid-area: 1 / 1
}

body[data-iit-page=home] .hero--slides .hero-banner-slide {
    opacity: 0;
    visibility: hidden;
    transition: opacity .7s ease, visibility .7s ease
}

body[data-iit-page=home] .hero--slides .hero-banner-slide.is-active {
    opacity: 1;
    visibility: visible
}

body[data-iit-page=home] .hero--slides .hero-banner-slide .campus {
    transform: scale(.97);
    transition: transform 1.2s ease
}

body[data-iit-page=home] .hero--slides .hero-banner-slide.is-active .campus {
    transform: none
}

/* the title of slides 2+ is an h2 that looks exactly like the banner h1 */
body[data-iit-page=home] .hero h2.hero-title {
    font-size: calc(clamp(42px, 5vw, 71px) * var(--iit-heading-scale));
    letter-spacing: -2px;
    margin: 16px 0 19px;
    max-width: 670px;
    color: #fff
}

body[data-iit-page=home] .hero .hero-title em {
    font-style: normal;
    color: var(--gold)
}

body[data-iit-page=home] .hero .hero-title .hero-title-accent {
    color: #ff8b25
}

@media (min-width: 761px) {

    body[data-iit-page=home] .hero h1.hero-title,
    body[data-iit-page=home] .hero h2.hero-title {
        max-width: 680px;
        font-size: calc(clamp(34px, 3.2vw, 46px) * var(--iit-heading-scale));
        white-space: normal
    }
}

@media (max-width: 760px) {

    body[data-iit-page=home] .hero h1.hero-title,
    body[data-iit-page=home] .hero h2.hero-title {
        font-size: calc(clamp(20px, 5.8vw, 30px) * var(--iit-heading-scale));
        line-height: 1.2
    }

    body[data-iit-page=home] .hero .hero-title em {
        display: block
    }

    body[data-iit-page=home] .hero .hero-title .hero-title-accent {
        display: inline;
        white-space: nowrap
    }
}

body[data-iit-page=home] .hero--slides {
    padding-bottom: 64px
}

body[data-iit-page=home] .hero-banner-controls {
    position: absolute;
    left: 50%;
    bottom: 26px;
    z-index: 3;
    display: flex;
    align-items: center;
    gap: 14px;
    transform: translateX(-50%)
}

body[data-iit-page=home] .hero-banner-arrow {
    width: 40px;
    height: 40px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(255, 255, 255, .35);
    border-radius: 50%;
    background: rgba(255, 255, 255, .08);
    color: #fff;
    cursor: pointer;
    transition: background .2s, border-color .2s
}

body[data-iit-page=home] .hero-banner-arrow:hover {
    background: var(--iit-gold);
    border-color: var(--iit-gold);
    color: var(--iit-ink)
}

body[data-iit-page=home] .hero-banner-dots {
    display: flex;
    gap: 8px
}

body[data-iit-page=home] .hero-banner-dots button {
    width: 10px;
    height: 10px;
    padding: 0;
    border: 0;
    border-radius: 999px;
    background: rgba(255, 255, 255, .45);
    cursor: pointer;
    transition: width .3s, background .3s
}

body[data-iit-page=home] .hero-banner-dots button.is-active {
    width: 28px;
    background: var(--iit-gold)
}

@media (prefers-reduced-motion: reduce) {

    body[data-iit-page=home] .hero--slides .hero-banner-slide,
    body[data-iit-page=home] .hero--slides .hero-banner-slide .campus {
        transition: none
    }
}

/* Banner slides: less empty space under the photo (dots sit just below it) */
body[data-iit-page=home] .hero--slides {
    padding-bottom: 54px
}

body[data-iit-page=home] .hero--slides .hero-banner-slide {
    padding-bottom: 20px
}

body[data-iit-page=home] .hero--slides .hero-banner-controls {
    bottom: 14px
}

/* Placed students: company, message, student photo / name / designation (grid or slider) */
body[data-iit-page=home] .pl2 .pl2-side {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 14px;
    max-width: 420px
}

body[data-iit-page=home] .pl2 .pl2-side p {
    margin: 0
}

body[data-iit-page=home] .pl2-row {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    margin-bottom: 26px
}

body[data-iit-page=home] .pl2-card {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 14px;
    padding: 24px 22px 20px;
    background: #fff;
    border-top: 4px solid var(--iit-gold);
    border-radius: 14px;
    box-shadow: 0 12px 30px rgba(0, 36, 63, .07)
}

body[data-iit-page=home] .pl2-company {
    align-self: flex-start;
    padding: 4px 12px;
    border-radius: 999px;
    background: color-mix(in srgb, var(--iit-primary) 10%, #fff);
    color: var(--iit-primary);
    font: 700 calc(12px * var(--iit-text-scale))/1.4 var(--iit-font-body);
    letter-spacing: .4px;
    text-transform: uppercase
}

body[data-iit-page=home] .pl2-message {
    position: relative;
    flex: 1;
    margin: 0;
    padding-left: 30px;
    font: italic 400 calc(14.5px * var(--iit-text-scale))/1.6 var(--iit-font-body);
    color: var(--iit-ink)
}

body[data-iit-page=home] .pl2-message:before {
    content: "\201C";
    position: absolute;
    left: -2px;
    top: -12px;
    font: 700 52px/1 Georgia, serif;
    color: var(--iit-gold)
}

body[data-iit-page=home] .pl2-person {
    display: flex;
    align-items: center;
    gap: 12px;
    padding-top: 14px;
    border-top: 1px solid color-mix(in srgb, var(--iit-ink) 9%, transparent)
}

body[data-iit-page=home] .pl2-photo {
    flex: none;
    width: 52px;
    height: 52px;
    display: grid;
    place-items: center;
    overflow: hidden;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--iit-primary), var(--iit-navy));
    color: #fff;
    font: 700 18px var(--iit-font-body)
}

body[data-iit-page=home] .pl2-photo img {
    width: 100%;
    height: 100%;
    object-fit: cover
}

body[data-iit-page=home] .pl2-who b {
    display: block;
    font: 700 calc(15.5px * var(--iit-text-scale))/1.3 var(--iit-font-heading);
    color: var(--iit-ink)
}

body[data-iit-page=home] .pl2-who small {
    display: block;
    font-size: calc(13px * var(--iit-text-scale));
    color: var(--iit-muted)
}

/* slider: one row that scrolls sideways (3 cards visible on a computer) */
body[data-iit-page=home] .pl2--slider .pl2-row {
    display: flex;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    padding: 4px 2px 10px;
    margin-bottom: 8px
}

body[data-iit-page=home] .pl2--slider .pl2-row::-webkit-scrollbar {
    display: none
}

body[data-iit-page=home] .pl2--slider .pl2-card {
    flex: 0 0 calc((100% - 40px) / 3);
    scroll-snap-align: start
}

body[data-iit-page=home] .pl2--slider .cs-dots {
    margin-bottom: 24px
}

@media (max-width: 1000px) {
    body[data-iit-page=home] .pl2-row {
        grid-template-columns: 1fr 1fr
    }

    body[data-iit-page=home] .pl2--slider .pl2-card {
        flex-basis: calc((100% - 20px) / 2)
    }
}

@media (max-width: 640px) {
    body[data-iit-page=home] .pl2-row {
        grid-template-columns: 1fr
    }

    body[data-iit-page=home] .pl2--slider .pl2-card {
        flex-basis: 88%
    }

    body[data-iit-page=home] .pl2 .pl2-side {
        align-items: flex-start
    }
}

/* Programs at a glance: intro panel (text on the left, key points on the right) */
body[data-iit-page=home] .adm-hero {
    position: relative;
    display: grid;
    grid-template-columns: 1.05fr 1fr;
    gap: 40px;
    align-items: center;
    overflow: hidden;
    margin-bottom: 30px;
    padding: 44px 46px;
    border-radius: 22px;
    background:
        radial-gradient(520px 320px at 100% 0%, color-mix(in srgb, var(--iit-gold) 22%, transparent), transparent 70%),
        linear-gradient(135deg, var(--iit-deep), var(--iit-primary));
    color: #fff;
    box-shadow: 0 24px 50px rgba(0, 36, 63, .18)
}

body[data-iit-page=home] .adm-hero--single {
    grid-template-columns: 1fr;
    text-align: center
}

body[data-iit-page=home] .adm-hero-eyebrow {
    display: inline-block;
    margin-bottom: 16px;
    padding: 6px 14px;
    border: 1px solid rgba(255, 255, 255, .28);
    border-radius: 999px;
    background: rgba(255, 255, 255, .08);
    font: 700 calc(12px * var(--iit-text-scale))/1.3 var(--iit-font-body);
    letter-spacing: 1.2px;
    text-transform: uppercase;
    color: #dbe9f5
}

body[data-iit-page=home] .adm-hero h2 {
    margin: 0 0 16px;
    font: 700 calc(40px * var(--iit-heading-scale))/1.12 var(--iit-font-heading);
    letter-spacing: -.8px;
    color: #fff
}

body[data-iit-page=home] .adm-hero h2 em {
    display: block;
    font-style: normal;
    color: var(--iit-gold)
}

body[data-iit-page=home] .adm-hero h2 em.hero-title-accent {
    display: inline;
    white-space: nowrap
}

body[data-iit-page=home] .adm-hero-copy>p {
    margin: 0;
    max-width: 520px;
    font-size: calc(16px * var(--iit-text-scale));
    line-height: 1.7;
    color: #d4e2ef
}

body[data-iit-page=home] .adm-hero--single .adm-hero-copy>p {
    margin: 0 auto
}

body[data-iit-page=home] .adm-hero .adm-hero-badge {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-top: 22px;
    padding: 9px 16px 9px 9px;
    border-radius: 999px;
    background: var(--iit-gold);
    color: var(--iit-ink);
    font: 700 calc(13.5px * var(--iit-text-scale))/1.35 var(--iit-font-body)
}

body[data-iit-page=home] .adm-hero-badge span {
    display: grid;
    place-items: center;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: var(--iit-ink);
    color: var(--iit-gold);
    font-size: 11px
}

body[data-iit-page=home] .adm-hero-points {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
    margin: 0;
    padding: 0;
    list-style: none
}

body[data-iit-page=home] .adm-hero-points li {
    display: flex;
    flex-direction: column;
    gap: 4px;
    padding: 20px 18px;
    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: 16px;
    background: rgba(255, 255, 255, .07);
    backdrop-filter: blur(4px);
    transition: transform .25s ease, background .25s ease
}

body[data-iit-page=home] .adm-hero-points li:hover {
    transform: translateY(-3px);
    background: rgba(255, 255, 255, .12)
}

body[data-iit-page=home] .adm-hero-icon {
    display: grid;
    place-items: center;
    width: 42px;
    height: 42px;
    margin-bottom: 8px;
    border-radius: 12px;
    background: var(--iit-gold);
    color: var(--iit-ink);
    font-size: 17px
}

body[data-iit-page=home] .adm-hero-points b {
    font: 700 calc(15.5px * var(--iit-text-scale))/1.3 var(--iit-font-heading);
    color: #fff
}

body[data-iit-page=home] .adm-hero-points small {
    font-size: calc(13px * var(--iit-text-scale));
    line-height: 1.45;
    color: #c5d6e6
}

@media (max-width: 1000px) {
    body[data-iit-page=home] .adm-hero {
        grid-template-columns: 1fr;
        gap: 28px;
        padding: 34px 28px
    }
}

@media (max-width: 640px) {
    body[data-iit-page=home] .adm-hero {
        padding: 26px 18px;
        border-radius: 16px
    }

    body[data-iit-page=home] .adm-hero h2 {
        font-size: calc(clamp(20px, 6.8vw, 25px) * var(--iit-heading-scale))
    }

    body[data-iit-page=home] .adm-hero-points {
        grid-template-columns: 1fr 1fr;
        gap: 10px
    }

    body[data-iit-page=home] .adm-hero-points li {
        padding: 14px 12px
    }
}

/* Programs at a glance: animated polygon background in the intro panel */
body[data-iit-page=home] .adm-hero>*:not(.adm-hero-bg) {
    position: relative;
    z-index: 1
}

body[data-iit-page=home] .adm-hero-bg {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
    pointer-events: none
}

body[data-iit-page=home] .adm-poly polygon {
    fill: rgba(255, 255, 255, .045);
    stroke: rgba(255, 255, 255, .22);
    stroke-width: 1.2;
    stroke-linejoin: round
}

body[data-iit-page=home] .adm-poly--gold polygon {
    fill: color-mix(in srgb, var(--iit-gold) 30%, transparent);
    stroke: color-mix(in srgb, var(--iit-gold) 80%, transparent)
}

body[data-iit-page=home] .adm-poly {
    transform-box: fill-box;
    transform-origin: center;
    animation: adm-float 14s ease-in-out infinite
}

body[data-iit-page=home] .adm-poly--2 {
    animation-duration: 18s;
    animation-delay: -4s
}

body[data-iit-page=home] .adm-poly--3 {
    animation: adm-spin 40s linear infinite
}

body[data-iit-page=home] .adm-poly--4 {
    animation-duration: 12s;
    animation-delay: -7s
}

body[data-iit-page=home] .adm-poly--5 {
    animation-duration: 16s;
    animation-delay: -2s
}

body[data-iit-page=home] .adm-poly--6 {
    animation: adm-spin 55s linear infinite reverse
}

body[data-iit-page=home] .adm-poly--7 {
    animation-duration: 20s;
    animation-delay: -9s
}

body[data-iit-page=home] .adm-poly--8 {
    animation-duration: 10s;
    animation-delay: -3s
}

body[data-iit-page=home] .adm-poly--9 {
    animation-duration: 13s;
    animation-delay: -6s
}

body[data-iit-page=home] .adm-lines {
    fill: none;
    stroke: rgba(255, 255, 255, .12);
    stroke-width: 1;
    stroke-dasharray: 6 10;
    animation: adm-dash 30s linear infinite
}

@keyframes adm-float {

    0%,
    100% {
        transform: translate(0, 0) rotate(0deg)
    }

    33% {
        transform: translate(14px, -18px) rotate(10deg)
    }

    66% {
        transform: translate(-12px, 10px) rotate(-8deg)
    }
}

@keyframes adm-spin {
    to {
        transform: rotate(360deg)
    }
}

@keyframes adm-dash {
    to {
        stroke-dashoffset: -320
    }
}

@media (prefers-reduced-motion: reduce) {

    body[data-iit-page=home] .adm-poly,
    body[data-iit-page=home] .adm-lines {
        animation: none
    }
}

/* Programs at a glance: programme block (columns as cards, programmes with chips) */
body[data-iit-page=home] .adm-block {
    padding: 32px;
    border-top: 0;
    background:
        linear-gradient(180deg, color-mix(in srgb, var(--iit-primary) 5%, #fff), #fff 140px);
    border: 1px solid color-mix(in srgb, var(--iit-primary) 12%, transparent)
}

body[data-iit-page=home] .adm-block-head {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 14px 24px;
    margin-bottom: 24px
}

body[data-iit-page=home] .adm-open {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin: 0;
    padding: 8px 16px;
    border-radius: 999px;
    background: color-mix(in srgb, #16a34a 10%, #fff);
    border: 1px solid color-mix(in srgb, #16a34a 30%, transparent);
    color: #166534;
    font: 700 calc(13.5px * var(--iit-text-scale))/1.35 var(--iit-font-body)
}

body[data-iit-page=home] .adm-open-dot {
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: #16a34a;
    box-shadow: 0 0 0 0 rgba(22, 163, 74, .5);
    animation: adm-pulse 1.8s infinite
}

@keyframes adm-pulse {
    70% {
        box-shadow: 0 0 0 8px rgba(22, 163, 74, 0)
    }

    100% {
        box-shadow: 0 0 0 0 rgba(22, 163, 74, 0)
    }
}

body[data-iit-page=home] .adm-block .admissions-columns {
    margin-top: 0;
    gap: 20px
}

body[data-iit-page=home] .adm-col {
    padding: 22px 22px 8px;
    background: #fff;
    border: 1px solid color-mix(in srgb, var(--iit-ink) 9%, transparent);
    border-radius: 16px
}

body[data-iit-page=home] .adm-col-title {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 0 0 16px;
    font: 700 calc(15.5px * var(--iit-text-scale))/1.35 var(--iit-font-heading);
    color: var(--iit-navy)
}

body[data-iit-page=home] .adm-col-title span {
    flex: none;
    display: grid;
    place-items: center;
    width: 38px;
    height: 38px;
    border-radius: 11px;
    background: var(--iit-primary);
    color: #fff;
    font-size: 16px
}

body[data-iit-page=home] .adm-programs {
    margin: 0;
    padding: 0;
    list-style: none
}

body[data-iit-page=home] .adm-program {
    padding: 14px 0;
    border-top: 1px dashed color-mix(in srgb, var(--iit-ink) 14%, transparent)
}

body[data-iit-page=home] .adm-program-name b {
    display: block;
    font: 700 calc(16px * var(--iit-text-scale))/1.35 var(--iit-font-heading);
    color: var(--iit-ink)
}

body[data-iit-page=home] .adm-program-name span {
    display: block;
    margin-top: 2px;
    font-size: calc(13.5px * var(--iit-text-scale));
    line-height: 1.5;
    color: var(--iit-muted)
}

body[data-iit-page=home] .adm-specs {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin: 8px 0 0;
    padding: 0;
    list-style: none
}

body[data-iit-page=home] .adm-specs li {
    padding: 4px 10px;
    border-radius: 8px;
    background: color-mix(in srgb, var(--iit-primary) 8%, #fff);
    color: var(--iit-primary);
    font: 600 calc(12.5px * var(--iit-text-scale))/1.4 var(--iit-font-body)
}

body[data-iit-page=home] .adm-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: 10px
}

body[data-iit-page=home] .adm-chip {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 4px 10px;
    border-radius: 999px;
    background: color-mix(in srgb, var(--iit-ink) 6%, #fff);
    color: var(--iit-ink);
    font: 700 calc(12px * var(--iit-text-scale))/1.4 var(--iit-font-body)
}

body[data-iit-page=home] .adm-chip--intake {
    background: color-mix(in srgb, var(--iit-gold) 18%, #fff);
    color: #9a4a00
}

body[data-iit-page=home] .adm-chip--closed {
    background: #fdecec;
    color: #b42318
}

@media (max-width: 800px) {
    body[data-iit-page=home] .adm-block {
        padding: 22px 16px
    }

    body[data-iit-page=home] .adm-col {
        padding: 18px 16px 4px
    }
}

@media (prefers-reduced-motion: reduce) {
    body[data-iit-page=home] .adm-open-dot {
        animation: none
    }
}

/* Programs at a glance: "admissions open" pill in the brand accent (was green) */
body[data-iit-page=home] .adm-open {
    background: color-mix(in srgb, var(--iit-gold) 16%, #fff);
    border-color: color-mix(in srgb, var(--iit-gold) 55%, transparent);
    color: var(--iit-ink)
}

body[data-iit-page=home] .adm-open-dot {
    background: var(--iit-gold);
    animation-name: adm-pulse-brand
}

@keyframes adm-pulse-brand {
    0% {
        box-shadow: 0 0 0 0 color-mix(in srgb, var(--iit-gold) 55%, transparent)
    }

    70% {
        box-shadow: 0 0 0 8px transparent
    }

    100% {
        box-shadow: 0 0 0 0 transparent
    }
}

/* Large program cards: smaller photo, title and description cut with "…" after two lines (less empty space) */
body[data-iit-page] .programs-large .card--photo .card-photo {
    aspect-ratio: 4 / 3
}

body[data-iit-page] .programs-large .card--photo h3,
body[data-iit-page] .programs-large .card--photo p,
body[data-iit-page] .programs-compact .card--photo h3 {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    min-height: 0
}

body[data-iit-page] .programs-large .card--photo p {
    margin-bottom: 10px
}

body[data-iit-page] .programs-large .card--photo .cardbody,
body[data-iit-page=programs] .programs-large .card--photo .body {
    padding: 16px 18px 18px
}

body[data-iit-page] .programs-large .card--photo .card-meta {
    margin-top: auto;
    padding-top: 10px
}

/* All Programs page (large): keep the card short – no long highlight list */
body[data-iit-page=programs] .programs-large .card--photo .hl,
body[data-iit-page=programs] .programs-large .card--photo .program-group-note {
    display: none
}

/* Program cards: soft shadow, a little stronger on hover */
body[data-iit-page] .card.card--photo,
body[data-iit-page=programs] .program.card--photo {
    border-color: color-mix(in srgb, var(--iit-primary) 10%, transparent);
    box-shadow:
        0 2px 6px rgba(0, 36, 63, .05),
        0 12px 28px rgba(0, 36, 63, .09);
    transition: transform .25s ease, box-shadow .25s ease
}

body[data-iit-page] .card.card--photo:hover,
body[data-iit-page=programs] .program.card--photo:hover {
    transform: translateY(-4px);
    box-shadow:
        0 4px 10px rgba(0, 36, 63, .06),
        0 22px 44px rgba(0, 36, 63, .16)
}

/* Shared polygon background (partials/poly-bg) */
body[data-iit-page=home] .poly-bg {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
    pointer-events: none
}

body[data-iit-page=home] .poly-bg--light .adm-poly polygon {
    fill: color-mix(in srgb, var(--iit-primary) 5%, transparent);
    stroke: color-mix(in srgb, var(--iit-primary) 28%, transparent)
}

body[data-iit-page=home] .poly-bg--light .adm-lines {
    stroke: color-mix(in srgb, var(--iit-primary) 16%, transparent)
}

/* Advantage section: shapes behind the content */
body[data-iit-page=home] .adv2>.wrap {
    position: relative;
    z-index: 1
}

/* Advantage section: its cards are see-through, so keep the shapes softer there */
body[data-iit-page=home] .adv2-poly {
    opacity: .55
}

body[data-iit-page=home] .adv2-poly .adm-poly--gold polygon {
    fill: color-mix(in srgb, var(--iit-gold) 12%, transparent);
    stroke: color-mix(in srgb, var(--iit-gold) 55%, transparent)
}

/* Corner graphics (partials/corner-decor) – used in Testimonials */
body[data-iit-page=home] .stories {
    position: relative;
    overflow: hidden
}

body[data-iit-page=home] #stories::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 0;
    background:
        linear-gradient(rgba(0, 34, 61, .54), rgba(0, 34, 61, .54)),
        url("../assets/landing/img/students-group.jpg") center 42% / cover no-repeat;
    pointer-events: none
}

body[data-iit-page=home] #stories .section-head h2,
body[data-iit-page=home] #stories .section-head p,
body[data-iit-page=home] #stories .section-head .eyebrow {
    color: #fff
}

body[data-iit-page=home] #stories .section-head .eyebrow:before {
    background: #ff7a1a
}

body[data-iit-page=home] #stories>.corner-decor {
    display: none
}

body[data-iit-page=home] .stories>.wrap {
    position: relative;
    z-index: 1
}

body[data-iit-page=home] .corner-decor {
    position: absolute;
    inset: 0;
    z-index: 0;
    pointer-events: none
}

body[data-iit-page=home] .cd {
    position: absolute;
    overflow: visible
}

body[data-iit-page=home] .cd--tl {
    top: 0;
    left: 0;
    width: 230px;
    height: 230px
}

body[data-iit-page=home] .cd--tr {
    top: 34px;
    right: 40px;
    width: 190px;
    height: 152px
}

body[data-iit-page=home] .cd--bl {
    bottom: 0;
    left: 0;
    width: 260px;
    height: 260px
}

body[data-iit-page=home] .cd--br {
    right: 0;
    bottom: 10px;
    width: 340px;
    height: 180px
}

/* top left */
body[data-iit-page=home] .cd-dots {
    opacity: .2
}

body[data-iit-page=home] .cd-ring {
    fill: none;
    stroke: rgba(255, 255, 255, .22);
    stroke-width: 1.2;
    stroke-dasharray: 3 6
}

body[data-iit-page=home] .cd-sun {
    fill: var(--iit-gold)
}

body[data-iit-page=home] .cd-orbit {
    transform-origin: 70px 70px;
    animation: cd-spin 16s linear infinite
}

/* top right */
body[data-iit-page=home] .cd-quote {
    fill: rgba(255, 255, 255, .03);
    stroke: color-mix(in srgb, var(--iit-gold) 45%, transparent);
    stroke-width: 2;
    animation: cd-bob 7s ease-in-out infinite
}

/* bottom left */
body[data-iit-page=home] .cd-arc {
    fill: none;
    stroke: rgba(255, 255, 255, .16);
    stroke-width: 1.2
}

body[data-iit-page=home] .cd-arc--1 {
    stroke-dasharray: 2 7
}

body[data-iit-page=home] .cd-arc--2 {
    stroke-dasharray: 14 10;
    stroke: color-mix(in srgb, var(--iit-gold) 40%, transparent)
}

body[data-iit-page=home] .cd-arc--3 {
    stroke-dasharray: 4 12
}

body[data-iit-page=home] .cd-arcs {
    transform-origin: 0 240px;
    animation: cd-spin 60s linear infinite
}

body[data-iit-page=home] .cd-core {
    fill: color-mix(in srgb, var(--iit-gold) 18%, transparent)
}

/* bottom right */
body[data-iit-page=home] .cd-wave {
    fill: none;
    stroke: rgba(255, 255, 255, .18);
    stroke-width: 1.5;
    stroke-dasharray: 10 8;
    animation: cd-flow 14s linear infinite
}

body[data-iit-page=home] .cd-wave--2 {
    animation-duration: 18s;
    opacity: .8
}

body[data-iit-page=home] .cd-wave--gold {
    stroke: color-mix(in srgb, var(--iit-gold) 55%, transparent);
    animation-duration: 11s
}

@keyframes cd-spin {
    to {
        transform: rotate(360deg)
    }
}

@keyframes cd-bob {

    0%,
    100% {
        transform: translateY(0)
    }

    50% {
        transform: translateY(-10px)
    }
}

@keyframes cd-flow {
    to {
        stroke-dashoffset: -180
    }
}

@media (max-width: 800px) {
    body[data-iit-page=home] .cd--tl {
        width: 150px;
        height: 150px
    }

    body[data-iit-page=home] .cd--tr {
        width: 110px;
        height: 88px;
        top: 18px;
        right: 14px
    }

    body[data-iit-page=home] .cd--bl {
        width: 170px;
        height: 170px
    }

    body[data-iit-page=home] .cd--br {
        width: 220px;
        height: 118px
    }
}

@media (prefers-reduced-motion: reduce) {

    body[data-iit-page=home] .cd-orbit,
    body[data-iit-page=home] .cd-quote,
    body[data-iit-page=home] .cd-arcs,
    body[data-iit-page=home] .cd-wave {
        animation: none
    }
}

/* Convocation highlight detail page (/convocation/{slug}) */
body[data-iit-page=home] .cv-hero {
    position: relative;
    overflow: hidden;
    padding: 56px 0 64px;
    background: linear-gradient(135deg, var(--iit-deep), var(--iit-primary));
    color: #fff
}

body[data-iit-page=home] .cv-hero-inner {
    position: relative;
    z-index: 1;
    max-width: 860px
}

body[data-iit-page=home] .cv-crumb {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 22px;
    font-size: calc(13px * var(--iit-text-scale));
    color: #b9cfe2
}

body[data-iit-page=home] .cv-crumb a {
    color: #dbe9f5;
    text-decoration: none
}

body[data-iit-page=home] .cv-crumb a:hover {
    color: var(--iit-gold)
}

body[data-iit-page=home] .cv-label {
    display: inline-block;
    margin-bottom: 12px;
    padding: 5px 14px;
    border-radius: 999px;
    background: var(--iit-gold);
    color: var(--iit-ink);
    font: 700 calc(12px * var(--iit-text-scale))/1.3 var(--iit-font-body);
    letter-spacing: 1px;
    text-transform: uppercase
}

body[data-iit-page=home] .cv-hero h1 {
    margin: 0 0 14px;
    max-width: none;
    font-size: calc(clamp(32px, 4vw, 52px) * var(--iit-heading-scale));
    letter-spacing: -1px
}

body[data-iit-page=home] .cv-lead {
    margin: 0;
    max-width: 680px;
    font-size: calc(17px * var(--iit-text-scale));
    line-height: 1.65;
    color: #d4e2ef
}

body[data-iit-page=home] .cv-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 22px
}

body[data-iit-page=home] .cv-meta span {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 7px 14px;
    border: 1px solid rgba(255, 255, 255, .22);
    border-radius: 999px;
    background: rgba(255, 255, 255, .08);
    font: 600 calc(13.5px * var(--iit-text-scale))/1.3 var(--iit-font-body)
}

body[data-iit-page=home] .cv-meta i {
    color: var(--iit-gold)
}

body[data-iit-page=home] .cv-body {
    padding: 50px 0 30px;
    background: var(--iit-cream)
}

body[data-iit-page=home] .cv-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.55fr) minmax(0, 1fr);
    gap: 34px;
    align-items: start
}

body[data-iit-page=home] .cv-layout--single {
    grid-template-columns: minmax(0, 860px);
    justify-content: center
}

body[data-iit-page=home] .cv-image {
    display: block;
    width: 100%;
    height: auto;
    margin-top: -90px;
    border-radius: 20px;
    box-shadow: 0 24px 50px rgba(0, 36, 63, .22)
}

body[data-iit-page=home] .cv-text {
    margin-top: 28px
}

body[data-iit-page=home] .cv-text p {
    margin: 0 0 16px;
    font-size: calc(16px * var(--iit-text-scale));
    line-height: 1.75;
    color: var(--iit-ink)
}

body[data-iit-page=home] .cv-back {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-top: 18px;
    color: var(--iit-primary);
    font-weight: 700;
    text-decoration: none
}

body[data-iit-page=home] .cv-back:hover {
    text-decoration: underline
}

body[data-iit-page=home] .cv-timeline {
    position: sticky;
    top: 100px;
    padding: 26px 24px;
    background: #fff;
    border: 1px solid color-mix(in srgb, var(--iit-primary) 12%, transparent);
    border-radius: 18px;
    box-shadow: 0 14px 34px rgba(0, 36, 63, .08)
}

body[data-iit-page=home] .cv-timeline h2 {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0 0 20px;
    font-size: calc(22px * var(--iit-heading-scale));
    color: var(--iit-navy)
}

body[data-iit-page=home] .cv-timeline h2 i {
    color: var(--iit-gold)
}

body[data-iit-page=home] .cv-timeline ol {
    position: relative;
    margin: 0;
    padding: 0 0 0 26px;
    list-style: none
}

body[data-iit-page=home] .cv-timeline ol:before {
    content: "";
    position: absolute;
    left: 7px;
    top: 6px;
    bottom: 6px;
    width: 2px;
    background: linear-gradient(var(--iit-gold), color-mix(in srgb, var(--iit-primary) 30%, transparent))
}

body[data-iit-page=home] .cv-timeline li {
    position: relative;
    padding-bottom: 20px
}

body[data-iit-page=home] .cv-timeline li:last-child {
    padding-bottom: 0
}

body[data-iit-page=home] .cv-timeline li:before {
    content: "";
    position: absolute;
    left: -26px;
    top: 4px;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background: #fff;
    border: 4px solid var(--iit-gold);
    box-sizing: border-box
}

body[data-iit-page=home] .cv-timeline time {
    display: block;
    font: 700 calc(12.5px * var(--iit-text-scale))/1.3 var(--iit-font-body);
    letter-spacing: .5px;
    color: #c2620c
}

body[data-iit-page=home] .cv-timeline b {
    display: block;
    margin-top: 2px;
    font: 700 calc(15.5px * var(--iit-text-scale))/1.35 var(--iit-font-heading);
    color: var(--iit-ink)
}

body[data-iit-page=home] .cv-timeline li p {
    margin: 4px 0 0;
    font-size: calc(13.5px * var(--iit-text-scale));
    line-height: 1.55;
    color: var(--iit-muted)
}

body[data-iit-page=home] .cv-more {
    padding: 34px 0 70px;
    background: var(--iit-cream)
}

body[data-iit-page=home] .cv-more h2 {
    margin: 0 0 18px;
    font-size: calc(26px * var(--iit-heading-scale));
    color: var(--iit-ink)
}

body[data-iit-page=home] .cv-more-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px
}

body[data-iit-page=home] .cv-more-card {
    position: relative;
    display: block;
    overflow: hidden;
    aspect-ratio: 4 / 3;
    border-radius: 14px;
    color: #fff;
    text-decoration: none;
    box-shadow: 0 10px 24px rgba(0, 36, 63, .12)
}

body[data-iit-page=home] .cv-more-card img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .4s ease
}

body[data-iit-page=home] .cv-more-card:hover img {
    transform: scale(1.06)
}

body[data-iit-page=home] .cv-more-card span {
    position: absolute;
    inset: auto 0 0;
    padding: 30px 14px 12px;
    background: linear-gradient(transparent, rgba(0, 36, 63, .88))
}

body[data-iit-page=home] .cv-more-card small {
    display: block;
    font-size: 10.5px;
    letter-spacing: 1px;
    text-transform: uppercase;
    color: var(--iit-gold)
}

body[data-iit-page=home] .cv-more-card b {
    font: 700 calc(15px * var(--iit-text-scale))/1.3 var(--iit-font-heading)
}

@media (max-width: 900px) {
    body[data-iit-page=home] .cv-layout {
        grid-template-columns: 1fr
    }

    body[data-iit-page=home] .cv-timeline {
        position: static
    }

    body[data-iit-page=home] .cv-more-grid {
        grid-template-columns: 1fr 1fr
    }

    body[data-iit-page=home] .cv-image {
        margin-top: -60px
    }
}

/* Convocation cards open their highlight page */
body[data-iit-page=home] .convocation-card-link {
    position: absolute;
    inset: 0;
    display: block;
    color: inherit;
    text-decoration: none
}

body[data-iit-page=home] .convocation-photo.has-img .convocation-card-link>img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    transition: transform .5s ease
}

body[data-iit-page=home] .convocation-photo:hover .convocation-card-link>img {
    transform: scale(1.05)
}

body[data-iit-page=home] .convocation-photo:after {
    pointer-events: none;
    z-index: 0
}

body[data-iit-page=home] .convocation-card-link .convocation-caption {
    right: 18px;
    z-index: 1
}

body[data-iit-page=home] .convocation-desc {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    margin-top: 4px;
    max-width: 440px;
    font-size: calc(12.5px * var(--iit-text-scale));
    line-height: 1.45;
    color: #e2edf6
}

body[data-iit-page=home] .convocation-more {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-top: 6px;
    font: 700 calc(12px * var(--iit-text-scale))/1.3 var(--iit-font-body);
    color: var(--iit-gold);
    opacity: .85;
    transition: opacity .2s, gap .2s
}

body[data-iit-page=home] .convocation-photo:hover .convocation-more,
body[data-iit-page=home] .convocation-card-link:focus-visible .convocation-more {
    opacity: 1;
    gap: 10px
}

body[data-iit-page=home] .convocation-card-link:focus-visible {
    outline: 3px solid var(--iit-gold);
    outline-offset: -3px
}

/* Convocation detail page: colours from Admin (CSS variables set on main.cv-page) */
body[data-iit-page=home] .cv-page {
    --iit-gold: var(--cv-accent, #ff8b25)
}

body[data-iit-page=home] .cv-page .cv-hero {
    background: linear-gradient(135deg, var(--cv-hero-from, #002f54), var(--cv-hero-to, #00487e));
    color: var(--cv-hero-text, #fff)
}

body[data-iit-page=home] .cv-page .cv-hero h1 {
    color: var(--cv-hero-text, #fff)
}

body[data-iit-page=home] .cv-page .cv-lead,
body[data-iit-page=home] .cv-page .cv-crumb,
body[data-iit-page=home] .cv-page .cv-crumb a {
    color: color-mix(in srgb, var(--cv-hero-text, #fff) 82%, transparent)
}

body[data-iit-page=home] .cv-page .cv-meta span {
    color: var(--cv-hero-text, #fff);
    border-color: color-mix(in srgb, var(--cv-hero-text, #fff) 25%, transparent);
    background: color-mix(in srgb, var(--cv-hero-text, #fff) 8%, transparent)
}

body[data-iit-page=home] .cv-page .cv-crumb a:hover,
body[data-iit-page=home] .cv-page .cv-meta i,
body[data-iit-page=home] .cv-page .cv-timeline h2 i {
    color: var(--cv-accent, #ff8b25)
}

body[data-iit-page=home] .cv-page .cv-label {
    background: var(--cv-accent, #ff8b25);
    color: var(--cv-text, #0d2a40)
}

body[data-iit-page=home] .cv-page .cv-body,
body[data-iit-page=home] .cv-page .cv-more {
    background: var(--cv-bg, #ebfafd)
}

body[data-iit-page=home] .cv-page .cv-text p,
body[data-iit-page=home] .cv-page .cv-more h2,
body[data-iit-page=home] .cv-page .cv-timeline h2,
body[data-iit-page=home] .cv-page .cv-timeline b {
    color: var(--cv-text, #0d2a40)
}

body[data-iit-page=home] .cv-page .cv-timeline {
    background: var(--cv-card, #fff)
}

body[data-iit-page=home] .cv-page .cv-timeline li p {
    color: color-mix(in srgb, var(--cv-text, #0d2a40) 70%, transparent)
}

body[data-iit-page=home] .cv-page .cv-timeline ol:before {
    background: linear-gradient(var(--cv-accent, #ff8b25), color-mix(in srgb, var(--cv-accent, #ff8b25) 15%, transparent))
}

body[data-iit-page=home] .cv-page .cv-timeline li:before {
    border-color: var(--cv-accent, #ff8b25);
    background: var(--cv-card, #fff)
}

/* time text: a darker shade of the accent so it stays readable on light cards */
body[data-iit-page=home] .cv-page .cv-timeline time {
    color: color-mix(in srgb, var(--cv-accent, #ff8b25) 70%, #000)
}

body[data-iit-page=home] .cv-page .cv-back {
    color: var(--cv-hero-to, #00487e)
}

/* News ticker blink options (Admin → Home Page → News Ticker: Blink label / Blink badges) */
body[data-iit-page=home] .news-ticker--blink-label .news-ticker-label {
    animation: news-ticker-label-blink 1.4s ease-in-out infinite
}

body[data-iit-page=home] .news-ticker--blink-label .news-ticker-dot {
    animation: news-ticker-pulse 1.6s infinite, news-ticker-blink 1s steps(1, end) infinite
}

body[data-iit-page=home] .news-ticker--blink-badges .news-ticker-badge {
    animation: news-ticker-badge-blink 1s ease-in-out infinite
}

@keyframes news-ticker-blink {
    50% {
        opacity: 0
    }
}

/* label text fades a little and glows so it reads as "live" without becoming unreadable */
@keyframes news-ticker-label-blink {
    50% {
        color: color-mix(in srgb, var(--ticker-label-text, #003a66) 45%, var(--ticker-label-bg, #ff8b25));
        text-shadow: 0 0 10px rgba(255, 255, 255, .85)
    }
}

@keyframes news-ticker-badge-blink {

    0%,
    100% {
        opacity: 1;
        transform: scale(1);
        box-shadow: 0 0 0 0 var(--ticker-badge, #e5484d)
    }

    50% {
        opacity: .35;
        transform: scale(.94);
        box-shadow: 0 0 10px 2px var(--ticker-badge, #e5484d)
    }
}

@media (prefers-reduced-motion: reduce) {

    body[data-iit-page=home] .news-ticker--blink-label .news-ticker-label,
    body[data-iit-page=home] .news-ticker--blink-label .news-ticker-dot,
    body[data-iit-page=home] .news-ticker--blink-badges .news-ticker-badge {
        animation: none
    }
}

/* Footer: logo the same size as the header logo, and every column styled like "Contact Information" */
.site-footer .footer-logo {
    width: 190px;
    max-width: 100%;
    height: auto;
    max-height: 58px
}

@media (min-width: 1001px) {
    .site-footer .footer-logo {
        width: 330px;
        max-height: 74px
    }
}

.site-footer .footer-links h4 {
    margin: 0 0 21px;
    padding: 2px 0 2px 12px;
    border-left: 3px solid #ff8500;
    color: #fff;
    font-size: calc(16px * var(--iit-text-scale));
    letter-spacing: 0;
    text-transform: none
}

.site-footer .footer-links a {
    margin-bottom: 14px;
    color: #fff;
    font-size: calc(13px * var(--iit-text-scale));
    font-weight: 600;
    line-height: 1.4;
    letter-spacing: -.08px
}

.site-footer .footer-links a:hover {
    color: var(--iit-gold)
}

.site-footer .footer-description {
    font-size: calc(13px * var(--iit-text-scale));
    line-height: 1.6
}

/* Social links with an uploaded icon image */
.site-footer .footer-socials a.has-image {
    overflow: hidden;
    padding: 0
}

.site-footer .footer-socials a.has-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 50%
}

/* Footer: bigger social icons and copyright line */
.site-footer .footer-socials a,
.site-footer .connect .footer-socials a {
    width: 42px;
    height: 42px;
    font-size: calc(18px * var(--iit-text-scale))
}

.site-footer .connect .footer-socials {
    gap: 10px
}

.site-footer .connect {
    font-size: calc(14px * var(--iit-text-scale))
}

.site-footer .footer-bottom {
    font-size: calc(14px * var(--iit-text-scale));
    color: #a6bec1
}

/* YouTube video that loads on click (partials/yt-video) */
body[data-iit-page=home] .yt-video,
body[data-iit-page=home] .yt-video-frame {
    position: relative;
    display: block;
    width: 100%;
    aspect-ratio: 16 / 9;
    border: 0;
    border-radius: 14px;
    overflow: hidden;
    background: #000
}

body[data-iit-page=home] .yt-video {
    padding: 0;
    cursor: pointer
}

body[data-iit-page=home] .yt-video img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .5s ease
}

body[data-iit-page=home] .yt-video:after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, transparent 45%, rgba(0, 20, 40, .55))
}

body[data-iit-page=home] .yt-video-play {
    position: absolute;
    z-index: 1;
    top: 50%;
    left: 50%;
    width: 68px;
    height: 68px;
    margin: -34px 0 0 -34px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: var(--iit-gold);
    color: #fff;
    font-size: 22px;
    box-shadow: 0 0 0 10px color-mix(in srgb, var(--iit-gold) 30%, transparent);
    transition: transform .25s ease, box-shadow .25s ease
}

body[data-iit-page=home] .yt-video-play i {
    margin-left: 4px
}

body[data-iit-page=home] .yt-video:hover img {
    transform: scale(1.04)
}

body[data-iit-page=home] .yt-video:hover .yt-video-play,
body[data-iit-page=home] .yt-video:focus-visible .yt-video-play {
    transform: scale(1.08);
    box-shadow: 0 0 0 16px color-mix(in srgb, var(--iit-gold) 22%, transparent)
}

body[data-iit-page=home] .yt-video:focus-visible {
    outline: 3px solid var(--iit-gold);
    outline-offset: 3px
}

/* Every Success Has a Story */
body[data-iit-page=home] .ss-story {
    position: relative;
    overflow: hidden;
    padding: 78px 0;
    background: var(--ss-bg, #002f54);
    color: #fff
}

body[data-iit-page=home] .ss-story-grid {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: 1fr;
    gap: 36px
}

body[data-iit-page=home] .ss-story-copy {
    text-align: left
}

body[data-iit-page=home] .ss-story .eyebrow {
    color: var(--iit-gold)
}

body[data-iit-page=home] .ss-story h2 {
    margin: 10px 0 16px;
    color: #fff;
    font-size: calc(40px * var(--iit-heading-scale));
    line-height: 1.15
}

body[data-iit-page=home] .ss-story h2 span {
    color: var(--iit-gold)
}

body[data-iit-page=home] .ss-story-line {
    display: none
}

body[data-iit-page=home] .ss-story p {
    max-width: 820px;
    margin: 0;
    color: #d4e2ef;
    font-size: calc(17px * var(--iit-text-scale));
    line-height: 1.7
}

body[data-iit-page=home] .ss-story-button {
    display: inline-flex;
    gap: 8px;
    margin-top: 28px;
    padding: 13px 24px;
    border-radius: 4px;
    background: var(--iit-gold);
    color: var(--iit-darkest);
    font-weight: 700;
    text-decoration: none;
    transition: background .2s, transform .2s
}

body[data-iit-page=home] .ss-story-button:hover {
    background: #fff;
    transform: translateY(-2px)
}

body[data-iit-page=home] .ss-story-video {
    position: relative
}

body[data-iit-page=home] .ss-story-video .yt-video,
body[data-iit-page=home] .ss-story-video .yt-video-frame {
    box-shadow: 0 24px 50px rgba(0, 0, 0, .35)
}

/* Course Launch */
body[data-iit-page=home] .cl-launch {
    padding: 74px 0;
    background: var(--cl-bg, #ebfafd)
}

body[data-iit-page=home] .cl-head {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 24px;
    margin-bottom: 30px
}

body[data-iit-page=home] .cl-head .section-head {
    margin: 0
}

body[data-iit-page=home] .cl-head h2 span {
    color: var(--iit-gold)
}

body[data-iit-page=home] .cl-head p {
    max-width: 620px;
    margin: 10px 0 0;
    color: var(--iit-muted)
}

body[data-iit-page=home] .cl-track {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: calc((100% - 48px) / 3);
    gap: 24px;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    padding: 4px 2px 18px
}

body[data-iit-page=home] .cl-track::-webkit-scrollbar {
    display: none
}

body[data-iit-page=home] .cl-card {
    scroll-snap-align: start;
    display: flex;
    flex-direction: column;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 10px 28px rgba(0, 47, 84, .1);
    overflow: hidden;
    transition: transform .25s ease, box-shadow .25s ease
}

body[data-iit-page=home] .cl-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 18px 38px rgba(0, 47, 84, .16)
}

body[data-iit-page=home] .cl-card .yt-video,
body[data-iit-page=home] .cl-card .yt-video-frame {
    border-radius: 0
}

body[data-iit-page=home] .cl-card .yt-video-play {
    width: 54px;
    height: 54px;
    margin: -27px 0 0 -27px;
    font-size: 18px
}

body[data-iit-page=home] .cl-card h3 {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    margin: 16px 18px 18px;
    padding: 0;
    color: var(--iit-ink);
    font-size: calc(15px * var(--iit-text-scale));
    line-height: 1.45
}

@media (max-width: 1000px) {
    body[data-iit-page=home] .ss-story-grid {
        grid-template-columns: 1fr;
        gap: 40px
    }

    body[data-iit-page=home] .ss-story h2 {
        font-size: calc(32px * var(--iit-heading-scale))
    }

    body[data-iit-page=home] .cl-track {
        grid-auto-columns: calc((100% - 24px) / 2)
    }
}

@media (max-width: 640px) {

    body[data-iit-page=home] .ss-story,
    body[data-iit-page=home] .cl-launch {
        padding: 54px 0
    }

    body[data-iit-page=home] .cl-head {
        flex-direction: column;
        align-items: flex-start
    }

    body[data-iit-page=home] .cl-track {
        grid-auto-columns: 86%
    }

    body[data-iit-page=home] .program-category-anchor {
        position: relative;
        top: -110px;
        display: block;
        height: 0;
        scroll-margin-top: 110px
    }
}

/* Footer bottom line: Privacy Policy / Terms of Use links next to the copyright */
.site-footer .footer-legal-sep {
    margin: 0 10px;
    opacity: .5
}

.site-footer .footer-bottom a.footer-legal {
    color: inherit;
    font-weight: 500;
    text-decoration: none;
    transition: color .2s
}

.site-footer .footer-bottom a.footer-legal:hover,
.site-footer .footer-bottom a.footer-legal:focus-visible {
    color: var(--iit-gold);
    text-decoration: underline
}

/* Privacy Policy / Terms of Use pages */
body[data-iit-page=home] .lg-hero {
    position: relative;
    overflow: hidden;
    padding: 64px 0 56px;
    background: linear-gradient(135deg, var(--iit-deep), var(--iit-primary));
    color: #fff
}

body[data-iit-page=home] .lg-hero-inner {
    position: relative;
    z-index: 1
}

body[data-iit-page=home] .lg-crumb {
    display: flex;
    gap: 8px;
    margin-bottom: 14px;
    color: #b9cfe2;
    font-size: calc(13px * var(--iit-text-scale))
}

body[data-iit-page=home] .lg-crumb a {
    color: inherit
}

body[data-iit-page=home] .lg-crumb a:hover {
    color: var(--iit-gold)
}

body[data-iit-page=home] .lg-hero h1 {
    margin: 0;
    color: #fff;
    font-size: calc(42px * var(--iit-heading-scale))
}

body[data-iit-page=home] .lg-hero p {
    margin: 10px 0 0;
    color: #d4e2ef
}

body[data-iit-page=home] .lg-body {
    padding: 56px 0 80px;
    background: var(--iit-cream)
}

body[data-iit-page=home] .lg-card {
    max-width: 860px;
    margin: 0 auto;
    padding: 44px 48px;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 12px 34px rgba(0, 47, 84, .08)
}

body[data-iit-page=home] .lg-card h2 {
    margin: 30px 0 10px;
    padding-left: 12px;
    border-left: 3px solid var(--iit-gold);
    color: var(--iit-ink);
    font-size: calc(21px * var(--iit-heading-scale))
}

body[data-iit-page=home] .lg-card h2:first-child {
    margin-top: 0
}

body[data-iit-page=home] .lg-card p {
    margin: 0 0 14px;
    color: var(--iit-muted);
    font-size: calc(15.5px * var(--iit-text-scale));
    line-height: 1.75
}

@media (max-width: 640px) {
    body[data-iit-page=home] .lg-hero h1 {
        font-size: calc(30px * var(--iit-heading-scale))
    }

    body[data-iit-page=home] .lg-card {
        padding: 28px 20px
    }
}

/* Floating WhatsApp chat button and back-to-top arrow (footer partial) */
.float-whatsapp,
.float-top {
    position: fixed;
    right: 22px;
    z-index: 900;
    display: grid;
    place-items: center;
    border-radius: 50%;
    text-decoration: none
}

.float-whatsapp {
    bottom: 22px;
    width: 58px;
    height: 58px;
    background: #25d366;
    color: #fff;
    font-size: 31px;
    box-shadow: 0 8px 24px rgba(0, 0, 0, .25);
    transition: transform .2s ease
}

/* soft pulse ring */
.float-whatsapp:before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 50%;
    background: #25d366;
    z-index: -1;
    animation: float-whatsapp-ring 2.2s ease-out infinite
}

.float-whatsapp:hover,
.float-whatsapp:focus-visible {
    color: #fff;
    transform: scale(1.08)
}

.float-whatsapp-tip {
    position: absolute;
    right: 70px;
    padding: 7px 12px;
    border-radius: 6px;
    background: #fff;
    color: #0d2a40;
    font: 600 13px/1.2 var(--iit-font-body, sans-serif);
    white-space: nowrap;
    box-shadow: 0 6px 18px rgba(0, 0, 0, .18);
    opacity: 0;
    transform: translateX(6px);
    pointer-events: none;
    transition: opacity .2s, transform .2s
}

.float-whatsapp:hover .float-whatsapp-tip,
.float-whatsapp:focus-visible .float-whatsapp-tip {
    opacity: 1;
    transform: none
}

.float-top {
    bottom: 92px;
    width: 46px;
    height: 46px;
    padding: 0;
    border: 0;
    background: var(--iit-primary, #00487e);
    color: #fff;
    font-size: 18px;
    cursor: pointer;
    box-shadow: 0 8px 22px rgba(0, 36, 63, .3);
    opacity: 0;
    visibility: hidden;
    transform: translateY(12px);
    transition: opacity .25s, visibility .25s, transform .25s, background .2s
}

/* without the WhatsApp button the arrow takes its place */
.float-top--alone {
    bottom: 22px
}

.float-top.is-visible {
    opacity: 1;
    visibility: visible;
    transform: none
}

.float-top:hover,
.float-top:focus-visible {
    background: var(--iit-gold, #ff8b25)
}

.float-whatsapp:focus-visible,
.float-top:focus-visible {
    outline: 3px solid var(--iit-gold, #ff8b25);
    outline-offset: 3px
}

@keyframes float-whatsapp-ring {
    0% {
        transform: scale(1);
        opacity: .5
    }

    100% {
        transform: scale(1.6);
        opacity: 0
    }
}

@media (max-width: 640px) {
    .float-whatsapp {
        right: 14px;
        bottom: 14px;
        width: 52px;
        height: 52px;
        font-size: 28px
    }

    .float-top {
        right: 17px;
        bottom: 78px;
        width: 44px;
        height: 44px
    }

    .float-whatsapp-tip {
        display: none
    }
}

@media (prefers-reduced-motion: reduce) {
    .float-whatsapp:before {
        animation: none
    }
}

body .float-whatsapp,
body .float-whatsapp i {
    color: #fff
}

/* Eyebrows (small labels above headings): three-colour bar (orange, navy, light blue) + spaced blue capitals,
   the same pattern as Our Alumni. On dark backgrounds the footer script adds .eyebrow--on-dark (white text).
   Repeated class beats the per-section eyebrow colours; !important beats inline colours in some templates. */
body[data-iit-page] .eyebrow.eyebrow.eyebrow,
body[data-iit-page=home] .adm-hero-eyebrow.adm-hero-eyebrow {
    display: flex;
    align-items: center;
    gap: 16px;
    width: fit-content;
    max-width: 100%;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: none;
    box-shadow: none;
    text-shadow: none;
    color: var(--iit-primary) !important;
    font: 700 calc(13px * var(--iit-text-scale))/1.3 var(--iit-font-body);
    letter-spacing: 3px;
    text-transform: uppercase
}

body[data-iit-page] .eyebrow.eyebrow.eyebrow:before,
body[data-iit-page=home] .adm-hero-eyebrow.adm-hero-eyebrow:before {
    content: "";
    flex: none;
    display: block;
    width: 76px;
    height: 6px;
    margin: 0;
    border-radius: 0;
    box-shadow: none;
    background: linear-gradient(90deg, var(--iit-gold) 0 32px, var(--iit-primary) 32px 44px, #cfeaf8 44px)
}

/* on dark backgrounds */
body[data-iit-page] .eyebrow.eyebrow.eyebrow.eyebrow--on-dark,
body[data-iit-page=home] .adm-hero-eyebrow.adm-hero-eyebrow.eyebrow--on-dark {
    color: #fff !important
}

body[data-iit-page] .eyebrow.eyebrow.eyebrow.eyebrow--on-dark:before,
body[data-iit-page=home] .adm-hero-eyebrow.adm-hero-eyebrow.eyebrow--on-dark:before {
    background: linear-gradient(90deg, var(--iit-gold) 0 32px, #fff 32px 44px, rgba(255, 255, 255, .35) 44px)
}

/* centred section heads keep the label centred */
body[data-iit-page] [style*="text-align:center"]>.eyebrow.eyebrow.eyebrow,
body[data-iit-page] .center>.eyebrow.eyebrow.eyebrow {
    margin-left: auto;
    margin-right: auto
}

@media (max-width: 640px) {

    body[data-iit-page] .eyebrow.eyebrow.eyebrow,
    body[data-iit-page=home] .adm-hero-eyebrow.adm-hero-eyebrow {
        gap: 12px;
        font-size: calc(12px * var(--iit-text-scale));
        letter-spacing: 2.4px
    }

    body[data-iit-page] .eyebrow.eyebrow.eyebrow:before,
    body[data-iit-page=home] .adm-hero-eyebrow.adm-hero-eyebrow:before {
        width: 60px;
        background: linear-gradient(90deg, var(--iit-gold) 0 26px, var(--iit-primary) 26px 36px, #cfeaf8 36px)
    }

    body[data-iit-page] .eyebrow.eyebrow.eyebrow.eyebrow--on-dark:before,
    body[data-iit-page=home] .adm-hero-eyebrow.adm-hero-eyebrow.eyebrow--on-dark:before {
        background: linear-gradient(90deg, var(--iit-gold) 0 26px, #fff 26px 36px, rgba(255, 255, 255, .35) 36px)
    }
}

/* Our Alumni (home-sections/alumni): light section, white cards with corner ribbons, ringed photos, company chips */
body[data-iit-page=home] .al3 {
    position: relative;
    overflow: hidden;
    padding: 84px 0 76px;
    background: linear-gradient(180deg, #f6fafd, #eef6fb)
}

/* diagonal ribbons in the top right corner of the section */
body[data-iit-page=home] .al3-corner {
    position: absolute;
    top: 0;
    right: 0;
    width: 230px;
    height: 170px;
    pointer-events: none;
    background:
        linear-gradient(45deg, transparent 0 58%, #cfeaf8 58% 64%, transparent 64%),
        linear-gradient(45deg, transparent 0 68%, var(--iit-gold) 68% 76%, transparent 76%),
        linear-gradient(45deg, transparent 0 79%, var(--iit-primary) 79%)
}

body[data-iit-page=home] .al3 .wrap {
    position: relative;
    z-index: 1
}

body[data-iit-page=home] .al3-head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 28px;
    margin-bottom: 40px
}

body[data-iit-page=home] .al3-eyebrow {
    display: flex;
    align-items: center;
    gap: 16px;
    color: var(--iit-primary);
    font: 700 calc(14px * var(--iit-text-scale)) var(--iit-font-body);
    letter-spacing: 3px;
    text-transform: uppercase
}

/* three-colour bar before the eyebrow text */
body[data-iit-page=home] .al3-eyebrow span {
    display: flex;
    height: 6px
}

body[data-iit-page=home] .al3-eyebrow span i {
    display: block;
    height: 100%
}

body[data-iit-page=home] .al3-eyebrow span i:nth-child(1) {
    width: 32px;
    background: var(--iit-gold)
}

body[data-iit-page=home] .al3-eyebrow span i:nth-child(2) {
    width: 12px;
    background: var(--iit-primary)
}

body[data-iit-page=home] .al3-eyebrow span i:nth-child(3) {
    width: 32px;
    background: #cfeaf8
}

body[data-iit-page=home] .al3-head h2 {
    margin: 14px 0 0;
    color: var(--iit-primary);
    font-size: calc(52px * var(--iit-heading-scale));
    line-height: 1.1;
    letter-spacing: -.5px
}

body[data-iit-page=home] .al3-head h2 em {
    font-style: normal;
    color: var(--iit-gold)
}

body[data-iit-page=home] .al3-side {
    flex: none;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 22px
}

body[data-iit-page=home] .al3-link {
    color: var(--iit-primary);
    font-weight: 600;
    text-decoration: none;
    transition: color .2s
}

body[data-iit-page=home] .al3-link:hover {
    color: var(--iit-gold)
}

body[data-iit-page=home] .al3-nav {
    display: flex;
    gap: 16px
}

body[data-iit-page=home] .al3-arrow {
    width: 60px;
    height: 60px;
    border: 1px solid #cfe2ef;
    border-radius: 50%;
    background: #fff;
    color: var(--iit-primary);
    font-size: 22px;
    cursor: pointer;
    transition: background .2s, color .2s, border-color .2s, transform .2s
}

body[data-iit-page=home] .al3-arrow--next {
    border-color: transparent;
    background: color-mix(in srgb, var(--iit-primary) 78%, #3fa3ff);
    color: #fff;
    box-shadow: 0 8px 20px color-mix(in srgb, var(--iit-primary) 30%, transparent)
}

body[data-iit-page=home] .al3-arrow:hover:not(:disabled) {
    background: var(--iit-gold);
    border-color: var(--iit-gold);
    color: #fff;
    transform: translateY(-2px)
}

body[data-iit-page=home] .al3-arrow:disabled {
    opacity: .45;
    cursor: default
}

body[data-iit-page=home] .al3-arrow:focus-visible {
    outline: 3px solid var(--iit-gold);
    outline-offset: 3px
}

/* cards: grid, or a horizontal slider */
body[data-iit-page=home] .al3-row {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 28px;
    padding: 6px 4px 18px
}

body[data-iit-page=home] .al3--slider .al3-row {
    grid-template-columns: none;
    grid-auto-flow: column;
    grid-auto-columns: calc((100% - 84px) / 4);
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scrollbar-width: none
}

body[data-iit-page=home] .al3--slider .al3-row::-webkit-scrollbar {
    display: none
}

body[data-iit-page=home] .al3-card {
    position: relative;
    overflow: hidden;
    scroll-snap-align: start;
    padding: 22px 28px 30px;
    border: 1px solid #dfeaf3;
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 12px 30px rgba(0, 47, 84, .07);
    transition: transform .25s ease, box-shadow .25s ease
}

body[data-iit-page=home] .al3-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 20px 40px rgba(0, 47, 84, .13)
}

/* photo with an orange ring and a navy arc */
body[data-iit-page=home] .al3-photo {
    position: relative;
    width: 150px;
    height: 150px;
    margin-bottom: 22px;
    padding: 5px;
    border-radius: 50%;
    background: conic-gradient(var(--iit-gold) 0 62%, var(--iit-primary) 62% 92%, var(--iit-gold) 92%);
    box-shadow: 0 10px 24px rgba(0, 47, 84, .14)
}

body[data-iit-page=home] .al3-photo img,
body[data-iit-page=home] .al3-photo span {
    display: block;
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    border: 4px solid #fff;
    border-radius: 50%;
    background: #fff;
    object-fit: cover
}

body[data-iit-page=home] .al3-photo span {
    display: grid;
    place-items: center;
    background: linear-gradient(135deg, var(--iit-primary), color-mix(in srgb, var(--iit-primary) 60%, #3fa3ff));
    color: #fff;
    font: 700 calc(40px * var(--iit-heading-scale)) var(--iit-font-heading)
}

body[data-iit-page=home] .al3-body h3 {
    margin: 0 0 6px;
    color: var(--iit-primary);
    font-size: calc(22px * var(--iit-heading-scale));
    line-height: 1.25
}

body[data-iit-page=home] .al3-body p {
    margin: 0 0 18px;
    color: #7d8fa1;
    font-size: calc(16px * var(--iit-text-scale))
}

body[data-iit-page=home] .al3-co {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    max-width: 100%;
    padding: 0 18px 0 0;
    border-radius: 999px;
    background: #eef5fa;
    color: var(--iit-ink);
    font-weight: 500
}

body[data-iit-page=home] .al3-co i {
    flex: none;
    display: grid;
    place-items: center;
    width: 42px;
    height: 42px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--iit-gold), color-mix(in srgb, var(--iit-gold) 80%, #ff5e00));
    color: #fff;
    font: 700 13px var(--iit-font-body);
    font-style: normal;
    box-shadow: 0 6px 14px color-mix(in srgb, var(--iit-gold) 35%, transparent)
}

body[data-iit-page=home] .al3-dots {
    display: flex;
    justify-content: center;
    gap: 12px;
    margin-top: 26px
}

body[data-iit-page=home] .al3-dots button {
    width: 14px;
    height: 14px;
    padding: 0;
    border: 0;
    border-radius: 999px;
    background: #cfe7f6;
    cursor: pointer;
    transition: width .25s, background .25s
}

body[data-iit-page=home] .al3-dots button.is-active {
    width: 38px;
    background: var(--iit-gold)
}

/* "list" layout: photo beside the text */
body[data-iit-page=home] .al3--list .al3-row {
    grid-template-columns: repeat(2, minmax(0, 1fr))
}

body[data-iit-page=home] .al3--list .al3-card {
    display: flex;
    align-items: center;
    gap: 26px
}

body[data-iit-page=home] .al3--list .al3-photo {
    flex: none;
    width: 120px;
    height: 120px;
    margin: 0
}

body[data-iit-page=home] .al3 .al-strip {
    margin-top: 40px
}

@media (max-width: 1100px) {
    body[data-iit-page=home] .al3-row {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }

    body[data-iit-page=home] .al3--slider .al3-row {
        grid-auto-columns: calc((100% - 28px) / 2)
    }

    body[data-iit-page=home] .al3-head h2 {
        font-size: calc(40px * var(--iit-heading-scale))
    }
}

@media (max-width: 640px) {
    body[data-iit-page=home] .al3 {
        padding: 60px 0
    }

    body[data-iit-page=home] .al3-corner {
        width: 130px;
        height: 100px
    }

    body[data-iit-page=home] .al3-head {
        flex-direction: column;
        align-items: flex-start
    }

    body[data-iit-page=home] .al3-side {
        align-items: flex-start
    }

    body[data-iit-page=home] .al3-head h2 {
        font-size: calc(32px * var(--iit-heading-scale))
    }

    body[data-iit-page=home] .al3-row,
    body[data-iit-page=home] .al3--list .al3-row {
        grid-template-columns: 1fr
    }

    body[data-iit-page=home] .al3--slider .al3-row {
        grid-auto-columns: 84%
    }

    body[data-iit-page=home] .al3-arrow {
        width: 50px;
        height: 50px
    }
}

/* Alumni cards: long names/roles no longer stretch every card (role 1 line, name 2 lines), less space below */
body[data-iit-page=home] .al3 {
    padding-bottom: 56px
}

body[data-iit-page=home] .al3-card {
    padding-bottom: 24px
}

body[data-iit-page=home] .al3-row {
    padding-bottom: 10px
}

body[data-iit-page=home] .al3-body h3 {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden
}

body[data-iit-page=home] .al3-body p {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis
}

body[data-iit-page=home] .al3-co {
    white-space: nowrap
}

body[data-iit-page=home] .al3-dots {
    margin-top: 18px
}

/* Header with many menu items (desktop): full-width bar, logo on the far left, menu on one line on the right */
@media (min-width: 1001px) {

    body[data-iit-page] .top>.wrap,
    body[data-iit-page] .head>.wrap {
        width: calc(100% - 48px);
        max-width: 1560px
    }

    body[data-iit-page] .head>.wrap {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 28px
    }

    body[data-iit-page] .head .brand {
        flex: none;
        margin-right: auto
    }

    body[data-iit-page] .brand-logo,
    body[data-iit-page=home] .brand-logo {
        width: clamp(220px, 19vw, 320px)
    }

    body[data-iit-page] .head .nav {
        flex-wrap: nowrap;
        gap: clamp(14px, 1.5vw, 28px)
    }

    body[data-iit-page] .head .nav a {
        white-space: nowrap
    }

    body[data-iit-page] .head .nav a.button {
        padding: 12px 20px
    }
}

/* small laptops: a little tighter so everything still fits on one line */
@media (min-width: 1001px) and (max-width: 1240px) {
    body[data-iit-page] .head .nav {
        gap: 13px;
        font-size: calc(12px * var(--iit-text-scale))
    }

    body[data-iit-page] .brand-logo,
    body[data-iit-page=home] .brand-logo {
        width: 200px
    }

    body[data-iit-page] .head .nav a.button {
        padding: 10px 14px;
        font-size: calc(12px * var(--iit-text-scale))
    }
}

body[data-iit-page] .top .top-links {
    display: flex;
    gap: 24px
}

@media (max-width: 1000px) {
    body[data-iit-page=home] .top>.wrap {
        gap: 4px;
        padding: 9px 0
    }

    body[data-iit-page=home] .top>.wrap>span {
        max-width: 100%;
        line-height: 1.45
    }

    body[data-iit-page=home] .top .top-links {
        flex-direction: column;
        align-items: center;
        gap: 3px;
        line-height: 1.45
    }
}

/* Header submenus (Admin -> Header & Footer -> menu "Parent" column) */
body[data-iit-page] .head .nav-dd {
    position: relative;
    display: flex;
    align-items: center
}

body[data-iit-page] .head .nav-dd-toggle {
    display: inline-flex;
    align-items: center;
    gap: 6px
}

body[data-iit-page] .head .nav-dd-toggle i {
    font-size: 10px;
    transition: transform .2s
}

@media (min-width: 1001px) {
    body[data-iit-page] .head .nav-dd-menu {
        position: absolute;
        z-index: 50;
        top: 100%;
        left: 50%;
        min-width: 240px;
        margin-top: 14px;
        padding: 8px;
        border-radius: 10px;
        border-top: 3px solid var(--iit-gold);
        background: #fff;
        box-shadow: 0 18px 40px rgba(0, 36, 63, .22);
        opacity: 0;
        visibility: hidden;
        transform: translate(-50%, 8px);
        transition: opacity .2s, transform .2s, visibility .2s
    }

    /* invisible bridge so the menu stays open while the pointer moves down to it */
    body[data-iit-page] .head .nav-dd-menu:before {
        content: "";
        position: absolute;
        left: 0;
        right: 0;
        top: -18px;
        height: 18px
    }

    /* small arrow on top */
    body[data-iit-page] .head .nav-dd-menu:after {
        content: "";
        position: absolute;
        top: -9px;
        left: 50%;
        margin-left: -6px;
        border: 6px solid transparent;
        border-top: 0;
        border-bottom-color: var(--iit-gold)
    }

    body[data-iit-page] .head .nav-dd:hover .nav-dd-menu,
    body[data-iit-page] .head .nav-dd:focus-within .nav-dd-menu {
        opacity: 1;
        visibility: visible;
        transform: translate(-50%, 0)
    }

    body[data-iit-page] .head .nav-dd:hover .nav-dd-toggle i,
    body[data-iit-page] .head .nav-dd:focus-within .nav-dd-toggle i {
        transform: rotate(180deg)
    }

    body[data-iit-page] .head .nav .nav-dd-menu a {
        display: block;
        padding: 10px 14px;
        border: 0;
        border-radius: 6px;
        color: var(--iit-ink);
        font-weight: 600;
        white-space: nowrap;
        text-decoration: none;
        transition: background .15s, color .15s, padding-left .15s
    }

    body[data-iit-page] .head .nav .nav-dd-menu a:after {
        display: none
    }

    body[data-iit-page] .head .nav .nav-dd-menu a:hover,
    body[data-iit-page] .head .nav .nav-dd-menu a:focus-visible,
    body[data-iit-page] .head .nav .nav-dd-menu a.active {
        background: var(--iit-cream);
        color: var(--iit-primary);
        padding-left: 18px
    }
}

/* phones and tablets: dropdown links are listed under their main link, indented */
@media (max-width: 1000px) {
    body[data-iit-page] .nav .nav-dd {
        flex-direction: column;
        align-items: stretch
    }

    body[data-iit-page] .nav .nav-dd-toggle {
        justify-content: space-between
    }

    body[data-iit-page] .nav .nav-dd-menu {
        display: flex;
        flex-direction: column;
        padding-left: 14px;
        border-left: 3px solid var(--iit-gold);
        margin: 4px 0 6px 10px
    }

    body[data-iit-page] .nav .nav-dd-menu a,
    body[data-iit-page] .nav .nav-dd-menu a:last-child {
        margin-top: 0;
        padding: 9px 8px;
        text-align: left;
        border-bottom: 1px solid #edf1ef;
        font-size: .95em
    }
}

/* Alumni card name a little smaller so long names fit */
body[data-iit-page=home] .al3-body h3 {
    font-size: calc(18px * var(--iit-heading-scale))
}

body[data-iit-page=home] .al3-photo img {
    object-position: center
}

body[data-iit-page=home] .al3-body {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center
}

body[data-iit-page=home] .al3-body .al3-co {
    justify-content: center
}

/* Footer: university headings inside a link column, justified description under the logo */
.site-footer .footer-links .footer-group {
    margin: 18px 0 10px;
    padding: 4px 10px;
    width: fit-content;
    border-radius: 4px;
    background: color-mix(in srgb, var(--iit-gold) 18%, transparent);
    color: var(--iit-gold);
    font: 700 calc(11px * var(--iit-text-scale)) var(--iit-font-body);
    letter-spacing: 1.4px;
    text-transform: uppercase
}

.site-footer .footer-links h4+.footer-group {
    margin-top: 0
}

.site-footer .footer-description {
    text-align: justify;
    hyphens: auto
}

.site-footer .footer-campus-map {
    width: 100%;
    max-width: 280px;
    height: 150px;
    margin-top: 18px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .2);
    border-radius: 10px;
    background: rgba(255, 255, 255, .08)
}

.site-footer .footer-grid > div:first-child .connect {
    align-items: center;
    flex-direction: row;
    gap: 8px;
    margin-top: 14px;
    text-align: left
}

.site-footer .footer-grid > div:first-child .connect .footer-socials {
    justify-content: flex-start
}

.site-footer .footer-campus-map iframe,
.site-footer .footer-campus-map img {
    display: block;
    width: 100%;
    height: 100%;
    border: 0;
    object-fit: cover
}

.site-footer .footer-campus-map a {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    color: #fff
}

.site-footer .footer-campus-map a:after {
    content: "";
    position: absolute;
    inset: 45% 0 0;
    background: linear-gradient(transparent, rgba(0, 24, 45, .78))
}

.site-footer .footer-campus-map a span {
    position: absolute;
    z-index: 1;
    right: 12px;
    bottom: 10px;
    left: 12px;
    font-size: calc(12px * var(--iit-text-scale));
    font-weight: 700
}

/* Programs at a Glance: highlighted column headings (e.g. "Undergraduate (UG) Degree Programmes") */
body[data-iit-page=home] .adm-col-title {
    margin: -22px -22px 18px;
    padding: 16px 20px;
    border-radius: 16px 16px 0 0;
    background: linear-gradient(135deg, var(--iit-primary), color-mix(in srgb, var(--iit-primary) 70%, #3fa3ff));
    color: #fff;
    box-shadow: inset 0 -3px 0 var(--iit-gold)
}

body[data-iit-page=home] .adm-col-title span {
    background: var(--iit-gold);
    color: #fff;
    box-shadow: 0 6px 14px rgba(0, 0, 0, .18)
}

body[data-iit-page=home] .adm-col-title b {
    display: flex;
    flex-direction: column;
    gap: 6px;
    font-weight: 700
}

body[data-iit-page=home] .adm-col-title small {
    width: fit-content;
    padding: 3px 10px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .16);
    color: #ffe2c7;
    font: 600 calc(12px * var(--iit-text-scale)) var(--iit-font-body);
    letter-spacing: .3px
}

body[data-iit-page=home] .adm-col {
    overflow: hidden;
    box-shadow: 0 10px 26px rgba(0, 47, 84, .08)
}

/* Programs at a Glance, programme block (v2): seal + name, two-line title, campus corner, rich column headers, icon rows */
body[data-iit-page=home] .ap-block {
    position: relative;
    overflow: hidden;
    padding: 30px 30px 34px;
    border-radius: 22px;
    background: linear-gradient(180deg, #f3f8fd, #eef5fb) !important;
    box-shadow: 0 18px 44px rgba(0, 47, 84, .1)
}

body[data-iit-page=home] .ap-head {
    position: relative;
    display: flex;
    align-items: center;
    gap: 34px;
    min-height: 130px;
    margin-bottom: 26px
}

body[data-iit-page=home] .ap-head-link {
    display: block;
    color: inherit;
    text-decoration: none
}

body[data-iit-page=home] .ap-head-link:focus-visible {
    border-radius: 12px;
    outline: 3px solid var(--iit-primary);
    outline-offset: 5px
}

body[data-iit-page=home] .ap-head-link:hover .ap-brand b,
body[data-iit-page=home] .ap-head-link:hover .ap-heading h3 {
    color: var(--iit-gold)
}

body[data-iit-page=home] .ap-brand {
    position: relative;
    z-index: 1;
    flex: none;
    display: flex;
    align-items: center;
    gap: 16px;
    padding-right: 34px;
    border-right: 3px solid var(--iit-primary)
}

body[data-iit-page=home] .ap-brand img {
    width: 96px;
    height: 96px;
    object-fit: contain
}

body[data-iit-page=home] .ap-brand b {
    display: block;
    color: var(--iit-primary);
    font: 800 calc(40px * var(--iit-heading-scale))/1 var(--iit-font-heading);
    letter-spacing: -.5px
}

body[data-iit-page=home] .ap-brand span {
    display: block;
    margin-top: 6px;
    color: var(--iit-primary);
    font: 600 calc(14px * var(--iit-text-scale)) var(--iit-font-body)
}

body[data-iit-page=home] .ap-heading {
    position: relative;
    z-index: 1;
    min-width: 0
}

body[data-iit-page=home] .ap-heading h3 {
    margin: 0;
    color: var(--iit-primary);
    font: 800 calc(34px * var(--iit-heading-scale))/1.12 var(--iit-font-heading);
    letter-spacing: -.4px
}

body[data-iit-page=home] .ap-heading h3 em {
    display: block;
    font-style: normal;
    color: var(--iit-gold)
}

body[data-iit-page=home] .ap-open {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin: 14px 0 0;
    padding: 8px 18px;
    border: 1.5px solid color-mix(in srgb, var(--iit-gold) 70%, transparent);
    border-radius: 999px;
    background: color-mix(in srgb, var(--iit-gold) 12%, #fff);
    color: var(--iit-ink);
    font: 600 calc(14px * var(--iit-text-scale)) var(--iit-font-body)
}

body[data-iit-page=home] .ap-open i {
    color: var(--iit-gold)
}

/* campus photo fading in from the right, with handwritten words */
body[data-iit-page=home] .ap-visual {
    position: absolute;
    top: -30px;
    right: -30px;
    width: 46%;
    height: calc(100% + 40px);
    background: var(--ap-campus) center 40% / cover no-repeat;
    -webkit-mask-image: linear-gradient(90deg, transparent, #000 55%);
    mask-image: linear-gradient(90deg, transparent, #000 55%);
    opacity: .55
}

body[data-iit-page=home] .ap-tagline {
    position: absolute;
    top: 30px;
    right: 44px;
    display: flex;
    flex-direction: column;
    transform: rotate(-8deg);
    color: var(--iit-primary);
    font: 700 26px/1.05 "Segoe Script", "Brush Script MT", "Caveat", cursive
}

body[data-iit-page=home] .ap-tagline i {
    font-style: normal
}

body[data-iit-page=home] .ap-tagline i:nth-child(2) {
    padding-left: 12px
}

body[data-iit-page=home] .ap-tagline i:nth-child(3) {
    padding-left: 24px
}

body[data-iit-page=home] .ap-tagline:after {
    content: "";
    width: 80px;
    height: 4px;
    margin: 4px 0 0 30px;
    border-radius: 4px;
    background: var(--iit-gold)
}

/* column cards */
body[data-iit-page=home] .ap-block .adm-col {
    padding: 0 28px 10px;
    border: 1px solid #dbe7f2;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 10px 28px rgba(0, 47, 84, .08)
}

/* column header: dark blue band, round icon, outlined meta pill, yellow swoosh */
body[data-iit-page=home] .ap-block .ap-col-title {
    position: relative;
    overflow: hidden;
    gap: 20px;
    margin: 0 -28px 8px;
    padding: 22px 28px 24px;
    border-radius: 18px 18px 0 0;
    background: linear-gradient(120deg, #062f6b, #0a4fa6);
    box-shadow: inset 0 -5px 0 var(--iit-gold);
    color: #fff
}

body[data-iit-page=home] .ap-block .ap-col-title:after {
    content: "";
    position: absolute;
    right: -10px;
    bottom: 0;
    width: 120px;
    height: 70px;
    background: linear-gradient(135deg, transparent 48%, #ffc23a 49% 62%, #ffd85a 63%);
    clip-path: polygon(100% 0, 100% 100%, 0 100%);
    opacity: .95
}

body[data-iit-page=home] .ap-block .ap-col-title span {
    width: 74px;
    height: 74px;
    border-radius: 50%;
    font-size: 30px;
    box-shadow: 0 0 0 5px rgba(255, 255, 255, .14), 0 10px 22px rgba(0, 0, 0, .25)
}

body[data-iit-page=home] .ap-block .ap-col-title--ug span {
    background: linear-gradient(135deg, #ffb340, var(--iit-gold))
}

body[data-iit-page=home] .ap-block .ap-col-title--pg span {
    background: linear-gradient(135deg, #2aa8ff, #0a6fd6)
}

body[data-iit-page=home] .ap-block .ap-col-title b {
    position: relative;
    z-index: 1;
    gap: 10px;
    font: 700 calc(22px * var(--iit-heading-scale))/1.2 var(--iit-font-heading)
}

body[data-iit-page=home] .ap-block .ap-col-title small {
    padding: 4px 16px;
    border: 1.5px solid rgba(255, 255, 255, .55);
    background: rgba(255, 255, 255, .06);
    color: #fff;
    font-size: calc(15px * var(--iit-text-scale))
}

/* programme rows with a round icon */
body[data-iit-page=home] .ap-program {
    display: flex;
    gap: 20px;
    align-items: flex-start;
    padding: 20px 0
}

body[data-iit-page=home] .ap-program-title-link {
    color: inherit;
    text-decoration: none
}

body[data-iit-page=home] .ap-program-title-link:focus-visible {
    border-radius: 12px;
    outline: 3px solid var(--iit-primary);
    outline-offset: 5px
}

body[data-iit-page=home] .ap-icon {
    flex: none;
    display: grid;
    place-items: center;
    width: 66px;
    height: 66px;
    border-radius: 50%;
    font-size: 26px;
    --tone: #1677d2;
    background: color-mix(in srgb, var(--tone) 16%, #fff);
    color: var(--tone)
}

body[data-iit-page=home] .ap-program--solid .ap-icon {
    background: linear-gradient(135deg, color-mix(in srgb, var(--tone) 80%, #fff), var(--tone));
    color: #fff;
    box-shadow: 0 8px 18px color-mix(in srgb, var(--tone) 35%, transparent)
}

body[data-iit-page=home] .ap-tone-1 .ap-icon {
    --tone: #7b3fd0
}

body[data-iit-page=home] .ap-tone-2 .ap-icon {
    --tone: #12a37a
}

body[data-iit-page=home] .ap-program--soft.ap-tone-3 .ap-icon {
    --tone: #7b3fd0
}

body[data-iit-page=home] .ap-program--solid.ap-tone-3 .ap-icon {
    --tone: #e5484d
}

body[data-iit-page=home] .ap-tone-4 .ap-icon {
    --tone: #1f3a8a
}

body[data-iit-page=home] .ap-tone-5 .ap-icon {
    --tone: #0e9bb0
}

body[data-iit-page=home] .ap-program .ap-icon {
    background: #e8f3fd;
    color: #0a4fa6;
    box-shadow: none
}

body[data-iit-page=home] .ap-program-body {
    flex: 1;
    min-width: 0
}

body[data-iit-page=home] .ap-program .adm-program-name b {
    color: var(--iit-primary);
    font-size: calc(20px * var(--iit-heading-scale))
}

body[data-iit-page=home] .ap-program .adm-program-name span {
    font-size: calc(15.5px * var(--iit-text-scale))
}

body[data-iit-page=home] .ap-program .adm-specs li {
    background: #e8f3fd;
    color: #0b4fa3
}

body[data-iit-page=home] .ap-program .adm-chip {
    padding: 6px 14px;
    border-radius: 999px;
    font-size: calc(13.5px * var(--iit-text-scale))
}

body[data-iit-page=home] .ap-program .adm-chip:not(.adm-chip--intake):not(.adm-chip--closed) {
    background: #e8f3fd;
    color: var(--iit-primary)
}

@media (max-width: 1100px) {
    body[data-iit-page=home] .ap-head {
        flex-wrap: wrap;
        gap: 20px
    }

    body[data-iit-page=home] .ap-visual {
        width: 40%;
        opacity: .3
    }
}

@media (max-width: 640px) {
    body[data-iit-page=home] .ap-block {
        padding: 22px 16px 24px
    }

    body[data-iit-page=home] .ap-brand {
        padding-right: 0;
        border-right: 0
    }

    body[data-iit-page=home] .ap-brand img {
        width: 70px;
        height: 70px
    }

    body[data-iit-page=home] .ap-brand b {
        font-size: calc(30px * var(--iit-heading-scale))
    }

    body[data-iit-page=home] .ap-heading h3 {
        font-size: calc(26px * var(--iit-heading-scale))
    }

    body[data-iit-page=home] .ap-visual {
        display: none
    }

    body[data-iit-page=home] .ap-block .adm-col {
        padding: 0 16px 8px
    }

    body[data-iit-page=home] .ap-block .ap-col-title {
        margin: 0 -16px 8px;
        padding: 18px 16px 20px
    }

    body[data-iit-page=home] .ap-block .ap-col-title span {
        width: 56px;
        height: 56px;
        font-size: 22px
    }

    body[data-iit-page=home] .ap-icon {
        width: 50px;
        height: 50px;
        font-size: 20px
    }
}

/* programme block: keep the campus photo and handwriting clear of the heading; no line above the first programme */
@media (min-width: 1101px) {
    body[data-iit-page=home] .ap-visual {
        width: 30%;
        opacity: .5
    }
}

body[data-iit-page=home] .ap-head {
    padding-right: 24%
}

body[data-iit-page=home] .ap-tagline {
    right: 30px;
    font-size: 24px
}

body[data-iit-page=home] .ap-block .adm-programs>li:first-child {
    border-top: 0
}

@media (max-width: 1100px) {
    body[data-iit-page=home] .ap-head {
        padding-right: 0
    }
}

/* programme block tuning: two-line heading, one-line date pill, clearer handwriting, wrapping brand on phones */
body[data-iit-page=home] .ap-head {
    padding-right: 14%
}

@media (min-width: 1101px) {
    body[data-iit-page=home] .ap-visual {
        width: 28%;
        opacity: 1;
        background-image: linear-gradient(rgba(240, 246, 252, .5), rgba(240, 246, 252, .5)), var(--ap-campus)
    }

    body[data-iit-page=home] .ap-open {
        white-space: nowrap
    }
}

@media (max-width: 1100px) {
    body[data-iit-page=home] .ap-head {
        padding-right: 0
    }
}

@media (max-width: 640px) {
    body[data-iit-page=home] .ap-brand {
        flex: 1 1 auto;
        min-width: 0
    }

    body[data-iit-page=home] .ap-brand span {
        font-size: calc(12.5px * var(--iit-text-scale))
    }
}

/* programme blocks: smaller type (both blocks), icon emblem when no logo image */
body[data-iit-page=home] .ap-brand-mark {
    flex: none;
    display: grid;
    place-items: center;
    width: 84px;
    height: 84px;
    border: 3px solid var(--iit-gold);
    border-radius: 50%;
    background: linear-gradient(135deg, var(--iit-primary), color-mix(in srgb, var(--iit-primary) 70%, #3fa3ff));
    color: #fff;
    font-size: 34px;
    box-shadow: 0 8px 20px rgba(0, 47, 84, .2)
}

body[data-iit-page=home] .ap-brand img {
    width: 84px;
    height: 84px
}

body[data-iit-page=home] .ap-brand b {
    font-size: calc(32px * var(--iit-heading-scale))
}

body[data-iit-page=home] .ap-brand span {
    font-size: calc(13px * var(--iit-text-scale))
}

body[data-iit-page=home] .ap-heading h3 {
    font-size: calc(28px * var(--iit-heading-scale))
}

body[data-iit-page=home] .ap-open {
    padding: 7px 16px;
    font-size: calc(13px * var(--iit-text-scale))
}

body[data-iit-page=home] .ap-tagline {
    font-size: 21px
}

body[data-iit-page=home] .ap-block .ap-col-title b {
    font-size: calc(19px * var(--iit-heading-scale))
}

body[data-iit-page=home] .ap-block .ap-col-title small {
    font-size: calc(13.5px * var(--iit-text-scale))
}

body[data-iit-page=home] .ap-block .ap-col-title span {
    width: 64px;
    height: 64px;
    font-size: 26px
}

body[data-iit-page=home] .ap-program .adm-program-name b {
    font-size: calc(17px * var(--iit-heading-scale))
}

body[data-iit-page=home] .ap-program .adm-program-name span {
    font-size: calc(14.5px * var(--iit-text-scale))
}

body[data-iit-page=home] .ap-icon {
    width: 56px;
    height: 56px;
    font-size: 22px
}

body[data-iit-page=home] .ap-program .adm-chip {
    font-size: calc(12.5px * var(--iit-text-scale))
}

@media (max-width: 640px) {

    body[data-iit-page=home] .ap-brand-mark,
    body[data-iit-page=home] .ap-brand img {
        width: 64px;
        height: 64px
    }

    body[data-iit-page=home] .ap-brand-mark {
        font-size: 26px
    }

    body[data-iit-page=home] .ap-brand b {
        font-size: calc(26px * var(--iit-heading-scale))
    }

    body[data-iit-page=home] .ap-heading h3 {
        font-size: calc(23px * var(--iit-heading-scale))
    }

    body[data-iit-page=home] .ap-icon {
        width: 46px;
        height: 46px;
        font-size: 18px
    }
}

body[data-iit-page=home] .ap-brand span.ap-brand-mark {
    display: grid;
    margin: 0;
    color: #fff;
    font: 900 34px/1 "Font Awesome 6 Free"
}

@media (max-width: 640px) {
    body[data-iit-page=home] .ap-brand span.ap-brand-mark {
        font-size: 26px
    }

    body[data-iit-page=home] .ap-heading {
        flex: 1 0 100%;
        width: 100%
    }

    body[data-iit-page=home] .ap-heading h3 {
        font-size: calc(23px * var(--iit-heading-scale));
        line-height: 1.2
    }

    body[data-iit-page=home] .ap-heading h3 em {
        display: inline
    }
}

/* Who is this program for?: centred, spacious heading */
body[data-iit-page=home] .aud2-head.aud2-head--center {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0;
    max-width: 820px;
    margin: 0 auto 52px;
    text-align: center
}

body[data-iit-page=home] .aud2-head--center .eyebrow.eyebrow.eyebrow {
    margin: 0 auto;
    letter-spacing: 2px
}

body[data-iit-page=home] .aud2-head--center h2 {
    margin: 18px 0 0;
    color: #003f73;
    font-size: calc(48px * var(--iit-heading-scale));
    font-weight: 800;
    line-height: 1.12;
    letter-spacing: -.5px
}

body[data-iit-page=home] .aud2-subtitle {
    max-width: 640px;
    margin: 16px auto 0;
    color: var(--iit-muted);
    font-size: calc(17px * var(--iit-text-scale));
    line-height: 1.7
}

body[data-iit-page=home] .aud2-head--center .cs-nav {
    margin-top: 26px
}

@media (max-width: 1000px) {
    body[data-iit-page=home] .aud2-head--center h2 {
        font-size: calc(34px * var(--iit-heading-scale))
    }

    body[data-iit-page=home] .aud2-head.aud2-head--center {
        margin-bottom: 40px
    }
}

@media (max-width: 640px) {
    body[data-iit-page=home] .aud2-head--center h2 {
        font-size: calc(29px * var(--iit-heading-scale))
    }

    body[data-iit-page=home] .aud2-subtitle {
        font-size: calc(15.5px * var(--iit-text-scale))
    }
}

/* Who is this program for? cards (v3): blue icon tile + orange number pill, underlined title, "Learn More" link, soft corner shape */
body[data-iit-page=home] .aud2 .aud2-card {
    gap: 18px;
    padding: 28px 28px 26px;
    border: 1px solid #e2ebf4;
    border-radius: 20px;
    background: linear-gradient(160deg, #ffffff 55%, #f4f8fd);
    box-shadow: 0 12px 30px rgba(0, 47, 84, .07)
}

/* the old sliding bottom bar is replaced by the underline under the title */
body[data-iit-page=home] .aud2 .aud2-card:after {
    display: none
}

/* soft corner shape, orange and blue in turn */
body[data-iit-page=home] .aud2 .aud2-card:before {
    content: "";
    position: absolute;
    right: -50px;
    bottom: -60px;
    width: 170px;
    height: 170px;
    border-radius: 50%;
    background: radial-gradient(circle at 30% 30%, rgba(255, 139, 37, .16), rgba(255, 139, 37, .04) 70%);
    pointer-events: none;
    transition: transform .4s ease
}

body[data-iit-page=home] .aud2 .aud2-card:nth-child(even):before {
    background: radial-gradient(circle at 30% 30%, rgba(10, 111, 214, .14), rgba(10, 111, 214, .03) 70%)
}

body[data-iit-page=home] .aud2 .aud2-card:hover:before {
    transform: scale(1.15)
}

body[data-iit-page=home] .aud3-top {
    position: relative;
    display: flex;
    align-items: center
}

body[data-iit-page=home] .aud3-icon {
    position: relative;
    z-index: 1;
    display: grid;
    place-items: center;
    width: 64px;
    height: 64px;
    border-radius: 18px;
    background: linear-gradient(140deg, #0a5bb5, var(--iit-primary) 60%, #062f6b);
    color: #fff;
    font-size: 26px;
    box-shadow: 0 10px 22px rgba(0, 72, 126, .3), 0 0 0 6px rgba(10, 111, 214, .08);
    transition: transform .25s ease
}

body[data-iit-page=home] .aud3-num {
    margin-left: -12px;
    padding: 8px 14px 8px 20px;
    border-radius: 0 999px 999px 0;
    background: linear-gradient(90deg, #ff9b3d, var(--iit-gold));
    color: #fff;
    font: 800 calc(13px * var(--iit-heading-scale))/1 var(--iit-font-heading);
    white-space: nowrap;
    box-shadow: 0 8px 18px rgba(255, 139, 37, .3)
}

body[data-iit-page=home] .aud2 .aud2-card:hover .aud3-icon {
    transform: rotate(-6deg) scale(1.05)
}

body[data-iit-page=home] .aud2 .aud2-body {
    position: relative;
    z-index: 1
}

body[data-iit-page=home] .aud2 .aud2-card h3 {
    margin: 0 0 14px;
    padding-bottom: 12px;
    color: var(--iit-primary);
    font-size: calc(23px * var(--iit-heading-scale));
    font-weight: 800
}

body[data-iit-page=home] .aud2 .aud2-card h3:after {
    content: "";
    display: block;
    width: 46px;
    height: 4px;
    margin-top: 12px;
    border-radius: 4px;
    background: var(--iit-gold);
    transition: width .3s ease
}

body[data-iit-page=home] .aud2 .aud2-card:hover h3:after {
    width: 80px
}

body[data-iit-page=home] .aud2 .aud2-card p {
    margin: 0;
    color: #4a5d70;
    font-size: calc(15.5px * var(--iit-text-scale));
    line-height: 1.65
}

body[data-iit-page=home] .aud3-link {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    margin-top: 20px;
    color: var(--iit-gold);
    font-weight: 600;
    text-decoration: none
}

body[data-iit-page=home] .aud3-link span[aria-hidden] {
    display: grid;
    place-items: center;
    width: 34px;
    height: 34px;
    border-radius: 50%;
    background: linear-gradient(135deg, #ff9b3d, #f06a0f);
    color: #fff;
    font-size: 13px;
    box-shadow: 0 6px 14px rgba(240, 106, 15, .3);
    transition: transform .2s ease
}

body[data-iit-page=home] .aud3-link:hover,
body[data-iit-page=home] .aud3-link:focus-visible {
    color: #d95e08
}

body[data-iit-page=home] .aud3-link:hover span[aria-hidden],
body[data-iit-page=home] .aud3-link:focus-visible span[aria-hidden] {
    transform: translateX(4px)
}

body[data-iit-page=home] .visually-hidden {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap
}

/* list layout: link under the text */
body[data-iit-page=home] .aud2--list .aud3-link {
    grid-column: 1 / -1;
    margin-top: 0
}

@media (max-width: 640px) {
    body[data-iit-page=home] .aud2 .aud2-card {
        padding: 22px 20px
    }

    body[data-iit-page=home] .aud3-icon {
        width: 54px;
        height: 54px;
        font-size: 22px
    }

    body[data-iit-page=home] .aud2 .aud2-card h3 {
        font-size: calc(20px * var(--iit-heading-scale))
    }
}

body[data-iit-page=home] .aud2 .aud2-card h3 {
    padding-bottom: 0
}

body[data-iit-page=home] .aud2 .aud2-card h3:after {
    margin-top: 10px
}

/* Learner stories: several videos in a slider, arrows in the top right corner (same buttons as Our Alumni) */
body[data-iit-page=home] .ss-story-media {
    position: relative;
    width: min(100%, 1080px);
    min-width: 0;
    margin: 0 auto
}

body[data-iit-page=home] .ss-nav {
    position: relative;
    z-index: 2;
    display: flex;
    justify-content: flex-end;
    gap: 14px;
    margin-bottom: 18px
}

body[data-iit-page=home] .ss-nav .al3-arrow {
    width: 52px;
    height: 52px;
    font-size: 20px
}

body[data-iit-page=home] .ss-nav .al3-arrow:not(.al3-arrow--next) {
    border-color: rgba(255, 255, 255, .35);
    background: rgba(255, 255, 255, .08);
    color: #fff
}

body[data-iit-page=home] .ss-nav .al3-arrow--next {
    background: var(--iit-gold);
    color: #fff;
    box-shadow: 0 8px 20px rgba(255, 139, 37, .35)
}

body[data-iit-page=home] .ss-track {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: 74%;
    gap: 24px;
    overflow-x: auto;
    padding: 14px 13% 24px;
    scroll-padding-inline: 13%;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    scrollbar-width: none;
    border-radius: 14px
}

body[data-iit-page=home] .ss-track::-webkit-scrollbar {
    display: none
}

body[data-iit-page=home] .ss-slide {
    min-width: 0;
    scroll-snap-align: center;
    transform: scale(.84);
    opacity: .62;
    transition: transform .45s ease, opacity .45s ease
}

body[data-iit-page=home] .ss-slide.is-active {
    z-index: 1;
    transform: scale(1);
    opacity: 1
}

body[data-iit-page=home] .ss-caption {
    margin: 14px 0 0;
    color: #fff !important;
    font-weight: 600;
    font-size: calc(15px * var(--iit-text-scale)) !important;
    line-height: 1.45
}

body[data-iit-page=home] .ss-dots {
    margin-top: 22px
}

body[data-iit-page=home] .ss-dots button:not(.is-active) {
    background: rgba(255, 255, 255, .3)
}

@media (max-width: 1000px) {
    body[data-iit-page=home] .ss-nav { justify-content: flex-end }
    body[data-iit-page=home] .ss-track {
        grid-auto-columns: 82%;
        padding-inline: 9%;
        scroll-padding-inline: 9%
    }
}

@media (max-width: 640px) {
    body[data-iit-page=home] .ss-track {
        grid-auto-columns: 88%;
        gap: 14px;
        padding-inline: 6%;
        scroll-padding-inline: 6%
    }

    body[data-iit-page=home] .ss-slide { transform: scale(.9) }
}

/* video title over the bottom of the thumbnail (hidden once the video plays) */
body[data-iit-page=home] .ss-slide {
    position: relative
}

body[data-iit-page=home] .ss-caption {
    position: absolute;
    z-index: 2;
    left: 22px;
    right: 110px;
    bottom: 18px;
    margin: 0;
    pointer-events: none;
    text-shadow: 0 2px 8px rgba(0, 0, 0, .6)
}

body[data-iit-page=home] .ss-slide:has(iframe) .ss-caption {
    display: none
}

@media (max-width: 640px) {
    body[data-iit-page=home] .ss-caption {
        left: 14px;
        right: 14px;
        bottom: 10px;
        font-size: calc(13px * var(--iit-text-scale)) !important
    }
}

/* caption at the top of the thumbnail (many thumbnails have burnt-in subtitles at the bottom) */
body[data-iit-page=home] .ss-caption {
    top: 0;
    bottom: auto;
    left: 0;
    right: 0;
    padding: 16px 22px 34px;
    border-radius: 14px 14px 0 0;
    background: linear-gradient(180deg, rgba(0, 20, 40, .75), transparent)
}

/* Enquiry page contact cards: real icons in a soft circle */
body[data-iit-page=contact] .contactcard .icon {
    width: 46px;
    height: 46px;
    flex: 0 0 46px;
    background: linear-gradient(135deg, var(--iit-primary), color-mix(in srgb, var(--iit-primary) 70%, #3fa3ff));
    color: #fff;
    font-size: 18px;
    box-shadow: 0 8px 18px color-mix(in srgb, var(--iit-primary) 25%, transparent)
}

body[data-iit-page=contact] .contactcard {
    align-items: center;
    padding: 16px 18px
}

body[data-iit-page=contact] .contactcard span.icon {
    display: grid;
    place-items: center;
    margin: 0;
    color: #fff;
    font-size: 18px
}

/* Admission process timeline (home-sections/admission_process): centre line, numbered rings, cards left / right */
html {
    scroll-padding-top: 90px
}

body[data-iit-page=home] .apx {
    position: relative;
    overflow: hidden;
    padding: 84px 0 90px;
    background: var(--apx-bg, #f5f9fd)
}

body[data-iit-page=home] .apx:before,
body[data-iit-page=home] .apx:after {
    content: "";
    position: absolute;
    border-radius: 50%;
    pointer-events: none
}

body[data-iit-page=home] .apx:before {
    top: -120px;
    left: -120px;
    width: 300px;
    height: 300px;
    background: radial-gradient(circle, rgba(10, 111, 214, .08), transparent 70%)
}

body[data-iit-page=home] .apx:after {
    right: -160px;
    bottom: -160px;
    width: 380px;
    height: 380px;
    border: 2px solid rgba(10, 111, 214, .08)
}

body[data-iit-page=home] .apx-dots {
    position: absolute;
    width: 92px;
    height: 56px;
    background-image: radial-gradient(rgba(10, 111, 214, .22) 2.5px, transparent 3px);
    background-size: 20px 20px;
    pointer-events: none
}

body[data-iit-page=home] .apx-dots--top {
    top: 40px;
    right: 4%
}

body[data-iit-page=home] .apx-dots--bottom {
    bottom: 50px;
    left: 4%
}

body[data-iit-page=home] .apx-head {
    position: relative;
    max-width: 760px;
    margin: 0 auto 54px;
    text-align: center
}

body[data-iit-page=home] .apx-eyebrow {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 22px;
    color: var(--iit-gold);
    font: 700 calc(14px * var(--iit-text-scale)) var(--iit-font-body);
    letter-spacing: 3px;
    text-transform: uppercase
}

body[data-iit-page=home] .apx-eyebrow:before,
body[data-iit-page=home] .apx-eyebrow:after {
    content: "";
    width: 56px;
    height: 2px;
    background: var(--iit-gold)
}

body[data-iit-page=home] .apx-head h2 {
    margin: 14px 0 0;
    color: #062f6b;
    font-size: calc(50px * var(--iit-heading-scale));
    font-weight: 800;
    line-height: 1.1;
    letter-spacing: -.6px
}

body[data-iit-page=home] .apx-head h2 em {
    font-style: normal;
    color: #f2711c
}

body[data-iit-page=home] .apx-head p {
    margin: 14px 0 0;
    color: var(--iit-muted);
    font-size: calc(17px * var(--iit-text-scale))
}

/* timeline */
body[data-iit-page=home] .apx-line {
    position: relative;
    max-width: 1100px;
    margin: 0 auto;
    padding: 0;
    list-style: none
}

body[data-iit-page=home] .apx-line:before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 50%;
    width: 5px;
    margin-left: -2.5px;
    border-radius: 5px;
    background: linear-gradient(#1aa6b7, #0b3d78 22%, #f2711c 42%, #e8445a 62%, #f2b417 80%, #0b3d78)
}

body[data-iit-page=home] .apx-step {
    --tone: #1aa6b7;
    position: relative;
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: center;
    min-height: 150px
}

body[data-iit-page=home] .apx-step+.apx-step {
    margin-top: -36px
}

body[data-iit-page=home] .apx-tone-1 {
    --tone: #0b3d78
}

body[data-iit-page=home] .apx-tone-2 {
    --tone: #f2711c
}

body[data-iit-page=home] .apx-tone-3 {
    --tone: #e8445a
}

body[data-iit-page=home] .apx-tone-4 {
    --tone: #f2b417
}

body[data-iit-page=home] .apx-tone-5 {
    --tone: #0b3d78
}

body[data-iit-page=home] .apx-card {
    position: relative;
    display: flex;
    gap: 22px;
    align-items: flex-start;
    padding: 26px 30px 24px;
    border-radius: 22px;
    background: #fff;
    box-shadow: 0 16px 40px rgba(0, 47, 84, .09);
    transition: transform .25s ease, box-shadow .25s ease
}

body[data-iit-page=home] .apx-step--left .apx-card {
    grid-column: 1;
    margin-right: 72px;
    padding-right: 90px
}

body[data-iit-page=home] .apx-step--right .apx-card {
    grid-column: 2;
    margin-left: 72px;
    padding-left: 90px
}

body[data-iit-page=home] .apx-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 22px 48px rgba(0, 47, 84, .14)
}

body[data-iit-page=home] .apx-icon {
    flex: none;
    display: grid;
    place-items: center;
    width: 74px;
    height: 74px;
    border-radius: 50%;
    background: var(--tone);
    color: #fff;
    font-size: 28px;
    box-shadow: 0 10px 22px color-mix(in srgb, var(--tone) 35%, transparent)
}

body[data-iit-page=home] .apx-card h3 {
    margin: 4px 0 10px;
    color: #062f6b;
    font: 800 calc(18px * var(--iit-heading-scale))/1.3 var(--iit-font-heading);
    letter-spacing: .2px;
    text-transform: uppercase
}

body[data-iit-page=home] .apx-card h3 em {
    font-style: normal;
    color: var(--tone)
}

body[data-iit-page=home] .apx-card p {
    margin: 0;
    color: #4a5d70;
    font-size: calc(15px * var(--iit-text-scale));
    line-height: 1.6
}

body[data-iit-page=home] .apx-bar {
    display: block;
    width: 38px;
    height: 4px;
    margin-top: 16px;
    border-radius: 4px;
    background: var(--tone)
}

/* numbered ring beside the line, overlapping the card */
body[data-iit-page=home] .apx-num {
    position: absolute;
    z-index: 2;
    top: 50%;
    display: grid;
    place-items: center;
    width: 132px;
    height: 132px;
    margin-top: -66px;
    border-radius: 50%;
    background: #fff;
    border: 7px solid var(--tone);
    box-shadow: 0 14px 30px color-mix(in srgb, var(--tone) 30%, transparent)
}

body[data-iit-page=home] .apx-num span {
    display: grid;
    place-items: center;
    width: 98px;
    height: 98px;
    border-radius: 50%;
    background: radial-gradient(circle at 35% 30%, color-mix(in srgb, var(--tone) 75%, #fff), var(--tone));
    color: #fff;
    font: 800 calc(40px * var(--iit-heading-scale))/1 var(--iit-font-heading)
}

body[data-iit-page=home] .apx-step--left .apx-num {
    right: calc(50% + 18px)
}

body[data-iit-page=home] .apx-step--right .apx-num {
    left: calc(50% + 18px)
}

/* small dot on the line, joined to the ring */
body[data-iit-page=home] .apx-node {
    position: absolute;
    z-index: 3;
    top: 50%;
    left: 50%;
    width: 22px;
    height: 22px;
    margin: -11px 0 0 -11px;
    border: 4px solid var(--tone);
    border-radius: 50%;
    background: #fff
}

body[data-iit-page=home] .apx-node:after {
    content: "";
    position: absolute;
    top: 50%;
    width: 20px;
    height: 4px;
    margin-top: -2px;
    background: var(--tone)
}

body[data-iit-page=home] .apx-step--left .apx-node:after {
    right: 100%
}

body[data-iit-page=home] .apx-step--right .apx-node:after {
    left: 100%
}

/* tablets and phones: one column, line on the left */
@media (max-width: 900px) {
    body[data-iit-page=home] .apx-head h2 {
        font-size: calc(36px * var(--iit-heading-scale))
    }

    body[data-iit-page=home] .apx-line:before {
        left: 34px
    }

    body[data-iit-page=home] .apx-step {
        grid-template-columns: 1fr;
        min-height: 0
    }

    body[data-iit-page=home] .apx-step+.apx-step {
        margin-top: 22px
    }

    body[data-iit-page=home] .apx-step--left .apx-card,
    body[data-iit-page=home] .apx-step--right .apx-card {
        grid-column: 1;
        margin: 0 0 0 84px;
        padding: 22px 22px 20px
    }

    body[data-iit-page=home] .apx-num,
    body[data-iit-page=home] .apx-step--left .apx-num,
    body[data-iit-page=home] .apx-step--right .apx-num {
        left: 0;
        right: auto;
        width: 70px;
        height: 70px;
        margin-top: -35px;
        border-width: 4px
    }

    body[data-iit-page=home] .apx-num span {
        width: 54px;
        height: 54px;
        font-size: calc(22px * var(--iit-heading-scale))
    }

    body[data-iit-page=home] .apx-node {
        display: none
    }
}

@media (max-width: 640px) {
    body[data-iit-page=home] .apx {
        padding: 60px 0
    }

    body[data-iit-page=home] .apx-head h2 {
        font-size: calc(30px * var(--iit-heading-scale))
    }

    body[data-iit-page=home] .apx-eyebrow:before,
    body[data-iit-page=home] .apx-eyebrow:after {
        width: 28px
    }

    body[data-iit-page=home] .apx-card {
        flex-direction: column;
        gap: 14px
    }

    body[data-iit-page=home] .apx-icon {
        width: 54px;
        height: 54px;
        font-size: 21px
    }
}

@media (max-width: 640px) {
    body[data-iit-page=home] .apx-dots {
        display: none
    }
}

/* Admission process: compact version, eyebrow like the other sections */
body[data-iit-page=home] .apx {
    padding: 64px 0 66px
}

body[data-iit-page=home] .apx-head {
    margin-bottom: 38px
}

body[data-iit-page=home] .apx-head .eyebrow.eyebrow.eyebrow {
    margin: 0 auto
}

body[data-iit-page=home] .apx-head h2 {
    margin-top: 12px;
    font-size: calc(38px * var(--iit-heading-scale))
}

body[data-iit-page=home] .apx-head p {
    margin-top: 10px;
    font-size: calc(15.5px * var(--iit-text-scale))
}

body[data-iit-page=home] .apx-line {
    max-width: 980px
}

body[data-iit-page=home] .apx-step {
    min-height: 0
}

body[data-iit-page=home] .apx-step+.apx-step {
    margin-top: -18px
}

body[data-iit-page=home] .apx-card {
    gap: 16px;
    padding: 18px 22px 16px;
    border-radius: 16px
}

body[data-iit-page=home] .apx-step--left .apx-card {
    margin-right: 52px;
    padding-right: 60px
}

body[data-iit-page=home] .apx-step--right .apx-card {
    margin-left: 52px;
    padding-left: 60px
}

body[data-iit-page=home] .apx-icon {
    width: 50px;
    height: 50px;
    font-size: 20px
}

body[data-iit-page=home] .apx-card h3 {
    margin: 2px 0 6px;
    font-size: calc(15px * var(--iit-heading-scale))
}

body[data-iit-page=home] .apx-card p {
    font-size: calc(13.5px * var(--iit-text-scale));
    line-height: 1.55
}

body[data-iit-page=home] .apx-bar {
    width: 30px;
    height: 3px;
    margin-top: 10px
}

body[data-iit-page=home] .apx-num {
    width: 86px;
    height: 86px;
    margin-top: -43px;
    border-width: 5px
}

body[data-iit-page=home] .apx-num span {
    width: 64px;
    height: 64px;
    font-size: calc(26px * var(--iit-heading-scale))
}

body[data-iit-page=home] .apx-step--left .apx-num {
    right: calc(50% + 16px)
}

body[data-iit-page=home] .apx-step--right .apx-num {
    left: calc(50% + 16px)
}

body[data-iit-page=home] .apx-node {
    width: 18px;
    height: 18px;
    margin: -9px 0 0 -9px;
    border-width: 3px
}

body[data-iit-page=home] .apx-node:after {
    width: 18px;
    height: 3px
}

body[data-iit-page=home] .apx-line:before {
    width: 4px;
    margin-left: -2px
}

@media (max-width: 900px) {
    body[data-iit-page=home] .apx-head h2 {
        font-size: calc(30px * var(--iit-heading-scale))
    }

    body[data-iit-page=home] .apx-step+.apx-step {
        margin-top: 16px
    }

    body[data-iit-page=home] .apx-line:before {
        left: 28px
    }

    body[data-iit-page=home] .apx-step--left .apx-card,
    body[data-iit-page=home] .apx-step--right .apx-card {
        margin-left: 70px;
        padding: 16px 18px 14px
    }

    body[data-iit-page=home] .apx-num,
    body[data-iit-page=home] .apx-step--left .apx-num,
    body[data-iit-page=home] .apx-step--right .apx-num {
        width: 58px;
        height: 58px;
        margin-top: -29px;
        border-width: 4px
    }

    body[data-iit-page=home] .apx-num span {
        width: 44px;
        height: 44px;
        font-size: calc(18px * var(--iit-heading-scale))
    }
}

@media (max-width: 640px) {
    body[data-iit-page=home] .apx-head h2 {
        font-size: calc(27px * var(--iit-heading-scale))
    }

    body[data-iit-page=home] .apx-icon {
        width: 44px;
        height: 44px;
        font-size: 18px
    }
}

/* Admission process: left-side cards keep their icon stuck to the card's left edge (more room for the text) */
@media (min-width: 901px) {
    body[data-iit-page=home] .apx-step--left .apx-card {
        padding-left: 44px
    }

    body[data-iit-page=home] .apx-step--left .apx-icon {
        position: absolute;
        top: 50%;
        left: -25px;
        margin-top: -25px;
        border: 4px solid #fff
    }
}

/* eyebrow in the left corner of the section */
body[data-iit-page=home] .apx-head .eyebrow.eyebrow.eyebrow {
    position: absolute;
    top: -26px;
    left: 0;
    margin: 0
}

body[data-iit-page=home] .apx .wrap {
    position: relative
}

body[data-iit-page=home] .apx-head {
    position: static;
    padding-top: 22px
}

@media (max-width: 900px) {
    body[data-iit-page=home] .apx-head .eyebrow.eyebrow.eyebrow {
        position: static;
        margin: 0 0 4px
    }

    body[data-iit-page=home] .apx-head {
        padding-top: 0;
        text-align: left
    }
}

/* Admission process: wider cards (timeline uses the full content width) */
body[data-iit-page=home] .apx-line {
    max-width: none
}

@media (min-width: 901px) {
    body[data-iit-page=home] .apx-step--left .apx-card {
        margin-right: 48px
    }

    body[data-iit-page=home] .apx-step--right .apx-card {
        margin-left: 48px
    }
}

/* Admission process in the brand palette only: Congress Blue #00487E, Sunshade #FF8B25, Foam #EBFAFD */
body[data-iit-page=home] .apx {
    background: var(--apx-bg, #ebfafd)
}

body[data-iit-page=home] .apx-head h2,
body[data-iit-page=home] .apx-card h3 {
    color: #00487e
}

body[data-iit-page=home] .apx-head h2 em {
    color: #ff8b25
}

/* steps alternate blue and orange */
body[data-iit-page=home] .apx-step,
body[data-iit-page=home] .apx-tone-2,
body[data-iit-page=home] .apx-tone-4 {
    --tone: #00487e
}

body[data-iit-page=home] .apx-tone-1,
body[data-iit-page=home] .apx-tone-3,
body[data-iit-page=home] .apx-tone-5 {
    --tone: #ff8b25
}

body[data-iit-page=home] .apx-line:before {
    background: linear-gradient(#00487e, #ff8b25, #00487e, #ff8b25, #00487e, #ff8b25)
}

body[data-iit-page=home] .apx-card {
    border: 1px solid color-mix(in srgb, #00487e 10%, transparent)
}

body[data-iit-page=home] .apx-num span {
    background: radial-gradient(circle at 35% 30%, color-mix(in srgb, var(--tone) 70%, #fff), var(--tone))
}

body[data-iit-page=home] .apx-dots {
    background-image: radial-gradient(color-mix(in srgb, #00487e 25%, transparent) 2.5px, transparent 3px)
}

/* highlight words in step titles are always Sunshade orange */
body[data-iit-page=home] .apx-card h3 em {
    color: #ff8b25
}

/* Enquiry form: country code + mobile number, error messages */
body[data-iit-page=contact] .phone-group {
    display: flex;
    gap: 8px
}

body[data-iit-page=contact] .phone-group select {
    flex: 0 0 132px;
    width: 132px;
    min-width: 0
}

body[data-iit-page=contact] .phone-group input {
    flex: 1;
    min-width: 0
}

body[data-iit-page=contact] .field-error {
    display: block;
    min-height: 0;
    margin-top: 5px;
    color: #c62828;
    font-size: calc(12px * var(--iit-text-scale));
    line-height: 1.35
}

body[data-iit-page=contact] .field-error:empty {
    display: none
}

body[data-iit-page=contact] .formbox [aria-invalid] {
    border-color: #e57373 !important;
    box-shadow: 0 0 0 3px rgba(229, 115, 115, .15)
}

/* Enquiry form: country picker with flags */
body[data-iit-page=contact] .phone-group {
    position: relative
}

body[data-iit-page=contact] .phone-group .cc-native {
    position: absolute;
    width: 1px;
    height: 1px;
    opacity: 0;
    pointer-events: none
}

body[data-iit-page=contact] .cc-picker {
    position: relative;
    flex: none
}

body[data-iit-page=contact] .cc-btn {
    display: flex;
    align-items: center;
    gap: 8px;
    height: 100%;
    min-height: 44px;
    padding: 0 12px;
    border: 1px solid #d4dfdb;
    border-radius: 6px;
    background: #fff;
    color: var(--iit-ink);
    font: 600 calc(14px * var(--iit-text-scale)) var(--iit-font-body);
    cursor: pointer
}

body[data-iit-page=contact] .cc-btn img,
body[data-iit-page=contact] .cc-list img {
    width: 24px;
    height: 18px;
    border-radius: 2px;
    box-shadow: 0 0 0 1px rgba(0, 0, 0, .08);
    object-fit: cover
}

body[data-iit-page=contact] .cc-btn i {
    font-size: 10px;
    color: var(--iit-muted)
}

body[data-iit-page=contact] .cc-btn:focus-visible {
    outline: 3px solid color-mix(in srgb, var(--iit-primary) 35%, transparent);
    outline-offset: 2px
}

body[data-iit-page=contact] .cc-list {
    position: absolute;
    z-index: 30;
    top: calc(100% + 6px);
    left: 0;
    width: 280px;
    max-height: 280px;
    margin: 0;
    padding: 6px;
    overflow-y: auto;
    list-style: none;
    border: 1px solid #dbe5ee;
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 16px 36px rgba(0, 36, 63, .18)
}

body[data-iit-page=contact] .cc-list li {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px 10px;
    border-radius: 6px;
    cursor: pointer;
    font-size: calc(14px * var(--iit-text-scale))
}

body[data-iit-page=contact] .cc-list li:hover,
body[data-iit-page=contact] .cc-list li:focus {
    outline: 0;
    background: var(--iit-cream)
}

body[data-iit-page=contact] .cc-list li[aria-selected="true"] {
    background: color-mix(in srgb, var(--iit-primary) 10%, #fff);
    font-weight: 600
}

body[data-iit-page=contact] .cc-name {
    flex: 1
}

body[data-iit-page=contact] .cc-dial {
    color: var(--iit-muted)
}

/* Admission process: left steps Sunshade (orange-yellow), right steps Congress Blue */
body[data-iit-page=home] .apx-step.apx-step--left {
    --tone: #ff8b25
}

body[data-iit-page=home] .apx-step.apx-step--right {
    --tone: #00487e
}

body[data-iit-page=home] .apx-line:before {
    background: linear-gradient(#ff8b25, #00487e, #ff8b25, #00487e, #ff8b25, #00487e)
}

/* Admission process: every step pairs a Sunshade icon with a Congress Blue number */
body[data-iit-page=home] .apx-step.apx-step--left,
body[data-iit-page=home] .apx-step.apx-step--right {
    --tone: #00487e
}

body[data-iit-page=home] .apx-step .apx-icon {
    background: #ff8b25;
    box-shadow: 0 10px 22px rgba(255, 139, 37, .35)
}

body[data-iit-page=home] .apx-step .apx-bar {
    background: #ff8b25
}

body[data-iit-page=home] .apx-line:before {
    background: linear-gradient(#00487e, color-mix(in srgb, #00487e 75%, #ff8b25), #00487e)
}

/* Enquiry page "Your support team" cards: orange icon + blue number, lift on hover */
body[data-iit-page=contact] .assistcard.assist2 {
    position: relative;
    overflow: hidden;
    padding: 28px 26px 26px;
    border: 1px solid color-mix(in srgb, #00487e 10%, transparent);
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 12px 30px rgba(0, 47, 84, .07);
    transition: transform .25s ease, box-shadow .25s ease
}

/* blue to orange line along the top */
body[data-iit-page=contact] .assist2:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(90deg, #00487e, #ff8b25);
    transform: scaleX(.25);
    transform-origin: left;
    transition: transform .35s ease
}

body[data-iit-page=contact] .assist2:hover {
    transform: translateY(-6px);
    box-shadow: 0 22px 44px rgba(0, 47, 84, .13)
}

body[data-iit-page=contact] .assist2:hover:before {
    transform: none
}

body[data-iit-page=contact] .assist2-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 20px
}

body[data-iit-page=contact] .assist2-icon {
    display: grid;
    place-items: center;
    width: 56px;
    height: 56px;
    border-radius: 16px;
    background: #ff8b25;
    color: #fff;
    font-size: 22px;
    box-shadow: 0 10px 22px rgba(255, 139, 37, .32);
    transition: transform .25s ease
}

body[data-iit-page=contact] .assist2:hover .assist2-icon {
    transform: rotate(-6deg) scale(1.05)
}

body[data-iit-page=contact] .assistcard.assist2 .assist2-num {
    color: color-mix(in srgb, #00487e 18%, transparent);
    font: 800 calc(40px * var(--iit-heading-scale))/1 var(--iit-font-heading)
}

body[data-iit-page=contact] .assistcard.assist2 h3 {
    margin: 0 0 12px;
    color: #00487e;
    font-size: calc(19px * var(--iit-heading-scale))
}

body[data-iit-page=contact] .assistcard.assist2 h3:after {
    content: "";
    display: block;
    width: 36px;
    height: 3px;
    margin-top: 10px;
    border-radius: 3px;
    background: #ff8b25
}

body[data-iit-page=contact] .assistcard.assist2 p {
    margin: 0;
    color: #4a5d70;
    line-height: 1.65
}

/* the old number-badge rule (.assistcard i) must not touch the new icon */
body[data-iit-page=contact] .assistcard.assist2 .assist2-icon i {
    display: inline;
    width: auto;
    height: auto;
    border-radius: 0;
    background: none;
    color: #fff;
    font-size: 22px;
    font-weight: 900
}

/* Our Programs, Who is this program for?, Testimonials: heading on one line on computers */
@media (min-width: 1001px) {

    body[data-iit-page=home] #programs .section-head,
    body[data-iit-page=home] #audience .section-head,
    body[data-iit-page=home] #stories .section-head {
        max-width: none
    }

    body[data-iit-page=home] #programs .section-head h2,
    body[data-iit-page=home] #audience .section-head h2,
    body[data-iit-page=home] #stories .section-head h2 {
        white-space: nowrap
    }

    /* the note beside the audience heading moves below it when there is no room */
    body[data-iit-page=home] #audience .aud2-head {
        flex-wrap: wrap;
        row-gap: 14px
    }
}

/* Phones: submenus stay closed until their main link is tapped */
@media (max-width: 1000px) {
    body[data-iit-page] .nav .nav-dd .nav-dd-menu {
        display: none
    }
}

/* Homepage News & Press: clean editorial cards with IIT Patna accent details */
body[data-iit-page=home] .press-head {
    align-items: center;
    margin-bottom: 30px
}

body[data-iit-page=home] .press-head .section-head h2 {
    letter-spacing: -.025em
}

body[data-iit-page=home] .press-note {
    max-width: 390px;
    line-height: 1.7
}

body[data-iit-page=home] .press-grid {
    grid-template-columns: minmax(0, 1.08fr) minmax(0, .92fr);
    gap: 24px;
    align-items: stretch
}

body[data-iit-page=home] .press-feature {
    display: grid;
    grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr);
    align-content: stretch;
    background: #fff;
    color: #172d3a;
    border: 1px solid rgba(0, 47, 84, .1);
    border-radius: 22px;
    box-shadow: 0 14px 40px rgba(0, 36, 63, .09)
}

body[data-iit-page=home] .press-feature--plain {
    display: flex
}

body[data-iit-page=home] .press-feature:hover {
    transform: translateY(-5px);
    box-shadow: 0 20px 48px rgba(0, 36, 63, .15)
}

body[data-iit-page=home] .press-feature-media {
    position: relative;
    min-height: 100%;
    aspect-ratio: auto;
    background-color: #eaf3f6;
    background-position: center;
    background-size: cover
}

body[data-iit-page=home] .press-feature-media:after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(0, 36, 63, .12), transparent 65%)
}

body[data-iit-page=home] .press-feature-body {
    justify-content: center;
    padding: 26px 28px 28px
}

body[data-iit-page=home] .press-meta {
    gap: 9px;
    font-size: calc(11px * var(--iit-text-scale))
}

body[data-iit-page=home] .press-source {
    display: inline-flex;
    align-items: center;
    min-height: 25px;
    padding: 4px 10px;
    border-radius: 999px;
    background: #fff3e8;
    color: #b75400;
    font-size: calc(10px * var(--iit-text-scale));
    letter-spacing: .07em
}

body[data-iit-page=home] .press-meta time:before {
    margin-right: 9px
}

body[data-iit-page=home] .press-feature .press-meta {
    color: #647789
}

body[data-iit-page=home] .press-feature .press-source {
    color: #b75400
}

body[data-iit-page=home] .press-feature h3 {
    margin: 14px 0 10px;
    color: #12334a;
    font-size: calc(23px * var(--iit-heading-scale));
    line-height: 1.35;
    letter-spacing: -.018em
}

body[data-iit-page=home] .press-feature p {
    margin-bottom: 20px;
    color: #526779;
    line-height: 1.7
}

body[data-iit-page=home] .press-feature .press-link {
    color: #00487e
}

body[data-iit-page=home] .press-list {
    gap: 12px
}

body[data-iit-page=home] .press-scroller .press-item {
    grid-template-columns: 98px minmax(0, 1fr);
    gap: 16px;
    padding: 15px;
    border: 1px solid rgba(0, 47, 84, .1);
    border-radius: 18px;
    background: rgba(255, 255, 255, .96);
    box-shadow: 0 8px 24px rgba(0, 36, 63, .055)
}

body[data-iit-page=home] .press-scroller .press-item:hover {
    transform: translateX(3px);
    border-color: rgba(255, 139, 37, .48);
    box-shadow: 0 12px 30px rgba(0, 36, 63, .1)
}

body[data-iit-page=home] .press-thumb {
    width: 98px;
    height: 98px;
    border-radius: 14px;
    background: linear-gradient(145deg, #eaf3f6, #d8eaf0)
}

body[data-iit-page=home] .press-thumb span {
    font-weight: 700;
    color: #00487e
}

body[data-iit-page=home] .press-item h3 {
    margin: 9px 0 6px;
    color: #12334a;
    font-size: calc(16px * var(--iit-heading-scale));
    line-height: 1.38
}

body[data-iit-page=home] .press-item p {
    color: #5b6e7f;
    line-height: 1.55
}

body[data-iit-page=home] .press-item .press-link {
    color: #00487e
}

body[data-iit-page=home] .press-arrow {
    border-color: rgba(0, 47, 84, .16);
    color: #00487e;
    box-shadow: 0 6px 18px rgba(0, 36, 63, .1)
}

body[data-iit-page=home] .press-arrow:hover:not(:disabled) {
    background: #00487e;
    border-color: #00487e;
    color: #fff
}

body[data-iit-page=home] .press-feature:focus-within,
body[data-iit-page=home] .press-item:focus-within {
    outline: 3px solid rgba(255, 139, 37, .65);
    outline-offset: 3px
}

@media (max-width: 800px) {
    body[data-iit-page=home] .press-grid {
        grid-template-columns: minmax(0, 1fr);
        gap: 18px
    }

    body[data-iit-page=home] .press-feature {
        grid-template-columns: minmax(0, 1fr)
    }

    body[data-iit-page=home] .press-feature-media {
        aspect-ratio: 16 / 9
    }

    body[data-iit-page=home] .press-scroller {
        height: 410px
    }
}

@media (max-width: 460px) {
    body[data-iit-page=home] .press-head {
        margin-bottom: 22px
    }

    body[data-iit-page=home] .press-scroller .press-item {
        grid-template-columns: 68px minmax(0, 1fr);
        gap: 12px;
        padding: 13px
    }

    body[data-iit-page=home] .press-feature-body {
        padding: 22px
    }

    body[data-iit-page=home] .press-thumb {
        width: 68px;
        height: 68px;
        border-radius: 11px
    }

    body[data-iit-page=home] .press-item h3 {
        font-size: calc(15px * var(--iit-heading-scale))
    }

    body[data-iit-page] .nav .nav-dd.is-open .nav-dd-menu {
        display: flex
    }

    body[data-iit-page] .nav .nav-dd-toggle i {
        transition: transform .2s
    }

    body[data-iit-page] .nav .nav-dd.is-open .nav-dd-toggle i {
        transform: rotate(180deg)
    }
}

body[data-iit-page=home] .gl-slide-link {
    position: absolute;
    inset: 0;
    z-index: 2;
    color: inherit
}

body[data-iit-page=home] .gl-slide-link:focus-visible {
    outline: 3px solid var(--gold);
    outline-offset: -4px;
    border-radius: inherit
}

/* Admission process, right-side steps read yellow then blue too: Sunshade number ring, Congress Blue icon */
body[data-iit-page=home] .apx-step.apx-step--right {
    --tone: #ff8b25
}

body[data-iit-page=home] .apx-step.apx-step--right .apx-icon {
    background: #00487e;
    box-shadow: 0 10px 22px rgba(0, 72, 126, .3)
}

body[data-iit-page=home] .apx-step.apx-step--right .apx-bar {
    background: #00487e
}

/* Country picker: panel with a search box, divider after the preferred countries */
body[data-iit-page=contact] .cc-panel {
    position: absolute;
    z-index: 30;
    top: calc(100% + 6px);
    left: 0;
    width: 300px;
    padding: 8px;
    border: 1px solid #dbe5ee;
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 16px 36px rgba(0, 36, 63, .18)
}

body[data-iit-page=contact] .cc-panel .cc-list {
    position: static;
    width: auto;
    max-height: 260px;
    padding: 4px 0 0;
    border: 0;
    box-shadow: none
}

body[data-iit-page=contact] .cc-search {
    width: 100%;
    height: 40px;
    padding: 0 12px;
    border: 1px solid #d4dfdb;
    border-radius: 6px;
    font: inherit;
    font-size: calc(14px * var(--iit-text-scale))
}

body[data-iit-page=contact] .cc-search:focus {
    outline: 0;
    border-color: var(--iit-primary);
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--iit-primary) 15%, transparent)
}

body[data-iit-page=contact] .cc-list .cc-divider {
    height: 1px;
    margin: 4px 6px;
    padding: 0;
    background: #e3eaf0;
    cursor: default
}

body[data-iit-page=contact] .cc-list li[hidden] {
    display: none
}

body[data-iit-page=contact] .cc-empty {
    margin: 10px 6px 4px;
    color: var(--iit-muted);
    font-size: calc(13px * var(--iit-text-scale))
}

@media (max-width: 480px) {
    body[data-iit-page=contact] .cc-panel {
        width: min(300px, calc(100vw - 48px))
    }
}

/* Admission process on tablets / phones: every number sits on the left line, one below the other */
@media (max-width: 900px) {

    body[data-iit-page=home] .apx-step.apx-step--left .apx-num,
    body[data-iit-page=home] .apx-step.apx-step--right .apx-num {
        left: 0;
        right: auto;
        width: 58px;
        height: 58px;
        margin-top: -29px
    }

    body[data-iit-page=home] .apx-step.apx-step--left .apx-card,
    body[data-iit-page=home] .apx-step.apx-step--right .apx-card {
        grid-column: 1;
        margin: 0 0 0 70px;
        padding: 16px 18px 14px
    }

    body[data-iit-page=home] .apx-step .apx-icon {
        position: static;
        margin: 0;
        border: 0
    }
}

/* Our Alumni: company logo chip (shown instead of the company name when a logo is uploaded) */
body[data-iit-page=home] .al3-co.al3-co--logo {
    display: flex;
    flex: 0 0 50px;
    width: 160px;
    height: 50px;
    box-sizing: border-box;
    margin: 0 auto;
    padding: 8px 12px;
    border-radius: 999px;
    background: #fff;
    border: 1px solid #e3ebf2;
    box-shadow: 0 4px 12px rgba(0, 47, 84, .06)
}

body[data-iit-page=home] .al3-co--logo img {
    display: block;
    flex: 0 0 134px;
    width: 134px;
    height: 32px;
    max-width: 100%;
    border-radius: 0;
    object-fit: contain
}

/* Shared IIT Patna campus image for informational-page banners. */
body[data-iit-page=about] .hero,
body[data-iit-page=contact] .hero,
body[data-iit-page=advantage] .hero,
body[data-iit-page=programs] .hero,
body[data-iit-page=home] .alumni-page-hero,
body[data-iit-page=home] .pnews-hero,
body[data-iit-page=home] .cv-hero,
body[data-iit-page=home] .cv-page .cv-hero,
body[data-iit-page=home] .lg-hero {
    background-image:
    linear-gradient(90deg, rgba(0, 35, 62, .96) 0%, rgba(0, 35, 62, .84) 42%, rgba(0, 35, 62, .42) 100%),
        url("/assets/landing/img/campus.jpg");
    background-color: var(--iit-deep);
    background-position: center, right center;
    background-repeat: no-repeat;
    background-size: cover, auto 100%
}

body[data-iit-page=home] .alumni-page-hero .wrap {
    display: block;
    min-height: 0;
    padding: 86px 0 92px
}

body[data-iit-page=home] .alumni-page-hero {
    min-height: 0
}

body[data-iit-page=home] .alumni-page-hero h1 {
    margin: 14px 0;
    font-size: calc(52px * var(--iit-heading-scale))
}

body[data-iit-page=home] .alumni-page-hero p {
    max-width: 720px;
    margin: 0;
    color: #d4e2ef;
    line-height: 1.7
}

body[data-iit-page=home] .al3--grid .al3-row {
    grid-template-columns: repeat(4, minmax(0, 1fr))
}

@media (max-width: 1100px) {
    body[data-iit-page=home] .al3--grid .al3-row {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }
}

@media (max-width: 640px) {
    body[data-iit-page=home] .alumni-page-hero .wrap {
        padding: 65px 0
    }

    body[data-iit-page=home] .alumni-page-hero h1 {
        font-size: calc(38px * var(--iit-heading-scale))
    }

    body[data-iit-page=home] .al3--grid .al3-row {
        grid-template-columns: 1fr
    }
}

/* Alumni cards: centered portraits and soft color accents inspired by the reference layout. */
body[data-iit-page=home] .al3:not(.al3--list) .al3-row {
    gap: 18px
}

body[data-iit-page=home] .al3--slider .al3-row {
    grid-auto-columns: calc((100% - 54px) / 4)
}

body[data-iit-page=home] .al3:not(.al3--list) .al3-card {
    display: flex;
    flex-direction: column;
    align-items: center;
    min-height: 310px;
    padding: 18px 16px 20px;
    text-align: center;
    isolation: isolate
}

body[data-iit-page=home] .al3:not(.al3--list) .al3-card:before {
    position: absolute;
    z-index: -1;
    top: 23px;
    left: 50%;
    width: 160px;
    height: 100px;
    border-radius: 45% 55% 50% 42%;
    background: color-mix(in srgb, #cfeaf8 70%, var(--iit-primary));
    content: "";
    opacity: .62;
    transform: translateX(-50%) rotate(-14deg)
}

body[data-iit-page=home] .al3:not(.al3--list) .al3-card:after {
    position: absolute;
    z-index: -1;
    top: 70px;
    right: 16px;
    width: 38px;
    height: 56px;
    background-image: radial-gradient(circle, color-mix(in srgb, var(--iit-primary) 42%, #cfeaf8) 1.3px, transparent 1.5px);
    background-size: 9px 9px;
    content: "";
    opacity: .72
}

body[data-iit-page=home] .al3:not(.al3--list) .al3-card:nth-child(even):before {
    background: color-mix(in srgb, #cfeaf8 60%, var(--iit-gold));
    transform: translateX(-50%) rotate(14deg)
}

body[data-iit-page=home] .al3:not(.al3--list) .al3-card:nth-child(2):after {
    top: 18px;
    right: auto;
    left: 18px
}

body[data-iit-page=home] .al3:not(.al3--list) .al3-card:nth-child(4):after {
    top: 18px;
    right: 18px
}

body[data-iit-page=home] .al3:not(.al3--list) .al3-photo {
    z-index: 1;
    width: 132px;
    height: 132px;
    flex: 0 0 132px;
    margin: 0 auto 12px;
    padding: 4px;
    background: conic-gradient(var(--iit-primary) 0 30%, var(--iit-gold) 30% 72%, var(--iit-primary) 72%)
}

body[data-iit-page=home] .al3:not(.al3--list) .al3-body {
    position: relative;
    z-index: 1;
    width: 100%;
    align-items: center;
    text-align: center
}

body[data-iit-page=home] .al3:not(.al3--list) .al3-body h3 {
    box-sizing: border-box;
    max-width: 100%;
    margin-bottom: 6px;
    padding: 5px 14px;
    border-radius: 999px;
    background: #eef5fa
}

body[data-iit-page=home] .al3:not(.al3--list) .al3-body p {
    position: relative;
    max-width: 100%;
    margin-bottom: 16px;
    padding-bottom: 11px
}

body[data-iit-page=home] .al3:not(.al3--list) .al3-body p:after {
    position: absolute;
    bottom: 0;
    left: 50%;
    width: 32px;
    height: 2px;
    border-radius: 2px;
    background: var(--iit-gold);
    content: "";
    transform: translateX(-50%)
}

@media (max-width: 1100px) {
    body[data-iit-page=home] .al3--slider .al3-row {
        grid-auto-columns: calc((100% - 18px) / 2)
    }

    body[data-iit-page=home] .al3:not(.al3--list) .al3-card {
        min-height: 300px
    }
}

@media (max-width: 640px) {
    body[data-iit-page=home] .al3:not(.al3--list) .al3-card {
        min-height: 290px
    }
}

/* News & Press mosaic layout */
body[data-iit-page=home] #press {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    background: linear-gradient(180deg, #f6fafd, #eef6fb) !important
}

body[data-iit-page=home] #press:before,
body[data-iit-page=home] #press:after {
    content: "";
    position: absolute;
    z-index: 0;
    bottom: 0;
    width: 190px;
    height: 120px;
    pointer-events: none
}

body[data-iit-page=home] #press:before {
    left: 0;
    background:
        radial-gradient(circle at 0 100%, #ff7a1a 0 18%, transparent 18.5%),
        radial-gradient(circle at 0 100%, #d8eef7 0 31%, transparent 31.5%)
}

body[data-iit-page=home] #press:after {
    right: 0;
    background:
        radial-gradient(circle at 100% 100%, #cfeaf8 0 22%, transparent 22.5%),
        radial-gradient(circle at 100% 100%, #e1f0f7 0 38%, transparent 38.5%)
}

body[data-iit-page=home] #press .press-campus-visual {
    position: absolute;
    z-index: 0;
    top: 0;
    right: 0;
    width: min(48%, 620px);
    height: 360px;
    overflow: hidden;
    opacity: .55;
    pointer-events: none
}

body[data-iit-page=home] #press .press-campus-visual img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center 42%
}

body[data-iit-page=home] #press .press-campus-visual:after {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(90deg, #f6fafd 0%, rgba(246, 250, 253, .12) 32%, transparent 78%),
        linear-gradient(180deg, rgba(246, 250, 253, .02), rgba(238, 246, 251, .5) 100%)
}

body[data-iit-page=home] #press .wrap {
    position: relative;
    z-index: 1
}

body[data-iit-page=home] #press .press-head {
    align-items: center;
    gap: 48px;
    margin-bottom: 34px
}

body[data-iit-page=home] #press .press-head .section-head {
    flex: 1;
    max-width: 510px
}

body[data-iit-page=home] #press .press-eyebrow {
    display: flex;
    align-items: center;
    gap: 14px;
    color: #00487e;
    font: 700 calc(13px * var(--iit-text-scale))/1.2 var(--iit-font-body);
    letter-spacing: 2.6px;
    text-transform: uppercase
}

body[data-iit-page=home] #press .press-eyebrow span {
    display: flex;
    height: 6px
}

body[data-iit-page=home] #press .press-eyebrow i {
    display: block;
    height: 100%
}

body[data-iit-page=home] #press .press-eyebrow i:nth-child(1) {
    width: 30px;
    background: #ff7a1a
}

body[data-iit-page=home] #press .press-eyebrow i:nth-child(2) {
    width: 12px;
    background: #00487e
}

body[data-iit-page=home] #press .press-eyebrow i:nth-child(3) {
    width: 30px;
    background: #cfeaf8
}

body[data-iit-page=home] #press .press-head h2 {
    max-width: 520px;
    margin-top: 10px;
    color: #092e63;
    font-size: calc(clamp(34px, 4vw, 54px) * var(--iit-heading-scale));
    line-height: 1.04;
    letter-spacing: -.04em
}

body[data-iit-page=home] #press .press-head h2 em {
    color: #ff7a1a;
    font-style: normal
}

body[data-iit-page=home] #press .press-note {
    max-width: 360px;
    margin: 0;
    color: #526b88;
    font-size: calc(14px * var(--iit-text-scale));
    line-height: 1.65
}

body[data-iit-page=home] #press .press-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    grid-template-rows: repeat(2, minmax(190px, auto));
    gap: 16px;
    align-items: stretch
}

body[data-iit-page=home] #press .press-grid--single {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: auto
}

body[data-iit-page=home] #press .press-feature {
    grid-column: span 2;
    grid-row: span 2;
    display: flex;
    min-width: 0;
    border: 1px solid rgba(0, 47, 84, .1);
    border-radius: 16px;
    box-shadow: 0 10px 28px rgba(0, 36, 63, .08)
}

body[data-iit-page=home] #press .press-feature-media {
    min-height: 0;
    flex: 1 1 54%;
    aspect-ratio: 16 / 9;
    background-position: center;
    background-size: cover
}

body[data-iit-page=home] #press .press-feature-media:after {
    background: linear-gradient(180deg, transparent 62%, rgba(0, 36, 63, .18))
}

body[data-iit-page=home] #press .press-feature-body {
    flex: 1 1 auto;
    justify-content: flex-start;
    padding: 20px 22px 22px
}

body[data-iit-page=home] #press .press-feature h3 {
    margin: 10px 0 8px;
    color: #092e63;
    font-size: calc(22px * var(--iit-heading-scale));
    line-height: 1.28
}

body[data-iit-page=home] #press .press-feature p {
    margin-bottom: 12px;
    color: #526b88;
    font-size: calc(13px * var(--iit-text-scale));
    line-height: 1.55
}

body[data-iit-page=home] #press .press-feature .press-source,
body[data-iit-page=home] #press .press-item .press-source {
    min-height: 0;
    padding: 4px 9px;
    background: #fff1e6;
    color: #ae4a00;
    font-size: calc(9px * var(--iit-text-scale))
}

body[data-iit-page=home] #press .press-rest-grid {
    grid-column: span 2;
    grid-row: span 2;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: repeat(2, minmax(0, 1fr));
    gap: 12px;
    min-width: 0
}

body[data-iit-page=home] #press .press-rest-grid .press-item {
    display: flex;
    flex-direction: column;
    min-width: 0;
    padding: 0;
    gap: 0;
    overflow: hidden;
    border: 1px solid rgba(0, 47, 84, .1);
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 8px 22px rgba(0, 36, 63, .07)
}

body[data-iit-page=home] #press .press-rest-grid .press-item:hover {
    transform: translateY(-3px);
    border-color: rgba(0, 72, 126, .2);
    box-shadow: 0 13px 28px rgba(0, 36, 63, .12)
}

body[data-iit-page=home] #press .press-rest-grid .press-thumb {
    flex: 0 0 auto;
    width: 100%;
    height: auto;
    aspect-ratio: 2.2 / 1;
    border-radius: 0;
    background: linear-gradient(145deg, #eaf3f6, #d8eaf0)
}

body[data-iit-page=home] #press .press-rest-grid .press-item-body {
    position: relative;
    display: flex;
    flex: 1;
    flex-direction: column;
    align-items: flex-start;
    padding: 10px 12px 12px
}

body[data-iit-page=home] #press .press-rest-grid .press-meta {
    gap: 6px;
    font-size: calc(9px * var(--iit-text-scale))
}

body[data-iit-page=home] #press .press-rest-grid .press-source {
    letter-spacing: .04em
}

body[data-iit-page=home] #press .press-rest-grid .press-item h3 {
    margin: 7px 0 5px;
    color: #092e63;
    font-size: calc(14px * var(--iit-heading-scale));
    line-height: 1.28
}

body[data-iit-page=home] #press .press-rest-grid .press-item p {
    margin-bottom: 6px;
    color: #526b88;
    font-size: calc(11px * var(--iit-text-scale));
    line-height: 1.4
}

body[data-iit-page=home] #press .press-rest-grid .press-link {
    margin-top: auto;
    color: #00487e;
    font-size: calc(10px * var(--iit-text-scale));
    letter-spacing: .04em;
    text-transform: uppercase
}

body[data-iit-page=home] #press .press-feature:focus-within,
body[data-iit-page=home] #press .press-item:focus-within {
    outline: 3px solid rgba(255, 139, 37, .65);
    outline-offset: 3px
}

@media (max-width: 900px) {
    body[data-iit-page=home] #press .press-head {
        gap: 24px
    }

    body[data-iit-page=home] #press .press-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        grid-template-rows: auto
    }

    body[data-iit-page=home] #press .press-feature {
        grid-column: span 2;
        grid-row: auto
    }

    body[data-iit-page=home] #press .press-feature-media {
        flex-basis: 50%;
        min-height: 250px
    }

    body[data-iit-page=home] #press .press-rest-grid {
        grid-column: span 2;
        grid-row: auto;
        grid-auto-rows: minmax(220px, auto)
    }
}

@media (max-width: 560px) {
    body[data-iit-page=home] #press .press-head {
        display: block
    }

    body[data-iit-page=home] #press .press-note {
        margin-top: 14px
    }

    body[data-iit-page=home] #press .press-grid,
    body[data-iit-page=home] #press .press-grid--single {
        grid-template-columns: minmax(0, 1fr)
    }

    body[data-iit-page=home] #press .press-feature {
        grid-column: auto;
        grid-row: auto
    }

    body[data-iit-page=home] #press .press-feature-media {
        min-height: 0;
        aspect-ratio: 16 / 9
    }

    body[data-iit-page=home] #press .press-rest-grid {
        grid-column: auto;
        grid-template-columns: minmax(0, 1fr);
        grid-auto-rows: auto
    }

    body[data-iit-page=home] #press .press-rest-grid .press-thumb {
        aspect-ratio: 16 / 9
    }
}

body[data-iit-page=home] #press .press-grid {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    grid-template-rows: auto;
    min-height: 0;
    gap: 18px
}

body[data-iit-page=home] #press .press-feature {
    grid-column: 1;
    grid-row: 1;
    flex-direction: column;
    min-height: 0
}

body[data-iit-page=home] #press .press-feature-media {
    flex: 0 0 auto;
    width: 100%;
    min-height: 0;
    aspect-ratio: 16 / 9
}

body[data-iit-page=home] #press .press-feature-body {
    padding: 22px 24px 24px;
    background: #063f68
}

body[data-iit-page=home] #press .press-feature .press-meta {
    color: rgba(255, 255, 255, .72)
}

body[data-iit-page=home] #press .press-feature .press-source {
    background: transparent;
    color: #ff7a1a
}

body[data-iit-page=home] #press .press-feature h3 {
    color: #fff
}

body[data-iit-page=home] #press .press-feature p {
    color: rgba(255, 255, 255, .82)
}

body[data-iit-page=home] #press .press-feature .press-link {
    color: #ff7a1a
}

body[data-iit-page=home] #press .press-rest-carousel {
    position: relative;
    grid-column: 2;
    grid-row: 1;
    min-width: 0;
    padding-top: 36px
}

body[data-iit-page=home] #press .press-rest-viewport {
    width: 100%;
    height: auto;
    min-height: 420px;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scrollbar-width: none
}

body[data-iit-page=home] #press .press-rest-viewport::-webkit-scrollbar {
    display: none
}

body[data-iit-page=home] #press .press-rest-track {
    display: flex;
    width: 100%;
    align-items: stretch
}

body[data-iit-page=home] #press .press-rest-page {
    flex: 0 0 100%;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: repeat(2, minmax(200px, auto));
    gap: 12px;
    min-width: 0;
    min-height: 420px;
    scroll-snap-align: start
}

body[data-iit-page=home] #press .press-rest-page .press-item {
    display: flex;
    flex-direction: column;
    min-width: 0;
    min-height: 200px;
    padding: 0;
    gap: 0;
    overflow: hidden;
    border: 1px solid rgba(0, 47, 84, .1);
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 8px 22px rgba(0, 36, 63, .07)
}

body[data-iit-page=home] #press .press-rest-page .press-item:hover {
    transform: translateY(-3px);
    border-color: rgba(0, 72, 126, .2);
    box-shadow: 0 13px 28px rgba(0, 36, 63, .12)
}

body[data-iit-page=home] #press .press-rest-page .press-thumb {
    flex: 0 0 auto;
    width: 100%;
    height: auto;
    aspect-ratio: 2.2 / 1;
    border-radius: 0
}

body[data-iit-page=home] #press .press-rest-page .press-item-body {
    position: relative;
    display: flex;
    flex: 1;
    flex-direction: column;
    align-items: flex-start;
    min-height: 0;
    padding: 9px 11px 10px
}

body[data-iit-page=home] #press .press-rest-page .press-meta {
    gap: 5px;
    font-size: calc(9px * var(--iit-text-scale))
}

body[data-iit-page=home] #press .press-rest-page .press-source {
    min-height: 0;
    padding: 3px 7px;
    font-size: calc(8px * var(--iit-text-scale))
}

body[data-iit-page=home] #press .press-rest-page .press-item h3 {
    margin: 6px 0 4px;
    color: #092e63;
    font-size: calc(13px * var(--iit-heading-scale));
    line-height: 1.28
}

body[data-iit-page=home] #press .press-rest-page .press-item p {
    margin-bottom: 4px;
    font-size: calc(10px * var(--iit-text-scale));
    line-height: 1.4
}

body[data-iit-page=home] #press .press-rest-page .press-link {
    margin-top: auto;
    font-size: calc(9px * var(--iit-text-scale));
    text-transform: uppercase
}

body[data-iit-page=home] #press .press-carousel-controls {
    position: absolute;
    top: 0;
    right: 0;
    display: flex;
    gap: 8px
}

body[data-iit-page=home] #press .press-carousel-arrow {
    display: grid;
    place-items: center;
    width: 30px;
    height: 30px;
    border: 1px solid rgba(0, 47, 84, .18);
    border-radius: 50%;
    background: #fff;
    color: #00487e;
    cursor: pointer;
    transition: background .2s ease, color .2s ease, border-color .2s ease
}

body[data-iit-page=home] #press .press-carousel-arrow:hover:not(:disabled) {
    border-color: #00487e;
    background: #00487e;
    color: #fff
}

body[data-iit-page=home] #press .press-carousel-arrow:disabled {
    opacity: .38;
    cursor: default
}

body[data-iit-page=home] #press .press-carousel-arrow:focus-visible,
body[data-iit-page=home] #press .press-rest-viewport:focus-visible {
    outline: 3px solid rgba(255, 139, 37, .65);
    outline-offset: 3px
}

@media (max-width: 900px) {
    body[data-iit-page=home] #press .press-campus-visual {
        width: 58%;
        height: 240px;
        opacity: .4
    }

    body[data-iit-page=home] #press .press-grid,
    body[data-iit-page=home] #press .press-grid--single {
        grid-template-columns: minmax(0, 1fr);
        grid-template-rows: auto
    }

    body[data-iit-page=home] #press .press-feature,
    body[data-iit-page=home] #press .press-rest-carousel {
        grid-column: 1;
        grid-row: auto
    }

    body[data-iit-page=home] #press .press-feature {
        height: auto
    }

    body[data-iit-page=home] #press .press-rest-viewport {
        min-height: 420px
    }
}

@media (max-width: 560px) {
    body[data-iit-page=home] #press .press-campus-visual {
        width: 76%;
        height: 190px;
        opacity: .3
    }

    body[data-iit-page=home] #press:before,
    body[data-iit-page=home] #press:after {
        width: 130px;
        height: 85px
    }

    body[data-iit-page=home] #press .press-rest-viewport {
        min-height: 420px
    }

    body[data-iit-page=home] #press .press-rest-page {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        grid-template-rows: repeat(2, minmax(200px, auto));
        min-height: 420px
    }

    body[data-iit-page=home] #press .press-rest-page .press-thumb {
        aspect-ratio: 16 / 9
    }
}

body[data-iit-page=home] #press .press-grid {
    display: block;
    position: relative;
    overflow: hidden;
    min-height: 0;
    padding-top: 36px
}

body[data-iit-page=home] #press .press-carousel-viewport {
    width: 100%;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scrollbar-width: none
}

body[data-iit-page=home] #press .press-carousel-viewport::-webkit-scrollbar {
    display: none
}

body[data-iit-page=home] #press .press-pages {
    display: flex;
    width: 100%;
    align-items: stretch
}

body[data-iit-page=home] #press .press-page {
    flex: 0 0 100%;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
    min-width: 0;
    align-items: stretch;
    scroll-snap-align: start
}

body[data-iit-page=home] #press .press-page .press-feature,
body[data-iit-page=home] #press .press-page .press-rest-grid {
    grid-column: auto;
    grid-row: auto;
    min-width: 0
}

body[data-iit-page=home] #press .press-page .press-feature {
    height: 100%
}

body[data-iit-page=home] #press .press-page .press-rest-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: repeat(2, minmax(200px, auto));
    gap: 12px
}

body[data-iit-page=home] #press .press-carousel-controls {
    top: 0;
    z-index: 2
}

@media (max-width: 900px) {
    body[data-iit-page=home] #press .press-page {
        grid-template-columns: minmax(0, 1fr)
    }

    body[data-iit-page=home] #press .press-page .press-feature,
    body[data-iit-page=home] #press .press-page .press-rest-grid {
        grid-column: 1
    }
}

@media (max-width: 560px) {
    body[data-iit-page=home] #press .press-page .press-rest-grid {
        grid-template-columns: minmax(0, 1fr);
        grid-template-rows: none
    }
}

body[data-iit-page=home] .stories--slider .success-card,
body[data-iit-page=home] .aud2--slider .aud2-card,
body[data-iit-page=home] .pl2--slider .pl2-card {
    flex-basis: 55%
}

body[data-iit-page=home] .cl-track {
    grid-auto-columns: 55%
}

@media (max-width: 640px) {
    body[data-iit-page=home] .stories--slider .success-card,
    body[data-iit-page=home] .aud2--slider .aud2-card {
        flex-basis: 86%
    }

    body[data-iit-page=home] .pl2--slider .pl2-card {
        flex-basis: 88%
    }

}

@media (max-width: 460px) {
    body[data-iit-page=home] .stories--slider .success-card {
        flex-basis: 86%
    }
}

@media (max-width: 1000px) {
    body[data-iit-page=home] .cl-track {
        grid-auto-columns: 55%
    }
}

@media (max-width: 640px) {
    body[data-iit-page=home] .cl-track {
        grid-auto-columns: 86%
    }
}

body[data-iit-page=home] #press .press-head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(300px, .9fr);
    align-items: center;
    gap: clamp(24px, 5vw, 64px)
}

body[data-iit-page=home] #press .press-head .section-head {
    max-width: 560px
}

body[data-iit-page=home] #press .press-note {
    position: relative;
    z-index: 1;
    justify-self: end;
    width: min(100%, 440px);
    max-width: none;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    color: #0a4fa6;
    font: 700 calc(20px * var(--iit-text-scale))/1.5 "Segoe Script", "Brush Script MT", "Caveat", cursive;
    text-align: right
}

@media (max-width: 900px) {
    body[data-iit-page=home] #press .press-head {
        grid-template-columns: minmax(0, 1fr);
        gap: 20px
    }

    body[data-iit-page=home] #press .press-note {
        justify-self: start;
        width: min(100%, 560px)
    }
}

@media (max-width: 560px) {
    body[data-iit-page=home] #press .press-note {
        margin-top: 0;
        padding: 0;
        font-size: calc(17px * var(--iit-text-scale));
        text-align: left
    }
}

body[data-iit-page=home] .faq2-grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 34px;
    max-width: 1120px
}

body[data-iit-page=home] .faq2-intro {
    position: static;
    text-align: left
}

body[data-iit-page=home] .faq2-intro .section-head {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    max-width: 920px;
    margin: 0
}

body[data-iit-page=home] .faq2-intro .eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: var(--iit-primary)
}

body[data-iit-page=home] .faq2-intro h2 {
    max-width: 100%;
    margin: 12px 0 14px;
    color: var(--iit-navy);
    font-size: calc(clamp(36px, 5vw, 58px) * var(--iit-heading-scale));
    letter-spacing: -.04em
}

body[data-iit-page=home] .faq2-intro h2 em {
    color: #ff7a1a;
    font-style: normal
}

body[data-iit-page=home] .faq2-intro .section-head p {
    max-width: 780px;
    margin: 0;
    color: #526b88;
    font-size: calc(17px * var(--iit-text-scale));
    line-height: 1.7
}

body[data-iit-page=home] .faq2-content {
    width: 100%
}

body[data-iit-page=home] .faq2-tab-row {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 8px;
    width: 100%;
    margin-bottom: 18px;
    overflow-x: auto;
    scrollbar-width: thin
}

body[data-iit-page=home] .faq2-tabs {
    flex-wrap: nowrap;
    justify-content: flex-start;
    flex: 0 0 auto;
    margin-bottom: 0
}

body[data-iit-page=home] .faq2-level-tabs[hidden] {
    display: none
}

body[data-iit-page=home] .faq2-list {
    width: 100%;
    gap: 14px
}

body[data-iit-page=home] .faq2-item {
    border-color: rgba(0, 72, 126, .14);
    border-radius: 16px;
    box-shadow: 0 8px 22px rgba(0, 47, 84, .045)
}

body[data-iit-page=home] .faq2-item[open] {
    border-color: color-mix(in srgb, var(--iit-primary) 42%, transparent);
    box-shadow: 0 16px 34px rgba(0, 47, 84, .1)
}

body[data-iit-page=home] .faq2-item summary {
    padding: 22px 26px
}

body[data-iit-page=home] .faq2-q {
    font-size: calc(17px * var(--iit-text-scale))
}

body[data-iit-page=home] .faq2-a {
    padding: 0 30px 24px 78px;
    font-size: calc(15px * var(--iit-text-scale))
}

body[data-iit-page=home] .faq2-more {
    justify-self: center;
    margin-top: 8px
}

body[data-iit-page=home] .faq2-cta {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    padding: 30px 24px;
    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: 20px;
    background:
        radial-gradient(circle at 50% 0, rgba(255, 139, 37, .22), transparent 56%),
        var(--iit-deep);
    text-align: center;
    box-shadow: 0 18px 38px rgba(0, 47, 84, .15)
}

body[data-iit-page=home] .faq2-cta b {
    font-size: calc(26px * var(--iit-heading-scale))
}

body[data-iit-page=home] .faq2-cta p {
    max-width: 620px;
    margin: 10px auto 0;
    font-size: calc(15px * var(--iit-text-scale));
    line-height: 1.65
}

body[data-iit-page=home] .faq2-cta-btn {
    margin-top: 20px
}

@media (max-width: 520px) {
    body[data-iit-page=home] .faq2-grid {
        gap: 26px
    }

    body[data-iit-page=home] .faq2-intro h2 {
        font-size: calc(34px * var(--iit-heading-scale))
    }

    body[data-iit-page=home] .faq2-intro .section-head p {
        font-size: calc(15px * var(--iit-text-scale))
    }

    body[data-iit-page=home] .faq2-item summary {
        padding: 18px
    }

    body[data-iit-page=home] .faq2-a {
        padding: 0 18px 20px
    }

    body[data-iit-page=home] .faq2-cta {
        padding: 26px 18px
    }
}

/* ==========================================================================
   Our Alumni: Google-colour cards (algc-*). Card colours repeat blue, red, green, yellow.
   ========================================================================== */
body[data-iit-page=home] .algc {
    --g-blue: #4285f4;
    --g-red: #ea4335;
    --g-green: #34a853;
    --g-yellow: #fbbc05;
    position: relative;
    isolation: isolate;
    overflow: hidden;
    background: #f7faff
}

body[data-iit-page=home] .algc:before,
body[data-iit-page=home] .algc:after {
    position: absolute;
    z-index: -1;
    border-radius: 50%;
    content: "";
    pointer-events: none
}

body[data-iit-page=home] .algc:before {
    top: -160px;
    right: 8%;
    width: 520px;
    height: 260px;
    background: rgba(66, 133, 244, .07)
}

body[data-iit-page=home] .algc:after {
    bottom: -120px;
    left: -120px;
    width: 420px;
    height: 240px;
    background: rgba(66, 133, 244, .08)
}

body[data-iit-page=home] .algc-head {
    display: flex;
    align-items: center;
    gap: 28px;
    margin-bottom: 30px
}

body[data-iit-page=home] .algc-icon {
    flex: 0 0 auto;
    color: var(--g-blue);
    font-size: 62px;
    line-height: 1
}

body[data-iit-page=home] .algc-headtext {
    flex: 1 1 auto;
    min-width: 0;
    padding-left: 28px;
    border-left: 2px solid #ff8b25
}

body[data-iit-page=home] .algc-headtext h2 {
    margin: 0 0 10px;
    color: #14285a;
    font-size: calc(46px * var(--iit-heading-scale));
    line-height: 1.12
}

body[data-iit-page=home] .algc-word span { font-style: normal }
body[data-iit-page=home] .algc-l-b { color: var(--g-blue) }
body[data-iit-page=home] .algc-l-r { color: var(--g-red) }
body[data-iit-page=home] .algc-l-y { color: var(--g-yellow) }
body[data-iit-page=home] .algc-l-g { color: var(--g-green) }

body[data-iit-page=home] .algc-headtext p {
    max-width: 640px;
    margin: 0;
    color: #4b5a70;
    font-size: 18px;
    line-height: 1.5
}

body[data-iit-page=home] .algc-nav {
    display: flex;
    flex: 0 0 auto;
    gap: 22px
}

body[data-iit-page=home] .algc-arrow {
    display: grid;
    width: 64px;
    height: 64px;
    place-items: center;
    padding: 0;
    border: 2px solid #1a73e8;
    border-radius: 50%;
    background: #fff;
    color: #1a73e8;
    font-size: 20px;
    cursor: pointer;
    transition: transform .2s, opacity .2s
}

body[data-iit-page=home] .algc-arrow--next {
    background: #1a73e8;
    color: #fff;
    box-shadow: 0 10px 22px rgba(26, 115, 232, .3)
}

body[data-iit-page=home] .algc-arrow:hover:not(:disabled) { transform: translateY(-2px) }
body[data-iit-page=home] .algc-arrow:disabled { opacity: .4; cursor: default }

body[data-iit-page=home] .algc-row {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 24px;
    padding: 6px 4px 22px
}

body[data-iit-page=home] .algc--slider .algc-row {
    grid-template-columns: none;
    grid-auto-flow: column;
    grid-auto-columns: calc((100% - 72px) / 4);
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scrollbar-width: none
}

body[data-iit-page=home] .algc--slider .algc-row::-webkit-scrollbar { display: none }

body[data-iit-page=home] .algc-card {
    --c: var(--g-blue);
    --c2: #1a73e8;
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    min-width: 0;
    padding: 22px 22px 30px;
    overflow: hidden;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 10px 30px rgba(20, 40, 90, .08);
    text-align: center;
    scroll-snap-align: start
}

body[data-iit-page=home] .algc-card:nth-child(4n+2) { --c: var(--g-red); --c2: var(--g-yellow) }
body[data-iit-page=home] .algc-card:nth-child(4n+3) { --c: var(--g-green); --c2: var(--g-blue) }
body[data-iit-page=home] .algc-card:nth-child(4n) { --c: var(--g-yellow); --c2: var(--g-red) }

/* coloured corner, bottom right */
body[data-iit-page=home] .algc-card:after {
    position: absolute;
    right: 0;
    bottom: 0;
    width: 64px;
    height: 64px;
    background: var(--c);
    clip-path: polygon(100% 0, 100% 100%, 0 100%);
    content: ""
}

/* blobs and dots behind the photo */
body[data-iit-page=home] .algc-avatar {
    position: relative;
    isolation: isolate;
    width: 220px;
    max-width: 100%;
    height: 180px;
    margin-bottom: 18px;
    background:
        radial-gradient(circle, var(--c) 0 5px, transparent 6px) 6% 30% / 14px 14px no-repeat,
        radial-gradient(circle, var(--c) 0 4px, transparent 5px) 94% 58% / 12px 12px no-repeat,
        radial-gradient(circle, var(--c2) 0 6px, transparent 7px) 88% 74% / 16px 16px no-repeat,
        radial-gradient(circle, var(--c) 0 3px, transparent 4px) 12% 88% / 8px 8px no-repeat
}

body[data-iit-page=home] .algc-avatar:before,
body[data-iit-page=home] .algc-avatar:after {
    position: absolute;
    z-index: -1;
    content: ""
}

body[data-iit-page=home] .algc-avatar:before {
    top: 4px;
    left: 0;
    width: 150px;
    height: 160px;
    border-radius: 58% 42% 46% 54% / 52% 48% 52% 48%;
    background: var(--c);
    transform: rotate(-16deg)
}

body[data-iit-page=home] .algc-avatar:after {
    top: 0;
    right: 4px;
    width: 112px;
    height: 150px;
    border-radius: 48% 52% 60% 40% / 44% 50% 50% 56%;
    background: var(--c2);
    opacity: .9;
    transform: rotate(18deg)
}

body[data-iit-page=home] .algc-photo {
    position: absolute;
    top: 50%;
    left: 50%;
    display: grid;
    width: 148px;
    height: 148px;
    place-items: center;
    overflow: hidden;
    box-sizing: border-box;
    border: 5px solid #fff;
    border-radius: 50%;
    background: #eef3fb;
    box-shadow: 0 0 0 3px var(--c);
    transform: translate(-50%, -50%)
}

body[data-iit-page=home] .algc-photo img {
    width: 100%;
    height: 100%;
    border-radius: 50%;
    object-fit: cover
}

body[data-iit-page=home] .algc-photo span {
    color: var(--c);
    font-size: 40px;
    font-weight: 700
}

body[data-iit-page=home] .algc-card h3 {
    margin: 0 0 8px;
    color: #14285a;
    font-size: 24px;
    font-weight: 700;
    line-height: 1.25
}

body[data-iit-page=home] .algc-card p {
    max-width: 100%;
    margin: 0;
    overflow: hidden;
    color: #5f6b7a;
    font-size: 17px;
    text-overflow: ellipsis;
    white-space: nowrap
}

body[data-iit-page=home] .algc-bar {
    display: block;
    width: 62px;
    height: 5px;
    margin: 14px 0 24px;
    border-radius: 5px;
    background: var(--c)
}

body[data-iit-page=home] .algc-co {
    display: flex;
    width: 100%;
    max-width: 280px;
    min-height: 66px;
    box-sizing: border-box;
    align-items: center;
    justify-content: center;
    margin-top: auto;
    padding: 10px 18px;
    border: 1px solid #e6edf5;
    border-radius: 999px;
    background: #fff;
    box-shadow: 0 6px 16px rgba(20, 40, 90, .06);
    color: #14285a;
    font-weight: 700
}

body[data-iit-page=home] .algc-co img {
    display: block;
    max-width: 85%;
    max-height: 42px;
    object-fit: contain
}

body[data-iit-page=home] .algc-dots {
    display: flex;
    justify-content: center;
    gap: 14px;
    margin-top: 8px
}

body[data-iit-page=home] .algc-dots button {
    width: 16px;
    height: 16px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: #d3e3fb;
    cursor: pointer
}

body[data-iit-page=home] .algc-dots button.is-active { background: #1a73e8 }

body[data-iit-page=home] .algc-more {
    margin-top: 22px;
    text-align: center
}

body[data-iit-page=home] .algc-more a {
    color: #1a73e8;
    font-weight: 700;
    text-decoration: none
}

body[data-iit-page=home] .algc-more a:hover { text-decoration: underline }

@media (max-width: 1100px) {
    body[data-iit-page=home] .algc-row { grid-template-columns: repeat(2, minmax(0, 1fr)) }
    body[data-iit-page=home] .algc--slider .algc-row { grid-auto-columns: calc((100% - 24px) / 2) }
    body[data-iit-page=home] .algc-headtext h2 { font-size: calc(38px * var(--iit-heading-scale)) }
}

@media (max-width: 640px) {
    body[data-iit-page=home] .algc-head {
        flex-wrap: wrap;
        gap: 16px
    }

    body[data-iit-page=home] .algc-icon { font-size: 44px }

    body[data-iit-page=home] .algc-headtext {
        flex-basis: calc(100% - 76px);
        padding-left: 16px
    }

    body[data-iit-page=home] .algc-headtext h2 { font-size: calc(30px * var(--iit-heading-scale)) }
    body[data-iit-page=home] .algc-headtext p { font-size: 16px }
    body[data-iit-page=home] .algc-nav { margin-left: auto }

    body[data-iit-page=home] .algc-arrow {
        width: 48px;
        height: 48px;
        font-size: 16px
    }

    body[data-iit-page=home] .algc-row { grid-template-columns: 1fr }
    body[data-iit-page=home] .algc--slider .algc-row { grid-auto-columns: 100% }
}

/* Our Alumni (algc-*): compact size — smaller text, tighter spacing, smaller cards */
body[data-iit-page=home] .algc { padding-top: 56px; padding-bottom: 56px }
body[data-iit-page=home] .algc-head { gap: 20px; margin-bottom: 20px }
body[data-iit-page=home] .algc-icon { font-size: 46px }
body[data-iit-page=home] .algc-headtext { padding-left: 20px }
body[data-iit-page=home] .algc-headtext h2 { margin-bottom: 6px; font-size: calc(36px * var(--iit-heading-scale)) }
body[data-iit-page=home] .algc-headtext p { max-width: 560px; font-size: 15px }
body[data-iit-page=home] .algc-nav { gap: 14px }
body[data-iit-page=home] .algc-arrow { width: 48px; height: 48px; font-size: 16px }
body[data-iit-page=home] .algc-row { gap: 18px; padding: 4px 4px 16px }
body[data-iit-page=home] .algc--slider .algc-row { grid-auto-columns: calc((100% - 54px) / 4) }
body[data-iit-page=home] .algc-card { padding: 14px 14px 18px; border-radius: 16px }
body[data-iit-page=home] .algc-card:after { width: 46px; height: 46px }
body[data-iit-page=home] .algc-avatar { width: 170px; height: 134px; margin-bottom: 10px }
body[data-iit-page=home] .algc-avatar:before { top: 4px; left: 4px; width: 112px; height: 120px }
body[data-iit-page=home] .algc-avatar:after { top: 0; right: 6px; width: 84px; height: 112px }
body[data-iit-page=home] .algc-photo { width: 110px; height: 110px; border-width: 4px }
body[data-iit-page=home] .algc-photo span { font-size: 30px }
body[data-iit-page=home] .algc-card h3 { margin-bottom: 4px; font-size: 19px }
body[data-iit-page=home] .algc-card p { font-size: 14.5px }
body[data-iit-page=home] .algc-bar { width: 48px; height: 4px; margin: 10px 0 16px }
body[data-iit-page=home] .algc-co { max-width: 230px; min-height: 50px; padding: 8px 14px }
body[data-iit-page=home] .algc-co img { max-height: 32px }
body[data-iit-page=home] .algc-dots { gap: 10px; margin-top: 4px }
body[data-iit-page=home] .algc-dots button { width: 12px; height: 12px }
body[data-iit-page=home] .algc-more { margin-top: 14px; font-size: 15px }

@media (max-width: 1100px) {
    body[data-iit-page=home] .algc--slider .algc-row { grid-auto-columns: calc((100% - 18px) / 2) }
    body[data-iit-page=home] .algc-headtext h2 { font-size: calc(32px * var(--iit-heading-scale)) }
}

@media (max-width: 640px) {
    body[data-iit-page=home] .algc-icon { font-size: 38px }
    body[data-iit-page=home] .algc-headtext { flex-basis: calc(100% - 60px); padding-left: 14px }
    body[data-iit-page=home] .algc-headtext h2 { font-size: calc(26px * var(--iit-heading-scale)) }
    body[data-iit-page=home] .algc-headtext p { font-size: 14px }
    body[data-iit-page=home] .algc-arrow { width: 42px; height: 42px; font-size: 14px }
    body[data-iit-page=home] .algc--slider .algc-row { grid-auto-columns: 100% }
    body[data-iit-page=home] .algc-card { max-width: 320px; margin: 0 auto; width: 100% }
    body[data-iit-page=home] .algc--slider .algc-card { max-width: none }
}

/* Every Success Has a Story: simple background, heading and arrows on one row, tighter spacing */
body[data-iit-page=home] .ss-story { padding: 60px 0 52px }
body[data-iit-page=home] .ss-story .poly-bg { display: none }

body[data-iit-page=home] .ss-deco {
    position: absolute;
    z-index: 0;
    inset: 0;
    width: 100%;
    height: 100%;
    pointer-events: none
}

body[data-iit-page=home] .ss-deco-ring {
    fill: none;
    stroke: rgba(255, 255, 255, .09);
    stroke-width: 1.2
}

body[data-iit-page=home] .ss-deco pattern circle { fill: rgba(255, 255, 255, .14) }

body[data-iit-page=home] .ss-story-grid { gap: 22px }

body[data-iit-page=home] .ss-head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 24px
}

body[data-iit-page=home] .ss-story h2 {
    margin: 8px 0 10px;
    font-size: calc(36px * var(--iit-heading-scale))
}

body[data-iit-page=home] .ss-story p {
    max-width: 680px;
    font-size: calc(16px * var(--iit-text-scale));
    line-height: 1.6
}

body[data-iit-page=home] .ss-head .ss-nav {
    flex: 0 0 auto;
    margin: 0
}

body[data-iit-page=home] .ss-nav .al3-arrow {
    width: 46px;
    height: 46px;
    font-size: 16px
}

body[data-iit-page=home] .ss-track { padding-top: 4px; padding-bottom: 12px }
body[data-iit-page=home] .ss-dots { margin-top: 10px }

@media (max-width: 1000px) {
    body[data-iit-page=home] .ss-story h2 { font-size: calc(30px * var(--iit-heading-scale)) }
}

@media (max-width: 640px) {
    body[data-iit-page=home] .ss-story { padding: 46px 0 40px }
    body[data-iit-page=home] .ss-head { flex-wrap: wrap; gap: 14px }
    body[data-iit-page=home] .ss-head .ss-nav { margin-left: auto }
    body[data-iit-page=home] .ss-story h2 { font-size: calc(26px * var(--iit-heading-scale)) }
    body[data-iit-page=home] .ss-deco-dots { display: none }
}

/* ==========================================================================
   About page hero (ab-hero-*): copy on the left, campus photo in a curved frame on the right
   ========================================================================== */
body[data-iit-page=about] .hero.ab-hero {
    position: relative;
    display: block;
    min-height: 0;
    padding: 0;
    overflow: hidden;
    isolation: isolate;
    background: linear-gradient(120deg, #072448 0%, #0a2f5c 55%, #0b3566 100%);
    background-image: linear-gradient(120deg, #072448 0%, #0a2f5c 55%, #0b3566 100%);
    color: #fff
}

body[data-iit-page=about] .hero.ab-hero:before,
body[data-iit-page=about] .hero.ab-hero:after { display: none }

body[data-iit-page=about] .ab-hero-deco {
    position: absolute;
    z-index: -1;
    inset: 0;
    width: 100%;
    height: 100%;
    pointer-events: none
}

body[data-iit-page=about] .ab-hero-shape { fill: rgba(255, 255, 255, .035) }
body[data-iit-page=about] .ab-hero-shape--2 { fill: rgba(66, 153, 225, .07) }
body[data-iit-page=about] .ab-hero-deco pattern circle { fill: rgba(255, 255, 255, .22) }

/* curved photo frame: orange arc, thin light ring, photo */
body[data-iit-page=about] .ab-hero-media {
    position: absolute;
    z-index: 0;
    top: 0;
    right: 0;
    bottom: 0;
    width: 44%;
    pointer-events: none
}

body[data-iit-page=about] .ab-hero-media span {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    clip-path: ellipse(100% 78% at 100% 50%)
}

body[data-iit-page=about] .ab-hero-arc {
    width: calc(100% + 30px);
    background: linear-gradient(180deg, #ffa53a, #ff8b25 45%, #e8650f)
}

body[data-iit-page=about] .ab-hero-ring {
    width: calc(100% + 10px);
    background: #dbeaf7
}

body[data-iit-page=about] .ab-hero-photo {
    width: 100%;
    background-color: #0b3566;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover
}

body[data-iit-page=about] .hero.ab-hero .ab-hero-inner {
    position: relative;
    z-index: 1;
    display: block;
    min-height: 0;
    padding: 34px 0 56px
}

body[data-iit-page=about] .ab-hero-inner > * { max-width: 54% }

body[data-iit-page=about] .ab-hero-crumb {
    display: flex;
    width: 360px;
    max-width: 100%;
    gap: 10px;
    padding-bottom: 16px;
    margin-bottom: 30px;
    background: linear-gradient(90deg, #ff8b25 0 26%, rgba(255, 255, 255, .28) 26% 100%) left bottom / 100% 2px no-repeat;
    color: rgba(255, 255, 255, .78);
    font-size: 15px
}

body[data-iit-page=about] .ab-hero-crumb a {
    color: #fff;
    text-decoration: none
}

body[data-iit-page=about] .ab-hero-crumb a:hover { text-decoration: underline }
body[data-iit-page=about] .ab-hero-crumb span[aria-hidden] { color: #ff8b25 }

body[data-iit-page=about] .ab-hero-eyebrow {
    margin-bottom: 14px;
    color: #fff;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: .24em;
    text-transform: uppercase
}

body[data-iit-page=about] .hero.ab-hero h1 {
    margin: 0 0 18px;
    color: #fff;
    font-size: calc(58px * var(--iit-heading-scale));
    line-height: 1.06;
    letter-spacing: -.01em
}

body[data-iit-page=about] .hero.ab-hero h1 em {
    display: inline-block;
    background: linear-gradient(90deg, #f7a823, #ff8b25 55%, #e8590c);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    font-style: normal
}

body[data-iit-page=about] .hero.ab-hero .ab-hero-text {
    margin: 0 0 28px;
    color: #e3edf7;
    font-size: 18px;
    line-height: 1.6
}

body[data-iit-page=about] .ab-hero-features {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 14px 0;
    margin: 0 0 32px;
    padding: 0;
    list-style: none
}

body[data-iit-page=about] .ab-hero-features li {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 0 24px;
    border-left: 1px solid rgba(255, 255, 255, .35)
}

body[data-iit-page=about] .ab-hero-features li:first-child {
    padding-left: 0;
    border-left: 0
}

body[data-iit-page=about] .ab-hero-features i {
    flex: 0 0 auto;
    color: #fff;
    font-size: 26px
}

body[data-iit-page=about] .ab-hero-features span {
    max-width: 150px;
    color: #fff;
    font-size: 15px;
    line-height: 1.35
}

body[data-iit-page=about] .ab-hero-btn {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 15px 30px;
    border-radius: 999px;
    background: linear-gradient(90deg, #ff9a2e, #e8650f);
    box-shadow: 0 12px 26px rgba(232, 101, 15, .35);
    color: #fff;
    font-size: 16px;
    font-weight: 700;
    text-decoration: none;
    transition: transform .2s, box-shadow .2s
}

body[data-iit-page=about] .ab-hero-btn:hover {
    color: #fff;
    transform: translateY(-2px);
    box-shadow: 0 16px 30px rgba(232, 101, 15, .45)
}

body[data-iit-page=about] .ab-hero-inner > .ab-hero-features { max-width: 62%; flex-wrap: nowrap }
body[data-iit-page=about] .ab-hero-features li { padding: 0 18px }
body[data-iit-page=about] .ab-hero-features span { max-width: 130px; font-size: 14.5px }
body[data-iit-page=about] .ab-hero-features i { width: 30px; text-align: center }
@media (max-width: 1100px) { body[data-iit-page=about] .ab-hero-inner > .ab-hero-features { max-width: 100%; flex-wrap: wrap } }
@media (max-width: 860px) { body[data-iit-page=about] .ab-hero-inner > .ab-hero-features { max-width: none } }

@media (max-width: 1100px) {
    body[data-iit-page=about] .hero.ab-hero h1 { font-size: calc(46px * var(--iit-heading-scale)) }
    body[data-iit-page=about] .ab-hero-media { width: 40% }
    body[data-iit-page=about] .ab-hero-inner > * { max-width: 58% }
}

@media (max-width: 860px) {
    body[data-iit-page=about] .hero.ab-hero { display: flex; flex-direction: column-reverse }
    body[data-iit-page=about] .ab-hero-inner > * { max-width: none }
    body[data-iit-page=about] .hero.ab-hero .ab-hero-inner { padding: 26px 0 40px }

    body[data-iit-page=about] .ab-hero-media {
        position: relative;
        width: 100%;
        height: 240px
    }

    body[data-iit-page=about] .ab-hero-media span {
        left: 0;
        width: 100%;
        clip-path: ellipse(85% 100% at 50% 100%)
    }

    body[data-iit-page=about] .ab-hero-arc { top: -14px !important; background: linear-gradient(90deg, #ffa53a, #e8650f) }
    body[data-iit-page=about] .ab-hero-ring { top: -5px !important }
    body[data-iit-page=about] .ab-hero-media { margin-top: 0; overflow: visible }
}

@media (max-width: 640px) {
    body[data-iit-page=about] .hero.ab-hero h1 { font-size: calc(34px * var(--iit-heading-scale)) }
    body[data-iit-page=about] .hero.ab-hero .ab-hero-text { font-size: 16px }
    body[data-iit-page=about] .ab-hero-crumb { margin-bottom: 20px }
    body[data-iit-page=about] .ab-hero-features { flex-direction: column; align-items: flex-start }

    body[data-iit-page=about] .ab-hero-features li {
        padding: 0;
        border-left: 0
    }

    body[data-iit-page=about] .ab-hero-features span { max-width: none }
    body[data-iit-page=about] .ab-hero-media { height: 200px }
}

/* About hero: shorter height */
body[data-iit-page=about] .hero.ab-hero .ab-hero-inner { padding: 22px 0 36px }
body[data-iit-page=about] .ab-hero-crumb { padding-bottom: 12px; margin-bottom: 18px; font-size: 14px }
body[data-iit-page=about] .ab-hero-eyebrow { margin-bottom: 10px; font-size: 13px }
body[data-iit-page=about] .hero.ab-hero h1 { margin-bottom: 12px; font-size: calc(48px * var(--iit-heading-scale)) }
body[data-iit-page=about] .hero.ab-hero .ab-hero-text { margin-bottom: 20px; font-size: 16px; line-height: 1.55 }
body[data-iit-page=about] .ab-hero-features { margin-bottom: 22px }
body[data-iit-page=about] .ab-hero-features i { font-size: 22px }
body[data-iit-page=about] .ab-hero-btn { padding: 12px 26px; font-size: 15px }
@media (max-width: 1100px) { body[data-iit-page=about] .hero.ab-hero h1 { font-size: calc(40px * var(--iit-heading-scale)) } }
@media (max-width: 860px) { body[data-iit-page=about] .ab-hero-media { height: 200px } }
@media (max-width: 640px) { body[data-iit-page=about] .hero.ab-hero h1 { font-size: calc(32px * var(--iit-heading-scale)) } body[data-iit-page=about] .ab-hero-media { height: 170px } }

/* ==========================================================================
   About page rankings (ab-rank-*): turning chakra with the IIT Patna seal, ranking cards on an orbit
   ========================================================================== */
body[data-iit-page=about] .ab-rank {
    position: relative;
    overflow: hidden;
    isolation: isolate;
    padding: 64px 0 56px;
    background: radial-gradient(circle at 50% 58%, #0f3b70 0%, #072448 55%, #051a36 100%);
    color: #fff
}

/* faint rays behind the chakra */
body[data-iit-page=about] .ab-rank:before {
    position: absolute;
    z-index: -1;
    top: 58%;
    left: 50%;
    width: 1400px;
    height: 1400px;
    background: repeating-conic-gradient(rgba(255, 179, 71, .05) 0 4deg, transparent 4deg 15deg);
    content: "";
    transform: translate(-50%, -50%);
    -webkit-mask-image: radial-gradient(circle, #000 0 30%, transparent 62%);
    mask-image: radial-gradient(circle, #000 0 30%, transparent 62%)
}

body[data-iit-page=about] .ab-rank-head {
    max-width: 720px;
    margin: 0 auto 10px;
    text-align: center
}

body[data-iit-page=about] .ab-rank-head .eyebrow { justify-content: center }

body[data-iit-page=about] .ab-rank-head h2 {
    margin: 10px 0 0;
    color: #fff;
    font-size: calc(36px * var(--iit-heading-scale))
}

body[data-iit-page=about] .ab-rank-stage {
    position: relative;
    height: 600px;
    max-width: 1100px;
    margin: 0 auto
}

body[data-iit-page=about] .ab-rank-orbit {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    pointer-events: none
}

body[data-iit-page=about] .ab-rank-orbit ellipse {
    fill: none;
    stroke: rgba(255, 210, 122, .35);
    stroke-width: 1.4;
    stroke-dasharray: 3 9;
    vector-effect: non-scaling-stroke
}

body[data-iit-page=about] .ab-chakra {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 330px;
    height: 330px;
    transform: translate(-50%, -50%)
}

body[data-iit-page=about] .ab-chakra-svg {
    display: block;
    width: 100%;
    height: 100%;
    overflow: visible;
    filter: drop-shadow(0 0 28px rgba(255, 159, 46, .35))
}

body[data-iit-page=about] .ab-chakra-outer,
body[data-iit-page=about] .ab-chakra-inner {
    transform-box: view-box;
    transform-origin: 50% 50%
}

body[data-iit-page=about] .ab-chakra-outer { animation: ab-chakra-spin 24s linear infinite }
body[data-iit-page=about] .ab-chakra-inner { animation: ab-chakra-spin 36s linear infinite reverse }

@keyframes ab-chakra-spin { to { transform: rotate(360deg) } }

body[data-iit-page=about] .ab-chakra-logo {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 38%;
    height: 38%;
    border-radius: 50%;
    object-fit: contain;
    transform: translate(-50%, -50%)
}

body[data-iit-page=about] .ab-rank-cards {
    margin: 0;
    padding: 0;
    list-style: none
}

body[data-iit-page=about] .ab-rank-card {
    position: absolute;
    top: var(--y);
    left: var(--x);
    display: grid;
    width: 150px;
    height: 150px;
    box-sizing: border-box;
    place-items: center;
    padding: 10px;
    border: 2px solid rgba(255, 210, 122, .55);
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 14px 30px rgba(0, 0, 0, .3), 0 0 0 6px rgba(255, 179, 71, .08);
    transform: translate(-50%, -50%);
    transition: transform .25s, box-shadow .25s
}

body[data-iit-page=about] .ab-rank-card:hover {
    box-shadow: 0 18px 36px rgba(0, 0, 0, .35), 0 0 0 8px rgba(255, 179, 71, .18);
    transform: translate(-50%, -50%) scale(1.06)
}

body[data-iit-page=about] .ab-rank-card a {
    display: grid;
    width: 100%;
    height: 100%;
    place-items: center
}

body[data-iit-page=about] .ab-rank-card img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain
}

/* text cards (when no ranking images are uploaded) */
body[data-iit-page=about] .ab-rank-card:not(.has-image) {
    align-content: center;
    gap: 6px;
    text-align: center
}

body[data-iit-page=about] .ab-rank-card b {
    color: var(--iit-primary);
    font-size: 30px;
    line-height: 1
}

body[data-iit-page=about] .ab-rank-card span {
    color: #33475b;
    font-size: 12.5px;
    line-height: 1.35
}

@media (prefers-reduced-motion: reduce) {
    body[data-iit-page=about] .ab-chakra-outer,
    body[data-iit-page=about] .ab-chakra-inner { animation: none }
}

@media (max-width: 1000px) {
    body[data-iit-page=about] .ab-rank-stage { height: 540px }
    body[data-iit-page=about] .ab-chakra { width: 270px; height: 270px }
    body[data-iit-page=about] .ab-rank-card { width: 124px; height: 124px }
}

/* phones: chakra on top, cards in a grid below */
@media (max-width: 760px) {
    body[data-iit-page=about] .ab-rank { padding: 48px 0 44px }
    body[data-iit-page=about] .ab-rank-head h2 { font-size: calc(28px * var(--iit-heading-scale)) }
    body[data-iit-page=about] .ab-rank-stage { height: auto }
    body[data-iit-page=about] .ab-rank-orbit { display: none }

    body[data-iit-page=about] .ab-chakra {
        position: relative;
        top: auto;
        left: auto;
        width: 230px;
        height: 230px;
        margin: 24px auto 30px;
        transform: none
    }

    body[data-iit-page=about] .ab-rank-cards {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 12px
    }

    body[data-iit-page=about] .ab-rank-card {
        position: static;
        width: 100%;
        height: auto;
        aspect-ratio: 1;
        padding: 6px;
        border-radius: 14px;
        transform: none
    }

    body[data-iit-page=about] .ab-rank-card:hover { transform: scale(1.04) }
}

@media (max-width: 420px) {
    body[data-iit-page=about] .ab-rank-cards { grid-template-columns: repeat(2, minmax(0, 1fr)) }
}

/* About rankings chakra: smaller */
body[data-iit-page=about] .ab-rank { padding: 48px 0 40px }
body[data-iit-page=about] .ab-rank-head h2 { font-size: calc(30px * var(--iit-heading-scale)) }
body[data-iit-page=about] .ab-rank-stage { height: 470px; max-width: 920px }
body[data-iit-page=about] .ab-chakra { width: 250px; height: 250px }
body[data-iit-page=about] .ab-rank-card { width: 116px; height: 116px; padding: 8px; border-radius: 14px }
@media (max-width: 1000px) { body[data-iit-page=about] .ab-rank-stage { height: 430px } body[data-iit-page=about] .ab-chakra { width: 210px; height: 210px } body[data-iit-page=about] .ab-rank-card { width: 100px; height: 100px } }
@media (max-width: 760px) { body[data-iit-page=about] .ab-rank-stage { height: auto } body[data-iit-page=about] .ab-chakra { width: 180px; height: 180px; margin: 18px auto 22px } body[data-iit-page=about] .ab-rank-card { width: 100%; height: auto } body[data-iit-page=about] .ab-rank-cards { gap: 10px } }

/* ==========================================================================
   About page rankings (ab-rank2-*): copy on the left, seal in a laurel wreath with ranking cards on a ring
   ========================================================================== */
body[data-iit-page=about] .ab-rank2 {
    position: relative;
    overflow: hidden;
    isolation: isolate;
    padding: 64px 0;
    background: linear-gradient(135deg, #f5f9fe 0%, #eef5fc 60%, #f3f8fd 100%)
}

/* diagonal brand stripes in two corners */
body[data-iit-page=about] .ab-rank2:before,
body[data-iit-page=about] .ab-rank2:after {
    position: absolute;
    z-index: -1;
    width: 150px;
    height: 150px;
    content: "";
    pointer-events: none
}

body[data-iit-page=about] .ab-rank2:before {
    top: 0;
    right: 0;
    background: linear-gradient(45deg, transparent 0 46%, #ff8b25 46% 58%, transparent 58% 64%, #00487e 64% 100%);
    clip-path: polygon(30% 0, 100% 0, 100% 70%)
}

body[data-iit-page=about] .ab-rank2:after {
    bottom: 0;
    left: 0;
    width: 110px;
    height: 110px;
    background: linear-gradient(45deg, #00487e 0 36%, transparent 36% 42%, #ff8b25 42% 54%, transparent 54% 100%);
    clip-path: polygon(0 30%, 0 100%, 70% 100%)
}

body[data-iit-page=about] .ab-rank2-grid {
    display: grid;
    grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
    align-items: center;
    gap: 30px
}

body[data-iit-page=about] .ab-rank2-eyebrow {
    display: flex;
    align-items: center;
    gap: 18px;
    margin-bottom: 20px;
    color: #14315a;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: .22em;
    text-transform: uppercase
}

body[data-iit-page=about] .ab-rank2-eyebrow:before {
    width: 110px;
    height: 3px;
    flex: 0 0 110px;
    background: linear-gradient(90deg, #ff8b25 0 55%, #b9c7d6 55% 100%);
    background-size: 100% 3px;
    content: ""
}

body[data-iit-page=about] .ab-rank2-copy h2 {
    margin: 0 0 18px;
    color: #0d2a5c;
    font-size: calc(46px * var(--iit-heading-scale));
    line-height: 1.12
}

body[data-iit-page=about] .ab-rank2-copy h2 em {
    display: block;
    color: #ff8b25;
    font-style: normal
}

body[data-iit-page=about] .ab-rank2-text {
    max-width: 560px;
    margin: 0 0 30px;
    color: #4a5b70;
    font-size: 16px;
    line-height: 1.65
}

body[data-iit-page=about] .ab-rank2-features {
    display: flex;
    flex-wrap: wrap;
    gap: 16px 0;
    margin: 0 0 32px;
    padding: 0;
    list-style: none
}

body[data-iit-page=about] .ab-rank2-features li {
    display: flex;
    flex-direction: column;
    gap: 12px;
    width: 120px;
    padding: 0 18px;
    border-left: 1px solid #d3deea;
    color: #14315a;
    font-size: 15px;
    font-weight: 600;
    line-height: 1.35
}

body[data-iit-page=about] .ab-rank2-features li:first-child {
    padding-left: 0;
    border-left: 0
}

body[data-iit-page=about] .ab-rank2-icon {
    display: grid;
    width: 54px;
    height: 54px;
    place-items: center;
    border-radius: 50%;
    background: #dcebfa;
    color: #00487e;
    font-size: 21px
}

body[data-iit-page=about] .ab-rank2-features li:nth-child(even) .ab-rank2-icon {
    background: #ffe7d2;
    color: #ff8b25
}

body[data-iit-page=about] .ab-rank2-btn {
    display: inline-flex;
    align-items: center;
    gap: 14px;
    padding: 14px 26px;
    border-radius: 12px;
    background: #00487e;
    box-shadow: 0 4px 0 #ff8b25, 0 14px 26px rgba(0, 72, 126, .25);
    color: #fff;
    font-size: 15px;
    font-weight: 600;
    text-decoration: none;
    transition: transform .2s, background .2s
}

body[data-iit-page=about] .ab-rank2-btn:hover {
    background: #003660;
    color: #fff;
    transform: translateY(-2px)
}

/* right side */
body[data-iit-page=about] .ab-rank2-stage {
    position: relative;
    height: 560px;
    isolation: isolate
}

/* faint campus photo in the bottom right */
body[data-iit-page=about] .ab-rank2-stage:before {
    position: absolute;
    z-index: -1;
    right: -60px;
    bottom: -64px;
    width: 420px;
    height: 260px;
    background: url("/assets/landing/img/campus.jpg") center / cover no-repeat;
    content: "";
    filter: grayscale(1) contrast(1.2);
    mix-blend-mode: multiply;
    opacity: .14;
    -webkit-mask-image: linear-gradient(115deg, transparent 10%, #000 60%);
    mask-image: linear-gradient(115deg, transparent 10%, #000 60%)
}

body[data-iit-page=about] .ab-rank2-ring {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    pointer-events: none
}

body[data-iit-page=about] .ab-rank2-ring ellipse {
    fill: none;
    stroke: #b8d3ee;
    stroke-width: 1.5;
    vector-effect: non-scaling-stroke
}

body[data-iit-page=about] .ab-rank2-ring circle { fill: #e8964a }

body[data-iit-page=about] .ab-rank2-emblem {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 270px;
    height: 270px;
    transform: translate(-50%, -50%)
}

body[data-iit-page=about] .ab-rank2-emblem svg {
    display: block;
    width: 100%;
    height: 100%;
    overflow: visible;
    filter: drop-shadow(0 12px 24px rgba(13, 42, 92, .14))
}

body[data-iit-page=about] .ab-rank2-emblem img {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 62%;
    height: 62%;
    object-fit: contain;
    transform: translate(-50%, -50%)
}

body[data-iit-page=about] .ab-rank2-cards {
    margin: 0;
    padding: 0;
    list-style: none
}

body[data-iit-page=about] .ab-rank2-card {
    position: absolute;
    top: var(--y);
    left: var(--x);
    display: grid;
    width: 138px;
    height: 138px;
    box-sizing: border-box;
    place-items: center;
    padding: 10px;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 14px 34px rgba(13, 42, 92, .12);
    transform: translate(-50%, -50%);
    transition: transform .25s, box-shadow .25s
}

body[data-iit-page=about] .ab-rank2-card:hover {
    box-shadow: 0 20px 40px rgba(13, 42, 92, .18);
    transform: translate(-50%, -50%) translateY(-4px)
}

body[data-iit-page=about] .ab-rank2-card a {
    display: grid;
    width: 100%;
    height: 100%;
    place-items: center
}

body[data-iit-page=about] .ab-rank2-card img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain
}

body[data-iit-page=about] .ab-rank2-card:not(.has-image) {
    align-content: center;
    gap: 6px;
    text-align: center
}

body[data-iit-page=about] .ab-rank2-card b {
    color: #0d2a5c;
    font-size: 28px;
    line-height: 1
}

body[data-iit-page=about] .ab-rank2-card span {
    color: #4a5b70;
    font-size: 12px;
    line-height: 1.35
}

@media (max-width: 1100px) {
    body[data-iit-page=about] .ab-rank2-grid { grid-template-columns: 1fr }
    body[data-iit-page=about] .ab-rank2-copy { max-width: 720px }
    body[data-iit-page=about] .ab-rank2-stage { max-width: 680px; width: 100%; margin: 0 auto }
}

@media (max-width: 640px) {
    body[data-iit-page=about] .ab-rank2 { padding: 48px 0 }
    body[data-iit-page=about] .ab-rank2-copy h2 { font-size: calc(32px * var(--iit-heading-scale)) }
    body[data-iit-page=about] .ab-rank2-eyebrow:before { width: 60px; flex-basis: 60px }
    body[data-iit-page=about] .ab-rank2-features { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px }

    body[data-iit-page=about] .ab-rank2-features li {
        width: auto;
        padding: 0;
        border-left: 0
    }

    body[data-iit-page=about] .ab-rank2-stage { height: auto }
    body[data-iit-page=about] .ab-rank2-stage:before,
    body[data-iit-page=about] .ab-rank2-ring { display: none }

    body[data-iit-page=about] .ab-rank2-emblem {
        position: relative;
        top: auto;
        left: auto;
        width: 200px;
        height: 200px;
        margin: 10px auto 24px;
        transform: none
    }

    body[data-iit-page=about] .ab-rank2-cards {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 10px
    }

    body[data-iit-page=about] .ab-rank2-card {
        position: static;
        width: 100%;
        height: auto;
        aspect-ratio: 1;
        padding: 6px;
        border-radius: 14px;
        transform: none
    }

    body[data-iit-page=about] .ab-rank2-card:hover { transform: translateY(-3px) }
}

@media (max-width: 340px) {
    body[data-iit-page=about] .ab-rank2-cards { grid-template-columns: repeat(2, minmax(0, 1fr)) }
}

/* About rankings: smaller seal in the centre */
body[data-iit-page=about] .ab-rank2-emblem { width: 200px; height: 200px }
@media (max-width: 640px) { body[data-iit-page=about] .ab-rank2-emblem { width: 160px; height: 160px } }

/* Alumni page hero (copy of the About hero) */

body[data-iit-page=home] section.alumni-hero.ab-hero {
    position: relative;
    display: block;
    min-height: 0;
    padding: 0;
    overflow: hidden;
    isolation: isolate;
    background: linear-gradient(120deg, #072448 0%, #0a2f5c 55%, #0b3566 100%);
    background-image: linear-gradient(120deg, #072448 0%, #0a2f5c 55%, #0b3566 100%);
    color: #fff
}

body[data-iit-page=home] section.alumni-hero.ab-hero:before,
body[data-iit-page=home] section.alumni-hero.ab-hero:after { display: none }

body[data-iit-page=home] .alumni-hero .ab-hero-deco {
    position: absolute;
    z-index: -1;
    inset: 0;
    width: 100%;
    height: 100%;
    pointer-events: none
}

body[data-iit-page=home] .alumni-hero .ab-hero-shape { fill: rgba(255, 255, 255, .035) }
body[data-iit-page=home] .alumni-hero .ab-hero-shape--2 { fill: rgba(66, 153, 225, .07) }
body[data-iit-page=home] .alumni-hero .ab-hero-deco pattern circle { fill: rgba(255, 255, 255, .22) }

/* curved photo frame: orange arc, thin light ring, photo */
body[data-iit-page=home] .alumni-hero .ab-hero-media {
    position: absolute;
    z-index: 0;
    top: 0;
    right: 0;
    bottom: 0;
    width: 44%;
    pointer-events: none
}

body[data-iit-page=home] .alumni-hero .ab-hero-media span {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    clip-path: ellipse(100% 78% at 100% 50%)
}

body[data-iit-page=home] .alumni-hero .ab-hero-arc {
    width: calc(100% + 30px);
    background: linear-gradient(180deg, #ffa53a, #ff8b25 45%, #e8650f)
}

body[data-iit-page=home] .alumni-hero .ab-hero-ring {
    width: calc(100% + 10px);
    background: #dbeaf7
}

body[data-iit-page=home] .alumni-hero .ab-hero-photo {
    width: 100%;
    background-color: #0b3566;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover
}

body[data-iit-page=home] section.alumni-hero.ab-hero .ab-hero-inner {
    position: relative;
    z-index: 1;
    display: block;
    min-height: 0;
    padding: 34px 0 56px
}

body[data-iit-page=home] .alumni-hero .ab-hero-inner > * { max-width: 54% }

body[data-iit-page=home] .alumni-hero .ab-hero-crumb {
    display: flex;
    width: 360px;
    max-width: 100%;
    gap: 10px;
    padding-bottom: 16px;
    margin-bottom: 30px;
    background: linear-gradient(90deg, #ff8b25 0 26%, rgba(255, 255, 255, .28) 26% 100%) left bottom / 100% 2px no-repeat;
    color: rgba(255, 255, 255, .78);
    font-size: 15px
}

body[data-iit-page=home] .alumni-hero .ab-hero-crumb a {
    color: #fff;
    text-decoration: none
}

body[data-iit-page=home] .alumni-hero .ab-hero-crumb a:hover { text-decoration: underline }
body[data-iit-page=home] .alumni-hero .ab-hero-crumb span[aria-hidden] { color: #ff8b25 }

body[data-iit-page=home] .alumni-hero .ab-hero-eyebrow {
    margin-bottom: 14px;
    color: #fff;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: .24em;
    text-transform: uppercase
}

body[data-iit-page=home] section.alumni-hero.ab-hero h1 {
    margin: 0 0 18px;
    color: #fff;
    font-size: calc(58px * var(--iit-heading-scale));
    line-height: 1.06;
    letter-spacing: -.01em
}

body[data-iit-page=home] section.alumni-hero.ab-hero h1 em {
    display: inline-block;
    background: linear-gradient(90deg, #f7a823, #ff8b25 55%, #e8590c);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    font-style: normal
}

body[data-iit-page=home] section.alumni-hero.ab-hero .ab-hero-text {
    margin: 0 0 28px;
    color: #e3edf7;
    font-size: 18px;
    line-height: 1.6
}

body[data-iit-page=home] .alumni-hero .ab-hero-features {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 14px 0;
    margin: 0 0 32px;
    padding: 0;
    list-style: none
}

body[data-iit-page=home] .alumni-hero .ab-hero-features li {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 0 24px;
    border-left: 1px solid rgba(255, 255, 255, .35)
}

body[data-iit-page=home] .alumni-hero .ab-hero-features li:first-child {
    padding-left: 0;
    border-left: 0
}

body[data-iit-page=home] .alumni-hero .ab-hero-features i {
    flex: 0 0 auto;
    color: #fff;
    font-size: 26px
}

body[data-iit-page=home] .alumni-hero .ab-hero-features span {
    max-width: 150px;
    color: #fff;
    font-size: 15px;
    line-height: 1.35
}

body[data-iit-page=home] .alumni-hero .ab-hero-btn {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 15px 30px;
    border-radius: 999px;
    background: linear-gradient(90deg, #ff9a2e, #e8650f);
    box-shadow: 0 12px 26px rgba(232, 101, 15, .35);
    color: #fff;
    font-size: 16px;
    font-weight: 700;
    text-decoration: none;
    transition: transform .2s, box-shadow .2s
}

body[data-iit-page=home] .alumni-hero .ab-hero-btn:hover {
    color: #fff;
    transform: translateY(-2px);
    box-shadow: 0 16px 30px rgba(232, 101, 15, .45)
}

body[data-iit-page=home] .alumni-hero .ab-hero-inner > .ab-hero-features { max-width: 62%; flex-wrap: nowrap }
body[data-iit-page=home] .alumni-hero .ab-hero-features li { padding: 0 18px }
body[data-iit-page=home] .alumni-hero .ab-hero-features span { max-width: 130px; font-size: 14.5px }
body[data-iit-page=home] .alumni-hero .ab-hero-features i { width: 30px; text-align: center }
@media (max-width: 1100px) { body[data-iit-page=home] .alumni-hero .ab-hero-inner > .ab-hero-features { max-width: 100%; flex-wrap: wrap } }
@media (max-width: 860px) { body[data-iit-page=home] .alumni-hero .ab-hero-inner > .ab-hero-features { max-width: none } }

@media (max-width: 1100px) {
    body[data-iit-page=home] section.alumni-hero.ab-hero h1 { font-size: calc(46px * var(--iit-heading-scale)) }
    body[data-iit-page=home] .alumni-hero .ab-hero-media { width: 40% }
    body[data-iit-page=home] .alumni-hero .ab-hero-inner > * { max-width: 58% }
}

@media (max-width: 860px) {
    body[data-iit-page=home] section.alumni-hero.ab-hero { display: flex; flex-direction: column-reverse }
    body[data-iit-page=home] .alumni-hero .ab-hero-inner > * { max-width: none }
    body[data-iit-page=home] section.alumni-hero.ab-hero .ab-hero-inner { padding: 26px 0 40px }

    body[data-iit-page=home] .alumni-hero .ab-hero-media {
        position: relative;
        width: 100%;
        height: 240px
    }

    body[data-iit-page=home] .alumni-hero .ab-hero-media span {
        left: 0;
        width: 100%;
        clip-path: ellipse(85% 100% at 50% 100%)
    }

    body[data-iit-page=home] .alumni-hero .ab-hero-arc { top: -14px !important; background: linear-gradient(90deg, #ffa53a, #e8650f) }
    body[data-iit-page=home] .alumni-hero .ab-hero-ring { top: -5px !important }
    body[data-iit-page=home] .alumni-hero .ab-hero-media { margin-top: 0; overflow: visible }
}

@media (max-width: 640px) {
    body[data-iit-page=home] section.alumni-hero.ab-hero h1 { font-size: calc(34px * var(--iit-heading-scale)) }
    body[data-iit-page=home] section.alumni-hero.ab-hero .ab-hero-text { font-size: 16px }
    body[data-iit-page=home] .alumni-hero .ab-hero-crumb { margin-bottom: 20px }
    body[data-iit-page=home] .alumni-hero .ab-hero-features { flex-direction: column; align-items: flex-start }

    body[data-iit-page=home] .alumni-hero .ab-hero-features li {
        padding: 0;
        border-left: 0
    }

    body[data-iit-page=home] .alumni-hero .ab-hero-features span { max-width: none }
    body[data-iit-page=home] .alumni-hero .ab-hero-media { height: 200px }
}

/* About hero: shorter height */
body[data-iit-page=home] section.alumni-hero.ab-hero .ab-hero-inner { padding: 22px 0 36px }
body[data-iit-page=home] .alumni-hero .ab-hero-crumb { padding-bottom: 12px; margin-bottom: 18px; font-size: 14px }
body[data-iit-page=home] .alumni-hero .ab-hero-eyebrow { margin-bottom: 10px; font-size: 13px }
body[data-iit-page=home] section.alumni-hero.ab-hero h1 { margin-bottom: 12px; font-size: calc(48px * var(--iit-heading-scale)) }
body[data-iit-page=home] section.alumni-hero.ab-hero .ab-hero-text { margin-bottom: 20px; font-size: 16px; line-height: 1.55 }
body[data-iit-page=home] .alumni-hero .ab-hero-features { margin-bottom: 22px }
body[data-iit-page=home] .alumni-hero .ab-hero-features i { font-size: 22px }
body[data-iit-page=home] .alumni-hero .ab-hero-btn { padding: 12px 26px; font-size: 15px }
@media (max-width: 1100px) { body[data-iit-page=home] section.alumni-hero.ab-hero h1 { font-size: calc(40px * var(--iit-heading-scale)) } }
@media (max-width: 860px) { body[data-iit-page=home] .alumni-hero .ab-hero-media { height: 200px } }
@media (max-width: 640px) { body[data-iit-page=home] section.alumni-hero.ab-hero h1 { font-size: calc(32px * var(--iit-heading-scale)) } body[data-iit-page=home] .alumni-hero .ab-hero-media { height: 170px } }


/* Alumni page: category sections */
body[data-iit-page=home] .algc-cat { padding-top: 48px; padding-bottom: 48px }
body[data-iit-page=home] .algc-cat--alt { background: #fff }

body[data-iit-page=home] .algc-cat-head {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 22px
}

body[data-iit-page=home] .algc-cat-icon {
    display: grid;
    width: 46px;
    height: 46px;
    place-items: center;
    border-radius: 50%;
    background: #e8f0fe;
    color: #1a73e8;
    font-size: 19px
}

body[data-iit-page=home] .algc-cat-head h2 {
    margin: 0;
    color: #14285a;
    font-size: calc(30px * var(--iit-heading-scale))
}

body[data-iit-page=home] .algc-cat-count {
    padding: 4px 12px;
    border-radius: 999px;
    background: #fff4e8;
    color: #c2600c;
    font-size: 13px;
    font-weight: 700
}

body[data-iit-page=home] .alumni-hero .ab-hero-features a {
    color: #fff;
    text-decoration: none
}

body[data-iit-page=home] .alumni-hero .ab-hero-features a:hover { text-decoration: underline }
body[data-iit-page=home] .algc-cat { scroll-margin-top: 90px }

@media (max-width: 640px) {
    body[data-iit-page=home] .algc-cat-head h2 { font-size: calc(24px * var(--iit-heading-scale)) }
}

/* Alumni page: slider arrows on the right of each category heading */
body[data-iit-page=home] .algc-cat-head .algc-nav { margin-left: auto }
@media (max-width: 640px) { body[data-iit-page=home] .algc-cat-head { flex-wrap: wrap } }

/* Alumni page: category tab buttons under the hero */
body[data-iit-page=home] .algc-tabs-bar {
    position: relative;
    z-index: 2;
    padding: 26px 0 0;
    background: #f7faff
}

body[data-iit-page=home] .algc-tabs {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px
}

body[data-iit-page=home] .algc-tab {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 18px;
    border: 1px solid #d6e2f0;
    border-radius: 999px;
    background: #fff;
    box-shadow: 0 4px 12px rgba(20, 40, 90, .06);
    color: #14285a;
    font-size: 15px;
    font-weight: 600;
    cursor: pointer;
    transition: background .2s, color .2s, border-color .2s, transform .2s
}

body[data-iit-page=home] .algc-tab i { color: #1a73e8 }

body[data-iit-page=home] .algc-tab span {
    min-width: 24px;
    padding: 1px 7px;
    border-radius: 999px;
    background: #fff4e8;
    color: #c2600c;
    font-size: 12px;
    font-weight: 700
}

body[data-iit-page=home] .algc-tab:hover { border-color: #1a73e8; transform: translateY(-1px) }

body[data-iit-page=home] .algc-tab.is-active {
    border-color: #1a73e8;
    background: #1a73e8;
    color: #fff;
    box-shadow: 0 8px 18px rgba(26, 115, 232, .28)
}

body[data-iit-page=home] .algc-tab.is-active i { color: #fff }
body[data-iit-page=home] .algc-tab.is-active span { background: rgba(255, 255, 255, .22); color: #fff }
body[data-iit-page=home] .algc-cat[hidden] { display: none }

@media (max-width: 640px) {
    body[data-iit-page=home] .algc-tabs {
        flex-wrap: nowrap;
        justify-content: flex-start;
        overflow-x: auto;
        padding-bottom: 6px;
        scrollbar-width: none
    }

    body[data-iit-page=home] .algc-tab { flex: 0 0 auto; padding: 9px 14px; font-size: 14px }
}

/* Home hero: less space at the top */
@media (min-width: 801px) { body[data-iit-page=home] .hero .wrap { min-height: 0; padding-top: 30px; padding-bottom: 24px } }
@media (max-width: 800px) { body[data-iit-page=home] .hero .wrap { padding-top: 26px } }

/* News & Press: campus photo as a compact fading box on the right of the heading (same look as the programme blocks) */
body[data-iit-page=home] #press .press-head {
    position: relative;
    isolation: isolate;
    min-height: 190px
}

body[data-iit-page=home] #press .press-head .press-campus-visual {
    position: absolute;
    z-index: -1;
    top: -24px;
    right: 0;
    bottom: -16px;
    width: 46%;
    height: auto;
    overflow: hidden;
    border-radius: 18px;
    opacity: .55;
    -webkit-mask-image: linear-gradient(90deg, transparent, #000 55%);
    mask-image: linear-gradient(90deg, transparent, #000 55%)
}

body[data-iit-page=home] #press .press-head .press-campus-visual img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center 40%
}

body[data-iit-page=home] #press .press-head .press-note:after {
    display: block;
    width: 80px;
    height: 4px;
    margin: 8px 0 0 auto;
    border-radius: 4px;
    background: #ff8b25;
    content: ""
}

@media (max-width: 900px) {
    body[data-iit-page=home] #press .press-head .press-campus-visual {
        top: auto;
        bottom: -10px;
        width: 70%;
        height: 60%;
        opacity: .4
    }

    body[data-iit-page=home] #press .press-head .press-note:after { margin-left: 0 }
}
@media (min-width: 901px) { body[data-iit-page=home] #press .press-head .press-note { padding-right: 24px } }

/* Contact page hero (copy of the About hero) */

body[data-iit-page=contact] .hero.ab-hero {
    position: relative;
    display: block;
    min-height: 0;
    padding: 0;
    overflow: hidden;
    isolation: isolate;
    background: linear-gradient(120deg, #072448 0%, #0a2f5c 55%, #0b3566 100%);
    background-image: linear-gradient(120deg, #072448 0%, #0a2f5c 55%, #0b3566 100%);
    color: #fff
}

body[data-iit-page=contact] .hero.ab-hero:before,
body[data-iit-page=contact] .hero.ab-hero:after { display: none }

body[data-iit-page=contact] .ab-hero-deco {
    position: absolute;
    z-index: -1;
    inset: 0;
    width: 100%;
    height: 100%;
    pointer-events: none
}

body[data-iit-page=contact] .ab-hero-shape { fill: rgba(255, 255, 255, .035) }
body[data-iit-page=contact] .ab-hero-shape--2 { fill: rgba(66, 153, 225, .07) }
body[data-iit-page=contact] .ab-hero-deco pattern circle { fill: rgba(255, 255, 255, .22) }

/* curved photo frame: orange arc, thin light ring, photo */
body[data-iit-page=contact] .ab-hero-media {
    position: absolute;
    z-index: 0;
    top: 0;
    right: 0;
    bottom: 0;
    width: 44%;
    pointer-events: none
}

body[data-iit-page=contact] .ab-hero-media span {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    clip-path: ellipse(100% 78% at 100% 50%)
}

body[data-iit-page=contact] .ab-hero-arc {
    width: calc(100% + 30px);
    background: linear-gradient(180deg, #ffa53a, #ff8b25 45%, #e8650f)
}

body[data-iit-page=contact] .ab-hero-ring {
    width: calc(100% + 10px);
    background: #dbeaf7
}

body[data-iit-page=contact] .ab-hero-photo {
    width: 100%;
    background-color: #0b3566;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover
}

body[data-iit-page=contact] .hero.ab-hero .ab-hero-inner {
    position: relative;
    z-index: 1;
    display: block;
    min-height: 0;
    padding: 34px 0 56px
}

body[data-iit-page=contact] .ab-hero-inner > * { max-width: 54% }

body[data-iit-page=contact] .ab-hero-crumb {
    display: flex;
    width: 360px;
    max-width: 100%;
    gap: 10px;
    padding-bottom: 16px;
    margin-bottom: 30px;
    background: linear-gradient(90deg, #ff8b25 0 26%, rgba(255, 255, 255, .28) 26% 100%) left bottom / 100% 2px no-repeat;
    color: rgba(255, 255, 255, .78);
    font-size: 15px
}

body[data-iit-page=contact] .ab-hero-crumb a {
    color: #fff;
    text-decoration: none
}

body[data-iit-page=contact] .ab-hero-crumb a:hover { text-decoration: underline }
body[data-iit-page=contact] .ab-hero-crumb span[aria-hidden] { color: #ff8b25 }

body[data-iit-page=contact] .ab-hero-eyebrow {
    margin-bottom: 14px;
    color: #fff;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: .24em;
    text-transform: uppercase
}

body[data-iit-page=contact] .hero.ab-hero h1 {
    margin: 0 0 18px;
    color: #fff;
    font-size: calc(58px * var(--iit-heading-scale));
    line-height: 1.06;
    letter-spacing: -.01em
}

body[data-iit-page=contact] .hero.ab-hero h1 em {
    display: inline-block;
    background: linear-gradient(90deg, #f7a823, #ff8b25 55%, #e8590c);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    font-style: normal
}

body[data-iit-page=contact] .hero.ab-hero .ab-hero-text {
    margin: 0 0 28px;
    color: #e3edf7;
    font-size: 18px;
    line-height: 1.6
}

body[data-iit-page=contact] .ab-hero-features {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 14px 0;
    margin: 0 0 32px;
    padding: 0;
    list-style: none
}

body[data-iit-page=contact] .ab-hero-features li {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 0 24px;
    border-left: 1px solid rgba(255, 255, 255, .35)
}

body[data-iit-page=contact] .ab-hero-features li:first-child {
    padding-left: 0;
    border-left: 0
}

body[data-iit-page=contact] .ab-hero-features i {
    flex: 0 0 auto;
    color: #fff;
    font-size: 26px
}

body[data-iit-page=contact] .ab-hero-features span {
    max-width: 150px;
    color: #fff;
    font-size: 15px;
    line-height: 1.35
}

body[data-iit-page=contact] .ab-hero-btn {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 15px 30px;
    border-radius: 999px;
    background: linear-gradient(90deg, #ff9a2e, #e8650f);
    box-shadow: 0 12px 26px rgba(232, 101, 15, .35);
    color: #fff;
    font-size: 16px;
    font-weight: 700;
    text-decoration: none;
    transition: transform .2s, box-shadow .2s
}

body[data-iit-page=contact] .ab-hero-btn:hover {
    color: #fff;
    transform: translateY(-2px);
    box-shadow: 0 16px 30px rgba(232, 101, 15, .45)
}

body[data-iit-page=contact] .ab-hero-inner > .ab-hero-features { max-width: 62%; flex-wrap: nowrap }
body[data-iit-page=contact] .ab-hero-features li { padding: 0 18px }
body[data-iit-page=contact] .ab-hero-features span { max-width: 130px; font-size: 14.5px }
body[data-iit-page=contact] .ab-hero-features i { width: 30px; text-align: center }
@media (max-width: 1100px) { body[data-iit-page=contact] .ab-hero-inner > .ab-hero-features { max-width: 100%; flex-wrap: wrap } }
@media (max-width: 860px) { body[data-iit-page=contact] .ab-hero-inner > .ab-hero-features { max-width: none } }

@media (max-width: 1100px) {
    body[data-iit-page=contact] .hero.ab-hero h1 { font-size: calc(46px * var(--iit-heading-scale)) }
    body[data-iit-page=contact] .ab-hero-media { width: 40% }
    body[data-iit-page=contact] .ab-hero-inner > * { max-width: 58% }
}

@media (max-width: 860px) {
    body[data-iit-page=contact] .hero.ab-hero { display: flex; flex-direction: column-reverse }
    body[data-iit-page=contact] .ab-hero-inner > * { max-width: none }
    body[data-iit-page=contact] .hero.ab-hero .ab-hero-inner { padding: 26px 0 40px }

    body[data-iit-page=contact] .ab-hero-media {
        position: relative;
        width: 100%;
        height: 240px
    }

    body[data-iit-page=contact] .ab-hero-media span {
        left: 0;
        width: 100%;
        clip-path: ellipse(85% 100% at 50% 100%)
    }

    body[data-iit-page=contact] .ab-hero-arc { top: -14px !important; background: linear-gradient(90deg, #ffa53a, #e8650f) }
    body[data-iit-page=contact] .ab-hero-ring { top: -5px !important }
    body[data-iit-page=contact] .ab-hero-media { margin-top: 0; overflow: visible }
}

@media (max-width: 640px) {
    body[data-iit-page=contact] .hero.ab-hero h1 { font-size: calc(34px * var(--iit-heading-scale)) }
    body[data-iit-page=contact] .hero.ab-hero .ab-hero-text { font-size: 16px }
    body[data-iit-page=contact] .ab-hero-crumb { margin-bottom: 20px }
    body[data-iit-page=contact] .ab-hero-features { flex-direction: column; align-items: flex-start }

    body[data-iit-page=contact] .ab-hero-features li {
        padding: 0;
        border-left: 0
    }

    body[data-iit-page=contact] .ab-hero-features span { max-width: none }
    body[data-iit-page=contact] .ab-hero-media { height: 200px }
}

/* About hero: shorter height */
body[data-iit-page=contact] .hero.ab-hero .ab-hero-inner { padding: 22px 0 36px }
body[data-iit-page=contact] .ab-hero-crumb { padding-bottom: 12px; margin-bottom: 18px; font-size: 14px }
body[data-iit-page=contact] .ab-hero-eyebrow { margin-bottom: 10px; font-size: 13px }
body[data-iit-page=contact] .hero.ab-hero h1 { margin-bottom: 12px; font-size: calc(48px * var(--iit-heading-scale)) }
body[data-iit-page=contact] .hero.ab-hero .ab-hero-text { margin-bottom: 20px; font-size: 16px; line-height: 1.55 }
body[data-iit-page=contact] .ab-hero-features { margin-bottom: 22px }
body[data-iit-page=contact] .ab-hero-features i { font-size: 22px }
body[data-iit-page=contact] .ab-hero-btn { padding: 12px 26px; font-size: 15px }
@media (max-width: 1100px) { body[data-iit-page=contact] .hero.ab-hero h1 { font-size: calc(40px * var(--iit-heading-scale)) } }
@media (max-width: 860px) { body[data-iit-page=contact] .ab-hero-media { height: 200px } }
@media (max-width: 640px) { body[data-iit-page=contact] .hero.ab-hero h1 { font-size: calc(32px * var(--iit-heading-scale)) } body[data-iit-page=contact] .ab-hero-media { height: 170px } }


body[data-iit-page=contact] .ct-hero-contacts span { max-width: none }

body[data-iit-page=contact] .ct-hero-contacts small {
    display: block;
    color: rgba(255, 255, 255, .7);
    font-size: 12px;
    letter-spacing: .04em
}

body[data-iit-page=contact] .ct-hero-contacts a {
    color: #fff;
    font-weight: 600;
    text-decoration: none
}

body[data-iit-page=contact] .ct-hero-contacts a:hover { text-decoration: underline }

/* Contact page: full-width map at the bottom with an address card */
body[data-iit-page=contact] .ct-map {
    position: relative;
    min-height: 440px;
    background: #e6edf3
}

body[data-iit-page=contact] .ct-map-frame {
    position: absolute;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
    border: 0
}

body[data-iit-page=contact] .ct-map-inner {
    position: relative;
    display: flex;
    min-height: 440px;
    align-items: center;
    pointer-events: none
}

body[data-iit-page=contact] .ct-map-card {
    width: min(360px, 100%);
    box-sizing: border-box;
    padding: 26px 26px 24px;
    border-top: 4px solid #ff8b25;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 18px 40px rgba(0, 47, 84, .22);
    pointer-events: auto
}

body[data-iit-page=contact] .ct-map-pin {
    display: grid;
    width: 46px;
    height: 46px;
    place-items: center;
    margin-bottom: 14px;
    border-radius: 50%;
    background: #00487e;
    color: #fff;
    font-size: 19px
}

body[data-iit-page=contact] .ct-map-card h2 {
    margin: 0 0 8px;
    color: #0d2a5c;
    font-size: calc(24px * var(--iit-heading-scale))
}

body[data-iit-page=contact] .ct-map-card p {
    margin: 0 0 12px;
    color: #4a5b70;
    font-size: 14.5px;
    line-height: 1.6
}

body[data-iit-page=contact] .ct-map-line {
    display: inline-flex;
    gap: 8px;
    align-items: center;
    margin-bottom: 18px;
    color: #00487e;
    font-weight: 600;
    text-decoration: none
}

body[data-iit-page=contact] .ct-map-btn {
    display: flex;
    width: fit-content;
    align-items: center;
    gap: 10px;
    padding: 11px 20px;
    border-radius: 999px;
    background: linear-gradient(90deg, #ff9a2e, #e8650f);
    color: #fff;
    font-weight: 700;
    text-decoration: none
}

body[data-iit-page=contact] .ct-map-btn:hover { color: #fff; filter: brightness(1.05) }

@media (max-width: 640px) {
    body[data-iit-page=contact] .ct-map { min-height: 0 }
    body[data-iit-page=contact] .ct-map-frame { position: relative; height: 300px }
    body[data-iit-page=contact] .ct-map-inner { min-height: 0; padding: 0 0 30px }
    body[data-iit-page=contact] .ct-map-card { margin-top: -40px }
}

/* Alumni page: one mixed grid; tabs sit at the top of it, colours follow the visible cards */
body[data-iit-page=home] #alumni-list .algc-tabs { justify-content: flex-start; margin-bottom: 26px }
body[data-iit-page=home] .algc-card[hidden] { display: none }
body[data-iit-page=home] .algc-card[data-tone="0"] { --c: var(--g-blue); --c2: #1a73e8 }
body[data-iit-page=home] .algc-card[data-tone="1"] { --c: var(--g-red); --c2: var(--g-yellow) }
body[data-iit-page=home] .algc-card[data-tone="2"] { --c: var(--g-green); --c2: var(--g-blue) }
body[data-iit-page=home] .algc-card[data-tone="3"] { --c: var(--g-yellow); --c2: var(--g-red) }
body[data-iit-page=home] .algc-cat-count b { font-weight: 700 }

/* Tablet fixes (22 Oct): contact form full width, press note aligned left */
@media (max-width: 960px) { body[data-iit-page=contact] .contactgrid { grid-template-columns: 1fr; gap: 36px } }
@media (max-width: 900px) { body[data-iit-page=home] #press .press-head .press-note { padding-right: 0; text-align: left } }

/* Hero banner design "Full background" (Admin -> Banner Slides -> Design): photo / video over the whole banner, text on the left */
body[data-iit-page=home] .hero-bgs {
    position: absolute;
    inset: 0;
    z-index: 0
}

body[data-iit-page=home] .hero-bg {
    position: absolute;
    inset: 0;
    opacity: 0;
    visibility: hidden;
    transition: opacity .9s ease, visibility .9s ease
}

body[data-iit-page=home] .hero-bg.is-active {
    opacity: 1;
    visibility: visible
}

body[data-iit-page=home] .hero-bg-media {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center top
}

/* Congress Blue shade on the left so the text stays readable */
body[data-iit-page=home] .hero-bg:has(.hero-bg-media):after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(0, 36, 64, .92) 0%, rgba(0, 54, 95, .78) 34%, rgba(0, 72, 126, .32) 62%, rgba(0, 72, 126, 0) 85%)
}

body[data-iit-page=home] .hero.hero--on-bg:before {
    opacity: 0
}

body[data-iit-page=home] .hero .hero-slides-track {
    position: relative;
    z-index: 1
}

body[data-iit-page=home] .hero .wrap.hero-banner-slide--background {
    grid-template-columns: minmax(0, 700px);
    justify-content: start;
    align-content: end;
    min-height: 480px;
    padding-top: 90px;
    padding-bottom: 36px
}

body[data-iit-page=home] .hero .hero-banner-slide--background p {
    color: #e6eef6
}

@media (max-width: 800px) {
    body[data-iit-page=home] .hero .wrap.hero-banner-slide--background {
        min-height: 0
    }

    body[data-iit-page=home] .hero-bg:has(.hero-bg-media):after {
        background: linear-gradient(180deg, rgba(0, 36, 64, .7) 0%, rgba(0, 48, 84, .86) 100%)
    }
}

@media (prefers-reduced-motion: reduce) {
    body[data-iit-page=home] .hero-bg {
        transition: none
    }
}

/* Home "Our Programs" slider design (home-sections/programs-slider, Admin -> Our Programs -> Home page design) */
body[data-iit-page] .pgs .program-category-anchor {
    position: absolute;
    top: 0;
    display: block;
    height: 0;
    scroll-margin-top: 110px
}

body[data-iit-page] .pgs {
    position: relative
}

body[data-iit-page] .pgs-head {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 20px;
    padding-bottom: 18px;
    margin-bottom: 18px;
    border-bottom: 1px solid #cfdde7
}

body[data-iit-page] .pgs-head h2 {
    margin-top: 10px;
    font-size: calc(clamp(24px, 2.6vw, 34px) * var(--iit-heading-scale))
}

body[data-iit-page] .pgs-explore {
    flex: none;
    padding: 12px 22px;
    border-radius: 10px;
    background: #00487e;
    color: #fff;
    font-weight: 700;
    text-decoration: none;
    white-space: nowrap;
    transition: background .2s
}

body[data-iit-page] .pgs-explore:hover {
    background: #ff8b25;
    color: #fff
}

body[data-iit-page] .pgs-tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 6px 30px;
    margin-bottom: 12px
}

body[data-iit-page] .pgs-tab {
    padding: 4px 0;
    border: 0;
    border-bottom: 2px solid transparent;
    background: none;
    color: #00487e;
    font: 500 calc(16px * var(--iit-text-scale))/1.3 var(--iit-font-body);
    cursor: pointer
}

body[data-iit-page] .pgs-tab.is-active {
    border-color: #00487e;
    font-weight: 700
}

body[data-iit-page] .pgs-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 18px
}

body[data-iit-page] .pgs-chip {
    padding: 8px 16px;
    border: 0;
    border-radius: 999px;
    background: none;
    color: #0d2a40;
    font: 500 calc(13px * var(--iit-text-scale))/1.2 var(--iit-font-body);
    cursor: pointer
}

body[data-iit-page] .pgs-chip.is-active {
    background: #d3e5f3;
    color: #00487e;
    font-weight: 700
}

body[data-iit-page] .pgs-chip.is-off,
body[data-iit-page] .pgs-card.is-off {
    display: none
}

body[data-iit-page] .pgs-slider {
    position: relative
}

body[data-iit-page] .pgs-track {
    display: flex;
    gap: 22px;
    padding: 18px 4px 14px;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scrollbar-width: none
}

body[data-iit-page] .pgs-track::-webkit-scrollbar {
    display: none
}

body[data-iit-page] .pgs-card {
    position: relative;
    display: flex;
    flex-direction: column;
    flex: 0 0 calc((100% - 66px) / 4);
    padding: 14px 14px 18px;
    border-radius: 22px;
    background: #fff;
    box-shadow: 0 6px 22px rgba(0, 40, 80, .1);
    scroll-snap-align: start
}

body[data-iit-page] .pgs-ribbon {
    position: absolute;
    top: -12px;
    left: 12px;
    z-index: 2;
    min-width: 130px;
    padding: 5px 32px 5px 22px;
    background: #ff8b25;
    color: #fff;
    font: 700 calc(13px * var(--iit-text-scale))/1.3 var(--iit-font-body);
    text-align: center;
    clip-path: polygon(0 0, 100% 0, 88% 100%, 0 100%)
}

body[data-iit-page] .pgs-photo {
    position: relative;
    aspect-ratio: 4 / 3;
    overflow: hidden;
    border: 2px solid #ff8b25;
    border-radius: 18px;
    background: #ebfafd
}

body[data-iit-page] .pgs-photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block
}

body[data-iit-page] .pgs-art {
    display: grid;
    place-items: center;
    height: 100%;
    padding: 12px;
    font-size: 22px;
    font-weight: 700;
    text-align: center
}

body[data-iit-page] .pgs-partner {
    position: absolute;
    right: 0;
    bottom: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2px;
    padding: 6px 10px;
    border-radius: 14px 0 0 0;
    background: #fff
}

body[data-iit-page] .pgs-partner small {
    color: #00487e;
    font-size: 10px
}

body[data-iit-page] .pgs-partner img {
    width: auto;
    height: 28px
}

body[data-iit-page] .pgs-card h3 {
    margin: 14px 0 10px;
    color: #0d2a40;
    font: 600 calc(19px * var(--iit-text-scale))/1.25 var(--iit-font-body)
}

body[data-iit-page] .pgs-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 6px 16px;
    margin: 0 0 16px;
    padding: 0;
    list-style: none;
    color: #4a5c6a;
    font-size: calc(13px * var(--iit-text-scale))
}

body[data-iit-page] .pgs-meta i {
    margin-right: 6px;
    color: #ff8b25
}

body[data-iit-page] .pgs-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    margin-top: auto
}

body[data-iit-page] .pgs-actions > :only-child {
    grid-column: 1 / -1
}

body[data-iit-page] .pgs-actions .card-status {
    grid-column: auto;
    min-height: 42px;
    margin: 0;
    padding: 6px 8px;
    border-radius: 8px;
    background: #fff4ea;
    color: #b35400;
    font-size: calc(12px * var(--iit-text-scale));
    text-align: center
}

body[data-iit-page] .pgs-arrow {
    position: absolute;
    top: 42%;
    z-index: 3;
    display: grid;
    place-items: center;
    width: 44px;
    height: 44px;
    border: 1px solid #cfdde7;
    border-radius: 50%;
    background: #fff;
    box-shadow: 0 4px 14px rgba(0, 40, 80, .15);
    color: #00487e;
    cursor: pointer;
    transition: opacity .2s
}

body[data-iit-page] .pgs-arrow--prev {
    left: -20px
}

body[data-iit-page] .pgs-arrow--next {
    right: -20px
}

body[data-iit-page] .pgs-arrow:disabled {
    opacity: 0;
    pointer-events: none
}

@media (max-width: 1100px) {
    body[data-iit-page] .pgs-card {
        flex-basis: calc((100% - 44px) / 3)
    }
}

@media (max-width: 820px) {
    body[data-iit-page] .pgs-card {
        flex-basis: calc((100% - 22px) / 2)
    }

    body[data-iit-page] .pgs-arrow--prev {
        left: -6px
    }

    body[data-iit-page] .pgs-arrow--next {
        right: -6px
    }
}

@media (max-width: 560px) {
    body[data-iit-page] .pgs-head {
        flex-direction: column;
        align-items: flex-start
    }

    body[data-iit-page] .pgs-card {
        flex-basis: 84%
    }

    body[data-iit-page] .pgs-tabs {
        flex-wrap: nowrap;
        overflow-x: auto;
        gap: 22px
    }

    body[data-iit-page] .pgs-tab {
        white-space: nowrap
    }
}

body[data-iit-page] .pgs-actions {
    grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr)
}

body[data-iit-page] .pgs-actions .card-btn {
    padding: 6px 8px;
    font-size: calc(12.5px * var(--iit-text-scale))
}

@media (max-width: 560px) {
    body[data-iit-page] .pgs-chips {
        flex-wrap: nowrap;
        overflow-x: auto;
        scrollbar-width: none
    }

    body[data-iit-page] .pgs-chip {
        white-space: nowrap
    }
}

/* program photos are square: show them whole (portrait ones keep the face, cropped at the bottom) */
body[data-iit-page] .pgs-photo {
    aspect-ratio: 1 / 1
}

body[data-iit-page] .pgs-photo img {
    object-position: center top
}

/* Programs: all cards at once in a grid (4 / 3 / 2 per row); phones keep the swipe slider */
@media (min-width: 561px) {
    body[data-iit-page] .pgs-track {
        flex-wrap: wrap;
        row-gap: 34px;
        overflow: visible;
        scroll-snap-type: none
    }

    body[data-iit-page] .pgs-arrow {
        display: none
    }
}

body[data-iit-page] .pgs-actions > .card-status:only-child {
    grid-column: 1 / -1
}

body[data-iit-page] .pgs-partner img {
    height: 40px
}

/* Programs: IIIT Ranchi block under the IIT Patna cards */
body[data-iit-page] .pgs-group.is-off {
    display: none
}

body[data-iit-page] .pgs-group + .pgs-group {
    margin-top: 34px
}

body[data-iit-page] .pgs-group-head {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 8px
}

body[data-iit-page] .pgs-group-head img {
    flex: none;
    width: auto;
    height: 64px
}

body[data-iit-page] .pgs-group-head h3 {
    margin: 0;
    font: 700 calc(clamp(18px, 1.8vw, 24px) * var(--iit-heading-scale))/1.25 var(--iit-font-heading)
}

body[data-iit-page] .pgs-arrow {
    display: none
}

@media (max-width: 560px) {
    body[data-iit-page] .pgs-group-head img {
        height: 48px
    }
}

/* the IIIT Ranchi logo has white text: show it on Congress Blue */
body[data-iit-page] .pgs-group-head img {
    height: 70px;
    padding: 8px 14px;
    border-radius: 12px;
    background: #00487e
}

body[data-iit-page] .pgs-partner {
    background: #00487e
}

body[data-iit-page] .pgs-partner small {
    color: #fff
}

/* Programs: smaller cards (5 / 4 / 3 per row) */
body[data-iit-page] .pgs-track {
    gap: 18px
}

@media (min-width: 561px) {
    body[data-iit-page] .pgs-track {
        row-gap: 30px
    }
}

body[data-iit-page] .pgs-card {
    flex-basis: calc((100% - 72px) / 5);
    padding: 10px 10px 14px;
    border-radius: 18px
}

body[data-iit-page] .pgs-photo {
    border-radius: 14px
}

body[data-iit-page] .pgs-ribbon {
    top: -10px;
    left: 10px;
    min-width: 110px;
    padding: 4px 26px 4px 16px;
    font-size: calc(11.5px * var(--iit-text-scale))
}

body[data-iit-page] .pgs-card h3 {
    margin: 10px 0 8px;
    font-size: calc(16px * var(--iit-text-scale))
}

body[data-iit-page] .pgs-meta {
    gap: 4px 12px;
    margin-bottom: 12px;
    font-size: calc(12px * var(--iit-text-scale))
}

body[data-iit-page] .pgs-actions {
    gap: 8px
}

body[data-iit-page] .pgs-actions .card-btn,
body[data-iit-page] .pgs-actions .card-status {
    min-height: 38px;
    padding: 5px 6px;
    font-size: calc(11.5px * var(--iit-text-scale))
}

body[data-iit-page] .pgs-partner {
    padding: 4px 8px
}

body[data-iit-page] .pgs-partner small {
    font-size: 9px
}

body[data-iit-page] .pgs-partner img {
    height: 30px
}

@media (max-width: 1100px) {
    body[data-iit-page] .pgs-card {
        flex-basis: calc((100% - 54px) / 4)
    }
}

@media (max-width: 820px) {
    body[data-iit-page] .pgs-card {
        flex-basis: calc((100% - 36px) / 3)
    }
}

@media (max-width: 560px) {
    body[data-iit-page] .pgs-card {
        flex-basis: 72%
    }
}

/* Programs: 4 cards per row again, lower cards (wider photo, face kept at the top) */
body[data-iit-page] .pgs-card {
    flex-basis: calc((100% - 54px) / 4)
}

body[data-iit-page] .pgs-photo {
    aspect-ratio: 4 / 3
}

@media (max-width: 1100px) {
    body[data-iit-page] .pgs-card {
        flex-basis: calc((100% - 36px) / 3)
    }
}

@media (max-width: 820px) {
    body[data-iit-page] .pgs-card {
        flex-basis: calc((100% - 18px) / 2)
    }
}

@media (max-width: 560px) {
    body[data-iit-page] .pgs-card {
        flex-basis: 78%
    }
}

/* Home "Our Alumni" scrolling design (home-sections/alumni-scroll, Admin -> Our Alumni -> Home page design) */
body[data-iit-page] .als {
    overflow: hidden;
    background: linear-gradient(180deg, #ffffff 0%, #ebfafd 100%)
}

body[data-iit-page] .als-head {
    max-width: 760px;
    margin: 0 auto 10px;
    text-align: center
}

body[data-iit-page] .als-head h2 {
    margin: 10px 0 8px;
    color: #00487e;
    font-size: calc(clamp(26px, 3vw, 40px) * var(--iit-heading-scale))
}

body[data-iit-page] .als-head p {
    margin: 0;
    color: #3d5566
}

body[data-iit-page] .als-row {
    overflow: hidden;
    padding: 70px 0 6px
}

body[data-iit-page] .als-row + .als-row {
    padding-top: 64px
}

body[data-iit-page] .als-track {
    display: flex;
    gap: 24px;
    width: max-content;
    animation: als-move var(--als-time, 40s) linear infinite
}

body[data-iit-page] .als-row--reverse .als-track {
    animation-direction: reverse;
    margin-left: -120px
}

body[data-iit-page] .als-row:hover .als-track {
    animation-play-state: paused
}

@keyframes als-move {
    from { transform: translateX(0) }
    to { transform: translateX(calc(-50% - 12px)) }
}

body[data-iit-page] .als-card {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    flex: none;
    width: 300px;
    min-height: 260px;
    padding: 96px 20px 22px;
    border: 1px solid #d7e8f0;
    border-radius: 26px;
    background: linear-gradient(180deg, #eef6fa 0%, #ffffff 100%);
    text-align: center
}

body[data-iit-page] .als-photo {
    position: absolute;
    top: -60px;
    left: 50%;
    display: grid;
    place-items: center;
    width: 140px;
    height: 140px;
    overflow: hidden;
    border: 4px solid #fff;
    border-radius: 50%;
    background: #00487e;
    box-shadow: 0 8px 22px rgba(0, 40, 80, .18);
    transform: translateX(-50%)
}

body[data-iit-page] .als-photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center top
}

body[data-iit-page] .als-photo span {
    color: #fff;
    font-size: 34px;
    font-weight: 700
}

body[data-iit-page] .als-card h3 {
    margin: 0 0 6px;
    color: #0d2a40;
    font: 700 calc(20px * var(--iit-text-scale))/1.25 var(--iit-font-body)
}

body[data-iit-page] .als-card p {
    margin: 0 0 14px;
    color: #3d5566;
    font-size: calc(14.5px * var(--iit-text-scale));
    line-height: 1.45
}

body[data-iit-page] .als-co {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 40px;
    margin-top: auto;
    color: #00487e;
    font-weight: 700
}

body[data-iit-page] .als-co img {
    max-width: 150px;
    max-height: 40px;
    object-fit: contain
}

body[data-iit-page] .als-more {
    margin-top: 30px;
    text-align: center
}

body[data-iit-page] .als-more a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 11px 22px;
    border-radius: 10px;
    background: #00487e;
    color: #fff;
    font-weight: 700;
    text-decoration: none
}

body[data-iit-page] .als-more a:hover {
    background: #ff8b25
}

@media (max-width: 560px) {
    body[data-iit-page] .als-card {
        width: 250px;
        padding-top: 84px
    }

    body[data-iit-page] .als-photo {
        top: -50px;
        width: 118px;
        height: 118px
    }
}

@media (prefers-reduced-motion: reduce) {
    body[data-iit-page] .als-track {
        animation: none
    }

    body[data-iit-page] .als-row {
        overflow-x: auto
    }
}

/* Alumni scroll design: one row slider with arrows and dots below (replaces the moving marquee) */
body[data-iit-page] .als-track {
    display: flex;
    column-gap: 24px;
    width: auto;
    padding: 74px 4px 8px;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    animation: none
}

body[data-iit-page] .als-track::-webkit-scrollbar {
    display: none
}

body[data-iit-page] .als-card {
    flex: 0 0 calc((100% - 72px) / 4);
    width: auto;
    scroll-snap-align: start
}

body[data-iit-page] .als-nav {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    margin-top: 22px
}

body[data-iit-page] .als-arrow {
    display: grid;
    place-items: center;
    width: 42px;
    height: 42px;
    border: 0;
    border-radius: 50%;
    background: #00487e;
    color: #fff;
    cursor: pointer;
    transition: background .2s, opacity .2s
}

body[data-iit-page] .als-arrow:hover:not(:disabled) {
    background: #ff8b25
}

body[data-iit-page] .als-arrow:disabled {
    opacity: .35;
    cursor: default
}

body[data-iit-page] .als-dots {
    display: flex;
    gap: 7px
}

body[data-iit-page] .als-dots button {
    width: 9px;
    height: 9px;
    padding: 0;
    border: 0;
    border-radius: 999px;
    background: #b9cfdd;
    cursor: pointer;
    transition: width .3s, background .3s
}

body[data-iit-page] .als-dots button.is-active {
    width: 26px;
    background: #ff8b25
}

body[data-iit-page] .als-more {
    margin-top: 22px
}

@media (max-width: 1100px) {
    body[data-iit-page] .als-card {
        flex-basis: calc((100% - 48px) / 3)
    }
}

@media (max-width: 820px) {
    body[data-iit-page] .als-card {
        flex-basis: calc((100% - 24px) / 2)
    }
}

@media (max-width: 560px) {
    body[data-iit-page] .als-card {
        flex-basis: 82%
    }

    body[data-iit-page] .als-track {
        padding-top: 62px
    }
}

/* /alumni page with the round-photo cards: all in a grid */
body[data-iit-page] .als-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 90px 24px;
    padding-top: 74px
}

body[data-iit-page] .als-grid .als-card {
    width: auto
}

body[data-iit-page] .als-card[hidden] {
    display: none
}

@media (max-width: 1100px) {
    body[data-iit-page] .als-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr))
    }
}

@media (max-width: 820px) {
    body[data-iit-page] .als-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }
}

@media (max-width: 560px) {
    body[data-iit-page] .als-grid {
        grid-template-columns: 1fr;
        gap: 76px;
        padding-top: 62px
    }
}

/* Enquiry (contact) page: no top bar on phones */
@media (max-width: 767px) { body[data-iit-page=contact] .top { display: none !important } }

/* Hero full background design: the two info cards on the right (Banner Slides -> Info card 1 / 2) */
body[data-iit-page=home] .hero .wrap.hero-banner-slide--background:has(.hero-cards) {
    grid-template-columns: minmax(0, 680px) minmax(0, 300px);
    justify-content: space-between;
    align-items: end
}

body[data-iit-page=home] .hero-cards {
    display: grid;
    gap: 14px;
    padding-bottom: 6px
}

body[data-iit-page=home] .hero-card {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 16px 18px;
    border: 1px solid rgba(255, 255, 255, .28);
    border-radius: 16px;
    background: rgba(0, 36, 64, .55);
    backdrop-filter: blur(8px);
    color: #fff
}

body[data-iit-page=home] .hero-card i {
    display: grid;
    place-items: center;
    flex: none;
    width: 44px;
    height: 44px;
    border-radius: 12px;
    background: #ff8b25;
    color: #fff;
    font-size: 18px
}

body[data-iit-page=home] .hero-card--2 i {
    background: #fff;
    color: #00487e
}

body[data-iit-page=home] .hero-card b {
    display: block;
    font-size: calc(16px * var(--iit-text-scale))
}

body[data-iit-page=home] .hero-card small {
    display: block;
    margin-top: 2px;
    color: #dbe7f1;
    font-size: calc(13px * var(--iit-text-scale))
}

@media (max-width: 900px) {
    body[data-iit-page=home] .hero .wrap.hero-banner-slide--background:has(.hero-cards) {
        grid-template-columns: minmax(0, 1fr)
    }

    body[data-iit-page=home] .hero-cards {
        grid-template-columns: 1fr 1fr;
        gap: 10px;
        margin-top: 22px
    }

    body[data-iit-page=home] .hero-card {
        padding: 12px;
        gap: 10px
    }

    body[data-iit-page=home] .hero-card i {
        width: 36px;
        height: 36px;
        font-size: 15px
    }
}

@media (max-width: 480px) {
    body[data-iit-page=home] .hero-cards {
        grid-template-columns: 1fr
    }
}

/* Rankings strip "Circles" design (Admin -> Rankings Strip -> Design): logo in a coloured ring, wave line, rank text below */
.rkc-track.rank-strip-track {
    --rank-gap: 22px;
    padding: 16px 14px 10px;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='24' viewBox='0 0 240 24'%3E%3Cpath d='M0 12 C40 0 80 0 120 12 S200 24 240 12' fill='none' stroke='%23cfe1ef' stroke-width='3'/%3E%3C/svg%3E") repeat-x 0 92px / 240px 24px
}

.rkc {
    flex: 0 0 calc((100% - 5 * var(--rank-gap)) / 6);
    min-width: 170px;
    scroll-snap-align: start;
    text-align: center
}

.rkc > a {
    display: block;
    color: inherit;
    text-decoration: none
}

.rkc-circle {
    position: relative;
    display: grid;
    place-items: center;
    width: 168px;
    height: 168px;
    margin: 0 auto 16px;
    border-radius: 50%;
    background: #fff;
    box-shadow: 0 12px 30px rgba(0, 40, 80, .1)
}

/* part of a ring in the card colour */
.rkc-circle:before {
    content: "";
    position: absolute;
    inset: -5px;
    border-radius: 50%;
    background: conic-gradient(from var(--rkc-turn, 0deg), var(--rkc) 0 64%, transparent 64%);
    -webkit-mask: radial-gradient(farthest-side, transparent calc(100% - 5px), #000 calc(100% - 4px));
    mask: radial-gradient(farthest-side, transparent calc(100% - 5px), #000 calc(100% - 4px))
}

/* the dot on the right, where the wave line joins */
.rkc-circle:after {
    content: "";
    position: absolute;
    top: 50%;
    right: -12px;
    width: 14px;
    height: 14px;
    border: 4px solid #fff;
    border-radius: 50%;
    background: var(--rkc);
    box-shadow: 0 2px 8px rgba(0, 40, 80, .2);
    transform: translateY(-50%)
}

.rkc-circle img {
    position: relative;
    width: auto;
    max-width: 72%;
    height: auto;
    max-height: 58%;
    object-fit: contain
}

.rkc-label {
    display: block;
    color: #0d2a40;
    font-size: 18px;
    line-height: 1.2
}

.rkc-rank {
    display: block;
    color: #0d2a40;
    font: 800 30px/1.12 var(--iit-font-heading, Poppins, sans-serif)
}

.rkc-rank br + * , .rkc-rank {
    white-space: normal
}

.rkc-rank sup {
    font-size: .55em;
    vertical-align: top;
    position: relative;
    top: -.15em
}

/* two-line ranks (e.g. "#1st in India / #13th in Asia") a little smaller */
.rkc-rank:has(br) {
    font-size: 22px
}

@media (max-width: 1100px) {
    .rkc {
        flex-basis: calc((100% - 3 * var(--rank-gap)) / 4)
    }
}

@media (max-width: 700px) {
    .rkc-track.rank-strip-track {
        --rank-gap: 14px;
        background-position: 0 76px
    }

    .rkc {
        flex-basis: 46%;
        min-width: 140px
    }

    .rkc-circle {
        width: 136px;
        height: 136px
    }

    .rkc-label {
        font-size: 15px
    }

    .rkc-rank {
        font-size: 24px
    }

    .rkc-rank:has(br) {
        font-size: 17px
    }
}

@media (min-width: 701px) {
    .rkc-circle {
        width: 150px;
        height: 150px
    }

    .rkc-track.rank-strip-track {
        background-position: 0 83px
    }
}

/* the strip wrap is a flex box on phones: let the track shrink to the screen and scroll */
.rkc-track.rank-strip-track { flex: 1 1 auto; min-width: 0; width: 100% }

/* Rankings circles: smaller */
@media (min-width: 701px) {
    .rkc-circle {
        width: 118px;
        height: 118px;
        margin-bottom: 12px
    }

    .rkc-track.rank-strip-track {
        background-position: 0 67px
    }

    .rkc {
        min-width: 140px
    }

    .rkc-label {
        font-size: 15px
    }

    .rkc-rank {
        font-size: 24px
    }

    .rkc-rank:has(br) {
        font-size: 17px
    }
}

@media (max-width: 700px) {
    .rkc-circle {
        width: 108px;
        height: 108px
    }

    .rkc-track.rank-strip-track {
        background-position: 0 62px
    }

    .rkc {
        flex-basis: 40%;
        min-width: 120px
    }
}

/* rankings circles: up to 7 in one row on a computer */
@media (min-width: 1101px) { .rkc { flex-basis: calc((100% - 6 * var(--rank-gap)) / 7); min-width: 130px } .rkc-track.rank-strip-track { --rank-gap: 14px } }

/* rankings circles: all 7 in one row on computers and tablets (circles shrink with the screen) */
@media (min-width: 701px) {
    .rkc-track.rank-strip-track {
        --rank-gap: 10px;
        justify-content: space-between;
        background-position: 0 calc(16px + clamp(84px, 8.6vw, 118px) / 2 - 12px)
    }

    .rkc {
        flex: 1 1 0;
        min-width: 0
    }

    .rkc-circle {
        width: clamp(84px, 8.6vw, 118px);
        height: clamp(84px, 8.6vw, 118px)
    }

    .rkc-circle:after {
        right: -9px;
        width: 12px;
        height: 12px;
        border-width: 3px
    }

    .rkc-label {
        font-size: clamp(12px, 1.1vw, 15px)
    }

    .rkc-rank {
        font-size: clamp(17px, 1.8vw, 24px)
    }

    .rkc-rank:has(br) {
        font-size: clamp(12px, 1.25vw, 17px)
    }
}

/* hero (full background design): text a little more to the left on computers */
@media (min-width: 901px) { body[data-iit-page=home] .hero .wrap.hero-banner-slide--background { width: min(calc(var(--iit-max-width) + 120px), calc(100% - 60px)) } }

/* hero text further left */
@media (min-width: 901px) { body[data-iit-page=home] .hero .wrap.hero-banner-slide--background { width: calc(100% - 48px) } }

/* hero info cards: on the left, under the buttons, side by side */
@media (min-width: 901px) {
    body[data-iit-page=home] .hero .wrap.hero-banner-slide--background:has(.hero-cards) {
        grid-template-columns: minmax(0, 700px);
        justify-content: start;
        align-items: start
    }

    body[data-iit-page=home] .hero-cards {
        grid-template-columns: repeat(2, minmax(0, 300px));
        justify-content: start;
        gap: 14px;
        margin-top: 26px;
        padding-bottom: 0
    }
}

@media (min-width: 901px) { body[data-iit-page=home] .hero-cards { margin-top: 0 } }

/* Our Alumni (scroll design): heading on the left like the other sections */
body[data-iit-page] .als-head { max-width: none; margin: 0 0 10px; text-align: left }
body[data-iit-page] .als-head p { max-width: 760px }

/* Header logo: bigger (all pages) */
body[data-iit-page] .brand-logo,
body[data-iit-page=home] .brand-logo {
    width: 230px;
    height: auto;
    max-height: 66px
}

@media (min-width: 1001px) {
    body[data-iit-page] .brand-logo,
    body[data-iit-page=home] .brand-logo {
        width: clamp(270px, 23vw, 380px);
        max-height: 88px
    }
}

@media (min-width: 1001px) and (max-width: 1240px) {
    body[data-iit-page] .brand-logo,
    body[data-iit-page=home] .brand-logo {
        width: 235px;
        max-height: 72px
    }
}

/* About IIT Patna page: no top bar on phones */
@media (max-width: 767px) { body[data-iit-page=about] .top { display: none !important } }

/* About page rankings: same circles as the home page */
body[data-iit-page=about] .ab-rank3 {
    background: #fff
}

body[data-iit-page=about] .ab-rank3-head {
    max-width: 820px;
    margin-bottom: 18px
}

body[data-iit-page=about] .ab-rank3-head h2 {
    margin: 10px 0 10px;
    color: #00487e
}

body[data-iit-page=about] .ab-rank3-head p {
    margin: 0;
    color: #3d5566
}

body[data-iit-page=about] .ab-rank3-features {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 22px;
    margin: 16px 0 0;
    padding: 0;
    list-style: none;
    color: #0d2a40;
    font-weight: 600
}

body[data-iit-page=about] .ab-rank3-features i {
    margin-right: 8px;
    color: #ff8b25
}

/* About rankings ring: the home ranking circles instead of the square cards */
body[data-iit-page=about] .ab-rank2-card--circle,
body[data-iit-page=about] .ab-rank2-card--circle:hover {
    display: block;
    width: 150px;
    height: auto;
    padding: 0;
    border-radius: 0;
    background: none;
    box-shadow: none;
    text-align: center
}

body[data-iit-page=about] .ab-rank2-card--circle a {
    display: block;
    height: auto;
    color: inherit;
    text-decoration: none
}

body[data-iit-page=about] .ab-rank2-card--circle .rkc-circle {
    width: 104px;
    height: 104px;
    margin: 0 auto 8px
}

body[data-iit-page=about] .ab-rank2-card--circle .rkc-circle img {
    width: auto;
    height: auto;
    max-width: 72%;
    max-height: 58%
}

body[data-iit-page=about] .ab-rank2-card--circle .rkc-label {
    font-size: 13px
}

body[data-iit-page=about] .ab-rank2-card--circle .rkc-rank {
    font-size: 20px
}

body[data-iit-page=about] .ab-rank2-card--circle .rkc-rank:has(br) {
    font-size: 14px
}

body[data-iit-page=about] .ab-rank2-stage:has(.ab-rank2-card--circle) {
    height: 640px
}

@media (max-width: 640px) {
    body[data-iit-page=about] .ab-rank2-stage:has(.ab-rank2-card--circle) {
        height: auto
    }

    body[data-iit-page=about] .ab-rank2-card--circle,
    body[data-iit-page=about] .ab-rank2-card--circle:hover {
        width: 100%;
        aspect-ratio: auto
    }

    body[data-iit-page=about] .ab-rank2-card--circle .rkc-circle {
        width: 86px;
        height: 86px
    }

    body[data-iit-page=about] .ab-rank2-card--circle .rkc-rank {
        font-size: 17px
    }
}

/* Who is this program for?: the text under the heading on one line, left aligned (phones: wraps normally) */
body[data-iit-page] .aud2 .aud2-head {
    display: block
}

body[data-iit-page] .aud2 .aud2-side {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    max-width: none;
    margin-top: 10px;
    text-align: left
}

body[data-iit-page] .aud2 .aud2-note {
    max-width: none;
    margin: 0;
    text-align: left
}

@media (min-width: 761px) {
    body[data-iit-page] .aud2 .aud2-note {
        white-space: nowrap
    }
}

body[data-iit-page] .aud2 .aud2-side { justify-content: flex-start !important; align-items: flex-start !important }
body[data-iit-page] .aud2 .aud2-side .aud2-note { margin: 0 !important; text-align: left !important }

/* Gallery: the text under the heading, on the left (arrows of the slider layout stay on the right) */
body[data-iit-page] .gl-head {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: end;
    column-gap: 24px
}

body[data-iit-page] .gl-head > .section-head {
    grid-column: 1;
    grid-row: 1
}

body[data-iit-page] .gl-head > .gl-note {
    grid-column: 1;
    grid-row: 2;
    max-width: 760px;
    margin: 12px 0 0 !important;
    text-align: left !important
}

body[data-iit-page] .gl-head > .gl-arrows {
    grid-column: 2;
    grid-row: 1 / span 2;
    align-self: end
}

body[data-iit-page] .gl-head > .section-head { margin-bottom: 0 !important }
body[data-iit-page] .gl-head > .section-head h2 { margin-bottom: 0 }

/* Gallery: less space above the text */
body[data-iit-page] .gl-head > .section-head, body[data-iit-page] .gl-head > .section-head h2 { margin-bottom: 0 !important; padding-bottom: 0 !important }
body[data-iit-page] .gl-head { row-gap: 0 !important }
body[data-iit-page] .gl-head > .gl-note { margin-top: 10px !important; padding-top: 0 !important }

/* News and press: the text under the heading, on the left (campus photo stays on the right) */
body[data-iit-page=home] #press .press-head {
    display: block !important
}

body[data-iit-page=home] #press .press-head .section-head {
    margin-bottom: 0 !important
}

body[data-iit-page=home] #press .press-head .press-note {
    max-width: 640px;
    margin: 12px 0 0 !important;
    padding-right: 0 !important;
    text-align: left !important
}

body[data-iit-page=home] #press .press-head .press-note:after {
    margin-left: 0 !important
}

body[data-iit-page=home] #press .press-head .press-note { position: relative !important; left: auto !important; right: auto !important; transform: none !important; margin-left: 0 !important; width: auto !important }
body[data-iit-page=home] #press .press-head .press-note { justify-self: start !important }

/* News and press heading on one line (computers) */
@media (min-width: 761px) {
    body[data-iit-page=home] #press .press-head h2 { white-space: nowrap; max-width: none !important }
    body[data-iit-page=home] #press .press-head h2 em { display: inline !important }
    body[data-iit-page=home] #press .press-head .section-head { max-width: none !important; width: auto !important }
}

/* News and press: photos keep their top (flag) visible */
body[data-iit-page] .press .press-feature-media, body[data-iit-page] .press [class*="press-"][style*="background-image"] { background-position: center top !important }
body[data-iit-page] .press img { object-position: center top }

/* Gallery: heading and text each on one line (computers) */
@media (min-width: 1001px) {
    body[data-iit-page] .gl-head > .section-head, body[data-iit-page] .gl-head > .section-head h2 { max-width: none !important }
    body[data-iit-page] .gl-head > .section-head h2 { white-space: nowrap }
    body[data-iit-page] .gl-head > .section-head h2 em, body[data-iit-page] .gl-head > .section-head h2 span { display: inline !important }
    body[data-iit-page] .gl-head > .gl-note { max-width: none !important; white-space: nowrap }
}

/* Header logo: the picture has ~6% empty space on its left; pull it back so the seal lines up
   with the top bar text and the banner text (all start at the same left edge) */
body[data-iit-page] .head .brand-logo {
    margin-left: -14px
}

@media (min-width: 1001px) {
    body[data-iit-page] .head .brand-logo {
        margin-left: calc(clamp(270px, 23vw, 380px) * -0.061)
    }
}

@media (min-width: 1001px) and (max-width: 1240px) {
    body[data-iit-page] .head .brand-logo {
        margin-left: -14px
    }
}

/* FAQ: the text under the heading on one line (computers) */
@media (min-width: 1100px) { body[data-iit-page] .faq2 .faq2-intro .section-head p { max-width: none !important; white-space: nowrap } }

/* Our Alumni: the text under the heading on one line (computers) */
@media (min-width: 1100px) { body[data-iit-page] .als-head p { max-width: none !important; white-space: nowrap } }

/* About, enquiry + Alumni banners: photo in a rounded card (white border, orange shape behind), inset from the edges */
@media (min-width: 861px) {
    body[data-iit-page=about] .ab-hero-media,
    body[data-iit-page=contact] .ab-hero-media,
    body[data-iit-page=home] .alumni-hero .ab-hero-media {
        top: 28px;
        right: 28px;
        bottom: 28px;
        width: 42%;
        overflow: visible
    }

    body[data-iit-page=about] .ab-hero-media span,
    body[data-iit-page=contact] .ab-hero-media span,
    body[data-iit-page=home] .alumni-hero .ab-hero-media span {
        top: 0 !important;
        right: 0;
        bottom: 0;
        left: 0;
        width: auto !important;
        clip-path: none !important
    }

    /* orange shape peeking out on the left and bottom */
    body[data-iit-page=about] .ab-hero-arc,
    body[data-iit-page=contact] .ab-hero-arc,
    body[data-iit-page=home] .alumni-hero .ab-hero-arc {
        border-radius: 70px 46px 56px 90px;
        background: linear-gradient(160deg, #ffa53a, #ff8b25 50%, #e8650f) !important;
        transform: translate(-16px, 12px) rotate(-2deg)
    }

    body[data-iit-page=about] .ab-hero-ring,
    body[data-iit-page=contact] .ab-hero-ring,
    body[data-iit-page=home] .alumni-hero .ab-hero-ring {
        border-radius: 54px 40px 48px 60px;
        background: #fff !important
    }

    body[data-iit-page=about] .ab-hero-photo,
    body[data-iit-page=contact] .ab-hero-photo,
    body[data-iit-page=home] .alumni-hero .ab-hero-photo {
        margin: 8px;
        border-radius: 48px 34px 42px 54px;
        background-position: center !important;
        box-shadow: 0 18px 40px rgba(0, 20, 50, .3)
    }

    body[data-iit-page=about] .hero.ab-hero .ab-hero-inner,
    body[data-iit-page=contact] .hero.ab-hero .ab-hero-inner,
    body[data-iit-page=home] section.alumni-hero.ab-hero .ab-hero-inner {
        padding-top: 40px;
        padding-bottom: 60px
    }
}

@media (max-width: 860px) {
    body[data-iit-page=about] .ab-hero-media span,
    body[data-iit-page=contact] .ab-hero-media span,
    body[data-iit-page=home] .alumni-hero .ab-hero-media span {
        clip-path: none !important
    }

    body[data-iit-page=about] .ab-hero-arc,
    body[data-iit-page=contact] .ab-hero-arc,
    body[data-iit-page=home] .alumni-hero .ab-hero-arc { display: none }

    body[data-iit-page=about] .ab-hero-ring,
    body[data-iit-page=contact] .ab-hero-ring,
    body[data-iit-page=home] .alumni-hero .ab-hero-ring {
        top: 12px !important;
        right: 16px !important;
        bottom: 0;
        left: 16px !important;
        width: auto !important;
        border-radius: 28px;
        background: #ff8b25 !important
    }

    body[data-iit-page=about] .ab-hero-photo,
    body[data-iit-page=contact] .ab-hero-photo,
    body[data-iit-page=home] .alumni-hero .ab-hero-photo {
        top: 18px !important;
        right: 22px !important;
        bottom: 6px;
        left: 22px !important;
        width: auto !important;
        border: 4px solid #fff;
        border-radius: 24px
    }
}

@media (max-width: 860px) {
    body[data-iit-page=about] .ab-hero-photo, body[data-iit-page=contact] .ab-hero-photo, body[data-iit-page=home] .alumni-hero .ab-hero-photo { background-position: center top !important }
    body[data-iit-page=about] .ab-hero-media, body[data-iit-page=contact] .ab-hero-media, body[data-iit-page=home] .alumni-hero .ab-hero-media { height: 260px !important }
}

/* On phones, photo-based banner slides show their image first and the copy below it. Video slides retain their existing layout. */
@media (max-width: 800px) {
    body[data-iit-page=home] .hero--slides .hero-banner-slide--arch .visual {
        order: -1
    }

    /* A photo background slide is stacked on phones: image first, then the complete text area.
       Video slides intentionally keep their full-background presentation. */
    body[data-iit-page=home] .hero--slides.hero--on-bg:not(.hero--video) {
        display: flex;
        flex-direction: column;
        min-height: 0
    }

    body[data-iit-page=home] .hero--slides.hero--on-bg:not(.hero--video) .hero-bgs {
        position: relative;
        z-index: 1;
        height: min(62vw, 300px);
        min-height: 220px;
        overflow: hidden
    }

    body[data-iit-page=home] .hero--slides.hero--on-bg:not(.hero--video) .hero-bg {
        position: absolute;
        inset: 0
    }

    body[data-iit-page=home] .hero--slides.hero--on-bg:not(.hero--video) .hero-bg:after {
        background: linear-gradient(180deg, rgba(0, 36, 64, .08), rgba(0, 36, 64, .28))
    }

    body[data-iit-page=home] .hero--slides.hero--on-bg:not(.hero--video) .hero-slides-track {
        z-index: 2
    }

    body[data-iit-page=home] .hero--slides.hero--on-bg:not(.hero--video) .hero-banner-slide--background {
        min-height: 0;
        padding-top: 0;
        padding-bottom: 74px
    }

    body[data-iit-page=home] .hero--slides.hero--on-bg:not(.hero--video) .hero-banner-slide--background > :first-child {
        padding-top: 30px
    }
}

/* Header logo (new IIT Patna logo, cropped to its edges): a little smaller, sized by height so it never touches the bar edges */
body[data-iit-page] .head .brand-logo,
body[data-iit-page=home] .head .brand-logo {
    width: auto !important;
    max-width: none !important;
    height: 46px !important;
    max-height: none !important;
    margin-left: 0 !important
}

@media (min-width: 1001px) {
    body[data-iit-page] .head .brand-logo,
    body[data-iit-page=home] .head .brand-logo {
        height: 62px !important
    }
}

@media (min-width: 1001px) and (max-width: 1240px) {
    body[data-iit-page] .head .brand-logo,
    body[data-iit-page=home] .head .brand-logo {
        height: 52px !important
    }
}

/* IIIT Ranchi band above its programs: white base with the blue logo */
body[data-iit-page] .program-partner-divider {
    background: #fff !important;
    border-top: 1px solid #d6e4ef;
    border-bottom: 1px solid #d6e4ef;
    box-shadow: 0 6px 20px rgba(0, 40, 80, .06)
}

body[data-iit-page] .program-partner-logo {
    width: min(440px, 80vw) !important;
    max-height: 86px !important;
    object-fit: contain
}

/* One left line on every page: top bar, header logo, home banner text and all sections share the page width (.wrap) */
body[data-iit-page] .top > .wrap,
body[data-iit-page] .top .wrap,
body[data-iit-page] .head > .wrap {
    width: min(var(--iit-max-width), calc(100% - 40px)) !important;
    max-width: none !important;
    margin-right: auto !important;
    margin-left: auto !important;
    padding-right: 0 !important;
    padding-left: 0 !important
}

@media (min-width: 901px) {
    body[data-iit-page=home] .hero .wrap.hero-banner-slide--background {
        width: min(var(--iit-max-width), calc(100% - 40px)) !important
    }
}

/* Header logo a little bigger */
body[data-iit-page] .head .brand-logo, body[data-iit-page=home] .head .brand-logo { height: 52px !important }
@media (min-width: 1001px) { body[data-iit-page] .head .brand-logo, body[data-iit-page=home] .head .brand-logo { height: 72px !important } }
@media (min-width: 1001px) and (max-width: 1240px) { body[data-iit-page] .head .brand-logo, body[data-iit-page=home] .head .brand-logo { height: 58px !important } }

/* Hero video slides: only the clear video (no shade, no text, cards or buttons on top) */
body[data-iit-page=home] .hero-bg--video:after {
    display: none !important
}

body[data-iit-page=home] .hero .wrap.hero-banner-slide--video > * {
    visibility: hidden !important
}

/* Hero arrows: yellow circle border */
body[data-iit-page=home] .hero-banner-arrow { border: 2px solid #ffc93c !important; color: #fff }
body[data-iit-page=home] .hero-banner-arrow:hover { border-color: #ffc93c !important }

/* Phones: a video slide is shorter (16:9 of the screen width), the photo slides keep their height */
@media (max-width: 760px) {
    body[data-iit-page=home] .hero.hero--video .hero-slides-track {
        height: 62vw;
        min-height: 220px;
        overflow: hidden
    }

    body[data-iit-page=home] .hero.hero--video {
        min-height: 0 !important;
        padding-bottom: 54px
    }
}

/* Phones: hero heading flows on normal lines (the coloured word stays inline, not on its own line) */
@media (max-width: 760px) {
    body[data-iit-page=home] .hero .hero-title em, body[data-iit-page=home] .hero .hero-title .hero-title-accent { display: inline !important; white-space: normal !important }
}

/* About, Alumni and Enquiry banners: the photo fills the whole banner, a navy shade on the left keeps the text readable */
body[data-iit-page=about] .hero.ab-hero,
body[data-iit-page=contact] .hero.ab-hero,
body[data-iit-page=home] section.alumni-hero.ab-hero {
    position: relative;
    display: block !important;
    overflow: hidden
}

body[data-iit-page=about] .hero.ab-hero .ab-hero-media,
body[data-iit-page=contact] .hero.ab-hero .ab-hero-media,
body[data-iit-page=home] section.alumni-hero.ab-hero .ab-hero-media {
    position: absolute !important;
    inset: 0 !important;
    z-index: 0;
    width: auto !important;
    height: auto !important;
    margin: 0 !important
}

body[data-iit-page=about] .hero.ab-hero .ab-hero-arc,
body[data-iit-page=about] .hero.ab-hero .ab-hero-ring,
body[data-iit-page=about] .hero.ab-hero .ab-hero-deco,
body[data-iit-page=contact] .hero.ab-hero .ab-hero-arc,
body[data-iit-page=contact] .hero.ab-hero .ab-hero-ring,
body[data-iit-page=contact] .hero.ab-hero .ab-hero-deco,
body[data-iit-page=home] section.alumni-hero.ab-hero .ab-hero-arc,
body[data-iit-page=home] section.alumni-hero.ab-hero .ab-hero-ring,
body[data-iit-page=home] section.alumni-hero.ab-hero .ab-hero-deco {
    display: none !important
}

body[data-iit-page=about] .hero.ab-hero .ab-hero-photo,
body[data-iit-page=contact] .hero.ab-hero .ab-hero-photo,
body[data-iit-page=home] section.alumni-hero.ab-hero .ab-hero-photo {
    position: absolute !important;
    inset: 0 !important;
    width: auto !important;
    height: auto !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    clip-path: none !important;
    background-size: cover !important;
    background-position: center !important
}

body[data-iit-page=about] .hero.ab-hero .ab-hero-media:after,
body[data-iit-page=contact] .hero.ab-hero .ab-hero-media:after,
body[data-iit-page=home] section.alumni-hero.ab-hero .ab-hero-media:after {
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(0, 36, 64, .94) 0%, rgba(0, 54, 95, .8) 36%, rgba(0, 72, 126, .3) 66%, rgba(0, 72, 126, .05) 100%);
    content: ""
}

body[data-iit-page=about] .hero.ab-hero .ab-hero-inner,
body[data-iit-page=contact] .hero.ab-hero .ab-hero-inner,
body[data-iit-page=home] section.alumni-hero.ab-hero .ab-hero-inner {
    position: relative;
    z-index: 1;
    padding-top: 44px !important;
    padding-bottom: 64px !important
}

@media (max-width: 860px) {
    body[data-iit-page=about] .hero.ab-hero .ab-hero-media:after,
    body[data-iit-page=contact] .hero.ab-hero .ab-hero-media:after,
    body[data-iit-page=home] section.alumni-hero.ab-hero .ab-hero-media:after {
        background: linear-gradient(180deg, rgba(0, 36, 64, .78) 0%, rgba(0, 48, 84, .9) 100%)
    }

    body[data-iit-page=about] .hero.ab-hero .ab-hero-inner > *,
    body[data-iit-page=contact] .hero.ab-hero .ab-hero-inner > *,
    body[data-iit-page=home] section.alumni-hero.ab-hero .ab-hero-inner > * {
        max-width: none
    }
}

/* About, Alumni, Enquiry banners (computers): the whole photo shows on the right at full banner height
   (no cropping of square or wide photos) and fades softly into the navy background behind the text */
@media (min-width: 861px) {
    body[data-iit-page=about] .hero.ab-hero,
    body[data-iit-page=contact] .hero.ab-hero,
    body[data-iit-page=home] section.alumni-hero.ab-hero {
        background: #062f55 !important
    }

    body[data-iit-page=about] .hero.ab-hero .ab-hero-photo,
    body[data-iit-page=contact] .hero.ab-hero .ab-hero-photo,
    body[data-iit-page=home] section.alumni-hero.ab-hero .ab-hero-photo {
        background-color: transparent !important;
        background-size: auto 100% !important;
        background-position: right center !important;
        -webkit-mask-image: linear-gradient(90deg, transparent 0, transparent 38%, #000 70%);
        mask-image: linear-gradient(90deg, transparent 0, transparent 38%, #000 70%)
    }

    body[data-iit-page=about] .hero.ab-hero .ab-hero-media:after,
    body[data-iit-page=contact] .hero.ab-hero .ab-hero-media:after,
    body[data-iit-page=home] section.alumni-hero.ab-hero .ab-hero-media:after {
        background: linear-gradient(90deg, rgba(6, 47, 85, .7) 0%, rgba(6, 47, 85, .35) 45%, rgba(6, 47, 85, 0) 70%)
    }
}

@media (min-width: 861px) {
    body[data-iit-page=about] .hero.ab-hero .ab-hero-photo,
    body[data-iit-page=contact] .hero.ab-hero .ab-hero-photo,
    body[data-iit-page=home] section.alumni-hero.ab-hero .ab-hero-photo {
        left: 40% !important;
        background-size: cover !important;
        background-position: center 30% !important;
        -webkit-mask-image: linear-gradient(90deg, transparent 0, rgba(0, 0, 0, .55) 18%, #000 42%);
        mask-image: linear-gradient(90deg, transparent 0, rgba(0, 0, 0, .55) 18%, #000 42%)
    }
}

/* About, Alumni, Enquiry banners: the photo covers the whole banner again (navy shade on the left for the text) */
@media (min-width: 861px) {
    body[data-iit-page=about] .hero.ab-hero .ab-hero-photo,
    body[data-iit-page=contact] .hero.ab-hero .ab-hero-photo,
    body[data-iit-page=home] section.alumni-hero.ab-hero .ab-hero-photo {
        left: 0 !important;
        background-size: cover !important;
        background-position: center 35% !important;
        -webkit-mask-image: none;
        mask-image: none
    }

    body[data-iit-page=about] .hero.ab-hero .ab-hero-media:after,
    body[data-iit-page=contact] .hero.ab-hero .ab-hero-media:after,
    body[data-iit-page=home] section.alumni-hero.ab-hero .ab-hero-media:after {
        background: linear-gradient(90deg, rgba(0, 36, 64, .92) 0%, rgba(0, 54, 95, .75) 36%, rgba(0, 72, 126, .25) 66%, rgba(0, 72, 126, 0) 100%)
    }
}

/* About / Alumni / Enquiry banner with no text in admin: just the photo, clear (no shade), with enough height;
   the breadcrumb stays on a small dark strip at the top */
body[data-iit-page=about] .hero.ab-hero.ab-hero--photo .ab-hero-media:after,
body[data-iit-page=contact] .hero.ab-hero.ab-hero--photo .ab-hero-media:after,
body[data-iit-page=home] section.alumni-hero.ab-hero.ab-hero--photo .ab-hero-media:after {
    background: linear-gradient(180deg, rgba(0, 36, 64, .55) 0, rgba(0, 36, 64, 0) 110px) !important
}

body[data-iit-page=about] .hero.ab-hero.ab-hero--photo .ab-hero-inner,
body[data-iit-page=contact] .hero.ab-hero.ab-hero--photo .ab-hero-inner,
body[data-iit-page=home] section.alumni-hero.ab-hero.ab-hero--photo .ab-hero-inner {
    min-height: clamp(240px, 36vw, 520px);
    box-sizing: border-box
}

body[data-iit-page=about] .hero.ab-hero.ab-hero--photo .ab-hero-photo,
body[data-iit-page=contact] .hero.ab-hero.ab-hero--photo .ab-hero-photo,
body[data-iit-page=home] section.alumni-hero.ab-hero.ab-hero--photo .ab-hero-photo {
    background-position: center !important
}

body[data-iit-page=contact] .hero.ab-hero.ab-hero--photo .ct-hero-contacts {
    display: none
}

/* photo-only banner: the feature icons go too (only the photo, and the breadcrumb when it has text) */
body[data-iit-page] .ab-hero.ab-hero--photo .ab-hero-features { display: none !important }

/* About / Alumni / Enquiry banners: the banner takes the shape of its photo (up to 85% of the screen height),
   so the whole photo shows; faces / tops stay in view if the screen is shorter */
body[data-iit-page=about] .hero.ab-hero .ab-hero-inner,
body[data-iit-page=contact] .hero.ab-hero .ab-hero-inner,
body[data-iit-page=home] section.alumni-hero.ab-hero .ab-hero-inner {
    min-height: min(calc(100vw * var(--ab-ratio, .5)), 85vh) !important;
    box-sizing: border-box
}

body[data-iit-page=about] .hero.ab-hero .ab-hero-photo,
body[data-iit-page=contact] .hero.ab-hero .ab-hero-photo,
body[data-iit-page=home] section.alumni-hero.ab-hero .ab-hero-photo {
    background-position: center top !important
}

@media (max-width: 860px) {
    body[data-iit-page=about] .hero.ab-hero:not(.ab-hero--photo) .ab-hero-inner,
    body[data-iit-page=contact] .hero.ab-hero:not(.ab-hero--photo) .ab-hero-inner,
    body[data-iit-page=home] section.alumni-hero.ab-hero:not(.ab-hero--photo) .ab-hero-inner {
        min-height: 0 !important
    }
}

/* About / Alumni / Enquiry banners with text: back to the normal height, photo over the whole banner,
   text on the left over a navy shade (the photo-shaped height is only used when the banner has no text) */
body[data-iit-page=about] .hero.ab-hero:not(.ab-hero--photo) .ab-hero-inner,
body[data-iit-page=contact] .hero.ab-hero:not(.ab-hero--photo) .ab-hero-inner,
body[data-iit-page=home] section.alumni-hero.ab-hero:not(.ab-hero--photo) .ab-hero-inner {
    min-height: 0 !important
}

body[data-iit-page=about] .hero.ab-hero:not(.ab-hero--photo) .ab-hero-photo,
body[data-iit-page=contact] .hero.ab-hero:not(.ab-hero--photo) .ab-hero-photo,
body[data-iit-page=home] section.alumni-hero.ab-hero:not(.ab-hero--photo) .ab-hero-photo {
    background-size: cover !important;
    background-position: center 35% !important
}

@media (min-width: 861px) {
    body[data-iit-page=about] .hero.ab-hero:not(.ab-hero--photo) .ab-hero-media:after,
    body[data-iit-page=contact] .hero.ab-hero:not(.ab-hero--photo) .ab-hero-media:after,
    body[data-iit-page=home] section.alumni-hero.ab-hero:not(.ab-hero--photo) .ab-hero-media:after {
        background: linear-gradient(90deg, rgba(0, 36, 64, .94) 0%, rgba(0, 54, 95, .8) 36%, rgba(0, 72, 126, .3) 66%, rgba(0, 72, 126, .05) 100%) !important
    }
}
