:root{--cream:#faf7f2;--cream-dark:#f3ede3;--ink:#2d2a26;--ink-soft:#5c564e;--terra:#b4552d;--terra-dark:#96431f;--sage:#7a8b6f;--line:#e5ddd0;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:17px;line-height:1.7}body,h1,h2,h3{color:var(--ink)}h1,h2,h3{font-family:Georgia,Times New Roman,serif;line-height:1.25}a{color:var(--terra);text-decoration:none}a:hover{color:var(--terra-dark);text-decoration:underline}img{max-width:100%;height:auto;display:block}.container{max-width:1080px;margin:0 auto;padding:0 20px}.site-header{background:var(--white);border-bottom:1px solid var(--line);position:-webkit-sticky;position:sticky;top:0;z-index:10}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:14px;padding-bottom:14px;flex-wrap:wrap}.brand{font-family:Georgia,Times New Roman,serif;font-size:24px;font-weight:700;color:var(--ink)}.brand:hover{text-decoration:none}.brand-mark,.brand:hover{color:var(--terra)}.main-nav{display:flex;gap:18px;flex-wrap:wrap}.main-nav a{color:var(--ink-soft);font-size:15px;font-weight:600}.main-nav a:hover{color:var(--terra)}.hero{background:var(--cream-dark);border-bottom:1px solid var(--line);padding:56px 0 48px;text-align:center}.hero h1{font-size:42px;margin:0 0 12px}.hero p{font-size:19px;color:var(--ink-soft);max-width:640px;margin:0 auto}.section{padding:40px 0}.section-title{font-size:28px;margin:0 0 8px}.section-sub{color:var(--ink-soft);margin:0 0 28px}.post-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-gap:28px;gap:28px}.post-card{background:var(--white);border:1px solid var(--line);border-radius:12px;overflow:hidden;display:flex;flex-direction:column}.post-card img{width:100%;aspect-ratio:2/3;object-fit:cover}.post-card-body{padding:20px;display:flex;flex-direction:column;gap:8px;flex:1 1}.post-card-body .category{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--sage)}.post-card-body h2,.post-card-body h3{font-size:21px;margin:0}.post-card-body h2 a,.post-card-body h3 a{color:var(--ink)}.post-card-body h2 a:hover,.post-card-body h3 a:hover{color:var(--terra)}.post-card-body p{margin:0;color:var(--ink-soft);font-size:15px}.post-card-body .read-more{margin-top:auto;font-weight:700;font-size:15px}.category-chips{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:28px}.chip{background:var(--white);border:1px solid var(--line);border-radius:999px;padding:8px 16px;font-size:14px;font-weight:600;color:var(--ink)}.chip:hover{border-color:var(--terra);color:var(--terra);text-decoration:none}.article{max-width:760px;margin:0 auto;padding:40px 20px 56px}.article .category{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--sage)}.article h1{font-size:36px;margin:8px 0 12px}.article .meta{color:var(--ink-soft);font-size:15px;margin:0 0 24px}.article .hero-image{border-radius:12px;margin-bottom:28px;width:100%}.article-body h2{font-size:27px;margin:36px 0 12px}.article-body h3{font-size:21px;margin:28px 0 10px}.article-body p{margin:0 0 18px}.article-body ol,.article-body ul{margin:0 0 18px;padding-left:24px}.article-body li{margin-bottom:8px}.article-body strong{color:var(--ink)}.article-body blockquote{border-left:3px solid var(--terra);margin:24px 0;padding:4px 0 4px 18px;color:var(--ink-soft);font-style:italic}.related{border-top:1px solid var(--line);margin-top:48px;padding-top:28px}.related h2{font-size:24px;margin:0 0 20px}.page-narrow{max-width:760px;margin:0 auto;padding:48px 20px 56px}.page-narrow h1{font-size:36px;margin:0 0 16px}.page-narrow h2{font-size:24px;margin:32px 0 10px}.page-narrow p{margin:0 0 16px}.site-footer{background:var(--ink);color:#d8d2c8;padding:40px 0 32px;margin-top:24px}.site-footer a{color:#f0e9dd}.footer-brand{font-family:Georgia,Times New Roman,serif;font-size:22px;font-weight:700;color:var(--white);margin:0 0 8px}.footer-nav{display:flex;gap:18px;flex-wrap:wrap;margin:20px 0 12px}.footer-copy{font-size:14px;color:#a89f92;margin:0}@media (max-width:640px){.hero h1{font-size:32px}.article h1,.page-narrow h1{font-size:29px}.header-inner{text-align:center}.header-inner,.main-nav{justify-content:center}}