.container{
width:100%;
max-width:1320px;
margin:0 auto;
padding:0 40px;
}

.section{
position:relative;
padding:96px 0;
}

.section-small{
padding:64px 0;
}

.section-large{
padding:128px 0;
}

.section-dark{
background:var(--forest-dark);
color:var(--warm-white);
}

.section-cream{
background:var(--cream);
}

.section-white{
background:var(--warm-white);
}

.section-line{
border-top:1px solid var(--line);
}

.content-narrow{
max-width:760px;
}

.content-medium{
max-width:920px;
}

.content-center{
margin-left:auto;
margin-right:auto;
text-align:center;
}

.grid{
display:grid;
}

.grid-2{
grid-template-columns:repeat(2,minmax(0,1fr));
gap:48px;
}

.grid-3{
grid-template-columns:repeat(3,minmax(0,1fr));
gap:32px;
}

.grid-4{
grid-template-columns:repeat(4,minmax(0,1fr));
gap:24px;
}

.split{
display:grid;
grid-template-columns:minmax(0,1fr) minmax(0,1fr);
gap:80px;
align-items:center;
}

.stack{
display:flex;
flex-direction:column;
}

.row{
display:flex;
align-items:center;
}

.section-heading{
display:flex;
justify-content:space-between;
align-items:flex-end;
gap:40px;
margin-bottom:56px;
}

.section-heading__content{
max-width:760px;
}

.section-heading__eyebrow{
display:block;
margin-bottom:16px;
font-size:13px;
font-weight:600;
letter-spacing:1.6px;
text-transform:uppercase;
color:var(--wood);
}

.section-heading h2{
margin-bottom:18px;
}

.section-heading p{
max-width:660px;
font-size:18px;
line-height:1.7;
}

.full-width{
width:100%;
}

.visually-hidden{
position:absolute;
width:1px;
height:1px;
padding:0;
margin:-1px;
overflow:hidden;
clip:rect(0,0,0,0);
white-space:nowrap;
border:0;
}