.post-design { background:#f7f6f2; color:#25262a; }
.post-design .page-wrapper { background:#f7f6f2; }
.post-design .main-header .header-lower { position:relative; top:auto; left:auto; background:#111315; }
.post-design .header-style-one::before { content:none; }
.post-shell { width:min(1240px, calc(100% - 64px)); margin-inline:auto; }
.post-eyebrow { display:block; color:#c63237; font-size:11px; font-weight:800; letter-spacing:.16em; text-transform:uppercase; line-height:1.6; }
.post-hero { background:#17191d; color:#fff; padding:30px 0 96px; }
.post-breadcrumb { display:flex; gap:12px; color:#92959e; font-size:12px; margin-bottom:56px; }
.post-breadcrumb a { color:#c8cad1; }
.post-hero-grid { display:grid; grid-template-columns:minmax(0, 3fr) minmax(180px, 1fr); gap:64px; align-items:center; }
.post-hero h1 { font-size:clamp(2rem, 4vw, 3.5rem); line-height:1.2; letter-spacing:-.03em; color:white; margin:18px 0 30px; font-weight:800; overflow-wrap:anywhere; }
.post-byline { display:flex; align-items:center; gap:12px; font-size:.875rem; line-height:1.6; color:#babdc5; flex-wrap:wrap; }
.post-byline strong { display:block; color:#fff; font-size:.875rem; }
.post-byline time { display:block; }
.post-author-avatar { display:grid; place-items:center; border:1px solid #57585b; border-radius:50%; width:42px; height:42px; font-weight:800; color:#fff; }
.post-reading-time { border-left:1px solid #57585b; padding-left:18px; margin-left:8px; }
.post-hero-note { border-left:1px solid #414349; padding-left:28px; }
.post-hero-note > span { font-size:10px; letter-spacing:.14em; color:#b9bbc1; }
.post-hero-note p { font-size:25px; line-height:1.4; color:white; margin:20px 0 28px; }
.post-hero-note a { font-size:12px; color:#fff; border-bottom:1px solid #6e7077; padding-bottom:8px; display:inline-flex; gap:18px; }
.post-layout { display:grid; grid-template-columns:minmax(0, 830px) minmax(240px, 1fr); gap:64px; padding-top:0; align-items:start; }
.post-main { min-width:0; }
.post-cover { margin:-44px 0 42px; position:relative; border-radius:16px; overflow:hidden; background:#e5e3de; box-shadow:0 18px 45px #17191d14; }
.post-cover img { width:100%; height:auto; display:block; }
.post-prose { width:100%; max-width:min(72ch, 45rem); margin-inline:auto; font-size:1.125rem; line-height:1.75; overflow-wrap:break-word; color:#383b42; scroll-margin-top:100px; text-align:start; }
.post-prose p { margin:0 0 1.25em; font-size:inherit; line-height:inherit; color:inherit; }
.post-prose span { background:transparent !important; color:inherit !important; font-family:inherit !important; font-size:inherit !important; line-height:inherit !important; }
.post-prose :is(h2,h3,h4,h5,h6) { color:#1c1e23; letter-spacing:-.015em; line-height:1.35; margin:1.6em 0 .65em; font-weight:800; scroll-margin-top:100px; overflow-wrap:break-word; }
.post-prose h2 { font-size:2rem; }.post-prose h3 { font-size:1.5625rem; }.post-prose h4 { font-size:1.3125rem; }.post-prose h5 { font-size:1.1875rem; }.post-prose h6 { font-size:1.125rem; }
.post-prose > :first-child { margin-top:0; }
.post-prose :is(strong,b) { font-weight:800; }
.post-prose :is(code,kbd,samp) { font-family:ui-monospace,Consolas,monospace; font-size:.9em; }
.post-prose :is(a,button):focus-visible { outline:2px solid #a52630; outline-offset:4px; border-radius:2px; }
.post-prose ul,.post-prose ol { padding-left:26px; margin:0 0 24px; }.post-prose ul { list-style:disc; }.post-prose ol { list-style:decimal; }.post-prose li { margin-bottom:8px; }
.post-prose a { color:#a52630; text-decoration:underline; text-underline-offset:4px; }
.post-prose img,.post-prose video,.post-prose iframe { max-width:100%; height:auto; }
.post-prose pre { max-width:100%; overflow:auto; background:#ecebe7; padding:20px; border-radius:10px; }
.post-prose table { display:block; max-width:100%; overflow:auto; }.post-prose td,.post-prose th { padding:10px; border:1px solid #dcdad5; }
.post-prose blockquote { border-left:3px solid #cb353d; padding:20px 26px; background:#eeece7; border-radius:0 10px 10px 0; }
.post-article-bottom { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:20px; padding:28px 0; margin-top:36px; border-block:1px solid #dedcd5; font-size:12px; }
.post-article-bottom .post-eyebrow { margin-bottom:8px; }.post-article-bottom a { color:#33363c; font-weight:700; }.post-article-bottom div > span:not(.post-eyebrow) { margin-left:14px; }
.post-aside { padding-top:52px; height:100%; }.post-aside-inner { position:sticky; top:100px; padding-bottom:40px; }.post-aside h2 { font-size:24px; letter-spacing:-.035em; margin:10px 0 22px; font-weight:800; }
.post-recent-list a { display:flex; align-items:baseline; gap:14px; padding:22px 0; border-top:1px solid #dedcd5; color:#25262a; }.post-recent-list h3 { font-size:1rem; font-weight:700; line-height:1.6; flex:1; }.post-recent-list a > span { font-size:11px; color:#b83039; }
.post-aside-cta { padding:28px; background:#eae7df; border-radius:12px; margin-top:32px; }.post-aside-cta h3 { font-size:32px; letter-spacing:-.04em; line-height:1.2; margin:18px 0; }.post-aside-cta p { font-size:14px; line-height:1.8; }.post-aside-cta a { display:flex; justify-content:space-between; font-weight:800; color:#25262a; border-top:1px solid #ccc8bf; padding-top:16px; margin-top:24px; }
.post-discussion { padding:48px 0 60px; scroll-margin-top:95px; }.post-section-heading { display:flex; justify-content:space-between; align-items:center; gap:12px; margin-bottom:24px; }.post-section-heading h2,.post-comment-form h2 { font-size:30px; line-height:1.2; letter-spacing:-.04em; margin-top:10px; }.post-section-heading h2 > span { font-size:14px; vertical-align:middle; border:1px solid #d6d2ca; padding:4px 9px; border-radius:20px; margin-left:8px; }
.post-text-button { background:transparent; color:#b32c35; text-decoration:underline; font-size:12px; }
.post-comments-empty { padding:28px; border:1px dashed #d4cfc4; border-radius:12px; }.post-comments-empty strong { font-size:17px; }.post-comments-empty p { margin:6px 0 0; font-size:14px; color:#696b72; }
.post-comment { display:flex; gap:18px; padding:26px 0; border-bottom:1px solid #dedcd5; }.post-comment-avatar { display:grid; place-items:center; flex-shrink:0; width:42px; height:42px; border-radius:50%; background:#eae5dc; color:#a92f37; text-transform:uppercase; font-weight:800; }.post-comment > div { min-width:0; }.post-comment h3 { font-size:16px; font-weight:800; }.post-comment time { font-size:11px; color:#73757d; }.post-comment p { white-space:normal; overflow-wrap:anywhere; margin:12px 0 0; font-size:1rem; line-height:1.75; color:#383b42; }
.post-comment-pages { display:flex; gap:20px; margin-top:20px; font-size:13px; }.post-comment-pages a { color:#b32c35; font-weight:700; }.post-design [hidden] { display:none !important; }
.post-comment-form { margin-top:40px; padding:36px; border-radius:16px; background:#fff; border:1px solid #e9e5dc; }.post-comment-form > p { font-size:13px; color:#73757d; margin:14px 0 26px; }.post-form-row { display:grid; grid-template-columns:1fr 1fr; gap:20px; }.post-comment-form label { display:block; font-size:12px; font-weight:800; margin-bottom:8px; }.post-comment-form input:not([type=hidden]),.post-comment-form textarea { display:block; width:100%; min-height:48px; background:#f8f7f4; border:1px solid #dedbd4; border-radius:8px; padding:12px 14px; font-size:1rem; line-height:1.5; margin-bottom:22px; color:#25262a; }.post-comment-form textarea { resize:vertical; }.post-comment-form :is(input,textarea):focus { outline:2px solid #c9343d; outline-offset:2px; }
.post-button { display:inline-flex; align-items:center; justify-content:center; gap:30px; background:#c9323b; border:1px solid #c9323b; color:white; padding:14px 24px; font-size:13px; font-weight:800; border-radius:7px; }.post-button:hover { background:#a82730; color:white; }.post-button:disabled { opacity:.6; cursor:wait; }.post-form-status { padding:14px 18px; background:#edf6ee; border:1px solid #b8d4bd; border-radius:8px; font-size:14px; color:#245834; margin-bottom:20px; }.post-form-status.is-error { background:#fff1ee; border-color:#ebc0b9; color:#9c2929; }#comment-fetch-status { font-size:13px; color:#9c2929; }
.post-next { padding-block:42px 80px; border-top:1px solid #dedcd5; }.post-next h2 { font-size:clamp(26px,3vw,38px); letter-spacing:-.04em; margin:12px 0 28px; }.post-next > div { display:grid; grid-template-columns:1fr 1fr; gap:24px; }.post-next a { display:flex; justify-content:space-between; gap:20px; border:1px solid #dedcd5; border-radius:10px; padding:24px; font-size:17px; font-weight:700; color:#25262a; }.post-next a:hover { border-color:#c9323b; }.post-next a span { color:#c9323b; }
.post-not-found { padding-block:100px; }.post-not-found h1 { font-size:40px; margin:20px 0; }.post-not-found p { margin-bottom:30px; }
@media(max-width:1023px) { .post-shell { width:calc(100% - 40px); }.post-layout { gap:32px; grid-template-columns:minmax(0,1fr) 240px; }.post-hero-grid { gap:32px; }.post-hero-note { padding-left:20px; }.post-hero-note p { font-size:20px; } }
@media(max-width:767px) { .post-shell { width:calc(100% - 32px); }.post-hero { padding:24px 0 70px; }.post-breadcrumb { margin-bottom:32px; }.post-hero-grid { grid-template-columns:1fr; }.post-hero-note { display:none; }.post-hero h1 { font-size:clamp(2rem, 7.5vw, 2.5rem); }.post-layout { display:block; }.post-cover { border-radius:10px; margin-top:-32px; margin-bottom:28px; }.post-prose { font-size:1.0625rem; }.post-prose h2 { font-size:1.625rem; }.post-prose h3 { font-size:1.375rem; }.post-prose h4 { font-size:1.1875rem; }.post-prose h5 { font-size:1.125rem; }.post-prose h6 { font-size:1.0625rem; }.post-aside { padding-top:0; }.post-aside-inner { position:static; }.post-comment-form { padding:24px 20px; }.post-form-row { grid-template-columns:1fr; gap:0; }.post-section-heading { align-items:flex-start; }.post-section-heading h2,.post-comment-form h2 { font-size:26px; }.post-next > div { grid-template-columns:1fr; }.post-next { padding-bottom:50px; }.post-article-bottom { align-items:flex-start; }.post-reading-time { padding-left:12px; margin-left:0; }.post-byline { gap:10px; } }

/* Table cells keep their structure; wide tables scroll within the article. */
.post-prose table {border-collapse:collapse;width:100%;margin:1.5em 0;font-size:.9375rem;line-height:1.65;background:#fff}
.post-prose :is(th,td) {min-width:120px;padding:12px 16px;vertical-align:top}
.post-prose th {background:#edeae3;color:#242832;font-weight:800;text-align:start}
.post-prose :is(th,td) > :last-child {margin-bottom:0}
.post-prose caption {caption-side:top;text-align:start;padding:0 0 12px;font-weight:700;color:#414956}
.post-prose .ql-align-center {text-align:center}.post-prose .ql-align-right {text-align:right}.post-prose .ql-align-justify {text-align:justify}.post-prose .ql-direction-rtl {direction:rtl}
