: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}

.navlink{display:inline-flex;align-items:center;gap:.5rem;border-radius:0.75rem;padding:.6rem .85rem;font-size:.95rem;color:rgb(226 232 240/1);transition:background-color .2s ease,color .2s ease,transform .2s ease}
.navlink:hover{background-color:rgb(255 255 255/.06);color:rgb(255 255 255/1)}
.navlink:focus{outline:none;box-shadow:0 0 0 2px rgb(103 232 249/.35)}

.mobilelink{display:inline-flex;align-items:center;justify-content:center;width:min(520px,100%);border-radius:1rem;padding:.75rem 1rem;font-size:1.5rem;color:rgb(241 245 249/1);background-color:rgb(255 255 255/.04);border:1px solid rgb(255 255 255/.1);transition:transform .2s ease,background-color .2s ease}
.mobilelink:hover{transform:translateY(-2px);background-color:rgb(255 255 255/.08)}
.mobilelink:focus{outline:none;box-shadow:0 0 0 3px rgb(103 232 249/.35)}

.btn-primary{display:inline-flex;align-items:center;gap:.6rem;justify-content:center;border-radius:0.9rem;padding:.8rem 1.05rem;font-size:.95rem;font-weight:700;color:rgb(15 23 42/1);background-image:linear-gradient(to right,rgb(103 232 249/1),rgb(134 239 172/1));transition:transform .2s ease,filter .2s ease;box-shadow:0 10px 30px rgb(6 182 212/.12)}
.btn-primary:hover{transform:translateY(-2px);filter:brightness(1.05)}
.btn-primary:focus{outline:none;box-shadow:0 0 0 3px rgb(103 232 249/.35),0 10px 30px rgb(6 182 212/.12)}
.btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}

.btn-secondary{display:inline-flex;align-items:center;gap:.6rem;justify-content:center;border-radius:0.9rem;padding:.8rem 1.05rem;font-size:.95rem;font-weight:700;color:rgb(241 245 249/1);background-color:rgb(255 255 255/.06);border:1px solid rgb(255 255 255/.12);transition:transform .2s ease,background-color .2s ease}
.btn-secondary:hover{transform:translateY(-2px);background-color:rgb(255 255 255/.10)}
.btn-secondary:focus{outline:none;box-shadow:0 0 0 3px rgb(103 232 249/.35)}
.btn-secondary:disabled{opacity:.6;cursor:not-allowed;transform:none}

.card{position:relative;border-radius:1rem;border:1px solid rgb(255 255 255/.10);background-color:rgb(255 255 255/.05);padding:1.4rem;box-shadow:0 10px 30px rgb(0 0 0/.18);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease}
.card:hover{transform:translateY(-4px);background-color:rgb(255 255 255/.06);box-shadow:0 18px 45px rgb(0 0 0/.22)}
.card:focus-within{box-shadow:0 0 0 3px rgb(103 232 249/.25),0 18px 45px rgb(0 0 0/.22)}

.card-icon{height:2.75rem;width:2.75rem;border-radius:.9rem;display:grid;place-items:center;border:1px solid rgb(255 255 255/.10)}

.card-title{margin-top:1rem;font-size:1.05rem;font-weight:800;color:rgb(248 250 252/1);line-height:1.25}

.card-text{margin-top:.55rem;font-size:.95rem;line-height:1.6;color:rgb(203 213 225/1)}

.card-link{margin-top:1rem;display:inline-flex;align-items:center;gap:.35rem;font-size:.95rem;font-weight:700;color:rgb(165 243 252/1);border-radius:.75rem;padding:.35rem .4rem;transition:background-color .2s ease,color .2s ease,transform .2s ease}
.card-link:hover{background-color:rgb(165 243 252/.10);color:rgb(236 254 255/1);transform:translateX(2px)}
.card-link:focus{outline:none;box-shadow:0 0 0 3px rgb(103 232 249/.35)}

.pill{display:inline-flex;align-items:center;gap:.45rem;border-radius:9999px;border:1px solid rgb(255 255 255/.12);background-color:rgb(255 255 255/.05);padding:.45rem .75rem;font-size:.9rem;color:rgb(226 232 240/1)}

.accordion-btn{width:100%;display:flex;align-items:center;justify-content:space-between;gap:1rem;text-align:left;border-radius:0.9rem;padding:.85rem .95rem;color:rgb(241 245 249/1);background-color:rgb(255 255 255/.04);border:1px solid rgb(255 255 255/.10);transition:background-color .2s ease,transform .2s ease}
.accordion-btn:hover{background-color:rgb(255 255 255/.07)}
.accordion-btn:focus{outline:none;box-shadow:0 0 0 3px rgb(103 232 249/.35)}
.accordion-btn[aria-expanded="true"]{background-color:rgb(255 255 255/.08)}

.accordion-panel{padding-left:.95rem;padding-right:.95rem}

.footlink{color:rgb(203 213 225/1);border-radius:.6rem;padding:.35rem .4rem;display:inline-flex;transition:background-color .2s ease,color .2s ease}
.footlink:hover{color:rgb(248 250 252/1);background-color:rgb(255 255 255/.06)}
.footlink:focus{outline:none;box-shadow:0 0 0 3px rgb(103 232 249/.35)}

.social{display:inline-flex;align-items:center;justify-content:center;height:2.5rem;width:2.5rem;border-radius:.9rem;border:1px solid rgb(255 255 255/.12);background-color:rgb(255 255 255/.05);color:rgb(226 232 240/1);transition:transform .2s ease,background-color .2s ease,color .2s ease}
.social:hover{transform:translateY(-2px);background-color:rgb(255 255 255/.10);color:rgb(255 255 255/1)}
.social:focus{outline:none;box-shadow:0 0 0 3px rgb(103 232 249/.35)}

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