*{
margin:0;
padding:0;
box-sizing:border-box;
}

body{

background:#FFFDF8;

font-family:'Space Grotesk',sans-serif;

height:100vh;

overflow:hidden;

display:flex;
justify-content:center;
align-items:center;

position:relative;

color:#222;

}

/* ---------- BLOBS ---------- */

.blob{

position:absolute;

border-radius:50%;

opacity:.9;

filter:blur(10px);

animation:float 8s ease-in-out infinite alternate;

}

.pink{

width:320px;
height:320px;

background:#FF7BA9;

top:-100px;
right:-80px;

}

.orange{

width:260px;
height:260px;

background:#FFC857;

bottom:-70px;
left:-60px;

}

.blue{

width:220px;
height:220px;

background:#78C8FF;

bottom:120px;
right:140px;

}

@keyframes float{

from{

transform:translateY(0px);

}

to{

transform:translateY(-25px);

}

}

/* ---------- CONTENT ---------- */

.wrapper{

width:90%;
max-width:900px;

position:relative;
z-index:2;

}

.name{

font-size:88px;

font-weight:700;

line-height:.9;

letter-spacing:-3px;

margin-bottom:30px;

}

.line{

width:120px;
height:6px;

background:#FF7BA9;

border-radius:30px;

margin-bottom:40px;

}

h2{

font-family:'Playfair Display',serif;

font-size:42px;

line-height:1.2;

font-weight:700;

margin-bottom:30px;

}

.text{

font-size:20px;

max-width:520px;

line-height:1.8;

color:#555;

margin-bottom:45px;

}

.buttons{

display:flex;

gap:18px;

flex-wrap:wrap;

}

.buttons a{

text-decoration:none;

padding:16px 32px;

border-radius:100px;

font-weight:600;

transition:.3s;

}

.buttons a:first-child{

background:#222;

color:white;

}

.buttons a:first-child:hover{

background:#FF7BA9;

transform:translateY(-4px);

}

.buttons a:last-child{

border:2px solid #222;

color:#222;

}

.buttons a:last-child:hover{

background:#222;

color:white;

transform:translateY(-4px);

}

/* ---------- MOBILE ---------- */

@media(max-width:768px){

.name{

font-size:54px;

}

h2{

font-size:30px;

}

.text{

font-size:17px;

}

}