:root{--paper:#FFFDF9;--shell:#FAF4E8;--sand:#F3E9D7;--ink:#33393B;--soft:#6E7476;--sea:#3E7F7B;--sea-deep:#2D6360;--dune:#C9A36B;--line:#EBE2D2;--display:'Fraunces',Georgia,serif;--body:'Karla',system-ui,sans-serif}
*,*::before,*::after{box-sizing:border-box}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:1.05rem;line-height:1.75;-webkit-font-smoothing:antialiased}
h1,h2,h3{font-family:var(--display);font-variation-settings:'SOFT' 80;font-weight:500;line-height:1.12;letter-spacing:-.01em;margin:0 0 .8em;text-wrap:balance}
a{color:var(--sea-deep)}
.wrap{width:min(46rem,100%);margin-inline:auto;padding-inline:clamp(1.25rem,5vw,2.5rem)}
.wide{width:min(72rem,100%);margin-inline:auto;padding-inline:clamp(1.25rem,5vw,2.5rem)}
.masthead{padding-block:1.3rem;border-bottom:1px solid var(--line)}
.masthead .wide{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.wordmark{font-family:var(--display);font-size:1.2rem;font-weight:600;color:var(--ink);text-decoration:none}
.wordmark span{color:var(--sea)}
.crumb{font-size:.78rem;font-weight:700;letter-spacing:.06em}
.crumb a{text-decoration:none;color:var(--soft)}
.eyebrow{font-size:.7rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--sea);margin:0 0 1rem}
article.post{padding-block:clamp(2.5rem,7vw,4.5rem)}
article.post h1{font-size:clamp(2rem,1.4rem + 2.8vw,3.2rem)}
article.post .meta{font-size:.82rem;color:var(--soft);margin-bottom:2rem}
article.post h2{font-size:1.5rem;margin-top:2.2em}
article.post p{margin:0 0 1.15em}
article.post img{display:block;width:100%;height:auto;border-radius:14px;border:1px solid var(--line);margin:.5rem 0 1.5rem}
article.post .cta{background:var(--shell);border:1px solid var(--line);border-radius:14px;padding:1.5rem 1.75rem;margin-top:3rem}
article.post .cta p{margin:0 0 .3em}
.bloglist{padding-block:clamp(2.5rem,7vw,4.5rem)}
.bloglist h1{font-size:clamp(2rem,1.4rem + 2.8vw,3.2rem)}
.bloglist .intro{color:var(--soft);max-width:44rem;margin-bottom:2.5rem}
.posts{list-style:none;margin:0;padding:0;display:grid;gap:1.5rem}
.posts li{background:var(--shell);border:1px solid var(--line);border-radius:14px;padding:1.6rem 1.8rem}
.posts h2{font-size:1.35rem;margin:0 0 .4em}
.posts h2 a{text-decoration:none;color:var(--ink)}
.posts h2 a:hover{color:var(--sea-deep)}
.posts p{margin:0;color:var(--soft);font-size:.95rem}
.posts .tag{display:inline-block;font-size:.66rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--sea);margin-bottom:.6rem}
.foot{border-top:1px solid var(--line);padding-block:2.25rem 3rem;font-size:.8rem;color:var(--soft)}
.foot .wide{display:flex;justify-content:space-between;gap:1rem 2.5rem;flex-wrap:wrap}
.foot p{margin:0;line-height:1.9}
