.header-actions form{margin:0;display:contents}
.header-inner{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:20px;
}
.site-header{
    top:0;
    -webkit-backdrop-filter:none !important;
    backdrop-filter:none !important;
    background:var(--paper, #f4f9ff) !important;
    overflow:visible;
}
body:has(.offer-bar) .site-header{top:54px}
.nav-drawer-head,
.nav-close{display:none}
.module-list summary a{
    display:flex;
    flex-direction:column;
    color:inherit;
    text-decoration:none;
    min-width:0;
}
.module-list summary a:hover b{color:var(--teal, #147bbb)}
.home-free-section{padding:64px 0 80px}
.home-free-head{
    display:flex;
    justify-content:space-between;
    align-items:flex-end;
    gap:24px;
    margin-bottom:28px;
}
.home-free-head .section-title{margin:0}
.home-free-grid{
    grid-template-columns:repeat(4,minmax(0,1fr));
    padding-bottom:0;
}
.home-free-grid[data-count="6"],
.home-free-grid[data-count="5"],
.home-free-grid[data-count="3"]{
    grid-template-columns:repeat(3,minmax(0,1fr));
}
.home-free-grid[data-count="4"],
.home-free-grid[data-count="2"]{
    grid-template-columns:repeat(2,minmax(0,1fr));
}
.home-free-grid[data-count="1"]{
    grid-template-columns:minmax(0,360px);
}
.home-free-grid .lesson-thumb{height:176px}
.home-free-grid .lesson-card>div:last-child{padding:12px 14px 14px}
.home-free-grid .lesson-card h2{margin:4px 0 0;font-size:16px;line-height:1.4}
.home-free-grid .lesson-card p{
    margin:4px 0 0;
    font-size:12px;
    line-height:1.45;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
}
.nav-overlay{display:none}
.mobile-nav-logout{display:none}
@media (width>760px){
    .main-nav{
        position:fixed;
        top:0;
        left:50%;
        transform:translateX(-50%);
        z-index:60;
        height:82px;
        background:transparent;
        border:0;
        box-shadow:none;
        padding:0;
        margin:0;
        display:flex;
        align-items:center;
        gap:27px;
    }
    body:has(.offer-bar) .main-nav{top:54px}
}
.offer-bar{
    padding-inline:0;
}
.offer-bar-inner{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:14px;
    height:100%;
}
@media (width<=1100px){
    .home-free-grid[data-count="8"],
    .home-free-grid[data-count="7"]{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (width<=760px){
    .header-inner{
        display:flex;
        justify-content:space-between;
        gap:16px;
    }
    .offer-bar-inner{
        width:100%;
        justify-content:space-between;
        gap:7px;
        padding-inline:8px;
        overflow:hidden;
        white-space:nowrap;
    }
    .home-free-head{
        flex-direction:column;
        align-items:stretch;
    }
    .home-free-grid,
    .home-free-grid[data-count]{grid-template-columns:repeat(2,minmax(0,1fr))}
    .home-free-grid .lesson-card:nth-child(n+7){display:none}
    body.nav-open{overflow:hidden}
    .nav-overlay{
        display:block;
        position:fixed;
        inset:0;
        background:rgba(8,22,26,.55);
        z-index:200;
    }
    .nav-overlay[hidden]{display:none !important}
    .nav-drawer-head{
        display:flex;
        align-items:center;
        justify-content:space-between;
        margin-bottom:12px;
        padding-bottom:14px;
        border-bottom:1px solid var(--line, #cfdfef);
        font-weight:800;
        color:var(--ink, #10283f);
    }
    .nav-close{
        display:grid;
        place-items:center;
        width:40px;
        height:40px;
        border:1px solid var(--line, #cfdfef);
        border-radius:10px;
        background:var(--white);
        color:var(--ink, #10283f);
        font-size:28px;
        line-height:1;
        cursor:pointer;
    }
    .main-nav{
        position:fixed !important;
        top:0 !important;
        bottom:0 !important;
        inset-inline-end:0 !important;
        inset-inline-start:auto !important;
        width:min(320px, 86vw) !important;
        height:100vh !important;
        height:100dvh !important;
        margin:0 !important;
        padding:18px 18px 28px !important;
        border:0 !important;
        border-radius:0 !important;
        border-inline-start:1px solid var(--line, #cfdfef) !important;
        box-shadow:-18px 0 40px rgba(6,43,47,.18) !important;
        background:var(--white) !important;
        z-index:210 !important;
        display:flex !important;
        flex-direction:column !important;
        align-items:stretch !important;
        gap:0 !important;
        transform:translateX(-110%);
        transition:transform .28s ease, visibility .28s ease;
        overflow-y:auto;
        overscroll-behavior:contain;
        visibility:hidden;
        pointer-events:none;
    }
    .main-nav.is-open{
        transform:translateX(0) !important;
        visibility:visible;
        pointer-events:auto;
    }
    .main-nav > a{
        border-bottom:1px solid var(--line);
        padding:14px 6px !important;
        font-size:16px;
    }
    .mobile-nav-logout{
        display:block;
        margin-top:auto;
        padding-top:18px;
        border-top:1px solid var(--line);
    }
    .mobile-nav-logout button{
        width:100%;
        border:0;
        background:transparent;
        color:#b42318;
        text-align:right;
        font:inherit;
        font-size:16px;
        font-weight:800;
        padding:14px 6px;
        cursor:pointer;
    }
    .menu-button{z-index:220;position:relative}
}
.video-placeholder:has(iframe):after{display:none}
.js-hotspots{position:absolute;inset:0;pointer-events:none}
.js-hotspots .tool-hotspot{pointer-events:auto}
.form-error{color:#b42318;background:#fff1f0;border:1px solid #f3c0bc;border-radius:14px;padding:10px 14px;margin:0 0 12px}
.form-success{color:var(--teal-dark);background:var(--teal-soft);border:1px solid var(--line);border-radius:14px;padding:10px 14px;margin:0 0 16px}
.video-embed{position:relative;overflow:hidden}
.video-embed iframe,.video-frame iframe{width:100%;height:100%;border:0;display:block}
.video-placeholder iframe,.video-frame iframe{position:absolute;inset:0;z-index:3}
.video-frame.is-playing .video-controls{display:none}
.video-frame[data-video-player],.video-placeholder[data-video-player]{cursor:default;background:#04192c}
.video-frame[data-video-player]:after,.video-placeholder[data-video-player]:after{display:none}
.video-placeholder:has(iframe):after,.video-frame.is-playing:after{display:none}
a.lesson-card{display:block;color:inherit}
.lesson-list a{border-bottom:1px solid var(--line);grid-template-columns:30px 1fr auto;align-items:center;gap:12px;min-height:48px;margin:0;font-size:14px;display:grid;color:inherit}
.lesson-list a:last-child{border:0}
.lesson-list a>span{color:#8ba0a3;font-size:11px}
.lesson-list a>small{color:var(--teal);font-size:10px}
.lesson-heading form{display:contents}
.payment-tabs{grid-template-columns:repeat(2,1fr)}
.playlist>a{border:0;border-top:1px solid var(--line);text-align:right;cursor:pointer;background:0 0;grid-template-columns:36px 1fr;align-items:center;gap:10px;width:100%;min-height:78px;padding:10px 20px;display:grid;color:inherit}
.playlist>a.active{background:var(--teal-soft)}
.playlist>a>span{border:1px solid var(--line);width:30px;height:30px;color:var(--teal-dark);border-radius:50%;place-items:center;font-size:10px;display:grid}
@media (width<=760px){
    .watch-layout{
        display:flex;
        flex-direction:column;
    }
    .watch-main{order:1}
    .playlist{order:2}
    .playlist>a{
        display:grid !important;
        min-height:64px;
        padding:10px 16px;
    }
    .payment-tabs{grid-template-columns:1fr}
}
.watch-page > .watch-course-progress{
    background:var(--white);
    border-bottom:1px solid var(--line, #cfdfef);
    padding:10px 28px;
    min-width:0;
}
.watch-layout{min-height:calc(100vh - 124px)}
.watch-lesson-nav{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:10px;
    margin:14px 0 0;
}
.watch-nav-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:36px;
    padding:0 14px;
    border:1px solid var(--teal, #147bbb);
    border-radius:9px;
    background:var(--white);
    color:var(--teal-dark, #08649f);
    font-size:13px;
    font-weight:800;
    text-decoration:none;
    white-space:nowrap;
}
a.watch-nav-btn:hover{background:var(--teal-soft, #e0f1ff)}
.watch-nav-next{
    background:var(--action, #0875b9);
    border-color:var(--action, #0875b9);
    color:#fff;
}
a.watch-nav-next:hover{background:#075c94;border-color:#075c94;color:#fff}
.watch-nav-btn.is-disabled{opacity:.4;cursor:default}
@media (width<=760px){
    .watch-page > .watch-course-progress{padding:10px 14px}
}

.primary-button{
    background:var(--action, var(--teal-dark));
    box-shadow:0 12px 28px #09416f29;
}
.primary-button:hover{box-shadow:0 16px 35px #09416f3d}
.primary-button.light-button{
    color:var(--teal-dark);
    background:var(--teal-soft);
    border-color:var(--teal-soft);
    box-shadow:none;
}

.learning-journey{
    background:linear-gradient(180deg, var(--white) 0%, var(--paper-2) 34%, var(--white) 76%, var(--white) 100%);
    border-block:1px solid var(--line);
    padding-block:116px;
    position:relative;
    overflow:hidden;
}
.learning-journey:before{
    content:"";
    opacity:.38;
    background-image:linear-gradient(#0c569312 1px, transparent 1px), linear-gradient(90deg, #0c569312 1px, transparent 1px);
    background-size:54px 54px;
    position:absolute;
    inset:0;
    -webkit-mask-image:linear-gradient(transparent, #000 18% 80%, transparent);
    mask-image:linear-gradient(transparent, #000 18% 80%, transparent);
}
.learning-journey:after{
    content:"";
    border:1px solid #0c56931a;
    border-radius:50%;
    width:720px;
    height:720px;
    position:absolute;
    top:18%;
    left:-390px;
    box-shadow:0 0 0 85px #0c569306, 0 0 0 170px #0c569304;
}
.journey-heading{
    z-index:2;
    text-align:center;
    max-width:800px;
    margin:0 auto 50px;
    position:relative;
}
.journey-kicker{
    border:1px solid var(--line);
    background:rgba(var(--surface-rgb, 255,255,255), .85);
    width:max-content;
    max-width:100%;
    color:var(--teal-dark);
    border-radius:999px;
    margin:0 auto 17px;
    padding:7px 14px;
    font-size:12px;
    font-weight:900;
    display:block;
    box-shadow:0 8px 26px #1024350f;
}
.journey-heading h2{
    letter-spacing:-.04em;
    margin:0;
    font-size:clamp(43px, 5.4vw, 67px);
    line-height:1.18;
}
.journey-heading p{
    max-width:680px;
    color:var(--ink-2);
    margin:18px auto 0;
    font-size:18px;
}
.journey-start{
    z-index:2;
    text-align:center;
    width:min(470px, 100%);
    margin:0 auto 30px;
    position:relative;
}
.journey-start>span{
    background:var(--paper-2);
    color:#144166;
    border-radius:999px;
    padding:5px 12px;
    font-size:11px;
    font-weight:900;
}
.journey-start>div{
    border:1px solid var(--line);
    background:rgba(var(--surface-rgb, 255,255,255), .95);
    text-align:right;
    border-radius:17px;
    align-items:center;
    gap:14px;
    margin-top:10px;
    padding:16px 18px;
    display:flex;
    box-shadow:0 14px 38px #10243517;
}
.journey-start i{
    background:var(--navy, #0b2239);
    color:#fff;
    border-radius:15px;
    flex-shrink:0;
    place-items:center;
    width:50px;
    height:50px;
    font-size:21px;
    font-style:normal;
    font-weight:900;
    display:grid;
}
.journey-start p{flex-direction:column;margin:0;line-height:1.55;display:flex}
.journey-start b{font-size:17px}
.journey-start small{color:var(--muted);font-size:13px}
.journey-map{
    z-index:2;
    max-width:1100px;
    margin-inline:auto;
    padding-block:28px 55px;
    position:relative;
}
.journey-route{
    z-index:0;
    background:var(--paper-2);
    width:8px;
    box-shadow:0 0 0 7px rgba(var(--surface-rgb, 255,255,255), .7);
    border:1px solid #0c56932e;
    border-radius:999px;
    position:absolute;
    top:0;
    bottom:0;
    left:50%;
    overflow:hidden;
    transform:translate(-50%);
}
.route-flow{
    background:repeating-linear-gradient(to bottom, var(--teal) 0 24px, #76abd6 24px 37px, transparent 37px 54px);
    background-size:100% 54px;
    animation:2.4s linear infinite route-flow;
    position:absolute;
    inset:0;
}
.route-runner{
    z-index:2;
    border:4px solid var(--white);
    background:var(--gold);
    border-radius:50%;
    width:18px;
    height:18px;
    animation:12s ease-in-out infinite route-runner;
    position:absolute;
    top:0;
    left:50%;
    transform:translate(-50%);
    box-shadow:0 0 0 7px #438bc526, 0 0 26px #438bc585;
}
.journey-station{
    z-index:1;
    grid-template-columns:1fr 92px 1fr;
    align-items:center;
    min-height:335px;
    display:grid;
    position:relative;
}
.station-visual,.station-copy{transition:transform .35s, box-shadow .35s}
.station-visual{
    aspect-ratio:1.22;
    border:7px solid var(--white);
    background:var(--white);
    border-radius:25px;
    width:min(405px, 100%);
    margin:0;
    position:relative;
    overflow:hidden;
    box-shadow:0 22px 52px #10243524;
}
.station-visual:after{
    content:"";
    pointer-events:none;
    background:linear-gradient(transparent 58%, #071f3373);
    position:absolute;
    inset:0;
}
.station-visual>span{
    z-index:2;
    color:#fff;
    -webkit-backdrop-filter:blur(8px);
    backdrop-filter:blur(8px);
    background:#082d4cc2;
    border:1px solid #fff6;
    border-radius:999px;
    padding:5px 10px;
    font-size:11px;
    font-weight:900;
    position:absolute;
    bottom:14px;
    right:16px;
}
.journey-station:hover .station-visual{
    transform:translateY(-5px) rotate(-.5deg);
    box-shadow:0 30px 65px #10243530;
}
.station-copy{
    border:1px solid var(--line);
    background:rgba(var(--surface-rgb, 255,255,255), .94);
    border-radius:22px;
    max-width:430px;
    padding:28px 30px;
    box-shadow:0 16px 42px #10243514;
}
.station-copy>small{color:var(--teal);font-size:11px;font-weight:900}
.station-copy h3{margin:4px 0 8px;font-size:27px;line-height:1.35}
.station-copy>p{color:var(--ink-2);margin:0;font-size:15px;line-height:1.75}
.station-copy>div:not(.station-equation){flex-wrap:wrap;gap:7px;margin-top:17px;display:flex}
.station-copy>div:not(.station-equation) span{
    background:var(--teal-soft);
    color:var(--teal-dark);
    border-radius:7px;
    padding:4px 8px;
    font-size:11px;
    font-weight:800;
}
.station-node{z-index:3;grid-column:2;place-items:center;display:grid;position:relative}
.station-node>span{
    border:8px solid var(--line);
    background:var(--action, var(--teal-dark));
    color:#fff;
    border-radius:50%;
    place-items:center;
    width:67px;
    height:67px;
    font-size:15px;
    font-weight:900;
    display:grid;
    box-shadow:0 0 0 2px #86aac8, 0 10px 30px #09416f45;
}
.station-node>i{background:#8baeca;width:94px;height:1px;position:absolute}
.station-right .station-visual{grid-column:1;justify-self:end}
.station-right .station-node{grid-column:2}
.station-right .station-copy{grid-column:3;justify-self:start}
.station-left .station-copy{grid-area:1/1;justify-self:end}
.station-left .station-node{grid-area:1/2}
.station-left .station-visual{grid-area:1/3;justify-self:start}
.station-equation{
    border-top:1px solid var(--line);
    grid-template-columns:1fr auto 1fr;
    align-items:center;
    gap:8px;
    margin-top:18px;
    padding-top:16px;
    display:grid;
}
.station-equation span{
    background:var(--paper-2);
    min-height:62px;
    color:var(--ink-2);
    text-align:center;
    border-radius:10px;
    flex-direction:column;
    justify-content:center;
    padding:9px;
    font-size:11px;
    display:flex;
}
.station-equation b{color:var(--gold);font-size:10px}
.station-equation i{color:var(--gold);font-size:21px;font-style:normal;font-weight:900}
.journey-finish{
    z-index:2;
    color:#fff;
    background:radial-gradient(circle at 0, #0c56934d, transparent 34%), linear-gradient(125deg, #102435, #083860);
    border:1px solid #ffffff21;
    border-radius:25px;
    grid-template-columns:86px 1fr;
    align-items:center;
    gap:23px;
    width:min(760px, 100% - 70px);
    margin:18px auto 0;
    padding:31px 34px;
    display:grid;
    position:relative;
    box-shadow:0 26px 62px #10243540;
}
.finish-ring{
    border:1px solid #ffffff59;
    border-radius:50%;
    place-items:center;
    width:76px;
    height:76px;
    animation:2.8s ease-in-out infinite finish-pulse;
    display:grid;
    box-shadow:0 0 0 9px #ffffff0e;
}
.finish-ring i{
    color:#0f202e;
    background:linear-gradient(145deg, #b7daf7, #438bc5);
    border-radius:50%;
    place-items:center;
    width:48px;
    height:48px;
    font-size:22px;
    font-style:normal;
    font-weight:900;
    display:grid;
}
.journey-finish small{color:#8dbbe0;font-size:11px;font-weight:900}
.journey-finish h3{color:#fff;margin:3px 0 6px;font-size:30px}
.journey-finish p{color:#cbd8e3;max-width:580px;margin:0;font-size:15px}
.finish-skills{flex-wrap:wrap;align-items:center;gap:9px;margin-top:16px;display:flex}
.finish-skills span{
    color:#fff;
    background:#ffffff14;
    border:1px solid #ffffff2b;
    border-radius:999px;
    padding:5px 11px;
    font-size:11px;
    font-weight:900;
}
.finish-skills i{color:#7eb9e9;font-style:normal}
.journey-result{
    z-index:2;
    border:1px solid var(--line);
    background:rgba(var(--surface-rgb, 255,255,255), .9);
    max-width:960px;
    color:var(--ink);
    border-radius:18px;
    justify-content:space-between;
    align-items:center;
    gap:24px;
    margin:30px auto 0;
    padding:22px 26px;
    display:flex;
    position:relative;
    box-shadow:0 16px 40px #10243514;
}
.journey-result>div{flex-direction:column;line-height:1.55;display:flex}
.journey-result>div span{color:var(--teal-dark);font-size:11px;font-weight:900}
.journey-result>div b{font-size:15px}
.journey-result>div strong{color:var(--gold);font-size:21px}
.journey-result .primary-button{flex-shrink:0}
.journey-diagram{--neon:#0874b5;--glow:#169bf059;width:100%;height:100%;overflow:visible}
.diagram-grid{stroke:var(--line);opacity:.35}
.neon-wire{fill:none;stroke:var(--neon);stroke-width:2.4px;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 5px var(--glow))}
.journey-diagram text{fill:var(--ink-2);text-anchor:middle;font-family:inherit;font-size:15px;font-weight:700}
.journey-diagram .diagram-formula{fill:var(--neon);direction:ltr;font-size:30px}
.journey-diagram .diagram-heading{fill:var(--ink);font-size:20px}
.neon-point{fill:var(--neon);filter:drop-shadow(0 0 7px var(--glow));animation:3s ease-in-out infinite diagram-pulse}
.neon-signal{fill:none;stroke:var(--neon);stroke-width:3px;stroke-dasharray:8 16;filter:drop-shadow(0 0 5px var(--glow));animation:2s linear infinite diagram-flow}
.diagram-fault{fill:none;stroke:#dd783e;stroke-width:3px;stroke-linecap:round}
@keyframes route-flow{to{background-position-y:54px}}
@keyframes route-runner{0%,5%{top:0}45%,55%{top:50%}95%,to{top:calc(100% - 18px)}}
@keyframes finish-pulse{50%{transform:scale(1.04);box-shadow:0 0 0 14px #ffffff06}}
@keyframes diagram-pulse{50%{opacity:.45}}
@keyframes diagram-flow{to{stroke-dashoffset:-48px}}
@media (width<=1000px){
    .journey-station{grid-template-columns:1fr 78px 1fr;gap:0}
    .station-visual{width:min(340px, 100%)}
    .station-copy{max-width:350px;padding:23px}
    .station-copy h3{font-size:23px}
    .station-node>i{width:78px}
}
@media (width<=760px){
    .learning-journey{padding-block:76px}
    .journey-heading{margin-bottom:34px}
    .journey-heading h2{font-size:35px}
    .journey-heading p{font-size:16px}
    .journey-start{margin-bottom:12px}
    .journey-start>div{padding:14px}
    .journey-map{padding:30px 0 42px}
    .journey-route{width:6px;left:auto;right:23px;transform:none}
    .journey-station{
        flex-direction:column;
        align-items:stretch;
        gap:14px;
        min-height:0;
        margin-bottom:38px;
        padding-right:68px;
        display:flex;
    }
    .journey-station:last-of-type{margin-bottom:28px}
    .station-visual,.station-copy,
    .station-right .station-visual,.station-right .station-copy,
    .station-left .station-visual,.station-left .station-copy{
        grid-area:auto;
        justify-self:auto;
        width:100%;
        max-width:none;
    }
    .station-visual{aspect-ratio:4/3;border-width:5px;border-radius:19px;margin-bottom:14px}
    .station-copy{border-radius:18px;padding:21px 19px}
    .station-copy h3{font-size:23px}
    .station-copy>p{font-size:14px}
    .station-node,.station-left .station-node,.station-right .station-node{
        grid-area:auto;
        display:grid;
        position:absolute;
        top:24px;
        right:0;
    }
    .station-node>span{border-width:6px;width:53px;height:53px;font-size:12px}
    .station-node>i{width:28px;right:44px}
    .station-left{flex-direction:column}
    .station-left .station-visual{order:0}
    .station-left .station-copy{order:1}
    .station-equation{grid-template-columns:1fr}
    .station-equation>i{text-align:center;line-height:1}
    .journey-finish{grid-template-columns:1fr;gap:16px;width:calc(100% - 68px);margin-right:68px;padding:24px 19px}
    .finish-ring{width:62px;height:62px}
    .journey-finish h3{font-size:25px}
    .journey-result{flex-direction:column;align-items:stretch;padding:20px}
    .journey-result .primary-button{width:100%}
}

.hero-offer-summary{
    flex-wrap:wrap;
    justify-content:center;
    align-items:baseline;
    gap:8px 14px;
    margin:0 auto 26px;
    display:flex;
}
.hero-offer-summary>span{color:var(--ink-2);font-size:16px}
.hero-offer-summary strong{color:var(--teal-dark);font-size:32px;line-height:1.3}
.hero-offer-summary b{
    border:1px solid var(--line);
    background:var(--teal-soft);
    color:var(--teal-dark);
    border-radius:8px;
    padding:3px 11px;
    font-size:14px;
}
.enroll-price small{color:var(--muted);font-size:12px;font-weight:700}
.value-offer,.value-offer.launch-offer-simple{
    background:radial-gradient(at 0 0,#175a86,transparent 65%),#0b2239;
    border:1px solid #539ac7;
    grid-template-columns:.7fr 1.3fr;
    gap:34px;
    padding:40px;
    box-shadow:0 20px 60px #084b7838;
}
.value-offer:before{background:linear-gradient(90deg,#68c5ff,#c4eaff,#68c5ff);height:3px}
.value-offer .offer-copy h2{color:#fff;margin:18px 0;font-size:clamp(28px,3.4vw,42px);line-height:1.35;display:block}
.value-offer .offer-copy>p{color:#c1d7e8;max-width:550px;font-size:17px}
.value-offer .pill{font-size:14px}
.offer-inclusions{
    color:#e6f4ff;
    flex-wrap:wrap;
    gap:10px 18px;
    margin:23px 0 0;
    padding:0;
    font-size:15px;
    list-style:none;
    display:flex;
}
.offer-inclusions li:before{content:"✓";color:#87d2ff;margin-inline-end:7px}
.pricing-plans{
    grid-template-columns:minmax(0,1fr);
    align-items:stretch;
    gap:16px;
    width:100%;
    max-width:480px;
    margin-inline:auto;
    display:grid;
}
.pricing-plan{
    border:1px solid var(--line);
    background:var(--white);
    min-width:0;
    color:var(--ink);
    border-radius:18px;
    flex-direction:column;
    padding:25px 22px 22px;
    display:flex;
    position:relative;
    overflow:hidden;
    box-shadow:0 14px 35px #0000001a;
}
.pricing-plan.recommended{
    background:linear-gradient(160deg, var(--white), var(--teal-soft));
    border-color:#62bfff;
    transform:translateY(-7px);
    box-shadow:0 18px 45px #2397e03d, inset 0 3px #62bfff;
}
.plan-heading>span{color:var(--teal-dark);font-size:12px;font-weight:900}
.plan-heading h3{margin:3px 0 0;font-size:24px}
.plan-heading p{color:var(--muted);margin:0;font-size:13px}
.plan-price{color:var(--teal-dark);align-items:baseline;gap:7px;margin-top:14px;display:flex}
.plan-price strong{font-size:52px;font-weight:900;line-height:1.1}
.plan-price span{font-size:15px;font-weight:800}
.pricing-plan>small{color:var(--muted);font-size:12px}
.pricing-plan ul{border-top:1px solid var(--line);flex:1;margin:17px 0 21px;padding:14px 0 0;list-style:none}
.pricing-plan li{color:var(--ink-2);margin-bottom:7px;font-size:13px}
.pricing-plan li:before{content:"✓";color:var(--teal);margin-inline-end:7px;font-weight:900}
.pricing-plan .primary-button{min-height:46px;padding-inline:12px}
.theme-toggle{
    border:1px solid var(--line);
    background:var(--white);
    width:44px;
    height:44px;
    color:var(--teal-dark);
    cursor:pointer;
    border-radius:12px;
    flex-shrink:0;
    place-items:center;
    transition:background .2s,transform .2s;
    display:grid;
}
.theme-toggle:hover{background:var(--teal-soft);transform:translateY(-1px)}
.theme-toggle svg{width:21px;height:21px}
.theme-sun{display:none}
[data-theme=dark] .theme-sun{display:block}
[data-theme=dark] .theme-moon{display:none}
body>.theme-toggle{position:fixed;top:18px;inset-inline-start:18px;z-index:40}
.header-actions .theme-toggle{position:static}
:root[data-theme=dark]{
    color-scheme:dark;
    --paper:#091421;
    --paper-2:#102337;
    --white:#132a40;
    --surface-rgb:19,42,64;
    --ink:#edf6ff;
    --ink-2:#c1d5e8;
    --muted:#9eb7cd;
    --teal:#6cc4ff;
    --teal-dark:#8bd2ff;
    --teal-soft:#183d5b;
    --gold:#80cfff;
    --action:#1b7ab8;
    --navy:#071018;
    --line:#2a4560;
    --shadow:0 20px 60px #00000040;
}
[data-theme=dark] .site-header{
    background:rgba(9,20,33,.96) !important;
    border-bottom-color:var(--line) !important;
}
[data-theme=dark] .main-nav{
    background:transparent;
    color:var(--ink);
    box-shadow:none;
}
@media (width<=760px){
    [data-theme=dark] .main-nav{
        background:var(--white) !important;
        box-shadow:var(--shadow);
    }
}
[data-theme=dark] .main-nav a{color:var(--ink-2)}
[data-theme=dark] .main-nav a:hover,
[data-theme=dark] .main-nav a.active{color:var(--teal-dark)}
[data-theme=dark] .nav-drawer-head,
[data-theme=dark] .nav-close{
    color:var(--ink);
    border-color:var(--line);
    background:var(--white);
}
[data-theme=dark] .brand-logo,
[data-theme=dark] .footer .brand-logo{
    background:transparent;
    border-radius:0;
    padding:0;
}
[data-theme=dark] .brand-logo img,
[data-theme=dark] .footer .brand-logo img,
[data-theme=dark] .certificate-logo img{
    filter:brightness(0) saturate(100%) invert(89%) sepia(12%) saturate(700%) hue-rotate(176deg) brightness(104%) contrast(101%);
}
[data-theme=dark] .journey-diagram{--neon:#79d5ff;--glow:#37b7ffa6}
[data-theme=dark] .footer{background:#071018;color:#d7e7f3}
[data-theme=dark] .footer h3{color:#8bd2ff}
[data-theme=dark] .footer-grid a,
[data-theme=dark] .footer-brand p,
[data-theme=dark] .footer-address,
[data-theme=dark] .footer-bottom,
[data-theme=dark] .footer .brand-label small{color:#9eb7cd}
[data-theme=dark] .primary-button{color:#fff}
[data-theme=dark] .primary-button.light-button,
[data-theme=dark] .offer-bar-cta{
    color:var(--ink);
    background:var(--teal-soft);
    border-color:var(--line);
}
[data-theme=dark] .secondary-button{color:var(--teal-dark);border-color:var(--line)}
[data-theme=dark] .video-placeholder,
[data-theme=dark] .auth-visual,
[data-theme=dark] .lesson-thumb,
[data-theme=dark] .video-frame{background:#071018}
[data-theme=dark] .offer-bar{background:linear-gradient(90deg,#071018,#083b64,#071018)}
[data-theme=dark] .menu-button{background:var(--white);border-color:var(--line)}
[data-theme=dark] .menu-button span{background:var(--ink)}
[data-theme=dark] .login-link{color:var(--ink-2)}
[data-theme=dark] .theme-toggle{background:var(--white);border-color:var(--line);color:var(--teal-dark)}
[data-theme=dark] input,
[data-theme=dark] select,
[data-theme=dark] textarea{
    background:var(--paper);
    color:var(--ink);
    border-color:var(--line);
}
[data-theme=dark] .lesson-card,
[data-theme=dark] .enroll-card,
[data-theme=dark] .payment-card,
[data-theme=dark] .order-card,
[data-theme=dark] .modal-card,
[data-theme=dark] .instructor-teaser,
[data-theme=dark] .offline-teaser,
[data-theme=dark] .dashboard-cards article,
[data-theme=dark] .continue-card,
[data-theme=dark] .account-chip,
[data-theme=dark] .certificate-side,
[data-theme=dark] .playlist,
[data-theme=dark] .watch-header,
[data-theme=dark] .lesson-notes>div,
[data-theme=dark] .trainer-card,
[data-theme=dark] .principle-grid article,
[data-theme=dark] .tool-stage,
[data-theme=dark] .tool-switcher,
[data-theme=dark] .tools-hero-card,
[data-theme=dark] .teaser-tool-card{
    background:var(--white);
    border-color:var(--line);
    color:var(--ink);
}
[data-theme=dark] .offline-teaser{
    background:linear-gradient(120deg, var(--white), var(--teal-soft));
}
[data-theme=dark] .page-hero,
[data-theme=dark] .course-hero,
[data-theme=dark] .auth-page,
[data-theme=dark] .watch-page,
[data-theme=dark] .simple-page-head{
    background:var(--paper);
}
[data-theme=dark] .certificate{background:var(--paper-2);outline-color:var(--line)}
[data-theme=dark] .hero-points{color:var(--muted)}
[data-theme=dark] .nav-overlay{background:rgba(2,8,16,.72)}
[data-theme=dark] .form-error{background:#3a1820;border-color:#7a3340;color:#ffc9c9}
[data-theme=dark] .progress{background:var(--line)}
[data-theme=dark] .faq-item,
[data-theme=dark] .module-list,
[data-theme=dark] .module-list details,
[data-theme=dark] .value-list,
[data-theme=dark] .value-list>div{border-color:var(--line)}
[data-theme=dark] .payment-tabs button,
[data-theme=dark] .upload-box,
[data-theme=dark] .tool-feature-buttons button,
[data-theme=dark] .online-value-strip,
[data-theme=dark] .online-value-strip article,
[data-theme=dark] .offline-topics article,
[data-theme=dark] .lesson-list{
    background:var(--paper);
    border-color:var(--line);
    color:var(--ink);
}
[data-theme=dark] .tools-lab-teaser,
[data-theme=dark] .tools-page-hero,
[data-theme=dark] .tool-review-section,
[data-theme=dark] .training-gallery-section,
[data-theme=dark] .free-strip,
[data-theme=dark] .home-free-section{
    background:var(--paper);
}
[data-theme=dark] .station-copy,
[data-theme=dark] .journey-result,
[data-theme=dark] .journey-start>div,
[data-theme=dark] .journey-kicker{
    background:rgba(var(--surface-rgb),.94);
    border-color:var(--line);
    color:var(--ink);
}
[data-theme=dark] .offer-bar-cta:hover{background:var(--paper-2)}
@media (width<=1000px){
    .value-offer,.value-offer.launch-offer-simple{grid-template-columns:1fr}
}
@media (width<=760px){
    .hero-offer-summary{gap:8px 12px}
    .value-offer,.value-offer.launch-offer-simple{grid-template-columns:1fr;gap:24px;padding:24px 20px}
    .pricing-plan.recommended{transform:none}
    .plan-price strong{font-size:48px}
    .theme-toggle{display:grid}
}
