:root{--color-bg:#0f0f0f;--color-surface:#1a1a1a;--color-surface-hover:#242424;--color-border:#2e2e2e;--color-text-primary:#f0f0f0;--color-text-secondary:#a0a0a0;--color-accent:#6c63ff;--color-accent-hover:#857df5;--font-sans:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,"Open Sans","Helvetica Neue",sans-serif;--radius:12px;--transition:200ms ease}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background-color:var(--color-bg);color:var(--color-text-primary);font-family:var(--font-sans);line-height:1.6;min-height:100dvh}.hero,.hero__content{display:flex;flex-direction:column;align-items:center}.hero__content{justify-content:center;text-align:center;min-height:100dvh;padding:4rem 1.5rem;max-width:720px;width:100%;margin-inline:auto;gap:1.25rem}.hero__title{font-size:clamp(2.5rem,6vw,4.5rem);font-weight:800;letter-spacing:-.02em;line-height:1.1;color:var(--color-text-primary)}.hero__subtitle{font-size:clamp(1.1rem,2.5vw,1.4rem);color:var(--color-accent);font-weight:500}.hero__body{font-size:1rem;color:var(--color-text-secondary);max-width:540px}.hero__body strong{color:var(--color-text-primary)}.hero__cta{display:inline-block;margin-top:.75rem;padding:.75rem 2rem;background-color:var(--color-accent);color:#fff;text-decoration:none;font-weight:600;font-size:1rem;border-radius:var(--radius);transition:background-color var(--transition),transform var(--transition)}.hero__cta:hover{background-color:var(--color-accent-hover);transform:translateY(-2px)}.hero__cta:focus-visible{outline:3px solid var(--color-accent);outline-offset:4px}.info{width:100%;max-width:1000px;margin-inline:auto;padding:4rem 1.5rem 6rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));grid-gap:1.5rem;gap:1.5rem}.info__card{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:1.75rem 1.5rem;display:flex;flex-direction:column;gap:.75rem;transition:background-color var(--transition),border-color var(--transition),transform var(--transition)}.info__card:hover{background-color:var(--color-surface-hover);border-color:var(--color-accent);transform:translateY(-3px)}.info__card-title{font-size:1.125rem;font-weight:700;color:var(--color-text-primary)}.info__card-text{font-size:.9375rem;color:var(--color-text-secondary);line-height:1.65}