.post-hero{padding:72px 20px 60px}
.post-hero .post-meta{font-size:0.88rem;color:rgba(255,255,255,0.78);margin-top:6px}
.post-hero h1{max-width:860px}
.post-wrap{padding:64px 20px 40px;background:var(--color-white)}
.post-body{max-width:760px;margin:0 auto}
.post-body>p,.post-body li{font-size:1.06rem;line-height:1.8;color:var(--color-text)}
.post-body>p{margin-bottom:20px}
.post-body h2{font-size:clamp(1.5rem,2.6vw,2rem);margin:46px 0 16px}
.post-body h3{font-size:1.2rem;margin:28px 0 10px}
.post-body a:not(.btn){color:var(--color-accent);font-weight:600;text-decoration:underline;text-underline-offset:3px}
.post-body ul,.post-body ol{margin:0 0 22px 22px;list-style:revert}
.post-body li{margin-bottom:8px}
.post-body figure{margin:34px 0}
.post-body figure img{height:auto;aspect-ratio:4/3;border-radius:var(--radius-card);box-shadow:var(--shadow-card)}
.post-body figcaption{font-size:0.86rem;color:var(--color-text-light);text-align:center;margin-top:10px}
.post-callout{background:var(--color-cream);border-left:4px solid var(--color-accent);border-radius:var(--radius-card);padding:22px 24px;margin:30px 0}
.post-callout p{color:var(--color-text);margin:0;font-size:1.02rem;line-height:1.7}
.post-callout strong{color:var(--color-primary)}
.post-table-wrap{overflow-x:auto;margin:26px 0;border-radius:var(--radius-card);box-shadow:var(--shadow-card)}
.post-table{width:100%;border-collapse:collapse;background:var(--color-white);font-size:0.97rem;min-width:520px}
.post-table th{background:var(--color-primary);color:var(--color-white);text-align:left;padding:13px 16px;font-weight:600}
.post-table td{padding:13px 16px;border-top:1px solid #e5dcc9;color:var(--color-text);vertical-align:top}
.post-table tr:nth-child(even) td{background:var(--color-cream)}
.post-faq details{border-bottom:1px solid #e5dcc9;padding:4px 0}
.post-faq summary{cursor:pointer;font-family:var(--font-heading);font-weight:600;color:var(--color-primary);font-size:1.08rem;padding:16px 4px;list-style:none;display:flex;justify-content:space-between;gap:16px}
.post-faq summary::-webkit-details-marker{display:none}
.post-faq summary::after{content:"+";color:var(--color-accent);font-size:1.4rem;line-height:1}
.post-faq details[open] summary::after{content:"\2212"}
.post-faq details p{padding:0 4px 18px;margin:0;font-size:1rem;line-height:1.75;color:var(--color-text-light)}
.post-cta{text-align:center;background:var(--color-cream-dark);border-radius:var(--radius-card);padding:36px 24px;margin:46px 0 10px}
.post-cta h2{margin:0 0 10px !important}
.post-cta p{max-width:520px;margin:0 auto 22px}
.post-related{max-width:760px;margin:0 auto;padding:10px 0 30px}
.blog-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:28px;max-width:960px;margin:0 auto}
.blog-card{background:var(--color-white);border-radius:var(--radius-card);overflow:hidden;box-shadow:var(--shadow-card);display:flex;flex-direction:column;transition:transform var(--transition),box-shadow var(--transition)}
.blog-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-card-hover)}
.blog-card .card-img{aspect-ratio:16/10;overflow:hidden}
.blog-card .card-body{padding:24px 24px 28px;display:flex;flex-direction:column;flex:1;text-align:center;align-items:center}
.blog-card .card-date{font-size:0.8rem;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--color-accent);margin-bottom:10px}
.blog-card h2{font-size:1.3rem;margin-bottom:12px}
.blog-card p{font-size:0.96rem;margin-bottom:18px;flex:1}
@media (max-width:640px){.blog-grid{grid-template-columns:1fr}.post-wrap{padding:44px 20px 30px}.post-hero{padding:52px 20px 44px}}
