        /* ---------- Design Tokens ---------- */
        :root {
            /* Colors */
            --ink: #0A0E27;
            --paper: #ffffff;
            --paper-deep: #f0f0f2;
            --accent: #FFD600;
            --accent-soft: #fffbe6;
            --lime: #FFD600;
            --blue: #0A0E27;
            --plum: #0A0E27;
            --rule: rgba(10, 14, 39, 0.12);
            --muted: rgba(10, 14, 39, 0.55);
            --rule-dark: rgba(255, 255, 255, 0.12);
            --muted-dark: rgba(255, 255, 255, 0.55);

            /* Typography */
            --f-display: "Inter", system-ui, sans-serif;
            --f-sans: "Inter", system-ui, -apple-system, sans-serif;
            --f-mono: "Geist Mono", ui-monospace, monospace;

            /* Layout */
            --maxw: 1280px;
            --pad: clamp(20px, 4vw, 56px);

            /* Border radius — all zero */
            --r-lg: 0px;
            --r-md: 0px;
            --r-sm: 0px;
        }

        * {
            box-sizing: border-box;
            margin: 0;
            padding: 0;
        }

        html {
            scroll-behavior: smooth;
        }

        body {
            font-family: var(--f-sans);
            background: var(--paper);
            color: var(--ink);
            -webkit-font-smoothing: antialiased;
            font-size: 16px;
            line-height: 1.6;
            overflow-x: hidden;
        }

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

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

        button {
            font: inherit;
            cursor: pointer;
            border: none;
            background: none;
            color: inherit;
        }


        .container {
            max-width: var(--maxw);
            margin: 0 auto;
            padding: 0 var(--pad);
        }

        /* ---------- Announcement bar ---------- */
        .ticker {
            background: var(--ink);
            color: var(--paper);
            font-family: var(--f-mono);
            font-size: 12px;
            letter-spacing: 0.08em;
            text-transform: uppercase;
            padding: 10px 0;
            overflow: hidden;
            position: relative;
        }

        .ticker__track {
            display: flex;
            gap: 60px;
            white-space: nowrap;
            animation: slide 40s linear infinite;
        }

        .ticker__track span {
            display: inline-flex;
            align-items: center;
            gap: 14px;
        }

        .ticker__track span::before {
            content: "◆";
            color: var(--accent);
        }

        @keyframes slide {
            from {
                transform: translateX(0);
            }

            to {
                transform: translateX(-50%);
            }
        }

        /* ---------- Nav ---------- */
        .nav {
            position: sticky;
            top: 0;
            z-index: 100;
            background: var(--paper);
            border-bottom: 0.5px solid var(--rule);
            backdrop-filter: none;
        }

        .nav__inner {
            display: flex;
            align-items: center;
            justify-content: space-between;
            padding: 18px 0;
        }

        .logo {
            display: flex;
            align-items: center;
            gap: 10px;
            font-family: var(--f-display);
            font-weight: 600;
            font-size: 22px;
            letter-spacing: -0.02em;
        }

        .logo__mark {
            width: 34px;
            height: 34px;
            border-radius: 10px;
            background: var(--ink);
            color: var(--paper);
            display: grid;
            place-items: center;
            font-family: var(--f-mono);
            font-size: 14px;
            font-weight: 500;
            position: relative;
            overflow: hidden;
        }

        .logo__mark::after {
            content: "";
            position: absolute;
            inset: 0;
            background: linear-gradient(135deg,
                    transparent 40%,
                    var(--accent) 40%,
                    var(--accent) 55%,
                    transparent 55%);
            opacity: 0.9;
        }

        .logo__mark span {
            position: relative;
            z-index: 1;
            font-style: italic;
            font-family: var(--f-display);
        }

        .nav__menu {
            display: flex;
            gap: 34px;
            align-items: center;
        }

        .nav__menu a {
            font-size: 14px;
            font-weight: 500;
            color: var(--ink);
            position: relative;
        }

        .nav__menu a::after {
            content: "";
            position: absolute;
            left: 0;
            bottom: -4px;
            height: 2px;
            width: 0;
            background: var(--accent);
            transition: width 0.3s ease;
        }

        .nav__menu a:hover::after {
            width: 100%;
        }

        .nav__cta {
            padding: 10px 18px;
            border: 1px solid var(--ink);
            border-radius: 0;
            font-size: 13px;
            font-weight: 500;
            transition: all 0.25s ease;
            display: inline-flex;
            align-items: center;
            gap: 8px;
        }

        .nav__cta:hover {
            background: var(--accent);
            color: var(--ink);
            border-color: var(--accent);
        }

        .nav__cta::after {
            content: "→";
            transition: transform 0.25s;
        }

        .nav__cta:hover::after {
            transform: translateX(3px);
        }

        .burger {
            display: none;
            width: 40px;
            height: 40px;
            border-radius: 10px;
            background: var(--ink);
            color: var(--paper);
            align-items: center;
            justify-content: center;
        }

        /* ---------- Hero ---------- */
        .hero {
            position: relative;
            padding: 80px 0 100px;
            border-bottom: 1px solid var(--rule);
            overflow: hidden;
        }

        .hero__grid {
            display: grid;
            grid-template-columns: 1.3fr 0.9fr;
            gap: 60px;
            align-items: end;
        }

        .eyebrow {
            display: inline-flex;
            align-items: center;
            gap: 10px;
            font-family: var(--f-mono);
            font-size: 12px;
            letter-spacing: 0.12em;
            text-transform: uppercase;
            color: var(--muted);
            margin-bottom: 28px;
        }

        .eyebrow .dot {
            width: 8px;
            height: 8px;
            border-radius: 50%;
            background: var(--accent);
            box-shadow: 0 0 0 4px var(--accent-soft);
            animation: pulse 2s infinite;
        }

        @keyframes pulse {

            0%,
            100% {
                box-shadow: 0 0 0 4px var(--accent-soft);
            }

            50% {
                box-shadow: 0 0 0 7px transparent;
            }
        }

        .hero h1 {
            font-family: var(--f-display);
            font-size: clamp(48px, 6vw, 80px);
            line-height: 1;
            letter-spacing: -0.03em;
            font-weight: 700;
            font-variation-settings:
                "opsz" 144,
                "SOFT" 50;
        }

        .hero h1 em {
            font-style: italic;
            font-weight: 300;
            color: var(--accent);
            position: relative;
        }

        .hero h1 .underline {
            display: inline-block;
            position: relative;
        }

        .hero h1 .underline::after {
            content: "";
            position: absolute;
            left: 0;
            bottom: 0.08em;
            right: 0;
            height: 0.18em;
            background: var(--lime);
            z-index: -1;
            transform: skewX(-6deg);
        }

        .hero__lede {
            font-size: 17px;
            color: var(--muted);
            max-width: 52ch;
            margin-top: 28px;
            line-height: 1.55;
        }

        .hero__actions {
            display: flex;
            gap: 14px;
            margin-top: 36px;
            flex-wrap: wrap;
        }

        .btn {
            display: inline-flex;
            align-items: center;
            gap: 8px;
            padding: 12px 24px;
            font-family: var(--f-sans);
            font-size: 14px;
            font-weight: 600;
            letter-spacing: 0.06em;
            text-transform: uppercase;
            border-radius: 0;
            border: 1.5px solid var(--ink);
            cursor: pointer;
            transition: background 0.2s, color 0.2s, border-color 0.2s;
            text-decoration: none;
        }

        .btn--primary {
            background: var(--ink);
            color: var(--paper);
            border-color: var(--ink);
        }

        .btn--primary:hover {
            background: var(--accent);
            color: var(--ink);
            border-color: var(--accent);
        }

        .btn--ghost {
            background: transparent;
            color: var(--ink);
            border-color: var(--ink);
        }

        .btn--ghost:hover {
            background: var(--accent);
            color: var(--ink);
            border-color: var(--accent);
        }

        .btn svg {
            transition: transform 0.2s;
        }

        .btn:hover svg {
            transform: translate(3px, -3px);
        }

        .hero__aside {
            position: relative;
        }

        .hero__card {
            background: var(--ink);
            color: var(--paper);
            border-radius: var(--r-lg);
            padding: 28px;
            position: relative;
            overflow: hidden;
            aspect-ratio: 4/5;
            display: flex;
            flex-direction: column;
            justify-content: space-between;
        }

        .hero__card::before {
            content: "";
            position: absolute;
            top: -40%;
            right: -40%;
            width: 120%;
            height: 120%;
            background: radial-gradient(circle, var(--accent) 0%, transparent 60%);
            opacity: 0.7;
        }

        .hero__card-head {
            position: relative;
            z-index: 1;
            display: flex;
            justify-content: space-between;
            align-items: flex-start;
            font-family: var(--f-mono);
            font-size: 11px;
            letter-spacing: 0.1em;
            text-transform: uppercase;
            opacity: 0.85;
        }

        .hero__card-body {
            position: relative;
            z-index: 1;
        }

        .hero__card-quote {
            font-family: var(--f-display);
            font-style: italic;
            font-size: 26px;
            line-height: 1.2;
            font-weight: 300;
            letter-spacing: -0.01em;
        }

        .hero__card-author {
            display: flex;
            align-items: center;
            gap: 12px;
            margin-top: 22px;
            font-size: 13px;
        }

        .hero__card-avatar {
            width: 38px;
            height: 38px;
            border-radius: 50%;
            background: linear-gradient(135deg, var(--lime), var(--accent));
            display: grid;
            place-items: center;
            color: var(--ink);
            font-weight: 600;
            font-size: 14px;
        }

        .hero__card-author small {
            display: block;
            opacity: 0.6;
            font-size: 11px;
            margin-top: 2px;
        }

        /* Floating badges */
        .badge-float {
            position: absolute;
            background: var(--paper);
            color: var(--ink);
            border: 1px solid var(--rule);
            border-radius: 0;
            padding: 10px 16px;
            font-size: 12px;
            font-weight: 500;
            font-family: var(--f-mono);
            letter-spacing: 0.05em;
            display: inline-flex;
            align-items: center;
            gap: 8px;
            box-shadow: 0 10px 30px rgba(14, 15, 16, 0.08);
        }

        .badge-float .d {
            width: 6px;
            height: 6px;
            border-radius: 50%;
        }

        .badge-1 {
            top: -14px;
            left: -30px;
            animation: none;
        }

        .badge-1 .d {
            background: var(--lime);
        }

        .badge-2 {
            bottom: 80px;
            right: -40px;
            animation: none;
        }

        .badge-2 .d {
            background: var(--blue);
        }

        /* ---------- Marquee Logos ---------- */
        .partners {
            padding: 36px 0;
            border-bottom: 1px solid var(--rule);
            background: var(--paper-deep);
        }

        .partners__label {
            text-align: center;
            font-family: var(--f-mono);
            font-size: 11px;
            letter-spacing: 0.15em;
            text-transform: uppercase;
            color: var(--muted);
            margin-bottom: 24px;
        }

        .partners__row {
            display: flex;
            justify-content: space-around;
            align-items: center;
            gap: 40px;
            flex-wrap: wrap;
            font-family: var(--f-display);
            font-style: italic;
            font-size: 22px;
            font-weight: 400;
            color: var(--ink);
            opacity: 0.7;
        }

        .partners__row span {
            display: inline-flex;
            align-items: center;
            gap: 8px;
        }

        /* ---------- Stats ---------- */
        .stats {
            padding: 80px 0;
            border-bottom: 1px solid var(--rule);
        }

        .stats__grid {
            display: grid;
            grid-template-columns: repeat(4, 1fr);
            gap: 0;
        }

        .stat {
            padding: 30px 24px;
            border-left: 1px solid var(--rule);
            position: relative;
            transition: background 0.3s;
        }

        .stat:first-child {
            border-left: none;
        }

        .stat:hover {
            background: var(--paper-deep);
        }

        .stat__num {
            font-family: var(--f-display);
            font-size: clamp(54px, 6vw, 86px);
            line-height: 1;
            letter-spacing: -0.04em;
            font-weight: 400;
        }

        .stat__num sup {
            font-size: 0.4em;
            color: var(--accent);
            font-weight: 500;
            vertical-align: top;
            margin-left: 4px;
        }

        .stat__label {
            font-family: var(--f-mono);
            font-size: 11px;
            letter-spacing: 0.12em;
            text-transform: uppercase;
            color: var(--muted);
            margin-top: 16px;
        }

        /* ---------- Section Heading ---------- */
        .sec {
            padding: 110px 0;
            position: relative;
        }

        .sec__head {
            display: grid;
            grid-template-columns: auto 1fr;
            gap: 40px;
            align-items: end;
            margin-bottom: 60px;
        }

        .sec__eyebrow {
            font-family: var(--f-mono);
            font-size: 12px;
            letter-spacing: 0.14em;
            text-transform: uppercase;
            color: var(--muted);
            display: flex;
            align-items: center;
            gap: 10px;
        }

        .sec__eyebrow::before {
            content: "";
            width: 24px;
            height: 1px;
            background: var(--ink);
        }

        .sec__title {
            font-family: var(--f-display);
            font-size: clamp(32px, 4vw, 48px);
            line-height: 1;
            letter-spacing: -0.03em;
            font-weight: 400;
            margin-top: 16px;
        }

        .sec__title em {
            font-style: italic;
            color: var(--accent);
            font-weight: 300;
        }

        .sec__meta {
            text-align: right;
            font-size: 14px;
            color: var(--muted);
            max-width: 40ch;
            margin-left: auto;
        }

        /* ---------- Courses ---------- */
        .courses {
            background: var(--paper-deep);
            border-top: 1px solid var(--rule);
            border-bottom: 1px solid var(--rule);
        }

        .course-grid {
            display: grid;
            grid-template-columns: repeat(12, 1fr);
            gap: 24px;
        }

        .course {
            background: var(--paper);
            border: 0.5px solid var(--rule);
            border-radius: 0;
            padding: 28px;
            position: relative;
            overflow: hidden;
            transition:
                transform 0.4s cubic-bezier(0.2, 0.8, 0.2, 1),
                box-shadow 0.4s;
            display: flex;
            flex-direction: column;
            gap: 20px;
            min-height: 360px;
        }

        .course:hover {
            transform: translateY(-6px);
            box-shadow: none;
            border-color: var(--accent);
        }

        .course--wide {
            grid-column: span 7;
        }

        .course--tall {
            grid-column: span 5;
        }

        .course--half {
            grid-column: span 6;
        }

        .course--dark {
            background: var(--ink);
            color: var(--paper);
            border-color: var(--ink);
        }

        .course--accent {
            background: var(--accent);
            color: var(--ink);
            border-color: var(--accent);
        }

        .course__tag {
            display: inline-flex;
            align-items: center;
            gap: 8px;
            font-family: var(--f-mono);
            font-size: 11px;
            letter-spacing: 0.1em;
            text-transform: uppercase;
            padding: 6px 12px;
            border: 1px solid currentColor;
            border-radius: 0;
            align-self: flex-start;
            opacity: 0.9;
        }

        .course__title {
            font-family: var(--f-display);
            font-size: 34px;
            line-height: 1.02;
            letter-spacing: -0.02em;
            font-weight: 400;
        }

        .course__title em {
            font-style: italic;
            font-weight: 300;
        }

        .course__desc {
            font-size: 14px;
            line-height: 1.5;
            opacity: 0.75;
            max-width: 44ch;
        }

        .course__meta {
            display: flex;
            justify-content: space-between;
            align-items: flex-end;
            margin-top: auto;
            padding-top: 20px;
            border-top: 1px dashed currentColor;
            opacity: 0.95;
        }

        .course__meta-col small {
            display: block;
            font-family: var(--f-mono);
            font-size: 10px;
            letter-spacing: 0.1em;
            text-transform: uppercase;
            opacity: 0.6;
            margin-bottom: 4px;
        }

        .course__meta-col strong {
            font-weight: 500;
            font-size: 14px;
        }

        .course__arrow {
            width: 44px;
            height: 44px;
            border-radius: 50%;
            background: currentColor;
            display: grid;
            place-items: center;
            transition: transform 0.3s;
        }

        .course__arrow svg {
            color: var(--paper);
        }

        .course--dark .course__arrow svg,
        .course--accent .course__arrow svg {
            color: var(--ink);
        }

        .course:hover .course__arrow {
            transform: rotate(-45deg);
        }

        .course__deco {
            position: absolute;
            right: -20px;
            bottom: -20px;
            font-family: var(--f-display);
            font-size: 180px;
            line-height: 1;
            opacity: 0.06;
            font-style: italic;
            pointer-events: none;
        }

        .course--dark .course__deco,
        .course--accent .course__deco {
            opacity: 0.15;
        }

        /* ---------- Process / Approach ---------- */
        .approach {
            background: var(--paper);
        }

        .approach__grid {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: 0;
            border-top: 1px solid var(--rule);
        }

        .step {
            padding: 40px 32px 40px 0;
            border-right: 1px solid var(--rule);
            position: relative;
        }

        .step:last-child {
            border-right: none;
            padding-right: 0;
        }

        .step:nth-child(n + 2) {
            padding-left: 32px;
        }

        .step__num {
            font-family: var(--f-display);
            font-style: italic;
            font-size: 18px;
            color: var(--accent);
            margin-bottom: 20px;
            letter-spacing: 0.05em;
        }

        .step__icon {
            width: 56px;
            height: 56px;
            border-radius: 14px;
            background: var(--ink);
            color: var(--paper);
            display: grid;
            place-items: center;
            margin-bottom: 24px;
        }

        .step:nth-child(2) .step__icon {
            background: var(--accent);
        }

        .step:nth-child(3) .step__icon {
            background: var(--blue);
            color: var(--paper);
        }

        .step__title {
            font-family: var(--f-display);
            font-size: 28px;
            line-height: 1.1;
            letter-spacing: -0.02em;
            font-weight: 400;
            margin-bottom: 12px;
        }

        .step__desc {
            font-size: 14px;
            color: var(--muted);
            line-height: 1.6;
            max-width: 38ch;
        }

        /* ============ Faculty Section ============ */
        .mentors {
            padding: 110px 0 130px;
            background: var(--ink);
            color: var(--paper);
            position: relative;
            overflow: hidden;
        }

        /* Glowing ambient blobs */
        .mentors::before {
            display: none;
        }

        .mentors::after {
            display: none;
        }

        /* Section head */
        .mentors .sec__head {
            display: grid;
            grid-template-columns: auto 1fr;
            gap: 40px;
            align-items: end;
            margin-bottom: 70px;
            position: relative;
            z-index: 1;
        }

        .mentors .sec__eyebrow {
            font-family: var(--f-mono);
            font-size: 12px;
            letter-spacing: 0.14em;
            text-transform: uppercase;
            color: var(--muted-dark);
            display: flex;
            align-items: center;
            gap: 10px;
        }

        .mentors .sec__eyebrow::before {
            content: "";
            width: 24px;
            height: 1px;
            background: var(--paper);
        }

        .mentors .sec__title {
            font-family: var(--f-display);
            font-size: clamp(32px, 4vw, 48px);
            line-height: 1;
            letter-spacing: -0.03em;
            font-weight: 400;
            margin-top: 16px;
        }

        .mentors .sec__title em {
            font-style: italic;
            color: var(--accent);
            font-weight: 300;
        }

        .mentors .sec__meta {
            text-align: right;
            font-size: 14px;
            color: var(--muted-dark);
            max-width: 42ch;
            margin-left: auto;
            line-height: 1.55;
        }

        /* Faculty filter pills (visual only) */
        .faculty-filter {
            display: flex;
            gap: 8px;
            flex-wrap: wrap;
            align-items: center;
            margin-bottom: 40px;
            position: relative;
            z-index: 1;
            padding-bottom: 24px;
            border-bottom: 1px solid var(--rule-dark);
        }

        .faculty-filter__label {
            font-family: var(--f-mono);
            font-size: 11px;
            letter-spacing: 0.1em;
            text-transform: uppercase;
            color: var(--muted-dark);
            margin-right: 8px;
        }

        .chip {
            font-family: var(--f-mono);
            font-size: 11px;
            letter-spacing: 0.08em;
            text-transform: uppercase;
            padding: 8px 14px;
            border-radius: 0;
            border: 1px solid var(--rule-dark);
            transition: all 0.25s ease;
            cursor: pointer;
        }

        .chip:hover {
            border-color: var(--paper);
        }

        .chip.is-active {
            background: var(--paper);
            color: var(--ink);
            border-color: var(--paper);
        }

        .faculty-filter__count {
            margin-left: auto;
            font-family: var(--f-mono);
            font-size: 11px;
            letter-spacing: 0.08em;
            color: var(--muted-dark);
            text-transform: uppercase;
        }

        /* Faculty grid */
        .faculty-grid {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: 20px;
            position: relative;
            z-index: 1;
        }

        /* Faculty card — dossier style */
        .faculty {
            background: rgba(246, 242, 234, 0.03);
            border: 0.5px solid var(--rule);
            border-radius: 0;
            overflow: hidden;
            position: relative;
            transition: all 0.5s cubic-bezier(0.2, 0.8, 0.2, 1);
            display: flex;
            flex-direction: column;
        }

        .faculty:hover {
            background: rgba(246, 242, 234, 0.06);
            box-shadow: none;
            border-color: var(--accent);
            transform: translateY(-6px);
        }

        /* Portrait area */
        .faculty__head {
            position: relative;
            padding: 22px 22px 0;
        }

        .faculty__portrait {
            aspect-ratio: 4/3.2;
            border-radius: var(--r-md);
            position: relative;
            overflow: hidden;
            display: grid;
            place-items: center;
            background: linear-gradient(140deg, var(--accent) 0%, var(--plum) 100%);
        }

        .faculty:nth-child(2) .faculty__portrait {
            background: linear-gradient(140deg, var(--lime) 0%, var(--blue) 100%);
        }

        .faculty:nth-child(3) .faculty__portrait {
            background: linear-gradient(140deg, var(--blue) 0%, var(--accent) 100%);
        }

        /* Portrait decorative elements */
        .faculty__portrait::before {
            content: "";
            position: absolute;
            inset: 0;
            background:
                radial-gradient(circle at 30% 30%,
                    rgba(246, 242, 234, 0.25) 0%,
                    transparent 40%),
                radial-gradient(circle at 80% 80%,
                    rgba(14, 15, 16, 0.25) 0%,
                    transparent 45%);
        }

        .faculty__portrait::after {
            content: "";
            position: absolute;
            inset: 0;
            background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='100' height='100'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='2'/><feColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.4 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");
            opacity: 0.3;
            mix-blend-mode: overlay;
            display: none;
        }

        .faculty__initial {
            font-family: var(--f-display);
            font-size: 120px;
            font-weight: 300;
            font-style: italic;
            color: var(--paper);
            letter-spacing: -0.04em;
            z-index: 1;
            position: relative;
            line-height: 1;
            text-shadow: 0 10px 40px rgba(0, 0, 0, 0.3);
        }

        /* ID badge on portrait */
        .faculty__id {
            position: absolute;
            top: 14px;
            left: 14px;
            z-index: 2;
            background: rgba(10, 14, 39, 0.85);
            color: var(--paper);
            padding: 6px 10px;
            border-radius: 6px;
            font-family: var(--f-mono);
            font-size: 10px;
            letter-spacing: 0.12em;
            display: flex;
            align-items: center;
            gap: 6px;
        }

        .faculty__id .dot {
            width: 5px;
            height: 5px;
            border-radius: 50%;
            background: var(--lime);
            box-shadow: 0 0 0 3px rgba(214, 242, 78, 0.3);
        }

        /* Top-1% ribbon */
        .faculty__rank {
            position: absolute;
            top: 14px;
            right: 14px;
            z-index: 2;
            background: var(--paper);
            color: var(--ink);
            padding: 6px 10px;
            border-radius: 6px;
            font-family: var(--f-mono);
            font-size: 10px;
            letter-spacing: 0.12em;
            font-weight: 500;
            display: flex;
            align-items: center;
            gap: 5px;
        }

        .faculty__rank svg {
            color: var(--accent);
        }

        /* Body */
        .faculty__body {
            padding: 22px;
        }

        .faculty__name {
            font-family: var(--f-display);
            font-size: 26px;
            line-height: 1.1;
            letter-spacing: -0.015em;
            font-weight: 500;
            margin-bottom: 4px;
        }

        .faculty__role {
            font-size: 13px;
            color: var(--muted-dark);
            margin-bottom: 16px;
            display: flex;
            align-items: center;
            gap: 6px;
        }

        .faculty__role strong {
            color: var(--paper);
            font-weight: 500;
        }

        .faculty__role .sep {
            opacity: 0.4;
        }

        .faculty__bio {
            font-size: 13.5px;
            line-height: 1.55;
            color: rgba(246, 242, 234, 0.72);
            margin-bottom: 22px;
            padding-bottom: 22px;
            border-bottom: 1px dashed var(--rule-dark);
        }

        /* Data rows */
        .faculty__data {
            display: flex;
            flex-direction: column;
            gap: 10px;
        }

        .datarow {
            display: grid;
            grid-template-columns: auto 1fr;
            gap: 14px;
            align-items: baseline;
            font-size: 13px;
        }

        .datarow__key {
            font-family: var(--f-mono);
            font-size: 10px;
            letter-spacing: 0.12em;
            text-transform: uppercase;
            color: var(--muted-dark);
            white-space: nowrap;
        }

        .datarow__val {
            color: var(--paper);
            font-weight: 400;
            text-align: right;
            line-height: 1.3;
        }

        .datarow__val .highlight {
            color: var(--lime);
        }

        .datarow__val .progress {
            display: inline-flex;
            align-items: center;
            gap: 8px;
            justify-content: flex-end;
            width: 100%;
        }

        .datarow__val .bar {
            flex: 1;
            max-width: 90px;
            height: 4px;
            background: var(--rule-dark);
            border-radius: 2px;
            overflow: hidden;
        }

        .datarow__val .bar span {
            display: block;
            height: 100%;
            background: linear-gradient(90deg, var(--lime), var(--accent));
            border-radius: 2px;
        }

        /* Footer with action */
        .faculty__foot {
            margin-top: 22px;
            padding-top: 18px;
            border-top: 1px solid var(--rule-dark);
            display: flex;
            justify-content: space-between;
            align-items: center;
        }

        .faculty__tags {
            display: flex;
            gap: 6px;
            flex-wrap: wrap;
        }

        .faculty__tags span {
            font-family: var(--f-mono);
            font-size: 9.5px;
            letter-spacing: 0.08em;
            text-transform: uppercase;
            padding: 4px 8px;
            border-radius: 4px;
            background: rgba(246, 242, 234, 0.08);
            color: rgba(246, 242, 234, 0.8);
        }

        .faculty__link {
            width: 38px;
            height: 38px;
            border-radius: 0;
            background: var(--paper);
            color: var(--ink);
            display: grid;
            place-items: center;
            transition: all 0.3s;
            flex-shrink: 0;
        }

        .faculty:hover .faculty__link {
            background: var(--accent);
            color: var(--paper);
            transform: rotate(-45deg);
        }

        /* Footer CTA below grid */
        .faculty-foot {
            margin-top: 60px;
            padding-top: 40px;
            border-top: 1px solid var(--rule-dark);
            display: flex;
            justify-content: space-between;
            align-items: center;
            gap: 24px;
            position: relative;
            z-index: 1;
            flex-wrap: wrap;
        }

        .faculty-foot__text {
            font-family: var(--f-display);
            font-size: 26px;
            line-height: 1.2;
            letter-spacing: -0.015em;
            font-weight: 400;
            font-style: italic;
            max-width: 44ch;
        }

        .faculty-foot__btn {
            display: inline-flex;
            align-items: center;
            gap: 10px;
            padding: 16px 26px;
            border-radius: 0;
            background: var(--paper);
            color: var(--ink);
            font-size: 14px;
            font-weight: 500;
            transition: all 0.3s;
        }

        .faculty-foot__btn:hover {
            background: var(--accent);
            color: var(--paper);
            transform: translateY(-2px);
        }

        /* ---------- Industries ---------- */
        .industries {
            background: var(--paper-deep);
        }

        .industry-grid {
            display: grid;
            grid-template-columns: repeat(4, 1fr);
            gap: 18px;
        }

        .industry {
            background: var(--paper);
            border: 0.5px solid var(--rule);
            border-radius: 0;
            padding: 28px;
            aspect-ratio: 1/1.1;
            display: flex;
            flex-direction: column;
            justify-content: space-between;
            transition: all 0.4s;
            cursor: pointer;
        }

        .industry:hover {
            background: var(--ink);
            color: var(--paper);
            box-shadow: none;
            border-color: var(--accent);
            transform: rotate(-1deg) scale(1.02);
        }

        .industry__icon {
            width: 48px;
            height: 48px;
            border-radius: 12px;
            background: var(--accent-soft);
            color: var(--accent);
            display: grid;
            place-items: center;
            transition: all 0.3s;
        }

        .industry:hover .industry__icon {
            background: var(--accent);
            color: var(--paper);
        }

        .industry__body h3 {
            font-family: var(--f-display);
            font-size: 24px;
            line-height: 1.05;
            letter-spacing: -0.02em;
            font-weight: 400;
            margin-bottom: 8px;
        }

        .industry__body p {
            font-size: 12px;
            color: var(--muted);
            line-height: 1.5;
        }

        .industry:hover .industry__body p {
            color: rgba(246, 242, 234, 0.65);
        }

        .industry__num {
            font-family: var(--f-mono);
            font-size: 11px;
            letter-spacing: 0.1em;
            color: var(--muted);
        }

        /* ---------- Testimonial / Quote ---------- */
        .pullquote {
            padding: 120px 0;
            border-top: 1px solid var(--rule);
            border-bottom: 1px solid var(--rule);
            position: relative;
            overflow: hidden;
        }

        .pullquote__inner {
            max-width: 1000px;
            margin: 0 auto;
            text-align: center;
            position: relative;
            z-index: 1;
        }

        .pullquote__mark {
            font-family: var(--f-display);
            font-style: italic;
            font-size: 200px;
            line-height: 0.7;
            color: var(--accent);
            opacity: 0.2;
            margin-bottom: -60px;
        }

        .pullquote__text {
            font-family: var(--f-display);
            font-size: clamp(28px, 4vw, 52px);
            line-height: 1.15;
            letter-spacing: -0.02em;
            font-weight: 400;
        }

        .pullquote__text em {
            font-style: italic;
            color: var(--accent);
        }

        .pullquote__cite {
            margin-top: 40px;
            display: inline-flex;
            align-items: center;
            gap: 16px;
            padding: 10px 20px 10px 10px;
            border: 1px solid var(--rule);
            border-radius: 0;
        }

        .pullquote__cite .av {
            width: 40px;
            height: 40px;
            border-radius: 50%;
            background: linear-gradient(135deg, var(--lime), var(--blue));
            display: grid;
            place-items: center;
            color: var(--ink);
            font-weight: 600;
            font-size: 15px;
        }

        .pullquote__cite .meta {
            text-align: left;
        }

        .pullquote__cite strong {
            font-size: 14px;
            font-weight: 500;
            display: block;
        }

        .pullquote__cite small {
            font-size: 11px;
            color: var(--muted);
            font-family: var(--f-mono);
            letter-spacing: 0.05em;
        }

        /* ---------- Scholarship ---------- */
        .scholarship {
            padding: 110px 0;
            background: var(--ink);
            color: var(--paper);
            position: relative;
            overflow: hidden;
        }

        .scholarship::before {
            display: none;
        }

        .scholarship__grid {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 80px;
            align-items: center;
            position: relative;
            z-index: 1;
        }

        .scholarship__tag {
            display: inline-flex;
            align-items: center;
            gap: 8px;
            padding: 6px 14px;
            border-radius: 0;
            background: var(--lime);
            color: var(--ink);
            font-family: var(--f-mono);
            font-size: 11px;
            letter-spacing: 0.1em;
            text-transform: uppercase;
            font-weight: 500;
            margin-bottom: 24px;
        }

        .scholarship h2 {
            font-family: var(--f-display);
            font-size: clamp(32px, 4vw, 48px);
            line-height: 1;
            letter-spacing: -0.03em;
            font-weight: 400;
        }

        .scholarship h2 em {
            font-style: italic;
            color: var(--lime);
            font-weight: 300;
        }

        .scholarship p {
            font-size: 16px;
            line-height: 1.6;
            color: rgba(246, 242, 234, 0.75);
            margin: 24px 0 32px;
            max-width: 48ch;
        }

        .scholarship__visual {
            aspect-ratio: 1/1;
            border-radius: var(--r-lg);
            background:
                radial-gradient(circle at 30% 30%, var(--accent) 0%, transparent 50%),
                radial-gradient(circle at 70% 70%, var(--lime) 0%, transparent 50%),
                var(--plum);
            position: relative;
            overflow: hidden;
            display: grid;
            place-items: center;
        }

        .scholarship__visual-card {
            background: var(--paper);
            color: var(--ink);
            padding: 28px;
            border-radius: 0;
            border: 0.5px solid var(--rule-dark);
            width: 75%;
            box-shadow: 0 30px 60px rgba(0, 0, 0, 0.3);
            transform: rotate(-4deg);
        }

        .scholarship__visual-card h4 {
            font-family: var(--f-display);
            font-size: 30px;
            line-height: 1.05;
            letter-spacing: -0.02em;
            font-weight: 400;
            margin-bottom: 10px;
        }

        .scholarship__visual-card .price {
            font-family: var(--f-display);
            font-size: 56px;
            font-weight: 400;
            letter-spacing: -0.03em;
            display: flex;
            align-items: baseline;
            gap: 6px;
        }

        .scholarship__visual-card .price small {
            font-size: 16px;
            color: var(--muted);
            font-weight: 400;
        }

        .scholarship__visual-card .strike {
            text-decoration: line-through;
            color: var(--muted);
            font-size: 14px;
            margin-top: 6px;
        }

        .scholarship__visual-card hr {
            border: none;
            border-top: 1px dashed var(--rule);
            margin: 16px 0;
        }

        .scholarship__visual-card .tags {
            display: flex;
            gap: 8px;
            flex-wrap: wrap;
        }

        .scholarship__visual-card .tags span {
            font-family: var(--f-mono);
            font-size: 10px;
            padding: 4px 10px;
            border-radius: 999px;
            background: var(--paper-deep);
            letter-spacing: 0.08em;
            text-transform: uppercase;
        }

        /* ---------- CTA Strip ---------- */
        .ctastrip {
            padding: 80px 0;
            background: var(--accent);
            color: var(--ink);
            position: relative;
            overflow: hidden;
            border-top: 1px solid var(--ink);
            border-bottom: 1px solid var(--ink);
        }

        .ctastrip__grid {
            display: grid;
            grid-template-columns: 1.2fr auto;
            gap: 40px;
            align-items: center;
        }

        .ctastrip h2 {
            font-family: var(--f-display);
            font-size: clamp(32px, 4vw, 48px);
            line-height: 1;
            letter-spacing: -0.03em;
            font-weight: 400;
        }

        .ctastrip h2 em {
            font-style: italic;
            font-weight: 300;
        }

        .ctastrip__btn {
            background: var(--ink);
            color: var(--paper);
            padding: 20px 36px;
            border-radius: 0;
            font-size: 15px;
            font-weight: 500;
            display: inline-flex;
            align-items: center;
            gap: 12px;
            transition: all 0.3s;
            white-space: nowrap;
        }

        .ctastrip__btn:hover {
            background: var(--paper);
            color: var(--ink);
            transform: translateY(-2px);
        }

        .ctastrip .btn--primary {
            background: var(--ink);
            color: var(--paper);
            border-color: var(--ink);
        }

        .ctastrip .btn--primary:hover {
            background: var(--paper);
            color: var(--ink);
            border-color: var(--paper);
        }

        /* ---------- Footer ---------- */
        .footer {
            padding: 80px 0 40px;
            background: var(--ink);
            color: var(--paper);
        }

        .footer__grid {
            display: grid;
            grid-template-columns: 1.5fr 1fr 1fr 1fr;
            gap: 40px;
            margin-bottom: 60px;
        }

        .footer__brand h3 {
            font-family: var(--f-display);
            font-size: 42px;
            line-height: 1;
            letter-spacing: -0.02em;
            font-weight: 400;
            margin-bottom: 16px;
        }

        .footer__brand p {
            font-size: 14px;
            color: rgba(246, 242, 234, 0.6);
            max-width: 36ch;
            line-height: 1.6;
        }

        .footer__col h4 {
            font-family: var(--f-mono);
            font-size: 11px;
            letter-spacing: 0.12em;
            text-transform: uppercase;
            color: rgba(246, 242, 234, 0.5);
            margin-bottom: 20px;
        }

        .footer__col a {
            display: block;
            padding: 6px 0;
            font-size: 14px;
            transition: color 0.2s;
        }

        .footer__col a:hover {
            color: var(--accent);
        }

        .footer__bottom {
            border-top: 1px solid rgba(246, 242, 234, 0.1);
            padding-top: 24px;
            display: flex;
            justify-content: space-between;
            align-items: center;
            font-family: var(--f-mono);
            font-size: 11px;
            letter-spacing: 0.08em;
            color: rgba(246, 242, 234, 0.5);
            text-transform: uppercase;
        }

        .footer__social {
            display: flex;
            gap: 20px;
        }

        .footer__social a {
            transition: color 0.2s;
        }

        .footer__social a:hover {
            color: var(--accent);
        }

        /* Giant wordmark in footer */
        .footer__word {
            font-family: var(--f-display);
            font-style: italic;
            font-size: clamp(80px, 18vw, 260px);
            line-height: 0.8;
            letter-spacing: -0.04em;
            font-weight: 300;
            color: rgba(246, 242, 234, 0.04);
            margin-top: 40px;
            user-select: none;
            text-align: center;
        }

        /* ---------- Responsive ---------- */
        @media (max-width: 980px) {
            .hero__grid {
                grid-template-columns: 1fr;
                gap: 50px;
            }

            .hero__aside {
                max-width: 420px;
                margin: 0 auto;
                width: 100%;
            }

            .stats__grid {
                grid-template-columns: repeat(2, 1fr);
            }

            .stat {
                border-left: none;
                border-top: 1px solid var(--rule);
                padding: 24px 0;
            }

            .stat:nth-child(2) {
                border-left: 1px solid var(--rule);
                padding-left: 24px;
            }

            .stat:nth-child(4) {
                border-left: 1px solid var(--rule);
                padding-left: 24px;
            }

            .stat:first-child,
            .stat:nth-child(2) {
                border-top: none;
            }

            .course-grid {
                grid-template-columns: 1fr;
            }

            .course--wide,
            .course--tall,
            .course--half {
                grid-column: span 1;
            }

            .approach__grid {
                grid-template-columns: 1fr;
            }

            .step {
                border-right: none;
                border-bottom: 1px solid var(--rule);
                padding: 32px 0 !important;
            }

            .step:last-child {
                border-bottom: none;
            }

            .faculty-grid {
                grid-template-columns: repeat(2, 1fr);
                gap: 16px;
            }

            .faculty-foot {
                flex-direction: column;
                align-items: flex-start;
            }

            .industry-grid {
                grid-template-columns: repeat(2, 1fr);
            }

            .scholarship__grid {
                grid-template-columns: 1fr;
                gap: 50px;
            }

            .ctastrip__grid {
                grid-template-columns: 1fr;
                gap: 28px;
            }

            .footer__grid {
                grid-template-columns: 1fr 1fr;
                gap: 32px;
            }

            .sec__head {
                grid-template-columns: 1fr;
                gap: 16px;
            }

            .sec__meta {
                text-align: left;
                margin-left: 0;
            }

            .nav__menu {
                display: none;
            }

            .burger {
                display: flex;
            }

            .sec {
                padding: 70px 0;
            }

            .hero {
                padding: 50px 0 70px;
            }

            .badge-1 {
                display: none;
            }

            .badge-2 {
                right: 0;
            }
        }

        @media (max-width: 640px) {
            .mentors {
                padding: 70px 0 80px;
            }

            .faculty-grid {
                grid-template-columns: 1fr;
            }

            .faculty-filter {
                gap: 6px;
            }

            .faculty-filter__count {
                display: none;
            }

            .faculty__initial {
                font-size: 90px;
            }
        }

        /* Reveal animation */
        .reveal {
            opacity: 0;
            transform: translateY(24px);
            transition:
                opacity 0.8s ease,
                transform 0.8s cubic-bezier(0.2, 0.8, 0.2, 1);
        }

        .reveal.in {
            opacity: 1;
            transform: none;
        }