/* RESET */

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

body{
font-family: Arial, Helvetica, sans-serif;
line-height:1.6;
color:#2f3a32;
background:#f7f6f2;
}


/* HERO */

.hero{
background:#6f8f72;
color:white;
padding:70px 20px;
}

.hero-content{
max-width:900px;
margin:auto;
}

.hero-text{
flex:1;
padding-right:40px;
}

.course{
text-transform:uppercase;
letter-spacing:1px;
margin-bottom:10px;
font-weight:bold;
}

.hero h1{
font-size:3em;
margin-bottom:10px;
}

.hero h2{
font-size:1.3em;
font-weight:normal;
margin-bottom:20px;
}

.intro{
margin-bottom:25px;
}

.button{
background:white;
color:#4f6b52;
padding:12px 22px;
border-radius:25px;
text-decoration:none;
font-weight:bold;
}

.button:hover{
background:#d9ded6;
}

.hero-image img{
width:230px;
height:230px;
object-fit:cover;
border-radius:50%;
border:5px solid white;
}


/* SECTIONS */

.section{
max-width:900px;
margin:60px auto;
padding:0 20px;
}

.section h2{
color:#4f6b52;
margin-bottom:20px;
}

.section p{
margin-bottom:15px;
}

.alt{
background:#edf2eb;
padding:40px 20px;
}


/* GOALS */

.goals{
display:flex;
gap:20px;
flex-wrap:wrap;
}

.goal{
flex:1 1 250px;
background:white;
padding:20px;
border-left:5px solid #a8bfa0;
}

.goal h3{
margin-bottom:10px;
}


/* PROGRESS */

.weeks{
display:flex;
flex-wrap:wrap;
gap:20px;
}

.week{
flex:1 1 220px;
background:white;
padding:20px;
border-left:5px solid #6f8f72;
}

.week h3{
margin-bottom:10px;
}


/* FOOTER */

footer{
background:#4f6b52;
color:white;
text-align:center;
padding:20px;
margin-top:40px;
}