/* iOS tap color fixes - ensure coral color on tap, no background */
* {
  -webkit-tap-highlight-color: transparent;
}

a,
button {
  -webkit-tap-highlight-color: transparent;
  -webkit-touch-callout: none;
}

/* Force coral color on ALL active states - no exceptions, no transition */
a:active,
a:focus:active,
a:visited:active,
a:link:active {
  color: #ff9272 !important;
  outline: none !important;
  background-color: transparent !important;
  transition: none !important;
}

button:active,
button:focus:active {
  outline: none !important;
}

.webstra-padding-section1-title {
  padding-top: 72px;
  padding-bottom: 260px;
}

.webstra-padding-section1 {
  padding-top: 50px;
  padding-bottom: 100px;
}

@media (max-width: 991px) {
  .webstra-padding-section1 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
}

.webstra-padding-section {
  padding-top: 100px;
  padding-bottom: 100px;
}

@media (max-width: 991px) {
  .webstra-padding-section {
    padding-top: 60px;
    padding-bottom: 60px;
  }
}

/* Wiederverwendbarer Button mit Pfeil */
.webstra-arrow-button {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  background: none;
  border: none;
  color: #1c2d41;
  font-size: 18px;
  text-decoration: none;
  cursor: pointer;
  transition: all 0.3s ease;
  padding: 8px 0;
  font-weight: 600;
  font-family: 'Sporting Grotesque', sans-serif;
}

.webstra-arrow-button:hover {
  color: #ff9272 !important;
  text-decoration: none;
  transform: translateX(4px);
}

.webstra-arrow-button:active {
  color: #ff9272 !important;
  text-decoration: none;
  transform: translateX(4px);
  transition: none !important;
}

.webstra-arrow-button .arrow-icon {
  width: 32px;
  height: 13px;
  transition:
    transform 0.3s ease,
    filter 0.3s ease;
  margin-bottom: 4px !important;
}

.webstra-arrow-button:hover .arrow-icon {
  transform: translateX(4px);
  filter: brightness(0) saturate(100%) invert(73%) sepia(28%) saturate(1347%)
    hue-rotate(315deg) brightness(103%) contrast(102%);
}

.webstra-arrow-button:active .arrow-icon {
  transform: translateX(4px);
  filter: brightness(0) saturate(100%) invert(73%) sepia(28%) saturate(1347%)
    hue-rotate(315deg) brightness(103%) contrast(102%);
  transition: none !important;
}

/* Custom bullet points */
.webstra-bullet-list {
  list-style: none;
  padding-left: 0;
}

.webstra-bullet-list li {
  display: flex;
  align-items: flex-start;
  margin-bottom: 1.5rem;
}

.webstra-bullet-list li::before {
  content: '';
  background-image: url('/assets/images/home/bullet.svg');
  background-size: 8px 8px;
  background-repeat: no-repeat;
  width: 8px;
  height: 8px;
  margin-right: 12px;
  margin-top: 8px;
  flex-shrink: 0;
}

/* Swiper Testimonials */
.testimonials-swiper {
  overflow: hidden;
  height: auto;
}

.testimonials-swiper .swiper-slide {
  height: auto;
}

.testimonials-next {
  position: absolute !important;
  right: -40px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  width: 40px !important;
  height: 40px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: none !important;
  border: none !important;
  cursor: pointer !important;
  z-index: 10 !important;
}

.testimonials-next:after {
  display: none !important;
}

.testimonials-next.swiper-button-disabled {
  opacity: 0.3 !important;
}

.webstra-nav-link {
  font-size: 18px;
  font-family: 'Sporting Grotesque', sans-serif;
  font-weight: 600;
}

/* Offcanvas Menu */
.webstra-offcanvas {
  width: 40% !important;
  max-width: 40% !important;
}

.webstra-offcanvas .offcanvas-header {
  border: none;
  padding: 2rem 2rem 0 2rem;
  justify-content: flex-end;
}

.webstra-offcanvas .offcanvas-body {
  padding: 2rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: 100%;
  position: relative;
}

.webstra-menu-nav {
  list-style: none;
  padding: 0;
  margin: 0;
}

.webstra-menu-nav li {
  margin-bottom: 1rem;
}

.webstra-menu-nav a {
  color: #1c2d41;
  text-decoration: none;
  font-size: 2rem;
  font-weight: 400;
  font-family: 'Sporting Grotesque', sans-serif;
  line-height: 1.2;
  transition:
    color 0.2s ease,
    transform 0.3s ease;
  -webkit-tap-highlight-color: transparent;
  background-color: transparent;
  -webkit-touch-callout: none;
  touch-action: manipulation;
}

/* Smaller font size on mobile */
@media (max-width: 576px) {
  .webstra-menu-nav a {
    font-size: 1.5rem;
  }

  .webstra-menu-footer {
    margin-top: 2rem;
    padding-bottom: 2rem;
  }
}

.webstra-menu-nav a:hover,
.webstra-menu-nav a:focus {
  color: #ff9272 !important;
  background-color: transparent !important;
  text-decoration: none;
  transform: translateX(8px);
  outline: none !important;
}

.webstra-menu-nav a:active,
.webstra-menu-nav a:visited:active {
  color: #ff9272 !important;
  background-color: transparent !important;
  text-decoration: none;
  transform: translateX(8px);
  -webkit-tap-highlight-color: transparent !important;
  outline: none !important;
  transition: none !important;
}

.webstra-menu-footer {
  margin-top: 3rem;
}

.webstra-menu-footer .nav {
  flex-direction: column;
}

.webstra-menu-footer .nav-link {
  color: #1c2d41;
  text-decoration: none;
  font-size: 1rem;
  font-weight: 400;
  font-family: 'Poppins', sans-serif;
  padding: 0;
  -webkit-tap-highlight-color: transparent;
  background-color: transparent;
  -webkit-touch-callout: none;
  touch-action: manipulation;
}

.webstra-menu-footer .nav-link:hover,
.webstra-menu-footer .nav-link:focus {
  color: #ff9272 !important;
  background-color: transparent !important;
  text-decoration: none;
  outline: none !important;
}

.webstra-menu-footer .nav-link:active,
.webstra-menu-footer .nav-link:visited:active {
  color: #ff9272 !important;
  background-color: transparent !important;
  text-decoration: none;
  -webkit-tap-highlight-color: transparent !important;
  outline: none !important;
  transition: none !important;
}
.webstra-close-btn {
  background: none;
  border: none;
  padding: 0;
  width: 33px;
  height: 33px;
  cursor: pointer;
}

/* ============ STICKY NAVIGATION SYSTEM ============ */

/* Mobile Header (only visible on mobile) */
.webstra-header {
  background: rgba(255, 255, 255, 0.95);
  backdrop-filter: blur(10px);
  z-index: 1000;
  transition: all 0.3s ease;
  box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.05);
}

/* Hide header during hero animation */
body.scroll-locked .webstra-header {
  opacity: 0;
  pointer-events: none;
}

/* Show header after hero animation */
body:not(.scroll-locked) .webstra-header {
  opacity: 1;
  pointer-events: all;
}

.webstra-nav {
  padding: 15px 20px;
}

/* Desktop Navigation - Side positioned (like before) */
.webstra-desktop-nav {
  display: none; /* Hide the header version on desktop */
}

/* Desktop: Kontakt Link - Left Side */
.webstra-kontakt-left {
  position: fixed;
  left: 30px;
  top: 50%;
  transform: translateY(-50%);
  z-index: 1000;
  writing-mode: sideways-lr;
  text-orientation: mixed;
  direction: ltr;
  transition: opacity 0.3s ease;
}

/* Desktop: Hamburger Menu - Right Side */
.webstra-hamburger-right {
  position: fixed;
  right: 30px;
  top: 50%;
  transform: translateY(-50%);
  z-index: 1000;
  transition: opacity 0.3s ease;
}

/* Hide desktop nav during hero animation */
body.scroll-locked .webstra-kontakt-left,
body.scroll-locked .webstra-hamburger-right {
  opacity: 0;
  pointer-events: none;
}

/* Show desktop nav after hero animation */
body:not(.scroll-locked) .webstra-kontakt-left,
body:not(.scroll-locked) .webstra-hamburger-right {
  opacity: 1;
  pointer-events: all;
}

/* Hide desktop nav on smaller screens */
@media (max-width: 1274px) {
  .webstra-kontakt-left,
  .webstra-hamburger-right {
    display: none !important;
  }
}

/* Hide mobile header on larger screens */
@media (min-width: 1275px) {
  .webstra-header {
    display: none !important;
  }
}

/* Show mobile header on smaller screens */
@media (max-width: 1274px) {
  .webstra-header {
    display: block !important;
  }
}

.webstra-kontakt-link {
  color: #1c2d41;
  text-decoration: none;
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  transition: color 0.3s ease;
  line-height: 1.2;
}

.webstra-kontakt-link:hover {
  color: #ff9272 !important;
  text-decoration: none;
}

/* Mobile Navigation */
.webstra-mobile-nav {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
}

.webstra-brand-link {
  color: #1c2d41;
  text-decoration: none;
  font-size: 18px;
  font-weight: 600;
  font-family: 'Sporting Grotesque', sans-serif;
  transition: color 0.3s ease;
}

.webstra-brand-link:hover {
  color: #ff9272 !important;
  text-decoration: none;
}

/* Mobile Logo */
.webstra-mobile-logo {
  height: 40px;
  width: auto;
  transition: opacity 0.3s ease;
}

.webstra-mobile-logo:hover {
  opacity: 0.8;
}

/* Hamburger Button */
.webstra-hamburger-btn {
  background: none;
  border: none;
  padding: 8px 0 8px 8px;
  cursor: pointer;
  transition: transform 0.3s ease;
}

.webstra-hamburger-btn:hover {
  transform: scale(1.1);
}

.webstra-hamburger-btn img {
  width: 45px;
  height: 23px;
  display: block;
}

/* ============ RESPONSIVE OFFCANVAS MENU ============ */

/* Default - larger screens */
.webstra-offcanvas {
  width: 40% !important;
  max-width: 40% !important;
}

/* Under 1650px - 60% width */
@media (max-width: 1649px) {
  .webstra-offcanvas {
    width: 60% !important;
    max-width: 60% !important;
  }
}

/* Under 1080px - 80% width */
@media (max-width: 1079px) {
  .webstra-offcanvas {
    width: 80% !important;
    max-width: 80% !important;
  }
}

/* Under 800px - 100% width + layout changes */
@media (max-width: 799px) {
  .webstra-offcanvas {
    width: 100% !important;
    max-width: 100% !important;
  }

  /* Change layout to vertical for mobile */
  .webstra-offcanvas .offcanvas-body {
    padding: 0;
    height: 100vh;
    display: flex;
    flex-direction: column;
  }

  .webstra-offcanvas .row {
    flex-direction: column;
    height: 100%;
    margin: 0;
  }

  /* Close button goes to top right */
  .webstra-offcanvas .col-2 {
    order: -1;
    flex: 0 0 auto;
    padding: 20px 20px 0 20px;
    display: flex !important;
    justify-content: flex-end !important;
    align-items: flex-start !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  /* Navigation content fills remaining space */
  .webstra-offcanvas .col-10 {
    flex: 1;
    padding: 20px 20px 40px 20px;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow-y: auto !important;
  }

  /* Make sure close button is positioned correctly */
  .webstra-offcanvas .webstra-close-btn {
    margin-left: auto;
  }
}

/* ============ RESPONSIVE IMAGE CLASS ============ */

.webstra-responsive-image {
  width: 100%; /* Mobile: 100% */
  height: auto;
  display: block;
}

@media (min-width: 768px) and (max-width: 991.98px) {
  .webstra-responsive-image {
    width: 75%; /* Medium: 75% + zentriert */
    margin: 0 auto;
  }
}

@media (min-width: 992px) {
  .webstra-responsive-image {
    width: 100%; /* Large+: wieder 100% */
    margin: 0;
  }
}

/* Global Link Hover Color */
a:hover {
  color: #ff9272 !important;
}

a.text-primary-hover:hover,
button.text-primary-hover:hover {
  color: #ff9272 !important;
}

/* Specific overrides for navigation links */
.webstra-nav-link:hover {
  color: #ff9272 !important;
}

.webstra-menu-nav a:hover {
  color: #ff9272 !important;
  transform: translateX(8px);
}

.webstra-menu-footer .nav-link:hover {
  color: #ff9272 !important;
}

/* Screens taller than 1050px - General blob adjustments */
@media (min-height: 1051px) {
  /* Section2 */
  .section2-left-blob {
    transform: scale(0.8) translate(-10%, -10%) !important;
  }
  .section2-middle-blob {
    transform: scale(0.8) translate(-10%, -10%) !important;
  }
  .section2-right-blob {
    transform: scale(0.8) translate(-10%, -10%) !important;
  }

  /* Section3 */
  .section3-left-blob {
    transform: scale(0.8) translate(-10%, -10%) !important;
  }

  /* Section4 */
  .section4-right-big-blob {
    transform: scale(0.8) translate(-10%, -10%) !important;
  }
  .section4-right-small-blob {
    transform: scale(0.8) translate(-10%, -10%) !important;
  }

  /* Section5 */
  .section5-left-blob {
    transform: scale(0.8) translate(-10%, -20%) !important;
  }
  .section5-right-blob {
    transform: scale(0.8) translate(-10%, -10%) !important;
  }

  /* Section6 - Special positioning (more upward) */
  .section6-top-blob {
    transform: scale(0.8) translate(-10%, -40%) !important;
  }
  .section6-bottom-blob {
    transform: scale(0.8) translate(-10%, -80%) !important;
  }
  .section6-right-blob {
    transform: scale(0.8) translate(-10%, -8%) !important;
  }
}

/* Very tall screens (1400px+) - More aggressive scaling */
@media (min-height: 1400px) {
  /* Section2 */
  .section2-left-blob {
    transform: scale(0.6) translate(-15%, -35%) !important;
  }
  .section2-middle-blob {
    transform: scale(0.6) translate(-15%, -35%) !important;
  }
  .section2-right-blob {
    transform: scale(0.6) translate(-15%, -15%) !important;
  }

  /* Section3 */
  .section3-left-blob {
    transform: scale(0.6) translate(-15%, -15%) !important;
  }

  /* Section4 */
  .section4-right-big-blob {
    transform: scale(0.6) translate(-15%, -15%) !important;
  }
  .section4-right-small-blob {
    transform: scale(0.6) translate(-15%, -15%) !important;
  }

  /* Section5 */
  .section5-left-blob {
    transform: scale(0.6) translate(-15%, -35%) !important;
  }
  .section5-right-blob {
    transform: scale(0.6) translate(-15%, -15%) !important;
  }

  /* Section6 - Even more upward */
  .section6-top-blob {
    transform: scale(0.6) translate(-15%, -120%) !important;
  }
  .section6-bottom-blob {
    transform: scale(0.6) translate(-15%, -190%) !important;
  }
  .section6-right-blob {
    transform: scale(0.6) translate(-10%, -10%) !important;
  }
}

/* Mobile devices - Smaller blobs */
@media (max-width: 768px) {
  .section2-left-blob,
  .section2-middle-blob,
  .section2-right-blob,
  .section3-left-blob,
  .section4-right-big-blob,
  .section4-right-small-blob,
  .section5-left-blob,
  .section5-right-blob,
  .section6-top-blob,
  .section6-bottom-blob,
  .section6-right-blob {
    transform: scale(0.7) translate(-20%, -20%) !important;
  }
}

@media (max-width: 991px) {
  .section6-top-blob,
  .section6-bottom-blob {
    display: none;
  }
}

.webstra-section5-title {
  width: 90%;
  max-width: 90%;
}

@media (max-width: 991px) {
  .webstra-section5-title {
    width: 100%;
    max-width: 100%;
  }
}

/* Desktop illustration - hide mobile version by default */
.webstra-section1-illustration-mobile {
  display: none;
}

@media (max-width: 768px) {
  .webstra-section1-illustration-desktop {
    width: 300px !important;
    right: -15% !important;
  }
}

@media (max-width: 768px) {
  .webstra-section1-left-blob {
    left: 0% !important;
  }
}

@media (max-width: 768px) {
  .webstra-section1-right-blob {
    right: -9% !important;
  }
}

@media (max-width: 768px) {
  .webstra-section1-right-blob {
    right: -9% !important;
  }
}

@media (max-width: 575px) {
  .webstra-section1-right-blob {
    top: 20% !important;
  }
}

@media (max-width: 575px) {
  .webstra-section1-left-blob {
    left: 0% !important;
    top: 20% !important;
  }
}

@media (max-width: 575px) {
  .webstra-section1-right-blob {
    right: -9% !important;
    top: 20% !important;
  }
}

@media (max-width: 575px) {
  .webstra-section1-title-text {
    font-size: 50px !important;
  }
  .webstra-padding-section1-title {
    padding-top: 30px !important;
    padding-bottom: 560px !important;
  }
}

.webstra-section1-background-blob {
  top: calc(-75vh - 450px);
  left: calc(-30vw - 350px);
  z-index: 0;
  pointer-events: none;
  width: calc(100vw + 1500px);
  height: calc(100vh + 1500px);
  transform: rotate(0deg);
}

@media (max-width: 510px) {
  .webstra-section1-left-blob {
    left: 50% !important;
    top: 20% !important;
    transform: translateX(-50%) !important;
    width: 83% !important;
  }

  .webstra-section1-right-blob {
    right: 50% !important;
    top: 40% !important;
  }

  .webstra-padding-section1-title {
    padding-top: 30px !important;
    padding-bottom: 0px !important;
  }

  .webstra-section1-illustration-desktop {
    display: none !important;
  }

  .webstra-section1-illustration-mobile {
    display: block !important;
  }

  .webstra-section1-background-blob {
    top: calc(-105vh - 450px) !important;
    left: calc(-45vw - 350px) !important;
    width: calc(200vw + 1500px) !important;
    height: calc(200vh + 1500px) !important;
  }

  .webstra-section1-bottom-blob {
    margin-top: -30px;
  }
}

.webstra-margin-top-big {
  margin-top: 160px !important;
}

.webstra-padding-bottom-l {
  padding-bottom: 80px !important;
}

.webstra-margin-bottom-l {
  margin-bottom: 80px !important;
}

.webstra-padding-bottom-xl {
  padding-bottom: 120px !important;
}

.webstra-margin-bottom-xl {
  margin-bottom: 120px !important;
}

.webstra-padding-bottom-xxl {
  padding-bottom: 160px !important;
}

.webstra-margin-bottom-xxl {
  margin-bottom: 160px !important;
}

.webstra-margin-bottom-xxxl {
  margin-bottom: 200px !important;
}

.webstra-margin-bottom-xxxxl {
  margin-bottom: 240px !important;
}

.accordion-button {
  font-weight: 600 !important;
  opacity: 100% !important;
  color: var(--bs-gray-800) !important;
}

.accordion.accordion-step-border {
  border-top: 1px solid #e2b364;
}
.accordion.accordion-step-border .accordion-item {
  border-bottom: 1px solid #e2b364 !important;
}

.accordion.accordion-step-border .accordion-collapse.collapse.show {
  border-bottom: none !important;
}

.accordion.accordion-step-border .accordion-button::after {
  content: '+';
  background-image: none;
  font-size: 1.4rem;
  line-height: 1;
  color: #e2b364;
  width: auto;
  height: auto;
  margin-left: auto;
}

.accordion.accordion-step-border .accordion-button:not(.collapsed)::after {
  content: '–';
}

.accordion.accordion-step-border .accordion-body {
  padding-left: 0;
  padding-top: 0;
}

.accordion-header {
  padding: 1.5rem 0 1.2rem 0 !important;
}

.accordion.accordion-step-border .accordion-button {
  padding: 0 !important;
}

.webstra-negative-margin-top {
  margin-top: -130px !important;
}

.webstra-margin-top {
  margin-top: 50px !important;
}

.webstra-page-shell {
  position: relative;
  overflow: hidden;
}

.webstra-page-shell main,
.webstra-page-shell footer {
  position: relative;
  z-index: 1;
}

.webstra-page-shell__blob {
  position: absolute;
  bottom: calc(-56vh - 450px);
  left: calc(-30vw - 350px);
  width: calc(120vw + 1500px);
  height: calc(120vh + 1500px);
  pointer-events: none;
  z-index: 0;
}

.webstra-page-shell__blob_utility {
  position: absolute;
  bottom: calc(-80vh - 450px);
  left: calc(-30vw - 350px);
  width: calc(110vw + 1500px);
  height: calc(110vh + 1500px);
  pointer-events: none;
  z-index: 0;
}

.webstra-page-shell__blob img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  pointer-events: none;
}

/* Width utility classes for lg breakpoint */
@media (min-width: 992px) {
  .w-lg-75 {
    width: 75% !important;
  }
}

/* Vita section styling */
.vita-category {
  padding-bottom: 2rem;
  border-bottom: 1px solid rgba(28, 45, 65, 0.1);
}

.vita-category:last-of-type {
  border-bottom: none;
  padding-bottom: 0;
}

.vita-pdf-box {
  background: #fff;
  border-radius: 12px;
  padding: 2.5rem;
  box-shadow: 0 4px 20px rgba(28, 45, 65, 0.08);
}

.vita-pdf-title {
  color: #1c2d41;
  letter-spacing: 0.02em;
}

.vita-pdf-text {
  color: #1c2d41;
}

/* Hide mobile illustration by default */
.wahrhaftig-wachsen-illustration-mobile {
  display: none;
}

/* Hide desktop illustration and show mobile illustration on screens 1710px or smaller */
@media (max-width: 1710px) {
  .wahrhaftig-wachsen-illustration-desktop {
    display: none !important;
  }

  .wahrhaftig-wachsen-illustration-mobile {
    display: block !important;
  }
}

.form-control:focus {
  border-color: #e2b364 !important;
}

.form-check-input:checked {
  background-color: #e2b364 !important;
  border-color: #e2b364 !important;
}

/* Rechtliche Texte - Spacing für Überschriften und Absätze */
.webstra-rechtliches-text p {
  margin-bottom: 1.5rem;
  line-height: 1.2;
}

.webstra-rechtliches-text p:last-child {
  margin-bottom: 0;
}

/* Heading spacing */
.webstra-rechtliches-text h1 {
  margin-top: 2.5rem;
  margin-bottom: 1.5rem;
  line-height: 1.2;
  font-size: 20px;
  font-weight: 600;
}

.webstra-rechtliches-text h1:first-child {
  margin-top: 0;
}

.webstra-rechtliches-text h2 {
  margin-top: 2rem;
  margin-bottom: 1.25rem;
  line-height: 1.2;
  font-size: 20px;
  font-weight: 600;
}

.webstra-rechtliches-text h2:first-child {
  margin-top: 0;
}

.webstra-rechtliches-text h3 {
  margin-top: 1.75rem;
  margin-bottom: 1rem;
  line-height: 1.2;
  font-size: 20px;
  font-weight: 600;
}

.webstra-rechtliches-text h3:first-child {
  margin-top: 0;
}

.webstra-rechtliches-text h4 {
  margin-top: 1.5rem;
  margin-bottom: 0.875rem;
  line-height: 1.2;
  font-size: 20px;
  font-weight: 600;
}

.webstra-rechtliches-text h4:first-child {
  margin-top: 0;
}

.webstra-rechtliches-text h5 {
  margin-top: 1.25rem;
  margin-bottom: 0.75rem;
  line-height: 1.2;
  font-size: 20px;
  font-weight: 600;
}

.webstra-rechtliches-text h5:first-child {
  margin-top: 0;
}

.webstra-rechtliches-text h6 {
  margin-top: 1rem;
  margin-bottom: 0.625rem;
  line-height: 1.2;
  font-size: 20px;
  font-weight: 600;
}

.webstra-rechtliches-text h6:first-child {
  margin-top: 0;
}

/* Spacing between headings and paragraphs */
.webstra-rechtliches-text h1 + p,
.webstra-rechtliches-text h2 + p,
.webstra-rechtliches-text h3 + p,
.webstra-rechtliches-text h4 + p,
.webstra-rechtliches-text h5 + p,
.webstra-rechtliches-text h6 + p {
  margin-top: 0;
}

/* Spacing between paragraphs and headings */
.webstra-rechtliches-text p + h1,
.webstra-rechtliches-text p + h2,
.webstra-rechtliches-text p + h3,
.webstra-rechtliches-text p + h4,
.webstra-rechtliches-text p + h5,
.webstra-rechtliches-text p + h6 {
  margin-top: 2rem;
}

.webstra-image-fit {
  max-width: 90%;
  width: 100%;
}

@media (max-width: 991px) {
  .webstra-image-fit {
    max-width: 100%;
  }
}

@media (max-width: 991px) {
  .webstra-margin-top-beziehungen-gestalten {
    margin-top: 60px !important;
  }
}

@media (max-width: 991px) {
  .webstra-new-margin-top-beziehungen-gestalten {
    margin-top: 60px !important;
  }

  .webstra-padding-bottom-xxl-mobile {
    padding-bottom: 60px !important;
  }
}

@media (max-width: 1200px) {
  .webstra-margin-bottom-xl-mobile {
    margin-bottom: 48px !important;
  }
}

@media (max-width: 991px) {
  .webstra-margin-bottom-xxl-mobile {
    margin-bottom: 48px !important;
  }
  .webstra-margin-bottom-l-mobile {
    margin-bottom: 28px !important;
  }
}

.webstra-blob-netzwerke {
  top: calc(25vh - 100px);
  right: calc(1vw - 300px);
  z-index: 0;
  pointer-events: none;
  width: calc(15vw + 600px);
  height: calc(15vh + 600px);
  transform: rotate(0deg);
}

@media (max-width: 991px) {
  .webstra-blob-netzwerke {
    top: calc(105vh - 100px);
    right: calc(1vw - 300px);
  }
}

@media (max-width: 479px) {
  .webstra-blob-netzwerke {
    display: none;
  }
}

.webstra-nina-kennenlernen-section2-citation {
  margin: 2rem 0;
  background-image: url('/assets/images/wahrhaftig-wachsen/section2-citation-3.svg');
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  min-height: 400px;
  padding: 3rem;
}

@media (max-width: 550px) {
  .webstra-nina-kennenlernen-section2-citation {
    background-image: url('/assets/images/wahrhaftig-wachsen/section2-citation-3.svg');
    background-size: 120%;
    background-repeat: no-repeat;
    background-position: center;
    min-height: auto;
    width: 120%;
    max-width: 120%;
    margin-left: -10%;
    margin-right: -10%;
    padding: 2rem 1.5rem;
    margin-top: 0rem;
    margin-bottom: 3rem;
    aspect-ratio: 1 / 1;
    display: flex !important;
    position: relative;
    z-index: 1;
  }

  /* Ensure parent containers allow overflow */
  #section1 .container,
  #section1 .row,
  #section1 .col-lg-6 {
    overflow: visible !important;
  }

  .col-lg-6 .webstra-nina-kennenlernen-section2-citation,
  .row .col-lg-6 .webstra-nina-kennenlernen-section2-citation {
    overflow: visible !important;
  }
}

/* Nina Kennenlernen - Hide mobile illustration by default */
.nina-kennenlernen-illustration-mobile {
  display: none;
}

/* Nina Kennenlernen - Show mobile illustration on screens 991px or smaller */
@media (max-width: 991px) {
  .nina-kennenlernen-illustration-desktop {
    display: none !important;
  }

  .nina-kennenlernen-illustration-mobile {
    display: block !important;
  }
}

/* Beziehungen Gestalten - Section 1 Image Mobile */
@media (max-width: 991px) {
  .beziehungen-gestalten-section1-image {
    max-width: 150px !important;
  }
}

@media (max-width: 575px) {
  .beziehungen-gestalten-section1-image {
    max-width: 150px !important;
  }
}

/* Netzwerke - Hide mobile illustration by default */
.netzwerke-illustration-mobile {
  display: none;
}

/* Netzwerke - Show mobile illustration on screens 991px or smaller */
@media (max-width: 991px) {
  .netzwerke-illustration-desktop {
    display: none !important;
  }

  .netzwerke-illustration-mobile {
    display: block !important;
  }
}
