header.wp-block-template-part {
  display: none !important;
  margin: 0 !important;
  padding: 0 !important;
  height: 0 !important;
}
.wp-block-template-part footer .wp-block-spacer:first-child,
.wp-block-template-part footer .wp-block-spacer:nth-child(2) {
  display: none !important;
}
footer.wp-block-template-part {
  display: none !important;
}
.page .entry-title,
.page .page-title,
.page-title,
.entry-title,
.wp-block-post-title,
.site-main .page-header,
.page-header,
.entry-header {
    display: none !important;
}
/* ===== 1. Hero image: same width as the centered "What can I do?" content ===== */
.hero-strip-grid .hero-strip,
.hero-strip-grid .hero-strip img {
  width: 100%;
}
.hero-strip-grid .hero-strip {
  margin: 0;
}
.hero-strip-grid .hero-strip img {
  display: block;
  height: auto;
  border-radius: 28px;
}
/* ===== 2. Services: icon + label, collapsing to icon on hover ===== */
.services-grid .wp-block-jetpack-layout-grid-column {
  position: relative;
  padding: 1.35rem;
  border-radius: 28px;
  background: rgba(255, 255, 255, 0.38);
  transition:
    transform 0.35s cubic-bezier(.22,1,.36,1),
    box-shadow 0.35s cubic-bezier(.22,1,.36,1),
    background-color 0.35s ease;
}
.services-grid .wp-block-jetpack-layout-grid-column:hover {
  transform: translateY(-6px);
  box-shadow: 0 18px 34px rgba(31, 36, 31, 0.08);
  background: rgba(255, 255, 255, 0.62);
}
.services-grid h3 {
  margin-bottom: 1rem;
}
.service-pill {
  display: inline-flex;
  align-items: center;
  gap: 0.7rem;
  padding: 0.34rem 0.7rem 0.34rem 0.34rem;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.74);
  transition:
    gap 0.35s cubic-bezier(.22,1,.36,1),
    padding 0.35s cubic-bezier(.22,1,.36,1),
    background-color 0.35s ease;
}
.service-icon {
  width: 2.45rem;
  height: 2.45rem;
  display: inline-grid;
  place-items: center;
  border-radius: 999px;
  background: currentColor;
  color: #fff;
  font-size: 0.76rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  flex-shrink: 0;
  box-shadow: 0 10px 18px rgba(0,0,0,0.08);
  transition: transform 0.35s cubic-bezier(.22,1,.36,1);
}
.service-label {
  display: inline-block;
  max-width: 16ch;
  overflow: hidden;
  white-space: nowrap;
  font-size: 1em;
  line-height: 1.2;
  transition:
    max-width 0.35s cubic-bezier(.22,1,.36,1),
    opacity 0.25s ease,
    transform 0.35s cubic-bezier(.22,1,.36,1);
}
.services-grid .wp-block-jetpack-layout-grid-column:hover .service-pill {
  gap: 0;
  padding-right: 0.34rem;
  background: rgba(255, 255, 255, 0.88);
}
.services-grid .wp-block-jetpack-layout-grid-column:hover .service-label {
  max-width: 0;
  opacity: 0;
  transform: translateX(-0.3rem);
}
.services-grid .wp-block-jetpack-layout-grid-column:hover .service-icon {
  transform: scale(1.06);
}
/* ===== 3. Testimonials: subtle keyword highlight for existing bold/mark words ===== */
.testimonials .wp-block-column {
  border-radius: 22px;
  transition:
    transform 0.3s cubic-bezier(.22,1,.36,1),
    background-color 0.3s ease,
    box-shadow 0.3s ease;
}
.testimonials .wp-block-column:hover {
  transform: translateY(-4px);
  background: rgba(255,255,255,0.05);
  box-shadow: 0 12px 28px rgba(31,36,31,0.08);
}
.testimonials .is-testimonial-review strong mark {
  background: transparent !important;
  color: #16263a !important;
  padding: 0 0.12em;
  border-radius: 0.24em;
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
  box-shadow: inset 0 -0.42em 0 rgba(246, 236, 210, 0.38);
  transition:
    box-shadow 0.28s cubic-bezier(.22,1,.36,1),
    filter 0.28s ease;
}
.testimonials .wp-block-column:hover .is-testimonial-review strong mark {
  box-shadow: inset 0 -0.72em 0 rgba(246, 236, 210, 0.46);
}
.testimonials .is-testimonial-review strong mark:hover {
  box-shadow:
    inset 0 -0.95em 0 rgba(251, 243, 224, 0.62),
    0 0 0 1px rgba(255,255,255,0.14);
  filter: saturate(108%);
}
/* ===== 4. Buttons: softer, more fluid feel ===== */
.wp-block-button__link {
  position: relative;
  overflow: hidden;
  border-radius: 999px 920px 860px 980px;
  transition:
    transform 0.28s cubic-bezier(.22,1,.36,1),
    box-shadow 0.35s cubic-bezier(.22,1,.36,1),
    border-radius 0.45s cubic-bezier(.22,1,.36,1),
    background-color 0.35s ease;
  box-shadow: 0 12px 24px rgba(178,90,61,0.18);
}
.wp-block-button__link::before {
  content: "";
  position: absolute;
  inset: -60% -30%;
  background: radial-gradient(
    circle at 30% 35%,
    rgba(255,255,255,0.34),
    rgba(255,255,255,0) 45%
  );
  transform: translate(-18%, 18%) rotate(-12deg);
  transition:
    transform 0.55s cubic-bezier(.22,1,.36,1),
    opacity 0.35s ease;
  opacity: 0.78;
  pointer-events: none;
}
.wp-block-button__link:hover {
  transform: translateY(-3px) scale(1.015);
  border-radius: 54% 46% 51% 49% / 45% 55% 45% 55%;
  box-shadow: 0 18px 34px rgba(178,90,61,0.23);
}
.wp-block-button__link:hover::before {
  transform: translate(12%, 4%) rotate(12deg);
}
.wp-block-button__link:active {
  transform: translateY(0) scale(0.995);
}
/* ===== 5. About section: portrait motion + hover keywords with image previews ===== */
.about-portrait img {
  display: block;
  border-radius: 28px;
  transition:
    transform 0.45s cubic-bezier(.22,1,.36,1),
    box-shadow 0.45s cubic-bezier(.22,1,.36,1),
    filter 0.45s ease;
  box-shadow: 0 16px 38px rgba(31,36,31,0.12);
}
.about-portrait:hover img {
  transform: translateY(-4px) rotate(-0.8deg) scale(1.02);
  box-shadow: 0 24px 44px rgba(31,36,31,0.16);
  filter: saturate(1.03);
}
.about-personal-note {
  margin-top: 1.5rem;
  padding: 1.3rem 1.35rem;
  border-radius: 26px;
  background: linear-gradient(
    180deg,
    rgba(125,149,122,0.08),
    rgba(125,149,122,0.16)
  );
  border: 1px solid rgba(125,149,122,0.18);
}
.about-personal-note p {
  margin: 0;
}
.about-hover-word {
  position: relative;
  display: inline-block;
  font-weight: 600;
  color: #6d886b;
  padding: 0 0.08em;
}
.about-hover-word::after {
  content: "";
  position: absolute;
  left: 0.02em;
  right: 0.02em;
  bottom: 0.06em;
  height: 0.38em;
  background: rgba(125,149,122,0.16);
  border-radius: 999px;
  z-index: -1;
  transition:
    height 0.25s ease,
    background-color 0.25s ease;
}
.about-hover-card {
  position: absolute;
  left: 50%;
  bottom: calc(100%);
  width: 168px;
  padding: 0.55rem;
  border-radius: 20px;
  background: rgba(255,255,255,0.94);
  box-shadow: 0 18px 34px rgba(31,36,31,0.14);
  backdrop-filter: blur(10px);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translate(-50%, 8px) scale(0.96);
  transition:
    opacity 0.25s ease,
    transform 0.25s ease,
    visibility 0.25s ease;
}
.about-hover-card img {
  display: block;
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  border-radius: 14px;
}
.about-hover-caption {
  display: block;
  margin-top: 0.45rem;
  font-size: 0.82rem;
  line-height: 1.3;
  color: #3b4a3a;
  text-align: center;
}
.about-hover-word:hover::after {
  height: 0.92em;
  background: rgba(246,236,210,0.78);
}
.about-hover-word:hover .about-hover-card {
  opacity: 1;
  visibility: visible;
  transform: translate(-50%, 0) scale(1);
}
@media (max-width: 781px) {
  .about-hover-card {
    width: 140px;
  }
}
.entry-meta, .post-meta, .author-details {
    display: none !important;
}
/* === LAYOUT-GRID FIX FÜR SINGLE POSTS === */
/* Vollbreite alignfull Layout-Grid im Single-Post-Content */
.single .wp-block-post-content > .wp-block-jetpack-layout-grid.alignfull,
.single-post .wp-block-jetpack-layout-grid.alignfull {
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  display: grid !important;
  grid-template-columns: repeat(12, 1fr) !important;
  gap: 0 !important;
  padding-left: var(--wp--preset--spacing--50, 30px) !important;
  padding-right: var(--wp--preset--spacing--50, 30px) !important;
  box-sizing: border-box !important;
}
/* Desktop: Spalte 6/12 mit Offset 3 — sitzt mittig */
@media (min-width: 1024px) {
  .single .wp-block-post-content > .wp-block-jetpack-layout-grid.alignfull > .wp-block-jetpack-layout-grid-column.column1-desktop-grid__span-6,
  .single-post .wp-block-jetpack-layout-grid.alignfull > .wp-block-jetpack-layout-grid-column.column1-desktop-grid__span-6 {
    grid-column: 4 / span 6 !important;
    max-width: 100% !important;
    width: 100% !important;
  }
}
/* Tablet: 8/12 volle Breite */
@media (min-width: 600px) and (max-width: 1023px) {
  .single .wp-block-post-content > .wp-block-jetpack-layout-grid.alignfull > .wp-block-jetpack-layout-grid-column,
  .single-post .wp-block-jetpack-layout-grid.alignfull > .wp-block-jetpack-layout-grid-column {
    grid-column: 2 / span 10 !important;
    max-width: 100% !important;
    width: 100% !important;
  }
}
/* Mobile: volle Breite mit Padding */
@media (max-width: 599px) {
  .single .wp-block-post-content > .wp-block-jetpack-layout-grid.alignfull > .wp-block-jetpack-layout-grid-column,
  .single-post .wp-block-jetpack-layout-grid.alignfull > .wp-block-jetpack-layout-grid-column {
    grid-column: 1 / -1 !important;
    max-width: 100% !important;
    width: 100% !important;
  }
}
/* Hard reset: Theme's content-size cap entfernen INNERHALB unserer Grid-Spalte */
.single .wp-block-post-content > .wp-block-jetpack-layout-grid.alignfull .wp-block-jetpack-layout-grid-column > *,
.single-post .wp-block-jetpack-layout-grid.alignfull .wp-block-jetpack-layout-grid-column > * {
  max-width: 100% !important;
}
/* Header korrekt horizontal layouten */
.single .custom-header,
.single-post .custom-header {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100% !important;
  flex-wrap: nowrap !important;
}
.single .custom-header-nav,
.single-post .custom-header-nav {
  display: flex !important;
  flex-direction: row !important;
  gap: 2rem !important;
  flex-wrap: nowrap !important;
}
.single .custom-header-logo a,
.single-post .custom-header-logo a,
.single .custom-header-nav a,
.single-post .custom-header-nav a,
.single .custom-header-cta a,
.single-post .custom-header-cta a {
  white-space: nowrap !important;
  writing-mode: horizontal-tb !important;
}
/* Header CTA Button — orange */
.single .custom-header-cta a,
.single-post .custom-header-cta a {
  background: #b25a3d !important;
  color: #fff !important;
  display: inline-block !important;
  padding: 11px 24px !important;
  border-radius: 999px !important;
}
/* Mobile Header — stacked */
@media (max-width: 600px) {
  .single .custom-header,
  .single-post .custom-header {
    flex-wrap: wrap !important;
  }
}
/* === SPAN-8 SUPPORT FÜR ARTICLE 8/12 LAYOUT === */
@media (min-width: 1024px) {
  .single .wp-block-post-content > .wp-block-jetpack-layout-grid.alignfull > .wp-block-jetpack-layout-grid-column.column1-desktop-grid__span-8,
  .single-post .wp-block-jetpack-layout-grid.alignfull > .wp-block-jetpack-layout-grid-column.column1-desktop-grid__span-8 {
    grid-column: 3 / span 8 !important;
    max-width: 100% !important;
    width: 100% !important;
  }
}
/* CTA-Farbe im Single Post Header auf Grün setzen (überschreibt orange aus älteren CSS-Regeln) */
.single .custom-header-cta a,
.single-post .custom-header-cta a {
  background: #7d957a !important;
  box-shadow: 0 8px 20px rgba(125,149,122,0.22) !important;
}
.single .custom-header-cta a:hover,
.single-post .custom-header-cta a:hover {
  box-shadow: 0 16px 30px rgba(125,149,122,0.28) !important;
}
/* === IMAGE CENTERING FIX FOR ARTICLE HEADER (4K) === */
.single .wp-block-image.aligncenter,
.single-post .wp-block-image.aligncenter {
  display: flex !important;
  justify-content: center !important;
  width: 100% !important;
  max-width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
.single .wp-block-image.aligncenter img,
.single-post .wp-block-image.aligncenter img {
  margin-left: auto !important;
  margin-right: auto !important;
  display: block !important;
  max-width: 100% !important;
  height: auto !important;
}
/* === BLOG-LISTING: TITEL KLICKBAR MACHEN === */
/* Macht die gesamte Post-Karte klickbar, indem das Link-Element vom Bild über den ganzen Artikel-Bereich gestreckt wird */
/* Container muss relativ positioniert sein, damit das Pseudo-Element relativ dazu positioniert wird */
.wp-block-a8c-blog-posts article,
.wp-block-newspack-blocks-homepage-articles article {
  position: relative !important;
}
/* Das Image-Link über die gesamte Karte strecken (unsichtbarer Layer) */
.wp-block-a8c-blog-posts article .post-thumbnail a::before,
.wp-block-newspack-blocks-homepage-articles article .post-thumbnail a::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
}
/* Wichtig: Andere Links in der Karte (Kategorie "AI", Autor, Datum) sollen über dem unsichtbaren Layer klickbar bleiben */
.wp-block-a8c-blog-posts article .cat-links,
.wp-block-a8c-blog-posts article .cat-links a,
.wp-block-a8c-blog-posts article .entry-meta,
.wp-block-a8c-blog-posts article .entry-meta a,
.wp-block-newspack-blocks-homepage-articles article .cat-links,
.wp-block-newspack-blocks-homepage-articles article .cat-links a,
.wp-block-newspack-blocks-homepage-articles article .entry-meta,
.wp-block-newspack-blocks-homepage-articles article .entry-meta a {
  position: relative;
  z-index: 2;
}
/* Visueller Hinweis: Titel-Hover */
.wp-block-a8c-blog-posts article .entry-title,
.wp-block-newspack-blocks-homepage-articles article .entry-title {
  cursor: pointer;
  transition: color 0.2s ease;
}
.wp-block-a8c-blog-posts article:hover .entry-title,
.wp-block-newspack-blocks-homepage-articles article:hover .entry-title {
  color: #7d957a;
}
/* === BLOG-LISTING: SCHWARZEN FOCUS-RAHMEN ENTFERNEN === */
/* Outline beim Klick auf Post-Thumbnail-Link entfernen */
.wp-block-a8c-blog-posts article .post-thumbnail a,
.wp-block-a8c-blog-posts article .post-thumbnail a:focus,
.wp-block-a8c-blog-posts article .post-thumbnail a:active,
.wp-block-newspack-blocks-homepage-articles article .post-thumbnail a,
.wp-block-newspack-blocks-homepage-articles article .post-thumbnail a:focus,
.wp-block-newspack-blocks-homepage-articles article .post-thumbnail a:active {
  outline: none !important;
  border: none !important;
  box-shadow: none !important;
}
/* Image-Element selbst: keine Border, kein Outline */
.wp-block-a8c-blog-posts article .post-thumbnail img,
.wp-block-a8c-blog-posts article .post-thumbnail img:focus,
.wp-block-newspack-blocks-homepage-articles article .post-thumbnail img,
.wp-block-newspack-blocks-homepage-articles article .post-thumbnail img:focus {
  outline: none !important;
  border: none !important;
  box-shadow: none !important;
}
/* Accessibility: Bei Keyboard-Navigation (Tab) bleibt ein dezenter, brand-konformer Focus-Ring */
.wp-block-a8c-blog-posts article .post-thumbnail a:focus-visible,
.wp-block-newspack-blocks-homepage-articles article .post-thumbnail a:focus-visible {
  outline: 2px solid #7d957a !important;
  outline-offset: 4px !important;
  border-radius: 8px;
}
/* Card-Container: Falls der schwarze Rahmen vom Article-Element kommt */
.wp-block-a8c-blog-posts article,
.wp-block-a8c-blog-posts article:focus,
.wp-block-a8c-blog-posts article:focus-within,
.wp-block-newspack-blocks-homepage-articles article,
.wp-block-newspack-blocks-homepage-articles article:focus,
.wp-block-newspack-blocks-homepage-articles article:focus-within {
  outline: none !important;
  border: none !important;
}
/* === Focus Outline Removal (site-wide) — Accessibility-friendly === */
/* 1. Mouse users: keine sichtbaren Outlines */
*:focus:not(:focus-visible) {
  outline: none !important;
  box-shadow: none !important;
}
/* 2. Keyboard users: dezenter, brand-coherenter Focus-Ring */
*:focus-visible {
  outline: 2px solid #7d957a !important;
  outline-offset: 2px !important;
  border-radius: 2px;
}
/* 3. Spezifische Elemente, die NIEMALS einen Outline haben sollen */
.custom-header-nav a,
.custom-header-logo a,
.custom-header-cta a,
.custom-footer-social a,
.custom-footer-col a,
.wp-block-button__link,
.wp-block-post-navigation-link a,
button.wp-block-search__button,
a.wp-element-button {
  outline: none !important;
}
/* 4. Aber keyboard-focus auf interaktiven Elementen behalten */
.custom-header-nav a:focus-visible,
.custom-header-cta a:focus-visible,
.custom-footer-social a:focus-visible,
.wp-block-button__link:focus-visible {
  outline: 2px solid #7d957a !important;
  outline-offset: 3px !important;
}
/* 5. Image und Figure: nie Outline */
.wp-block-image img:focus,
figure:focus,
img:focus {
  outline: none !important;
}