@charset "UTF-8";
h1,h2,h3{
    font-family:
    'Cormorant Garamond',
    serif;
}

body{
    font-family:
    'Inter',
    sans-serif;
}

.hero{

    position:relative;

    overflow:hidden;

    border-radius:12px;

    margin-bottom:40px;

}

.hero img{

    width:100%;

    height:550px;

    object-fit:cover;

}

.hero-overlay{

    position:absolute;

    inset:0;

    background:rgba(0,0,0,.35);

    display:flex;

    flex-direction:column;

    justify-content:center;

    align-items:center;

    color:white;

    text-align:center;

}

.hero-overlay h1{

    font-size:4rem;

    font-family:Georgia, serif;

}

.hero-overlay p{

    font-size:1.5rem;

}

.welcome{

    background:#faf8f4;

}

.opening-quote{

    font-size:2rem;

    font-family:Georgia,serif;

    text-align:center;

    font-style:italic;

    line-height:1.8;

    color:#5b4c3a;

}

.welcome h2{

    text-align:center;

    margin-top:60px;

    margin-bottom:30px;

}

.welcome p{

    font-size:1.15rem;

    line-height:2;

}

.closing-text{

    text-align:center;

    margin-top:50px;

    font-style:italic;

    font-size:1.3rem;

    color:#7a664c;

}

.latest-card small{

    letter-spacing:.05em;

    text-transform:uppercase;

    font-size:.78rem;

    color:#8a7a66 !important;

}

.latest-card h4{

    font-family: Georgia, serif;

    font-size: 1.6rem;

    font-weight: normal;

    color: #3f3428;

    margin-top: 12px;

    margin-bottom: 16px;

    line-height: 1.4;

}

.latest-card p{

    color:#555;

    line-height:1.8;

}

.latest-card a{

    text-decoration:none;

    color:#6b4f2a;

    font-weight:600;

}

.latest-card a:hover{

    color:#3f3428;

}

.latest h2{

    font-family:Georgia,serif;

    font-size:2.3rem;

    color:#3f3428;

    margin-bottom:10px;

}

.latest-subtitle{

    text-align:center;

    color:#8c7b67;

    font-style:italic;

    margin-bottom:50px;

    font-size:1rem;

}

.hero{

    margin-bottom:80px;

}

.welcome{

    padding-top:70px;

    padding-bottom:70px;

}

.latest{

    padding-top:70px;

    padding-bottom:70px;

}

.latest{

    background:#fcfbf8;

}

.speech-controls{

    display:flex;

    gap:10px;

    flex-wrap:wrap;

}

#speech-note{

    display:none;

    font-size:.85rem;

    color:#888;

    font-style:italic;

}