.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}/* Start custom CSS *//* ==========================================================
   KOLLEGIA - Footer-CSS (alles unter .k-footer)
   Aus post-12.css extrahiert. Elementor-generierte Regeln
   (.elementor-12 .elementor-element...) sind nicht enthalten.
   ========================================================== */

.k-totop-wrap {
  display:none;
}
.k-totop {
  position:absolute;
  top:0;
  right:clamp(20px,4vw,64px);
  transform:translateY(-50%);
  z-index:40;
  display:inline-flex;
  align-items:center;
  gap:9px;
  padding:11px 18px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.62);
  background:#F7F5F1;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.75),0 12px 40px rgba(0,41,102,.14);
  font-family:inherit;
  font-size:13px;
  font-weight:600;
  color:#1A1D23;
  cursor:pointer;
  user-select:none;
  -webkit-user-select:none;
  transition:transform .3s cubic-bezier(.22,.9,.32,1),background .3s ease,border-color .3s ease;
}
.k-totop svg {
  transition:transform .3s cubic-bezier(.22,.9,.32,1);
}
@media (hover:hover) and (pointer:fine) {
  .k-totop:hover {
    transform:translateY(calc(-50% - 3px));
    background:rgba(255,255,255,.85);
    border-color:rgba(255,255,255,.9);
    color:#1A1D23;
  }
  .k-totop:hover svg {
    transform:translateY(-2px);
  }
}
.k-footer {
  width:100%;
  color:#1A1D23;
  font-family:'Poppins',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
}
.k-footer {
  margin-top:-24px;
  margin-bottom:-24px;
}
.k-footer *,
.k-footer *::before,
.k-footer *::after {
  box-sizing:border-box;
}
.k-footer .k-foot-inner {
  position:relative;
  z-index:1;
  max-width:1400px;
  margin:0 auto;
}
.k-footer [data-foot-grid="split"] {
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);
  gap:24px;
  align-items:end;
  padding-bottom:30px;
}
.k-footer [data-brand-lock] {
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-self:center;
  gap:14px;
  user-select:none;
  -webkit-user-select:none;
}
.k-footer .k-foot-ghost {
  font-size:clamp(46px,7vw,86px);
  font-weight:800;
  letter-spacing:-.05em;
  line-height:.92;
  color:rgba(26,29,35,.1);
}
.k-footer .k-foot-logo {
  height:30px;
  width:auto;
  display:block;
  align-self:flex-start;
}
.k-footer .k-foot-tag {
  margin:0;
  font-size:15px;
  line-height:1.65;
  color:#42464F;
  max-width:330px;
  text-wrap:pretty;
}
.k-footer [data-foot-grid="cols"] {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:28px 30px;
}
.k-footer [data-foot-group] {
  display:grid;
  grid-template-columns:30px minmax(0,1fr);
  gap:11px 14px;
  min-width:0;
}
.k-footer .k-foot-ico {
  grid-row:1;
  display:flex;
  align-items:center;
  justify-content:center;
  height:30px;
}
.k-footer .k-foot-ico svg {
  flex:none;
  display:block;
}
.k-footer .k-foot-title {
  grid-row:1;
  display:flex;
  align-items:center;
  font-size:9.5px;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:#5C616B;
  line-height:1;
  min-height:30px;
}
.k-footer .k-foot-links {
  grid-column:2;
  display:flex;
  flex-direction:column;
  gap:11px;
  min-width:0;
}
.k-footer [data-footlink] {
  position:relative;
  display:inline-block;
  width:fit-content;
  font-size:14px;
  font-weight:500;
  color:#1A1D23;
  text-decoration:none;
  line-height:1.4;
  transition:color .28s cubic-bezier(.22,.9,.32,1),transform .28s cubic-bezier(.22,.9,.32,1);
}
.k-footer [data-footlink]::after {
  content:'';
  position:absolute;
  left:0;
  right:0;
  bottom:-2px;
  height:1.5px;
  background:#EE1C25;
  transform:scaleX(0);
  transform-origin:left;
  transition:transform .32s cubic-bezier(.22,.9,.32,1);
}
.k-footer [data-foot-legal] {
  display:flex;
  align-items:center;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:14px 24px;
  padding-top:18px;
  border-top:1px solid rgba(26,29,35,.1);
}
.k-footer [data-legal] {
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:10px 18px;
  font-size:13.5px;
  color:#5C616B;
}
.k-footer .k-foot-sep {
  width:1px;
  height:14px;
  background:rgba(26,29,35,.14);
}
.k-footer [data-hoshlink] {
  color:inherit;
  display:inline-block;
  text-decoration:none;
  font-weight:600;
  transition:color .26s cubic-bezier(.22,.9,.32,1),transform .26s cubic-bezier(.22,.9,.32,1);
}
.k-footer .k-foot-social {
  display:flex;
  align-items:center;
  gap:16px;
}
.k-footer .k-foot-follow {
  font-size:13.5px;
  color:#5C616B;
  user-select:none;
  -webkit-user-select:none;
}
.k-footer .k-foot-social-row {
  display:flex;
  align-items:center;
  gap:10px;
}
.k-footer [data-social] {
  width:36px;
  height:36px;
  flex:none;
  border-radius:10px;
  background:rgba(255,255,255,.82);
  border:1px solid rgba(255,255,255,.78);
  display:flex;
  align-items:center;
  justify-content:center;
  transition:transform .3s cubic-bezier(.22,.9,.32,1),background .3s ease,border-color .3s ease;
}
.k-footer [data-social] svg {
  display:block;
  transition:stroke .3s ease,fill .3s ease;
}
@media (hover:hover) and (pointer:fine) {
  .k-footer [data-hoshlink]:hover {
    color:#6FB82C;
    transform:translateY(-2px);
  }
  .k-footer [data-footlink]:hover {
    color:#EE1C25;
    transform:translateX(3px);
  }
  .k-footer [data-footlink]:hover::after {
    transform:scaleX(1);
  }
  .k-footer [data-social]:hover {
    transform:translateY(-3px);
    background:rgba(238,28,37,.1);
    border-color:rgba(238,28,37,.35);
  }
  .k-footer [data-social]:hover svg {
    stroke:#EE1C25;
  }
  .k-footer [data-social]:hover svg path[fill] {
    fill:#EE1C25;
  }
}
@media (max-width:1100px) {
  .k-footer [data-foot-grid="split"] {
    grid-template-columns:1fr !important;
    gap:26px !important;
  }
  .k-footer [data-foot-grid="cols"] {
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:26px !important;
  }
}
@media (max-width:900px) {
  .k-footer > footer {
    padding:34px clamp(16px,5vw,40px) 22px !important;
  }
  .k-footer [data-foot-legal] {
    flex-direction:column !important;
    align-items:flex-start !important;
    gap:18px !important;
  }
}
@media (max-width:700px) {
  .k-footer [data-foot-grid="cols"] {
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:24px 16px !important;
  }
  .k-footer [data-foot-group] {
    grid-template-columns:minmax(0,1fr) !important;
    gap:8px !important;
  }
  .k-footer [data-foot-group] > span:first-child {
    grid-row:auto !important;
    justify-content:flex-start !important;
    height:24px !important;
  }
  .k-footer [data-foot-group] > span:nth-child(2) {
    grid-row:auto !important;
    min-height:0 !important;
  }
  .k-footer [data-foot-group] > div {
    grid-column:1 !important;
  }
  .k-footer [data-foot-group] svg {
    width:24px !important;
    height:24px !important;
  }
  .k-footer [data-footlink] {
    max-width:100% !important;
    overflow-wrap:anywhere !important;
    line-height:1.35 !important;
  }
}
@media (max-width:640px) {
  .k-totop span {
    display:none;
  }
  .k-totop {
    padding:11px 12px;
  }
}
@media (max-width:420px) {
  .k-footer [data-foot-grid="cols"] {
    gap:22px 12px !important;
  }
}

/* ---- aus dem Markup ausgelagerte inline-styles -------------
   Stehen bewusst am Dateiende: gleiche Spezifitaet, spaetere
   Quellposition - damit gewinnen sie wie zuvor die inline-Regel. */

.k-footer [data-foot] {
  position:relative;
  overflow:visible;
  width:auto;
  padding:44px clamp(20px,5vw,80px) 30px;
  background:rgba(247,245,241,.92);
  backdrop-filter:blur(28px) saturate(190%);
  -webkit-backdrop-filter:blur(28px) saturate(190%);
}

.k-footer .k-foot-deco {
  position:absolute;
  inset:0;
  overflow:hidden;
  pointer-events:none;
}

.k-footer [data-foot-tint] {
  position:absolute;
  inset:0;
  pointer-events:none;
  background:radial-gradient(70% 96% at 76% 12%, rgba(238,28,37,.085) 0%, rgba(238,28,37,.04) 30%, rgba(238,28,37,0) 72%), radial-gradient(38% 70% at 24% 82%, rgba(238,28,37,.045) 0%, rgba(238,28,37,0) 70%);
  -webkit-mask-image:linear-gradient(90deg,rgba(0,0,0,0) 0%,#000 9%,#000 88%,rgba(0,0,0,0) 100%),linear-gradient(180deg,rgba(0,0,0,0) 0%,#000 14%,#000 86%,rgba(0,0,0,0) 100%);
  -webkit-mask-composite:source-in;
  mask-image:linear-gradient(90deg,rgba(0,0,0,0) 0%,#000 9%,#000 88%,rgba(0,0,0,0) 100%),linear-gradient(180deg,rgba(0,0,0,0) 0%,#000 14%,#000 86%,rgba(0,0,0,0) 100%);
  mask-composite:intersect;
}

.k-footer [data-veil] {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  pointer-events:none;
  opacity:.5;
  -webkit-mask-image:linear-gradient(90deg,#000 0%,#000 74%,rgba(0,0,0,0) 99%),linear-gradient(180deg,rgba(0,0,0,0) 0%,#000 16%,#000 100%);
  -webkit-mask-composite:source-in;
  mask-image:linear-gradient(90deg,#000 0%,#000 74%,rgba(0,0,0,0) 99%),linear-gradient(180deg,rgba(0,0,0,0) 0%,#000 16%,#000 100%);
  mask-composite:intersect;
}/* End custom CSS */