/* ============================================================
   BASE / RESET
   ============================================================ */
.element-default {
  position: relative;
  width: 100%;
  min-height: 100vh;
  background-color: #ffffff;
  overflow-x: hidden;
}

.element-default .body {
  display: flex;
  flex-direction: column;
  width: 100%;
  align-items: flex-start;
  background-color: #2b2c36;
}

.element-default .background {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  background-color: #ffffff;
}

.element-default .main {
  position: relative;
  align-self: stretch;
  width: 100%;
}

/* ============================================================
   SECTION â€“ HEADER / LOGO
   ============================================================ */
.element-default .section {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  align-items: flex-start;
  justify-content: center;
  padding: 20px 0;
  position: relative;
}

.element-default .container {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  padding: 0px 25px;
  position: relative;
  flex: 1;
  align-self: stretch;
  flex-grow: 1;
}

.element-default .container-wrapper {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 0px 30px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.element-default .div {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.element-default .logo-stabizym-web {
  position: relative;
  width: clamp(160px, 20vw, 300px);
  height: auto;
  aspect-ratio: 300 / 76;
  background-image: url(img/logo-stabizym-web-500px-300x76-png.jpg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: left center;
}

/* ============================================================
   HERO SLIDER
   ============================================================ */
.element-default .div-wrapper {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  align-items: flex-start;
  justify-content: center;
  position: relative;
}

.element-default .container-2 {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  position: relative;
  flex: 1;
  align-self: stretch;
  flex-grow: 1;
}

.element-default .slider-onepager {
  display: flex;
  flex-direction: column;
  height: clamp(300px, 42vw, 795px);
  align-items: flex-start;
  position: relative;
  align-self: stretch;
  width: 100%;
}

.element-default .div-2 {
  position: relative;
  width: 100%;
  height: 100%;
}

.element-default .rs-slides {
  width: 100%;
  height: 100%;
  display: flex;
  position: relative;
}

.element-default .rs-sbg-px-rs-sbg {
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%;
  align-items: flex-start;
  justify-content: center;
  position: absolute;
  top: 0;
  left: 0;
}

.element-default .runtime-modification {
  position: relative;
  flex: 1;
  align-self: stretch;
  width: 100%;
  flex-grow: 1;
  background-image: url(img/runtime-modification---img-tag-is-still-available-for-seo-goals-.png);
  background-size: cover;
  background-position: 50% 50%;
}

/* Hero text â€“ overlay on the slider */
.element-default .rs-layer-wrap-rs {
  display: flex;
  flex-direction: column;
  max-width: 50%;
  align-items: flex-start;
  position: absolute;
  top: 32%;
  left: 3.5%;
}

.element-default .text-wrapper {
  position: relative;
  display: flex;
  align-items: center;
  width: fit-content;
  margin-top: -1px;
  font-family: "Open Sans", Helvetica;
  font-weight: 800;
  color: #ffffff;
  font-size: clamp(28px, 4vw, 69px);
  letter-spacing: 0;
  line-height: 1em;
  white-space: nowrap;
}

.element-default .rs-layer-wrap-rs-2 {
  display: flex;
  flex-direction: column;
  max-width: 50%;
  align-items: flex-start;
  position: absolute;
  top: 32%;
  left: 52%;
}

.element-default .text-wrapper-2 {
  position: relative;
  display: flex;
  align-items: center;
  width: fit-content;
  margin-top: -1px;
  font-family: "Open Sans", Helvetica;
  font-weight: 800;
  color: #ffffff;
  font-size: clamp(18px, 3vw, 69px);
  letter-spacing: 0;
  line-height: 1em;
  white-space: nowrap;
}

/* Bootstrap container alias â€“ overrides Bootstrap's own .container scoping */
.element-default .bs-container {
  width: 100%;
  max-width: 1380px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 20px;
  padding-right: 20px;
}

/* ============================================================
   SECTION 2 â€“ TEXT CONTENT BLOCKS (TGL liquid)
   ============================================================ */
.element-default .section-2 {
  display: block;
  width: 100%;
  position: relative;
  padding: 60px 0;
}

.element-default .container-3 {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  padding: 0px 15px;
  position: relative;
}

.element-default .container-4 {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 0px 15px;
  position: relative;
  width: 100%;
}

.element-default .container-5 {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 20px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.element-default .text-wrapper-3 {
  position: relative;
  display: flex;
  align-items: center;
  align-self: stretch;
  margin-top: -1px;
  font-family: "Hind Vadodara", Helvetica;
  font-weight: 700;
  color: #2a393f;
  font-size: clamp(24px, 2.5vw, 40px);
  letter-spacing: 0;
  line-height: 1.2em;
}

.element-default .p {
  position: relative;
  align-self: stretch;
  margin-top: -1px;
  font-family: "Hind Vadodara", Helvetica;
  font-weight: 700;
  color: #2a393f;
  font-size: clamp(14px, 1vw, 17px);
  letter-spacing: 0;
  line-height: 1.6em;
}

.element-default .text-wrapper-4 {
  position: relative;
  align-self: stretch;
  margin-top: -1px;
  font-family: "Hind Vadodara", Helvetica;
  font-weight: 400;
  color: #2a393f;
  font-size: clamp(14px, 1vw, 17px);
  letter-spacing: 0;
  line-height: 1.6em;
}

.element-default .stempel-neues-wrapper {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.element-default .stempel-neues {
  position: relative;
  width: clamp(100px, 12vw, 223px);
  aspect-ratio: 1;
  background-image: url(img/stempel-neues-produkt-schraeg-rechts-png.png);
  background-size: cover;
  background-position: 50% 50%;
}

/* inline highlight blocks */
.element-default .container-6 {
  position: relative;
  align-self: stretch;
  width: 100%;
  min-height: 75px;
}

.element-default .strong-stabizym-TGL {
  position: relative;
  display: block;
  width: 100%;
  font-family: "Hind Vadodara", Helvetica;
  font-weight: 700;
  color: #2a393f;
  font-size: clamp(14px, 1vw, 17px);
  letter-spacing: 0;
  line-height: 1.6em;
}

.element-default .strong {
  position: relative;
  width: 100%;
  display: flex;
  flex-direction: column;
}

.element-default .text-wrapper-5 {
  display: flex;
  align-items: center;
  margin-left: auto;
  font-family: "Hind Vadodara", Helvetica;
  font-weight: 700;
  color: #2a393f;
  font-size: clamp(14px, 1vw, 17px);
  letter-spacing: 0;
  line-height: 1.6em;
  white-space: nowrap;
}

.element-default .element-as-stable-liquid {
  width: 100%;
  font-family: "Hind Vadodara", Helvetica;
  font-weight: 700;
  color: #2a393f;
  font-size: clamp(14px, 1vw, 17px);
  letter-spacing: 0;
  line-height: 1.6em;
}

/* ============================================================
   DIVIDER SVG
   ============================================================ */
.element-default .img {
  display: block;
  width: 100%;
  height: auto;
  margin: 0 auto;
}

/* ============================================================
   SECTION 3 â€“ TGPS POWDER
   ============================================================ */
.element-default .section-3 {
  display: block;
  width: 100%;
  position: relative;
  padding: 60px 0;
}

.element-default .strong-stabizym-TGPS {
  position: relative;
  display: block;
  width: 100%;
  font-family: "Hind Vadodara", Helvetica;
  font-weight: 700;
  color: #2a393f;
  font-size: clamp(14px, 1vw, 17px);
  letter-spacing: 0;
  line-height: 1.6em;
}

.element-default .strong-2 {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  position: relative;
}

.element-default .text-wrapper-6 {
  position: relative;
  display: flex;
  align-items: center;
  width: fit-content;
  margin-top: -1px;
  font-family: "Hind Vadodara", Helvetica;
  font-weight: 700;
  color: #2a393f;
  font-size: clamp(14px, 1vw, 17px);
  letter-spacing: 0;
  line-height: 1.6em;
  white-space: nowrap;
}

.element-default .stable-powder {
  position: relative;
  width: fit-content;
  font-family: "Hind Vadodara", Helvetica;
  font-weight: 700;
  color: #2a393f;
  font-size: clamp(14px, 1vw, 17px);
  letter-spacing: 0;
  line-height: 1.6em;
}

/* ============================================================
   SECTION 4 â€“ FEATURE BOX with background image
   ============================================================ */
.element-default .section-4 {
  display: flex;
  flex-direction: column;
  width: 100%;
  align-items: center;
  padding: 80px 20px;
  position: relative;
}

.element-default .img-2 {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  object-fit: cover;
}

.element-default .overlay {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-color: #0202021a;
}

.element-default .container-7 {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: center;
  gap: 0px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.element-default .overlay-2 {
  display: flex;
  flex-direction: column;
  width: 100%;
  max-width: 1351px;
  align-items: flex-start;
  padding: 25px;
  position: relative;
  align-self: stretch;
  background-color: #ffffffe6;
}

.element-default .container-8 {
  position: relative;
  align-self: stretch;
  width: 100%;
}

.element-default .container-9 {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  align-items: flex-start;
  gap: 20px 0px;
  position: relative;
}

.element-default .container-10 {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  position: relative;
  flex: 1 1 280px;
  align-self: stretch;
  flex-grow: 1;
}

.element-default .container-11 {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  align-items: flex-start;
  gap: 20px 0px;
  position: relative;
  margin-top: 20px;
}

.element-default .container-12 {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 0px 0px 6px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.element-default .div-3 {
  display: inline-flex;
  align-items: flex-start;
  justify-content: center;
  position: relative;
  flex: 0 0 auto;
}

.element-default .container-13 {
  position: relative;
  width: 63px;
  flex-shrink: 0;
}

.element-default .container-14 {
  display: flex;
  flex-direction: column;
  flex: 1;
  min-width: 0;
  align-items: flex-end;
  gap: 10px;
  position: relative;
}

.element-default .text-wrapper-7 {
  position: relative;
  display: flex;
  align-items: center;
  align-self: stretch;
  margin-top: -1px;
  font-family: "Hind Vadodara", Helvetica;
  font-weight: 700;
  color: #2a393f;
  font-size: clamp(18px, 1.8vw, 28px);
  letter-spacing: 0;
  line-height: 1.3em;
}

.element-default .header-list {
  display: flex;
  flex-direction: column;
  width: 100%;
  align-items: flex-start;
  gap: 8px;
  position: relative;
  flex: 0 0 auto;
}

.element-default .item {
  position: relative;
  align-self: stretch;
  width: 100%;
  min-height: 25px;
}

.element-default .text {
  position: absolute;
  top: 0;
  left: 0;
  width: 8px;
  height: 25px;
  display: flex;
  align-items: center;
  font-family: "Hind Vadodara", Helvetica;
  font-weight: 400;
  color: #2a393f;
  font-size: clamp(13px, 1vw, 17px);
  letter-spacing: 0;
  line-height: 1.6em;
  white-space: nowrap;
}

.element-default .text-wrapper-8,
.element-default .text-wrapper-9,
.element-default .text-wrapper-10,
.element-default .text-wrapper-11,
.element-default .text-wrapper-12,
.element-default .text-wrapper-13,
.element-default .text-wrapper-14,
.element-default .text-wrapper-15,
.element-default .text-wrapper-16,
.element-default .text-wrapper-17,
.element-default .text-wrapper-18,
.element-default .text-wrapper-19,
.element-default .text-wrapper-20,
.element-default .text-wrapper-21,
.element-default .text-wrapper-22,
.element-default .text-wrapper-23,
.element-default .text-wrapper-24 {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: auto;
  min-height: 25px;
  display: flex;
  align-items: center;
  font-family: "Hind Vadodara", Helvetica;
  font-weight: 400;
  color: #2a393f;
  font-size: clamp(13px, 1vw, 17px);
  letter-spacing: 0;
  line-height: 1.6em;
  white-space: normal;
  flex-wrap: wrap;
}

.element-default .container-15 {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  align-items: flex-start;
  gap: 20px 0px;
  position: relative;
  margin-top: 20px;
}

.element-default .container-16 {
  display: flex;
  flex-direction: column;
  width: 63px;
  align-items: center;
  padding: 0px 15px 6px 0px;
  position: relative;
  flex-shrink: 0;
}

.element-default .null-wrapper {
  display: flex;
  max-width: 63px;
  width: 48px;
  align-items: flex-start;
  position: relative;
  flex: 0 0 auto;
}

.element-default .null {
  display: flex;
  flex-direction: column;
  max-width: 63px;
  width: 48px;
  align-items: flex-start;
  position: relative;
}

.element-default .icon-pulver-svg-fill {
  display: flex;
  flex-direction: column;
  width: 48px;
  height: 48px;
  align-items: center;
  justify-content: center;
  position: relative;
}

.element-default .icon-pulver-svg {
  position: relative;
  width: 48px;
  height: 48px;
  overflow: hidden;
}

.element-default .group {
  position: absolute;
  width: 139.21%;
  height: 139.21%;
  top: -19.56%;
  left: -19.46%;
}

.element-default .group-2 {
  position: absolute;
  width: 118.60%;
  height: 93.58%;
  top: -11.84%;
  left: -35.50%;
}

.element-default .group-3 {
  position: absolute;
  width: 14.56%;
  height: 20.80%;
  top: 39.25%;
  left: 43.38%;
}

.element-default .item-2 {
  min-height: 50px;
  position: relative;
  align-self: stretch;
  width: 100%;
}

.element-default .einfache-kosteng {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: auto;
  font-family: "Hind Vadodara", Helvetica;
  font-weight: 400;
  color: #2a393f;
  font-size: clamp(13px, 1vw, 17px);
  letter-spacing: 0;
  line-height: 1.6em;
}

/* ============================================================
   SECTION 5 â€“ CTA BANNER
   ============================================================ */
.element-default .section-5 {
  display: flex;
  flex-direction: column;
  width: 100%;
  align-items: flex-start;
  padding: 60px 20px;
  position: relative;
  background-color: #85aa11;
}

.element-default .background-2 {
  position: absolute;
  height: 100%;
  top: 0;
  left: 0;
  width: 100%;
  background-color: #85aa11;
}

.element-default .heading {
  align-items: center;
  display: flex;
  flex-direction: column;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.element-default .text-wrapper-25 {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  margin-top: -1px;
  font-family: "Hind Vadodara", Helvetica;
  font-weight: 700;
  color: #ffffff;
  font-size: clamp(20px, 2.5vw, 40px);
  text-align: center;
  letter-spacing: 0;
  line-height: 1.3em;
  white-space: normal;
}

/* ============================================================
   SECTION-ROW â€“ CONTACT
   ============================================================ */
.element-default .section-row {
  display: flex;
  flex-direction: column;
  width: 100%;
  align-items: flex-start;
  padding: 60px 20px;
  position: relative;
  background-color: #2a393f;
}

.element-default .background-3 {
  position: absolute;
  height: 100%;
  top: 0;
  left: 0;
  width: 100%;
  background-color: #2a393f;
}

.element-default .container-17 {
  display: block;
  position: relative;
  width: 100%;
}

.element-default .strong-kontakt {
  position: relative;
  display: flex;
  align-items: center;
  align-self: stretch;
  margin-top: -1px;
  font-family: "Hind Vadodara", Helvetica;
  font-weight: 700;
  color: #ffffff;
  font-size: clamp(18px, 1.5vw, 26px);
  letter-spacing: 0;
  line-height: 1.4em;
}

.element-default .list {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 7px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.element-default .item-3 {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 20px;
  flex: 0 0 auto;
  position: relative;
  align-self: stretch;
  width: 100%;
}

.element-default .container-18 {
  position: relative;
  width: 20px;
  flex-shrink: 0;
}

.element-default .container-19 {
  display: flex;
  flex-direction: column;
  flex: 1;
  align-items: flex-start;
  position: relative;
}

.element-default .text-wrapper-26 {
  position: relative;
  display: flex;
  align-items: center;
  width: fit-content;
  margin-top: -1px;
  font-family: "Hind Vadodara", Helvetica;
  font-weight: 400;
  color: #ffffff;
  font-size: clamp(13px, 1vw, 17px);
  letter-spacing: 0;
  line-height: 1.6em;
  white-space: nowrap;
}

.element-default .text-wrapper-27 {
  position: relative;
  width: fit-content;
  margin-top: -1px;
  font-family: "Hind Vadodara", Helvetica;
  font-weight: 400;
  color: #ffffff;
  font-size: clamp(13px, 1vw, 17px);
  letter-spacing: 0;
  line-height: 1.6em;
}

.element-default .link {
  display: inline-flex;
  align-items: flex-start;
  position: relative;
  flex: 0 0 auto;
}

.element-default .logo-stabizym-weiss-wrapper {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 10px 0px 0px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.element-default .logo-stabizym-weiss {
  position: relative;
  width: clamp(150px, 18vw, 300px);
  aspect-ratio: 300 / 76;
  background-image: url(img/logo-stabizym-weiss-300x76-png.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: left center;
}

.element-default .container-20 {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 20px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.element-default .strong-emphasis-die {
  position: relative;
  align-self: stretch;
  margin-top: -1px;
  font-family: "Hind Vadodara", Helvetica;
  font-weight: 700;
  color: #ffffff;
  font-size: clamp(13px, 1vw, 17px);
  letter-spacing: 0;
  line-height: 1.6em;
}

.element-default .emphasis-the {
  position: relative;
  display: flex;
  align-items: center;
  align-self: stretch;
  margin-top: -1px;
  font-family: "Hind Vadodara", Helvetica;
  font-weight: 400;
  color: #ffffff;
  font-size: clamp(13px, 1vw, 17px);
  letter-spacing: 0;
  line-height: 1.6em;
}

/* ============================================================
   CONTACT FORM
   ============================================================ */
.element-default .form {
  display: flex;
  flex-direction: column;
  width: 100%;
  align-items: flex-start;
  justify-content: center;
  position: relative;
  flex: 0 0 auto;
}

.element-default .margin {
  position: relative;
  align-self: stretch;
  width: 100%;
  margin-bottom: 12px;
}

.element-default .container-21 {
  display: flex;
  flex-direction: column;
  width: 100%;
  align-items: flex-start;
  padding: 0px 0px;
  position: relative;
}

.element-default .container-wrapper-2 {
  display: flex;
  min-height: 48px;
  align-items: flex-start;
  justify-content: center;
  padding: 11px 14px 12px 48px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  background-color: #e4ecf2;
  box-shadow: inset 0px 1px 0px #00000014;
}

.element-default .container-22 {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  position: relative;
  flex: 1;
  flex-grow: 1;
  opacity: 0.5;
}

.element-default .text-wrapper-28 {
  position: relative;
  display: flex;
  align-items: center;
  align-self: stretch;
  margin-top: -1px;
  font-family: "Hind Vadodara", Helvetica;
  font-weight: 400;
  color: #2a393f;
  font-size: clamp(14px, 1vw, 17px);
  letter-spacing: 0;
  line-height: normal;
}

.element-default .container-23 {
  position: absolute;
  top: 0;
  left: 0;
  width: 48px;
  height: 48px;
}

.element-default .container-24 {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  position: relative;
  align-self: stretch;
  width: 100%;
  opacity: 0;
  height: 0;
  overflow: hidden;
}

.element-default .text-wrapper-29 {
  position: relative;
  display: flex;
  align-items: center;
  align-self: stretch;
  margin-top: -1px;
  font-family: "Hind Vadodara", Helvetica;
  font-weight: 400;
  color: #ffffff;
  font-size: 15px;
  letter-spacing: 0;
  line-height: 1.4em;
}

.element-default .container-25 {
  display: flex;
  flex-direction: column;
  width: 100%;
  align-items: flex-start;
  gap: 0.01px;
  padding: 0px 0px;
  position: relative;
  margin-bottom: 12px;
}

.element-default .margin-2 {
  position: relative;
  align-self: stretch;
  width: 100%;
  margin-bottom: 12px;
}

.element-default .container-26 {
  display: flex;
  flex-direction: column;
  width: 100%;
  align-items: flex-start;
  padding: 0px 0px;
  position: relative;
}

.element-default .textarea-nachricht {
  display: flex;
  min-height: 120px;
  align-items: flex-start;
  justify-content: center;
  padding: 12px 14px 12px 48px;
  position: relative;
  align-self: stretch;
  width: 100%;
  background-color: #e4ecf2;
  overflow: auto;
  box-shadow: inset 0px 1px 0px #00000014;
}

.element-default .textarea-nachricht::-webkit-scrollbar {
  width: 0;
  display: none;
}

.element-default .text-wrapper-30 {
  position: relative;
  display: flex;
  align-items: center;
  align-self: stretch;
  margin-top: -1px;
  font-family: "Hind Vadodara", Helvetica;
  font-weight: 400;
  color: #2a393f;
  font-size: clamp(14px, 1vw, 17px);
  letter-spacing: 0;
  line-height: 1.4em;
}

.element-default .container-27 {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  position: relative;
  align-self: stretch;
  width: 100%;
  opacity: 0;
  height: 0;
  overflow: hidden;
}

.element-default .button-nachricht-wrapper {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  position: relative;
  align-self: stretch;
  width: 100%;
  margin-top: 8px;
}

.element-default .button-nachricht {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 12px 15px;
  position: relative;
  flex: 0 0 auto;
  background-color: #85aa11;
  border-radius: 4px;
  cursor: pointer;
}

.element-default .text-wrapper-31 {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: fit-content;
  margin-top: -1px;
  font-family: "Hind Vadodara", Helvetica;
  font-weight: 700;
  color: #ffffff;
  font-size: clamp(13px, 1vw, 15px);
  text-align: center;
  letter-spacing: 0;
  line-height: 18px;
  white-space: nowrap;
}

.element-default .container-28 {
  position: absolute;
  top: calc(50% - 14px);
  left: calc(50% - 14px);
  width: 27px;
  height: 27px;
  border-radius: 50%;
  border: 2px solid;
  border-color: #ffffff33;
  opacity: 0;
}

/* ============================================================
   FOOTER â€“ LINKS
   ============================================================ */
.element-default .section-row-2 {
  display: flex;
  flex-direction: column;
  width: 100%;
  align-items: flex-start;
  padding: 40px 20px;
  position: relative;
  background-color: #2a393f;
  border-top: 1px solid #ffffff22;
}

.element-default .container-29 {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 4px;
  padding: 2px 0px 0px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.element-default .container-30 {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 0px 0px 3px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.element-default .container-wrapper-3 {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  position: relative;
  flex: 0 0 auto;
  border-radius: 5px;
}

.element-default .container-31 {
  display: inline-flex;
  align-items: flex-start;
  justify-content: center;
  padding: 2px 0px;
  position: relative;
  flex: 0 0 auto;
}

.element-default .text-wrapper-32 {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: fit-content;
  margin-top: -1px;
  font-family: "Hind Vadodara", Helvetica;
  font-weight: 700;
  color: #85aa11;
  font-size: clamp(13px, 1vw, 17px);
  text-align: center;
  letter-spacing: 0;
  line-height: 1.4em;
  white-space: nowrap;
}

.element-default .strong-link-wrapper {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 3px 0px 0px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.element-default .text-wrapper-33 {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: fit-content;
  margin-top: -1px;
  font-family: "Hind Vadodara", Helvetica;
  font-weight: 700;
  color: #ffffff;
  font-size: clamp(13px, 1vw, 17px);
  text-align: center;
  letter-spacing: 0;
  line-height: 1.6em;
  white-space: nowrap;
}

/* ============================================================
   FLOATING / MISC
   ============================================================ */
.element-default .button-zurck-nach {
  position: fixed;
  right: 15px;
  bottom: 20px;
  width: 50px;
  height: 50px;
  z-index: 100;
}

.element-default .background-border {
  display: none;
}

.element-default .image {
  display: none;
}

.element-default .img-wrapper {
  display: none;
}

.element-default .container-32 {
  display: none;
}

.element-default .container-33 {
  display: none;
}

/* ============================================================
   NATIVE RESPONSIVE GRID SYSTEM
   (replaces Bootstrap row/col classes)
   ============================================================ */

/* Generic 2-column row â€” stacks on mobile */
.element-default .row-2col {
  display: flex;
  flex-wrap: wrap;
  gap: 2rem;
  width: 100%;
}

.element-default .col-half {
  flex: 1 1 calc(50% - 1rem);
  min-width: 280px;
  box-sizing: border-box;
}

/* Feature rows inside section-4 â€“ tighter gap */
.element-default .feat-row {
  gap: 1.25rem;
  margin-bottom: 1.25rem;
}

/* Contact row â€“ left narrower, right wider */
.element-default .row-contact {
  display: flex;
  flex-wrap: wrap;
  gap: 2rem;
  width: 100%;
}

.element-default .col-contact-left {
  flex: 0 1 35%;
  min-width: 260px;
  box-sizing: border-box;
}

.element-default .col-contact-right {
  flex: 1 1 55%;
  min-width: 260px;
  box-sizing: border-box;
}

/* Footer links row */
.element-default .footer-links {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  justify-content: center;
  align-items: center;
  width: 100%;
}

/* ============================================================
   BACK-TO-TOP BUTTON â€“ responsive sizing & position
   ============================================================ */
.element-default .button-zurck-nach {
  position: fixed;
  right: clamp(10px, 2vw, 20px);
  bottom: clamp(10px, 2vh, 20px);
  width: clamp(36px, 4vw, 56px);
  height: clamp(36px, 4vw, 56px);
  z-index: 100;
  cursor: pointer;
  display: block;
}

/* ============================================================
   MEDIA QUERIES
   ============================================================ */

/* â‰¤ 768px â€“ tablet / mobile */
@media (max-width: 768px) {
  .element-default .rs-layer-wrap-rs,
  .element-default .rs-layer-wrap-rs-2 {
    left: 5%;
    max-width: 90%;
  }

  .element-default .rs-layer-wrap-rs-2 {
    top: 52%;
  }

  .element-default .col-half,
  .element-default .col-contact-left,
  .element-default .col-contact-right {
    flex: 1 1 100%;
    min-width: 0;
  }

  .element-default .section-4 {
    padding: 30px 12px;
  }

  .element-default .overlay-2 {
    padding: 16px;
  }

  .element-default .text-wrapper-25 {
    white-space: normal;
  }

  .element-default .container-wrapper {
    padding: 0px 16px;
  }

  .element-default .button-nachricht {
    width: 100%;
    justify-content: center;
  }
}

/* â‰¤ 480px â€“ small mobile */
@media (max-width: 480px) {
  .element-default .slider-onepager {
    height: clamp(200px, 55vw, 350px);
  }

  .element-default .rs-layer-wrap-rs {
    top: 25%;
  }

  .element-default .rs-layer-wrap-rs-2 {
    top: 48%;
  }

  .element-default .section-2,
  .element-default .section-3 {
    padding: 40px 0;
  }

  .element-default .row-2col,
  .element-default .row-contact {
    gap: 1.25rem;
  }
}