/* Shared article page styles */
.article-hero{padding:calc(var(--nav-h)+3rem) var(--pad) 0;background:var(--ivory)}
.article-hero-inner{max-width:800px;margin:0 auto}
.article-eyebrow{display:flex;align-items:center;gap:.75rem;margin-bottom:1.25rem}
.article-cat{font-size:.65rem;letter-spacing:.14em;text-transform:uppercase;color:var(--rose);font-weight:600;background:var(--rose-bg);padding:.3rem .8rem;border-radius:3px}
.article-date{font-size:.72rem;color:var(--muted);letter-spacing:.05em}
.article-hero h1{font-family:var(--serif);font-size:clamp(1.9rem,3.8vw,2.9rem);font-weight:400;color:var(--char);line-height:1.15;letter-spacing:-.01em;margin-bottom:1rem}
.article-hero h1 em{font-style:italic;color:var(--rose)}
.article-hero-sub{font-size:.96rem;color:var(--muted);line-height:1.85;font-weight:300;max-width:640px;margin-bottom:2.5rem}
.article-cover{max-width:800px;margin:0 auto;border-radius:8px;overflow:hidden;height:400px;display:flex;align-items:center;justify-content:center;position:relative}
.article-cover img{width:100%;height:100%;object-fit:cover}

.article-body{padding:3rem var(--pad) 5rem;max-width:800px;margin:0 auto}
.article-body p{font-size:.96rem;color:#2E2B28;line-height:1.9;font-weight:300;margin-bottom:1.35rem}
.article-body h2{font-family:var(--serif);font-size:1.5rem;font-weight:400;color:var(--char);margin:2.5rem 0 .75rem;padding-bottom:.5rem;border-bottom:1px solid var(--border)}
.article-body h3{font-family:var(--serif);font-size:1.15rem;font-weight:400;color:var(--char);margin:1.75rem 0 .5rem}
.article-body ul{margin:.5rem 0 1.35rem 1.25rem}
.article-body ul li{font-size:.94rem;color:#2E2B28;line-height:1.8;font-weight:300;margin-bottom:.4rem}
.article-body ul li strong{color:var(--char);font-weight:500}
.article-body strong{font-weight:500;color:var(--char)}

.affiliate-callout{background:var(--blush);border-left:3px solid var(--rose);border-radius:0 6px 6px 0;padding:1rem 1.25rem;margin:1.5rem 0;display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.affiliate-callout p{margin:0;font-size:.87rem;color:var(--char);font-weight:400;flex:1}
.affiliate-callout a.aff-btn{display:inline-flex;align-items:center;gap:.4rem;background:var(--char);color:var(--white);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;font-weight:500;padding:.5rem 1.1rem;border-radius:4px;white-space:nowrap;transition:background .2s}
.affiliate-callout a.aff-btn:hover{background:var(--rose)}

.article-divider{border:none;border-top:1px solid var(--border);margin:2rem 0}
.article-note{background:var(--sand);border-radius:6px;padding:1rem 1.25rem;font-size:.82rem;color:var(--muted);line-height:1.65;margin-bottom:2rem}

.article-cta{background:var(--char);border-radius:8px;padding:2.5rem;text-align:center;margin-top:3rem}
.article-cta h3{font-family:var(--serif);font-size:1.5rem;font-weight:400;color:var(--white);margin-bottom:.6rem}
.article-cta p{font-size:.88rem;color:rgba(255,255,255,.65);margin-bottom:1.5rem;line-height:1.7}
.article-cta a{display:inline-block;background:var(--rose);color:var(--white);padding:.75rem 2rem;border-radius:4px;font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;font-weight:500;transition:background .2s}
.article-cta a:hover{background:#B56A5C}

.back-link{display:inline-flex;align-items:center;gap:.4rem;font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-weight:500;margin-bottom:2rem;transition:color .2s}
.back-link:hover{color:var(--rose)}
.back-link::before{content:'←'}

@media(max-width:700px){.article-cover{height:240px}.article-cta{padding:1.75rem}.affiliate-callout{flex-direction:column}}
