/* Bhuchi Horizon Premium 5.0 — editorial polish / accessibility / performance.
   Intentionally small: the WordPress color palette is the source of truth.
   Decorative motion remains optional; reading and navigation always win. */
:root { --bh5-orange-ink:#954000; --bh5-green-ink:#16712b; --bh5-focus:#092e5f; --bh5-shadow:0 22px 65px rgba(7,29,58,.11); }
html { scroll-behavior:smooth; }
.wp-site-blocks { overflow:visible; }
:where(a,button,input,textarea,select,[tabindex]):focus-visible { outline:3px solid var(--bh5-focus); outline-offset:4px; border-radius:3px; }
.bh3-footer :where(a,button,input):focus-visible,.bh3-arcade :where(a,button):focus-visible { outline-color:#fff; }
@media (prefers-reduced-motion:reduce) { html {scroll-behavior:auto!important;} *,*::before,*::after {scroll-behavior:auto!important;} }
/* WCAG-readable controls: orange remains prominent but gets navy type, not white. */
.wp-block-button__link:not(.has-text-color) { color:var(--bh-navy); }
.bh3-header .bh-header-cta .wp-block-button__link {color:var(--bh-white)!important;}
.bh3-header .bh-header-cta .wp-block-button__link:hover {color:var(--bh-navy)!important;}
.bh3-btn-outline .wp-block-button__link {color:var(--bh-navy)!important;}
.bh3-btn-outline .wp-block-button__link:hover {color:var(--bh-white)!important;}
.bh3-hero .bh3-btn-primary .wp-block-button__link,
.bh3-footer .bh3-footer-button .wp-block-button__link:hover,
.bh3-arcade .bh3-arcade-button .wp-block-button__link:hover,
.bh-header-cta .wp-block-button__link:hover { color:var(--bh-navy)!important; }
.bh3-hero .bh3-btn-primary .wp-block-button__link:hover { color:var(--bh-white)!important; }
/* Accessible text tones: bright brand colors remain in iconography and large accents. */
.bh3-hero .bh3-kicker,.bh3-manifesto .bh3-kicker,
.bh3-post-copy .wp-block-post-terms,.bh3-discovery-copy .wp-block-post-terms,
.bh-article-header .wp-block-post-terms,.bh-post-grid .wp-block-post-terms {color:var(--bh5-green-ink);}
.bh3-header .wp-block-navigation-item__content:hover,
.bh3-topic-index li a:hover,.wp-block-post-title a:hover {color:var(--bh5-orange-ink);}
.bh3-kicker,.bh-eyebrow { letter-spacing:.13em; }
.bh3-section-header { gap:1.25rem; }
.bh3-section-header .bh3-heading { max-width:22ch; }
.bh3-section-header .bh3-intro { max-width:380px; }
.bh3-display, .bh3-heading, .bh3-manifesto-quote { overflow-wrap:break-word; }
.bh3-display em { color:#ab4b00; /* readable even when background-clip unsupported */ }
@supports(-webkit-background-clip:text) { .bh3-display em {color:transparent;} }
.bh3-hero-copy { min-width:0; }
.bh3-hero-lede { max-width:54ch; }
.bh3-featured-query .wp-block-post { isolation:isolate; }
.bh3-featured-query .wp-block-post-title a:focus-visible { outline:3px solid white; outline-offset:5px; }
.bh3-featured-query .wp-block-post:focus-within,
.bh3-post-grid .wp-block-post:focus-within,
.bh3-discovery-query .wp-block-post:focus-within { box-shadow:0 0 0 3px var(--bh-cyan),var(--bh5-shadow); }
.bh3-post-grid .wp-block-post:focus-within,
.bh3-discovery-query .wp-block-post:focus-within { transform:none!important; }
.bh3-hero-buttons .wp-block-button__link,.bh3-header-actions .wp-block-button__link,
.bh3-arcade .wp-block-button__link { min-height:44px; display:inline-flex; align-items:center; justify-content:center; }
.bh3-topic-index li a { display:inline-flex; min-height:44px; align-items:center; }
.wp-block-query-pagination .page-numbers { min-width:44px; min-height:44px; }
.bh3-article-header .wp-block-post-title { overflow-wrap:anywhere; }
.bh-article-body .wp-block-post-content { max-width:75ch; margin-inline:auto; }
.bh-article-body .wp-block-post-content :is(img,iframe,video) { max-width:100%; }
.bh-article-body .wp-block-post-content table { width:100%; display:block; overflow-x:auto; -webkit-overflow-scrolling:touch; }
.bh-article-body .wp-block-post-content :is(pre,code) { overflow-wrap:anywhere; }
.bh-article-body .wp-block-post-content pre { max-width:100%; overflow-x:auto; overflow-wrap:normal; }
.bh-article-body .wp-block-post-content a { text-decoration-thickness:1.5px; text-underline-offset:.17em; }
.bh-article-cover img { aspect-ratio:16/9; object-fit:cover; }
.bh3-related-kicker { color:var(--bh-green); }
.bh5-crumbs { padding-block:1rem .25rem; width:min(100%,960px); margin-inline:auto; font-size:.8rem; }
.bh5-crumbs ol { list-style:none; display:flex; justify-content:center; flex-wrap:wrap; align-items:center; gap:.35rem .55rem; margin:0; padding:0; }
.bh5-crumbs li { max-width:100%; color:var(--bh-muted); }
.bh5-crumbs li:not(:last-child)::after { content:'›'; margin-left:.55rem; color:var(--bh-muted); }
.bh5-crumbs a { color:var(--bh-navy); font-weight:700; }
.bh5-crumbs li:last-child span { display:inline-block; overflow:hidden; text-overflow:ellipsis; max-width:min(65vw,330px); white-space:nowrap; vertical-align:middle; }
.bh5-related-wrap { margin-bottom:clamp(3.25rem,6vw,6rem); }
.bh5-related { border-top:1px solid var(--bh-border); padding-top:clamp(2rem,4vw,3.3rem); }
.bh5-related-heading { margin-bottom:1.6rem; }
.bh5-eyebrow { font-size:.73rem; letter-spacing:.15em; color:var(--bh-green); font-weight:800; }
.bh5-related-heading h2 { font-size:clamp(1.65rem,3vw,2.7rem); margin:.55rem 0 0; }
.bh5-related-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:clamp(1rem,2vw,1.6rem); }
.bh5-related-card { background:var(--bh-white); border:1px solid var(--bh-border); border-radius:18px; overflow:hidden; min-width:0; transition:box-shadow .2s ease,transform .2s ease; }
.bh5-related-card:hover { box-shadow:var(--bh5-shadow); transform:translateY(-3px); }
.bh5-related-image { display:block; aspect-ratio:1.7; overflow:hidden; background:var(--bh-mist); }
.bh5-related-image img { width:100%;height:100%;object-fit:cover;display:block; }
.bh5-related-placeholder { display:grid;place-items:center;height:100%;background:linear-gradient(140deg,var(--bh-mist),var(--bh-cloud));font-weight:900;font-size:2.4rem;letter-spacing:-.08em;color:var(--bh-navy); }
.bh5-related-copy { padding:1.2rem 1.2rem 1.45rem; }
.bh5-related-copy span { color:var(--bh-muted);font-size:.78rem; }
.bh5-related-copy h3 { font-size:clamp(1rem,1.5vw,1.23rem);line-height:1.28;margin:.45rem 0 0;overflow-wrap:break-word; }
.bh5-related-copy h3 a { text-decoration:none;color:var(--bh-navy); }
.bh5-related-copy h3 a:hover { color:var(--bh5-orange-ink);text-decoration:underline; }
/* Fix original percent columns + gap overflow in the WP footer. */
.bh3-footer-cols { display:grid!important; grid-template-columns:minmax(0,1.6fr) minmax(0,.7fr) minmax(0,.7fr); }
.bh3-footer-cols > .wp-block-column { min-width:0; flex-basis:auto!important; }
@media(max-width:781px) { .bh3-footer-cols {grid-template-columns:1fr 1fr;} .bh3-footer-cols > .wp-block-column:first-child {grid-column:1/-1;} }
@media(max-width:500px) { .bh3-footer-cols {grid-template-columns:1fr;} .bh3-footer-cols > .wp-block-column:first-child {grid-column:auto;} }
/* Depth should never steal precision from navigation, reading, or keyboard focus. */
.bh3-header-wrap { isolation:isolate; }
.bh4-globe-stage { pointer-events:none; }
.bh3-feature .bh3-feature-tag { z-index:6; }
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) {
  .bh3-header .wp-block-navigation-item__content:hover,.bh3-footer a:hover { text-decoration:underline; text-underline-offset:.35em; }
}
@media(max-width:900px) { .bh5-related-grid {grid-template-columns:repeat(2,minmax(0,1fr));} }
@media(max-width:600px) {
 .bh3-utility {display:none!important;} /* reclaim first-screen vertical space */
 .bh3-hero-buttons .wp-block-button__link {font-size:.91rem!important; padding:.9rem 1.15rem!important;}
 .bh3-hero-buttons .wp-block-buttons,.bh3-hero-buttons {flex-wrap:wrap;}
 .bh3-hero-footnote {display:none;} /* decorative microcopy is too small on phones */
 .bh3-section-aside {display:none;}
 .bh5-related-grid {grid-template-columns:1fr;}
 .bh5-related-image {aspect-ratio:2.1;}
 .bh3-featured-query .wp-block-post { min-height:420px; }
 .bh3-feature-corner {display:none;}
 .bh3-hero-bottom p {letter-spacing:.09em;}
 .bh5-crumbs ol {justify-content:flex-start;}
 .bh5-crumbs li:last-child span {max-width:180px;}
}
@media(prefers-reduced-motion:reduce) {
 .bh5-related-card,.bh3-post-grid .wp-block-post-featured-image img {transition:none!important; transform:none!important;}
}
