/* HyperDAF Premium Single Blog Post — Theme-owned article presentation. */
.hdf-blog-single,
.hdf-blog-single *,
.hdf-blog-single *::before,
.hdf-blog-single *::after { box-sizing: border-box; min-width: 0; }

body.hdf-blog-single-page,
body.hdf-blog-single-page .site-content,
.hdf-blog-single {
    background: var(--hdf-blog-single-page-bg, #FFFFFF);
}

/* Keep the canonical breadcrumb row visually connected to the Single Post hero zone. */
body.hdf-blog-single-page .hdf-breadcrumbs {
    background: var(--hdf-blog-single-hero-bg, #FFFFFF);
}

.hdf-blog-single {
    width: 100%;
    padding: 0 0 var(--hdf-blog-single-page-padding-bottom, 32px);
    color: var(--hdf-color-text, #111827);
}

.hdf-blog-single__shell {
    width: min(calc(100% - 48px), var(--hdf-blog-single-shell-width, 1300px));
    margin-inline: auto;
}

/* Single Post hero zone: breadcrumb + hero end on the same light-grey surface. */
.hdf-blog-single__hero-zone {
    width: 100%;
    padding-top: var(--hdf-blog-single-page-padding-top, 16px);
    background: var(--hdf-blog-single-hero-bg, #FFFFFF);
}

.hdf-blog-single__hero {
    position: relative;
    display: grid;
    gap: var(--hdf-blog-single-hero-column-gap, 12px);
    align-items: stretch;
    overflow: hidden;
    padding: var(--hdf-blog-single-hero-padding-y, 12px) var(--hdf-blog-single-hero-padding-x, 12px);
    border: 1px solid color-mix(in srgb, var(--hdf-blog-single-border, #E5E7EB) 82%, #F97316 18%);
    border-radius: var(--hdf-blog-single-radius, 16px);
    background: linear-gradient(135deg, #FFF7ED 0%, #FFFFFF 48%, #EFF6FF 100%);
    box-shadow: none;
    isolation: isolate;
}
.hdf-blog-single__hero::before,
.hdf-blog-single__hero::after {
    content: '';
    position: absolute;
    inset: auto;
    border-radius: 999px;
    pointer-events: none;
    z-index: 0;
}
.hdf-blog-single__hero::before {
    width: 240px;
    height: 240px;
    top: -92px;
    right: -54px;
    background: radial-gradient(circle, rgba(249,115,22,.18) 0%, rgba(249,115,22,0) 72%);
}
.hdf-blog-single__hero::after {
    width: 230px;
    height: 230px;
    left: -72px;
    bottom: -118px;
    background: radial-gradient(circle, rgba(37,99,235,.14) 0%, rgba(37,99,235,0) 74%);
}
.hdf-blog-single__hero--media {
    grid-template-columns: minmax(0, 1.12fr) minmax(300px, var(--hdf-blog-single-hero-media-width, 45%));
}
.hdf-blog-single__hero-copy,
.hdf-blog-single__hero-media,
.hdf-blog-single__featured {
    position: relative;
    z-index: 1;
}
.hdf-blog-single__hero-media {
    display: grid;
    min-width: 0;
    align-content: center;
    gap: 7px;
}
.hdf-blog-single__hero-media .hdf-blog-single__featured { width: 100%; }
.hdf-blog-single__hero-copy {
    display: grid;
    align-content: center;
    gap: var(--hdf-blog-single-hero-gap, 8px);
    padding: var(--hdf-blog-single-hero-copy-padding-y, 8px) var(--hdf-blog-single-hero-copy-padding-x, 12px);
}

.hdf-blog-single__category {
    width: fit-content;
    color: var(--hdf-color-primary-hover, #EA580C);
    font-family: var(--hdf-font-ui);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .06em;
    text-decoration: none;
    text-transform: uppercase;
}
.hdf-blog-single__category:hover,
.hdf-blog-single__category:focus-visible { text-decoration: underline; text-underline-offset: 3px; }

.hdf-blog-single__hero h1 {
    max-width: min(100%, calc(var(--hdf-blog-single-title-max-width, 100) * 1ch));
    margin: 0;
    color: var(--hdf-article-heading, #0F172A);
    font-size: var(--hdf-blog-single-title-size, 38px);
    font-weight: 700;
    line-height: 1.08;
    letter-spacing: -.032em;
    text-wrap: balance;
}

.hdf-blog-single__deck {
    max-width: min(100%, calc(var(--hdf-blog-single-deck-width, 72) * 1ch));
    margin: 0;
    color: color-mix(in srgb, var(--hdf-blog-single-muted, #6B7280) 88%, #0F172A 12%);
    font-size: var(--hdf-blog-single-deck-size, 15px);
    line-height: var(--hdf-blog-single-deck-line-height, 1.62);
}

.hdf-blog-single__byline {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-start;
    gap: 8px var(--hdf-blog-single-meta-gap, 12px);
    padding-top: 4px;
}

.hdf-blog-single__author {
    display: flex;
    align-items: center;
    gap: 9px;
    color: var(--hdf-color-text, #111827);
    text-decoration: none;
}
.hdf-blog-single__author img {
    width: var(--hdf-blog-single-byline-avatar, 38px);
    height: var(--hdf-blog-single-byline-avatar, 38px);
    border-radius: 50%;
    object-fit: cover;
}
.hdf-blog-wp-avatar-fallback {
    display: inline-grid;
    width: var(--hdf-blog-avatar-size, var(--hdf-blog-single-byline-avatar, 38px));
    height: var(--hdf-blog-avatar-size, var(--hdf-blog-single-byline-avatar, 38px));
    flex: 0 0 auto;
    place-items: center;
    border: 1px solid #D8E0E8;
    border-radius: 50%;
    background: #F6F7F7;
    color: #50575E;
}
.hdf-blog-wp-avatar-fallback .dashicons {
    width: 62%;
    height: 62%;
    font-size: calc(var(--hdf-blog-avatar-size, 38px) * .62);
    line-height: 1;
}
.hdf-blog-single__author .hdf-blog-wp-avatar-fallback {
    --hdf-blog-avatar-size: var(--hdf-blog-single-byline-avatar, 38px) !important;
}
.hdf-blog-single__author span { display: grid; gap: 1px; min-width: 0; }
.hdf-blog-single__author small { color: var(--hdf-blog-single-muted, #6B7280); font-size: 9px; }
.hdf-blog-single__author strong { overflow: hidden; font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }
.hdf-blog-single__hero-author {
    width: fit-content;
    max-width: min(100%, 240px);
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
}
.hdf-blog-single__hero-author .hdf-blog-wp-avatar-fallback,
.hdf-blog-single__hero-author img {
    width: 30px;
    height: 30px;
}
.hdf-blog-single__hero-author small { font-size: 8px; }
.hdf-blog-single__hero-author strong { max-width: 18ch; font-size: 10px; }

.hdf-blog-single__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 7px var(--hdf-blog-single-meta-gap, 12px);
    color: var(--hdf-blog-single-muted, #6B7280);
    font-family: var(--hdf-font-ui);
    font-size: var(--hdf-blog-single-meta-size, 10px);
}
.hdf-blog-single__meta span,
.hdf-blog-single__meta a {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    color: inherit;
    text-decoration: none;
}
.hdf-blog-single__meta .hdf-blog-icon { width: 13px; height: 13px; }

/* Header/footer share + native utilities */
.hdf-blog-share {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: var(--hdf-blog-single-action-gap, 8px);
    margin-top: var(--hdf-blog-single-section-gap, 24px);
    padding: var(--hdf-blog-single-share-padding-y, 10px) var(--hdf-blog-single-share-padding-x, 12px);
    border: 1px solid var(--hdf-blog-single-border, #E5E7EB);
    border-radius: var(--hdf-blog-single-action-group-radius, 12px);
    background: var(--hdf-blog-single-subtle-bg, #F8FAFC);
    font-family: var(--hdf-font-ui);
}
.hdf-blog-share--header { margin-top: 0; background: transparent; }
.hdf-blog-share > strong { font-size: 11px; }
.hdf-blog-share__actions { display: flex; flex-wrap: wrap; gap: var(--hdf-blog-single-action-gap, 8px); }
.hdf-blog-share__actions a,
.hdf-blog-share__actions button {
    display: inline-flex;
    min-width: var(--hdf-blog-single-action-height, 34px);
    height: var(--hdf-blog-single-action-height, 34px);
    align-items: center;
    justify-content: center;
    gap: 5px;
    padding-inline: var(--hdf-blog-single-action-padding-x, 9px);
    border: 1px solid var(--hdf-blog-single-border, #E5E7EB);
    border-radius: var(--hdf-blog-single-action-radius, 9px);
    background: var(--hdf-blog-single-card-bg, #FFFFFF);
    color: var(--hdf-article-link, #05658A);
    font-family: var(--hdf-font-ui);
    font-size: 10px;
    font-weight: 700;
    line-height: 1;
    text-decoration: none;
    cursor: pointer;
}
.hdf-blog-share__actions a:hover,
.hdf-blog-share__actions a:focus-visible,
.hdf-blog-share__actions button:hover,
.hdf-blog-share__actions button:focus-visible {
    border-color: var(--hdf-color-primary, #F97316);
    color: var(--hdf-blog-single-link-hover, #034E6F);
    outline: 0;
}
.hdf-blog-share__actions .hdf-blog-icon { width: 15px; height: 15px; }
.hdf-blog-share__actions span { white-space: nowrap; }

/* Single Post action polish: crisp borders/tints, never blur or shadow. */
.hdf-blog-share--header {
    width: 100%;
    margin-top: 2px;
    padding: 0;
    border: 0;
    background: transparent;
}
.hdf-blog-share--header > strong { display: none; }
.hdf-blog-share--header .hdf-blog-share__actions {
    width: 100%;
    flex-wrap: nowrap;
    justify-content: flex-start;
}
.hdf-blog-share__actions a,
.hdf-blog-share__actions button,
.hdf-blog-single__comments .submit,
.hdf-blog-single__content .wp-element-button {
    box-shadow: none !important;
    filter: none !important;
    backdrop-filter: none !important;
}
.hdf-blog-share__actions a,
.hdf-blog-share__actions button {
    min-width: 36px;
    height: 36px;
    padding-inline: 11px;
    border-color: #D9E1EA;
    background: #FFFFFF;
    color: #0F172A;
    font-size: 11px;
    transition: color .16s ease, border-color .16s ease, background-color .16s ease;
}
.hdf-blog-share__actions a:hover,
.hdf-blog-share__actions a:focus-visible,
.hdf-blog-share__actions button:hover,
.hdf-blog-share__actions button:focus-visible {
    border-color: #FDBA74;
    background: #FFF7ED;
    color: #C2410C;
}
.hdf-blog-share__actions a[aria-label*="Facebook"] { color: #1877F2; }
.hdf-blog-share__actions a[aria-label*="LinkedIn"] { color: #0A66C2; }
.hdf-blog-share__actions a[aria-label*="WhatsApp"] { color: #16A34A; }
.hdf-blog-share__actions a[aria-label*="email"] { color: #7C3AED; }
.hdf-blog-share__actions .hdf-blog-share__back {
    margin-inline-start: 0;
    border-color: var(--hdf-color-primary-hover, #EA580C);
    background: var(--hdf-color-primary, #F97316);
    color: #FFFFFF;
}
.hdf-blog-share__actions .hdf-blog-share__back:hover,
.hdf-blog-share__actions .hdf-blog-share__back:focus-visible {
    border-color: #C2410C;
    background: #EA580C;
    color: #FFFFFF;
}

/* Footer Share Article — premium flat treatment. */
.hdf-blog-share--footer {
    padding: var(--hdf-blog-single-share-padding-y, 10px) var(--hdf-blog-single-share-padding-x, 12px);
    border-color: #DCE6F1;
    background: linear-gradient(90deg, #FFF7ED 0%, #FFFFFF 52%, #EFF6FF 100%);
}
.hdf-blog-share--footer > strong {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #0F172A;
    font-size: 13px;
    font-weight: 700;
}
.hdf-blog-share__label-icon {
    display: inline-grid;
    width: 30px;
    height: 30px;
    flex: 0 0 30px;
    place-items: center;
    border: 1px solid #FED7AA;
    border-radius: 9px;
    background: #FFF7ED;
    color: #EA580C;
}
.hdf-blog-share__label-icon .hdf-blog-icon { width: 15px; height: 15px; }
.hdf-blog-share--footer .hdf-blog-share__actions { margin-inline-start: auto; }
.hdf-blog-share--footer .hdf-blog-share__actions a,
.hdf-blog-share--footer .hdf-blog-share__actions button {
    border-color: #DCE6F1;
    background: #FFFFFF;
}

/* Single Post surfaces intentionally stay flat: no raised/blurred section treatment. */
.hdf-blog-single :is(
    .hdf-blog-single__hero,
    .hdf-blog-single__featured,
    .hdf-blog-share,
    .hdf-blog-toc,
    .hdf-blog-author,
    .hdf-blog-single__post-nav a,
    .hdf-blog-single__tags,
    .hdf-blog-single__comments .comment-body
) {
    box-shadow: none;
    filter: none;
    backdrop-filter: none;
}

/* Featured media lives inside the split hero and keeps its own white inset frame. */
.hdf-blog-single__featured {
    display: grid;
    align-self: stretch;
    align-content: center;
    margin: 0;
    padding: var(--hdf-blog-single-featured-padding, 10px);
    border: 1px solid rgba(255,255,255,.9);
    border-radius: var(--hdf-blog-single-media-radius, 16px);
    background: linear-gradient(180deg, rgba(255,255,255,.95) 0%, rgba(255,255,255,.88) 100%);
    box-shadow: none;
}
.hdf-blog-single__featured img {
    display: block;
    width: 100%;
    max-height: var(--hdf-blog-single-featured-max-height, 360px);
    aspect-ratio: var(--hdf-blog-single-featured-ratio, 16 / 9);
    height: auto;
    min-height: 0;
    object-fit: cover;
    border-radius: max(0px, calc(var(--hdf-blog-single-media-radius, 16px) - 6px));
}
.hdf-blog-single__featured figcaption {
    margin: 7px 4px 0;
    color: var(--hdf-blog-single-muted, #6B7280);
    font-size: 10px;
    text-align: center;
}

/* Reading/sidebar split */
.hdf-blog-single__layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 0;
    align-items: stretch;
    margin-top: var(--hdf-blog-single-layout-top-gap, 20px);
}
.hdf-blog-single__layout--sidebar {
    grid-template-columns: minmax(0, 1fr) minmax(250px, var(--hdf-blog-single-sidebar-width, 300px));
    column-gap: 20px;
    row-gap: 0;
}
.hdf-blog-single__reading {
    width: 100%;
    max-width: none;
    align-self: start;
}
.hdf-blog-single__layout:not(.hdf-blog-single__layout--sidebar) .hdf-blog-single__reading {
    width: 100%;
    max-width: none;
    margin-inline: 0;
}

.hdf-blog-single__sidebar {
    position: relative;
    min-height: 100%;
    align-self: stretch;
}
.hdf-blog-single__sidebar > .hdf-context-sidebar {
    display: grid;
    width: 100%;
    min-height: 100%;
    gap: var(--hdf-blog-single-sidebar-widget-gap, 14px);
    align-content: start;
}
/* Big Card remains Commerce-owned and keeps its exact canonical wrapper geometry. */
.hdf-blog-single__sidebar .hdf-context-widget:not(.widget_hyperdaf_big_card) {
    padding: var(--hdf-blog-single-sidebar-widget-padding, 14px);
    border-radius: var(--hdf-blog-single-sidebar-widget-radius, 12px);
    background: var(--hdf-blog-single-sidebar-widget-bg, #FFFFFF);
}

/* Table of contents */
.hdf-blog-toc {
    overflow: hidden;
    margin-bottom: var(--hdf-blog-single-section-gap, 24px);
    padding: 0;
    border: 1px solid #DCE6F1;
    border-radius: var(--hdf-blog-single-toc-radius, 12px);
    background: var(--hdf-blog-single-toc-bg, #FFFFFF);
}
.hdf-blog-toc__heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin: 0;
    padding: max(8px, calc(var(--hdf-blog-single-toc-padding-y, 14px) - 3px)) max(10px, calc(var(--hdf-blog-single-toc-padding-x, 16px) - 2px));
    border-bottom: 0;
    background: linear-gradient(90deg, #FFF7ED 0%, #FFFFFF 54%, #EFF6FF 100%);
    color: #0F172A;
    font-family: var(--hdf-font-ui);
    font-size: 12px;
    cursor: pointer;
    list-style: none;
    user-select: none;
}
.hdf-blog-toc[open] .hdf-blog-toc__heading { border-bottom: 1px solid #E5EDF5; }
.hdf-blog-toc__heading::-webkit-details-marker { display: none; }
.hdf-blog-toc__heading::marker { content: ''; }
.hdf-blog-toc__heading-main { display: inline-flex; align-items: center; gap: 9px; min-width: 0; }
.hdf-blog-toc__heading strong { font-weight: 700; letter-spacing: .01em; }
.hdf-blog-toc__toggle {
    display: inline-flex;
    min-width: 48px;
    height: 28px;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    padding-inline: 10px;
    border: 1px solid #FED7AA;
    border-radius: 999px;
    background: #FFFFFF;
    color: #C2410C;
    font-size: 10px;
    font-weight: 700;
}
.hdf-blog-toc__hide { display: none; }
.hdf-blog-toc[open] .hdf-blog-toc__show { display: none; }
.hdf-blog-toc[open] .hdf-blog-toc__hide { display: inline; }
.hdf-blog-toc__body { background: #FFFFFF; }
.hdf-blog-toc__icon {
    display: grid;
    width: 28px;
    height: 28px;
    flex: 0 0 28px;
    place-items: center;
    border: 1px solid #FED7AA;
    border-radius: 8px;
    background: #FFF7ED;
    color: #EA580C;
}
.hdf-blog-toc__icon .hdf-blog-icon { width: 15px; height: 15px; }
.hdf-blog-toc__list {
    display: grid;
    grid-template-columns: repeat(var(--hdf-blog-single-toc-columns, 2), minmax(0, 1fr));
    gap: var(--hdf-blog-single-toc-gap, 10px) 12px;
    margin: 0;
    padding: var(--hdf-blog-single-toc-padding-y, 14px) var(--hdf-blog-single-toc-padding-x, 16px);
    list-style: none;
}
.hdf-blog-toc__item a {
    display: flex;
    min-height: 34px;
    align-items: center;
    gap: 8px;
    padding: 7px 9px;
    border: 1px solid #E8EEF5;
    border-radius: 8px;
    background: #F8FAFC;
    color: #334155;
    font-size: 11px;
    font-weight: 600;
    line-height: 1.35;
    text-decoration: none;
    transition: border-color .16s ease, background-color .16s ease, color .16s ease;
}
.hdf-blog-toc__item--level-3 { padding-inline-start: 10px; }
.hdf-blog-toc__number {
    display: inline-grid;
    width: 21px;
    height: 21px;
    flex: 0 0 21px;
    place-items: center;
    border-radius: 6px;
    background: #FFF7ED;
    color: #EA580C;
    font-size: 9px;
    font-weight: 700;
}
.hdf-blog-toc__item a:hover,
.hdf-blog-toc__item a:focus-visible {
    border-color: #FDBA74;
    background: #FFF7ED;
    color: #9A3412;
    outline: 0;
    text-decoration: none;
}

/* Article content */
.hdf-blog-single__content {
    max-width: none;
    color: var(--hdf-color-text, #111827);
    font-size: var(--hdf-blog-single-body-size, 16px);
    line-height: var(--hdf-blog-single-line-height, 1.72);
}
.hdf-blog-single__content > * + * { margin-top: var(--hdf-blog-single-content-gap, 20px); }
.hdf-blog-single__content h2,
.hdf-blog-single__content h3,
.hdf-blog-single__content h4 {
    scroll-margin-top: 110px;
    color: var(--hdf-article-heading, #0F172A);
    font-weight: 700;
    letter-spacing: -.02em;
}
.hdf-blog-single__content h2,
.hdf-blog-single__content h3 {
    position: relative;
    padding-bottom: 10px;
    border-bottom: 1px solid color-mix(in srgb, var(--hdf-blog-single-border, #E5E7EB) 88%, #F97316 12%);
}
.hdf-blog-single__content h2::after,
.hdf-blog-single__content h3::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: -1px;
    width: 72px;
    height: 3px;
    border-radius: 999px;
    background: linear-gradient(90deg, #F97316 0%, #FB7185 48%, #2563EB 100%);
}
.hdf-blog-single__content h2 { margin-bottom: .45em; font-size: var(--hdf-blog-single-h2-size, 28px); line-height: 1.15; }
.hdf-blog-single__content h3 { font-size: var(--hdf-blog-single-h3-size, 23px); line-height: 1.22; }
.hdf-blog-single__content h4 { font-size: var(--hdf-blog-single-h4-size, 19px); line-height: 1.28; color: #1D4ED8; }
.hdf-blog-single__content a { color: var(--hdf-article-link, #05658A); text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 3px; }
.hdf-blog-single__content a:hover,
.hdf-blog-single__content a:focus-visible { color: var(--hdf-blog-single-link-hover, #034E6F); }
.hdf-blog-single__content :is(img, video, iframe) { max-width: 100%; height: auto; }
.hdf-blog-single__content > figure:not(.wp-block-gallery),
.hdf-blog-single__content > .wp-block-image {
    width: min(var(--hdf-blog-single-content-media-width, 88%), 760px);
    max-width: 100%;
    margin-inline: auto;
}
.hdf-blog-single__content > img {
    display: block;
    width: auto;
    max-width: min(var(--hdf-blog-single-content-media-width, 88%), 760px);
    margin-inline: auto;
}
.hdf-blog-single__content figure img { display: block; width: auto; max-width: 100%; height: auto; margin-inline: auto; border-radius: var(--hdf-blog-single-media-radius, 16px); }
.hdf-blog-single__content figcaption,
.hdf-blog-single__content .wp-element-caption {
    max-width: 68ch;
    margin: 6px auto 0;
    color: var(--hdf-blog-single-muted, #6B7280);
    font-size: var(--hdf-blog-single-caption-size, 10px);
    line-height: 1.45;
    text-align: center;
}
.hdf-blog-single__content strong,
.hdf-blog-single__content b {
    color: inherit;
    font-weight: 700;
    font-style: inherit;
    letter-spacing: inherit;
    text-transform: none;
}

/* Canonical WordPress file/download block: one centered action with no duplicate filename/caption. */
.hdf-blog-single__content .wp-block-file {
    display: flex;
    width: 100%;
    align-items: center;
    justify-content: center;
    gap: 0;
    text-align: center;
}
.hdf-blog-single__content .wp-block-file > a:not(.wp-block-file__button),
.hdf-blog-single__content .wp-block-file > :is(figcaption, small, .wp-element-caption, .wp-block-file__description) {
    display: none;
}
.hdf-blog-single__content .wp-block-file .wp-block-file__button,
.hdf-blog-single__content a[download].wp-element-button {
    display: inline-flex;
    min-height: 38px;
    align-items: center;
    justify-content: center;
    margin: 0 auto;
    padding: 9px 16px;
    border: 1px solid var(--hdf-color-primary-hover, #EA580C);
    border-radius: var(--hdf-blog-single-action-radius, 9px);
    background: var(--hdf-color-primary, #F97316);
    color: #FFFFFF;
    font-size: 12px;
    font-weight: 700;
    line-height: 1;
    text-decoration: none;
    box-shadow: none;
    filter: none;
}
.hdf-blog-single__content .wp-block-buttons:has(a[download]) {
    justify-content: center;
}

.hdf-blog-single__content blockquote {
    margin-inline: 0;
    padding: var(--hdf-blog-single-quote-padding-y, 16px) var(--hdf-blog-single-quote-padding-x, 18px);
    border-inline-start: 4px solid var(--hdf-color-primary, #F97316);
    border-radius: 0 var(--hdf-blog-single-quote-radius, 12px) var(--hdf-blog-single-quote-radius, 12px) 0;
    background: var(--hdf-article-quote-background, #F3F4F6);
    font-size: 1.05em;
}
.hdf-blog-single__content pre { max-width: 100%; overflow: auto; padding: 14px; border-radius: 12px; }
.hdf-blog-single__content table { display: block; width: 100%; max-width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; }

/* Post-end support sections */
.hdf-blog-single__tags {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin-top: var(--hdf-blog-single-section-gap, 24px);
    padding: var(--hdf-blog-single-tags-padding-y, 11px) var(--hdf-blog-single-tags-padding-x, 12px);
    border: 1px solid var(--hdf-blog-single-border, #E5E7EB);
    border-radius: var(--hdf-blog-single-support-radius, 12px);
    background: var(--hdf-blog-single-subtle-bg, #F8FAFC);
    font-size: 11px;
}
.hdf-blog-single__tags a { color: var(--hdf-article-link, #05658A); text-decoration: none; }

.hdf-blog-author {
    position: relative;
    display: grid;
    grid-template-columns: var(--hdf-blog-single-author-avatar, 72px) minmax(0, 1fr);
    gap: var(--hdf-blog-single-author-gap, 16px);
    overflow: hidden;
    margin-top: var(--hdf-blog-single-section-gap, 24px);
    padding: var(--hdf-blog-single-author-padding, 16px);
    border: 1px solid #DCE6F1;
    border-radius: var(--hdf-blog-single-support-radius, 12px);
    background: linear-gradient(105deg, #FFF7ED 0%, #FFFFFF 42%, #F8FBFF 100%);
}
.hdf-blog-author::before {
    content: '';
    position: absolute;
    inset: 0 auto 0 0;
    width: 4px;
    background: linear-gradient(180deg, #F97316 0%, #FB7185 50%, #2563EB 100%);
}
.hdf-blog-author__avatar {
    display: grid;
    width: var(--hdf-blog-single-author-avatar, 72px);
    height: var(--hdf-blog-single-author-avatar, 72px);
    place-items: center;
    overflow: hidden;
    padding: 3px;
    border: 1px solid #FED7AA;
    border-radius: 50%;
    background: #FFF7ED;
}
.hdf-blog-author__avatar img {
    display: block;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    background: #FFFFFF;
    object-fit: cover;
}
.hdf-blog-author__avatar .hdf-blog-wp-avatar-fallback {
    --hdf-blog-avatar-size: 100% !important;
    width: 100%;
    height: 100%;
    border: 0;
    background: #F6F7F7;
    color: #50575E;
}
.hdf-blog-author__avatar .hdf-blog-wp-avatar-fallback .dashicons {
    width: auto;
    height: auto;
    font-size: calc(var(--hdf-blog-single-author-avatar, 72px) * .55);
}
.hdf-blog-author__content { align-self: center; }
.hdf-blog-author__label {
    display: inline-flex;
    width: fit-content;
    margin-bottom: 2px;
    color: #EA580C;
    font-family: var(--hdf-font-ui);
    font-size: 9px;
    font-weight: 700;
    letter-spacing: .07em;
    text-transform: uppercase;
}
.hdf-blog-author h2 { margin: 2px 0 5px; font-size: 18px; line-height: 1.2; }
.hdf-blog-author h2 a { color: #0F172A; text-decoration: none; }
.hdf-blog-author h2 a:hover,
.hdf-blog-author h2 a:focus-visible { color: #C2410C; outline: 0; }
.hdf-blog-author p { max-width: 72ch; margin: 0; color: #475569; font-size: 12px; line-height: 1.58; }
.hdf-blog-author__posts {
    display: inline-flex;
    min-height: 28px;
    align-items: center;
    margin-top: 9px;
    padding: 0 10px;
    border: 1px solid #BFDBFE;
    border-radius: 999px;
    background: #EFF6FF;
    color: #1D4ED8;
    font-size: 10px;
    font-weight: 700;
    text-decoration: none;
}
.hdf-blog-author__posts:hover,
.hdf-blog-author__posts:focus-visible { border-color: #93C5FD; background: #DBEAFE; color: #1E40AF; outline: 0; }

.hdf-blog-single__post-nav { margin-top: var(--hdf-blog-single-section-gap, 24px); }
.hdf-blog-single__post-nav .nav-links { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--hdf-blog-single-nav-gap, 10px); }
.hdf-blog-single__post-nav a {
    display: grid;
    gap: 3px;
    padding: var(--hdf-blog-single-nav-padding, 13px);
    border: 1px solid var(--hdf-blog-single-border, #E5E7EB);
    border-radius: var(--hdf-blog-single-support-radius, 12px);
    color: var(--hdf-article-link, #05658A);
    text-decoration: none;
}
.hdf-blog-single__post-nav a span { color: var(--hdf-blog-single-muted, #6B7280); font-size: 9px; text-transform: uppercase; }
.hdf-blog-single__post-nav a strong { font-size: 12px; line-height: 1.35; }
.hdf-blog-single__post-nav a:hover,
.hdf-blog-single__post-nav a:focus-visible { border-color: var(--hdf-color-primary, #F97316); }

/* Related Posts always consumes the canonical global Blog Post Card. */
.hdf-blog-related {
    margin-top: var(--hdf-blog-single-related-top-gap, 28px);
    padding-top: var(--hdf-blog-single-related-padding-top, 20px);
    border-top: 1px solid var(--hdf-blog-single-border, #E5E7EB);
}
.hdf-blog-related > header { margin-bottom: var(--hdf-blog-single-related-header-gap, 12px); }
.hdf-blog-related > header span { color: var(--hdf-color-primary-hover, #EA580C); font-family: var(--hdf-font-ui); font-size: 10px; font-weight: 700; letter-spacing: .07em; text-transform: uppercase; }
.hdf-blog-related h2 { margin: 3px 0 0; font-size: var(--hdf-blog-single-related-title-size, 24px); }
.hdf-blog-related__grid {
    display: grid;
    grid-template-columns: repeat(var(--hdf-blog-single-related-columns, 3), minmax(0, 1fr));
    gap: var(--hdf-blog-single-related-gap, 0px);
    overflow: visible;
}
.hdf-blog-related .hdf-blog-card {
    --hdf-blog-card-media-padding: 0px;
    --hdf-blog-card-padding: 0px;
    --hdf-blog-card-bottom-padding: 0px;
    border-radius: 0;
}
.hdf-blog-related .hdf-blog-card__body { padding: 0; }

/* WordPress comments remain the data/interaction authority. */
.hdf-blog-single__comments {
    width: 100%;
    max-width: var(--hdf-blog-single-comments-width, 860px);
    margin: var(--hdf-blog-single-comments-top-gap, 28px) 0 0;
    padding-top: var(--hdf-blog-single-comments-padding-top, 20px);
    border-top: 1px solid var(--hdf-blog-single-border, #E5E7EB);
}
.hdf-blog-single__comments .comment-list { list-style: none; margin: 0; padding: 0; }
.hdf-blog-single__comments .comment-body {
    margin-bottom: var(--hdf-blog-single-comment-gap, 10px);
    padding: var(--hdf-blog-single-comment-padding, 14px);
    border: 1px solid var(--hdf-blog-single-border, #E5E7EB);
    border-radius: var(--hdf-blog-single-support-radius, 12px);
    background: var(--hdf-blog-single-card-bg, #FFFFFF);
}
.hdf-blog-single__comments .comment-form { display: grid; gap: var(--hdf-blog-single-comment-form-gap, 10px); }
.hdf-blog-single__comments textarea,
.hdf-blog-single__comments input:not([type=submit]) { width: 100%; }
.hdf-blog-single__comments .submit {
    min-height: var(--hdf-blog-single-comment-button-height, 42px);
    padding: 9px 16px;
    border: 1px solid var(--hdf-color-primary-hover, #EA580C);
    border-radius: var(--hdf-blog-single-action-radius, 9px);
    background: var(--hdf-color-primary, #F97316);
    color: var(--hdf-color-on-primary, #FFFFFF);
    font-weight: 700;
    cursor: pointer;
}

@media (max-width: 1100px) {
    .hdf-blog-single__shell { width: min(calc(100% - (var(--hdf-blog-single-tablet-padding-x, 18px) * 2)), var(--hdf-blog-single-shell-width, 1300px)); }
    .hdf-blog-single__hero--media { grid-template-columns: minmax(0, 1fr); }
    .hdf-blog-single__hero { gap: 10px; padding: 10px; }
    .hdf-blog-single__hero-copy {
        order: 1;
        width: 100%;
        align-content: start;
        gap: 7px;
        padding: 7px 9px 3px;
    }
    .hdf-blog-single__hero h1 {
        display: -webkit-box;
        width: 100%;
        max-width: none;
        overflow: hidden;
        font-size: var(--hdf-blog-single-tablet-title-size, 28px);
        line-height: 1.07;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 3;
        line-clamp: 3;
    }
    .hdf-blog-single__deck { width: 100%; max-width: none; font-size: 13px; line-height: 1.5; }
    .hdf-blog-single__byline { flex-wrap: nowrap; gap: 8px; }
    .hdf-blog-single__hero-author { flex: 0 1 auto; max-width: 180px; }
    .hdf-blog-single__hero-author .hdf-blog-wp-avatar-fallback,
    .hdf-blog-single__hero-author img { width: 28px; height: 28px; }
    .hdf-blog-single__hero-author small { font-size: 7px; }
    .hdf-blog-single__hero-author strong { max-width: 14ch; font-size: 9px; }
    .hdf-blog-single__meta { font-size: 9px; gap: 6px 8px; }

    .hdf-blog-share--header {
        width: 100%;
        margin-top: 1px;
    }
    .hdf-blog-share--header .hdf-blog-share__actions { display: flex; flex-wrap: nowrap; width: 100%; gap: 5px; justify-content: flex-start; }
    .hdf-blog-share--header .hdf-blog-share__actions > * { min-width: 0; }
    .hdf-blog-share__actions a,
    .hdf-blog-share__actions button { min-width: 32px; height: 32px; padding-inline: 8px; font-size: 9px; }

    .hdf-blog-single__hero-media {
        order: 3;
        width: 100%;
        justify-self: stretch;
        align-content: start;
        gap: 0;
    }
    .hdf-blog-single__featured {
        width: 100%;
        padding: 8px;
    }
    .hdf-blog-single__featured img {
        display: block;
        width: 100%;
        height: auto;
        max-height: none;
        aspect-ratio: 16 / 9;
        object-fit: contain;
        background: #FFFFFF;
    }

    .hdf-blog-single__layout--sidebar { grid-template-columns: 1fr; column-gap: 0; }
    .hdf-blog-single__reading { width: 100%; max-width: none; margin-inline: 0; }
    .hdf-blog-single__sidebar { display: none; }
    .hdf-blog-single__content { font-size: var(--hdf-blog-single-tablet-body-size, 16px); }
    .hdf-blog-single__content h2 { font-size: var(--hdf-blog-single-tablet-h2-size, 26px); }
    .hdf-blog-single__content h3 { font-size: var(--hdf-blog-single-tablet-h3-size, 22px); }
    .hdf-blog-single__content h4 { font-size: var(--hdf-blog-single-tablet-h4-size, 18px); }
    .hdf-blog-toc__list { grid-template-columns: 1fr; }
    .hdf-blog-related__grid { display:flex; flex-wrap:nowrap; overflow-x:auto; scrollbar-width:thin; }
    .hdf-blog-related__grid > .hdf-blog-card { flex:0 0 calc(50% - 1px); }
}

@media (max-width: 680px) {
    .hdf-blog-single__hero-zone { padding-top: var(--hdf-blog-single-mobile-padding-top, 8px); }
    .hdf-blog-single__shell { width: min(calc(100% - (var(--hdf-blog-single-mobile-padding-x, 8px) * 2)), var(--hdf-blog-single-shell-width, 1300px)); }
    .hdf-blog-single__hero--media { grid-template-columns: minmax(0, 1fr); }
    .hdf-blog-single__hero {
        gap: 8px;
        padding: 8px;
        border-radius: 12px;
    }
    .hdf-blog-single__hero-copy {
        order: 1;
        width: 100%;
        align-content: start;
        gap: 6px;
        padding: 5px 6px 2px;
    }
    .hdf-blog-single__category { font-size: 7px; }
    .hdf-blog-single__hero h1 {
        display: -webkit-box;
        width: 100%;
        max-width: none;
        overflow: hidden;
        font-size: var(--hdf-blog-single-mobile-title-size, 18px);
        line-height: 1.08;
        letter-spacing: -.02em;
        text-wrap: balance;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
        line-clamp: 2;
    }
    .hdf-blog-single__deck {
        display: -webkit-box;
        width: 100%;
        max-width: none;
        overflow: hidden;
        font-size: var(--hdf-blog-single-mobile-deck-size, 10px);
        line-height: 1.4;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
        line-clamp: 2;
    }
    .hdf-blog-single__byline {
        display: flex;
        width: 100%;
        flex-wrap: nowrap;
        align-items: center;
        justify-content: flex-start;
        gap: 7px;
        overflow: hidden;
        padding-top: 2px;
    }
    .hdf-blog-single__hero-author {
        display: flex;
        min-width: 0;
        max-width: 42%;
        flex: 0 1 auto;
        gap: 5px;
    }
    .hdf-blog-single__hero-author .hdf-blog-wp-avatar-fallback,
    .hdf-blog-single__hero-author img { width: 22px; height: 22px; }
    .hdf-blog-single__hero-author .hdf-blog-wp-avatar-fallback .dashicons { font-size: 13px; }
    .hdf-blog-single__hero-author small { display: none; }
    .hdf-blog-single__hero-author strong {
        max-width: 16ch;
        overflow: hidden;
        font-size: 8px;
        line-height: 1.15;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
    .hdf-blog-single__meta {
        min-width: 0;
        flex: 1 1 auto;
        flex-wrap: nowrap;
        justify-content: flex-start;
        gap: 5px;
        overflow: hidden;
        font-size: 7px;
        white-space: nowrap;
    }
    .hdf-blog-single__meta .hdf-blog-icon { width: 9px; height: 9px; }
    .hdf-blog-single__meta-modified,
    .hdf-blog-single__meta-comments { display: none !important; }

    .hdf-blog-share--header {
        width: 100%;
        margin-top: 1px;
    }
    .hdf-blog-share--header .hdf-blog-share__actions {
        display: flex;
        width: 100%;
        flex-wrap: nowrap;
        align-items: stretch;
        justify-content: stretch;
        gap: 3px;
    }
    .hdf-blog-share--header .hdf-blog-share__actions > a,
    .hdf-blog-share--header .hdf-blog-share__actions > button {
        min-width: 0;
        height: 28px;
        min-height: 28px;
        flex: 0 0 28px;
        padding: 0;
        border-radius: 7px;
        font-size: 7px;
    }
    .hdf-blog-share--header .hdf-blog-share__actions > :is(button[data-hdf-copy-link], button[data-hdf-print-post], .hdf-blog-share__back) {
        flex: 1 1 0;
        padding-inline: 4px;
    }
    .hdf-blog-share--header .hdf-blog-share__actions .hdf-blog-icon { width: 11px; height: 11px; flex: 0 0 11px; }
    .hdf-blog-share--header .hdf-blog-share__actions .hdf-blog-share__back { margin-inline-start: 0; }

    .hdf-blog-single__hero-media {
        order: 3;
        width: min(100%, var(--hdf-blog-single-mobile-hero-media-width, 100%));
        justify-self: center;
        align-content: start;
        gap: 0;
    }
    .hdf-blog-single__featured {
        width: 100%;
        padding: 5px;
        border-radius: 10px;
    }
    .hdf-blog-single__featured img {
        width: 100%;
        height: auto;
        max-height: none;
        aspect-ratio: 16 / 9;
        object-fit: contain;
        background: #FFFFFF;
        border-radius: 7px;
    }

    .hdf-blog-share--footer { align-items: flex-start; flex-direction: column; }
    .hdf-blog-share--footer > strong { width:100%; }
    .hdf-blog-share--footer .hdf-blog-share__actions { margin-inline-start:0; }
    .hdf-blog-single__content { font-size: var(--hdf-blog-single-mobile-body-size, 15px); line-height: 1.68; }
    .hdf-blog-single__content h2 { font-size: var(--hdf-blog-single-mobile-h2-size, 24px); }
    .hdf-blog-single__content h3 { font-size: var(--hdf-blog-single-mobile-h3-size, 21px); }
    .hdf-blog-single__content h4 { font-size: var(--hdf-blog-single-mobile-h4-size, 18px); }
    .hdf-blog-single__content h2::after,
    .hdf-blog-single__content h3::after { width: 56px; }
    .hdf-blog-author { grid-template-columns: 56px minmax(0, 1fr); }
    .hdf-blog-author__avatar { width:56px; height:56px; }
    .hdf-blog-author__avatar img { width:100%; height:100%; }
    .hdf-blog-single__post-nav .nav-links { grid-template-columns: 1fr; }
    .hdf-blog-related__grid { display:flex; flex-wrap:nowrap; overflow-x:auto; }
    .hdf-blog-related__grid > .hdf-blog-card { flex:0 0 84%; }
    .hdf-blog-single__sidebar { display: none; }
}

@media (max-width: 360px) {
    .hdf-blog-single__hero { gap: 7px; padding: 6px; }
    .hdf-blog-single__hero-copy { padding: 4px 4px 1px; }
    .hdf-blog-single__hero h1 { font-size: min(var(--hdf-blog-single-mobile-title-size, 18px), 17px); }
    .hdf-blog-single__deck { font-size: min(var(--hdf-blog-single-mobile-deck-size, 10px), 9.5px); }
    .hdf-blog-single__hero-author { max-width: 40%; }
    .hdf-blog-single__hero-author .hdf-blog-wp-avatar-fallback,
    .hdf-blog-single__hero-author img { width: 20px; height: 20px; }
    .hdf-blog-single__hero-author strong { max-width: 12ch; font-size: 7.5px; }
    .hdf-blog-single__meta { gap: 4px; font-size: 6.5px; }
    .hdf-blog-share--header .hdf-blog-share__actions { gap: 2px; }
    .hdf-blog-share--header .hdf-blog-share__actions > a,
    .hdf-blog-share--header .hdf-blog-share__actions > button { height: 26px; min-height: 26px; flex-basis: 26px; }
    .hdf-blog-share--header .hdf-blog-share__actions > :is(button[data-hdf-copy-link], button[data-hdf-print-post], .hdf-blog-share__back) span {
        position: absolute;
        width: 1px;
        height: 1px;
        overflow: hidden;
        clip: rect(0 0 0 0);
        white-space: nowrap;
        clip-path: inset(50%);
    }
    .hdf-blog-single__hero-media { width: 100%; }
    .hdf-blog-single__featured img { width: 100%; height: auto; max-height: none; aspect-ratio: 16 / 9; object-fit: contain; }
}

@media print {
    body.hdf-blog-single-page { background: #FFFFFF !important; }
    body.hdf-blog-single-page .site-header,
    body.hdf-blog-single-page .site-footer,
    body.hdf-blog-single-page .hdf-blog-single__sidebar,
    body.hdf-blog-single-page .hdf-blog-share,
    body.hdf-blog-single-page .hdf-blog-single__comments,
    body.hdf-blog-single-page .hdf-blog-related,
    body.hdf-blog-single-page .hdf-blog-single__post-nav,
    body.hdf-blog-single-page .hdf-context-sidebar { display: none !important; }
    .hdf-blog-single__shell,
    .hdf-blog-single__reading { width: 100% !important; max-width: none !important; }
    .hdf-blog-single__hero-zone { background: #FFFFFF !important; }
    .hdf-blog-single__hero { border: 0; padding-inline: 0; grid-template-columns: 1fr; }
    .hdf-blog-single__featured { padding: 0; }
    .hdf-blog-single__featured img { max-height: none; height: auto; }
}
