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

html{
    scroll-behavior:smooth;
}

body{

    font-family:Segoe UI,Arial,sans-serif;

    background:#f5f7fb;

    color:#2d3748;

    line-height:1.7;

}

/* HERO */

.hero{

    min-height:100vh;

    display:flex;

    justify-content:center;

    align-items:center;

    text-align:center;

    padding:40px;

    background:linear-gradient(135deg,#dbeafe,#f8fafc);

}

.hero-content{

    max-width:900px;

}

.hero h1{

    font-size:4rem;

    margin-bottom:15px;

}

.hero p{

    color:#64748b;

    margin-bottom:45px;

    font-size:1.2rem;

}

/* MENU */

nav{

    display:flex;

    justify-content:center;

    flex-wrap:wrap;

    gap:20px;

}

nav a{

    text-decoration:none;

    color:#2563eb;

    background:white;

    padding:14px 22px;

    border-radius:14px;

    box-shadow:0 8px 18px rgba(0,0,0,.08);

    transition:.25s;

    font-weight:600;

}

nav a:hover{

    transform:translateY(-4px);

    background:#2563eb;

    color:white;

}

/* CONTENT */

main{

    width:min(1100px,92%);

    margin:auto;

}

.card{

    margin:60px 0;

    background:white;

    padding:45px;

    border-radius:18px;

    box-shadow:0 10px 25px rgba(0,0,0,.06);

}

.card h2{

    margin-bottom:25px;

    color:#2563eb;

}

/* PROJECTS */

.projects{

    display:grid;

    grid-template-columns:repeat(auto-fit,minmax(250px,1fr));

    gap:25px;

}

.project{

    border:1px solid #e2e8f0;

    border-radius:15px;

    padding:25px;

    transition:.25s;

}

.project:hover{

    transform:translateY(-5px);

    box-shadow:0 8px 20px rgba(0,0,0,.08);

}

.project h3{

    margin-bottom:10px;

}

.project p{

    margin-bottom:20px;

}

.project a{

    text-decoration:none;

    color:#2563eb;

    font-weight:600;

}

/* FAMILY */

#family img{

    width:100%;

    border-radius:15px;

    margin-bottom:25px;

}

/* LINKS */

a{

    color:#2563eb;

}

footer{

    text-align:center;

    padding:50px;

    color:#64748b;

}

/* MOBILE */

@media(max-width:700px){

.hero h1{

font-size:2.7rem;

}

.card{

padding:28px;

}

nav{

flex-direction:column;

}

nav a{

width:100%;

}

}