:root{color-scheme:dark}*{text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img{max-width:100%;height:auto;display:block}body{font-size:16px}a{text-underline-offset:3px}*:focus-visible{outline:none}

.navlink{display:inline-flex;align-items:center;justify-content:center;padding:0.6rem 0.9rem;border-radius:0.9rem;font-size:0.95rem;font-weight:600;color:rgb(226 232 240);transition:transform .15s ease,background-color .15s ease,box-shadow .15s ease}
.navlink:hover{background-color:rgba(255,255,255,.06)}
.navlink:focus{box-shadow:0 0 0 3px rgba(165,180,252,.55)}

.mobilelink{display:flex;align-items:center;justify-content:center;border-radius:1rem;padding:0.85rem 1rem;font-size:1.5rem;font-weight:700;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}
.mobilelink:hover{transform:translateY(-1px);background-color:rgba(255,255,255,.06);border-color:rgba(255,255,255,.18)}
.mobilelink:focus{box-shadow:0 0 0 3px rgba(165,180,252,.55)}

.btnPrimary{border-radius:0.95rem;padding:0.8rem 1.05rem;font-size:0.95rem;font-weight:800;color:rgb(241 245 249);background-image:linear-gradient(to right, rgba(99,102,241,.95), rgba(34,211,238,.85));box-shadow:0 10px 26px rgba(79,70,229,.22);transition:transform .15s ease,filter .15s ease,box-shadow .15s ease}
.btnPrimary:hover{transform:translateY(-1px);filter:saturate(1.05);box-shadow:0 14px 34px rgba(79,70,229,.28)}
.btnPrimary:focus{box-shadow:0 0 0 3px rgba(165,180,252,.55),0 14px 34px rgba(79,70,229,.28)}
.btnPrimary:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}

.btnSecondary{border-radius:0.95rem;padding:0.8rem 1.05rem;font-size:0.95rem;font-weight:800;color:rgb(241 245 249);background-color:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);transition:transform .15s ease,background-color .15s ease,border-color .15s ease}
.btnSecondary:hover{transform:translateY(-1px);background-color:rgba(255,255,255,.08);border-color:rgba(255,255,255,.18)}
.btnSecondary:focus{box-shadow:0 0 0 3px rgba(165,180,252,.55)}
.btnSecondary:disabled{opacity:.6;cursor:not-allowed;transform:none}

.chip{display:inline-flex;align-items:center;border-radius:9999px;padding:0.45rem 0.75rem;font-size:0.875rem;font-weight:700;color:rgb(226 232 240);background-color:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.10)}

.card{border-radius:1.25rem;background-color:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.10);padding:1.25rem;box-shadow:0 10px 28px rgba(2,6,23,.35);transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease,background-color .15s ease}
.card:hover{transform:translateY(-3px);box-shadow:0 16px 44px rgba(2,6,23,.45);border-color:rgba(255,255,255,.16);background-color:rgba(255,255,255,.06)}
.card:focus-within{box-shadow:0 0 0 3px rgba(165,180,252,.55),0 16px 44px rgba(2,6,23,.45)}
.cardIcon{display:inline-flex;height:2.5rem;width:2.5rem;align-items:center;justify-content:center;border-radius:0.9rem;border:1px solid rgba(255,255,255,.10)}
.cardTitle{margin-top:0.85rem;font-family:ui-serif,Georgia,serif;font-weight:700;font-size:1.15rem;line-height:1.35;color:rgb(248 250 252)}
.cardText{margin-top:0.5rem;font-size:0.95rem;line-height:1.55;color:rgb(203 213 225)}
.cardLink{margin-top:0.9rem;display:inline-flex;align-items:center;gap:0.45rem;font-size:0.9rem;font-weight:800;color:rgb(226 232 240);text-decoration:underline;text-decoration-color:rgba(255,255,255,.22)}
.cardLink:hover{text-decoration-color:rgba(255,255,255,.55)}
.cardLink:focus{border-radius:0.5rem;box-shadow:0 0 0 3px rgba(165,180,252,.55)}

.footerlink{color:rgb(203 213 225);text-decoration:none;transition:color .15s ease,text-decoration-color .15s ease}
.footerlink:hover{color:rgb(248 250 252);text-decoration:underline;text-decoration-color:rgba(255,255,255,.28)}
.footerlink:focus{border-radius:0.5rem;box-shadow:0 0 0 3px rgba(165,180,252,.55)}

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}

@media (prefers-reduced-motion:reduce){.btnPrimary,.btnSecondary,.navlink,.mobilelink,.card{transition:none}.card:hover,.btnPrimary:hover,.btnSecondary:hover,.mobilelink:hover{transform:none}}
