/* ---------- APPLY ONLINE ---------- */
.apply-online-page *{box-sizing:border-box;margin:0;padding:0;}
.apply-online-page html,.apply-online-page body{min-height:100%;}
.apply-online-page body{
    font-family:var(--font-bn);
    background:
        radial-gradient(circle at top left, rgba(215,38,61,.10), transparent 30%),
        radial-gradient(circle at bottom right, rgba(46,139,79,.10), transparent 28%),
        linear-gradient(180deg, #f7f0d1 0%, #fffdf6 48%, #edf5ec 100%);
    color:var(--ink);
    line-height:1.6;
    -webkit-font-smoothing:antialiased;
    min-height:100vh;
    display:flex;
    flex-direction:column;
}
.apply-online-page main{flex:1 0 auto;}
.apply-online-page body > footer{margin-top:auto;}
.apply-online-page a{text-decoration:none;color:inherit;}
.apply-online-page img{max-width:100%;display:block;}
.apply-online-page .container{max-width:1180px;margin:0 auto;padding:0 20px;}

.apply-online-page .tricolor-bar{
    height:6px;
    background:linear-gradient(to right, var(--alarm) 0 33.33%, var(--amber) 33.33% 66.66%, var(--green) 66.66% 100%);
}

.apply-online-page .nav-links{
    display:flex;
    align-items:center;
    gap:12px;
}
.apply-online-page .nav-link{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:38px;
    padding:0 14px;
    border-radius:2px;
    font-family:var(--font-mono);
    font-size:12.5px;
    font-weight:600;
    white-space:nowrap;
    transition:transform .15s ease, border-color .15s ease;
}
.apply-online-page .nav-link-outline{
    border:1px solid rgba(255,255,255,.22);
    background:rgba(255,255,255,.06);
    color:#FFFDF6;
}
.apply-online-page .nav-link-outline:hover{
    transform:translateY(-1px);
    border-color:var(--amber);
    color:var(--amber);
}
.apply-online-page .nav-link-solid{
    background:var(--amber);
    color:var(--ink);
    border:1px solid var(--amber);
}
.apply-online-page .nav-link-solid:hover{
    transform:translateY(-1px);
    background:#e6b01c;
}

.apply-online-page .page-head{
    padding:32px 0 8px;
}
.apply-online-page .page-head h1{
    font-family:var(--font-bn);
    font-size:clamp(28px, 3vw, 42px);
    line-height:1.05;
    font-weight:900;
    margin-bottom:8px;
}
.apply-online-page .page-head p{
    color:var(--steel);
    font-size:14px;
    max-width:780px;
}

.apply-online-page .card{
    background:var(--paper-white);
    border:1px solid var(--line);
    border-radius:3px;
    overflow:hidden;
    box-shadow:0 18px 40px rgba(18,53,36,.08);
    margin-top:22px;
    margin-bottom:60px;
}
.apply-online-page .card-head{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:14px;
    padding:16px 22px;
    border-bottom:1px solid var(--line);
    background:rgba(18,53,36,.03);
}
.apply-online-page .card-head h2{
    font-family:var(--font-mono);
    font-size:12.5px;
    letter-spacing:.06em;
    text-transform:uppercase;
    color:var(--steel);
    font-weight:600;
}
.apply-online-page .card-body{padding:22px;}
.apply-online-page .card-body.no-pad{padding:0;}

.apply-online-page .pill{
    font-family:var(--font-mono);
    font-size:11px;
    padding:4px 10px;
    border-radius:12px;
    letter-spacing:.03em;
    text-transform:uppercase;
    font-weight:600;
    white-space:nowrap;
}
.apply-online-page .pill-green{background:rgba(46,139,79,.14);color:var(--green-dark);}
.apply-online-page .pill-amber{background:rgba(240,192,32,.22);color:#8A6A00;}

.apply-online-page .apply-table{
    width:100%;
    border-collapse:collapse;
    font-size:13.5px;
}
.apply-online-page .apply-table th{
    text-align:left;
    font-family:var(--font-mono);
    font-size:11px;
    letter-spacing:.04em;
    text-transform:uppercase;
    color:var(--steel);
    padding:12px 16px;
    border-bottom:2px solid var(--line);
    background:rgba(18,53,36,.02);
}
.apply-online-page .apply-table td{
    padding:14px 16px;
    border-bottom:1px solid var(--line);
    vertical-align:middle;
}
.apply-online-page .apply-table tr:last-child td{border-bottom:none;}
.apply-online-page .apply-table tr:hover td{background:rgba(18,53,36,.02);}

.apply-online-page .course-title{
    font-weight:700;
    font-size:14px;
    color:var(--ink);
}
.apply-online-page .course-title:hover{color:var(--alarm);}

.apply-online-page .date-cell{
    font-family:var(--font-mono);
    font-size:12px;
    color:var(--steel);
}

.apply-online-page .apply-link{
    display:inline-flex;
    align-items:center;
    gap:6px;
    font-family:var(--font-mono);
    font-size:12px;
    font-weight:600;
    text-transform:uppercase;
    letter-spacing:.03em;
    color:var(--green);
    transition:color .15s ease;
}
.apply-online-page .apply-link:hover{color:var(--alarm);}

.apply-online-page .empty-state{
    text-align:center;
    padding:40px 20px;
    color:var(--steel);
    font-size:14px;
}
.apply-online-page .empty-state .big-icon{
    font-size:48px;
    margin-bottom:12px;
    opacity:.4;
}

.apply-online-page .row-num{
    font-family:var(--font-mono);
    font-size:12px;
    color:var(--steel);
}
.apply-online-page .type-pill{
    font-size:10px;
}

@media (max-width: 860px){
    .apply-online-page .apply-table th,
    .apply-online-page .apply-table td{padding:10px 12px;}
    .apply-online-page .card-head{padding:14px 18px;}
    .apply-online-page .card-body{padding:18px;}
    .apply-online-page .card-body.no-pad{padding:0;}
    .apply-online-page .nav-links{gap:8px;}
    .apply-online-page .nav-link{font-size:11.5px;padding:0 10px;min-height:34px;}
}
@media (max-width: 720px){
    .apply-online-page .apply-table{font-size:12.5px;}
    .apply-online-page .apply-table th{font-size:10px;padding:8px 10px;}
    .apply-online-page .apply-table td{padding:10px;}
    .apply-online-page .apply-table .hide-mobile{display:none;}
}
@media (max-width: 576px){
    .apply-online-page .dash-nav .container{padding:14px 16px;}
    .apply-online-page .page-head{padding-top:24px;}
    .apply-online-page .brand-name{font-size:16px;}
    .apply-online-page .brand-sub{font-size:11px;}
}
