/* Weihnachtswebsite: observed legacy content, 30 October 2026.
 * Load AFTER every existing BBX stylesheet. Requires the existing body class.
 * Preserves text, images, links, forms, visibility, sliders and native geometry.
 * Source inventory: observed-inline-layout.json + the 24 public-before HTMLs.
 */
body.bbx-global-refresh {
  --bbx-shell-green: #143c31;
  --bbx-shell-deep: #102f27;
  --bbx-shell-red: #a72e32;
  --bbx-shell-ink: #263b33;
  --bbx-shell-muted: #5d6f64;
  --bbx-shell-line: #dce2d8;
  --bbx-shell-paper: #f6f3ea;
  --bbx-shell-white: #fffdf8;
  --bbx-shell-focus: #a72e32;
  --bbx-row-heading-size: clamp(23px,2.15vw,29px);
}

/* Observed nested .mh copy was outside the old direct-child heading rules. */
body.bbx-global-refresh #main :is(.fusion-text,.fusion-accordian .panel-body),
body.bbx-global-refresh #main :is(.fusion-text,.fusion-accordian .panel-body) .mh,
body.bbx-global-refresh #main .fusion-accordian .panel-body,
body.bbx-global-refresh #main .fusion-content-boxes .content-container {
  color: var(--bbx-shell-ink);
  font-family: var(--bbx-shell-sans);
  font-size: 16px;
  line-height: 1.65;
  overflow-wrap: break-word;
}
body.bbx-global-refresh #main :is(.fusion-text,.fusion-accordian .panel-body) :is(p,li,dt,dd,blockquote) {
  font-family: var(--bbx-shell-sans) !important;
  line-height: 1.65;
}
body.bbx-global-refresh #main .fusion-column-wrapper > :is(p,ul,ol,blockquote),
body.bbx-global-refresh #main .project-description > :is(p,ul,ol,blockquote),
body.bbx-global-refresh #main .project-info {
  color: var(--bbx-shell-ink);
  font: 400 16px/1.65 var(--bbx-shell-sans);
}
body.bbx-global-refresh #main :is(.fusion-text,.fusion-accordian .panel-body) p {
  margin-block: 0 1.25em;
}
body.bbx-global-refresh #main :is(.fusion-text,.fusion-accordian .panel-body) :is(p,li) > span[style] {
  font-family: inherit !important;
  font-size: inherit !important;
}
body.bbx-global-refresh #main :is(.fusion-text,.fusion-accordian .panel-body) > :last-child,
body.bbx-global-refresh #main :is(.fusion-text,.fusion-accordian .panel-body) .mh > :last-child {
  margin-bottom: 0;
}

/* Ordinary article headings, including nested paragraphs and the old title
 * component. Existing brochure hero/pullquote and slider titles keep their scale. */
body.bbx-global-refresh #main :is(.fusion-text,.fusion-accordian .panel-body) :is(h1,h2,h3,h4,h5,h6),
body.bbx-global-refresh #main .fusion-column-wrapper > :is(h1,h2,h3,h4,h5,h6),
body.bbx-global-refresh #main .fusion-title :is(h1,h2,h3,h4,h5,h6),
body.bbx-global-refresh #main .fusion-post-title,
body.bbx-global-refresh #main .project-description > h3,
body.bbx-global-refresh #main .project-info > h3,
body.bbx-global-refresh #main .project-info-box > h4,
body.bbx-global-refresh #main .fusion-sharing-box > h4,
body.bbx-global-refresh #main .comment-reply-title,
body.bbx-global-refresh #main .fusion-content-boxes .content-box-heading,
body.bbx-global-refresh .fusion-page-title-captions h1 {
  color: var(--bbx-shell-green) !important;
  font-family: var(--bbx-shell-serif) !important;
  font-weight: 400 !important;
  letter-spacing: -.025em !important;
  text-transform: none;
  text-wrap: balance;
  overflow-wrap: break-word;
}
body.bbx-global-refresh #main :is(.fusion-text,.fusion-accordian .panel-body) :is(h1,h2,h3,h4,h5,h6) :is(span,strong,b,em),
body.bbx-global-refresh #main .fusion-column-wrapper > :is(h1,h2,h3,h4,h5,h6) :is(span,strong,b,em),
body.bbx-global-refresh #main .fusion-title :is(h1,h2,h3,h4,h5,h6) :is(span,strong,b,em),
body.bbx-global-refresh #main .fusion-content-boxes .content-box-heading :is(span,strong,b) {
  color: inherit !important;
  caret-color: inherit !important;
  font-family: inherit !important;
  font-size: inherit !important;
  font-weight: inherit !important;
  line-height: inherit !important;
}
body.bbx-global-refresh #main :is(.fusion-text,.fusion-accordian .panel-body) h1,
body.bbx-global-refresh #main .fusion-column-wrapper > h1,
body.bbx-global-refresh .fusion-page-title-captions h1 {
  font-size: clamp(32px,3.5vw,48px) !important;
  line-height: 1.15 !important;
  margin-block: 0 24px;
}
body.bbx-global-refresh #main :is(.fusion-text,.fusion-accordian .panel-body) h2,
body.bbx-global-refresh #main .fusion-column-wrapper > h2,
body.bbx-global-refresh #main .fusion-post-title {
  font-size: clamp(27px,2.6vw,36px) !important;
  line-height: 1.2 !important;
  margin-block: 1.35em .65em;
}
body.bbx-global-refresh #main :is(.fusion-text,.fusion-accordian .panel-body) h3,
body.bbx-global-refresh #main .fusion-column-wrapper > h3,
body.bbx-global-refresh #main .project-description > h3,
body.bbx-global-refresh #main .project-info > h3,
body.bbx-global-refresh #main .comment-reply-title {
  font-size: clamp(23px,2.15vw,29px) !important;
  line-height: 1.25 !important;
  margin-block: 1.25em .65em;
}
body.bbx-global-refresh #main :is(.fusion-text,.fusion-accordian .panel-body) :is(h4,h5,h6),
body.bbx-global-refresh #main .fusion-column-wrapper > :is(h4,h5,h6),
body.bbx-global-refresh #main .project-info-box > h4,
body.bbx-global-refresh #main .fusion-sharing-box > h4 {
  font-size: clamp(20px,1.75vw,24px) !important;
  line-height: 1.3 !important;
  margin-block: 1.2em .65em;
}
body.bbx-global-refresh #main .fusion-post-title a {
  color: inherit;
  font: inherit;
}
body.bbx-global-refresh #main .fusion-post-title a:is(:hover,:focus-visible) {
  color: var(--bbx-shell-red);
}
body.bbx-global-refresh #main :is(.fusion-post-content,.project-info,.fusion-portfolio-meta,.fusion-meta-info) a:not(.fusion-button):not(.button),
body.bbx-global-refresh #main .fusion-column-wrapper > :is(p,ul,ol) a:not(.fusion-button):not(.button) {
  color: var(--bbx-shell-green);
  text-underline-offset: 3px;
}
body.bbx-global-refresh #main :is(.fusion-post-content,.project-info,.fusion-portfolio-meta,.fusion-meta-info) a:not(.fusion-button):not(.button):is(:hover,:focus-visible),
body.bbx-global-refresh #main .fusion-column-wrapper > :is(p,ul,ol) a:not(.fusion-button):not(.button):is(:hover,:focus-visible) {
  color: var(--bbx-shell-red);
}
/* The existing title bar used a fixed theme height. Let long city/article
 * titles wrap naturally; an already hidden shop bar stays hidden. */
body.bbx-global-refresh .fusion-page-title-bar {
  height: auto !important;
  min-height: 0;
  padding-block: 24px;
  background-color: var(--bbx-shell-paper);
}
body.bbx-global-refresh .fusion-page-title-row {
  height: auto;
  min-height: 0;
}
body.bbx-global-refresh .fusion-page-title-captions h1 { margin-bottom: 0; }
body.bbx-global-refresh #main :is(.fusion-text,.fusion-accordian .panel-body) > :is(h1,h2,h3,h4,h5,h6):first-child,
body.bbx-global-refresh #main :is(.fusion-text,.fusion-accordian .panel-body) .mh > :is(h1,h2,h3,h4,h5,h6):first-child {
  margin-top: 0;
}
/* Legal credits are supporting text, even where the old author used h6. */
body.bbx-global-refresh.page-id-859 #main :is(.fusion-text,.fusion-accordian .panel-body) h6 {
  font: 400 13px/1.55 var(--bbx-shell-sans) !important;
  color: var(--bbx-shell-muted) !important;
}

/* Exact obsolete inline text colours observed on old home/legal/reference copy.
 * Brand images, SVG paths, status badges and form errors are not selected. */
body.bbx-global-refresh #main :is(.fusion-text,.fusion-accordian .panel-body) :is(span,font)[style*="#ff9900" i],
body.bbx-global-refresh #main :is(.fusion-text,.fusion-accordian .panel-body) :is(span,font)[style*="#ff9800" i],
body.bbx-global-refresh #main :is(.fusion-text,.fusion-accordian .panel-body) :is(span,font)[style*="#800000" i],
body.bbx-global-refresh #main :is(.fusion-text,.fusion-accordian .panel-body) :is(span,font)[style*="#821818" i],
body.bbx-global-refresh #main :is(.fusion-text,.fusion-accordian .panel-body) :is(span,font)[style*="#960000" i] {
  color: var(--bbx-shell-green) !important;
  caret-color: var(--bbx-shell-green) !important;
}
body.bbx-global-refresh #main :is(.fusion-text,.fusion-accordian .panel-body) span[style*="#d10808" i] {
  color: var(--bbx-shell-red) !important;
  caret-color: var(--bbx-shell-red) !important;
}
body.bbx-global-refresh #main :is(.fusion-text,.fusion-accordian .panel-body) :is(p,span)[style*="#808080" i],
body.bbx-global-refresh #main :is(.fusion-text,.fusion-accordian .panel-body) :is(p,span)[style*="#999999" i],
body.bbx-global-refresh #main :is(.fusion-text,.fusion-accordian .panel-body) p[style*="#26282a" i] {
  color: var(--bbx-shell-muted) !important;
}
body.bbx-global-refresh #main :is(.fusion-text,.fusion-accordian .panel-body) a:not(.fusion-button):not(.button) {
  color: var(--bbx-shell-green);
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}
body.bbx-global-refresh #main :is(.fusion-text,.fusion-accordian .panel-body) a:not(.fusion-button):not(.button):is(:hover,:focus-visible) {
  color: var(--bbx-shell-red);
}
body.bbx-global-refresh #main :is(.fusion-text,.fusion-accordian .panel-body) a:focus-visible {
  outline: 3px solid var(--bbx-shell-red);
  outline-offset: 4px;
}

/* City and Nikolaus articles: matching rhythm, readable measure, full content.
 * No column reshuffle and no truncation of the numbered steps or FAQs. */
body.bbx-global-refresh #main :is(.fusion-text,.fusion-accordian .panel-body) .mh {
  max-width: 1040px;
  margin-inline: auto;
}
body.bbx-global-refresh #main :is(.fusion-text,.fusion-accordian .panel-body) .mh .mh-lead {
  max-width: 75ch;
  font-size: clamp(18px,1.6vw,20px);
  line-height: 1.65;
  color: var(--bbx-shell-ink);
  margin-bottom: 28px;
}
body.bbx-global-refresh #main :is(.fusion-text,.fusion-accordian .panel-body) .mh :is(.mh-steps,.mh-check) {
  margin-block: 0 28px;
  padding-left: 1.5em;
}
body.bbx-global-refresh #main :is(.fusion-text,.fusion-accordian .panel-body) .mh :is(.mh-steps,.mh-check) > li {
  margin-block: 0 12px;
  padding-left: .35em;
}
body.bbx-global-refresh #main :is(.fusion-text,.fusion-accordian .panel-body) .mh :is(.mh-steps,.mh-check) > li::marker,
body.bbx-global-refresh #main :is(.fusion-text,.fusion-accordian .panel-body) .mh .mh-check > li::before {
  color: var(--bbx-shell-green);
}
body.bbx-global-refresh #main :is(.fusion-text,.fusion-accordian .panel-body) .mh-faq {
  padding-top: 10px;
  margin-top: 28px;
  border-top: 1px solid var(--bbx-shell-line);
}
body.bbx-global-refresh #main :is(.fusion-text,.fusion-accordian .panel-body) .mh-faq details {
  margin-block: 0 12px;
  padding: 18px 20px;
  background: var(--bbx-shell-paper);
  border: 1px solid var(--bbx-shell-line);
  border-radius: 10px;
}
body.bbx-global-refresh #main :is(.fusion-text,.fusion-accordian .panel-body) .mh-faq summary {
  color: var(--bbx-shell-green);
  font: 400 clamp(20px,1.75vw,24px)/1.3 var(--bbx-shell-serif);
  cursor: pointer;
}
body.bbx-global-refresh #main :is(.fusion-text,.fusion-accordian .panel-body) .mh-faq details[open] summary {
  margin-bottom: 14px;
}
body.bbx-global-refresh #main :is(.fusion-text,.fusion-accordian .panel-body) .mh-faq summary:is(:hover,:focus-visible) {
  color: var(--bbx-shell-red);
}
body.bbx-global-refresh #main :is(.fusion-text,.fusion-accordian .panel-body) .mh-faq summary:focus-visible {
  outline: 3px solid var(--bbx-shell-red);
  outline-offset: 5px;
}

/* Native content-box/accordion variables are inline in the observed HTML.
 * Override their components, not arbitrary descendants or native visibility. */
body.bbx-global-refresh #main .fusion-content-boxes {
  --awb-title-color: #143c31 !important;
  --awb-body-color: #263b33 !important;
  --awb-hover-accent-color: #a72e32 !important;
  --awb-circle-hover-accent-color: #a72e32 !important;
  --awb-backgroundcolor: #f6f3ea !important;
}
body.bbx-global-refresh #main .fusion-content-boxes .content-box-column {
  --awb-backgroundcolor: #f6f3ea !important;
}
body.bbx-global-refresh #main .fusion-content-boxes .content-box-heading {
  --h2_typography-font-size: 29px !important;
  font-size: clamp(23px,2.15vw,29px) !important;
  line-height: 1.25 !important;
  margin-block: 0 18px;
}
body.bbx-global-refresh #main .fusion-content-boxes .fontawesome-icon.circle-yes {
  background-color: var(--bbx-shell-green) !important;
  border-color: var(--bbx-shell-green) !important;
  color: var(--bbx-shell-white) !important;
}
body.bbx-global-refresh #main .fusion-accordian {
  --awb-border-color: #dce2d8 !important;
  --awb-divider-color: #dce2d8 !important;
  --awb-divider-hover-color: #dce2d8 !important;
  --awb-icon-box-color: #143c31 !important;
  --awb-toggle-hover-accent-color: #a72e32 !important;
}
body.bbx-global-refresh #main .fusion-accordian .panel-title.toggle > a {
  color: var(--bbx-shell-green) !important;
  font: 400 clamp(21px,1.9vw,26px)/1.3 var(--bbx-shell-serif) !important;
  text-wrap: balance;
}
body.bbx-global-refresh #main .fusion-accordian .panel-title.toggle > a:is(:hover,:focus-visible) {
  color: var(--bbx-shell-red) !important;
}
body.bbx-global-refresh #main .fusion-separator .fusion-separator-border,
body.bbx-global-refresh #main .fusion-separator .icon-wrapper {
  --awb-sep-color: #dce2d8 !important;
  border-color: var(--bbx-shell-line) !important;
}
body.bbx-global-refresh #main .fusion-separator .icon-wrapper > i {
  color: var(--bbx-shell-green) !important;
}

/* Native catalogue titles are editorial; prices, quantity/date controls and
 * validation messages are deliberately absent from this selector list. */
body.bbx-global-refresh #main :is(.product_title,.product-title,.woocommerce-loop-category__title),
body.bbx-global-refresh #main .woocommerce :is(.col-1,.col-2) > h2,
body.bbx-global-refresh #main .up-sells > h2 {
  color: var(--bbx-shell-green) !important;
  font-family: var(--bbx-shell-serif) !important;
  font-weight: 400 !important;
  letter-spacing: -.02em;
  line-height: 1.25 !important;
  text-wrap: balance;
}
body.bbx-global-refresh #main :is(.product-title,.woocommerce-loop-category__title) {
  font-size: clamp(20px,1.75vw,24px) !important;
}
body.bbx-global-refresh #main :is(.product_title,.up-sells > h2) {
  font-size: clamp(27px,2.6vw,36px) !important;
}
body.bbx-global-refresh #main .product-title a {
  color: inherit !important;
}
body.bbx-global-refresh #main .product-title a:is(:hover,:focus-visible) {
  color: var(--bbx-shell-red) !important;
}
/* The observed Gravity HTML explanations keep their emphasis and compact size. */
body.bbx-global-refresh #main .gfield_html :is(h3,h4) {
  font: 400 20px/1.35 var(--bbx-shell-serif);
  color: var(--bbx-shell-green);
}
body.bbx-global-refresh #main .gfield_html :is(h3,h4) span[style*="#ff0000" i] {
  color: var(--bbx-shell-red) !important;
}
/* Additional native submit controls observed in the extended page inventory.
 * Paint only: no display, action, name, disabled or submission-state changes. */
body.bbx-global-refresh #main :is(
  input#comment-submit.fusion-button[type="submit"],
  button.woocommerce-form-login__submit[type="submit"],
  button.woocommerce-form-register__submit[type="submit"]
) {
  box-sizing: border-box;
  min-height: 50px;
  max-width: 100%;
  padding: 13px 22px !important;
  border: 1px solid var(--bbx-shell-green) !important;
  border-radius: 5px !important;
  background: var(--bbx-shell-green) !important;
  color: var(--bbx-shell-white) !important;
  font: 650 14px/1.45 var(--bbx-shell-sans) !important;
  white-space: normal;
  text-shadow: none !important;
  box-shadow: none !important;
}
body.bbx-global-refresh #main :is(
  input#comment-submit.fusion-button[type="submit"],
  button.woocommerce-form-login__submit[type="submit"],
  button.woocommerce-form-register__submit[type="submit"]
):not(:disabled):not([disabled]):not([aria-disabled="true"]):not(.disabled):not(.loading):is(:hover,:focus-visible) {
  background: var(--bbx-shell-red) !important;
  border-color: var(--bbx-shell-red) !important;
}
body.bbx-global-refresh #main :is(
  input#comment-submit.fusion-button[type="submit"],
  button.woocommerce-form-login__submit[type="submit"],
  button.woocommerce-form-register__submit[type="submit"]
):is(:disabled,[disabled],[aria-disabled="true"],.disabled) {
  background: #e0e6df !important;
  border-color: #c5cec4 !important;
  color: #4f6156 !important;
}
body.bbx-global-refresh #main :is(
  input#comment-submit.fusion-button[type="submit"],
  button.woocommerce-form-login__submit[type="submit"],
  button.woocommerce-form-register__submit[type="submit"]
):focus-visible {
  outline: 3px solid var(--bbx-shell-red);
  outline-offset: 3px;
}

/* Observed portfolio overlay titles retain their original hover/click surface. */
body.bbx-global-refresh #main .fusion-image-wrapper .fusion-rollover {
  background: linear-gradient(to top,#102f27,#143c31) !important;
}
body.bbx-global-refresh #main .fusion-rollover-title {
  color: #fffdf8 !important;
  font: 400 clamp(20px,1.75vw,24px)/1.3 var(--bbx-shell-serif) !important;
  text-wrap: balance;
}
body.bbx-global-refresh #main .fusion-rollover-title-link,
body.bbx-global-refresh #main .fusion-rollover-categories a {
  color: #fffdf8 !important;
}
body.bbx-global-refresh #main .fusion-post-content {
  color: var(--bbx-shell-ink);
  font: 400 16px/1.65 var(--bbx-shell-sans);
}
/* Brochure process numbers were the remaining decorative gold/brown text. */
body.bbx-global-refresh .bbx { --bbx-gold: #a72e32; }
body.bbx-global-refresh .bbx .bbx-step-number { color: var(--bbx-shell-red); }

/* Footer-mounted audience dialog is outside #main. */
body.bbx-global-refresh #bbx-audience-dialog h2 {
  font-family: var(--bbx-shell-serif) !important;
  font-weight: 400 !important;
  letter-spacing: -.025em;
  line-height: 1.2;
}

/* Contract with heading-rows.js: only measured horizontal sibling headings
 * receive this attribute. min-height is assigned per row, never clipped. */
body.bbx-global-refresh #main .bbx-nav-grid { --bbx-row-heading-size: 18px; }
body.bbx-global-refresh #main .bbx-role-grid { --bbx-row-heading-size: 22px; }
body.bbx-global-refresh #main ul.products { --bbx-row-heading-size: clamp(20px,1.75vw,24px); }
body.bbx-global-refresh #main [data-bbx-row-heading="1"][data-bbx-row-heading] {
  height: auto !important;
  min-block-size: 0 !important;
  max-height: none !important;
  overflow: visible !important;
  -webkit-line-clamp: unset !important;
  font-family: var(--bbx-shell-serif) !important;
  font-size: var(--bbx-row-heading-size) !important;
  font-weight: 400 !important;
  line-height: 1.25 !important;
  letter-spacing: -.025em !important;
  margin-block: 0 20px !important;
  text-wrap: balance;
}
body.bbx-global-refresh #main [data-bbx-row-heading="1"] :is(span,font,strong,b,a) {
  font-family: inherit !important;
  font-size: inherit !important;
  font-weight: inherit !important;
  line-height: inherit !important;
}
@media (max-width:760px) {
  body.bbx-global-refresh #main :is(.fusion-text,.fusion-accordian .panel-body) .mh-faq details { padding: 16px; }
  body.bbx-global-refresh #main :is(.fusion-text,.fusion-accordian .panel-body) .mh .mh-lead { font-size: 18px; }
}
@media (prefers-reduced-motion:reduce) {
  body.bbx-global-refresh #main :is(.fusion-text,.fusion-accordian .panel-body) .mh-faq summary { scroll-behavior: auto; }
}

/* Consistent next step at the end of editorial and service pages. */
body.bbx-global-refresh #main .bbx-shop-cta {
  box-sizing: border-box;
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  align-items: center;
  gap: 24px 40px;
  max-width: 1248px;
  margin: 48px auto 24px;
  padding: clamp(24px,3vw,40px);
  background: var(--bbx-shell-paper);
  border: 1px solid var(--bbx-shell-line);
  border-radius: 10px;
}
body.bbx-global-refresh #main .bbx-shop-cta h2 {
  color: var(--bbx-shell-green) !important;
  font: 400 clamp(25px,2.4vw,32px)/1.2 var(--bbx-shell-serif) !important;
  margin: 0 0 14px;
  letter-spacing: -.025em;
  text-wrap: balance;
}
body.bbx-global-refresh #main .bbx-shop-cta p {
  color: var(--bbx-shell-ink);
  font: 400 16px/1.65 var(--bbx-shell-sans);
  max-width: 68ch;
  margin: 0;
}
body.bbx-global-refresh #main a.bbx-shop-cta-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 50px;
  box-sizing: border-box;
  max-width: 100%;
  padding: 13px 22px;
  border: 1px solid var(--bbx-shell-green);
  border-radius: 5px;
  background: var(--bbx-shell-green);
  color: var(--bbx-shell-white);
  font: 650 14px/1.45 var(--bbx-shell-sans);
  text-align: center;
  text-decoration: none;
}
body.bbx-global-refresh #main a.bbx-shop-cta-button:is(:hover,:focus-visible) {
  background: var(--bbx-shell-red);
  border-color: var(--bbx-shell-red);
  color: var(--bbx-shell-white);
}
body.bbx-global-refresh #main a.bbx-shop-cta-button:focus-visible {
  outline: 3px solid var(--bbx-shell-red);
  outline-offset: 4px;
}
@media (max-width:760px) {
  body.bbx-global-refresh #main .bbx-shop-cta {
    grid-template-columns: minmax(0,1fr);
    margin-top: 32px;
  }
  body.bbx-global-refresh #main a.bbx-shop-cta-button { justify-self: start; }
}

/* 1.0.17: native 320px preview confirmed clipping in these two legacy
 * homepage icon/title tables. Stack only these headings on narrow screens;
 * preserve their text, icons, typography and every wider layout. */
@media (max-width:480px) {
  body.bbx-global-refresh #post-535 :is(.fusion-content-boxes-2,.fusion-content-boxes-3) .heading-with-icon {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 14px;
    width: 100%;
    max-width: 100%;
  }
  body.bbx-global-refresh #post-535 :is(.fusion-content-boxes-2,.fusion-content-boxes-3) .heading-with-icon > .icon {
    display: block;
    margin: 0;
    padding: 0;
  }
  body.bbx-global-refresh #post-535 :is(.fusion-content-boxes-2,.fusion-content-boxes-3) .heading-with-icon > .content-box-heading {
    display: block;
    box-sizing: border-box;
    width: 100%;
    min-width: 0;
    margin: 0;
    padding: 0;
    overflow-wrap: anywhere;
  }
}

/* 1.0.18: native 320px review exposed long accordion/form titles crossing
 * their card edges. Keep all words, allow natural German hyphenation and
 * retain an emergency wrap for compounds and long shop names. */
body.bbx-global-refresh #main :is(h1,h2,h3,h4,h5,h6),
body.bbx-global-refresh #main .fusion-accordian .panel-title a,
body.bbx-global-refresh #main .fusion-accordian .panel-title .fusion-toggle-heading {
  min-width: 0;
  overflow-wrap: anywhere !important;
  word-break: normal;
  hyphens: auto;
}

/* Avada's responsive-typography script writes a desktop-derived --fontSize.
 * Give the brochure headings an explicit narrow-screen size so its 44px
 * hero does not consume five lines in a 224px mobile text column. */
@media (max-width:800px) {
  body.bbx-global-refresh #main .bbx .bbx-heading {
    font-size: clamp(28px,4.5vw,36px) !important;
    line-height: 1.18 !important;
  }
  body.bbx-global-refresh #main .bbx .bbx-hero-heading {
    font-size: clamp(30px,5.2vw,40px) !important;
    line-height: 1.16 !important;
  }
  body.bbx-global-refresh #main #bbx-project-request-title {
    font-size: clamp(27px,4.4vw,34px) !important;
    line-height: 1.24 !important;
  }

  /* Native Avada mobile header only. Keep its existing logo and menu logic;
   * scale the whole logo proportionally and provide 44px touch targets. */
  body.bbx-global-refresh .fusion-header-v2.fusion-logo-left > .fusion-header {
    padding: 14px 24px;
  }
  body.bbx-global-refresh .fusion-header-v2.fusion-logo-left > .fusion-header > .fusion-row {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    column-gap: 16px;
  }
  body.bbx-global-refresh .fusion-header-v2.fusion-logo-left > .fusion-header > .fusion-row::before,
  body.bbx-global-refresh .fusion-header-v2.fusion-logo-left > .fusion-header > .fusion-row::after {
    display: none;
  }
  body.bbx-global-refresh .fusion-header-v2.fusion-logo-left .fusion-logo {
    float: none;
    flex: 0 0 auto;
    margin: 0;
  }
  body.bbx-global-refresh .fusion-header-v2.fusion-logo-left .fusion-logo img.fusion-mobile-logo {
    width: 85px;
    max-width: 85px;
    height: auto !important;
    object-fit: contain;
  }
  body.bbx-global-refresh .fusion-header-v2.fusion-logo-left .fusion-mobile-menu-icons {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    width: auto;
    height: auto;
    margin-left: auto;
  }
  body.bbx-global-refresh .fusion-header-v2.fusion-logo-left .fusion-mobile-menu-icons a {
    float: none;
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 44px;
    min-height: 44px;
    margin: 0;
  }
  body.bbx-global-refresh .fusion-header-v2.fusion-logo-left .fusion-mobile-menu-icons a::before {
    color: #143c31 !important;
  }
  body.bbx-global-refresh .fusion-header-v2.fusion-logo-left .fusion-mobile-menu-icons a:is(:hover,:focus-visible)::before {
    color: #a72e32 !important;
  }
  body.bbx-global-refresh .fusion-header-v2.fusion-logo-left .fusion-mobile-nav-holder {
    flex: 0 0 100%;
    width: 100%;
  }
}
