
:root{color-scheme:light;--bg:#fff;--grey:#f6f7fa;--ink:#16162b;--mute:#767690;--navy:#2c2a72;--on-navy:#fff;--blue:#dce9ff;--yellow:#fff8d9;--gold:#c99a08;--line:#e3e4ee;
box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
html{scroll-padding-top:calc(76px + env(safe-area-inset-top,0px));scroll-behavior:smooth}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font:400 16px/1.65 Inter,system-ui,sans-serif}
a{color:inherit;text-decoration:none}
img{max-width:100%}
:focus-visible{outline:3px solid var(--navy);outline-offset:3px}
h1,h2,h3{font-family:Outfit,system-ui,sans-serif;font-weight:500;line-height:1.15;margin:0}
h1{font-size:clamp(2.2rem,5.5vw,4rem)}
h2{font-size:clamp(1.8rem,4vw,2.7rem)}
h3{font-size:1.2rem}
p{margin:0}
.wrap{max-width:1160px;margin:0 auto;padding:0 20px}
.eyebrow{color:var(--navy);font-size:.9rem;font-weight:500;margin-bottom:10px}
header{position:sticky;top:env(safe-area-inset-top,0px);z-index:10;background:var(--bg);box-shadow:0 2px 14px rgba(40,40,90,.08)}
.nav{display:flex;align-items:center;justify-content:space-between;height:68px;gap:16px}
.logo img{height:34px;display:block}
.nav ul{display:flex;gap:30px;list-style:none;margin:0;padding:0;font-size:.95rem;font-weight:500}
.nav ul a:hover{color:var(--navy)}
.burger{display:none;background:none;border:0;padding:8px;color:var(--ink);cursor:pointer}
.burger span{display:block;width:24px;height:2.5px;background:currentColor;margin:5px 0;border-radius:2px}
@media(max-width:860px){.burger{display:block;order:-1}.nav{justify-content:flex-start}.logo{margin:0 auto 0 12px}.nav ul{display:none;position:absolute;left:0;right:0;top:68px;background:var(--bg);flex-direction:column;gap:0;box-shadow:0 12px 20px rgba(40,40,90,.1)}.nav ul.open{display:flex}.nav ul a{display:block;padding:16px 24px;border-top:1px solid var(--line)}.nav .pill.small{display:none}}
.pill{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:15px 30px;border-radius:99px;font:500 .95rem Outfit,sans-serif;border:1.5px solid var(--navy);background:var(--navy);color:var(--on-navy);cursor:pointer;transition:transform .15s}
.pill:hover{transform:translateY(-2px)}
.pill.soft{background:var(--blue);border-color:var(--blue);color:var(--navy)}
.pill.soft::before{content:"";width:8px;height:8px;border-radius:50%;background:#f5b800}
.pill.line{background:transparent;color:var(--navy)}
.pill.small{padding:11px 22px}
.ico{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--on-navy);color:var(--navy);font-size:.8rem;line-height:1}
.hero{background:linear-gradient(135deg,var(--blue) -20%,var(--bg) 45%,var(--yellow) 120%);padding:20px 0 56px;text-align:center}
.banner{border-radius:20px;min-height:200px;background:linear-gradient(120deg,#3b2a8c,#6b2fa0 55%,#c0427a);color:#fff;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:36px 24px;margin-bottom:36px}
.banner b{font:600 clamp(1.8rem,5vw,3.2rem)/1.1 Outfit,sans-serif}
.banner b em{font-style:normal;background:#27a7e0;padding:0 .3em;border-radius:6px}
.banner span{margin-top:12px;opacity:.9}
.hero p.sub{color:var(--mute);max-width:58ch;margin:18px auto 30px}
.btns{display:grid;gap:12px;max-width:520px;margin:0 auto}
@media(min-width:640px){.btns{grid-template-columns:1fr 1fr}}
section{padding:72px 0}
.grey{background:var(--grey)}
.center{text-align:center}
.head{margin-bottom:32px}
.head .pill{margin-top:22px}
.slider{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;padding:6px 4px 18px;scrollbar-width:none}
.slider::-webkit-scrollbar{display:none}
.course{flex:0 0 min(340px,86%);scroll-snap-align:start;background:var(--bg);border-radius:20px;padding:10px;box-shadow:0 4px 18px rgba(40,40,90,.12);display:flex;flex-direction:column;gap:14px}
.course .img{position:relative;aspect-ratio:4/3;border-radius:14px;display:grid;place-items:center;font:500 4.2rem Outfit,sans-serif;color:rgba(255,255,255,.9)}
.course .img i{position:absolute;top:10px;right:10px;font:500 .75rem Inter;font-style:normal;color:var(--ink);background:rgba(255,255,255,.85);padding:4px 10px;border-radius:99px}
.course .row{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:0 8px 8px}
.arrows{display:flex;gap:12px;justify-content:center;margin-top:6px}
.arrows button{width:38px;height:38px;border-radius:50%;border:0;background:var(--bg);color:var(--ink);box-shadow:0 2px 10px rgba(40,40,90,.18);cursor:pointer;font-size:1.1rem}
.stats{display:grid;grid-template-columns:1fr 1fr;gap:16px;max-width:520px;margin:0 auto}
@media(min-width:760px){.stats{grid-template-columns:repeat(4,1fr);max-width:none}}
.stat{border-radius:16px;padding:26px 12px;text-align:center}
.stat b{display:block;font:500 1.9rem Outfit,sans-serif}
.stat span{color:var(--mute)}
.stat.y{background:var(--yellow)}.stat.y b{color:var(--gold)}
.stat.b{background:var(--blue)}.stat.b b{color:var(--navy)}
.two{display:grid;gap:20px;grid-template-columns:1fr 1fr}
@media(max-width:760px){.two{grid-template-columns:1fr}}
.panel{border-radius:20px;padding:32px;display:flex;flex-direction:column;gap:14px;align-items:flex-start}
.panel.b{background:var(--blue)}.panel.y{background:var(--yellow)}
.panel ul{margin:0;padding-left:20px;color:var(--mute)}
.panel .pill{margin-top:8px}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
@media(max-width:860px){.cards{grid-template-columns:1fr}}
.card{background:var(--bg);border-radius:18px;padding:26px;box-shadow:0 4px 18px rgba(40,40,90,.1);display:flex;flex-direction:column;gap:10px}
.card p{color:var(--mute);font-size:.95rem}
.card a{color:var(--navy);font-weight:500;margin-top:6px}
.tag{align-self:flex-start;font-size:.78rem;color:var(--navy);background:var(--blue);padding:3px 12px;border-radius:99px}
details{background:var(--bg);border-radius:14px;padding:18px 22px;margin-bottom:12px;box-shadow:0 2px 12px rgba(40,40,90,.08)}
summary{cursor:pointer;font:500 1.05rem Outfit,sans-serif;list-style:none;display:flex;justify-content:space-between;gap:12px}
summary::after{content:"+";color:var(--navy);font-size:1.4rem;line-height:1}
details[open] summary::after{content:"\2212"}
details p{margin-top:10px;color:var(--mute)}
.contact{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start}
@media(max-width:800px){.contact{grid-template-columns:1fr}}
form{display:grid;gap:14px;background:var(--bg);padding:26px;border-radius:20px;box-shadow:0 4px 18px rgba(40,40,90,.1)}
label{font-size:.88rem;font-weight:500;display:grid;gap:6px}
input,select,textarea{font:inherit;padding:13px 16px;border:1.5px solid var(--line);border-radius:12px;background:var(--bg);color:var(--ink);width:100%}
.ok{display:none;padding:20px;border-radius:16px;background:var(--blue);color:var(--navy);font-weight:500}
footer{background:#1b1a4a;color:#fff;padding:60px 0 28px}
footer img{height:38px;filter:invert(1)}
.fg{display:grid;grid-template-columns: minmax(0,2fr) repeat(3,minmax(0,1fr));gap:28px;margin-bottom:36px}
@media(max-width:760px){.fg{grid-template-columns:1fr 1fr}}
footer h3{font-size:1rem;margin-bottom:12px}
footer ul{list-style:none;margin:0;padding:0;display:grid;gap:8px;font-size:.92rem;opacity:.8}
footer small{display:block;opacity:.6;border-top:1px solid rgba(255,255,255,.2);padding-top:20px}
.wa{position:fixed;right:18px;bottom:calc(18px + env(safe-area-inset-bottom,0px));background:#25d366;color:#fff;font:500 .92rem Outfit,sans-serif;padding:13px 20px;border-radius:99px;box-shadow:0 6px 18px rgba(0,0,0,.25);z-index:9}
.sh1{background:linear-gradient(135deg,var(--blue) -20%,var(--bg) 45%,var(--yellow) 120%);padding:44px 0 56px}
.sh1 .wrap{max-width:900px}
.crumb{font-size:.88rem;color:var(--mute);margin-bottom:18px}.crumb a{color:var(--navy)}
.sh1 h1{font-size:clamp(2.1rem,4.8vw,3.4rem);margin-bottom:20px}
.ans{background:var(--bg);border-left:5px solid var(--navy);border-radius:0 16px 16px 0;padding:20px 24px;box-shadow:0 4px 18px rgba(40,40,90,.1);font-size:1.08rem;margin-bottom:28px}
.sg{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
@media(max-width:1000px){.sg{grid-template-columns:1fr 1fr}}@media(max-width:560px){.sg{grid-template-columns:1fr}}
.sg .card{min-height:250px}
table{width:100%;border-collapse:collapse;background:var(--bg);border-radius:16px;overflow:hidden;box-shadow:0 4px 18px rgba(40,40,90,.1)}
th,td{padding:16px 20px;text-align:left;border-bottom:1px solid var(--line);font-size:.97rem}
th{background:var(--navy);color:var(--on-navy);font:500 .95rem Outfit,sans-serif}
td:first-child{font-weight:500}
.tw{overflow-x:auto}
@media(max-width:640px){.tw{overflow-x:auto;padding-bottom:8px;-webkit-overflow-scrolling:touch}.tw table{min-width:620px}}
.fl{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;align-items:center;font:500 1.05rem Outfit,sans-serif;color:var(--navy);margin-top:10px}
.fl span{background:var(--blue);padding:10px 20px;border-radius:99px}
.stp{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;counter-reset:s}
@media(max-width:900px){.stp{grid-template-columns:1fr 1fr}}@media(max-width:560px){.stp{grid-template-columns:1fr}}
.stp div{background:var(--bg);border-radius:18px;padding:24px;box-shadow:0 4px 18px rgba(40,40,90,.1);counter-increment:s}
.stp div::before{content:counter(s);display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--blue);color:var(--navy);font:500 1.1rem Outfit;margin-bottom:12px}
.stp p{color:var(--mute);margin-top:6px;font-size:.95rem}
.g3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
@media(max-width:860px){.g3{grid-template-columns:1fr}}
.fit{display:grid;grid-template-columns:1fr 1fr;gap:20px}
@media(max-width:760px){.fit{grid-template-columns:1fr}}
.fit ul{margin:12px 0 0;padding-left:20px;color:var(--mute)}.fit li{margin-bottom:6px}
.hdr {
            position: sticky;
            top: env(safe-area-inset-top, 0px);
            z-index: 30;
            background: transparent !important;
            box-shadow: none !important;
            padding: 14px 20px 0;
            margin-bottom: -84px
        }

        .bar {
            max-width: 1180px;
            margin: 0 auto;
            background: #fff;
            border-radius: 22px;
            box-shadow: 0 6px 28px rgba(40, 40, 90, .14);
            height: 68px;
            padding: 0 14px 0 22px;
            display: flex;
            align-items: center;
            gap: 22px;
            position: relative
        }

        .bar .logo img {
            height: 34px;
            display: block
        }

        .menu {
            display: flex;
            align-items: center;
            gap: 18px;
            flex: 1
        }

        .svc { position: relative; display: flex; align-items: center; gap: 4px; }

        .svcb {
            display: flex;
            align-items: center;
            gap: 9px;
            background: none;
            border: 0;
            font: 500 1rem Outfit, sans-serif;
            color: var(--ink);
            cursor: pointer;
            padding: 8px 4px
        }

        .svcb svg {
            flex: none
        }

        .svcb .cv {
            transition: transform .2s
        }

        .svcb[aria-expanded=true] .cv {
            transform: rotate(180deg)
        }

        .pnl {
            display: none;
            position: absolute;
            top: calc(100% + 14px);
            left: -12px;
            width: 380px;
            background: #fff;
            border-radius: 18px;
            box-shadow: 0 14px 40px rgba(40, 40, 90, .2);
            padding: 12px;
            z-index: 5
        }

        .pnl.open {
            display: block
        }

        .pnl a {
            display: block;
            padding: 10px 14px;
            border-radius: 10px;
            font: 500 .95rem Outfit, sans-serif;
            color: var(--ink)
        }

        .pnl a:hover,
        .pnl a:focus-visible {
            background: var(--blue);
            color: var(--navy)
        }

        .pnl .all {
            color: var(--navy);
            border-top: 1px solid var(--line);
            border-radius: 0 0 10px 10px;
            margin-top: 6px
        }

        .srch {
            position: relative;
            flex: 0 1 250px
        }

        .srch input {
            width: 100%;
            border: 1.5px solid #c9cad6;
            border-radius: 99px;
            padding: 9px 40px 9px 16px;
            font: 400 .85rem Inter, sans-serif;
            background: #fff;
            color: var(--ink)
        }

        .srch svg {
            position: absolute;
            right: 14px;
            top: 50%;
            transform: translateY(-50%);
            pointer-events: none
        }

        .srch .pnl {
            width: 100%;
            min-width: 280px;
            left: 0;
            top: calc(100% + 10px)
        }

        .lk {
            margin-left: auto;
            display: flex;
            align-items: center;
            gap: 26px;
            font-size: .92rem
        }

        .lk a {
            color: var(--mute);
            font-weight: 500
        }

        .lk a:hover {
            color: var(--navy)
        }

        .lk a.on {
            color: #000;
            font-weight: 600
        }

        .cta {
            background: #000;
            color: #fff;
            padding: 13px 26px;
            border-radius: 99px;
            font: 600 .9rem Inter, sans-serif;
            white-space: nowrap
        }

        .cta:hover {
            background: var(--navy)
        }

        .burger2 {
            display: none;
            margin-left: auto;
            background: none;
            border: 0;
            padding: 10px;
            cursor: pointer;
            color: var(--ink)
        }

        .burger2 span {
            display: block;
            width: 24px;
            height: 2.5px;
            background: currentColor;
            margin: 5px 0;
            border-radius: 2px
        }

        @media(max-width:980px) {
            .burger2 {
                display: block
            }

            .menu {
                display: none;
                position: absolute;
                left: -20px;
                right: -20px;
                top: calc(100% + 10px);
                background: #fff;
                border-radius: 20px;
                box-shadow: 0 14px 40px rgba(40, 40, 90, .2);
                padding: 16px;
                flex-direction: column;
                align-items: stretch;
                gap: 14px;
                max-height: 78vh;
                overflow: auto
            }

            .menu.open {
                display: flex
            }

            .pnl {
                position: static;
                width: auto;
                box-shadow: none;
                padding: 4px 0 0;
                left: 0
            }

            .svc {
                display: flex;
                flex-direction: row;
                flex-wrap: wrap;
                align-items: center;
                width: 100%;
            }

            .svc-link {
                flex: 1 1 auto;
            }

            .dropdown-toggle {
                margin-left: auto;
            }

            .svc > .pnl {
                flex: 0 0 100%;
                width: auto;
            }
            .srch {
                flex: none
            }

            .srch .pnl {
                position: static;
                margin-top: 6px
            }

            .lk {
                flex-direction: column;
                align-items: stretch;
                gap: 0;
                margin: 0
            }

            .lk a {
                padding: 12px 4px;
                border-top: 1px solid var(--line)
            }

            .cta {
                text-align: center
            }
        }

        
main#top > :first-child { padding-top: 130px !important; }

.wa { display: inline-flex; align-items: center; gap: 8px; text-shadow: 0 1px 3px rgba(0,0,0,.45); }
.wa svg { filter: drop-shadow(0 1px 2px rgba(0,0,0,.5)); }

.svc-link.on { color: #000; font-weight: 600; }
.cta.on { background: var(--navy); }
