*{box-sizing:border-box}
body{margin:0;background:#f6f5ef;color:#192321;font:17px/1.55 system-ui,sans-serif}
.shell{max-width:1100px;margin:auto;padding-inline:clamp(18px,5vw,60px)}
header,footer{display:flex;justify-content:space-between;align-items:center;padding-block:22px}
header{border-bottom:1px solid #d8ddd5}footer{margin-top:48px;border-top:1px solid #d8ddd5;color:#51615b}
a{color:#0b6151;text-underline-offset:.2em}.brand{font-weight:850;text-decoration:none;color:inherit}
.brand span,.eyebrow{font-size:.8rem;letter-spacing:.13em;color:#3d675c;text-transform:uppercase}
.hero{padding-block:clamp(40px,9vw,96px)}h1,h2{line-height:1.12;overflow-wrap:anywhere}
h1{font-size:clamp(2.4rem,7vw,5rem);letter-spacing:-.055em;margin:.2em 0}
.hero>p:last-child,.intro{font-size:1.2rem;color:#43564f}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:20px}
.card{background:#fff;border:1px solid #d8ddd5;border-radius:12px;overflow:hidden}
.card div{padding:20px}.card img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover}
time{font-size:.875rem;color:#51615b}.story{max-width:760px;margin:40px auto}
.story img{display:block;max-width:100%;height:auto;margin:24px 0;border-radius:12px}
.body{overflow-wrap:anywhere}.pager{display:flex;gap:20px;margin-top:24px}
.article-photo{max-width:460px;margin:28px auto}
.article-photo img{width:100%;margin:0}
.article-photo figcaption{margin-top:8px;font-size:.9rem;color:#43564f}
.button{display:inline-block;background:#0b6151;color:white;padding:10px 16px;border-radius:8px}
