:root { font: 17px/1.6 system-ui, sans-serif; color: #183331; background: #f7f4ed; }
body { max-width: 1040px; margin: 0 auto; padding: 40px 24px 72px; }
h1 { font: 600 clamp(2rem, 6vw, 3.6rem)/1.12 Georgia, serif; margin-bottom: 20px; }
h2 { font: 600 1.7rem/1.2 Georgia, serif; }
a { color: #17665d; text-underline-offset: .2em; overflow-wrap: anywhere; }
.intro { max-width: 760px; }
.grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; margin-top: 32px; }
article { background: white; border: 1px solid #dddcd2; border-radius: 12px; overflow: hidden; }
article img { width: 100%; height: auto; aspect-ratio: 3/2; object-fit: cover; display: block; }
.details { padding: 20px 24px; }
.label { color: #5b6866; font-size: .8rem; letter-spacing: .04em; text-transform: uppercase; }
@media(max-width: 680px) { body { padding: 24px 18px; } .grid { grid-template-columns: 1fr; } }
