
body{
margin:0;
font-family:Georgia, serif;
background:#f5efe4;
color:#171717;
line-height:1.6;
}
.hero{
min-height:100vh;
background:
linear-gradient(to right, rgba(10,12,18,.84), rgba(10,12,18,.55)),
url("images/hero-paris-cafe.png") center/cover no-repeat;
display:flex;
align-items:center;
padding:5vw;
color:#fffaf0;
}
.hero-inner{
max-width:650px;
}
h1{
font-size:clamp(4rem,10vw,7rem);
font-weight:400;
line-height:.9;
margin:0;
}
.tag{
font-size:1.4rem;
margin-top:2rem;
}
section{
padding:5rem 8vw;
}
.books{
    background:#10233a;
    color:#fffaf0;
    text-align:center;
}
.books p{
    max-width:800px;
    margin:0 auto 1.5rem auto;
    text-align:left;
}
.book-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
gap:2rem;
margin-top:2rem;
}
.book{
border-top:2px solid #7b2030;
padding-top:1rem;
text-align:center;
}
.book img{
    width:250px;
    max-width:100%;
    height:auto;
    display:block;
    margin:0 auto 1rem auto;
}
img.book-cover{
    display:block;
    margin:0 auto 6rem auto;
    max-width:300px;
    width:100%;
    height:auto;
}.book-title{
    font-size:2rem;
    font-weight:400;
    text-align:center;
    margin-top:2rem;
    margin-bottom:5rem;
}
.cover-space{
    margin-bottom:6rem;
}

.book-cover{
    display:block;
    margin:0 auto;
    max-width:300px;
    width:100%;
    height:auto;
}
.contact{
background:#1a1d22;
color:#fffaf0;
}
.newsletter{
margin-top:4rem;
padding:2rem;
background:rgba(255,255,255,.04);
border:1px solid rgba(255,255,255,.12);
}
footer{
padding:1.5rem;
background:#5b1220;
color:white;
text-align:center;
}
a{
color:inherit;
}

