@font-face {
    font-family:Inter;
    font-style:normal;
    font-weight:400;
    font-display:swap;
    src:url('/assets/fonts/inter-400.woff2') format('woff2')
}
@font-face {
    font-family:Inter;
    font-style:normal;
    font-weight:500;
    font-display:swap;
    src:url('/assets/fonts/inter-500.woff2') format('woff2')
}
@font-face {
    font-family:Inter;
    font-style:normal;
    font-weight:600;
    font-display:swap;
    src:url('/assets/fonts/inter-600.woff2') format('woff2')
}
@font-face {
    font-family:Inter;
    font-style:normal;
    font-weight:700;
    font-display:swap;
    src:url('/assets/fonts/inter-700.woff2') format('woff2')
}
@font-face {
    font-family:Inter;
    font-style:normal;
    font-weight:800;
    font-display:swap;
    src:url('/assets/fonts/inter-800.woff2') format('woff2')
}
:root {
    --bg:#090b12;
    --bg2:#0d1019;
    --text:#f7f8fb;
    --muted:#9ca3b3;
    --line:rgba(255,255,255,.10);
    --panel:rgba(255,255,255,.045);
    --panel2:rgba(255,255,255,.075);
    --mint:#72e6bd;
    --cyan:#62cee8;
    --violet:#aa8cff;
    --radius:24px;
    --shadow:0 26px 90px rgba(0,0,0,.34)
}
* {
    box-sizing:border-box
}
html {
    scroll-behavior:smooth
}
body {
    margin:0;
    background:var(--bg);
    color:var(--text);
    font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
    line-height:1.5;
    text-rendering:optimizeLegibility
}
a {
    color:inherit;
    text-decoration:none
}
img,svg {
    display:block;
    max-width:100%
}
button,input,textarea {
    font:inherit
}
.icon {
    width:20px;
    height:20px
}
.shell {
    width:min(1120px,calc(100% - 40px));
    margin-inline:auto
}
.skip-link {
    position:fixed;
    left:12px;
    top:-60px;
    z-index:999;
    background:#fff;
    color:#000;
    padding:10px 14px;
    border-radius:10px
}
.skip-link:focus {
    top:12px
}
.aurora-bg {
    position:fixed;
    inset:0;
    pointer-events:none;
    overflow:hidden;
    z-index:0
}
.aurora-bg span {
    position:absolute;
    width:430px;
    height:430px;
    border-radius:50%;
    filter:blur(110px);
    opacity:.18;
    animation:floataur 14s ease-in-out infinite
}
.aurora-bg span:nth-child(1) {
    background:var(--mint);
    left:-140px;
    top:-150px
}
.aurora-bg span:nth-child(2) {
    background:var(--cyan);
    right:-110px;
    top:190px;
    animation-delay:-5s
}
.aurora-bg span:nth-child(3) {
    background:var(--violet);
    left:35%;
    bottom:-180px;
    animation-delay:-9s
}
@keyframes floataur {
    0%,100% {
        transform:translate3d(0,0,0) scale(1)
    }
    50% {
        transform:translate3d(8%,-6%,0) scale(1.12)
    }
}
.site-header {
    position:sticky;
    top:0;
    z-index:60;
    background:rgba(9,11,18,.72);
    -webkit-backdrop-filter:blur(22px);
    backdrop-filter:blur(22px);
    border-bottom:1px solid var(--line)
}
.header-inner {
    height:68px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px
}
.brand {
    display:inline-flex;
    align-items:center;
    gap:10px;
    font-size:18px;
    font-weight:800;
    letter-spacing:-.03em
}
.brand-mark {
    width:36px;
    height:36px;
    border-radius:13px;
    background:rgba(255,255,255,.07);
    border:1px solid var(--line);
    display:grid;
    place-items:center;
    color:var(--mint)
}
.brand-mark .icon {
    width:18px;
    height:18px
}
.desktop-nav {
    display:flex;
    align-items:center;
    gap:4px
}
.desktop-nav a,.mobile-nav a {
    padding:9px 12px;
    border-radius:10px;
    color:rgba(247,248,251,.62);
    font-size:14px;
    font-weight:600
}
.desktop-nav a:hover,.desktop-nav a.active,.mobile-nav a.active {
    background:rgba(255,255,255,.06);
    color:#fff
}
.header-actions {
    display:flex;
    align-items:center;
    gap:10px
}
.button {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    min-height:44px;
    padding:0 18px;
    border-radius:13px;
    border:1px solid var(--line);
    font-weight:700;
    font-size:14px;
    transition:transform .18s ease,background .18s ease,opacity .18s ease
}
.button:hover {
    transform:translateY(-1px)
}
.button-primary {
    background:var(--mint);
    border-color:transparent;
    color:#07110d
}
.button-secondary {
    background:rgba(255,255,255,.06);
    color:#fff
}
.menu-button {
    display:none;
    width:42px;
    height:42px;
    border-radius:13px;
    background:rgba(255,255,255,.05);
    color:#fff;
    border:1px solid var(--line);
    place-items:center
}
.mobile-nav {
    display:none;
    padding:8px 20px 16px;
    border-top:1px solid var(--line)
}
.mobile-nav a {
    display:block
}
.mobile-nav[hidden] {
    display:none
}
main {
    position:relative;
    z-index:1
}
.hero {
    padding:96px 0 68px;
    text-align:center
}
.eyebrow {
    margin:0;
    color:var(--mint);
    font-size:11px;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:.22em
}
.hero h1,.page-hero h1 {
    margin:14px auto 0;
    font-weight:800;
    letter-spacing:-.055em;
    line-height:1.02
}
.hero h1 {
    max-width:850px;
    font-size:clamp(48px,7vw,76px)
}
.page-hero {
    padding:70px 0 38px
}
.page-hero h1 {
    max-width:790px;
    margin-left:0;
    font-size:clamp(40px,5vw,58px)
}
.gradient-text {
    background:linear-gradient(90deg,var(--mint),var(--cyan),var(--violet));
    -webkit-background-clip:text;
    background-clip:text;
    color:transparent
}
.lead {
    max-width:660px;
    margin:20px auto 0;
    color:rgba(247,248,251,.58);
    font-size:17px;
    line-height:1.75
}
.page-hero .lead {
    margin-left:0
}
.hero-actions {
    margin-top:32px;
    display:flex;
    justify-content:center;
    gap:12px;
    flex-wrap:wrap
}
.microcopy {
    margin:12px 0 0;
    color:rgba(247,248,251,.38);
    font-size:12px
}
.browser-window {
    max-width:940px;
    margin:44px auto 0;
    border:1px solid rgba(255,255,255,.12);
    border-radius:24px;
    overflow:hidden;
    background:#0d1019;
    box-shadow:var(--shadow);
    text-align:left
}
.browser-toolbar {
    height:52px;
    display:flex;
    align-items:center;
    gap:13px;
    padding:0 15px;
    background:#111521;
    border-bottom:1px solid var(--line)
}
.dots {
    display:flex;
    gap:7px
}
.dots span {
    width:8px;
    height:8px;
    border-radius:50%;
    background:rgba(255,255,255,.26)
}
.address {
    flex:1;
    max-width:540px;
    margin:auto;
    background:rgba(255,255,255,.055);
    border:1px solid rgba(255,255,255,.07);
    border-radius:9px;
    padding:7px 12px;
    color:rgba(255,255,255,.42);
    font-size:12px
}
.browser-content {
    min-height:420px;
    display:grid;
    place-items:center;
    padding:56px;
    background:radial-gradient(circle at 45% 15%,rgba(114,230,189,.12),transparent 38%),linear-gradient(145deg,#0c1018,#0a0c12)
}
.browser-search {
    width:min(560px,100%);
    text-align:center
}
.browser-logo {
    width:70px;
    height:70px;
    border-radius:24px;
    margin:0 auto 24px;
    display:grid;
    place-items:center;
    background:rgba(114,230,189,.12);
    color:var(--mint);
    border:1px solid rgba(114,230,189,.25)
}
.browser-logo .icon {
    width:34px;
    height:34px
}
.fake-search {
    height:52px;
    border-radius:15px;
    border:1px solid var(--line);
    background:rgba(255,255,255,.055);
    display:flex;
    align-items:center;
    padding:0 17px;
    color:rgba(255,255,255,.35);
    font-size:14px
}
.quick-links {
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:10px;
    margin-top:18px
}
.quick-links span {
    height:64px;
    border-radius:15px;
    background:rgba(255,255,255,.035);
    border:1px solid rgba(255,255,255,.06)
}
.section {
    padding:74px 0
}
.section-sm {
    padding:46px 0
}
.section-head {
    margin-bottom:28px
}
.section-head h2 {
    margin:0;
    font-size:clamp(28px,4vw,40px);
    line-height:1.08;
    letter-spacing:-.04em
}
.section-head p {
    max-width:660px;
    margin:10px 0 0;
    color:rgba(247,248,251,.55)
}
.grid {
    display:grid;
    gap:16px
}
.grid-2 {
    grid-template-columns:repeat(2,minmax(0,1fr))
}
.grid-3 {
    grid-template-columns:repeat(3,minmax(0,1fr))
}
.card {
    border-radius:var(--radius);
    padding:26px;
    background:var(--panel);
    border:1px solid var(--line);
    -webkit-backdrop-filter:blur(16px);
    backdrop-filter:blur(16px)
}
.card:hover {
    background:var(--panel2)
}
.card-icon {
    width:46px;
    height:46px;
    border-radius:16px;
    display:grid;
    place-items:center;
    background:rgba(114,230,189,.11);
    border:1px solid rgba(114,230,189,.22);
    color:var(--mint);
    margin-bottom:18px
}
.card h2,.card h3 {
    margin:0 0 8px;
    font-size:16px;
    letter-spacing:-.015em
}
.card p {
    margin:0;
    color:rgba(247,248,251,.55);
    font-size:14px;
    line-height:1.7
}
.split {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:50px;
    align-items:center
}
.privacy-visual {
    min-height:390px;
    border-radius:30px;
    background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.025));
    border:1px solid var(--line);
    padding:28px;
    display:flex;
    flex-direction:column;
    gap:14px
}
.shield-row {
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:17px;
    border-radius:16px;
    background:rgba(0,0,0,.18);
    border:1px solid rgba(255,255,255,.06)
}
.shield-row div {
    display:flex;
    align-items:center;
    gap:10px
}
.pill {
    padding:5px 9px;
    border-radius:999px;
    background:rgba(114,230,189,.12);
    color:var(--mint);
    font-size:11px;
    font-weight:700
}
.list {
    margin:0;
    padding:0;
    list-style:none;
    display:grid;
    gap:12px
}
.list li {
    display:flex;
    gap:10px;
    color:rgba(247,248,251,.58);
    font-size:14px
}
.list .icon {
    color:var(--mint);
    flex:none;
    margin-top:1px
}
.cta {
    padding:48px;
    border-radius:32px;
    text-align:center;
    background:linear-gradient(145deg,rgba(114,230,189,.10),rgba(170,140,255,.08));
    border:1px solid var(--line)
}
.cta h2 {
    margin:0;
    font-size:clamp(28px,4vw,42px);
    letter-spacing:-.04em
}
.cta p {
    max-width:570px;
    margin:12px auto 24px;
    color:rgba(247,248,251,.58)
}
.prose {
    max-width:760px;
    padding-bottom:90px
}
.prose h2 {
    font-size:21px;
    margin:34px 0 10px
}
.prose h3 {
    font-size:16px;
    margin:25px 0 8px
}
.prose p,.prose li {
    color:rgba(247,248,251,.60);
    font-size:15px;
    line-height:1.8
}
.prose ul {
    padding-left:20px
}
.prose a {
    color:var(--mint);
    text-decoration:underline;
    text-decoration-color:rgba(114,230,189,.35);
    text-underline-offset:3px
}
.table {
    width:100%;
    border-collapse:collapse;
    min-width:670px
}
.table th,.table td {
    text-align:left;
    padding:15px 17px;
    border-bottom:1px solid var(--line);
    font-size:13px
}
.table th {
    color:#fff;
    background:rgba(255,255,255,.04)
}
.table td {
    color:rgba(247,248,251,.56)
}
.table tr:last-child td {
    border-bottom:0
}
.download-card .button {
    margin-top:18px
}
.tag {
    display:inline-flex;
    padding:5px 9px;
    border:1px solid var(--line);
    border-radius:999px;
    color:rgba(247,248,251,.48);
    font-size:11px
}
.faq details {
    border-bottom:1px solid var(--line);
    padding:19px 0
}
.faq summary {
    cursor:pointer;
    font-weight:700;
    list-style:none
}
.faq summary::-webkit-details-marker {
    display:none
}
.faq p {
    color:rgba(247,248,251,.58);
    font-size:14px;
    line-height:1.7
}
.form {
    display:grid;
    gap:14px
}
.field {
    display:grid;
    gap:7px
}
.field label {
    font-size:13px;
    font-weight:600;
    color:rgba(247,248,251,.72)
}
.field input,.field textarea {
    width:100%;
    border:1px solid var(--line);
    background:rgba(255,255,255,.045);
    color:#fff;
    padding:13px 14px;
    border-radius:13px;
    outline:none
}
.field input:focus,.field textarea:focus {
    border-color:rgba(114,230,189,.5);
    box-shadow:0 0 0 3px rgba(114,230,189,.08)
}
.notice {
    padding:14px 16px;
    border-radius:14px;
    background:rgba(114,230,189,.09);
    border:1px solid rgba(114,230,189,.22);
    color:#c7f8e5;
    font-size:13px
}
.sr-only {
    position:absolute;
    width:1px;
    height:1px;
    padding:0;
    margin:-1px;
    overflow:hidden;
    clip:rect(0,0,0,0);
    white-space:nowrap;
    border:0
}
.site-footer {
    position:relative;
    z-index:1;
    border-top:1px solid var(--line);
    padding-top:58px;
    background:rgba(9,11,18,.92)
}
.footer-intro p {
    max-width:310px;
    color:rgba(247,248,251,.48);
    font-size:13px;
    line-height:1.7
}
.privacy-badge {
    display:inline-flex;
    align-items:center;
    gap:7px;
    color:rgba(247,248,251,.43);
    font-size:11px
}
.privacy-badge .icon {
    width:15px;
    height:15px;
    color:var(--mint)
}
.footer-bottom {
    display:flex;
    justify-content:space-between;
    gap:20px;
    border-top:1px solid var(--line);
    margin-top:38px;
    padding:22px 0 30px
}
.footer-bottom p {
    margin:0;
    color:rgba(247,248,251,.35);
    font-size:11px
}
@media(max-width:900px) {
    .grid-3 {
        grid-template-columns:repeat(2,1fr)
    }
    .split {
        grid-template-columns:1fr;
        gap:26px
    }
    .browser-content {
        min-height:340px;
        padding:36px
    }
}
@media(max-width:767px) {
    .shell {
        width:min(100% - 30px,1120px)
    }
    .desktop-nav {
        display:none
    }
    .header-download {
        display:none
    }
    .menu-button {
        display:none
    }
    .mobile-nav:not([hidden]) {
        display:block
    }
    .hero {
        padding:72px 0 46px
    }
    .hero h1 {
        font-size:clamp(43px,14vw,60px)
    }
    .lead {
        font-size:15px
    }
    .browser-window {
        margin-top:34px;
        border-radius:18px
    }
    .browser-content {
        min-height:300px;
        padding:28px 20px
    }
    .quick-links {
        grid-template-columns:repeat(2,1fr)
    }
    .section {
        padding:56px 0
    }
    .page-hero {
        padding:52px 0 26px
    }
    .grid-2,.grid-3 {
        grid-template-columns:1fr
    }
    .cta {
        padding:35px 22px
    }
    .footer-bottom {
        flex-direction:column
    }
    .section-head h2 {
        font-size:30px
    }
}
@media(max-width:480px) {
    .hero-actions .button {
        width:100%
    }
}
@media(prefers-reduced-motion:reduce) {
    html {
        scroll-behavior:auto
    }
    .aurora-bg span {
        animation:none
    }
    .button {
        transition:none
    }
}
.download-title {
    margin-top:14px!important
}
code {
    font-family:ui-monospace,SFMono-Regular,Menlo,monospace;
    color:#c7f8e5
}
/* Production refinements */
:focus-visible {
    outline:3px solid rgba(114,230,189,.72);
    outline-offset:3px
}
button {
    cursor:pointer
}
.button-disabled {
    background:rgba(255,255,255,.035);
    color:rgba(247,248,251,.36);
    cursor:not-allowed;
    pointer-events:none
}
.download-actions {
    display:flex;
    gap:10px;
    flex-wrap:wrap;
    align-items:center
}
.fake-search {
    gap:10px
}
.fake-search .icon {
    width:17px;
    height:17px;
    flex:none
}
.page-actions-left {
    justify-content:flex-start
}
.notice-error {
    background:rgba(255,107,107,.08);
    border-color:rgba(255,107,107,.28);
    color:#ffd2d2
}
.notice-success {
    background:rgba(114,230,189,.09);
    border-color:rgba(114,230,189,.22);
    color:#c7f8e5
}
.legal-updated {
    font-size:12px!important;
    color:rgba(247,248,251,.38)!important
}
.mobile-download-link {
    margin-top:7px;
    background:rgba(114,230,189,.1)!important;
    color:var(--mint)!important
}
.error-page {
    min-height:58vh;
    display:flex;
    align-items:center
}
@media(max-width:767px) {
    .download-actions {
        flex-direction:column;
        align-items:stretch
    }
    .download-actions .button,.download-actions .button-disabled {
        width:100%
    }
    .page-actions-left .button {
        width:100%
    }
}

.menu-icon {
    display: grid;
    place-items: center;
}

.menu-icon-close {
    display: none;
}

.menu-button[aria-expanded="true"] .menu-icon-open {
    display: none;
}

.menu-button[aria-expanded="true"] .menu-icon-close {
    display: grid;
}

@media (max-width: 767px) {
    .menu-open {
        overflow: hidden;
    }
}


.noscript-mobile-nav {
    display: none;
}

@media (max-width: 767px) {
    .js .menu-button {
        display: grid;
    }

    .noscript-mobile-nav {
        display: grid;
        gap: 4px;
        padding: 8px 20px 16px;
        border-top: 1px solid var(--line);
    }

    .noscript-mobile-nav a {
        padding: 10px 12px;
        border-radius: 10px;
        color: rgba(247, 248, 251, .7);
        font-size: 14px;
        font-weight: 600;
    }
}

/* Focused one-page architecture */
section[id] {
    scroll-margin-top: 6.5rem;
}

.footer-simple {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 3rem;
    padding-top: 4rem;
    padding-bottom: 3rem;
}

.footer-simple .footer-intro {
    max-width: 34rem;
}

.footer-links {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: .75rem 1.35rem;
    max-width: 32rem;
}

.footer-links a {
    color: var(--muted);
    text-decoration: none;
}

.footer-links a:hover,
.footer-links a:focus-visible {
    color: var(--text);
}

.checksum {
    margin-top: 1.25rem;
    padding-top: 1rem;
    border-top: 1px solid var(--line);
}

.checksum strong {
    display: block;
    margin-bottom: .5rem;
    font-size: .78rem;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: var(--muted);
}

.checksum code {
    display: block;
    overflow-wrap: anywhere;
    font-size: .78rem;
    line-height: 1.65;
    color: var(--text);
}

@media (max-width: 767px) {
    .footer-simple {
        flex-direction: column;
    }

    .footer-links {
        justify-content: flex-start;
    }
}


/* v4 production quality */
::selection {
    background: rgba(114, 230, 189, .24);
    color: var(--text);
}

body {
    min-width: 320px;
    overflow-x: hidden;
}

a:not(.button):not(.brand):not(.card):not(.desktop-nav a):not(.mobile-nav a):not(.footer-links a) {
    text-decoration-thickness: .08em;
    text-underline-offset: .18em;
}

.card,
.browser-window,
.privacy-visual,
.cta {
    contain: layout paint;
}

.release-meta {
    display: grid;
    gap: .65rem;
    margin: 1.15rem 0 0;
}

.release-meta > div {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 1rem;
    padding-bottom: .65rem;
    border-bottom: 1px solid rgba(255,255,255,.07);
}

.release-meta > div:last-child {
    padding-bottom: 0;
    border-bottom: 0;
}

.release-meta dt {
    color: var(--muted);
    font-size: .78rem;
    font-weight: 600;
}

.release-meta dd {
    margin: 0;
    max-width: 68%;
    color: var(--text);
    font-size: .8rem;
    font-weight: 600;
    overflow-wrap: anywhere;
    text-align: right;
}

.checksum-row {
    display: flex;
    align-items: flex-start;
    gap: .75rem;
}

.checksum-row code {
    flex: 1;
    min-width: 0;
}

.copy-button {
    display: none;
    flex: none;
    min-height: 34px;
    padding: 0 .75rem;
    border: 1px solid var(--line);
    border-radius: 9px;
    background: rgba(255,255,255,.055);
    color: var(--text);
    font-size: .75rem;
    font-weight: 700;
}

.js .copy-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.copy-button:hover,
.copy-button:focus-visible {
    background: rgba(255,255,255,.09);
}

.form-privacy {
    margin: .1rem 0 0;
    color: rgba(247,248,251,.48);
    font-size: .77rem;
    line-height: 1.65;
}

.form-privacy a {
    color: var(--mint);
    text-decoration: underline;
}

@media (hover: none) {
    .button:hover {
        transform: none;
    }
}

@media (max-width: 767px) {
    .release-meta > div {
        align-items: flex-start;
        flex-direction: column;
        gap: .25rem;
    }

    .release-meta dd {
        max-width: 100%;
        text-align: left;
    }

    .checksum-row {
        flex-direction: column;
    }

    .copy-button {
        width: 100%;
    }
}


@media (prefers-reduced-transparency: reduce) {
    .site-header,
    .card {
        -webkit-backdrop-filter: none;
        backdrop-filter: none;
    }

    .site-header {
        background: rgba(9,11,18,.96);
    }

    .card {
        background: #11151f;
    }
}

@media (forced-colors: active) {
    .gradient-text {
        background: none;
        -webkit-text-fill-color: currentColor;
    }

    .button,
    .card,
    .brand-mark,
    .menu-button {
        border: 1px solid ButtonText;
    }
}

.trust-strip {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1px;
    max-width: 920px;
    margin: 22px auto 0;
    overflow: hidden;
    border: 1px solid var(--line);
    border-radius: 18px;
    background: var(--line);
}

.trust-strip > div {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 16px 18px;
    background: rgba(9,11,18,.82);
    text-align: left;
}

.trust-strip .icon {
    flex: none;
    color: var(--mint);
}

.trust-strip span {
    display: grid;
    gap: 2px;
}

.trust-strip strong {
    color: var(--text);
    font-size: .78rem;
}

.trust-strip small {
    color: rgba(247,248,251,.46);
    font-size: .7rem;
    line-height: 1.45;
}

.release-status {
    margin-top: 1rem;
    padding: .85rem 1rem;
    border: 1px solid var(--line);
    border-radius: 12px;
    font-size: .8rem;
}

.release-status.is-published {
    border-color: rgba(114,230,189,.2);
    background: rgba(114,230,189,.07);
    color: #c7f8e5;
}

.release-status.is-unpublished {
    background: rgba(255,255,255,.035);
    color: rgba(247,248,251,.58);
}

@media (max-width: 767px) {
    .trust-strip {
        grid-template-columns: 1fr;
    }
}
