/* Blog content follows the shared site frame; the sidebar sits inside that frame. */
.article-layout {
  display:grid;
  grid-template-columns:minmax(0,1fr) 300px;
  column-gap:64px;
  row-gap:32px;
  width:100%;
  max-width:var(--site-frame-width);
  margin:0 auto;
  padding:16px var(--site-gutter) 88px;
  align-items:start;
}
.article-heading { width:100%;max-width:var(--site-frame-width);margin:0 auto;padding:64px var(--site-gutter) 28px; }
.migrated-site .article-heading h1 { max-width:1080px;font-size:clamp(38px,4.3vw,60px)!important;line-height:1.12!important;letter-spacing:-.04em!important;margin:0!important; }
.migrated-site .article-published { font:400 13px/1.6 var(--body-font)!important;color:var(--body)!important;margin:20px 0 0!important; }
.article-introduction { grid-column:1;grid-row:1;min-width:0; }
.article-main { grid-column:1;grid-row:2;min-width:0; }
.article-featured-media { margin-bottom:36px; }
.article-featured-media figure { margin:0!important;border-radius:10px;overflow:hidden; }
.article-featured-media .ct-media-container { display:block;width:100%; }
.article-featured-media img { display:block;width:100%!important;height:auto!important;aspect-ratio:16/9;object-fit:cover; }
.article-editorial { position:relative;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.2fr);align-items:center;gap:24px;margin-top:12px;padding:28px 24px;border:1px solid var(--line);border-radius:10px;background:var(--linen); }
.article-editorial-label { position:absolute;top:-12px;left:20px;padding:3px 8px;border:1px solid var(--line);background:#fff;font:600 10px/1.5 var(--body-font);letter-spacing:.08em;text-transform:uppercase;color:var(--ink); }
.article-editorial-identity { display:flex;align-items:center;gap:14px;min-width:0; }
.article-editorial-avatar { display:flex;align-items:center;justify-content:center;flex:0 0 54px;height:54px;border-radius:50%;background:#f4e5df;color:var(--accent);text-decoration:none;font:700 26px/1 var(--heading-font); }
.article-editorial-name a { font:600 18px/1.4 var(--body-font);color:var(--ink);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px; }
.migrated-site .article-editorial .article-editorial-role { margin:6px 0 0!important;font:400 12px/1.6 var(--body-font)!important; }
.migrated-site .article-editorial .article-editorial-summary { margin:0!important;padding-left:24px;border-left:1px solid #dde3de;font:400 14px/1.7 var(--body-font)!important;color:var(--ink)!important; }
.article-reading-meta,.article-reading-context { display:flex;align-items:center;gap:18px;flex-wrap:wrap; }
.article-reading-meta { justify-content:space-between;margin:20px 0;font:400 12px/1.6 var(--body-font); }
.article-reading-meta a { color:var(--ink);text-underline-offset:4px; }
.article-reading-context a { text-decoration:none; }
.article-reading-context a:hover { color:var(--accent);text-decoration:underline; }
.article-corrections { margin-left:auto; }
.migrated-site[data-page-type=post] .article-main article.post { width:100%!important;max-width:none!important;margin:0!important; }
.migrated-site[data-page-type=post] .article-main .entry-content { padding:0!important; }
.article-main .entry-content>h2[id] { scroll-margin-top:24px; }
.article-main .entry-content>h2[id]:focus { outline:none; }
.article-sidebar { grid-column:2;grid-row:1 / span 2;align-self:stretch;min-width:0; }
.article-sidebar-sticky { position:sticky;top:24px;display:flex;flex-direction:column;gap:20px;max-height:calc(100svh - 48px);overflow-y:auto;scrollbar-width:thin; }
.article-toc { border:1px solid var(--line);border-radius:10px;background:#fff;overflow:hidden; }
.article-toc-header { display:flex;align-items:center;justify-content:space-between;padding:22px 24px 18px;border-bottom:1px solid var(--line); }
.migrated-site .article-toc h2 { font:600 16px/1.5 var(--body-font)!important;letter-spacing:-.01em!important;margin:0!important; }
.article-toc-toggle { display:none; }
.article-toc nav { padding:12px;max-height:clamp(160px,calc(100svh - 430px),340px);overflow-y:auto;scrollbar-width:thin; }
.migrated-site .article-toc ol { list-style:none;margin:0!important;padding:0!important; }
.migrated-site .article-toc li { padding:0!important;margin:0!important; }
.article-toc a { display:block;padding:10px 12px;border-left:2px solid transparent;border-radius:0 5px 5px 0;font:400 14px/1.55 var(--body-font);color:var(--body);text-decoration:none;overflow-wrap:anywhere; }
.article-toc a:hover { color:var(--accent);background:var(--linen); }
.article-toc a[aria-current=location] { color:var(--accent);border-left-color:var(--accent);background:#fcf5ef;font-weight:500; }
.article-service-cta { padding:24px;border:1px solid var(--line);border-radius:10px;background:var(--linen); }
.article-service-icon { display:flex;align-items:center;justify-content:center;width:46px;height:46px;border:1px solid #eadbd0;background:#fff;border-radius:9px;color:var(--accent);margin-bottom:18px; }
.migrated-site .article-service-cta h2 { font-size:24px!important;line-height:1.2!important;margin:0 0 14px!important;letter-spacing:-.025em!important; }
.migrated-site .article-service-cta p { font-size:16px!important;line-height:1.7!important;margin:0 0 22px!important; }
.article-service-link { display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-radius:5px;background:var(--accent);color:#fff!important;text-decoration:none;font:600 13px/1.5 var(--body-font); }
.article-service-link:hover { background:var(--accent-hover); }
.article-service-link span { font-size:18px;line-height:1; }
.article-service-phone { display:block;margin-top:18px;text-align:center;text-decoration:none;font:600 17px/1.5 var(--body-font);color:var(--ink); }
.article-quote-link { display:block;margin-top:8px;text-align:center;text-underline-offset:3px;font:400 13px/1.5 var(--body-font);color:var(--body); }
.migrated-site[data-page-type=post] .author-box { display:grid!important;grid-template-columns:72px minmax(0,1fr)!important;align-items:start;gap:24px!important;width:100%!important;max-width:none!important;margin:56px 0 0!important;padding:28px!important;background:#fff!important;border:1px solid var(--line)!important;border-radius:12px!important;box-shadow:none!important; }
.migrated-site .author-avatar { display:flex!important;align-items:center;justify-content:center;width:72px;height:72px;margin:0!important;background:#faf0e9;color:var(--accent);border:1px solid #eadbd0;border-radius:12px;text-decoration:none; }
.author-initials { font:700 26px/1 var(--heading-font);letter-spacing:-.04em; }
.migrated-site .author-box>section { min-width:0;margin:0!important;padding:0!important; }
.migrated-site .author-box .author-box-name { margin:0 0 14px!important;font-size:24px!important;line-height:1.25!important;color:var(--ink)!important;text-align:left!important; }
.migrated-site .author-box-bio { margin:0!important;padding:0!important;height:auto!important;max-height:none!important;overflow:visible!important; }
.migrated-site .author-box-bio p { margin:0!important;font-size:16px!important;line-height:1.8!important;text-align:left!important; }
.author-box-footer { display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:22px;padding-top:18px;border-top:1px solid var(--line); }
.migrated-site .author-box-socials { display:flex;align-items:center;gap:8px;margin:0!important;padding:0!important; }
.migrated-site .author-box-socials a { display:flex!important;align-items:center;justify-content:center;width:34px;height:34px;border:1px solid var(--line);border-radius:50%;background:#fff!important;color:var(--body)!important; }
.migrated-site .author-box-socials svg { width:15px;height:15px;fill:currentColor; }
.migrated-site .author-box-socials a:hover { color:var(--accent)!important;border-color:#d3b6a5; }
.migrated-site .author-box .ct-author-box-more { display:inline-flex;align-items:center;gap:10px;margin:0!important;padding:9px 13px;border:1px solid var(--line);border-radius:5px;background:var(--linen);font:500 13px/1.4 var(--body-font)!important;color:var(--ink)!important;text-decoration:none;text-transform:none!important;letter-spacing:0!important; }
.migrated-site .author-box .ct-author-box-more::after { content:'';width:14px;height:14px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23283f35' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14m-6-6 6 6-6 6'/%3E%3C/svg%3E") center/contain no-repeat; }
.migrated-site .author-box .ct-author-box-more:hover { border-color:#c1cbbf;background:#fff; }
.post-comments { margin-top:56px;padding-top:40px;border-top:1px solid var(--line); }
.comments-heading { display:flex;align-items:center;gap:14px;margin-bottom:24px; }
.migrated-site .comments-heading h2 { font-size:30px!important;margin:0!important; }
.comment-count { display:inline-flex;align-items:center;justify-content:center;min-width:30px;height:30px;padding:0 8px;background:var(--linen);border:1px solid var(--line);border-radius:50%;font:500 13px/1 var(--body-font); }
.migrated-site .comments-empty { margin:0 0 30px!important;padding:22px 24px;border:1px solid var(--line);border-radius:8px;background:#fff;font-size:16px!important; }
.reader-comment { display:grid;grid-template-columns:42px minmax(0,1fr);gap:16px;padding:24px 0;border-bottom:1px solid var(--line); }
.reader-avatar { display:flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:9px;background:#faf0e9;color:var(--accent);font:600 15px/1 var(--body-font); }
.reader-comment-content { min-width:0; }
.reader-comment-meta { display:flex;align-items:center;gap:8px 18px;flex-wrap:wrap;margin-bottom:10px; }
.migrated-site .reader-comment-meta h3 { margin:0!important;font:600 16px/1.5 var(--body-font)!important;letter-spacing:0!important; }
.reader-comment-meta time { color:#6c746e;font:400 12px/1.5 var(--body-font); }
.migrated-site .reader-comment p { font-size:16px!important;line-height:1.8!important;white-space:pre-wrap;overflow-wrap:anywhere;margin:0!important; }
.comment-form { display:block!important;padding:30px;border:1px solid var(--line);border-radius:12px;background:#fff;margin-top:28px; }
.migrated-site .comment-form>h3 { margin:0 0 14px!important;font-size:25px!important; }
.migrated-site .comment-form-note { font-size:16px!important;line-height:1.7!important;margin:0 0 26px!important; }
.comment-field { margin-bottom:22px; }
.comment-name-field { max-width:380px; }
.comment-field label { display:block;margin-bottom:9px;font:600 14px/1.5 var(--body-font);color:var(--ink); }
.comment-field label span { color:var(--accent); }
.comment-field :is(input,textarea) { display:block;width:100%;max-width:100%;padding:13px 15px;border:1px solid #d5dcd6;border-radius:6px;background:#fff;color:var(--ink);font:400 16px/1.6 var(--body-font);box-shadow:none; }
.comment-field textarea { min-height:150px;resize:vertical; }
.comment-field :is(input,textarea):focus { outline:2px solid #ad542e33;outline-offset:1px;border-color:var(--accent); }
.comment-field [aria-invalid=true] { border-color:#a73c30; }
.comment-length { display:block;text-align:right;margin-top:7px;font:400 12px/1.5 var(--body-font);color:#6c746e; }
.comment-honeypot { position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden; }
.comment-form-actions { display:flex;align-items:center;gap:18px;flex-wrap:wrap; }
.comment-form-actions>button { display:inline-flex;justify-content:space-between;align-items:center;gap:24px;padding:14px 20px;border:1px solid var(--accent);border-radius:5px;background:var(--accent);color:#fff;font:600 14px/1.5 var(--body-font); }
.comment-form-actions>button:hover { background:var(--accent-hover); }
.comment-form-actions>button:disabled { opacity:.65;cursor:wait; }
.comment-form-actions>span { font:400 12px/1.5 var(--body-font);color:#6c746e; }
.migrated-site .comment-success { background:#f1f7f2;color:#28543a!important;border:1px solid #cfe0d2;padding:14px 16px;border-radius:6px;margin:0 0 20px!important;font-size:16px!important; }
.migrated-site .comment-submit-error,.migrated-site .comments-error p { color:#a23b31!important;font-size:16px!important; }
.comments-error { margin:20px 0; }
.comments-error>button,.comments-load-more { border:1px solid var(--line);border-radius:5px;background:#fff;padding:10px 16px;color:var(--ink);font:500 14px/1.5 var(--body-font); }
.comments-load-more { margin-top:24px; }
.migrated-site .comments-feedback { font-size:16px!important;color:var(--body)!important; }
.article-share { margin-top:0;padding:16px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line); }
.article-share-row { display:flex;align-items:center;justify-content:flex-start;gap:14px 16px;flex-wrap:wrap; }
.migrated-site .article-share h2 { font:600 15px/1.5 var(--body-font)!important;margin:0!important;letter-spacing:0!important; }
.share-actions { display:flex;align-items:center;gap:8px;flex-wrap:wrap; }
.share-actions>a,.share-actions>button { display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:10px 12px;border:1px solid var(--line);border-radius:5px;background:#fff;color:var(--body);text-decoration:none;font:500 12px/1.5 var(--body-font);transition:border-color .2s,background-color .2s; }
.share-actions>a:hover,.share-actions>button:hover { border-color:#d3b6a5;background:#fcf5ef;color:var(--accent); }
.share-actions>button.is-copied { border-color:#cfdfd0;background:#f1f7f2;color:#28543a; }
.share-controls { position:relative;min-width:0; }
.share-actions>a[data-share] { color:#fff;border-color:transparent; }
.share-actions>a[data-share=facebook] { background:#0866ff; }
.share-actions>a[data-share=x] { background:#111; }
.share-actions>a[data-share=whatsapp] { background:#20c763;color:#052e16; }
.share-actions>a[data-share=email] { background:#5e666e; }
.share-actions>a[data-share]:hover { filter:brightness(.93); }
.share-more-menu { position:absolute;right:0;top:calc(100% + 8px);z-index:10;display:grid;min-width:210px;padding:8px;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:0 12px 35px #252f2b15; }
.share-more-menu[hidden] { display:none; }
.share-more-menu>a,.share-more-menu>button { display:flex;align-items:center;gap:10px;border:0;border-radius:5px;background:#fff;padding:11px;color:var(--ink);text-decoration:none;text-align:left;font:500 13px/1.5 var(--body-font); }
.share-more-menu>a:hover,.share-more-menu>button:hover { background:var(--linen); }
.migrated-site .share-status { font-size:13px!important;line-height:1.5!important;margin:12px 0 0!important;color:var(--body)!important; }
.share-status:empty { display:none; }
.share-manual { margin-top:12px; }
.share-manual label { display:block;margin-bottom:7px;font:500 13px/1.5 var(--body-font); }
.share-manual input { width:100%;padding:12px;border:1px solid var(--line);border-radius:5px;background:#fff;font:400 14px/1.5 var(--body-font);color:var(--ink); }
.related-posts { width:100%;max-width:var(--site-frame-width);margin:0 auto;padding:56px var(--site-gutter) 88px;border-top:1px solid var(--line); }
.related-posts-heading { display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:32px; }
.migrated-site .related-posts-heading h2 { font-size:34px!important;line-height:1.2!important;margin:0!important; }
.related-posts-heading>a { display:inline-flex;align-items:center;gap:12px;font:500 14px/1.5 var(--body-font);color:var(--accent);text-decoration:none; }
.related-posts-heading>a:hover { text-decoration:underline;text-underline-offset:4px; }
.related-posts-grid { align-items:stretch; }
@media(max-width:1100px) {
  .article-layout { grid-template-columns:minmax(0,1fr) 280px;gap:36px; }
}
@media(max-width:900px) {
  .article-heading { padding-top:44px;padding-bottom:24px; }
  .article-layout { grid-template-columns:minmax(0,1fr);gap:28px;padding-top:0;padding-bottom:60px; }
  .article-main { grid-column:1;grid-row:3; }
  .article-sidebar,.article-sidebar-sticky { display:contents; }
  .article-toc { grid-column:1;grid-row:2; }
  .article-service-cta { grid-column:1;grid-row:4; }
  .article-toc-header { padding:18px 22px;border-bottom:0; }
  .article-toc-toggle { display:flex;align-items:center;justify-content:center;width:34px;height:34px;padding:0;border:1px solid var(--line);border-radius:50%;background:#fff;color:var(--ink); }
  .article-toc[data-expanded=false] nav { display:none; }
  .article-toc[data-expanded=true] nav { display:block;border-top:1px solid var(--line);max-height:320px; }
  .article-toc[data-expanded=true] .article-toc-toggle svg { transform:rotate(180deg); }
  .article-service-cta { padding:28px; }
  .article-service-link { max-width:320px; }
  .article-service-phone,.article-quote-link { text-align:left; }
}
@media(max-width:600px) {
  .article-heading { padding-top:32px; }
  .article-layout { padding-top:0;padding-bottom:48px;gap:24px; }
  .article-editorial { grid-template-columns:minmax(0,1fr);gap:18px;padding:24px 20px; }
  .migrated-site .article-editorial .article-editorial-summary { border-left:0;border-top:1px solid var(--line);padding:16px 0 0; }
  .article-reading-meta { gap:10px;margin:18px 0; }
  .article-corrections { margin-left:0; }
  .share-controls { width:100%; }
  .migrated-site .article-service-cta h2 { font-size:25px!important; }
  .migrated-site[data-page-type=post] .author-box { grid-template-columns:52px minmax(0,1fr)!important;gap:20px!important;padding:24px!important;margin-top:40px!important; }
  .migrated-site .author-avatar { width:52px;height:52px;grid-column:1;grid-row:1;border-radius:10px; }
  .author-initials { font-size:22px; }
  .migrated-site .author-box>section { display:contents; }
  .migrated-site .author-box .author-box-name { grid-column:2;grid-row:1;align-self:center;margin:0!important;font-size:23px!important; }
  .author-box-bio { grid-column:1/-1;grid-row:2; }
  .author-box-footer { grid-column:1/-1;grid-row:3;margin-top:0; }
  .post-comments { margin-top:40px;padding-top:32px; }
  .comment-form { padding:24px 20px; }
  .comment-name-field { max-width:none; }
  .comment-form-actions { align-items:stretch;flex-direction:column;gap:12px; }
  .reader-comment { grid-template-columns:36px minmax(0,1fr);gap:12px; }
  .reader-avatar { width:36px;height:36px;font-size:13px; }
  .share-actions { width:100%; }
  .share-actions>a,.share-actions>button { flex:1 1 calc(50% - 4px);font-size:13px; }
  .related-posts { padding-top:40px;padding-bottom:48px; }
  .related-posts-heading { gap:14px;margin-bottom:26px; }
  .migrated-site .related-posts-heading h2 { font-size:30px!important; }
}
