*{
margin:0;
padding:0;
box-sizing:border-box;
}

body{

background:
radial-gradient(circle,#1d1d1d 1px,transparent 1px);

background-size:18px 18px;

background-color:#f6f6f6;

font-family:'IBM Plex Mono', monospace;

color:#111;

overflow-x:hidden;

cursor:crosshair;

}

.noise{

position:fixed;
inset:0;

background-image:url("https://www.transparenttextures.com/patterns/asfalt-dark.png");

opacity:.08;

pointer-events:none;

}

header{

text-align:center;

padding:70px 20px 50px;

}

header h1{

font-family:'DotGothic16',sans-serif;

font-size:42px;

letter-spacing:8px;

margin-bottom:10px;

}

header p{

font-size:13px;

letter-spacing:2px;

text-transform:uppercase;

}

.container{

width:min(1100px,90%);

margin:auto;

display:grid;

grid-template-columns:repeat(auto-fit,minmax(280px,1fr));

gap:35px;

padding-bottom:80px;

}

.card{

background:white;

border:2px solid black;

padding:35px;

min-height:220px;

display:flex;

flex-direction:column;

justify-content:space-between;

transition:.35s;

position:relative;

overflow:hidden;

}

.card::before{

content:"";

position:absolute;

width:200%;

height:2px;

background:black;

left:-100%;

top:0;

transition:.5s;

}

.card:hover::before{

left:0;

}

.card:hover{

transform:translateY(-8px);

box-shadow:10px 10px black;

}

.card h2{

font-family:'DotGothic16';

font-size:22px;

margin-bottom:18px;

letter-spacing:2px;

}

.card p{

line-height:1.8;

font-size:15px;

}

.card a{

color:black;

text-decoration:none;

font-size:14px;

letter-spacing:1px;

border-bottom:1px dashed black;

width:fit-content;

padding-bottom:4px;

transition:.3s;

}

.card a:hover{

letter-spacing:3px;

}

footer{

width:260px;

margin:40px auto;

padding:10px;

text-align:center;

border:2px solid black;

font-size:13px;

background:white;

}

.sparkle{

position:fixed;

font-size:22px;

animation:float 5s infinite ease-in-out;

pointer-events:none;

font-family:'DotGothic16';

}

.s1{

left:10%;

top:25%;

}

.s2{

right:12%;

top:55%;

animation-delay:2s;

}

.s3{

left:80%;

top:12%;

animation-delay:1s;

}

@keyframes float{

0%{

transform:translateY(0px) rotate(0);

}

50%{

transform:translateY(-18px) rotate(90deg);

}

100%{

transform:translateY(0px) rotate(180deg);

}

}

.card:nth-child(odd){

transform:rotate(-1deg);

}

.card:nth-child(even){

transform:rotate(1deg);

}

.card:hover{

transform:rotate(0deg) translateY(-8px);

}

::selection{

background:black;

color:white;

}

::-webkit-scrollbar{

width:10px;

}

::-webkit-scrollbar-track{

background:white;

}

::-webkit-scrollbar-thumb{

background:black;

}