 
/* =========================================================
   TSCN — PRINCIPAL PAGE
   PREMIUM RESPONSIVE CSS
========================================================= */

.tscn-principal-page{
    --maroon:#a91d39;
    --maroon-dark:#741128;
    --gold:#c69a4c;
    --cream:#fffaf3;
    --cream-2:#fff4e5;
    --dark:#252328;
    --text:#65656b;
    --border:#eadfd3;
    background:#fff;
    overflow:hidden;
}


/* =========================================================
   INTRO
========================================================= */

.tscn-principal-intro{
    position:relative;
    padding:85px 0 95px;
    background:
        radial-gradient(
            circle at 8% 20%,
            rgba(169,29,57,.06),
            transparent 25%
        ),
        radial-gradient(
            circle at 92% 80%,
            rgba(198,154,74,.10),
            transparent 28%
        ),
        var(--cream);
}


.tscn-principal-grid{
    display:grid;
    grid-template-columns: .92fr 1.08fr;
    gap:75px;
    align-items:center;
}


/* =========================================================
   IMAGE
========================================================= */

.tscn-principal-photo-wrap{
    position:relative;
}


.tscn-principal-photo-card{
    position:relative;
    max-width:550px;
    margin:auto;
    padding:12px;
    border-radius:34px;
    background:#fff;
    box-shadow:
        0 30px 70px rgba(55,25,25,.15);
}


.tscn-principal-photo-card::before{
    content:"";
    position:absolute;
    inset:-14px;
    border:1px solid rgba(169,29,57,.12);
    border-radius:42px;
    z-index:0;
}


.tscn-principal-photo-glow{
    position:absolute;
    width:220px;
    height:220px;
    right:-80px;
    top:-70px;
    background:rgba(198,154,74,.17);
    filter:blur(55px);
    border-radius:50%;
}


.tscn-principal-photo{
    position:relative;
    z-index:2;
    display:block;
    width:100%;
    height:570px;
    object-fit:cover;
    object-position:center;
    border-radius:26px;
}


.tscn-principal-photo-label{
    position:absolute;
    z-index:5;
    left:30px;
    bottom:30px;

    display:flex;
    align-items:center;
    gap:13px;

    min-width:235px;
    padding:14px 18px;

    background:rgba(255,255,255,.96);
    border:1px solid rgba(255,255,255,.8);
    border-radius:17px;

    box-shadow:0 15px 35px rgba(0,0,0,.14);
}


.tscn-principal-label-icon{
    width:44px;
    height:44px;

    display:flex;
    align-items:center;
    justify-content:center;

    color:#fff;
    background:var(--maroon);
    border-radius:13px;
}


.tscn-principal-photo-label small{
    display:block;
    margin-bottom:3px;

    color:var(--gold);
    font-size:9px;
    font-weight:900;
    letter-spacing:1.8px;
}


.tscn-principal-photo-label strong{
    color:var(--dark);
    font-size:13px;
}


/* =========================================================
   PROFILE
========================================================= */

.tscn-principal-kicker{
    display:flex;
    align-items:center;
    gap:11px;
    margin-bottom:16px;
}


.tscn-principal-kicker span{
    width:42px;
    height:2px;
    background:var(--gold);
}


.tscn-principal-kicker strong{
    color:var(--maroon);
    font-size:9px;
    font-weight:900;
    letter-spacing:2.4px;
}


.tscn-principal-title{
    margin:0;

    color:var(--dark);

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:clamp(48px,5vw,72px);
    line-height:.98;
    letter-spacing:-2px;
}


.tscn-principal-title em{
    display:block;
    color:var(--maroon);
    font-style:normal;
}


.tscn-principal-role{
    margin:20px 0 0;

    color:#8b6a36;

    font-size:15px;
    font-weight:700;
}


.tscn-principal-role span{
    margin:0 8px;
    color:var(--gold);
}


.tscn-principal-intro-text{
    max-width:650px;
    margin:22px 0 27px;

    color:var(--text);
    font-size:15px;
    line-height:1.85;
}


/* =========================================================
   QUALIFICATION
========================================================= */

.tscn-principal-qualification{
    display:flex;
    align-items:center;
    gap:15px;

    padding:18px;

    background:#fff;
    border:1px solid var(--border);
    border-radius:18px;
}


.tscn-qualification-icon{
    width:50px;
    height:50px;

    flex:0 0 50px;

    display:flex;
    align-items:center;
    justify-content:center;

    color:#fff;
    background:var(--maroon);
    border-radius:14px;
}


.tscn-principal-qualification span{
    display:block;
    margin-bottom:4px;

    color:var(--gold);
    font-size:8px;
    font-weight:900;
    letter-spacing:1.5px;
}


.tscn-principal-qualification strong{
    color:var(--dark);
    font-size:13px;
}


/* =========================================================
   DEGREE CARDS
========================================================= */

.tscn-principal-degree-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:12px;
    margin-top:14px;
}


.tscn-degree-card{
    padding:17px 15px;

    background:#fff;
    border:1px solid var(--border);
    border-radius:16px;

    transition:
        transform .3s ease,
        box-shadow .3s ease,
        border-color .3s ease;
}


.tscn-degree-card:hover{
    transform:translateY(-5px);
    border-color:rgba(169,29,57,.22);
    box-shadow:0 15px 30px rgba(60,25,30,.08);
}


.tscn-degree-card span{
    display:block;
    color:var(--maroon);
    font-size:18px;
    font-weight:900;
}


.tscn-degree-card strong{
    display:block;
    margin-top:2px;
    color:var(--dark);
    font-size:12px;
}


.tscn-degree-card small{
    display:block;
    margin-top:7px;
    color:#999;
    font-size:11px;
}


/* =========================================================
   REGISTRATION
========================================================= */

.tscn-principal-registration{
    display:flex;
    align-items:center;
    gap:13px;

    margin-top:14px;
    padding:13px 16px;

    background:
        linear-gradient(
            135deg,
            rgba(169,29,57,.06),
            rgba(198,154,74,.08)
        );

    border-radius:16px;
}


.tscn-registration-icon{
    width:40px;
    height:40px;

    display:flex;
    align-items:center;
    justify-content:center;

    color:var(--maroon);
    background:#fff;
    border-radius:12px;
}


.tscn-principal-registration small{
    display:block;
    color:#9a8d84;
    font-size:8px;
    font-weight:900;
    letter-spacing:1.4px;
}


.tscn-principal-registration strong{
    display:block;
    margin-top:2px;
    color:var(--dark);
    font-size:14px;
}


/* =========================================================
   SECTION HEAD
========================================================= */

.tscn-principal-section-head{
    max-width:720px;
    margin:0 auto 50px;
    text-align:center;
}


.tscn-section-kicker{
    display:inline-block;
    margin-bottom:12px;

    color:var(--maroon);

    font-size:9px;
    font-weight:900;
    letter-spacing:2.5px;
}


.tscn-principal-section-head h3{
    margin:0;

    color:var(--dark);

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:clamp(36px,4vw,54px);
    line-height:1.05;
}


.tscn-principal-section-head h3 em{
    color:var(--maroon);
    font-style:normal;
}


.tscn-principal-section-head p{
    max-width:600px;
    margin:17px auto 0;

    color:var(--text);
    font-size:14px;
    line-height:1.8;
}


/* =========================================================
   ACADEMIC
========================================================= */

.tscn-principal-academic{
    padding:100px 0;
    background:#fff;
}


.tscn-academic-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:20px;
}


.tscn-academic-card{
    position:relative;

    padding:30px 27px;

    background:var(--cream);
    border:1px solid var(--border);
    border-radius:22px;

    overflow:hidden;

    transition:
        transform .3s ease,
        box-shadow .3s ease;
}


.tscn-academic-card:hover{
    transform:translateY(-7px);
    box-shadow:0 22px 45px rgba(60,30,30,.10);
}


.tscn-academic-number{
    position:absolute;
    right:20px;
    top:17px;

    color:rgba(169,29,57,.10);

    font-family:Georgia,serif;
    font-size:38px;
    font-weight:700;
}


.tscn-academic-icon{
    width:54px;
    height:54px;

    display:flex;
    align-items:center;
    justify-content:center;

    margin-bottom:22px;

    color:#fff;
    background:var(--maroon);
    border-radius:16px;

    font-size:19px;
}


.tscn-academic-card small{
    color:var(--gold);
    font-size:10px;
    font-weight:900;
    letter-spacing:1px;
}


.tscn-academic-card h4{
    margin:6px 0 7px;

    color:var(--dark);
    font-size:20px;
}


.tscn-academic-card p{
    margin:0 0 5px;

    color:#555;
    font-size:13px;
    line-height:1.6;
}


.tscn-academic-card span{
    color:#999;
    font-size:11px;
    line-height:1.5;
}


/* =========================================================
   MESSAGE
========================================================= */

.tscn-principal-message{
    padding:105px 0;

    background:
        linear-gradient(
            135deg,
            #fff8ee,
            #fffdf9
        );
}


.tscn-message-grid{
    display:grid;
    grid-template-columns:1.35fr .65fr;
    gap:65px;
    align-items:start;
}


.tscn-message-content h3{
    margin:0;

    color:var(--dark);

    font-family:Georgia,"Times New Roman",serif;

    font-size:clamp(38px,4vw,55px);
    line-height:1.05;
}


.tscn-message-content h3 em{
    display:block;
    color:var(--maroon);
    font-style:normal;
}


.tscn-message-line{
    width:65px;
    height:3px;

    margin:22px 0 25px;

    background:
        linear-gradient(
            90deg,
            var(--maroon),
            var(--gold)
        );
}


.tscn-message-content p{
    margin:0 0 18px;

    color:#626168;

    font-size:14px;
    line-height:1.9;
}


/* =========================================================
   MESSAGE SIDE
========================================================= */

.tscn-message-side{
    position:sticky;
    top:120px;
}


.tscn-message-quote{
    padding:35px;

    background:#fff;

    border:1px solid var(--border);
    border-radius:25px;

    box-shadow:0 22px 45px rgba(60,30,30,.08);
}


.tscn-message-quote > i{
    color:var(--maroon);
    font-size:32px;
}


.tscn-message-quote p{
    margin:20px 0 0;

    color:#39383c;

    font-family:Georgia,"Times New Roman",serif;

    font-size:20px;
    line-height:1.6;
}


.tscn-message-signature{
    margin-top:27px;
    padding-left:8px;
}


.tscn-signature-line{
    width:50px;
    height:2px;

    margin-bottom:10px;

    background:var(--gold);
}


.tscn-message-signature strong{
    display:block;
    color:var(--dark);
    font-size:15px;
}


.tscn-message-signature span{
    display:block;
    margin-top:4px;
    color:var(--maroon);
    font-size:11px;
    font-weight:700;
}


/* =========================================================
   EXPERIENCE
========================================================= */

.tscn-principal-experience{
    padding:105px 0;

    background:#fff;
}


.tscn-experience-list{
    position:relative;
    max-width:900px;
    margin:auto;
}


.tscn-experience-list::before{
    content:"";

    position:absolute;

    left:180px;
    top:20px;
    bottom:20px;

    width:1px;

    background:
        linear-gradient(
            to bottom,
            transparent,
            var(--gold),
            var(--maroon),
            transparent
        );
}


.tscn-experience-item{
    position:relative;

    display:grid;
    grid-template-columns:145px 70px 1fr;
    gap:0;

    min-height:130px;
}


.tscn-experience-year{
    padding-top:8px;
    text-align:right;
    padding-right:30px;
}


.tscn-experience-year span{
    display:block;

    color:var(--maroon);

    font-family:Georgia,serif;

    font-size:24px;
    font-weight:700;
}


.tscn-experience-year small{
    display:block;

    margin-top:2px;

    color:#aaa;
    font-size:10px;
    font-weight:700;
    text-transform:uppercase;
}


.tscn-experience-marker{
    position:relative;
    z-index:3;

    width:50px;
    height:50px;

    display:flex;
    align-items:center;
    justify-content:center;

    margin:auto;

    color:#fff;
    background:var(--maroon);

    border:5px solid #fff;
    border-radius:50%;

    box-shadow:0 7px 18px rgba(169,29,57,.18);
}


.tscn-experience-content{
    margin-left:18px;
    padding:4px 0 35px;
}


.tscn-experience-content > span{
    color:var(--gold);

    font-size:8px;
    font-weight:900;
    letter-spacing:1.5px;
}


.tscn-experience-content h4{
    margin:6px 0 5px;

    color:var(--dark);

    font-size:19px;
}


.tscn-experience-content p{
    margin:0;

    color:#888;
    font-size:12px;
}


.tscn-current .tscn-experience-marker{
    background:var(--gold);
}


.tscn-current .tscn-experience-content{
    padding:18px 20px 30px;

    background:var(--cream);

    border:1px solid var(--border);
    border-radius:17px;
}


/* =========================================================
   CTA
========================================================= */

.tscn-principal-cta{
    padding:35px 0;

    background:
        linear-gradient(
            110deg,
            var(--maroon-dark),
            var(--maroon)
        );
}


.tscn-principal-cta-inner{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;
}


.tscn-principal-cta-inner > div > span{
    color:#e6c783;

    font-size:8px;
    font-weight:900;
    letter-spacing:2px;
}


.tscn-principal-cta h3{
    margin:7px 0 0;

    color:#fff;

    font-family:Georgia,serif;

    font-size:28px;
}


.tscn-principal-cta h3 strong{
    color:#f2cc75;
}


.tscn-principal-cta-btn{
    display:inline-flex;
    align-items:center;
    gap:12px;

    padding:14px 21px;

    color:var(--maroon);
    background:#fff;

    border-radius:13px;

    font-size:12px;
    font-weight:800;

    text-decoration:none;

    transition:.3s ease;
}


.tscn-principal-cta-btn:hover{
    color:#fff;
    background:var(--gold);
    transform:translateY(-2px);
}


/* =========================================================
   TABLET
========================================================= */

@media(max-width:991px){

    .tscn-principal-grid{
        grid-template-columns:1fr;
        gap:55px;
    }

    .tscn-principal-photo-card{
        max-width:600px;
    }

    .tscn-principal-photo{
        height:620px;
    }

    .tscn-principal-profile{
        max-width:700px;
        margin:auto;
    }

    .tscn-academic-grid{
        grid-template-columns:1fr;
        max-width:650px;
        margin:auto;
    }

    .tscn-message-grid{
        grid-template-columns:1fr;
        gap:45px;
    }

    .tscn-message-side{
        position:relative;
        top:auto;
        max-width:650px;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media(max-width:767px){

    .tscn-principal-intro{
        padding:55px 0 70px;
    }

    .tscn-principal-grid{
        gap:40px;
    }

    .tscn-principal-photo-card{
        padding:8px;
        border-radius:24px;
    }

    .tscn-principal-photo{
        height:460px;
        border-radius:19px;
    }

    .tscn-principal-photo-label{
        left:20px;
        bottom:20px;
        min-width:210px;
        padding:11px 13px;
    }

    .tscn-principal-label-icon{
        width:38px;
        height:38px;
    }

    .tscn-principal-title{
        font-size:48px;
        letter-spacing:-1px;
    }

    .tscn-principal-role{
        font-size:13px;
        line-height:1.6;
    }

    .tscn-principal-intro-text{
        font-size:13px;
        line-height:1.75;
    }

    .tscn-principal-degree-grid{
        gap:8px;
    }

    .tscn-degree-card{
        padding:14px 10px;
    }

    .tscn-degree-card span{
        font-size:16px;
    }

    .tscn-degree-card strong{
        font-size:11px;
    }

    .tscn-principal-academic,
    .tscn-principal-message,
    .tscn-principal-experience{
        padding:70px 0;
    }

    .tscn-principal-section-head{
        margin-bottom:35px;
    }

    .tscn-principal-section-head h3,
    .tscn-message-content h3{
        font-size:38px;
    }

    .tscn-principal-section-head p{
        font-size:12px;
    }

    .tscn-message-content p{
        font-size:13px;
        line-height:1.8;
    }

    .tscn-message-quote{
        padding:25px;
    }

    .tscn-message-quote p{
        font-size:17px;
    }

    .tscn-experience-list::before{
        left:25px;
    }

    .tscn-experience-item{
        grid-template-columns:50px 1fr;
        gap:15px;
        min-height:120px;
    }

    .tscn-experience-year{
        display:none;
    }

    .tscn-experience-marker{
        grid-column:1;
        grid-row:1;
        width:50px;
        height:50px;
    }

    .tscn-experience-content{
        grid-column:2;
        grid-row:1;
        margin-left:0;
        padding:4px 0 30px;
    }

    .tscn-experience-content h4{
        font-size:16px;
        line-height:1.4;
    }

    .tscn-experience-content p{
        font-size:11px;
    }

    .tscn-current .tscn-experience-content{
        padding:15px;
    }

    .tscn-principal-cta-inner{
        flex-direction:column;
        align-items:flex-start;
    }

    .tscn-principal-cta h3{
        font-size:23px;
    }

    .tscn-principal-cta-btn{
        width:100%;
        justify-content:center;
    }

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media(max-width:480px){

    .tscn-principal-photo{
        height:400px;
    }

    .tscn-principal-title{
        font-size:40px;
    }

    .tscn-principal-kicker strong{
        font-size:7px;
        letter-spacing:1.5px;
    }

    .tscn-principal-kicker span{
        width:25px;
    }

    .tscn-principal-qualification{
        padding:13px;
    }

    .tscn-principal-qualification strong{
        font-size:11px;
        line-height:1.5;
    }

    .tscn-principal-degree-grid{
        grid-template-columns:repeat(3,1fr);
    }

    .tscn-degree-card{
        text-align:center;
        padding:13px 5px;
    }

    .tscn-degree-card span{
        font-size:14px;
    }

    .tscn-degree-card strong{
        font-size:10px;
    }

    .tscn-degree-card small{
        font-size:9px;
    }

    .tscn-message-content h3,
    .tscn-principal-section-head h3{
        font-size:33px;
    }

    .tscn-message-content p{
        font-size:12px;
    }

}

 