/* Blog index and article pages. Loaded after style.css. */
.blog-header{padding:64px 0 0}
.blog-header h1{font-size:clamp(32px,3.2vw,40px);letter-spacing:-.04em;margin:0}
.post-grid{list-style:none;margin:0;padding:32px 0 96px;display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.post-card{min-width:0}
.post-card a{display:flex;flex-direction:column;height:100%;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--surface);transition:border-color .25s,transform .25s}
.post-card a:hover{border-color:#AC7C58;transform:translateY(-3px)}
.post-cover{position:relative;height:200px;overflow:hidden;background:radial-gradient(ellipse at 20% 110%,#4A3528 0%,#382C26 60%);border-bottom:1px solid var(--line)}
.post-cover .brand-mark{position:absolute;width:260px;height:210px;right:-40px;bottom:-60px;opacity:.9;transform:rotate(-9deg);transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.post-card a:hover .post-cover .brand-mark{transform:rotate(-4deg) translateY(-6px)}
.post-cover .eyebrow{position:absolute;left:22px;top:20px;margin:0}
.post-cover .cover-word{position:absolute;left:22px;bottom:18px;font-family:Georgia,'Times New Roman',serif;font-style:italic;font-size:34px;letter-spacing:-.04em;color:var(--pale);line-height:1}
.post-card[data-tone=two] .post-cover{background:radial-gradient(ellipse at 80% -10%,#4A3528 0%,#382C26 60%)}
.post-card[data-tone=two] .post-cover .brand-mark{left:-50px;right:auto;top:-50px;bottom:auto;transform:rotate(14deg) scaleX(-1)}
.post-card[data-tone=two] a:hover .post-cover .brand-mark{transform:rotate(9deg) scaleX(-1) translateY(6px)}
.post-card[data-tone=three] .post-cover{background:var(--paper)}
.post-card[data-tone=three] .post-cover .brand-mark{width:200px;height:160px;right:24px;bottom:-30px;opacity:1;transform:rotate(-7deg)}
.post-card[data-tone=three] .post-cover .eyebrow{color:#8D5032}
.post-card[data-tone=three] .post-cover .cover-word{color:#8D5032}
.post-body{padding:22px 24px 26px;display:flex;flex-direction:column;flex:1}
.post-body .post-meta{display:flex;gap:14px;font:10px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:14px}
.post-body .post-meta time{color:var(--accent)}
.post-body h2{font-size:23px;line-height:1.25;letter-spacing:-.035em;margin-bottom:12px;transition:color .2s}
.post-card a:hover h2{color:var(--accent)}
.post-body p{color:var(--muted);font-size:14px;line-height:1.75;margin:0 0 20px}
.post-body .read-more{margin-top:auto;font-size:12px;color:var(--accent);display:inline-flex;gap:10px;align-items:center}
.post-body .read-more span{transition:transform .2s}
.post-card a:hover .read-more span{transform:translateX(3px)}
.post-card.featured{grid-column:1/-1}
.post-card.featured a{flex-direction:row}
.post-card.featured .post-cover{flex:0 0 46%;height:auto;min-height:300px;border-bottom:0;border-right:1px solid var(--line);background:radial-gradient(ellipse at 85% 110%,#5A3F2E 0%,#3A2D25 55%)}
.post-card.featured .post-cover .brand-mark{width:420px;height:340px;right:-60px;bottom:-110px;opacity:.95;transform:rotate(-7deg)}
.post-card.featured .post-cover .cover-word{font-size:72px;left:28px;bottom:24px}
.post-card.featured .post-body{padding:38px 40px;justify-content:center}
.post-card.featured .post-body h2{font-size:38px;letter-spacing:-.045em}
.post-card.featured .post-body p{font-size:16px;max-width:520px}
@media(max-width:820px){.post-card.featured a{flex-direction:column}.post-card.featured .post-cover{flex:none;height:220px;min-height:0;border-right:0;border-bottom:1px solid var(--line)}.post-card.featured .post-cover .brand-mark{width:280px;height:230px;right:-50px;bottom:-80px}.post-card.featured .post-cover .cover-word{font-size:44px}.post-card.featured .post-body{padding:24px}.post-card.featured .post-body h2{font-size:28px}}
.article{padding:72px 0 96px}
.article-head{max-width:760px;margin-bottom:56px}
.article-head h1{font-size:clamp(40px,4.6vw,60px);line-height:1.08;letter-spacing:-.05em;margin-bottom:22px}
.article-head .standfirst{font-size:20px;line-height:1.55;color:var(--muted);margin:0 0 28px}
.article-meta{display:flex;gap:18px;font:11px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.article-meta time{color:var(--accent)}
.article-body{max-width:680px}
.article-body p{font-size:18px;line-height:1.75;margin:0 0 26px}
.article-body h2{font-size:30px;line-height:1.15;margin:52px 0 18px}
.article-body ul,.article-body ol{font-size:18px;line-height:1.75;padding-left:22px;margin:0 0 26px}
.article-body li{margin-bottom:8px}
.article-body strong{font-weight:550;color:var(--text)}
.article-body .stage{display:grid;grid-template-columns:64px 1fr;gap:18px;align-items:baseline;border-top:1px solid var(--line);padding:18px 0}
.article-body .stage:last-of-type{border-bottom:1px solid var(--line);margin-bottom:26px}
.article-body .stage b{font:26px var(--mono);font-weight:400;color:var(--accent)}
.article-body .stage p{margin:0;font-size:16px;color:var(--muted)}
.article-foot{border-top:1px solid var(--line);margin-top:56px;padding-top:32px;display:flex;flex-wrap:wrap;gap:20px;align-items:center;justify-content:space-between;max-width:680px}
.article-foot p{margin:0;color:var(--muted);font-size:15px}
@media(max-width:820px){.blog-header{padding:44px 0 0}.post-grid{grid-template-columns:1fr 1fr;gap:20px;padding-bottom:72px}.article{padding:52px 0 72px}.article-body p,.article-body ul,.article-body ol{font-size:17px}}
@media(max-width:600px){.blog-header h1{font-size:30px}.post-grid{grid-template-columns:1fr;gap:18px}.post-cover{height:180px}.article-head .standfirst{font-size:18px}.article-body h2{font-size:26px}.article-body .stage{grid-template-columns:48px 1fr}}
