/* =========================================================
   ABOUT UNIVERSITY
========================================================= */

.intro {
    position:relative;
    border-top:1px solid rgba(20,125,108,.14);
    border-bottom:1px solid rgba(20,125,108,.14);
    background:
        radial-gradient(
            circle at 6% 12%,
            rgba(20,158,133,.18),
            transparent 31%
        ),
        radial-gradient(
            circle at 94% 88%,
            rgba(215,184,117,.18),
            transparent 29%
        ),
        linear-gradient(
            135deg,
            #e7f5f1 0%,
            #f7faf7 50%,
            #f5ecdf 100%
        );
}

.intro-grid {
    display:grid;
    grid-template-columns:1fr 1.05fr;
    align-items:center;
    gap:90px;
}

/* =========================================================
   IMAGE COMPOSITION
========================================================= */

.intro-media {
    position:relative;
    width:100%;
    min-width:0;
    padding:0 45px 125px 0;
}

/* Main campus image */
.intro-media .main-img {
    display:block;
    width:100%;
    height:auto;
    margin:0;
    border-radius:12px 95px 12px 12px;
    object-fit:contain;
    box-shadow:0 20px 45px rgba(33,34,84,.13);
    transition:transform .3s ease,box-shadow .3s ease;
}

.intro-media:hover .main-img {
    transform:translateY(-3px);
    box-shadow:0 25px 55px rgba(33,34,84,.17);
}

/* Classroom image — lower-right overlap */
.intro-media .small-img {
    position:absolute;
    right:0;
    bottom:0;
    z-index:2;
    display:block;
    width:55%;
    height:auto;
    margin:0;
    border:9px solid #fff;
    border-radius:14px;
    background:#fff;
    object-fit:contain;
    box-shadow:0 15px 35px rgba(32,33,72,.16);
}

/* =========================================================
   CIRCULAR EMBLEM — LOWER-LEFT
========================================================= */

.intro-emblem {
    position:absolute;
    bottom:22px;
    left:-18px;
    z-index:3;
    width:150px;
    height:150px;
    aspect-ratio:1;
    padding:0;
    overflow:hidden;
    border:6px solid #fff;
    border-radius:50%;
    background:#fff;
    clip-path:circle(50% at 50% 50%);
    box-shadow:0 10px 25px rgba(35,41,104,.18);
}

.intro-emblem img {
    display:block;
    width:100%;
    height:100%;
    margin:0;
    padding:0;
    border:0;
    border-radius:50%;
    object-fit:cover;
    object-position:center center;
}

/* =========================================================
   ABOUT CONTENT
========================================================= */

.intro-copy .section-title {
    font-size:clamp(2.5rem,4.1vw,4.1rem);
}

.signature-line {
    margin-top:32px;
    padding-top:22px;
    border-top:1px solid var(--line);
}

.signature-mark {
    color:var(--emerald);
    font:italic 28px Georgia,serif;
}

/* =========================================================
   MEDIUM DESKTOP
========================================================= */

@media(max-width:1199px) {
    .intro-grid {
        gap:50px;
    }

    .intro-media {
        padding-right:35px;
        padding-bottom:110px;
    }

    .intro-media .small-img {
        width:56%;
        border-width:8px;
    }

    .intro-emblem {
        left:-12px;
        width:135px;
        height:135px;
    }
}

/* =========================================================
   TABLET
========================================================= */

@media(max-width:991px) {
    .intro-grid {
        grid-template-columns:1fr 1fr;
        align-items:start;
        gap:30px;
    }

    .intro-media {
        padding:0 25px 95px 0;
    }

    .intro-media .small-img {
        width:57%;
        border-width:7px;
    }

    .intro-emblem {
        bottom:16px;
        left:-10px;
        width:120px;
        height:120px;
        border-width:5px;
    }
}

/* =========================================================
   MOBILE
========================================================= */

@media(max-width:700px) {
    .intro-grid {
        grid-template-columns:1fr;
        gap:38px;
    }

    .intro-media {
        width:100%;
        max-width:540px;
        margin:0 auto;
        padding:0 25px 90px 0;
    }

    .intro-media .main-img {
        width:100%;
        height:auto;
        border-radius:10px 55px 10px 10px;
    }

    .intro-media .small-img {
        right:0;
        bottom:0;
        width:58%;
        height:auto;
        border-width:6px;
        border-radius:11px;
    }

    .intro-emblem {
        bottom:14px;
        left:0;
        width:110px;
        height:110px;
        border-width:4px;
    }

    .intro-copy .section-title {
        font-size:clamp(2rem,9vw,2.65rem);
    }

    .signature-mark {
        font-size:25px;
    }
}

/* =========================================================
   SMALL MOBILE
========================================================= */

@media(max-width:430px) {
    .intro-media {
        padding-right:18px;
        padding-bottom:78px;
    }

    .intro-media .small-img {
        width:60%;
        border-width:5px;
    }

    .intro-emblem {
        bottom:10px;
        width:92px;
        height:92px;
        border-width:4px;
    }
}

/* =========================================================
   STICKY DESKTOP IMAGE
========================================================= */

@media(min-width:992px) {
    .intro-grid {
        align-items:start;
    }

    .intro-media {
        position:sticky;
        top:105px;
        margin-top:15px;
    }
}

/* =========================================================
   REDUCED MOTION
========================================================= */

@media(prefers-reduced-motion:reduce) {
    .intro-media .main-img {
        transition:none;
    }

    .intro-media:hover .main-img {
        transform:none;
    }
}