/* Bhuchi Horizon 2: one small, dependency-free sheet; palette values come from theme.json. */
:root {
  --bh-navy: var(--wp--preset--color--navy, #092e5f);
  --bh-deep: var(--wp--preset--color--deep, #071d3a);
  --bh-orange: var(--wp--preset--color--orange, #ff8908);
  --bh-green: var(--wp--preset--color--green, #299e35);
  --bh-cyan: var(--wp--preset--color--cyan, #0db8da);
  --bh-ink: var(--wp--preset--color--ink, #142c46);
  --bh-muted: var(--wp--preset--color--muted, #62748a);
  --bh-mist: var(--wp--preset--color--mist, #edf8f9);
  --bh-cloud: var(--wp--preset--color--cloud, #f7faf9);
  --bh-white: var(--wp--preset--color--white, #fff);
  --bh-radius: 18px;
  --bh-border: color-mix(in srgb,var(--bh-muted) 19%,transparent);
  --bh-shadow: 0 18px 52px rgba(9,46,95,.09);
}
*,*::before,*::after { box-sizing: border-box; }
html { scroll-behavior:smooth; scroll-padding-top:108px; max-width:100%; overflow-x:clip; }
body { max-width:100%; overflow-x:clip; -webkit-font-smoothing:antialiased; }
a { text-underline-offset: .18em; }
img { max-width:100%; height:auto; }
button,input,textarea,select { font:inherit; }
:focus-visible { outline:3px solid var(--bh-orange); outline-offset:3px; }
::selection { background:var(--bh-cyan); color:var(--bh-deep); }
.wp-site-blocks { overflow:hidden; }
.wp-site-blocks > * { margin-block-start:0; }
.wp-block-button__link { transition:transform .18s ease,background-color .18s ease,box-shadow .18s ease; }
.wp-block-button__link:hover { transform:translateY(-2px); box-shadow:0 9px 24px color-mix(in srgb,var(--bh-navy) 19%,transparent); }
.is-style-outline .wp-block-button__link { color:var(--bh-navy); border-color:var(--bh-border); }
.is-style-outline .wp-block-button__link:hover { color:var(--bh-white); background:var(--bh-navy); }
.wp-block-post-title a, .wp-block-query-title a { text-decoration:none; }
.wp-block-post-title a:hover { color:var(--bh-orange); }
.wp-block-navigation a { text-decoration:none; }
.wp-block-post-featured-image { overflow:hidden; }
.wp-block-post-featured-image img { width:100%; object-fit:cover; transition:transform .45s ease; }
.wp-block-post-featured-image:hover img { transform:scale(1.04); }
.wp-block-post-featured-image img,.is-style-bh-soft img { border-radius:var(--bh-radius); }
.wp-block-separator { opacity:.48; }
.wp-block-query-pagination { gap:1rem; margin-top:2.8rem; }
.wp-block-query-pagination .page-numbers { display:inline-flex; align-items:center; justify-content:center; width:38px; height:38px; border:1px solid var(--bh-border); border-radius:10px; text-decoration:none; }
.wp-block-query-pagination .page-numbers.current { background:var(--bh-navy); color:var(--bh-white); }
.wp-block-search__input, input[type="search"], input[type="email"], textarea { border:1px solid var(--bh-border); border-radius:10px; padding:.8rem 1rem; max-width:100%; background:var(--bh-white); color:var(--bh-ink); }
.wp-block-search__button { border-radius:9px; border:0; background:var(--bh-navy); color:var(--bh-white); }
.is-style-bh-card { background:var(--bh-white); box-shadow:var(--bh-shadow); border:1px solid var(--bh-border); border-radius:var(--bh-radius); padding:1.5rem; }
.is-style-bh-accent { background:var(--bh-mist); padding:1.7rem; border-left:4px solid var(--bh-orange); border-radius:12px; }
.is-style-bh-eyebrow,.bh-eyebrow { font-size:.75rem!important; font-weight:850!important; text-transform:uppercase; letter-spacing:.15em; color:var(--bh-navy); }
.bh-eyebrow::before { content:""; display:inline-block; vertical-align:middle; width:7px; height:7px; background:var(--bh-green); border-radius:50%; margin-right:.7rem; }
.bh-overline { font-size:.69rem; text-transform:uppercase; letter-spacing:.17em; font-weight:800; }
.bh-section-title { font-size:clamp(2rem,3.7vw,3.45rem); letter-spacing:-.046em; }
.bh-section-intro { color:var(--bh-muted); max-width:600px; }
.bh-shell { max-width:1200px; margin-inline:auto; }
.bh-section { padding-block:clamp(3.6rem,7vw,6rem); }
.bh-no-gap { margin-block-start:0!important; }

/* Sticky top bar, color-marked brand and editable native navigation. */
.bh-announcement { padding:.4rem 0; font-size:.7rem; letter-spacing:.12em; text-transform:uppercase; }
.bh-announcement .wp-block-paragraph { margin:0; }
.bh-header-wrap { background:var(--bh-white); border-bottom:1px solid var(--bh-border); z-index:50; }
.bh-header-wrap.has-position-sticky { box-shadow:0 8px 25px color-mix(in srgb,var(--bh-navy) 5%,transparent); }
body.admin-bar .bh-header-wrap.has-position-sticky { top:32px; }
.bh-header { padding-block:1rem; min-height:78px; }
.bh-header .wp-block-site-title { font-weight:850; letter-spacing:-.045em; line-height:1.03; white-space:nowrap; }
.bh-header .wp-block-site-title a { text-decoration:none; }
.bh-header .wp-block-site-tagline { letter-spacing:.12em; font-size:.58rem; text-transform:uppercase; opacity:.72; margin-block-start:.3rem; }
.bh-header .wp-block-navigation { gap:clamp(.8rem,2vw,1.8rem); }
.bh-header .wp-block-navigation-item__content { font-size:.89rem; font-weight:700; }
.bh-header .wp-block-navigation__responsive-container.is-menu-open { background:var(--bh-white); color:var(--bh-ink); }
.bh-header-brand { flex-shrink:0; }
.bh-brandmark { position:relative; display:inline-flex; align-items:center; font-size:2.05rem; line-height:1; letter-spacing:-.17em; font-weight:950; font-style:italic; transform:skew(-8deg); width:55px; height:44px; padding-top:0; isolation:isolate; }
.bh-brandmark b { color:var(--bh-navy); }
.bh-brandmark em { font-weight:950; font-style:italic; color:var(--bh-orange); }
.bh-brandmark::after { content:""; position:absolute; left:10px; right:5px; bottom:1px; height:7px; border-bottom:3px solid var(--bh-cyan); border-radius:50%; transform:rotate(-9deg); }
.bh-header-brand:has(.wp-block-site-logo img) .bh-brandmark { display:none; }
.bh-header-brand .wp-block-site-logo:not(:has(img)) { display:none; }
.bh-header-cta .wp-block-button__link { padding:.78rem 1.1rem; font-size:.85rem; background:var(--bh-navy); white-space:nowrap; }
.bh-header-cta .wp-block-button__link:hover { background:var(--bh-orange); }

/* Above-the-fold split hero; all text, links, cards and queries stay editable. */
.bh-hero { position:relative; overflow:clip; padding-block:clamp(3.6rem,7vw,6.5rem) 3rem; background:linear-gradient(130deg,var(--bh-mist),var(--bh-cloud) 75%); isolation:isolate; }
.bh-hero::after { content:""; position:absolute; width:min(38vw,440px); aspect-ratio:1; top:-32%; right:-15%; border:1px solid color-mix(in srgb,var(--bh-cyan) 26%,transparent); border-radius:50%; z-index:-1; pointer-events:none; }
.bh-hero-grid { align-items:center!important; gap:clamp(2rem,4vw,4.4rem)!important; }
.bh-hero-copy h1 { font-size:clamp(3.2rem,5.8vw,5.65rem); letter-spacing:-.06em; line-height:1.01; max-width:10ch; }
.bh-hero-copy .bh-hero-lead { max-width:520px; font-size:clamp(1rem,1.35vw,1.2rem); color:var(--bh-muted); line-height:1.8; }
.bh-hero-copy .wp-block-buttons { gap:.8rem; }
.bh-hero-copy .wp-block-button .wp-block-button__link { padding:1rem 1.35rem; }
.bh-hero-bottom { margin-top:4rem; font-size:.64rem; font-weight:750; letter-spacing:.14em; text-transform:uppercase; color:var(--bh-muted); }
.bh-hero-feature { position:relative; }
.bh-hero-badge { position:absolute; z-index:4; left:5%; top:-20px; background:var(--bh-white); color:var(--bh-navy); border-radius:10px; padding:.85rem 1.3rem; box-shadow:0 9px 35px color-mix(in srgb,var(--bh-deep) 10%,transparent); font-size:.69rem; text-transform:uppercase; font-weight:800; letter-spacing:.08em; }
.bh-hero-badge::before { content:""; display:inline-block; width:8px; height:8px; background:var(--bh-green); border-radius:50%; margin-right:.7rem; }
.bh-featured-query { margin:0; }
.bh-featured-query .wp-block-post-template { margin:0; padding:0; }
.bh-featured-query .wp-block-post { margin:0; position:relative; border-radius:22px; overflow:hidden; min-height:440px; background:linear-gradient(155deg,transparent 0%,var(--bh-navy) 100%),url("../images/hero-landscape.svg") center/cover no-repeat; box-shadow:var(--bh-shadow); }
.bh-featured-query .wp-block-post-featured-image { position:absolute; inset:0; border-radius:0; margin:0; }
.bh-featured-query .wp-block-post-featured-image a, .bh-featured-query .wp-block-post-featured-image img { display:block; height:100%; width:100%; border-radius:0; }
.bh-featured-query .wp-block-post-featured-image img { object-fit:cover; }
.bh-featured-query .wp-block-post::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,rgba(1,15,34,.02) 25%,rgba(2,19,35,.93) 100%); pointer-events:none; }
.bh-featured-query .bh-feature-body { position:absolute; z-index:2; left:7%; right:7%; bottom:7%; color:#fff; margin:0; }
.bh-featured-query .bh-feature-body .wp-block-post-title { font-size:clamp(1.5rem,2.3vw,2.25rem); max-width:18ch; line-height:1.22; }
.bh-featured-query .bh-feature-body .wp-block-post-title a { color:#fff; }
.bh-featured-query .bh-feature-body .wp-block-post-terms { color:#98efde; font-size:.7rem; text-transform:uppercase; font-weight:800; letter-spacing:.1em; }
.bh-featured-query .bh-feature-body .wp-block-post-terms a { color:inherit; text-decoration:none; }
.bh-featured-query .bh-feature-body .wp-block-read-more { color:#fff; font-size:.9rem; font-weight:800; text-decoration:none; }
.bh-featured-query .wp-block-query-no-results { background:var(--bh-navy); color:#fff; padding:4rem; border-radius:var(--bh-radius); }

/* Categories: actual WordPress categories, not placeholder cards. */
.bh-topics { background:var(--bh-white); }
.bh-topics-header,.bh-stories-header { margin-bottom:2rem; }
.bh-categories-grid ul.wp-block-categories-list { margin:0; padding:0; list-style:none; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; }
.bh-categories-grid ul.wp-block-categories-list li { display:flex; align-items:center; min-height:120px; gap:.5rem; position:relative; border:1px solid var(--bh-border); border-radius:16px; padding:1.35rem; background:var(--bh-cloud); transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease; color:var(--bh-muted); font-size:.74rem; }
.bh-categories-grid ul.wp-block-categories-list li::before { content:"✦"; display:grid; place-items:center; flex:0 0 40px; height:40px; width:40px; background:var(--bh-mist); color:var(--bh-cyan); border-radius:12px; font-size:1.1rem; }
.bh-categories-grid ul.wp-block-categories-list li:nth-child(3n+2)::before { color:var(--bh-green); }
.bh-categories-grid ul.wp-block-categories-list li:nth-child(3n+3)::before { color:var(--bh-orange); }
.bh-categories-grid ul.wp-block-categories-list li:hover { transform:translateY(-3px); box-shadow:var(--bh-shadow); border-color:var(--bh-cyan); }
.bh-categories-grid ul.wp-block-categories-list a { font-size:1rem; font-weight:800; text-decoration:none; color:var(--bh-navy); }
.bh-categories-grid ul.wp-block-categories-list .children { display:none; }

/* Automatic WordPress post grids; reordering and styling through Query Loop. */
.bh-stories { background:var(--bh-cloud); }
.bh-post-grid .wp-block-post-template,.bh-post-grid.wp-block-query .wp-block-post-template { gap:1.5rem; }
.bh-post-grid .wp-block-post { min-width:0; background:var(--bh-white); border-radius:17px; overflow:hidden; border:1px solid var(--bh-border); box-shadow:0 4px 22px color-mix(in srgb,var(--bh-navy) 3%,transparent); padding-bottom:1.2rem; transition:transform .2s ease,box-shadow .2s ease; }
.bh-post-grid .wp-block-post:hover { transform:translateY(-4px); box-shadow:var(--bh-shadow); }
.bh-post-grid .wp-block-post-featured-image { margin:0 0 1.25rem!important; border-radius:0; aspect-ratio: 1.55; background:var(--bh-mist) url("../images/story-cover.svg") center/cover no-repeat; }
.bh-post-grid .wp-block-post-featured-image a,.bh-post-grid .wp-block-post-featured-image img { height:100%; border-radius:0; }
.bh-post-grid .wp-block-post-terms,.bh-post-grid .wp-block-post-title,.bh-post-grid .wp-block-post-excerpt,.bh-post-grid .wp-block-post-date { margin-left:1.35rem; margin-right:1.35rem; }
.bh-post-grid .wp-block-post-terms { margin-bottom:.55rem; font-size:.68rem; letter-spacing:.1em; font-weight:800; text-transform:uppercase; color:var(--bh-green); }
.bh-post-grid .wp-block-post-terms a { text-decoration:none; color:inherit; }
.bh-post-grid .wp-block-post-title { font-size:clamp(1.15rem,1.7vw,1.45rem); margin-block:.5rem; }
.bh-post-grid .wp-block-post-excerpt { font-size:.91rem; line-height:1.64; }
.bh-post-grid .wp-block-post-excerpt__more-link { display:inline-block; font-weight:800; color:var(--bh-navy); margin-top:.45rem; }
.bh-post-grid .wp-block-post-date { font-size:.75rem; color:var(--bh-muted); }
.bh-post-grid .wp-block-query-no-results { padding:2rem; border:1px dashed var(--bh-border); border-radius:var(--bh-radius); }

/* Distinctive arcade bridge. This is intentionally a link, not a mock game UI. */
.bh-arcade { position:relative; overflow:hidden; background:var(--bh-deep); color:#fff; border-radius:26px; padding:clamp(2rem,5vw,4.5rem); }
.bh-arcade::before { content:""; position:absolute; right:-10%; top:-42%; width:45%; aspect-ratio:1; border:1px solid rgba(255,255,255,.15); border-radius:50%; pointer-events:none; }
.bh-arcade::after { content:"✳"; position:absolute; right:7%; top:18%; color:var(--bh-orange); font-size:clamp(7rem,17vw,15rem); line-height:1; opacity:.25; transform:rotate(-20deg); pointer-events:none; }
.bh-arcade .wp-block-heading { max-width:18ch; color:#fff!important; }
.bh-arcade p:not(.bh-eyebrow) { max-width:660px; color:#ccdef1; }
.bh-arcade .bh-eyebrow { color:#a9e8ee; }
.bh-arcade .wp-block-button__link { background:var(--bh-white); color:var(--bh-deep); }
.bh-arcade .wp-block-button__link:hover { background:var(--bh-orange); color:#fff; }
.bh-arcade .wp-block-columns { position:relative; z-index:1; }
.bh-gamepad { display:block; font-size:clamp(6rem,13vw,11rem); line-height:1; text-align:center; filter:drop-shadow(0 10px 36px rgba(0,0,0,.16)); transform:rotate(-15deg); }
.bh-mission { background:var(--bh-white); }
.bh-mission .wp-block-heading { max-width:650px; }
.bh-mission .bh-mission-copy { max-width:630px; font-size:1.16rem; color:var(--bh-muted); }
.bh-custom-cta { border:1px solid var(--bh-border); border-radius:var(--bh-radius); padding:2rem; background:var(--bh-cloud); }
.bh-custom-cta .wp-block-heading { margin-top:0; }

/* Footer + alternative footer layouts. */
.bh-footer { background:var(--bh-deep); color:#cee1ee; }
.bh-footer .wp-block-site-title a,.bh-footer h2,.bh-footer h3 { color:#fff; }
.bh-footer a { color:#cee1ee; }
.bh-footer a:hover { color:var(--bh-orange); }
.bh-footer .wp-block-navigation-item__content { color:#cee1ee; }
.bh-footer .wp-block-separator { opacity:.3; }
.bh-footer-brand { max-width:420px; }
.bh-footer .bh-brandmark b { color:#fff; }
.bh-footer .bh-brandmark em { color:var(--bh-orange); }
.bh-footer-copyright { font-size:.77rem; color:#9eb6c7; }
.bh-footer-note { font-size:.91rem; color:#b7cddd; }

/* Reading templates, archive and sidebar. */
.bh-page-wrap,.bh-archive-wrap { padding-block:clamp(2.8rem,6vw,5rem); }
.bh-archive-wrap .wp-block-query-title,.bh-page-wrap h1 { font-size:clamp(2.7rem,5vw,4.6rem); }
.bh-archive-description { color:var(--bh-muted); }
.bh-article-header { padding-block:clamp(2.8rem,5.5vw,5.4rem) 2.4rem; background:var(--bh-mist); }
.bh-article-header .wp-block-post-terms { color:var(--bh-green); font-weight:800; font-size:.78rem; letter-spacing:.1em; text-transform:uppercase; }
.bh-article-header .wp-block-post-terms a { color:inherit; text-decoration:none; }
.bh-article-header .wp-block-post-title { font-size:clamp(2.4rem,5vw,4.7rem); max-width:19ch; margin-inline:auto; }
.bh-article-header .wp-block-post-date,.bh-article-header .wp-block-post-author-name { color:var(--bh-muted); font-size:.89rem; }
.bh-article-cover .wp-block-post-featured-image { margin:0; }
.bh-article-cover .wp-block-post-featured-image img { border-radius:22px; object-fit:cover; max-height:570px; }
.bh-article-body { padding-block:3.2rem; }
.bh-article-body .wp-block-post-content { font-size:1.075rem; line-height:1.87; }
.bh-article-body .wp-block-post-content > p { margin-bottom:1.5em; }
.bh-article-body .wp-block-post-content :is(h2,h3,h4) { margin-top:1.55em; margin-bottom:.55em; }
.bh-article-body .wp-block-post-content blockquote { border-left:4px solid var(--bh-orange); padding-left:1.4rem; }
.bh-article-body .wp-block-post-content a:not(.wp-block-button__link) { text-decoration:underline; text-decoration-color:var(--bh-cyan); }
.bh-article-body .wp-block-post-content img { height:auto; }
.bh-article-footer { border-top:1px solid var(--bh-border); padding-top:1.5rem; }
.bh-article-footer .wp-block-post-terms a { background:var(--bh-cloud); border:1px solid var(--bh-border); border-radius:6px; padding:.35rem .65rem; text-decoration:none; font-size:.85rem; }
.bh-article-nav { padding-block:2rem 5rem; }
.bh-article-nav a { font-weight:750; text-decoration:none; }
.bh-post-comments { margin-block:2rem 4rem; }
.bh-sidebar { border:1px solid var(--bh-border); border-radius:16px; padding:1.55rem; background:var(--bh-cloud); }
.bh-sidebar .wp-block-latest-posts__list { padding-left:0; list-style:none; }
.bh-sidebar .wp-block-latest-posts__list li { margin-bottom:1rem; border-bottom:1px solid var(--bh-border); padding-bottom:.8rem; }
.bh-sidebar .wp-block-latest-posts__list a { text-decoration:none; font-weight:750; }
.bh-article-sidebar-columns { gap:clamp(2rem,4vw,4rem); align-items:start!important; }
.bh-article-sidebar-columns .bh-article-body { padding-block:0; }
.bh-404 { text-align:center; padding-block:clamp(5rem,11vw,10rem); }
.bh-404 .wp-block-heading { font-size:clamp(3.5rem,8vw,7rem); }

/* Ad placements have no visual footprint until AdSense is configured. */
.bh-ad { min-height:90px; margin:1.5rem auto; width:100%; text-align:center; clear:both; overflow:hidden; }
.bh-ad-label { display:block; font-size:.65rem; color:var(--bh-muted); letter-spacing:.08em; text-transform:uppercase; margin:0 0 .5rem; }
.bh-ad .adsbygoogle { max-width:100%; }

@media (max-width:1000px) {
  .bh-header-cta { display:none; }
  .bh-featured-query .wp-block-post { min-height:410px; }
  .bh-topics .bh-categories-grid ul.wp-block-categories-list { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .bh-post-grid .wp-block-post-template { grid-template-columns:repeat(2,minmax(0,1fr))!important; }
}
@media (max-width:781px) {
  .bh-hero-grid { gap:3.2rem!important; }
  .bh-hero-copy h1 { max-width:12ch; }
  .bh-hero-feature { margin-top:.8rem; }
  .bh-featured-query .wp-block-post { min-height:430px; }
  .bh-arcade .bh-gamepad { font-size:7rem; text-align:left; }
  .bh-article-sidebar-columns > .wp-block-column { flex-basis:100%!important; }
  .bh-announcement .bh-announcement-right { display:none; }
}
@media (max-width:600px) {
  html { scroll-padding-top:82px; }
  .bh-header { padding-block:.65rem; min-height:66px; }
  .bh-header .wp-block-site-title { font-size:1.05rem!important; }
  .bh-header .wp-block-site-tagline { font-size:.49rem!important; }
  .bh-brandmark { width:43px; font-size:1.6rem; height:36px; }
  .bh-header-brand { gap:.5rem!important; }
  .bh-hero { padding-top:3.3rem; }
  .bh-hero-copy h1 { font-size:clamp(2.8rem,12vw,4rem); }
  .bh-hero-copy .wp-block-buttons { align-items:stretch; }
  .bh-hero-copy .wp-block-buttons .wp-block-button { width:auto; }
  .bh-featured-query .wp-block-post { min-height:350px; }
  .bh-hero-bottom { margin-top:2rem; }
  .bh-topics .bh-categories-grid ul.wp-block-categories-list { grid-template-columns:1fr; gap:.7rem; }
  .bh-categories-grid ul.wp-block-categories-list li { min-height:88px; padding:1rem; }
  .bh-post-grid .wp-block-post-template { grid-template-columns:1fr!important; }
  .bh-arcade { padding:2rem 1.4rem; border-radius:16px; }
  .bh-arcade::after { font-size:7rem; right:-10%; top:0; }
  .bh-arcade .wp-block-heading { font-size:2rem!important; }
  .bh-article-header .wp-block-post-title { font-size:2.35rem; }
  .bh-article-body .wp-block-post-content { font-size:1rem; }
  .bh-sidebar { padding:1.1rem; }
}
@media (max-width:420px) {
  .bh-hero-copy h1 { font-size:2.65rem; }
  .bh-hero-badge { padding:.65rem .8rem; font-size:.6rem; }
  .bh-header .wp-block-site-tagline { display:none; }
  .bh-header-brand .wp-block-site-logo { max-width:125px; }
}
@media (prefers-reduced-motion:reduce) {
  *,*::before,*::after { animation-duration:.01ms!important; transition-duration:.01ms!important; scroll-behavior:auto!important; }
}

/* -----------------------------------------------------------
   BHUCHI HORIZON PREMIUM 3.0 — editorial design upgrade
   Lightweight, system-font, native WordPress block theme.
   ----------------------------------------------------------- */
:root {
  --bh3-serif: var(--wp--preset--font-family--serif, Georgia, serif);
  --bh3-line: color-mix(in srgb, var(--bh-navy) 12%, white);
  --bh3-paper: #fffefa;
  --bh3-radius: 22px;
}
body { color:var(--bh-ink); }
.bh3-utility { min-height:32px; padding:.38rem 0; font-size:.66rem; letter-spacing:.16em; font-weight:750; }
.bh3-utility .wp-block-paragraph,.bh3-utility p { margin:0; }
.bh3-utility-right { opacity:.88; }
.bh3-header-wrap { background:var(--bh-white); border-bottom:1px solid var(--bh3-line); z-index:100; }
.bh3-header { gap:1.25rem; padding-block:1.02rem; min-height:86px; }
.bh3-header .wp-block-site-title { font-size:1.32rem; line-height:1.06; letter-spacing:-.065em; font-weight:850; white-space:nowrap; }
.bh3-header .wp-block-site-title a { text-decoration:none; }
.bh3-header .wp-block-site-tagline { margin-top:.24rem; font-size:.56rem!important; letter-spacing:.18em; text-transform:uppercase; color:var(--bh-muted); }
.bh3-header .bh-brandmark { font-size:2.55rem; width:64px; height:48px; }
.bh3-header .bh3-main-nav { gap:clamp(.8rem,2.25vw,2.25rem); }
.bh3-header .wp-block-navigation-item__content { font-size:.9rem; font-weight:760; }
.bh3-header .wp-block-navigation-item__content:hover { color:var(--bh-orange); }
.bh3-header-actions { gap:.9rem!important; }
.bh3-header .wp-block-search { margin:0; }
.bh3-header .wp-block-search__button { display:flex; justify-content:center; align-items:center; width:42px; height:42px; border-radius:50%; padding:.55rem; background:var(--bh-cloud); color:var(--bh-navy); border:1px solid var(--bh3-line); }
.bh3-header .wp-block-search__button:hover { background:var(--bh-mist); }
.bh3-header .bh-header-cta .wp-block-button__link { background:var(--bh-navy); color:var(--bh-white); font-size:.85rem; font-weight:800; padding:.87rem 1.35rem; border-radius:999px; white-space:nowrap; }
.bh3-header .bh-header-cta .wp-block-button__link:hover { background:var(--bh-orange); }
.bh3-header .wp-block-navigation__responsive-container.is-menu-open { background:var(--bh-white); color:var(--bh-ink); }
.bh3-section { padding-block:clamp(4.4rem,7.5vw,7.5rem); }
.bh3-kicker { margin:0 0 1.45rem!important; font-size:.72rem!important; font-weight:850!important; letter-spacing:.18em; color:var(--bh-navy); text-transform:uppercase; }
.bh3-display em, .bh3-heading em, .bh3-arcade-title em, .bh3-footer-big em { font-family:var(--bh3-serif); font-weight:500; font-style:italic; letter-spacing:-.064em; }
.bh3-heading { font-size:clamp(2.4rem,4vw,4.25rem); line-height:1.09; letter-spacing:-.052em; font-weight:830; max-width:900px; margin:0; }
.bh3-heading em { color:var(--bh-green); }
.bh3-section-header { margin-bottom:clamp(2.1rem,3.5vw,3.2rem); gap:1.5rem; align-items:end!important; }
.bh3-section-aside { margin:0 0 .3rem; font-size:.7rem; font-weight:800; letter-spacing:.13em; color:var(--bh-muted); }
.bh3-intro { margin:0!important; max-width:290px; font-size:.98rem; color:var(--bh-muted); line-height:1.8; }
/* Hero: refined editorial geometry without external libraries. */
.bh3-hero { isolation:isolate; position:relative; background:linear-gradient(125deg,var(--bh3-paper) 0%,var(--bh-white) 37%,var(--bh-mist) 100%); padding-top:clamp(3.2rem,5.6vw,6.35rem); padding-bottom:2rem; overflow:clip; }
.bh3-hero::before { content:""; position:absolute; z-index:-1; top:-220px; right:-270px; width:660px; height:660px; border-radius:50%; border:1px solid color-mix(in srgb,var(--bh-cyan) 24%,transparent); box-shadow:0 0 0 70px color-mix(in srgb,var(--bh-cyan) 4%,transparent),0 0 0 142px color-mix(in srgb,var(--bh-cyan) 3%,transparent); pointer-events:none; }
.bh3-hero-grid { gap:clamp(2rem,4vw,4.8rem)!important; align-items:center!important; }
.bh3-hero-copy { padding-block:.9rem; }
.bh3-hero .bh3-kicker { display:inline-flex; align-items:center; color:var(--bh-green); margin-bottom:1.8rem!important; }
.bh3-display { max-width:11ch; font-size:clamp(3.6rem,6.2vw,6.9rem); line-height:.99!important; letter-spacing:-.07em!important; font-weight:850; color:var(--bh-navy)!important; margin:0!important; }
.bh3-display em { color:var(--bh-orange); }
.bh3-hero-lede { max-width:530px; margin:1.75rem 0 1.95rem; font-size:clamp(1.08rem,1.25vw,1.28rem); line-height:1.82; color:var(--bh-muted); }
.bh3-hero-buttons { gap:.8rem; }
.bh3-hero-buttons .wp-block-button__link { border-radius:999px; padding:1rem 1.6rem; font-weight:800; }
.bh3-btn-primary .wp-block-button__link { background:var(--bh-orange); }
.bh3-btn-primary .wp-block-button__link:hover { background:var(--bh-navy); }
.bh3-btn-outline .wp-block-button__link { background:transparent; border:1px solid var(--bh3-line)!important; color:var(--bh-navy); }
.bh3-btn-outline .wp-block-button__link:hover { background:var(--bh-navy); color:#fff; }
.bh3-hero-footnote { gap:1.1rem; margin-top:3rem; }
.bh3-hero-footnote p { color:var(--bh-muted); margin:0; font-size:.63rem; letter-spacing:.16em; font-weight:850; }
.bh3-hero-footnote p:not(:first-child)::before { content:"•"; margin-right:1.1rem; color:var(--bh-green); }
.bh3-feature { position:relative; padding-top:1.25rem; }
.bh3-feature-tag { position:absolute; top:0; left:5%; z-index:4; margin:0; color:var(--bh-navy); background:var(--bh-white); border:1px solid var(--bh3-line); border-radius:999px; padding:.67rem 1.15rem; font-size:.68rem; font-weight:850; letter-spacing:.12em; box-shadow:0 15px 40px rgba(7,29,58,.09); }
.bh3-featured-query .wp-block-post-template { padding:0; margin:0; }
.bh3-featured-query .wp-block-post { position:relative; overflow:hidden; min-height:clamp(410px,40vw,580px); border-radius:clamp(18px,2.6vw,32px); background:var(--bh-deep) url('../images/hero-landscape.svg') center/cover no-repeat; box-shadow:0 29px 70px rgba(7,29,58,.16); }
.bh3-featured-query .wp-block-post-featured-image { position:absolute; inset:0; margin:0; z-index:0; }
.bh3-featured-query .wp-block-post-featured-image a,.bh3-featured-query .wp-block-post-featured-image img { display:block; width:100%; height:100%; border-radius:0; object-fit:cover; }
.bh3-featured-query .wp-block-post::after { content:""; position:absolute; inset:0; z-index:1; background:linear-gradient(180deg,rgba(2,16,37,.02) 10%,rgba(2,19,38,.25) 47%,rgba(1,18,35,.94) 100%); pointer-events:none; }
.bh3-featured-query .bh3-feature-caption { position:absolute; left:7.5%; right:7.5%; bottom:6.5%; z-index:2; color:#fff; }
.bh3-feature-caption .wp-block-post-terms { font-size:.69rem; letter-spacing:.16em; font-weight:800; text-transform:uppercase; color:#a9eddd; margin:0 0 .65rem; }
.bh3-feature-caption .wp-block-post-terms a { color:inherit; text-decoration:none; }
.bh3-feature-caption .wp-block-post-title { font-size:clamp(1.7rem,2.45vw,2.7rem); line-height:1.19; letter-spacing:-.045em; margin:0 0 1rem; max-width:18ch; }
.bh3-feature-caption .wp-block-post-title a { text-decoration:none; color:#fff; }
.bh3-feature-caption .wp-block-post-title a:hover { color:#ffca74; }
.bh3-feature-caption .wp-block-post-date { color:#dfebf1; font-size:.8rem; }
.bh3-feature-caption .wp-block-read-more { font-size:.83rem; font-weight:800; text-decoration:none; color:#fff; }
.bh3-feature-corner { position:absolute; right:-18px; bottom:10%; z-index:3; transform:rotate(90deg) translateX(100%); transform-origin:right bottom; color:var(--bh-navy); letter-spacing:.17em; font-size:.58rem; font-weight:800; margin:0; }
.bh3-featured-query .wp-block-query-no-results { color:#fff; padding:12rem 2rem 3rem; }
.bh3-featured-query .wp-block-query-no-results h3 { color:#fff; }
.bh3-hero-bottom { border-top:1px solid var(--bh3-line); margin-top:clamp(2.6rem,4.6vw,5.2rem); padding-top:1.35rem; }
.bh3-hero-bottom p { font-size:.62rem; letter-spacing:.15em; font-weight:800; color:var(--bh-muted); margin:0; }
/* Discovery desk: magazine-style secondary stories. */
.bh3-discovery { background:var(--bh-white); }
.bh3-discovery-query .wp-block-post-template { gap:clamp(1.25rem,3vw,2.4rem); }
.bh3-discovery-query .wp-block-post { display:grid; grid-template-columns:44% minmax(0,1fr); align-items:center; overflow:hidden; border:1px solid var(--bh3-line); border-radius:var(--bh3-radius); min-width:0; background:var(--bh-white); box-shadow:0 15px 42px rgba(9,46,95,.045); }
.bh3-discovery-query .wp-block-post-featured-image { margin:0; height:100%; min-height:265px; background:var(--bh-mist) url('../images/story-cover.svg') center/cover no-repeat; }
.bh3-discovery-query .wp-block-post-featured-image a,.bh3-discovery-query .wp-block-post-featured-image img { display:block; width:100%; height:100%; border-radius:0; object-fit:cover; }
.bh3-discovery-copy { padding:1.25rem clamp(1.1rem,2vw,2rem); }
.bh3-discovery-copy .wp-block-post-terms { color:var(--bh-green); font-size:.69rem; font-weight:850; letter-spacing:.14em; text-transform:uppercase; }
.bh3-discovery-copy .wp-block-post-terms a { color:inherit; text-decoration:none; }
.bh3-discovery-copy .wp-block-post-title { font-size:clamp(1.3rem,1.6vw,1.8rem); margin:.8rem 0; letter-spacing:-.04em; }
.bh3-discovery-copy .wp-block-post-excerpt { color:var(--bh-muted); font-size:.87rem; line-height:1.66; }
.bh3-discovery-copy .wp-block-post-excerpt__more-link { font-weight:800; font-size:.82rem; text-decoration:none; color:var(--bh-navy); margin-top:.7rem; }
/* Dynamic topics: no hard-coded category slugs, all actual categories. */
.bh3-topics { background:var(--bh-cloud); border-top:1px solid var(--bh3-line); border-bottom:1px solid var(--bh3-line); }
.bh3-topic-index ul.wp-block-categories-list { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1.15rem; padding:0; list-style:none; counter-reset:topics; }
.bh3-topic-index li { position:relative; min-height:148px; display:flex; flex-wrap:wrap; align-content:center; align-items:center; gap:.4rem; counter-increment:topics; overflow:hidden; border:1px solid var(--bh3-line); border-radius:18px; background:var(--bh-white); padding:2.5rem 1.4rem 1.35rem; box-shadow:0 8px 25px rgba(9,46,95,.035); transition:transform .2s ease,border .2s ease; }
.bh3-topic-index li:hover { transform:translateY(-4px); border-color:var(--bh-cyan); }
.bh3-topic-index li::before { content:'0' counter(topics); position:absolute; top:1rem; left:1.4rem; color:var(--bh-green); font-size:.67rem; font-weight:800; letter-spacing:.09em; }
.bh3-topic-index li::after { content:'↗'; position:absolute; top:.87rem; right:1.25rem; color:var(--bh-orange); font-size:1.2rem; }
.bh3-topic-index li:nth-child(4n+2)::before { color:var(--bh-orange); }
.bh3-topic-index li:nth-child(4n+3)::before { color:var(--bh-cyan); }
.bh3-topic-index li a { font-size:clamp(1.08rem,1.35vw,1.35rem); letter-spacing:-.03em; line-height:1.2; font-weight:800; color:var(--bh-navy); text-decoration:none; }
.bh3-topic-index li a:hover { color:var(--bh-orange); }
.bh3-topic-index li .children { display:none; }
.bh3-topic-index li .cat-item-count { color:var(--bh-muted); font-size:.78rem; }
/* Latest: asymmetric editorial card grid. */
.bh3-latest { background:var(--bh-white); }
.bh3-post-grid .wp-block-post-template { gap:clamp(1.2rem,2.2vw,2rem); align-items:stretch; }
.bh3-post-grid .wp-block-post { min-width:0; border:1px solid var(--bh3-line); border-radius:var(--bh3-radius); overflow:hidden; background:var(--bh-white); transition:box-shadow .2s ease,transform .2s ease; }
.bh3-post-grid .wp-block-post:hover { box-shadow:0 18px 45px rgba(9,46,95,.09); transform:translateY(-3px); }
.bh3-post-grid .wp-block-post-featured-image { margin:0; background:var(--bh-mist) url('../images/story-cover.svg') center/cover no-repeat; aspect-ratio:1.52; border-radius:0; }
.bh3-post-grid .wp-block-post-featured-image a,.bh3-post-grid .wp-block-post-featured-image img { display:block; width:100%; height:100%; border-radius:0; object-fit:cover; }
.bh3-post-copy { padding:1.25rem 1.5rem 1.55rem; }
.bh3-post-copy .wp-block-post-terms { color:var(--bh-green); font-size:.66rem; font-weight:850; letter-spacing:.13em; text-transform:uppercase; }
.bh3-post-copy .wp-block-post-terms a { color:inherit; text-decoration:none; }
.bh3-post-copy .wp-block-post-title { font-size:clamp(1.2rem,1.6vw,1.72rem); letter-spacing:-.042em; line-height:1.23; margin:.65rem 0; }
.bh3-post-copy .wp-block-post-excerpt { font-size:.9rem; color:var(--bh-muted); line-height:1.7; }
.bh3-post-copy .wp-block-post-excerpt__more-link { text-decoration:none; font-size:.82rem; font-weight:800; color:var(--bh-navy); }
.bh3-post-copy .wp-block-post-date { font-size:.73rem; color:var(--bh-muted); margin-top:1.3rem; }
.bh3-latest-bottom { margin-top:2.8rem; }
.bh3-latest-bottom .wp-block-button__link { padding:.9rem 1.7rem; border-radius:999px; }
/* The arcade crossover is intentional, not a fake working game. */
.bh3-arcade-section { padding-block:0 clamp(4.4rem,7.5vw,7.5rem); background:var(--bh-white); }
.bh3-arcade { position:relative; color:#fff; overflow:hidden; border-radius:clamp(20px,3vw,34px); background:radial-gradient(circle at 84% 42%,#176e8a 0%,transparent 30%),linear-gradient(122deg,var(--bh-deep) 0%,var(--bh-navy) 70%,#116b86 100%); padding:clamp(2.5rem,5.6vw,6rem); }
.bh3-arcade::after { content:""; position:absolute; width:520px; height:520px; right:-125px; top:-155px; border:1px solid rgba(255,255,255,.14); border-radius:50%; box-shadow:0 0 0 70px rgba(255,255,255,.02),0 0 0 140px rgba(255,255,255,.025); pointer-events:none; }
.bh3-arcade-grid { position:relative; z-index:1; }
.bh3-arcade .bh3-kicker { color:#9ff3db; }
.bh3-arcade-title { font-size:clamp(2.5rem,4.2vw,4.9rem)!important; max-width:13ch; color:#fff!important; letter-spacing:-.055em; line-height:1.08; }
.bh3-arcade-title em { color:#ffb855; }
.bh3-arcade-description { max-width:540px; font-size:1.04rem; color:#d2e4ec; line-height:1.8; }
.bh3-arcade-button .wp-block-button__link { background:#fff; color:var(--bh-navy); border-radius:999px; padding:.95rem 1.6rem; }
.bh3-arcade-button .wp-block-button__link:hover { background:var(--bh-orange); color:#fff; }
.bh3-arcade-art { min-height:300px; display:flex; align-items:center; justify-content:center; }
.bh3-orbit { display:grid; place-items:center; position:relative; width:min(100%,340px); aspect-ratio:1; border-radius:50%; border:1px solid rgba(255,255,255,.26); transform:rotate(-9deg); }
.bh3-orbit::before { content:""; position:absolute; inset:14%; border-radius:50%; border:1px solid rgba(255,255,255,.18); }
.bh3-orbit::after { content:"✦"; position:absolute; font-size:4.5rem; line-height:1; top:-3%; right:5%; color:var(--bh-orange); }
.bh3-orbit-letter { color:white; font-size:clamp(3.4rem,6vw,6.2rem); font-weight:950; line-height:1; letter-spacing:-.09em; margin:0; }
.bh3-orbit-letter span { color:var(--bh-orange); }
.bh3-manifesto { background:linear-gradient(135deg,var(--bh-mist),var(--bh-cloud)); text-align:center; }
.bh3-manifesto-inner { max-width:980px; }
.bh3-manifesto .bh3-kicker { color:var(--bh-green); }
.bh3-manifesto-quote { margin:0 auto; font-family:var(--bh3-serif)!important; font-weight:500!important; font-style:italic; font-size:clamp(2.4rem,4.6vw,5.2rem)!important; letter-spacing:-.05em; line-height:1.18; }
.bh3-manifesto-quote span { color:var(--bh-orange); }
.bh3-manifesto-note { color:var(--bh-muted); font-size:1.08rem; max-width:570px; margin:1.7rem auto 0; }
/* Footer: clean visual hierarchy, useful nav and gentle brand confidence. */
.bh3-footer { padding-block:clamp(4.5rem,7vw,7rem) 1.6rem; color:#d6e5f3; background:var(--bh-deep); }
.bh3-footer .wp-block-heading, .bh3-footer .wp-block-site-title a { color:#fff; }
.bh3-footer .wp-block-site-title { font-size:1.7rem; font-weight:850; }
.bh3-footer .wp-block-site-title a { text-decoration:none; }
.bh3-footer a { color:#d6e5f3; }
.bh3-footer a:hover { color:#ffb35c; }
.bh3-footer-top { gap:2rem; padding-bottom:clamp(2rem,4vw,4.5rem); }
.bh3-footer-eyebrow { color:#9decda; font-size:.69rem; font-weight:850; letter-spacing:.17em; }
.bh3-footer-big { font-size:clamp(2.2rem,4vw,4.3rem); max-width:730px; line-height:1.1; letter-spacing:-.06em; margin:0; }
.bh3-footer-big em { color:#ffb25a; }
.bh3-footer .bh3-footer-button .wp-block-button__link { background:#fff; color:var(--bh-deep); padding:1rem 1.5rem; border-radius:999px; font-weight:800; }
.bh3-footer .bh3-footer-button .wp-block-button__link:hover { background:var(--bh-orange); color:#fff; }
.bh3-footer hr { border-color:rgba(255,255,255,.21); }
.bh3-footer-cols { gap:3rem; padding-block:clamp(2rem,3.7vw,4rem); }
.bh3-footer-cols h3 { margin-top:0; font-size:1rem; color:#fff; }
.bh3-footer-cols .wp-block-navigation { gap:.6rem; }
.bh3-footer-description { max-width:425px; color:#b5cadb; line-height:1.78; font-size:.94rem; }
.bh3-footer-bottom { padding-top:1.6rem; }
.bh3-footer-bottom p { color:#91aec1; font-size:.71rem; letter-spacing:.06em; margin:0; }
/* Nicer reading on individual posts, with an unobtrusive progress line. */
.bh3-article-header { position:relative; background:linear-gradient(125deg,var(--bh3-paper),var(--bh-mist)); }
.bh3-article-header .wp-block-post-title { font-size:clamp(2.6rem,5.1vw,5.6rem); max-width:20ch; letter-spacing:-.062em; }
.bh3-article-header .wp-block-post-terms { letter-spacing:.16em; }
.bh3-reading-time { font-size:.88rem; color:var(--bh-muted); }
.bh-article-body .wp-block-post-content { font-size:clamp(1.04rem,1.14vw,1.17rem); line-height:1.94; }
.bh-article-body .wp-block-post-content > p:first-of-type::first-letter { font-family:var(--bh3-serif); font-size:1.28em; font-weight:700; }
.bh3-reader-track { position:fixed; left:0; right:0; top:0; width:100%; height:3px; z-index:999; pointer-events:none; }
.bh3-reader-track span { display:block; width:100%; height:100%; transform:scaleX(0); transform-origin:left; background:linear-gradient(90deg,var(--bh-cyan),var(--bh-green),var(--bh-orange)); }
@media(min-width:1001px){ .bh3-header .wp-block-navigation { flex:1; justify-content:center; } }
@media(max-width:1180px){
 .bh3-header .bh-header-cta { display:none; }
 .bh3-feature-corner { display:none; }
 .bh3-discovery-query .wp-block-post { grid-template-columns:1fr; }
 .bh3-discovery-query .wp-block-post-featured-image { aspect-ratio:1.8; min-height:0; }
 .bh3-topic-index ul.wp-block-categories-list { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media(max-width:900px){
 .bh3-header .bh3-search { display:none; }
 .bh3-hero-grid { gap:2.3rem!important; }
 .bh3-display { font-size:clamp(3.25rem,7vw,5.2rem); }
 .bh3-featured-query .wp-block-post { min-height:420px; }
 .bh3-hero-footnote { margin-top:2rem; }
 .bh3-topic-index ul.wp-block-categories-list { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .bh3-post-grid .wp-block-post-template { grid-template-columns:repeat(2,minmax(0,1fr))!important; }
 .bh3-arcade-art { min-height:220px; }
}
@media(max-width:781px){
 .bh3-header { min-height:71px; padding-block:.75rem; }
 .bh3-header .bh-brandmark { font-size:2.1rem; width:52px; height:40px; }
 .bh3-header .wp-block-site-title { font-size:1.1rem!important; }
 .bh3-hero { padding-top:3.5rem; }
 .bh3-hero-grid { gap:2.5rem!important; }
 .bh3-display { max-width:12ch; font-size:clamp(3.3rem,9vw,5rem); }
 .bh3-hero-lede { max-width:560px; }
 .bh3-featured-query .wp-block-post { min-height:470px; }
 .bh3-discovery-query .wp-block-post-template { grid-template-columns:1fr!important; }
 .bh3-discovery-query .wp-block-post { grid-template-columns:40% minmax(0,1fr); }
 .bh3-discovery-query .wp-block-post-featured-image { height:100%; aspect-ratio:unset; min-height:200px; }
 .bh3-arcade-art { min-height:220px; }
 .bh3-orbit { max-width:260px; }
 .bh3-arcade { padding:2.5rem; }
}
@media(max-width:600px){
 .bh3-utility-right { display:none; }
 .bh3-utility .wp-block-group { justify-content:center!important; }
 .bh3-header { min-height:64px; }
 .bh3-header .wp-block-site-tagline { display:none; }
 .bh3-hero { padding-top:3rem; }
 .bh3-hero .bh3-kicker { font-size:.63rem!important; }
 .bh3-display { font-size:clamp(3.3rem,12vw,4.7rem); line-height:1.03!important; }
 .bh3-hero-lede { font-size:1.02rem; line-height:1.7; }
 .bh3-hero-buttons { gap:.6rem; }
 .bh3-hero-buttons .wp-block-button__link { padding:.88rem 1.25rem; font-size:.87rem; }
 .bh3-hero-footnote { gap:.5rem; }
 .bh3-hero-footnote p { font-size:.54rem; }
 .bh3-hero-footnote p:not(:first-child)::before { margin-right:.5rem; }
 .bh3-featured-query .wp-block-post { min-height:390px; border-radius:20px; }
 .bh3-feature-tag { font-size:.58rem; }
 .bh3-feature-caption .wp-block-post-title { font-size:1.8rem; }
 .bh3-hero-bottom { margin-top:2.5rem; }
 .bh3-hero-bottom p { font-size:.53rem; }
 .bh3-heading { font-size:clamp(2.1rem,9.5vw,3rem); }
 .bh3-discovery-query .wp-block-post { display:block; }
 .bh3-discovery-query .wp-block-post-featured-image { aspect-ratio:1.7; height:auto; }
 .bh3-discovery-copy { padding:1.35rem; }
 .bh3-topic-index ul.wp-block-categories-list { gap:.75rem; }
 .bh3-topic-index li { min-height:125px; padding:2rem .95rem 1rem; }
 .bh3-topic-index li::before { top:.75rem; left:.95rem; }
 .bh3-topic-index li::after { top:.65rem; right:.85rem; }
 .bh3-topic-index li a { font-size:1rem; }
 .bh3-post-grid .wp-block-post-template { grid-template-columns:1fr!important; }
 .bh3-post-copy { padding:1.2rem; }
 .bh3-arcade { padding:2.15rem 1.45rem; }
 .bh3-arcade-art { display:none; }
 .bh3-arcade-title { font-size:2.6rem!important; }
 .bh3-footer-top { align-items:flex-start!important; }
 .bh3-footer-big { font-size:2.65rem; }
 .bh3-footer-cols { gap:1.3rem; }
 .bh3-footer-bottom { gap:.5rem; }
}
@media(max-width:390px){
 .bh3-topic-index ul.wp-block-categories-list { grid-template-columns:1fr; }
 .bh3-topic-index li { min-height:100px; }
 .bh3-hero-footnote p { font-size:.49rem; }
 .bh3-hero-bottom p:last-child { display:none; }
}
@media(prefers-reduced-motion:reduce){
 .bh3-post-grid .wp-block-post,.bh3-topic-index li { transition:none!important; transform:none!important; }
}
/* Consistent contrast even when a footer heading is inserted manually. */
.bh3-footer .bh3-footer-big { color:#fff!important; }
.bh3-utility { background:var(--bh-navy); color:var(--bh-white); }
.bh3-utility p { color:var(--bh-white); }
@media(max-width:600px){
  .bh3-hero-buttons .wp-block-button__link { padding:.82rem .92rem; font-size:.8rem; }
}
/* Interior templates share the same premium visual language. */
.bh3-archive-hero,.bh3-page-head { padding-block:clamp(3.5rem,6vw,6rem); background:linear-gradient(120deg,var(--bh3-paper),var(--bh-mist)); border-bottom:1px solid var(--bh3-line); }
.bh3-archive-head-inner .wp-block-query-title, .bh3-archive-head-inner h1,.bh3-page-head .wp-block-post-title { font-size:clamp(2.6rem,5.4vw,5.7rem)!important; font-weight:830; max-width:16ch; line-height:1.09; letter-spacing:-.06em; color:var(--bh-navy); margin:.4rem 0 1rem; }
.bh3-archive-head-inner em { font-family:var(--bh3-serif);font-weight:500;color:var(--bh-orange); }
.bh3-archive-head-inner p,.bh3-archive-description { max-width:620px; color:var(--bh-muted); font-size:1.1rem; line-height:1.8; }
.bh3-archive-stories { padding-block:clamp(2.5rem,5vw,5.5rem); }
.bh3-archive-stories .wp-block-query-pagination { margin-top:3.2rem; }
.bh3-archive-stories .wp-block-post-template { list-style:none; }
.bh3-search-page { max-width:600px; }
.bh3-page-content { padding-block:clamp(2.5rem,5vw,5rem); }
.bh3-page-content .wp-block-post-featured-image { margin-bottom:2.5rem; }
.bh3-page-content .wp-block-post-featured-image img { border-radius:var(--bh3-radius); }
.bh3-page-content .wp-block-post-content { line-height:1.86; }
.bh3-not-found { text-align:center; padding-block:clamp(5rem,10vw,10rem); }
.bh3-not-found h1 { font-size:clamp(6rem,16vw,13rem); margin:0 0 .4rem; letter-spacing:-.1em; line-height:.9; }
.bh3-not-found h1 span { color:var(--bh-orange); }
.bh3-not-found h2 { font-size:clamp(2rem,3vw,3rem); max-width:600px; margin-inline:auto; }
.bh3-not-found > p { max-width:520px; color:var(--bh-muted); margin:1.3rem auto; }
.bh3-not-found .wp-block-search { max-width:530px; margin:2rem auto; }
.bh3-not-found .wp-block-buttons { justify-content:center; }
@media(max-width:600px){
 .bh3-archive-hero,.bh3-page-head { padding-block:3.5rem; }
 .bh3-archive-head-inner .wp-block-query-title,.bh3-archive-head-inner h1,.bh3-page-head .wp-block-post-title { font-size:2.9rem!important; }
 .bh3-archive-stories { padding-block:2.8rem; }
}
