* {
    box-sizing:border-box;
    margin:0;
    padding:0
}
body {
    font-family:-apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
    background:linear-gradient(180deg, #eaf3ff 0%, #f8fbff 100%);
    color:#0f172a;
    line-height:1.55
}
a {
    text-decoration:none;
    color:inherit
}
.page {
    max-width:1180px;
    margin:0 auto;
    padding:28px 18px 120px
}
.nav {
    display:flex;
    align-items:center;
    justify-content:space-between;
    margin-bottom:34px
}
.brand {
    display:flex;
    align-items:center;
    gap:12px;
    font-size:28px;
    font-weight:950;
    color:#1677ff;
    letter-spacing:-.5px
}
.logo {
    width:52px;
    height:52px;
    border-radius:16px;
    background:linear-gradient(135deg, #226BFF, #5A7CFF);
    display:flex;
    align-items:center;
    justify-content:center;
    color:#fff;
    font-weight:950;
    font-size:26px;
    box-shadow:0 14px 28px rgba(22, 119, 255, .18)
}
.pill {
    background:#fff;
    border:1px solid #e6eef8;
    border-radius:999px;
    padding:12px 20px;
    color:#1677ff;
    font-weight:900;
    box-shadow:0 10px 26px rgba(22, 119, 255, .08)
}
.hero {
    display:grid;
    grid-template-columns:1.08fr .92fr;
    gap:34px;
    align-items:center
}
.panel {
    background:#fff;
    border-radius:34px;
    padding:38px;
    box-shadow:0 26px 68px rgba(15, 23, 42, .10)
}
.eyebrow {
    display:inline-flex;
    align-items:center;
    gap:8px;
    background:#eef6ff;
    color:#1677ff;
    border-radius:999px;
    padding:10px 16px;
    font-size:14px;
    font-weight:900;
    margin-bottom:20px
}
h1 {
    font-size:clamp(40px, 5.2vw, 66px);
    line-height:1.06;
    font-weight:950;
    letter-spacing:-1.4px;
    margin-bottom:18px
}
h1 b {
    color:#1677ff
}
.sub {
    font-size:20px;
    color:#64748b;
    margin-bottom:26px;
    max-width:650px
}
.info-card {
    background:linear-gradient(135deg, #1e90ff, #0866df);
    border-radius:24px;
    padding:25px;
    color:#fff;
    margin:24px 0 20px;
    display:flex;
    justify-content:space-between;
    gap:16px;
    align-items:center;
    box-shadow:0 22px 42px rgba(24, 119, 255, .25)
}
.info-card small {
    display:block;
    opacity:.92;
    font-weight:800;
    margin-bottom:4px
}
.info-card strong {
    font-size:36px;
    line-height:1
}
.checks {
    display:grid;
    gap:11px;
    margin:20px 0 26px;
    color:#16a34a;
    font-weight:900
}
.btn {
    display:flex;
    align-items:center;
    justify-content:center;
    width:100%;
    border:0;
    cursor:pointer;
    background:linear-gradient(135deg, #24a4ff, #1667f2);
    color:#fff;
    border-radius:20px;
    padding:20px;
    font-size:21px;
    font-weight:950;
    box-shadow:0 18px 38px rgba(22, 103, 242, .25);
    transition:all .2s ease;
    text-align:center
}
.btn:hover {
    transform:translateY(-2px);
    box-shadow:0 22px 46px rgba(22, 103, 242, .32)
}
.slots {
    margin-top:15px;
    color:#ef4444;
    font-weight:950;
    text-align:center
}
.notice {
    font-size:13px;
    color:#94a3b8;
    margin-top:14px;
    text-align:center
}
.mini {
    display:grid;
    grid-template-columns:repeat(3, 1fr);
    gap:14px;
    margin-top:20px
}
.mini div {
    background:#f8fbff;
    border:1px solid #edf2f7;
    border-radius:18px;
    padding:16px;
    text-align:center;
    color:#475569;
    font-weight:800
}
.device {
    background:#fff;
    border-radius:40px;
    padding:20px;
    max-width:380px;
    margin:0 auto;
    box-shadow:0 24px 64px rgba(15, 23, 42, .12)
}
.device-top {
    display:flex;
    justify-content:space-between;
    font-weight:900;
    font-size:14px;
    margin-bottom:22px
}
.device-title {
    text-align:center;
    font-size:25px;
    font-weight:950;
    margin-bottom:22px
}
.blue-card {
    background:linear-gradient(135deg, #178cff, #0870e8);
    color:#fff;
    border-radius:20px;
    padding:24px;
    margin-bottom:16px;
    text-align:center
}
.blue-card strong {
    display:block;
    font-size:34px;
    margin-top:3px
}
.list {
    display:grid;
    gap:14px
}
.row {
    display:flex;
    justify-content:space-between;
    align-items:center;
    background:#fff;
    border:1px solid #eef2f7;
    border-radius:16px;
    padding:16px;
    color:#334155
}
.row b {
    color:#f59e0b
}
.section {
    margin-top:54px
}
.title {
    text-align:center;
    font-size:38px;
    font-weight:950;
    margin-bottom:10px
}
.desc {
    text-align:center;
    color:#64748b;
    margin:0 auto 30px;
    max-width:680px
}
.steps {
    display:grid;
    grid-template-columns:repeat(4, 1fr);
    gap:18px
}
.step {
    background:#fff;
    border:1px solid #e8edf5;
    border-radius:26px;
    padding:24px;
    text-align:center;
    box-shadow:0 14px 36px rgba(15, 23, 42, .07)
}
.step-icon {
    width:54px;
    height:54px;
    border-radius:18px;
    background:#eef6ff;
    color:#1677ff;
    display:flex;
    align-items:center;
    justify-content:center;
    margin:0 auto 14px;
    font-size:26px;
    font-weight:950
}
.step h3 {
    font-size:18px;
    margin-bottom:8px
}
.step p {
    color:#64748b;
    font-size:14px
}
.safe {
    background:#fff;
    border-radius:28px;
    padding:26px;
    margin-top:24px;
    color:#64748b;
    text-align:center;
    box-shadow:0 14px 40px rgba(15, 23, 42, .07)
}
.cta {
    background:linear-gradient(135deg, #178cff, #0866df);
    color:#fff;
    border-radius:32px;
    padding:38px 28px;
    text-align:center;
    margin-top:54px;
    box-shadow:0 26px 64px rgba(24, 119, 255, .22)
}
.cta h2 {
    font-size:38px;
    margin-bottom:12px
}
.cta p {
    opacity:.92;
    margin:0 auto 22px;
    max-width:680px
}
.cta .btn {
    background:#fff;
    color:#1677ff;
    max-width:430px;
    margin:0 auto
}
.footer {
    text-align:center;
    color:#94a3b8;
    padding:30px 12px;
    font-size:13px
}
.sticky {
    display:none
}
@media(max-width:880px) {
    .hero {
        grid-template-columns:1fr
    }
    .panel {
        padding:30px
    }
    .device {
        max-width:100%
    }
    .mini, .steps {
        grid-template-columns:1fr
    }
    .sticky {
        display:block;
        position:fixed;
        left:12px;
        right:12px;
        bottom:12px;
        z-index:99
    }
    .page {
        padding-bottom:128px
    }
    .pill {
        display:none
    }
}