:root{
 --paper:#f8f5ef;--white:#fffdfa;--ink:#29313b;
 --muted:#69717a;--red:#873e4d;--gold:#b38b50;
 --line:#e2dcd2;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);
 font:16px/1.85 Georgia,"Times New Roman",serif}
a{text-decoration:none;color:inherit}
.wrap{max-width:1140px;margin:auto;padding:0 25px}
header{background:var(--white);border-bottom:1px solid var(--line)}
nav{display:flex;align-items:center;justify-content:space-between;
 min-height:88px;gap:20px}
.logo{font-size:27px;font-weight:bold}
.logo span{color:var(--red)}
.menu{display:flex;gap:23px;flex-wrap:wrap}
.menu a{font:600 14px Arial,sans-serif}
.menu a:hover{color:var(--red)}
.hero{
 padding:105px 0;
 background:linear-gradient(120deg,#f0e5d6,#f9f7f2);
 border-bottom:1px solid var(--line)
}
.eyebrow{font:700 12px Arial,sans-serif;
 text-transform:uppercase;letter-spacing:3px;color:var(--red)}
h1,h2,h3{line-height:1.22}
h1{font-size:clamp(42px,7vw,75px);max-width:850px}
h2{font-size:clamp(30px,4vw,43px)}
h3{font-size:25px}
p{color:var(--muted)}
.lead{max-width:750px;font-size:21px}
.button{display:inline-block;background:var(--red);color:white;
 padding:14px 27px;border-radius:5px;margin-top:20px;
 font:700 15px Arial,sans-serif}
section{padding:72px 0}
.grid{display:grid;grid-template-columns:repeat(3,1fr);
 gap:22px;margin-top:32px}
.card{background:var(--white);border:1px solid var(--line);
 padding:30px;border-radius:9px;display:block;transition:.2s}
.card:hover{border-color:var(--red);transform:translateY(-3px)}
.card small{font:700 12px Arial,sans-serif;
 letter-spacing:1px;text-transform:uppercase;color:var(--red)}
.card p{font-size:15px}
.article{max-width:850px;margin:72px auto;
 padding:0 25px;min-height:55vh}
.article h1{font-size:clamp(38px,6vw,58px)}
.article h2{font-size:30px;margin-top:39px}
.article p{font-size:18px;line-height:2}
.quote{background:#f0e8de;padding:37px;
 border-left:5px solid var(--gold);border-radius:7px}
footer{background:#29313b;color:white;padding:43px 0}
footer p{color:#cad1d5}
@media(max-width:950px){.grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){
 nav{flex-direction:column;align-items:flex-start;padding:20px 0}
 .menu{gap:13px}
 .grid{grid-template-columns:1fr}
 .hero{padding:65px 0}
 section{padding:48px 0}
}
