:root {
    --sk-blue: #5567ff;
    --sk-blue-dark: #3345d3;
    --sk-blue-soft: #eef3ff;
    --sk-teal: #0d9488;
    --sk-ink: #15213d;
    --sk-muted: #60708f;
    --sk-line: #e5eaf4;
    --sk-surface: #f6f8fc;
    --sk-white: #fff;
    --sk-shadow: 0 18px 46px rgba(21, 33, 61, .09);
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body.sk-public { margin: 0; color: var(--sk-ink); background: var(--sk-white); font-family: Inter, Arial, sans-serif; font-size: 16px; line-height: 1.65; }
.sk-public h1,.sk-public h2,.sk-public h3,.sk-public h4 { margin-top: 0; color: var(--sk-ink); font-family: Poppins, Arial, sans-serif; font-weight: 700; line-height: 1.18; letter-spacing: -.025em; }
.sk-public p { margin-top: 0; }
.sk-public a { color: inherit; }
.sk-container { width: min(1160px, calc(100% - 40px)); margin: 0 auto; }
.sk-site-nav { position: sticky; z-index: 1000; top: 0; isolation: isolate; }
.sk-header { position: relative; border-bottom: 1px solid rgba(229,234,244,.9); background: #fff; }
.sk-nav-scrim { display: none; position: fixed; z-index: 1; inset: 0; background: rgba(15, 22, 44, .46); }
.sk-nav__bar { min-height: 76px; display: flex; align-items: center; gap: 28px; }
.sk-brand { display: inline-flex; flex: 0 0 auto; align-items: center; }
.sk-brand img { display: block; width: 116px; height: 60px; object-fit: contain; }
.sk-nav__panel { display: flex; flex: 1; align-items: center; gap: 28px; min-width: 0; }
.sk-nav__links { display: flex; flex: 1; align-items: center; gap: 24px; margin: 0; padding: 0; list-style: none; }
.sk-nav__links a,.sk-nav__dropdown-label { border: 0; background: transparent; color: #34415e; font-size: .93rem; font-weight: 650; text-decoration: none; cursor: pointer; }
.sk-nav__links a:hover,.sk-nav__links a:focus-visible,.sk-nav__dropdown-label:hover,.sk-nav__dropdown-label:focus-visible { color: var(--sk-blue); }
.sk-nav__dropdown-label { display: inline-flex; align-items: center; gap: 6px; padding: 0; font: inherit; }
.sk-nav__chevron { width: 12px; height: 12px; display: block; flex: 0 0 auto; }
.sk-dropdown { position: relative; }
.sk-dropdown__menu { position: absolute; visibility: hidden; top: calc(100% + 16px); left: -18px; width: 260px; padding: 10px; border: 1px solid var(--sk-line); border-radius: 16px; background: #fff; box-shadow: var(--sk-shadow); opacity: 0; transform: translateY(-6px); transition: .18s ease; }
.sk-dropdown:hover .sk-dropdown__menu,.sk-dropdown:focus-within .sk-dropdown__menu { visibility: visible; opacity: 1; transform: translateY(0); }
.sk-dropdown__menu a,.sk-dropdown__menu span { display: block; padding: 10px 12px; border-radius: 10px; text-decoration: none; }
.sk-dropdown__menu a:hover { background: var(--sk-blue-soft); }
.sk-dropdown__menu span { color: #8a95aa; font-size: .9rem; }
.sk-nav__actions { display: flex; flex: 0 0 auto; align-items: center; gap: 10px; margin-left: auto; }
.sk-nav__actions form { margin: 0; }
.sk-btn { display: inline-flex; min-height: 48px; align-items: center; justify-content: center; gap: 8px; padding: 12px 22px; border: 1px solid transparent; border-radius: 12px; font-family: Inter, Arial, sans-serif; font-size: .95rem; font-weight: 750; text-align: center; text-decoration: none; cursor: pointer; transition: transform .18s ease, box-shadow .18s ease, background .18s ease; }
.sk-btn:hover { transform: translateY(-2px); text-decoration: none; }
.sk-btn--primary { background: var(--sk-blue); color: #fff !important; box-shadow: 0 10px 24px rgba(49,85,217,.24); }
.sk-btn--primary:hover { background: var(--sk-blue-dark); }
.sk-btn--secondary { border-color: #b9c6e6; background: #fff; color: var(--sk-blue) !important; }
.sk-btn--light { background: #fff; color: var(--sk-blue-dark) !important; }
.sk-btn--small { min-height: 40px; padding: 8px 16px; border-radius: 10px; }
.sk-menu-toggle { display: none; }
.sk-main { min-height: 65vh; }
.sk-section { padding: 88px 0; }
.sk-section--soft { background: var(--sk-surface); }
.sk-section--blue { background: var(--sk-blue-dark); color: #fff; }
.sk-section--blue h2,.sk-section--blue h3 { color: #fff; }
.sk-eyebrow { margin-bottom: 10px; color: var(--sk-blue); font-size: .78rem; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.sk-section__head { max-width: 720px; margin: 0 auto 42px; text-align: center; }
.sk-section__head h2 { margin-bottom: 14px; font-size: clamp(1.8rem, 4vw, 2.65rem); }
.sk-section__head p { color: var(--sk-muted); font-size: 1.05rem; }
.sk-grid { display: grid; gap: 22px; }
.sk-grid--2 { grid-template-columns: repeat(2,minmax(0,1fr)); }
.sk-grid--3 { grid-template-columns: repeat(3,minmax(0,1fr)); }
.sk-grid--5 { grid-template-columns: repeat(5,minmax(0,1fr)); }
.sk-card { padding: 28px; border: 1px solid var(--sk-line); border-radius: 20px; background: #fff; box-shadow: 0 8px 24px rgba(21,33,61,.045); }
.sk-card h3 { margin-bottom: 10px; font-size: 1.18rem; }
.sk-card p { color: var(--sk-muted); }
.sk-card--media { padding: 0; overflow: hidden; }
.sk-card__photo { width: 100%; height: 210px; display: block; object-fit: cover; background: var(--sk-blue-soft); }
.sk-card--media .sk-card__body { display: flex; flex: 1; flex-direction: column; padding: 24px 28px 28px; }
.sk-card__icon { width: 48px; height: 48px; display: grid; place-items: center; margin-bottom: 20px; border-radius: 14px; background: var(--sk-blue-soft); color: var(--sk-blue); font-size: 1.25rem; font-weight: 800; }
.sk-photo { width: 100%; min-height: 380px; display: block; border-radius: 28px; object-fit: cover; box-shadow: var(--sk-shadow); }
.sk-hero-visual { position: relative; overflow: hidden; border-radius: 28px; }
.sk-hero-visual .sk-photo { box-shadow: none; }
.sk-hero-visual .sk-journey-map { position: absolute; left: 16px; right: 16px; bottom: 16px; }
.sk-avatar { width: 52px; height: 52px; border-radius: 50%; object-fit: cover; }
.sk-testimonial { display: flex; flex-direction: column; }
.sk-testimonial__person { display: flex; align-items: center; gap: 12px; margin-top: auto; }
.sk-testimonial__person strong { display: block; }
.sk-page-hero--photo { position: relative; overflow: hidden; min-height: 360px; display: flex; align-items: center; padding: 110px 0 96px; color: #fff; background: #15213d; }
.sk-page-hero--photo > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.sk-page-hero--photo::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(21,33,61,.38), rgba(21,33,61,.66)); }
.sk-page-hero--photo .sk-container { position: relative; z-index: 1; }
.sk-page-hero--photo h1 { color: #fff; }
.sk-page-hero--photo p { color: rgba(255,255,255,.88); }
.sk-page-hero--photo .sk-eyebrow { color: #d5deff; }
.sk-page-hero--photo a { color: #fff; font-weight: 750; }
.sk-page-hero--photo .sk-btn--secondary { background: #fff; }
.sk-hero { position: relative; overflow: hidden; padding: 96px 0 80px; background: linear-gradient(135deg,#f7f9ff 0%,#eef5ff 52%,#ecfbf8 100%); }
.sk-hero::after { content:""; position:absolute; width:420px; height:420px; right:-180px; top:-160px; border:72px solid rgba(49,85,217,.08); border-radius:50%; }
.sk-hero__grid { position: relative; z-index: 1; display: grid; grid-template-columns: 1.1fr .9fr; gap: 70px; align-items: center; }
.sk-hero h1 { margin-bottom: 22px; font-size: clamp(2.55rem,5.5vw,4.6rem); }
.sk-hero__lead { max-width: 670px; color: #52617f; font-size: 1.16rem; }
.sk-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 30px; }
.sk-journey-map { display: grid; grid-template-columns: repeat(5,1fr); gap: 10px; padding: 24px; border: 1px solid rgba(49,85,217,.13); border-radius: 24px; background: rgba(255,255,255,.76); box-shadow: var(--sk-shadow); }
.sk-journey-map span { position: relative; padding: 20px 8px; border-radius: 14px; color: var(--sk-blue-dark); background: #fff; font-size: .82rem; font-weight: 750; text-align: center; }
.sk-journey-map span:not(:last-child)::after { content:"→"; position:absolute; right:-12px; color:var(--sk-blue); }
.sk-career-path { display: grid; grid-template-columns: repeat(8,1fr); align-items: start; gap: 0; }
.sk-career-path__step { position: relative; text-align: center; }
.sk-career-path__step::after { content:""; position:absolute; z-index:0; top:26px; left:50%; width:100%; height:2px; background:#cbd6f1; }
.sk-career-path__step:last-child::after { display:none; }
.sk-career-path__number { position: relative; z-index:1; width:54px; height:54px; display:grid; place-items:center; margin:0 auto 14px; border:6px solid var(--sk-blue-soft); border-radius:50%; background:var(--sk-blue); color:#fff; font-weight:800; }
.sk-career-path__step strong { display:block; padding:0 8px; font-size:.84rem; line-height:1.35; }
.sk-program-card { display:flex; min-height:100%; flex-direction:column; }
.sk-program-card__tag { width:max-content; margin-bottom:20px; padding:7px 11px; border-radius:999px; background:var(--sk-blue-soft); color:var(--sk-blue); font-size:.75rem; font-weight:800; }
.sk-program-card__meta { display:grid; gap:8px; margin:16px 0 24px; color:#52617f; font-size:.9rem; }
.sk-program-card .sk-actions { margin-top:auto; }
.sk-testimonial blockquote { margin:0 0 20px; color:#34415e; font-size:1.03rem; }
.sk-faq { max-width:820px; margin:0 auto; }
.sk-faq details { margin-bottom:12px; padding:20px 22px; border:1px solid var(--sk-line); border-radius:15px; background:#fff; }
.sk-faq summary { color:var(--sk-ink); font-weight:750; cursor:pointer; }
.sk-faq details p { margin:14px 0 0; color:var(--sk-muted); }
.sk-final-cta { padding:50px; border-radius:28px; background:linear-gradient(135deg,var(--sk-blue-dark),var(--sk-blue)); color:#fff; text-align:center; }
.sk-final-cta h2 { color:#fff; }
.sk-final-cta .sk-actions { justify-content:center; }
.sk-page-hero { padding:76px 0 66px; background:var(--sk-surface); text-align:center; }
.sk-page-hero h1 { margin-bottom:14px; font-size:clamp(2.2rem,4.5vw,3.7rem); }
.sk-page-hero p { max-width:720px; margin:0 auto; color:var(--sk-muted); font-size:1.1rem; }
.sk-page-hero.sk-page-hero--photo { color:#fff; }
.sk-page-hero.sk-page-hero--photo::after { background:linear-gradient(180deg,rgba(10,16,36,.58),rgba(10,16,36,.82)); }
.sk-page-hero.sk-page-hero--photo h1,
.sk-page-hero.sk-page-hero--photo p,
.sk-page-hero.sk-page-hero--photo .sk-eyebrow,
.sk-page-hero.sk-page-hero--photo a:not(.sk-btn) { color:#fff; text-shadow:0 2px 14px rgba(0,0,0,.45); }
.sk-page-hero.sk-page-hero--photo p { font-weight:500; }
.sk-check-list { display:grid; gap:12px; padding:0; list-style:none; }
.sk-check-list li { position:relative; padding-left:30px; }
.sk-check-list li::before { content:"✓"; position:absolute; left:0; top:0; color:var(--sk-teal); font-weight:900; }
.sk-split { display:grid; grid-template-columns:1fr 1fr; gap:64px; align-items:center; }
.sk-mock-report { padding:24px; border:1px solid var(--sk-line); border-radius:24px; background:#fff; box-shadow:var(--sk-shadow); }
.sk-bar { margin-bottom:14px; }
.sk-bar__head { display:flex; justify-content:space-between; margin-bottom:5px; font-size:.84rem; font-weight:700; }
.sk-bar__track { height:8px; border-radius:8px; background:#e7ecf7; overflow:hidden; }
.sk-bar__fill { height:100%; border-radius:inherit; background:linear-gradient(90deg,var(--sk-blue),#6e8cff); }
.sk-footer { padding:60px 0 24px; border-top:1px solid var(--sk-line); background:#fff; }
.sk-footer__grid { display:grid; grid-template-columns:1.5fr 1fr 1fr; gap:40px; }
.sk-footer img { width:130px; height:auto; }
.sk-footer h3 { font-size:1rem; }
.sk-footer a { display:block; margin:7px 0; color:var(--sk-muted); text-decoration:none; }
.sk-footer__bottom { margin-top:40px; padding-top:22px; border-top:1px solid var(--sk-line); color:#7c879c; font-size:.84rem; }
.sk-auth-shell { min-height:100vh; display:grid; grid-template-columns:1fr 1fr; background:var(--sk-surface); }
.sk-auth-story { position: relative; display:flex; align-items:center; overflow: hidden; padding:7vw; background:linear-gradient(145deg,var(--sk-blue-dark),var(--sk-blue)); color:#fff; }
.sk-auth-story__bg { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.sk-auth-story::after { content: ""; position: absolute; inset: 0; background: linear-gradient(160deg, rgba(23,55,157,.88), rgba(49,85,217,.68)); }
.sk-auth-story > div { position: relative; z-index: 1; }
.sk-auth-story h1 { color:#fff; font-size:clamp(2.2rem,4vw,3.8rem); }
.sk-auth-panel { display:flex; align-items:center; justify-content:center; padding:40px; }
.sk-auth-card { width:min(440px,100%); padding:36px; border-radius:24px; background:#fff; box-shadow:var(--sk-shadow); }
.sk-auth-card img { width:150px; display:block; margin:0 auto 20px; }
.sk-field { margin-bottom:17px; }
.sk-field label { display:block; margin-bottom:7px; font-size:.86rem; font-weight:750; }
.sk-field input,.sk-field select,.sk-field textarea { width:100%; min-height:48px; padding:10px 13px; border:1px solid #ced7e8; border-radius:11px; background:#fff; color:var(--sk-ink); font:inherit; }
.sk-field textarea { min-height:130px; resize:vertical; }
.sk-field input:focus,.sk-field select:focus,.sk-field textarea:focus { outline:3px solid rgba(85,103,255,.16); border-color:var(--sk-blue); }
.sk-field-error { display:block; margin-top:6px; color:#b42318; }
.sk-form-message { margin-bottom:18px; padding:12px 14px; border-radius:10px; background:#e9f8f5; color:#08776e; font-weight:700; }
.sk-form-message--error { background:#fff0ee; color:#b42318; }
.sk-register { padding:40px 0 90px; background:var(--sk-surface); }
.sk-register__sheet { max-width:920px; margin:0 auto; }
.sk-register-block { margin-bottom:22px; }
.sk-register-block h2 { margin-bottom:18px; font-size:1.2rem; }
.sk-form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:4px 22px; }
.sk-password { position:relative; }
.sk-password input { padding-right:72px; }
.sk-password__toggle { position:absolute; right:12px; top:50%; transform:translateY(-50%); border:0; background:none; color:var(--sk-blue); font-weight:750; cursor:pointer; }
.sk-register-actions { display:flex; flex-wrap:wrap; align-items:center; gap:16px; margin-top:8px; }
.sk-register-actions a { color:var(--sk-blue); font-weight:750; text-decoration:none; }
.sk-legal { max-width:820px; margin:0 auto; }
.sk-legal h2 { margin:8px 0 14px; font-size:1.45rem; }
.sk-legal h3 { margin:28px 0 10px; font-size:1.12rem; }
.sk-legal p, .sk-prose p { color:var(--sk-muted); }
.sk-legal a, .sk-prose a { color:var(--sk-blue); font-weight:750; text-decoration:none; }
.sk-legal article + article { margin-top:22px; }
.sk-prose { max-width:820px; }
.sk-dashboard { padding:64px 0 90px; background:var(--sk-surface); }
.sk-table { width:100%; border-collapse:collapse; }
.sk-table th,.sk-table td { padding:15px; border-bottom:1px solid var(--sk-line); text-align:left; }
.sk-table th { color:var(--sk-muted); font-size:.78rem; text-transform:uppercase; }
body.sk-nav-locked { overflow: hidden; }
.sk-menu-toggle { width: 44px; height: 44px; margin-left: auto; padding: 0; border: 1px solid var(--sk-line); border-radius: 12px; background: #fff; cursor: pointer; }
.sk-menu-toggle:focus-visible { outline: 3px solid rgba(85,103,255,.35); outline-offset: 2px; }
.sk-menu-toggle__bars { position: relative; display: block; width: 18px; height: 12px; margin: 0 auto; }
.sk-menu-toggle__bars span { position: absolute; left: 0; width: 18px; height: 2px; border-radius: 2px; background: var(--sk-ink); transition: transform .2s ease, opacity .2s ease, top .2s ease; }
.sk-menu-toggle__bars span:nth-child(1) { top: 0; }
.sk-menu-toggle__bars span:nth-child(2) { top: 5px; }
.sk-menu-toggle__bars span:nth-child(3) { top: 10px; }
.sk-site-nav.is-open .sk-menu-toggle { border-color: #c9d4ff; background: var(--sk-blue-soft); }
.sk-site-nav.is-open .sk-menu-toggle__bars span:nth-child(1) { top: 5px; transform: rotate(45deg); }
.sk-site-nav.is-open .sk-menu-toggle__bars span:nth-child(2) { opacity: 0; }
.sk-site-nav.is-open .sk-menu-toggle__bars span:nth-child(3) { top: 5px; transform: rotate(-45deg); }
@media (max-width: 900px) {
    .sk-menu-toggle { display: grid; place-items: center; position: relative; z-index: 4; }
    .sk-brand { position: relative; z-index: 4; }
    .sk-nav__bar { position: relative; min-height: 68px; gap: 12px; background: #fff; }
    .sk-nav__panel {
        display: flex;
        position: fixed;
        z-index: 2;
        top: 68px;
        left: 0;
        right: 0;
        width: auto;
        margin: 0;
        flex: none;
        flex-direction: column;
        align-items: stretch;
        gap: 0;
        max-height: min(calc(100dvh - 68px), 560px);
        overflow-y: auto;
        padding: 8px 20px 24px;
        border-bottom: 1px solid var(--sk-line);
        background: #fff;
        box-shadow: 0 22px 48px rgba(21,33,61,.16);
        visibility: hidden;
        opacity: 0;
        pointer-events: none;
        transform: translateY(-8px);
        transition: opacity .2s ease, transform .2s ease, visibility .2s ease;
    }
    .sk-site-nav.is-open .sk-nav__panel {
        visibility: visible;
        opacity: 1;
        pointer-events: auto;
        transform: none;
    }
    .sk-nav-scrim.is-visible {
        display: block;
    }
    .sk-nav__links {
        display: flex;
        flex-direction: column;
        align-items: stretch;
        gap: 0;
        padding: 6px 0 8px;
        border-bottom: 1px solid var(--sk-line);
    }
    .sk-nav__links > li { width: 100%; }
    .sk-nav__links a,
    .sk-nav__dropdown-label {
        display: flex;
        width: 100%;
        min-height: 48px;
        align-items: center;
        justify-content: space-between;
        padding: 10px 4px;
        font-size: 1.05rem;
        text-align: left;
    }
    .sk-nav__chevron { width: 16px; height: 16px; }
    .sk-dropdown { width: 100%; }
    .sk-dropdown.is-open .sk-nav__chevron { transform: rotate(180deg); }
    .sk-dropdown__menu {
        position: static;
        display: none;
        visibility: visible;
        width: 100%;
        margin: 0 0 8px;
        padding: 0 0 6px 12px;
        border: 0;
        border-left: 2px solid #dbe3f5;
        border-radius: 0;
        background: transparent;
        box-shadow: none;
        opacity: 1;
        transform: none;
        transition: none;
    }
    .sk-dropdown:hover .sk-dropdown__menu,
    .sk-dropdown:focus-within .sk-dropdown__menu { display: none; }
    .sk-dropdown.is-open .sk-dropdown__menu { display: block; }
    .sk-dropdown__menu a,
    .sk-dropdown__menu span {
        min-height: 44px;
        padding: 8px 10px;
        border-radius: 10px;
        color: #52617f;
        font-size: .95rem;
        font-weight: 600;
    }
    .sk-nav__actions {
        display: flex;
        flex-direction: column;
        align-items: stretch;
        gap: 10px;
        margin-left: 0;
        padding-top: 16px;
    }
    .sk-nav__actions .sk-btn,
    .sk-nav__actions form .sk-btn { width: 100%; }
    .sk-hero__grid,.sk-split,.sk-auth-shell { grid-template-columns:1fr; }
    .sk-hero-visual .sk-journey-map { position: static; margin-top: 14px; }
    .sk-photo { min-height: 260px; }
    .sk-auth-story { padding:70px 30px; }
    .sk-grid--3,.sk-grid--5 { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .sk-career-path { grid-template-columns:repeat(4,1fr); row-gap:30px; }
}
@media (max-width: 620px) {
    .sk-container { width:min(calc(100% - 28px),1160px); }
    .sk-section { padding:64px 0; }
    .sk-hero { padding:64px 0; }
    .sk-hero__grid { gap:42px; }
    .sk-grid--2,.sk-grid--3,.sk-grid--5,.sk-form-grid { grid-template-columns:1fr; }
    .sk-career-path { grid-template-columns:repeat(2,1fr); }
    .sk-career-path__step:nth-child(even)::after { display:none; }
    .sk-journey-map { grid-template-columns:1fr; }
    .sk-journey-map span:not(:last-child)::after { content:"↓"; right:auto; left:50%; bottom:-15px; top:auto; }
    .sk-final-cta { padding:36px 20px; }
    .sk-footer__grid { grid-template-columns:1fr; }
    .sk-auth-panel { padding:24px 14px; }
    .sk-auth-card { padding:28px 20px; }
}
@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior:auto; }
    *,*::before,*::after { scroll-behavior:auto!important; transition:none!important; animation:none!important; }
}
