*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
body{background:#0d0f1a;color:#f0ebe3;font-family:'Source Serif 4',serif;overflow-x:hidden}
.header{padding:20px 24px}.logo{font-family:'Zilla Slab',serif;font-size:1.2rem;font-weight:700;color:#f0ebe3}.a{color:#7b2ff7}
.hero{min-height:80vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:60px 24px;background:radial-gradient(ellipse at center,#1a1437,#0d0f1a 70%)}
.title{font-family:'Zilla Slab',serif;font-size:clamp(3rem,8vw,5rem);font-weight:700;line-height:1.1;color:#f0ebe3;letter-spacing:.04em}
.sub{font-size:clamp(.9rem,1.3vw,1.05rem);color:#a8b5a0;max-width:480px;line-height:1.75;margin-top:20px}
.grid{max-width:900px;margin:0 auto;padding:60px 24px;display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px}
.card{background:#1a1437;border:1px solid #7b2ff720;border-radius:14px;padding:32px;transition:border-color .3s,transform .3s}
.card:hover{border-color:#7b2ff7;transform:translateY(-4px)}
.tag{font-family:'IBM Plex Mono',monospace;font-size:.6rem;font-weight:400;letter-spacing:.25em;text-transform:uppercase;color:#c2185b;display:block;margin-bottom:8px}
.card h2{font-family:'Zilla Slab',serif;font-size:1.2rem;font-weight:700;margin-bottom:10px;color:#f0ebe3}
.card p{font-size:.88rem;line-height:1.75;color:#a8b5a0}
.c1{border-top:3px solid #00e5a0}.c2{border-top:3px solid #7b2ff7}.c3{border-top:3px solid #c2185b}
.footer{text-align:center;padding:40px 24px;border-top:1px solid #7b2ff710}
.footer p{font-size:.75rem;color:#f0ebe3;opacity:.3}
