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

html{
scroll-behavior:smooth;
}

body{
font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text",sans-serif;
background:#F7F5F1;
color:#24342B;
line-height:1.6;
}

nav{
max-width:1200px;
margin:auto;
padding:30px 40px;
display:flex;
justify-content:space-between;
align-items:center;
}

.logo{
font-size:30px;
font-weight:650;
letter-spacing:-0.5px;
}

nav ul{
display:flex;
gap:36px;
list-style:none;
}

nav a{
text-decoration:none;
color:#66736B;
transition:.2s;
}

nav a:hover{
color:#24342B;
}

.hero{
max-width:1200px;
margin:auto;
padding:90px 40px 120px;
display:grid;
grid-template-columns:1.1fr .9fr;
gap:90px;
align-items:center;
}

.eyebrow{
font-size:12px;
font-weight:700;
letter-spacing:.22em;
color:#7E8A82;
margin-bottom:18px;
}

.hero h1{
font-size:82px;
line-height:0.95;
letter-spacing:-3px;
margin-bottom:28px;
font-weight:650;
}

.hero p{
font-size:23px;
color:#647169;
max-width:560px;
margin-bottom:40px;
}

.button{
display:inline-block;
padding:18px 36px;
background:#2D5643;
color:white;
text-decoration:none;
border-radius:999px;
font-weight:600;
transition:.25s;
box-shadow:0 12px 30px rgba(45,86,67,.18);
}

.button:hover{
transform:translateY(-3px);
}

.note{
margin-top:22px;
color:#7B857F;
font-size:15px;
}

.phone{
background:white;
border-radius:42px;
padding:24px;
box-shadow:0 35px 90px rgba(0,0,0,.12);
max-width:340px;
margin:auto;
}

.notch{
width:120px;
height:28px;
background:#111;
border-radius:20px;
margin:0 auto 28px;
}

.balance{
font-size:44px;
font-weight:700;
}

.sub{
color:#7B857F;
margin-bottom:24px;
}

.bar{
height:12px;
background:#E5EBE6;
border-radius:999px;
overflow:hidden;
margin-bottom:26px;
}

.fill{
width:68%;
height:100%;
background:#2D5643;
}

.row{
display:flex;
justify-content:space-between;
padding:16px 0;
border-bottom:1px solid #EEF1EE;
}

.card{
margin-top:28px;
background:#F5F7F5;
padding:18px;
border-radius:20px;
}

.card h3{
margin-bottom:8px;
}

section+section{
border-top:1px solid #ECE7DF;
padding-top:90px;
}

footer{
margin-top:80px;
padding:60px;
text-align:center;
color:#8B938F;
border-top:1px solid #E8E4DD;
}

@media(max-width:900px){

nav{
padding:24px;
}

nav ul{
display:none;
}

.hero{
grid-template-columns:1fr;
text-align:center;
padding:60px 28px;
gap:50px;
}

.hero h1{
font-size:56px;
}

.hero p{
margin:0 auto 36px;
font-size:20px;
}

.phone{
max-width:300px;
}

}
