.bc-display-tools, .bc-language-links { display: flex; align-items: center; gap: 6px; }
.bc-display-tools { flex-shrink: 0; }
.bc-language-links {
  gap: 2px;
  border: 1px solid #b9c8dc;
  border-radius: 8px;
  padding: 2px;
}
.bc-language-links a, #bc-appearance-toggle {
  display: inline-grid;
  place-items: center;
  min-width: 34px;
  min-height: 36px;
  padding: 3px;
  border-radius: 5px;
  color: var(--bc-header-text);
  font: 800 .82rem/1 system-ui, sans-serif;
}
.bc-language-links a[aria-current] { color: #fff; background: #234f98; }
#bc-appearance-toggle { min-width: 40px; min-height: 42px; border: 1px solid #8295ae; background: var(--bc-header-bg); cursor: pointer; }
#bc-appearance-toggle span[aria-hidden] { font-size: 1.35rem; }
#bc-appearance-toggle .screen-reader-text { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
#bc-appearance-toggle .bc-appearance-sun, #bc-appearance-toggle[aria-pressed="true"] .bc-appearance-moon { display: none; }
#bc-appearance-toggle[aria-pressed="true"] .bc-appearance-sun { display: inline; }
.bc-display-tools :focus-visible { outline: 3px solid var(--bc-primary); outline-offset: 2px; }
html[lang^="en"] .bc-hero-content { hyphens: manual; }

:root[data-bc-appearance="dark"] {
  color-scheme: dark;
  --bc-dark-page: #0b1425;
  --bc-dark-section: #101d33;
  --bc-dark-card: #17263e;
  --bc-dark-input: #0d182b;
  --bc-dark-ink: #f1f6ff;
  --bc-dark-text: #c3d0e5;
  --bc-dark-link: #98e1ff;
  --bc-dark-line: #405673;
  --bc-dark-control: #849bb9;
  --bc-dark-button: #a0e6ff;
  --bc-dark-button-ink: #0b2038;
  --bc-primary: var(--bc-dark-link);
  --bc-secondary: var(--bc-dark-ink);
  --bc-bg: var(--bc-dark-page);
  --bc-text: var(--bc-dark-text);
  --bc-header-bg: #111f35;
  --bc-header-text: var(--bc-dark-ink);
  --bc-shadow: 0 22px 70px #060d19a6;
}
[data-bc-appearance="dark"] .bc-header-shell { border-color: var(--bc-dark-line); }
[data-bc-appearance="dark"] .bc-header-shell .bc-brand img { display: block; }
[data-bc-appearance="dark"] .bc-language-links { border-color: var(--bc-dark-control); }
[data-bc-appearance="dark"] .bc-language-links a[aria-current] { background: var(--bc-dark-button); color: var(--bc-dark-button-ink); }
[data-bc-appearance="dark"] .bc-menu-toggle span { background: var(--bc-dark-ink); }
[data-bc-appearance="dark"] .bc-main-nav .sub-menu { background: var(--bc-header-bg) !important; border-color: var(--bc-dark-line); }
.bc-header-shell .bc-menu ul.sub-menu::before { display: none; }
@media (min-width: 1101px) {
  .bc-header-shell .bc-menu > .menu-item-has-children > a { padding-inline-end: 26px; }
  .bc-header-shell .bc-menu > .menu-item-has-children > a::before {
    content: '';
    position: absolute;
    inset-inline-end: 9px;
    top: calc(50% - 5px);
    width: 6px;
    height: 6px;
    border: solid currentColor;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
  }
}
#bastcom-care { scroll-margin-top: 130px; }

[data-bc-appearance="dark"] .bc-site-main {
  --bc-v2-text: var(--bc-dark-ink);
  --bc-v2-muted: var(--bc-dark-text);
  --bc-v2-card: var(--bc-dark-card);
  --bc-v2-light: var(--bc-dark-section);
  color: var(--bc-dark-text);
}
[data-bc-appearance="dark"] .bc-home-modern {
  --home-bg: var(--bc-dark-page);
  --home-soft-bg: var(--bc-dark-section);
  --home-soft-bg-2: var(--bc-dark-section);
  --home-ink: var(--bc-dark-ink);
  --home-muted: var(--bc-dark-text);
  --home-blue: var(--bc-dark-link);
  --bc-v2-line: var(--bc-dark-line);
}
[data-bc-appearance="dark"] .bc-page-content--full > .bc-entry-content { background: var(--bc-dark-page) !important; }
[data-bc-appearance="dark"] .bc-home-modern .bc-animate-in {
  opacity: 1 !important;
  transform: none !important;
  transition: none !important;
  will-change: auto;
}
[data-bc-appearance="dark"] .bc-home-modern :is(.bc-home-facts, .bc-service-grid, .bc-process-grid) {
  background: var(--bc-dark-card) !important;
  border-color: var(--bc-dark-line) !important;
  box-shadow: none !important;
}
[data-bc-appearance="dark"] .bc-home-modern .bc-home-facts::after { content: none !important; }
[data-bc-appearance="dark"] .bc-home-modern .bc-home-facts { border-inline-start: 4px solid #70dfff !important; }
[data-bc-appearance="dark"] .bc-home-modern .bc-home-facts > .wp-block-group__inner-container > .wp-block-group:not(:last-child) { border-block-end: 1px solid #79a9cc !important; }

.bc-home-facts > .wp-block-group__inner-container > :nth-child(1) { --bc-dark-icon: url('../img/dark/icon-experience.svg'); }
.bc-home-facts > .wp-block-group__inner-container > :nth-child(2) { --bc-dark-icon: url('../img/dark/icon-planning.svg'); }
.bc-home-facts > .wp-block-group__inner-container > :nth-child(3) { --bc-dark-icon: url('../img/dark/icon-fixed-price.svg'); }
.bc-home-facts > .wp-block-group__inner-container > :nth-child(4) { --bc-dark-icon: url('../img/dark/icon-247.svg'); }
.bc-service-grid > :nth-child(1) { --bc-dark-icon: url('../img/dark/icon-webdesign.svg'); }
.bc-service-grid > :nth-child(2) { --bc-dark-icon: url('../img/dark/icon-hosting.svg'); }
.bc-service-grid > :nth-child(3) { --bc-dark-icon: url('../img/dark/icon-module.svg'); }
.bc-service-grid > :nth-child(4) { --bc-dark-icon: url('../img/dark/icon-webshop.svg'); }

[data-bc-appearance="dark"] .bc-home-modern :is(.bc-home-facts, .bc-service-card) .wp-block-image img { display: none !important; }
[data-bc-appearance="dark"] .bc-home-modern :is(.bc-home-facts, .bc-service-card) .wp-block-image::before {
  content: '';
  display: block;
  width: clamp(54px, 8vw, 80px);
  height: clamp(54px, 8vw, 80px);
  max-width: 100%;
  background: var(--bc-dark-icon) center / 88% no-repeat;
}
[data-bc-appearance="dark"] .bc-services-editor-page {
  --svc-ink: var(--bc-dark-ink);
  --svc-muted: var(--bc-dark-text);
  --svc-blue: var(--bc-dark-link);
  --svc-light: var(--bc-dark-section);
  --svc-line: var(--bc-dark-line);
}
[data-bc-appearance="dark"] .bc-fullwidth-page {
  --fw-ink: var(--bc-dark-ink);
  --fw-muted: var(--bc-dark-text);
  --fw-blue: var(--bc-dark-link);
  --fw-light: var(--bc-dark-section);
  --fw-line: var(--bc-dark-line);
}
[data-bc-appearance="dark"] .bc-page-content:not(.bc-page-content--full),
[data-bc-appearance="dark"] .bc-site-main :is(.bc-home-hero-card, .bc-home-fact, .bc-service-card, .bc-process-step, .bc-benefit-item,
  .bc-services-card, .bc-services-price-card, .bc-care-price-card, .bc-fw-card, .bc-review-card, .bc-package-price,
  .bc-faq-item, .bcseo-faq-item, .bc-blog-topics a, .bc-unified-table, .bcr-card) {
  background: var(--bc-dark-card) !important;
  color: var(--bc-dark-text) !important;
  border-color: var(--bc-dark-line) !important;
  box-shadow: none;
}
[data-bc-appearance="dark"] .bc-site-main :is(.bc-page-content--full, .bc-home-modern, .bc-home-section, .bc-fw-section, .bc-services-section) {
  background: var(--bc-dark-page) !important;
  color: var(--bc-dark-text);
}
[data-bc-appearance="dark"] .bc-site-main :is(.bc-fw-light, .bc-fw-soft, .bc-services-light, .bc-benefit-section, .bc-archive-note, .bc-hosting-guidance) {
  background: var(--bc-dark-section) !important;
  border-color: var(--bc-dark-line) !important;
  color: var(--bc-dark-text) !important;
}
[data-bc-appearance="dark"] .bc-site-main :is(.bc-home-cta, .bc-fw-cta, .bc-services-cta, .bc-fw-dark, .bc-services-dark) {
  background: linear-gradient(135deg, #182c52, #212751) !important;
  color: var(--bc-dark-ink);
}
[data-bc-appearance="dark"] .bc-site-main :is(.bc-entry-content, .bc-blog-overview) :is(h1, h2, h3, h4, h5, h6, summary, strong) { color: var(--bc-dark-ink) !important; }
[data-bc-appearance="dark"] .bc-site-main :is(.bc-entry-content, .bc-blog-overview) :is(p, li, label, small, dd) { color: var(--bc-dark-text) !important; }
[data-bc-appearance="dark"] .bc-site-main :is(.bc-entry-content, .bc-blog-overview) :is(a:not(.bc-btn):not(.wp-block-button__link), .bc-fw-eyebrow, .bc-services-eyebrow, .bc-home-eyebrow) { color: var(--bc-dark-link) !important; }
[data-bc-appearance="dark"] .bc-site-main .bc-home-modern .bc-home-eyebrow { color: var(--bc-dark-link) !important; background: transparent !important; }
[data-bc-appearance="dark"] .bc-site-main :is(.bc-process-number, .bc-services-number) { background: #253e60 !important; color: var(--bc-dark-link) !important; }
[data-bc-appearance="dark"] .bc-site-main :is(.bc-btn, .wp-block-button__link, input[type="submit"]) { background: var(--bc-dark-button) !important; color: var(--bc-dark-button-ink) !important; }
[data-bc-appearance="dark"] .bc-site-main .is-style-outline .wp-block-button__link { background: transparent !important; color: var(--bc-dark-link) !important; border: 1px solid var(--bc-dark-control) !important; }
[data-bc-appearance="dark"] .bc-site-main :is(input, select, textarea):not([type="submit"]):not([type="button"]) {
  background: var(--bc-dark-input) !important;
  color: var(--bc-dark-ink) !important;
  border-color: var(--bc-dark-control) !important;
  accent-color: var(--bc-dark-link);
}
[data-bc-appearance="dark"] .bc-unified-table table { background: var(--bc-dark-card) !important; }
[data-bc-appearance="dark"] .bc-unified-table :is(td, th, tr) { color: var(--bc-dark-ink) !important; border-color: var(--bc-dark-line) !important; }
[data-bc-appearance="dark"] .bc-unified-table tbody tr:nth-child(even) { background: var(--bc-dark-section) !important; }
[data-bc-appearance="dark"] .bc-site-main :is(.code-box, pre, code) { color: var(--bc-dark-ink); background-color: var(--bc-dark-input); }
[data-bc-appearance="dark"] .erecht24-legal-texts a { text-decoration: underline; overflow-wrap: anywhere; }
[data-bc-appearance="dark"] .bc-site-main :focus-visible { outline: 3px solid var(--bc-dark-link); outline-offset: 2px; }
[data-bc-appearance="dark"] .bcr-showcase { --bcr-card: var(--bc-dark-card) !important; --bcr-accent: var(--bc-dark-link) !important; }
[data-bc-appearance="dark"] .bc-page-references-shortcode .bc-entry-content { background: var(--bc-dark-page) !important; }
[data-bc-appearance="dark"] .bcr-reference-card { color: var(--bc-dark-text) !important; border-color: var(--bc-dark-line) !important; }
[data-bc-appearance="dark"] .bcr-reference-card .bcr-cover { background: var(--bc-dark-section); }
[data-bc-appearance="dark"] .bcr-reference-card .bcr-body { background: var(--bc-dark-card); }
[data-bc-appearance="dark"] .bcr-reference-card .bcr-tech { color: var(--bc-dark-link); }
[data-bc-appearance="dark"] .bcr-reference-card .bcr-desc { color: var(--bc-dark-text); }
[data-bc-appearance="dark"] .bcr-filters button { color: var(--bc-dark-text); background: var(--bc-dark-card); border-color: var(--bc-dark-line); }
[data-bc-appearance="dark"] .bcr-filters button.is-active { color: var(--bc-dark-button-ink); background: var(--bc-dark-button); }
.bcr-showcase .bcr-tech > :is(i, span) { display: none; }
.bcr-showcase .bcr-tech { display: block; color: #4b607a; line-height: 1.45; letter-spacing: .045em; text-transform: none; }
.bcr-showcase .bcr-reference-card:focus-visible { outline: 3px solid var(--bc-primary); outline-offset: 3px; }
.bcr-showcase .bcr-logo-slot { height: 64px; margin-block-end: 14px; display: flex; align-items: center; }
.bcr-showcase .bcr-client-logo { display: block; width: auto; height: auto; max-width: min(100%, 176px); max-height: 64px; object-fit: contain; object-position: left center; margin: 0; }
.bcr-showcase .bcr-body h3 { margin-block-end: 12px; }

@supports (grid-template-rows: subgrid) {
  @media (min-width: 521px) {
    .bcr-showcase .bcr-reference-grid {
      --bcr-card-spacing: 24px;
      row-gap: 0;
      margin-block-end: calc(-1 * var(--bcr-card-spacing));
    }
    .bcr-showcase .bcr-reference-card:not([hidden]) {
      display: grid;
      grid-row: span 5;
      grid-template-rows: subgrid;
      margin-block-end: var(--bcr-card-spacing);
    }
    .bcr-showcase .bcr-cover { grid-row: 1; align-self: start; }
    .bcr-showcase .bcr-body {
      display: grid;
      grid-row: 2 / span 4;
      grid-template-rows: subgrid;
      align-items: start;
    }
    .bcr-showcase .bcr-logo-slot { grid-row: 1; }
    .bcr-showcase .bcr-body h3 { grid-row: 2; }
    .bcr-showcase .bcr-tech { grid-row: 3; }
    .bcr-showcase .bcr-desc { grid-row: 4; }
  }
  @media (min-width: 521px) and (max-width: 780px) {
    .bcr-showcase .bcr-reference-grid { --bcr-card-spacing: 16px; }
  }
}

.bcr-showcase .bcr-client-logo { filter: drop-shadow(0 0 1px #536880); }
[data-bc-appearance="dark"] .bcr-showcase .bcr-client-logo { filter: drop-shadow(0 0 1px #819ab3); }
:root:not([data-bc-appearance="dark"]) .bcr-showcase .bcr-client-logo[src*="wilhelmsburger-logo"] { filter: brightness(0) saturate(100%); }
[data-bc-appearance="dark"] .bcr-showcase .bcr-client-logo[src*="bauberater-transparent"] { filter: brightness(2.6); }
.bcr-showcase .bcr-client-logo[src*="north-wrap-header-original"] { filter: url('#bc-north-wrap-matte') drop-shadow(0 0 1px #253954); }
[data-bc-appearance="dark"] .bcr-showcase .bcr-client-logo[src*="north-wrap-header-original"] { filter: url('#bc-north-wrap-matte'); }
[data-bc-appearance="dark"] #ccm-widget .ccm-modal-inner,
[data-bc-appearance="dark"] #ccm-control-panel .ccm-modal-inner {
  background: var(--bc-dark-card) !important;
  color: var(--bc-dark-text) !important;
  border-color: var(--bc-dark-line) !important;
}
[data-bc-appearance="dark"] #ccm-widget :is(.ccm-modal--header, .ccm-modal--body, .ccm-modal--footer),
[data-bc-appearance="dark"] #ccm-control-panel :is(.ccm-modal--header, .ccm-modal--body, .ccm-modal--footer) {
  background: var(--bc-dark-card) !important;
  color: var(--bc-dark-text) !important;
  border-color: var(--bc-dark-line) !important;
}
[data-bc-appearance="dark"] #ccm-widget :is(.ccm--h1, .ccm--p),
[data-bc-appearance="dark"] #ccm-control-panel :is(.ccm--h1, .ccm--p, label) { color: var(--bc-dark-ink) !important; }
[data-bc-appearance="dark"] #ccm-widget a, [data-bc-appearance="dark"] #ccm-control-panel a { color: var(--bc-dark-link) !important; }
[data-bc-appearance="dark"] #ccm-widget .ccm-widget--logo img { background: #f7fbff; border-radius: 8px; padding: 4px 7px; }
[data-bc-appearance="dark"] #ccm-widget .cover-scrollbar::before { background: var(--bc-dark-card) !important; }
[data-bc-appearance="dark"] #ccm-widget .cover-scrollbar::after { background: linear-gradient(to top, var(--bc-dark-card) 50%, transparent) !important; }
[data-bc-appearance="dark"] #ccm-widget .ccm-widget--language-select { color: var(--bc-dark-ink) !important; background: var(--bc-dark-input) !important; appearance: auto; opacity: 1; }
[data-bc-appearance="dark"] #ccm-widget .ccm-widget--language-switch img { filter: brightness(0) invert(1); }
[data-bc-appearance="dark"] #ccm-widget .ccm-dismiss-button { color: var(--bc-dark-link) !important; }
[data-bc-appearance="dark"] #ccm-widget .ccm-widget--buttons button,
[data-bc-appearance="dark"] #ccm-control-panel :is(.ccm--save-settings, .ccm-modal--close, .ccm--small, .ccm-info-button) {
  background: var(--bc-dark-input) !important;
  color: var(--bc-dark-ink) !important;
  border: 1px solid var(--bc-dark-control) !important;
}

@media (min-width: 861px) and (max-width: 1220px) {
  .bc-header-inner { column-gap: 10px; }
  .bc-header-inner .bc-brand img { max-width: clamp(145px, 17vw, 205px); }
  .bc-menu > li > a { padding-inline: 8px; font-size: .91rem; }
}
@media (min-width: 861px) and (max-width: 1100px) {
  .bc-header-inner { flex-wrap: wrap; }
  .bc-header-shell .bc-menu-toggle { display: flex; }
  .bc-header-shell .bc-main-nav { display: none; order: 3; width: 100%; padding: 8px 14px; border: 1px solid #b9c8dc; border-radius: 12px; max-height: 65vh; overflow: auto; }
  .bc-header-shell .bc-main-nav.is-open { display: block; }
  .bc-header-shell .bc-menu { flex-direction: column; align-items: stretch; gap: 0; }
  .bc-header-shell .bc-menu li > a { padding: 11px 38px 11px 4px; font-size: 1rem; }
  .bc-header-shell .bc-menu .sub-menu { display: none !important; position: static; transform: none; margin: 0; padding: 0 0 4px 15px; box-shadow: none; border: 0; }
  .bc-header-shell .bc-menu li.is-mobile-open > .sub-menu { display: block !important; }
  .bc-header-shell .bc-menu .sub-menu::before { display: none; }
  .bc-header-shell .bc-mobile-subtoggle { display: grid; place-items: center; position: absolute; right: 0; top: 4px; width: 31px; height: 31px; cursor: pointer; background: var(--bc-header-bg); color: var(--bc-header-text); border: 1px solid #8295ae; border-radius: 7px; }
  .bc-header-shell .bc-mobile-subtoggle::before { content: '+'; font-size: 1.15rem; }
  .bc-header-shell .is-mobile-open > .bc-mobile-subtoggle::before { content: '−'; }
}
@media (max-width: 1100px) {
  .bc-header-inner .bc-display-tools { margin-inline-start: auto; order: 1; }
  .bc-header-inner .bc-menu-toggle { order: 2; }
  [data-bc-appearance="dark"] .bc-header-shell .bc-main-nav { background: var(--bc-header-bg) !important; border-color: var(--bc-dark-line) !important; }
  [data-bc-appearance="dark"] .bc-header-shell .bc-main-nav .sub-menu { background: transparent !important; }
}
@media (max-width: 480px) {
  .bc-header-inner { gap: 7px !important; padding-inline: 10px !important; }
  .bc-header-inner .bc-brand { min-width: 77px; max-width: 122px !important; }
  .bc-header-inner .bc-brand img { width: 100%; object-fit: contain; }
  .bc-display-tools { gap: 4px; }
  .bc-language-links a { min-width: 28px; }
}
