@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Source+Serif+4:opsz,wght@8..60,500;8..60,600;8..60,700&display=swap');

:root{color-scheme:dark}

*{box-sizing:border-box}

html:focus-within{scroll-behavior:smooth}

body{margin:0;font-size:16px}

img{max-width:100%;height:auto;display:block}

.nav-link{display:inline-flex;align-items:center;gap:.5rem;border-radius:.75rem;padding:.55rem .85rem;font-size:.95rem;color:rgb(226 232 240);transition:background-color .15s ease,color .15s ease,transform .15s ease}
.nav-link:hover{background-color:rgba(255,255,255,.06);color:#fff;transform:translateY(-1px)}
.nav-link:focus-visible{outline:none;box-shadow:0 0 0 2px rgba(34,211,238,.35),0 0 0 6px rgba(15,23,42,.85)}

.menu-link{width:100%;text-align:center;display:inline-flex;justify-content:center;align-items:center;border-radius:1rem;padding:.8rem 1rem;font-size:1.5rem;color:rgb(241 245 249);background-color:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.10);transition:transform .15s ease,background-color .15s ease,border-color .15s ease}
.menu-link:hover{transform:translateY(-2px);background-color:rgba(255,255,255,.07);border-color:rgba(255,255,255,.16)}
.menu-link:focus-visible{outline:none;box-shadow:0 0 0 2px rgba(34,211,238,.35),0 0 0 6px rgba(2,6,23,.85)}

.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;border-radius:1rem;padding:.8rem 1.05rem;font-weight:700;letter-spacing:.01em;border:1px solid rgba(255,255,255,.10);background-image:linear-gradient(135deg,rgba(34,211,238,.95),rgba(99,102,241,.92));color:rgb(15 23 42);box-shadow:0 14px 30px rgba(0,0,0,.25);transition:transform .15s ease,filter .15s ease,box-shadow .15s ease}
.btn-primary:hover{transform:translateY(-1px);filter:saturate(1.08);box-shadow:0 18px 40px rgba(0,0,0,.32)}
.btn-primary:active{transform:translateY(0)}
.btn-primary:focus-visible{outline:none;box-shadow:0 0 0 2px rgba(34,211,238,.40),0 0 0 6px rgba(2,6,23,.85),0 18px 40px rgba(0,0,0,.32)}

.btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;border-radius:1rem;padding:.8rem 1.05rem;font-weight:700;border:1px solid rgba(255,255,255,.14);background-color:rgba(255,255,255,.06);color:rgb(241 245 249);transition:transform .15s ease,background-color .15s ease,border-color .15s ease}
.btn-secondary:hover{transform:translateY(-1px);background-color:rgba(255,255,255,.10);border-color:rgba(255,255,255,.20)}
.btn-secondary:active{transform:translateY(0)}
.btn-secondary:focus-visible{outline:none;box-shadow:0 0 0 2px rgba(34,211,238,.35),0 0 0 6px rgba(2,6,23,.85)}

.card{border-radius:1.25rem;border:1px solid rgba(255,255,255,.10);background-color:rgba(255,255,255,.05);padding:1.05rem;box-shadow:0 10px 24px rgba(0,0,0,.22);transition:transform .15s ease,box-shadow .15s ease,background-color .15s ease}
.card:hover{transform:translateY(-3px);background-color:rgba(255,255,255,.07);box-shadow:0 18px 42px rgba(0,0,0,.30)}

.card-icon{height:44px;width:44px;border-radius:1rem;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.10);background-image:linear-gradient(135deg,rgba(34,211,238,.14),rgba(99,102,241,.12));color:rgb(226 232 240)}

.card-title{margin-top:.8rem;font-weight:700;font-size:1.05rem;line-height:1.35;color:#fff}
.card-text{margin-top:.45rem;font-size:.95rem;line-height:1.55;color:rgb(203 213 225)}

.step{display:flex;gap:.9rem;align-items:flex-start;border-radius:1.25rem;border:1px solid rgba(255,255,255,.10);background-color:rgba(255,255,255,.05);padding:1rem}
.step-badge{flex:0 0 auto;height:36px;width:36px;border-radius:9999px;display:inline-flex;align-items:center;justify-content:center;font-weight:800;color:rgb(15 23 42);background-image:linear-gradient(135deg,rgba(34,211,238,.95),rgba(99,102,241,.92));border:1px solid rgba(255,255,255,.10)}

.footer-link{color:rgb(203 213 225);text-decoration:none;transition:color .15s ease,text-decoration-color .15s ease}
.footer-link:hover{color:#fff;text-decoration:underline;text-decoration-color:rgba(255,255,255,.35)}
.footer-link:focus-visible{outline:none;border-radius:.5rem;box-shadow:0 0 0 2px rgba(34,211,238,.35),0 0 0 6px rgba(2,6,23,.85)}

.accordion{border-radius:1.25rem;border:1px solid rgba(255,255,255,.10);background-color:rgba(255,255,255,.05);overflow:hidden}
.acc-btn{width:100%;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.05rem 1.1rem;color:#fff;background:transparent;border:0;text-align:left;font-weight:700;cursor:pointer}
.acc-btn:focus-visible{outline:none;box-shadow:inset 0 0 0 2px rgba(34,211,238,.40)}
.acc-icon{font-size:1.4rem;color:rgb(226 232 240);transition:transform .18s ease}
.acc-panel{padding:0 1.1rem 1.1rem 1.1rem}

[data-open="true"] .acc-icon{transform:rotate(180deg)}

::selection{background-color:rgba(34,211,238,.35);color:#fff}

@media (prefers-reduced-motion:reduce){
  html:focus-within{scroll-behavior:auto}
  .nav-link,.menu-link,.btn-primary,.btn-secondary,.card{transition:none}
}
