@import url('https://fonts.googleapis.com/css2?family=Neuton:ital,wght@0,200;0,300;0,400;0,700;0,800;1,400&display=swap');
* {
  margin: 0;
  padding: 0;
  font-family: "Neuton", sans-serif; 
}
 
html {
  scroll-padding-top: 200px;
}

main p {
  margin-bottom: 0.2rem;
}

main a,
.frame a[class=""],
.frame a:not([class]) {
  color: #303030;
  text-decoration: none;
}

h1 {
  font-size: clamp(2.2rem, 3.2vw, 3.2rem);
  font-weight: 600;
  color: #222;
  position: relative;
}

h2 {
  font-size: clamp(1.8rem, 2.2vw, 2.2rem);
  font-weight: 400;
  color: #222;
  position: relative;
}

.mobilehead,
.timeline-item-date,
#pageid1 .logomenu,
#pageid1 .back-button,
slider h2 {
  display: none;
}

.hellgrau {
  background: #e5e5e5;
}


.black {
  background: #000;
	margin:2% auto 0;
}
.black * {
  color: #fff;}

.black  .frame a:not([class]) {color:#fff; padding-top:10px; display: block;}

.breadcrumps p,
.rootline p {
  text-transform: uppercase;
}

.rootline p {
  margin-bottom: 0;
  padding: 8px 0;
  font-size: 1rem;
}

.skip-link {
  position: absolute;
  top: -40px;
  left: 0;
  z-index: 1000;
  padding: 8px 16px;
  background: #000;
  color: #fff;
  text-decoration: none;
  font-weight: bold;
}

.skip-link:focus {
  top: 10px;
}

.timeline-item-header h2 {
  color: #000;
  font-size: 2rem;
}

.timeline-item-inner {
  overflow: hidden;
  border: 1px solid #e5e7eb;
  border-radius: 1.25rem;
  box-shadow: 0 10px 26px rgba(0, 0, 0, 0.06);
  transition: transform 0.15s ease, box-shadow 0.15s ease, border-color 0.15s ease;
}

#pageid1 footer {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

#pageid1 #c205 {
  min-height: 70vh;
}

#pageid1 #c205 h1 {
  padding-top: 60px;
}

#pageid1 #c205 .gallery-item picture {
  width: 90%;
  padding-top: 8vh;
}

.headerimage-inner .slick-dotted.slick-slider {
  margin-bottom: 0;
}

#footer .textmedia-gallery img {
  display: block;
  width: auto;
  height: 70px;
  margin: 0 0 10px;
}

footer {
  margin-top: 50px;
  padding-top: 60px;
  background-color: #000;
}

footer *,
footer p strong,
footer p i,
#footer a {
  color: #fff;
}

footer p strong,
footer p i {
  font-size: 1.5rem;
  font-weight: normal;
  font-style: normal;
}

footer .copyright {
  background-color: #393939;
}

.copyright p {
  font-size: 0.8rem;
}

#footer .btn {
  background: #fff;
  color: #111 !important;
  border: 1px solid #fff;
}

#footer .btn::after {
  color: #111;
}

#footer .btn:hover {
  background: #e5e5e5;
  color: #000;
  border-color: #e5e5e5;
  transform: translateY(-2px);
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.2);
}

#footer .btn:hover::after {
  transform: translateX(6px);
}

.filelink-list span::before {
  font-family: 'Font Awesome 5 Free';
  content: '\f1c1';
  margin-right: 5px;
  color: #79ac2b;
  font-size: 30px;
  font-weight: 900;
}

.news-archiv .news-img-wrap img {
  filter: grayscale(100%);
}

.slick-slide img {
  display: block;
  width: 100%;
  margin: 0 auto;
}

.slick-slide figure .caption {
  position: absolute;
  top: 35%;
  z-index: 10000;
  width: 100%;
  margin: 0 auto;
  padding-top: 0.25rem;
  color: #fff;
  font-size: 5rem;
  font-weight: bold;
  text-align: center;
  word-wrap: break-word;
  opacity: 0.8;
}

.slick-prev,
.slick-next {
  z-index: 100000;
}

.slick-prev {
  left: 25px !important;
}

.slick-next {
  right: 25px !important;
}

.slick-next::before,
.slick-prev::before {
  color: var(--stwv-blue, #0089cc) !important;
  font-size: 2.5rem;
}

ul.slick-dots {
  bottom: 3% !important;
}

.slider {
  display: table !important;
  position: relative;
  width: 100% !important;
  table-layout: fixed !important;
  background: #888;
}

.slider .container {
  max-width: inherit !important;
  width: 100% !important;
}

.slider .container,
.slider .container .row,
.slider .container .col {
  padding: 0;
  margin: 0;
}

.t3s-slickslider .slick-slide {
  padding: 0.1%;
}

.frame-custom-22 .gallery-item img {
  width: 80%;
}

.frame-custom-23 .gallery-item img {
  width: 60%;
}

.frame-custom-24 .gallery-item img {
  width: 40%;
}

.frame-custom-25 .gallery-item img {
  width: 20%;
}

.frame-custom-26 .gallery-item img {
  width: 10%;
}

.frame-custom-27 .gallery-item img {
  float: left;
  width: 80%;
}

.frame-custom-28 .gallery-item img {
  float: left;
  width: 60%;
}

.frame-custom-29 .gallery-item img {
  float: left;
  width: 40%;
}

.frame-custom-30 .gallery-item img {
  float: left;
  width: 20%;
}

.frame-custom-31 .gallery-item img {
  float: left;
  width: 10%;
}

.frame-custom-10 .image {
  max-width: 50%;
}

.frame-custom-11 .image {
  max-width: 65%;
}

.frame-custom-12 .image {
  max-width: 80%;
}

main .frame-custom-50 .gallery-item img {
  border-radius: 46px;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.2);
}

.frame-background-primary h2 {
  color: #fff !important;
}

.frame-space-before-extra-small {
  display: block;
  margin-top: 0.5%;
}

.frame-space-before-small {
  display: block;
  margin-top: 3% !important;
}

.frame-space-before-medium {
  display: block;
  margin-top: 6% !important;
}

.frame-space-before-large {
  display: block;
  margin-top: 9%;
}

.frame-space-after-extra-small {
  display: block;
  margin-bottom: 0.5%;
}

.frame-space-after-small {
  display: block;
  margin-bottom: 3%;
}

.frame-space-after-medium {
  display: block;
  margin-bottom: 6%;
}

.frame-space-after-large {
  display: block;
  margin-bottom: 9%;
}

.container .row .col .row .container,
.container .row .col .row .container .row,
.container .row .col .row .container .row .col {
  padding: 0;
  margin: 0;
}

.kopfbereich .textmedia,
.footertext .textmedia,
.hunderter .textmedia {
  gap: 0;
}

.logoimage .gallery-item figure {
  max-width: 65%;
  margin: 0 auto;
}

.hunderter {
  max-width: 100% !important;
  padding: 0 !important;
  z-index: 0;
}

.hunderter .megazeil,
.hunderter .ce-outer,
.hunderter .ce-row,
.hunderter .ce-gallery,
.hunderter .ce-textpic,
.hunderter .image {
  width: 100% !important;
}

.hunderter .container,
.hunderter .frame-container-default {
  max-width: 100%;
  padding: 0 !important;
  margin: 0;
}

.hunderter .frame {
  width: 100%;
  height: auto;
  margin: 0;
  padding: 0;
}

.hunderter .ce-gallery[data-ce-columns="3"] .ce-column {
  width: 33.33333% !important;
}

.hunderter .ce-gallery img {
  width: 100%;
  padding: 0;
}

.hunderter .ce-column {
  padding: 0 !important;
}

.hunderter hr {
  height: 0;
  padding: 2% 0;
  background: none !important;
}

.textmedia,
.textpic {
  gap: 0 2rem;
}

.tx-powermail .col-sm-2,
.powermail_fieldset .col-md-6 {
  width: 100%;
}

.powermail_tab_navigation .pull-right {
  float: right;
}

.powermail_tab_navigation .pull-left {
  float: left;
}

.btn-group {
  width: 100%;
}

legend {
  margin-top: 40px;
  font-size: 1.5rem;
}

.carousel-item-bodytext a {
  padding: 6px 14px;
  background-color: #216096;
  color: #fff !important;
  border-radius: 4px;
}

.carousel-item-bodytext a:hover {
  background-color: #009770 !important;
}

.kopfbereich .submitbutt {
  float: left;
}

span.resetbutt a {
  max-width: 180px !important;
}

span.submitbutt input {
  box-sizing: border-box !important;
  display: inline-block !important;
  min-width: 100px !important;
  max-width: 120px !important;
  margin: 0 0 0 10px !important;
  padding: 0.85em 0.2rem !important;
  border: 2px solid #262626 !important;
  border-radius: 1.5em !important;
  background-color: #fff !important;
  color: #262626 !important;
  font-size: 0.888em !important;
  line-height: 1em !important;
  font-weight: 400 !important;
  text-align: center !important;
  text-decoration: none !important;
  cursor: pointer !important;
  transition: all 0.15s !important;
}

.button-wrapper {
  text-align: right;
}

.back-button,
.btn-primary {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  margin-top: 20px;
  padding: 5px 18px;
  border: none;
  border-radius: 12px;
  background: #4a4a4a;
  color: #fff;
  font-size: 0.8rem;
  font-weight: 500;
  transition: all 0.25s ease;
}

.back-button:hover,
.btn-primary:hover {
  background: #2f2f2f;
  color: #fff;
  transform: translateY(-2px);
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15);
}

.back-button:focus,
.btn-primary:focus {
  box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.15);
}

.btn-primary::after {
  content: "→";
  margin-left: 8px;
  font-size: 1.3rem;
  transition: transform 0.25s ease;
}

.btn-primary:hover::after {
  transform: translateX(6px);
}

.card-img-top img {
  width: 100%;
  max-width: 100%;
  height: auto;
  padding: 4% 6%;
  border-radius: 46px;
}

.cta-section .btn {
  padding: 14px 28px;
  font-size: 1.1rem;
  border-radius: 12px;
}

.cta-section .btn-outline-dark:hover {
  background: #111;
  color: #fff;
}

.hero {
  margin-bottom: 100px;
  box-shadow: 0 60px 120px -40px rgba(0, 0, 0, 0.35);
}

.social-icons a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.15);
  color: #fff;
  font-size: 18px;
  text-decoration: none;
  transition: all 0.25s ease;
}

.social-icons a:hover {
  background: #fff;
  color: #4d7a43;
}

@media (max-width: 768px) {
  .hero {
    margin-bottom: 60px;
  }
}