@charset "UTF-8";
/*
  Theme Name:   fcfreiergrund-2020
  Theme URI:    https://www.fcfreiergrund.de
  Description:  2020 Theme des FC Freier Grund
  Author:       Fabian Wohl
  Author URI:   guentzlutz.media - Güntztig!
  Version:      0.1
 */
/**
  Imports
 */
/**
 * Konstanten
 */
/**
 *  Partial for:
 *
 *  Media Query Mixins  (mobile first)
 *
 */
@media only screen and (min-width: 1280px) {
  .content-wrapper,
.title-wrapper {
    margin: 0 auto;
    max-width: 1280px;
  }
}

.content-wrapper {
  margin: 0 1em;
  padding: 1em;
  border-radius: 4px;
}
@media only screen and (min-width: 768px) {
  .content-wrapper {
    margin: 0 23%;
    padding: 2.5rem;
  }
}

.title-wrapper {
  margin: 0 1em;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  height: 100%;
}
@media only screen and (min-width: 768px) {
  .title-wrapper {
    margin: 0 23%;
  }
}

.start-slides__container {
  padding: 2em 1em;
}
@media only screen and (min-width: 1024px) {
  .start-slides__container {
    padding: 2em 1em 0 6em;
  }
}
@media only screen and (min-width: 1280px) {
  .start-slides__container {
    padding: 2em 1em 0 10em;
  }
}

.badge-container .wp-block-group__inner-container {
  display: grid;
  grid-template-columns: repeat(2, 10em);
  grid-template-rows: repeat(5, 5em);
}
@media only screen and (min-width: 1280px) {
  .badge-container .wp-block-group__inner-container {
    grid-template-columns: repeat(3, 12em);
  }
}

.footer-wrapper {
  margin-left: 0;
}
@media only screen and (min-width: 1024px) {
  .footer-wrapper {
    margin-left: 4rem;
  }
}
@media only screen and (min-width: 1280px) {
  .footer-wrapper {
    margin: 12.5rem 0 0 8rem;
  }
}

#anfahrt .wp-block-fc-freiergrund-blocks-content-wrapper-m {
  position: relative;
}
#anfahrt .wp-block-fc-freiergrund-blocks-content-wrapper-m::before {
  position: absolute;
  display: block;
  content: "";
  left: -45px;
  top: 0;
  width: 200px;
  height: 40px;
  background-color: #81d2c7;
  z-index: -1;
}

@media screen and (max-width: 375px) {
  .custom-break--375::before {
    content: "\a";
    white-space: pre;
  }
}
@media screen and (max-width: 425px) {
  .custom-break--425::before {
    content: "\a";
    white-space: pre;
  }
}
#site-header {
  position: fixed;
  top: 0;
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 4em;
  background-color: #f8f8f8;
  border-bottom: 1px solid #e0e0e0;
  z-index: 999;
  transition: height ease 0.5s;
}
@media only screen and (min-width: 1024px) {
  #site-header {
    width: 4em;
    height: 100%;
    border-right: 1px solid #898989;
    background: linear-gradient(168deg, #3a3a3a 60%, #545454 85%, #898989);
    border-bottom: none;
    justify-content: space-between;
    transition: none;
  }
}
@media only screen and (min-width: 1280px) {
  #site-header {
    width: 8em;
    height: 100%;
  }
}
#site-header.is--open {
  height: 99.9999%;
  width: 100%;
  background: #f8f8f8;
  transition: height ease 0.5s;
  justify-content: space-between;
}
#site-header.is--open .sidebar-nav {
  position: fixed;
  width: 100%;
  border-bottom: 4px solid #81d2c7;
  z-index: 1;
  background-color: #f8f8f8;
}
#site-header.is--open .sidebar-scroll-container {
  display: none;
}
#site-header.is--open .sidebar-mobile-nav {
  display: block;
  margin-top: 20vh;
  margin-bottom: 3em;
}
#site-header.is--open .sidebar-bottom {
  position: relative;
  bottom: 0;
}
#site-header.is--open .sidebar-bottom .sidebar-logo {
  display: block;
  z-index: 1;
}
#site-header.is--open .sidebar-bottom .sidebar-rights-nav {
  display: block;
  margin: 0 1em;
  padding: 1em 0;
  border-top: 1px solid #e0e0e0;
}
#site-header.is--open .sidebar-bottom .social-menu {
  display: none;
}
#site-header .sidebar-bottom {
  width: 100%;
  position: absolute;
}
@media only screen and (min-width: 1024px) {
  #site-header .sidebar-bottom {
    position: relative;
  }
}
#site-header .sidebar-bottom .sidebar-logo {
  position: fixed;
  width: 4em;
  top: 2em;
  left: calc(50% - 2em);
}
@media only screen and (min-width: 1024px) {
  #site-header .sidebar-bottom .sidebar-logo {
    display: none;
  }
}
#site-header .sidebar-bottom .sidebar-logo a {
  display: block;
}
#site-header .sidebar-bottom .sidebar-logo img {
  height: 4em;
  width: 4em;
}

#site-content {
  margin-top: 8em;
}
#site-content .wp-block-columns {
  margin: 0;
}

#site-footer {
  position: relative;
  background: linear-gradient(to bottom, #898989, #fefefe);
}
#site-footer h4 {
  color: #3a3a3a;
}
#site-footer .footer-logo {
  position: absolute;
  top: -2.25rem;
  left: calc(50% - 2rem);
}
@media only screen and (min-width: 1024px) {
  #site-footer .footer-logo {
    position: relative;
    left: inherit;
    top: inherit;
    margin: -1rem;
  }
}
#site-footer .footer-logo img {
  width: 4rem;
  height: 4rem;
}
@media only screen and (min-width: 1024px) {
  #site-footer .footer-logo img {
    width: 12em;
    height: 12em;
  }
}
#site-footer .copyright {
  bottom: 0;
  width: 100%;
  font-family: "Montserrat", sans-serif;
  letter-spacing: -1px;
  font-weight: 300;
  text-align: right;
  padding: 1rem 3rem;
  background-color: #e0e0e0;
  color: #898989;
}
@media only screen and (min-width: 1024px) {
  #site-footer .copyright {
    text-align: right;
  }
}

@media only screen and (min-width: 1024px) {
  .page-template-page-startseite #site-header .sidebar-scroll-container {
    display: block;
  }
}
@media only screen and (min-width: 1024px) {
  .page-template-page-startseite #site-header.is--open .sidebar-scroll-container {
    display: none;
  }
}
.page-template-page-startseite #site-content {
  margin-top: 4em;
}
@media only screen and (min-width: 1024px) {
  .page-template-page-startseite #site-content {
    margin: 0;
  }
}
.page-template-page-startseite .start-slides__content {
  position: relative;
}
.page-template-page-startseite #startslide {
  background: linear-gradient(180deg, rgba(137, 137, 137, 0.5), rgba(43, 43, 43, 0.875) 60%);
  box-shadow: inset 0 -6px 12px rgba(0, 0, 0, 0.25);
}
@media only screen and (min-width: 1024px) {
  .page-template-page-startseite #startslide {
    background: none;
    box-shadow: none;
  }
}
.page-template-page-startseite #startslide .start-slides__container {
  position: relative;
}
@media only screen and (min-width: 1024px) {
  .page-template-page-startseite #startslide .start-slides__container {
    padding: 10rem 1rem 10rem 10rem;
  }
  .page-template-page-startseite #startslide .start-slides__container::before {
    display: block;
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(180deg, rgba(137, 137, 137, 0.5), rgba(43, 43, 43, 0.875) 60%);
    z-index: 0;
  }
  .page-template-page-startseite #startslide .start-slides__container::after {
    position: absolute;
    top: 0;
    left: 0;
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background: url("http://www.fcfreiergrund.de/wp-content/uploads/2023/05/au_drohne.webp") no-repeat;
    background-size: cover;
    background-position: center;
    z-index: -1;
  }
}
.page-template-page-startseite #startslide h1 {
  color: #f8f8f8;
  line-height: 0.95em;
}
.page-template-page-startseite #startslide h2 {
  color: #81d2c7;
}
@media only screen and (min-width: 1024px) {
  .page-template-page-startseite #startslide .wp-block-columns {
    height: 100%;
  }
}
.page-template-page-startseite #startslide .wp-block-columns .wp-block-column {
  z-index: 1;
}
@media screen and (min-width: 600px) {
  .page-template-page-startseite #startslide .wp-block-columns .wp-block-column:first-of-type {
    flex-basis: calc(100% - 2rem) !important;
  }
}
@media only screen and (min-width: 768px) {
  .page-template-page-startseite #startslide .wp-block-columns .wp-block-column:first-of-type {
    margin-top: 7rem;
    flex-basis: 0 !important;
  }
}
.page-template-page-startseite #senioren {
  position: relative;
  min-height: 100vh;
}
.page-template-page-startseite #senioren::after {
  display: block;
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url("./assets/img/layout/nk_umriss.svg") 101% 65%/40% no-repeat;
  z-index: -2;
}
.page-template-page-startseite #senioren .start-slides__container {
  padding: 0;
}
@media only screen and (min-width: 1024px) {
  .page-template-page-startseite #senioren .start-slides__container {
    padding: 10rem 0 10rem 4rem;
  }
}
@media only screen and (min-width: 1280px) {
  .page-template-page-startseite #senioren .start-slides__container {
    padding: 0rem 0 0rem 8rem;
  }
}
.page-template-page-startseite #senioren p {
  color: #898989;
}
.page-template-page-startseite #junioren {
  position: relative;
}
.page-template-page-startseite #junioren::after {
  display: block;
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url("./assets/img/layout/hex.svg") 0% 100%/150% no-repeat;
  opacity: 0.7;
  z-index: -1;
}
.page-template-page-startseite #junioren .start-slides__container {
  position: relative;
  padding: 0;
}
@media only screen and (min-width: 1024px) {
  .page-template-page-startseite #junioren .start-slides__container {
    padding: 0 0 0 4rem;
  }
}
@media only screen and (min-width: 1280px) {
  .page-template-page-startseite #junioren .start-slides__container {
    padding: 0 0 0 8rem;
  }
}
.page-template-page-startseite #junioren .wp-block-column {
  z-index: 3;
}
.page-template-page-startseite #junioren h2 {
  background-color: #81d2c7;
  padding: 1rem;
  margin: 0 0 2rem 0;
  width: 80%;
  transform: translateY(4rem);
  border-radius: 0 4px 4px 0;
}
@media screen and (min-width: 600px) {
  .page-template-page-startseite #junioren h2 {
    width: 100%;
  }
}
@media only screen and (min-width: 1024px) {
  .page-template-page-startseite #junioren h2 {
    transform: translateY(3rem);
    margin: 0;
    letter-spacing: 4px;
  }
}
.page-template-page-startseite #verein {
  position: relative;
}
.page-template-page-startseite #verein::before {
  position: absolute;
  display: block;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(180deg, transparent 0%, #81d2c7 50%, transparent 100%);
  z-index: -5;
}
.page-template-page-startseite #verein .wp-block-columns p {
  color: #898989;
}
.page-template-page-startseite #verein .wp-block-columns p.badge {
  display: inline-block;
  padding: 0 1rem 0 0.5rem;
  margin: 0.5rem 0;
  font-family: "Raleway", "Arial Black", sans-serif;
  font-variant: small-caps;
  color: #81d2c7;
  background-color: #f8f8f8;
  border-radius: 2px 0 0 2px;
}
.page-template-page-startseite #anfahrt {
  position: relative;
}
.page-template-page-startseite #anfahrt::before {
  position: absolute;
  content: "";
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
  background: url("./assets/img/layout/field.svg") no-repeat 100% 0%/cover;
  z-index: -1;
}
.page-template-page-startseite #anfahrt p {
  color: #898989;
}
.page-template-page-startseite #anfahrt .info-cards .wp-block-group__inner-container {
  display: flex;
  flex-direction: column;
}
@media only screen and (min-width: 600px) {
  .page-template-page-startseite #anfahrt .info-cards .wp-block-group__inner-container {
    align-items: center;
  }
}
.page-template-page-startseite #anfahrt .info-cards p {
  color: #f8f8f8;
}
.page-template-page-startseite #anfahrt .info-cards p.info-card__subtitle {
  color: #3a3a3a;
}
.page-template-page-startseite #anfahrt .wp-block-fc-freiergrund-blocks-info-card .info-card__address p {
  color: #f8f8f8;
}
.page-template-page-startseite #site-footer {
  background: #e0e0e0;
}
@media only screen and (min-width: 1024px) {
  .page-template-page-startseite #site-footer .footer-wrapper {
    margin: 0 0 0 8rem;
  }
}

.page-template-default #site-content {
  margin-top: 8rem;
}
@media only screen and (min-width: 1280px) {
  .page-template-default #site-content {
    margin-top: 6em;
  }
}
.page-template-default .title-wrapper {
  margin: 0 0 2rem 0;
}
@media only screen and (min-width: 1024px) {
  .page-template-default .title-wrapper {
    margin: 0 0 0 4rem;
  }
}
@media only screen and (min-width: 1280px) {
  .page-template-default .title-wrapper {
    margin: 0 0 0 8rem;
  }
}
.page-template-default .title h1 {
  width: 100%;
  padding: 1rem;
  font-family: "Raleway", "Arial Black", sans-serif;
  font-size: 1.75rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 4px;
  color: #3a3a3a;
  background-color: #81d2c7;
  z-index: 1;
}
@media only screen and (min-width: 1280px) {
  .page-template-default .title h1 {
    font-size: 3.75rem;
    margin: 0 0 4rem 0;
  }
}
.page-template-default .content a {
  color: #81d2c7;
  font-weight: bold;
  text-decoration: none;
  word-break: break-word;
}
.page-template-default .content a:hover {
  color: #3a3a3a;
}
.page-template-default .content p {
  margin: 0.5em 0;
  color: #898989;
}
.page-template-default .content p strong {
  color: #3a3a3a;
}
.page-template-default .content h3 {
  font-size: 1.35em;
  margin: 1em 0;
}
.page-template-default .content h3:first-of-type {
  margin: 0;
}
.page-template-default .content p.sub-headline {
  font-size: 1.125em;
  color: #f8f8f8;
  transform: translate(-0.75em, -2.8em);
}
.page-template-default .content h6 {
  margin: 0.5em 0;
  font-size: 1em;
}

.single #site-content {
  margin: 4rem 0 0 0;
}
@media only screen and (min-width: 1024px) {
  .single #site-content {
    margin: 0;
  }
}
.single #site-content .title .title-background {
  position: relative;
  height: 250px;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.single #site-content .title .title-background::before {
  position: absolute;
  content: "";
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: #f8f8f8;
  opacity: 0.25;
}
@media only screen and (min-width: 768px) {
  .single #site-content .title .title-background {
    height: 500px;
  }
}
@media only screen and (min-width: 1024px) {
  .single #site-content .title .title-background {
    background-size: contain;
    background-position: 4em center;
    height: 600px;
  }
}
@media only screen and (min-width: 1280px) {
  .single #site-content .title .title-background {
    height: 600px;
    background-position: 8em center;
  }
}
.single #site-content .title h1 {
  padding: 1rem;
  font-family: "Raleway", "Arial Black", sans-serif;
  font-size: 1.75rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 4px;
  color: #3a3a3a;
  background-color: #81d2c7;
  z-index: 1;
}
@media only screen and (min-width: 1024px) {
  .single #site-content .title h1 {
    width: 100%;
    font-size: 4vw;
  }
}
.single #site-content .title .title-wrapper {
  position: relative;
  margin: 0;
  bottom: -1.5rem;
}
@media only screen and (min-width: 1280px) {
  .single #site-content .title .title-wrapper {
    margin: 0 0 0 8rem;
    bottom: -4rem;
  }
}
.single #site-content .title.no-image {
  margin: 10rem 0 0 0;
}
@media only screen and (min-width: 1024px) {
  .single #site-content .title.no-image {
    margin: 6rem 0 0 0;
  }
}
.single #site-content .title.no-image .title-wrapper {
  margin: 0;
}
@media only screen and (min-width: 1280px) {
  .single #site-content .title.no-image .title-wrapper {
    margin: 0 0 0 8rem;
  }
}
.single #site-content .title.no-image h1 {
  background-color: #81d2c7;
  font-size: 1.75rem;
  margin: 0 0 2rem 0;
  width: 80%;
  color: #3a3a3a;
  text-shadow: none;
}
@media only screen and (min-width: 1280px) {
  .single #site-content .title.no-image h1 {
    font-size: 4vw;
    width: 100%;
  }
}
.single #site-content .content {
  margin: 6rem 0 0 0;
}
@media only screen and (min-width: 1280px) {
  .single #site-content .content {
    margin: 8rem 0 0 0;
  }
}
.single #site-content .content h2 {
  font-size: 1.25rem;
}
@media only screen and (min-width: 1280px) {
  .single #site-content .content h2 {
    font-size: 1.75vw;
  }
}
.single #site-content .content p {
  margin: 0.5em 0;
  color: #898989;
}
.single #site-content .content p.subheadline {
  font-family: "Montserrat", sans-serif;
  font-size: 1.2rem;
  font-weight: 900;
  font-variant: small-caps;
  margin-bottom: 1rem;
  color: #3a3a3a;
}
.single #site-content .content .content-wrapper {
  transform: translateY(-2em);
}
.single #site-content .content .margin-top {
  margin: 2rem 0 0 0;
}

.single-junioren h2,
.single-senioren h2 {
  font-size: 2vw;
  margin-bottom: 2rem;
}

.head-navigation {
  display: none;
}
@media only screen and (min-width: 1024px) {
  .head-navigation {
    display: block;
    position: absolute;
    width: 100%;
    z-index: 100;
  }
}
.head-navigation ul.menu {
  display: flex;
  list-style: none;
  justify-content: flex-end;
}
@media only screen and (min-width: 1280px) {
  .head-navigation ul.menu {
    margin: 0 2em;
  }
}
.head-navigation ul.menu li {
  margin: 1em;
}
.head-navigation ul.menu li a {
  color: #f8f8f8;
  text-transform: uppercase;
  text-decoration: none;
}
.head-navigation ul.menu li a:hover {
  text-decoration: underline;
}
@media only screen and (min-width: 1024px) {
  .head-navigation ul.menu li a {
    font-size: 18px;
  }
}
@media only screen and (min-width: 1280px) {
  .head-navigation ul.menu li a {
    font-size: 28px;
  }
}

.sidebar-nav {
  display: flex;
  justify-content: flex-end;
  z-index: 0;
  border-bottom: 4px solid #81d2c7;
}
@media only screen and (min-width: 1024px) {
  .sidebar-nav {
    border: none;
    justify-content: flex-start;
  }
}
.sidebar-nav .hamburger {
  padding: 18px;
}
.sidebar-nav .hamburger:focus {
  outline: none;
}
@media only screen and (min-width: 1024px) {
  .sidebar-nav .hamburger {
    padding: 18px 16px;
  }
}
@media only screen and (min-width: 1280px) {
  .sidebar-nav .hamburger {
    padding: 18px 48px;
  }
}
.sidebar-nav .hamburger-inner,
.sidebar-nav .hamburger-inner::before,
.sidebar-nav .hamburger-inner::after {
  background-color: #898989;
  height: 2px;
  width: 32px;
}
.sidebar-nav .hamburger-inner::before {
  top: -8px;
}
.sidebar-nav .hamburger-inner::after {
  bottom: -8px;
}
.sidebar-nav .hamburger.is-active .hamburger-inner,
.sidebar-nav .hamburger.is-active .hamburger-inner::before,
.sidebar-nav .hamburger.is-active .hamburger-inner::after {
  background-color: #898989;
}

.sidebar-mobile-nav {
  display: none;
  width: 100%;
}
.sidebar-mobile-nav ul.menu {
  list-style: none;
  display: flex;
  flex-direction: column;
  margin-left: 2em;
}
@media only screen and (min-width: 1024px) {
  .sidebar-mobile-nav ul.menu {
    flex-direction: row;
    justify-content: space-around;
  }
}
.sidebar-mobile-nav ul.menu li.menu-item {
  margin: 0.25em 0;
  position: relative;
  cursor: pointer;
}
@media only screen and (min-width: 1024px) {
  .sidebar-mobile-nav ul.menu li.menu-item {
    min-width: 200px;
  }
}
.sidebar-mobile-nav ul.menu li.menu-item a {
  font-family: "Montserrat";
  text-transform: uppercase;
  font-size: 1.25em;
  font-weight: 400;
  color: #3a3a3a;
  text-decoration: none;
  letter-spacing: 0.75px;
  transition: letter-spacing ease 0.5s;
}
.sidebar-mobile-nav ul.menu li.menu-item a:hover {
  letter-spacing: 3px;
}
.sidebar-mobile-nav ul.menu ul.sub-menu {
  display: none;
  flex-direction: column;
  list-style: none;
}
.sidebar-mobile-nav ul.menu ul.sub-menu.sub-menu--open {
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media only screen and (min-width: 1024px) {
  .sidebar-mobile-nav ul.menu ul.sub-menu.sub-menu--open {
    align-items: flex-start;
  }
}
.sidebar-mobile-nav ul.menu ul.sub-menu li.menu-item {
  min-width: 200px;
  margin: 0.5em 0;
}
.sidebar-mobile-nav ul.menu ul.sub-menu li.menu-item a {
  color: #898989;
  font-size: 1.125em;
  line-height: 1.5em;
  transition: letter-spacing ease 0.5s;
}
.sidebar-mobile-nav ul.menu ul.sub-menu li.menu-item a:hover {
  letter-spacing: 2px;
}

.sidebar-mobile-nav {
  display: none;
  width: 100%;
}
.sidebar-mobile-nav ul.menu {
  list-style: none;
  display: flex;
  flex-direction: column;
  margin-left: 2em;
}
@media only screen and (min-width: 1024px) {
  .sidebar-mobile-nav ul.menu {
    flex-direction: row;
    justify-content: space-around;
  }
}
.sidebar-mobile-nav ul.menu li.menu-item {
  margin: 0.25em 0;
  position: relative;
  cursor: pointer;
}
@media only screen and (min-width: 1024px) {
  .sidebar-mobile-nav ul.menu li.menu-item {
    min-width: 200px;
  }
}
.sidebar-mobile-nav ul.menu li.menu-item a {
  font-family: "Montserrat";
  text-transform: uppercase;
  font-size: 1.25em;
  font-weight: 400;
  color: #3a3a3a;
  text-decoration: none;
  letter-spacing: 0.75px;
  transition: letter-spacing ease 0.5s;
}
.sidebar-mobile-nav ul.menu li.menu-item a:hover {
  letter-spacing: 3px;
}
.sidebar-mobile-nav ul.menu ul.sub-menu {
  display: none;
  flex-direction: column;
  list-style: none;
}
.sidebar-mobile-nav ul.menu ul.sub-menu.sub-menu--open {
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media only screen and (min-width: 1024px) {
  .sidebar-mobile-nav ul.menu ul.sub-menu.sub-menu--open {
    align-items: flex-start;
  }
}
.sidebar-mobile-nav ul.menu ul.sub-menu li.menu-item {
  min-width: 200px;
  margin: 0.5em 0;
}
.sidebar-mobile-nav ul.menu ul.sub-menu li.menu-item a {
  color: #898989;
  font-size: 1.125em;
  line-height: 1.5em;
  transition: letter-spacing ease 0.5s;
}
.sidebar-mobile-nav ul.menu ul.sub-menu li.menu-item a:hover {
  letter-spacing: 2px;
}

.sidebar-rights-nav {
  display: none;
}
.sidebar-rights-nav ul.menu {
  display: flex;
  list-style: none;
}
.sidebar-rights-nav ul.menu li {
  width: 33%;
  text-align: center;
}
.sidebar-rights-nav ul.menu li a {
  color: #898989;
  font-family: "Raleway", sans-serif;
  text-decoration: none;
  font-variant: all-small-caps;
  transition: all ease 0.5s;
}
.sidebar-rights-nav ul.menu li a:hover {
  text-decoration: underline;
}

.social-menu {
  display: none;
}
@media only screen and (min-width: 1024px) {
  .social-menu {
    display: flex;
    flex-direction: column;
    align-items: center;
  }
}
.social-menu ul.menu {
  list-style: none;
}
.social-menu__fb a, .social-menu__ig a {
  font-size: 0;
}
.social-menu__fb a::before, .social-menu__ig a::before {
  display: block;
  width: 24px;
  height: 24px;
  transition: all ease 0.3s;
  filter: drop-shadow(0px 1px 1px rgba(0, 0, 0, 0.65));
}
.social-menu__fb a:hover::before, .social-menu__ig a:hover::before {
  opacity: 0.5;
}
.social-menu__fb a::before {
  content: url("./assets/img/icons/icon_fb.svg");
}
.social-menu__ig a::before {
  content: url("./assets/img/icons/icon_ig.svg");
}

.footer-main {
  margin: 6rem 0;
  padding: 2em 0;
}
.footer-main__container {
  display: flex;
  justify-content: space-between;
}
@media only screen and (min-width: 1024px) {
  .footer-main__container {
    margin: 0 2em;
  }
}
.footer-main .footer-menu {
  display: none;
}
@media only screen and (min-width: 1024px) {
  .footer-main .footer-menu {
    display: block;
  }
}
.footer-main .footer-menu ul.menu {
  display: flex;
  list-style: none;
}
.footer-main .footer-menu li.menu-item {
  margin: 0 1rem 1rem 1rem;
  font-size: 1.2rem;
  font-weight: 600;
  min-width: 165px;
}
.footer-main .footer-menu li.menu-item a {
  color: #3a3a3a;
  letter-spacing: 2px;
  text-decoration: none;
  transition: all 0.5s ease-in-out;
}
.footer-main .footer-menu li.menu-item a:hover {
  letter-spacing: 4px;
}
.footer-main .footer-menu li.menu-item ul.sub-menu > li > a {
  color: #898989;
}
.footer-main .footer-menu li.menu-item .menu-item-object-senioren,
.footer-main .footer-menu li.menu-item .menu-item-object-junioren,
.footer-main .footer-menu li.menu-item .menu-item-object-verein {
  font-size: 1rem;
  font-weight: 500;
  margin: 0 0 1rem 0;
  padding: 0;
}
.footer-main .footer-menu ul.sub-menu {
  list-style: none;
  margin: 24px 0;
}

.footer-sub {
  margin: 0;
  padding-bottom: 2rem;
}
.footer-sub .sub-footer-menu ul.menu {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
  list-style: none;
  padding: 0 2rem;
}
@media only screen and (min-width: 1024px) {
  .footer-sub .sub-footer-menu ul.menu {
    justify-content: flex-end;
  }
}
.footer-sub .sub-footer-menu ul.menu li.menu-item {
  padding: 0 1rem;
}
.footer-sub .sub-footer-menu ul.menu li.menu-item a {
  color: #898989;
  text-decoration: none;
}
.footer-sub .sub-footer-menu ul.menu li.menu-item a:hover {
  text-decoration: underline;
}

.wp-block-button .wp-block-button__link {
  display: flex;
  width: 200px;
  justify-content: center;
  border-radius: 4px;
  background-color: transparent;
  border: 1px solid #3a3a3a;
  color: #3a3a3a;
  transition: all 0.3s ease;
}
.wp-block-button .wp-block-button__link:hover {
  background-color: #e0e0e0;
  color: #3a3a3a;
}

.wp-block-button.more {
  color: #f8f8f8;
}
.wp-block-button.more .wp-block-button__link {
  background-color: #81d2c7;
}

.wp-block-button.contact {
  color: #f8f8f8;
}
.wp-block-button.contact .wp-block-button__link {
  display: flex;
  align-items: center;
  background-color: transparent;
}
.wp-block-button.contact .wp-block-button__link::after {
  display: inline-block;
  content: url("./assets/img/icons/icon_plane.svg");
  width: 24px;
  height: 24px;
  margin-left: 16px;
}

.wp-block-button.cta .wp-block-button__link {
  color: #f8f8f8;
  background-color: #81d2c7;
  border: 1px solid #49beae;
  transition: all 0.3s ease;
}
.wp-block-button.cta .wp-block-button__link:hover {
  color: #49beae;
  background-color: #e0e0e0;
}

.page-template-page-startseite #junioren .wp-block-buttons .wp-block-button {
  margin: 0 0 1rem 0;
}
.page-template-page-startseite #junioren .wp-block-buttons .wp-block-button__link {
  display: flex;
  width: 200px;
  justify-content: center;
  color: #898989;
  background-color: transparent;
  border-radius: 2px;
  border: 1px solid #898989;
  letter-spacing: 2px;
}
.page-template-page-startseite #junioren .wp-block-buttons .wp-block-button__link:hover {
  background-color: #e0e0e0;
  color: #898989;
}
.page-template-page-startseite #verein .wp-block-buttons {
  margin: 2rem 0;
}

#senioren .wp-block-columns {
  margin: 0;
}
@media screen and (min-width: 600px) {
  #senioren .wp-block-columns {
    margin: 0 0 0 1rem;
  }
}
@media only screen and (min-width: 768px) {
  #senioren .wp-block-columns {
    flex-wrap: wrap !important;
    margin: 0 0 0 2rem;
  }
}
@media only screen and (min-width: 1280px) {
  #senioren .wp-block-columns {
    position: relative;
    flex-wrap: nowrap !important;
    margin: -5% 0 0 0;
    padding: 0 1rem 0 10%;
    z-index: 10;
  }
}
#senioren .wp-block-columns .wp-block-column {
  position: relative;
  margin: 0 0 2rem;
  padding: 2rem 2rem 2rem 5rem;
  border-radius: 4px;
  background-color: #f8f8f8;
  box-shadow: 0 6px 6px rgba(0, 0, 0, 0.125);
  min-height: 250px;
}
@media screen and (min-width: 600px) {
  #senioren .wp-block-columns .wp-block-column {
    margin: 0 1rem 1rem 0;
  }
}
@media only screen and (min-width: 768px) {
  #senioren .wp-block-columns .wp-block-column {
    flex-basis: calc(50% - 16px) !important;
    flex-grow: 0 !important;
  }
}
@media only screen and (min-width: 1280px) {
  #senioren .wp-block-columns .wp-block-column {
    margin: 0 0 0 2rem;
  }
}
#senioren .wp-block-columns a {
  display: inline-block;
  padding: 0.5rem 1rem 0 0.25rem;
  font-family: "Raleway", "Arial Black", sans-serif;
  font-size: 1.25rem;
  font-variant: small-caps;
  line-height: 0.5;
  text-decoration: none;
  color: #898989;
  border-bottom: 8px solid #81d2c7;
  transition: opacity ease 0.3s;
}
#senioren .wp-block-columns a:hover {
  opacity: 0.5;
}
#senioren .wp-block-columns p {
  position: relative;
  color: #3a3a3a;
  margin: 0 0 1rem 0;
  z-index: 1;
}
#senioren .wp-block-columns p.has-drop-cap {
  position: absolute;
  top: 1rem;
  left: 1rem;
  color: #898989;
  text-shadow: -4px 5px 0px rgba(0, 0, 0, 0.2);
  opacity: 0.175;
  z-index: 0;
}
#senioren .wp-block-columns p.subheadline {
  font-family: "Montserrat", sans-serif;
  font-size: 1.2rem;
  font-weight: 900;
  font-variant: small-caps;
  margin: 0 1rem 0 0;
  color: #3a3a3a;
}
#senioren .wp-block-columns p.more {
  position: absolute;
  left: 5rem;
  bottom: 1rem;
}

#verein .wp-block-columns .wp-block-column {
  position: relative;
}
@media screen and (min-width: 600px) and (max-width: 781px) {
  #verein .wp-block-columns .wp-block-column {
    flex-basis: 100% !important;
  }
}
#verein .wp-block-columns .wp-block-column:nth-of-type(1) {
  margin: 0 0 2rem 0;
}
@media only screen and (min-width: 768px) {
  #verein .wp-block-columns .wp-block-column:nth-of-type(1) {
    margin: 0;
  }
}
#verein .wp-block-columns .wp-block-column:nth-of-type(2) {
  padding: 0 3em 0 1em;
}
#verein .wp-block-columns .wp-block-column:nth-of-type(2) > * {
  z-index: 5;
}
#verein .wp-block-columns .wp-block-column:nth-of-type(2)::before {
  position: absolute;
  display: block;
  content: "";
  left: 50px;
  top: 80px;
  width: 200px;
  height: 25px;
  background-color: #49beae;
  z-index: -1;
}
#verein .wp-block-columns .wp-block-column:nth-of-type(2)::after {
  position: absolute;
  display: block;
  content: "";
  top: 5%;
  left: -10%;
  width: 105%;
  height: 100%;
  background-color: #f8f8f8;
  z-index: -2;
}
@media screen and (min-width: 600px) {
  #verein .wp-block-columns .wp-block-column:nth-of-type(2)::after {
    top: 10%;
  }
}
@media only screen and (min-width: 768px) {
  #verein .wp-block-columns .wp-block-column:nth-of-type(2)::after {
    top: 5%;
    left: -20%;
    width: 120%;
    height: 95%;
  }
}
@media only screen and (min-width: 1024px) {
  #verein .wp-block-columns .wp-block-column:nth-of-type(2)::after {
    top: 15%;
    left: -25%;
    height: 90%;
    width: 125%;
  }
}

#anfahrt .wp-block-columns .wp-block-column {
  display: flex;
  justify-content: center;
  align-items: center;
}

.wp-block-file {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: space-between;
  margin: 1rem 0;
  padding: 1rem 0;
  border-bottom: 1px solid #e0e0e0;
}
@media only screen and (min-width: 1280px) {
  .wp-block-file {
    flex-direction: row;
    align-items: center;
    padding: 2rem;
  }
}
.wp-block-file a {
  color: #898989;
  text-decoration: none;
}
.wp-block-file a:hover {
  color: #3a3a3a;
}
.wp-block-file a.wp-block-file__button {
  display: flex;
  font-size: 18px;
  font-variant: small-caps;
  margin: 1rem 0;
  padding: 12px 24px;
  border-radius: 4px;
  background-color: #e0e0e0;
  border: 1px solid transparent;
  color: #3a3a3a;
}
@media only screen and (min-width: 1280px) {
  .wp-block-file a.wp-block-file__button {
    margin: 0;
  }
}
.wp-block-file a.wp-block-file__button::after {
  display: block;
  content: url("./assets/img/icons/icon_download.svg");
  width: 16px;
  height: 16px;
  margin: 0 0 0 1rem;
}
.wp-block-file a.wp-block-file__button:hover {
  opacity: 1;
  background-color: #fefefe;
  color: #3a3a3a;
  border: 1px solid #3a3a3a;
}
.wp-block-file a.wp-block-file__button:hover::after {
  filter: invert(17%) sepia(1%) saturate(0%) hue-rotate(357deg) brightness(30%) contrast(83%);
}

#verein .wp-block-gallery {
  position: relative;
  display: grid;
  grid-template-columns: repeat(10, 1fr);
  grid-template-rows: repeat(14, 5rem);
}
#verein .wp-block-gallery::after {
  display: block;
  position: absolute;
  content: "";
  top: -3rem;
  left: 2rem;
  width: 100%;
  height: 100%;
  background-color: #898989;
  z-index: -1;
  grid-column: 6/span 4;
  grid-row: 9/span 4;
}
#verein .wp-block-gallery > .wp-block-image {
  margin: 0;
  width: 100% !important;
  box-shadow: 0 6px 6px rgba(0, 0, 0, 0.125);
}
#verein .wp-block-gallery > .wp-block-image figure {
  position: relative;
}
#verein .wp-block-gallery > .wp-block-image figure::before {
  display: block;
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(185deg, transparent 65%, rgba(248, 248, 248, 0.7));
  border-radius: 2px;
}
#verein .wp-block-gallery > .wp-block-image figure img {
  border-radius: 4px;
}
#verein .wp-block-gallery > .wp-block-image:nth-of-type(1) {
  grid-column: 1/span 4;
  grid-row: 3/span 3;
}
#verein .wp-block-gallery > .wp-block-image:nth-of-type(2) {
  grid-column: 2/span 8;
  grid-row: 5/span 7;
}
#verein .wp-block-gallery > .wp-block-image:nth-of-type(3) {
  grid-column: 3/span 6;
  grid-row: 11/span 4;
}

.home .wp-block-latest-posts {
  display: flex;
  flex-direction: column;
  align-items: center;
  bottom: 1rem;
  right: 0;
  margin: 3rem 0 0 0;
  padding: 0 6px;
}
@media only screen and (min-width: 1024px) {
  .home .wp-block-latest-posts {
    align-items: flex-end;
    position: relative;
    top: -22rem;
  }
}
@media only screen and (min-width: 1280px) {
  .home .wp-block-latest-posts {
    position: absolute;
    flex-direction: row;
    justify-content: flex-end;
    margin: 0;
  }
}
.home .wp-block-latest-posts li {
  display: grid;
  flex: 0 0 200px;
  grid-template-columns: 1fr;
  grid-template-rows: 70% 30%;
  margin: 0 0.25rem 2rem 0.25rem;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.35);
  border-radius: 2px;
}
@media only screen and (min-width: 1280px) {
  .home .wp-block-latest-posts li {
    margin: 0 0.25rem;
    flex: 0 0 350px;
  }
}
.home .wp-block-latest-posts li a {
  display: flex;
  position: relative;
  width: 100%;
  align-items: center;
  grid-row: 2/span 1;
  grid-column: 1/span 1;
  align-self: end;
  margin: 1rem 0;
  padding: 0 2rem 0 6rem;
  font-family: "Raleway";
  font-weight: 700;
  font-size: 1.2rem;
  text-decoration: none;
  text-transform: uppercase;
  color: #f8f8f8;
  z-index: 5;
  transition: ease color 0.3s;
}
.home .wp-block-latest-posts li a::before {
  display: inline-block;
  position: absolute;
  left: 2rem;
  bottom: 0;
  content: "";
  width: 36px;
  height: 36px;
  border: 2px solid #f8f8f8;
  border-radius: 20px;
  box-sizing: border-box;
  background: url("./assets/img/icons/icon_news.svg") no-repeat center;
  background-size: 16px;
}
.home .wp-block-latest-posts li a:hover {
  color: #81d2c7;
}
.home .wp-block-latest-posts__featured-image {
  position: relative;
  display: flex;
  grid-row: 1/span 2;
  grid-column: 1/span 1;
  align-self: stretch;
  margin: 0;
}
.home .wp-block-latest-posts__featured-image img {
  width: 100%;
  height: auto;
  max-height: 262px;
  object-fit: cover;
  border-radius: 2px;
  z-index: 1;
}
.home .wp-block-latest-posts__featured-image::after {
  display: block;
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(180deg, transparent, rgba(43, 43, 43, 0.975) 80%);
  border-radius: 2px;
  z-index: 2;
}

.single #site-content ol,
.single #site-content ul {
  margin: 2rem 0;
  padding-left: 2rem;
}
.single #site-content ol li,
.single #site-content ul li {
  margin: 0.5rem 0;
  padding-left: 1rem;
  color: #898989;
}
.single #site-content ol li::marker,
.single #site-content ul li::marker {
  color: #3a3a3a;
}
.single #site-content ol li ul,
.single #site-content ol li ol,
.single #site-content ul li ul,
.single #site-content ul li ol {
  margin: 1rem 0;
}

#startslide .wp-block-media-text__media {
  display: none;
}
@media only screen and (min-width: 768px) {
  #startslide .wp-block-media-text__media {
    display: block;
  }
}

@media only screen and (min-width: 1280px) {
  #senioren .wp-block-media-text {
    grid-template-columns: 25% auto !important;
    min-height: 500px;
  }
}
#senioren .wp-block-media-text__media {
  position: relative;
  display: flex;
  width: calc(100% - 2rem);
}
@media only screen and (min-width: 1024px) {
  #senioren .wp-block-media-text__media {
    width: 100%;
  }
}
#senioren .wp-block-media-text__media img {
  border-radius: 0 4px 4px 0;
  object-fit: cover;
  min-height: 400px;
}
@media only screen and (min-width: 1280px) {
  #senioren .wp-block-media-text__media img {
    min-height: 600px;
  }
}
#senioren .wp-block-media-text__media::before {
  display: block;
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(172deg, transparent, rgba(56, 56, 56, 0.875) 97.5%);
  border-radius: 2px;
  z-index: 2;
}
#senioren .wp-block-media-text__content {
  position: relative;
  padding: 5% 8% 0 8%;
  transform: translateY(-2rem);
  z-index: 3;
}
@media only screen and (min-width: 1280px) {
  #senioren .wp-block-media-text__content {
    transform: inherit;
    z-index: auto;
  }
}
#senioren .wp-block-media-text__content::before {
  position: absolute;
  content: "";
  left: 0;
  top: 0.75rem;
  width: 305px;
  height: 40px;
  background-color: #81d2c7;
  z-index: -1;
}
@media only screen and (min-width: 768px) {
  #senioren .wp-block-media-text__content::before {
    display: block;
    width: 325px;
    left: 150px;
    top: 6rem;
  }
}

.single-post .wp-block-media-text__content {
  background-color: #e0e0e0;
}

.wp-block-quote {
  position: relative;
  display: flex;
  flex-direction: column;
  border: none;
  padding: 0.5rem 1rem;
  margin: 2rem 0;
  width: 100%;
}
@media only screen and (min-width: 1024px) {
  .wp-block-quote {
    flex-direction: row;
    width: max-content;
    padding: 0.5rem 2rem;
  }
}
.wp-block-quote p {
  font-size: 1.25rem;
  font-style: italic;
  color: #81d2c7;
  text-align: left;
}
@media only screen and (min-width: 1024px) {
  .wp-block-quote p {
    font-size: 1.75rem;
    text-align: center;
  }
}
.wp-block-quote::before {
  position: relative;
  display: inline-block;
  content: "";
  left: -1rem;
  top: 0.5rem;
  width: 90px;
  height: 6px;
  background-color: #898989;
}
@media only screen and (min-width: 1024px) {
  .wp-block-quote::before {
    left: -2rem;
    top: 1.5rem;
  }
}

#senioren .wp-block-quote p {
  color: #81d2c7;
}

.single-post .wp-block-media-text .wp-block-quote {
  flex-direction: column;
  width: 100%;
}
.single-post .wp-block-media-text .wp-block-quote p {
  line-height: 1.75rem;
  text-align: left;
}
@media only screen and (min-width: 1024px) {
  .single-post .wp-block-media-text .wp-block-quote p {
    line-height: 2.5rem;
  }
}
.single-post .wp-block-media-text .wp-block-quote::before {
  background-color: #81d2c7;
  left: -3rem;
  top: 0;
}
@media only screen and (min-width: 1024px) {
  .single-post .wp-block-media-text .wp-block-quote::before {
    left: -3rem;
    top: 1rem;
  }
}

.wp-block-fc-freiergrund-blocks-hex-badges {
  filter: drop-shadow(4px 4px 8px rgba(0, 0, 0, 0.5));
}
.wp-block-fc-freiergrund-blocks-hex-badges .wp-block-fc-freiergrund-blocks-hex-badge {
  width: 5em;
  height: 8em;
}
@media only screen and (min-width: 1024px) {
  .wp-block-fc-freiergrund-blocks-hex-badges .wp-block-fc-freiergrund-blocks-hex-badge {
    width: 6em;
    height: 9.5em;
  }
}
.wp-block-fc-freiergrund-blocks-hex-badges .wp-block-fc-freiergrund-blocks-hex-badge__link {
  cursor: pointer;
}
.wp-block-fc-freiergrund-blocks-hex-badges:nth-of-type(1) {
  grid-column: 1/span 1;
}
@media only screen and (min-width: 1280px) {
  .wp-block-fc-freiergrund-blocks-hex-badges:nth-of-type(1) {
    grid-column: 2/span 1;
  }
}
.wp-block-fc-freiergrund-blocks-hex-badges:nth-of-type(2) {
  grid-column: 2/span 1;
  grid-row: 2/span 2;
}
@media only screen and (min-width: 1280px) {
  .wp-block-fc-freiergrund-blocks-hex-badges:nth-of-type(2) {
    grid-column: 1/span 1;
  }
}
.wp-block-fc-freiergrund-blocks-hex-badges:nth-of-type(3) {
  grid-column: 1/span 1;
  grid-row: 3/span 2;
}
@media only screen and (min-width: 1280px) {
  .wp-block-fc-freiergrund-blocks-hex-badges:nth-of-type(3) {
    grid-column: 2/span 1;
  }
}
.wp-block-fc-freiergrund-blocks-hex-badges:nth-of-type(4) {
  grid-column: 2/span 1;
  grid-row: 4/span 2;
}
@media only screen and (min-width: 1280px) {
  .wp-block-fc-freiergrund-blocks-hex-badges:nth-of-type(4) {
    grid-column: 3/span 1;
    grid-row: 2/span 2;
  }
}

.wp-block-fc-freiergrund-blocks-hex-grid-list {
  grid-template-columns: repeat(2, 0.5fr 1fr) 0.5fr;
  grid-template-rows: repeat(5, 3em);
}

.wp-block-fc-freiergrund-blocks-hex-grid-item:nth-of-type(1) {
  grid-column: 1/span 3;
}
.wp-block-fc-freiergrund-blocks-hex-grid-item:nth-of-type(2) {
  grid-column: 3/span 3;
  grid-row: 2/span 2;
}
.wp-block-fc-freiergrund-blocks-hex-grid-item:nth-of-type(3) {
  grid-column: 1/span 3;
  grid-row: 3/span 2;
}
.wp-block-fc-freiergrund-blocks-hex-grid-item:nth-of-type(4) {
  grid-column: 3/span 3;
  grid-row: 4/span 2;
}

.wp-block-fc-freiergrund-blocks-timeline-wrapper {
  margin: 0 auto;
}

.wp-block-fc-freiergrund-blocks-timeline-block-left,
.wp-block-fc-freiergrund-blocks-timeline-block-right {
  min-height: 275px;
}
.wp-block-fc-freiergrund-blocks-timeline-block-left .timeline-block__year,
.wp-block-fc-freiergrund-blocks-timeline-block-right .timeline-block__year {
  color: #3a3a3a;
}

.wp-block-fc-freiergrund-blocks-info-card {
  box-shadow: 0 6px 12px rgba(0, 0, 0, 0.25);
}

.postal,
.email,
.phone,
.mobile,
.map,
.clock {
  display: flex;
}
.postal::before,
.email::before,
.phone::before,
.mobile::before,
.map::before,
.clock::before {
  margin-right: 0.5em;
  width: 16px;
  height: 16px;
}

p.postal::before {
  content: url("./assets/img/icons/icon_home.svg");
}

p.email::before {
  content: url("./assets/img/icons/icon_mail.svg");
}

p.phone::before {
  content: url("./assets/img/icons/icon_phone.svg");
}

p.mobile::before {
  content: url("./assets/img/icons/icon_mobile.svg");
  width: 15px;
}

p.clock::before {
  content: url("./assets/img/icons/icon_clock.svg");
}

p.map::before {
  content: url("./assets/img/icons/icon_map-marker.svg");
}

.wpcf7-form input {
  font-family: "Montserrat", sans-serif;
  color: #3a3a3a;
  font-size: 16px;
  padding: 0.5em;
}
.wpcf7-form input:focus {
  outline: none;
}
.wpcf7-form input.wpcf7-not-valid::placeholder {
  color: #dc3232;
  font-weight: bold;
}
.wpcf7-form .input-box {
  position: relative;
  margin-bottom: 2em;
}
.wpcf7-form .input-box .input-box-input__email,
.wpcf7-form .input-box .input-box-input__name,
.wpcf7-form .input-box .input-box-input__subject {
  position: relative;
}
.wpcf7-form .input-box-label__email,
.wpcf7-form .input-box-label__name,
.wpcf7-form .input-box-label__subject,
.wpcf7-form .input-box-label__dsgvo {
  top: 2.25em;
  left: 0.5em;
  font-family: "Montserrat", sans-serif;
  font-size: 12px;
  padding: 0.5em 0 0 0.5em;
  pointer-events: none;
  transition: 0.5s;
  color: #898989;
}
.wpcf7-form .wpcf7-form-control {
  width: 100%;
  border-bottom: 1px solid #e0e0e0;
  background-color: transparent;
}
.wpcf7-form .wpcf7-form-control.wpcf7-acceptance {
  border-bottom: none;
}
.wpcf7-form .message-box textarea::placeholder {
  color: #898989;
}
.wpcf7-form .message-box textarea.wpcf7-not-valid::placeholder {
  color: #dc3232;
  font-weight: bold;
}
.wpcf7-form .dsvgo-box {
  margin: 0 0 2rem 0;
}
.wpcf7-form .dsvgo-box .wpcf7-list-item {
  margin: 0;
}
.wpcf7-form .dsvgo-box input[type=checkbox] {
  position: relative;
  visibility: hidden;
  margin: 0;
}
.wpcf7-form .dsvgo-box input[type=checkbox] + span::before, .wpcf7-form .dsvgo-box input[type=checkbox] + span::after {
  cursor: pointer;
}
.wpcf7-form .dsvgo-box input[type=checkbox] + span::after {
  visibility: hidden;
}
.wpcf7-form .dsvgo-box input[type=checkbox]:checked + span::before, .wpcf7-form .dsvgo-box input[type=checkbox]:checked + span::after {
  cursor: pointer;
}
.wpcf7-form .dsvgo-box input[type=checkbox]:checked + span::before {
  background-color: #81d2c7;
}
.wpcf7-form .dsvgo-box input[type=checkbox]:checked + span::after {
  visibility: visible;
}
.wpcf7-form .dsvgo-box .input-box-label__dsgvo {
  padding: 0 0 0 2.5em;
}
.wpcf7-form .dsvgo-box .wpcf7-list-item-label {
  position: relative;
  display: flex;
  justify-content: space-between;
}
@media only screen and (min-width: 1280px) {
  .wpcf7-form .dsvgo-box .wpcf7-list-item-label {
    width: 70%;
  }
}
.wpcf7-form .dsvgo-box .wpcf7-list-item-label::before, .wpcf7-form .dsvgo-box .wpcf7-list-item-label::after {
  display: block;
  position: absolute;
  content: "";
}
.wpcf7-form .dsvgo-box .wpcf7-list-item-label::before {
  width: 18px;
  height: 18px;
  background-color: #fefefe;
  border: 1px solid #81d2c7;
  border-radius: 4px;
}
.wpcf7-form .dsvgo-box .wpcf7-list-item-label::after {
  display: block;
  visibility: hidden;
  top: 3px;
  left: 3px;
  width: 12px;
  height: 6px;
  border: solid #fefefe;
  border-width: 0 0 2px 2px;
  transform: rotate(-45deg);
}
.wpcf7-form .dsvgo-box .wpcf7-list-item-label.error .input-box-label__dsgvo {
  color: #dc3232;
}
.wpcf7-form .dsvgo-box .wpcf7-list-item-label.error::before {
  border-color: #dc3232;
}
.wpcf7-form .dsvgo-box a {
  display: inline-block;
  transition: all 0.3s ease;
}
.wpcf7-form .dsvgo-box a:hover {
  opacity: 0.8;
}
.wpcf7-form .wpcf7-textarea {
  border: none;
  width: 100%;
  resize: none;
  background-color: #e0e0e0;
  border-radius: 4px;
  padding: 1em;
  font-family: "Montserrat", sans-serif;
  font-size: 16px;
}
.wpcf7-form .wpcf7-textarea:focus {
  outline: none;
  border-inline: 2px solid #81d2c7;
  border-radius: 4px;
}
.wpcf7-form .wpcf7-submit {
  width: max-content;
  padding: 12px 24px;
  color: #f8f8f8;
  font-size: 18px;
  font-variant: small-caps;
  font-weight: bold;
  border: 1px solid transparent;
  border-radius: 4px;
  background-color: #81d2c7;
  cursor: pointer;
}
.wpcf7-form .wpcf7-submit:hover {
  background-color: #fefefe;
  color: #3a3a3a;
  border: 1px solid #3a3a3a;
}
.wpcf7-form span.ajax-loader {
  display: none;
}
.wpcf7-form .wpcf7-response-output {
  display: none !important;
}
.wpcf7-form .wpcf7-not-valid-tip {
  display: none;
}

.footer-sponsoren {
  background-color: #e0e0e0;
  padding: 4rem 2rem;
}
.footer-sponsoren .sponsoren__divider {
  height: 2px;
  margin: 2rem 0;
  width: 100%;
  background-color: #81d2c7;
}
.footer-sponsoren .sponsoren__divider:first-of-type {
  margin: 0 0 2rem 0;
}
.footer-sponsoren .sponsoren-content {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.footer-sponsoren .sponsoren-content__link {
  margin: 2rem 3rem;
}
.footer-sponsoren .sponsoren-content__link:hover img {
  opacity: 1;
  filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.8));
}
.footer-sponsoren .sponsoren-content__link img {
  height: 40px;
  width: auto;
  transition: all 0.5s ease-in-out;
  opacity: 0.8;
  filter: grayscale(1);
}
@media only screen and (min-width: 1024px) {
  .footer-sponsoren .sponsoren-content__link img {
    height: 50px;
  }
}

#fupa_livebox .live_rueckblick {
  display: none;
}
#fupa_livebox .live_rueckblick td:last-of-type {
  display: none;
}
#fupa_livebox .live_vorschau {
  font-family: "Montserrat", sans-serif;
  color: #3a3a3a;
}
#fupa_livebox .live_vorschau:nth-of-type(2) {
  display: none;
}
#fupa_livebox .live_vorschau th {
  display: none;
}
#fupa_livebox .live_vorschau td {
  font-size: 1.2rem !important;
  border-bottom: none !important;
  text-align: center;
}
#fupa_livebox .live_vorschau td:last-of-type {
  display: none;
}
#fupa_livebox .live_vorschau td span {
  display: block;
  width: 100%;
  font-family: "Oswald", sans-serif;
  font-variant: small-caps;
  font-size: 1rem;
  color: #e0e0e0 !important;
  margin-bottom: 0.5rem;
}
#fupa_livebox .live_vorschau td br {
  display: none;
}
#fupa_livebox .live_vorschau td a {
  display: inline-block;
  font-size: 1.75rem;
  color: #f8f8f8;
}

/**
 *  Anpassungen Tabelle
 */
.fupa_widget > div:nth-of-type(2) {
  display: none;
}
.fupa_widget #teamdiv .liga_tabelle.content_table_std {
  font-family: "Montserrat", sans-serif;
  background: none;
}
.fupa_widget #teamdiv .liga_tabelle.content_table_std tr {
  line-height: 2rem;
}
.fupa_widget #teamdiv .liga_tabelle.content_table_std tr.tabelle_farbe_meister {
  background: #dff4f1;
}
.fupa_widget #teamdiv .liga_tabelle.content_table_std tr.tabelle_farbe_meister td {
  border-bottom: 1px solid #81d2c7;
}
.fupa_widget #teamdiv .liga_tabelle.content_table_std tr.tabelle_farbe_neutral {
  background: none;
}
.fupa_widget #teamdiv .liga_tabelle.content_table_std tr.tabelle_farbe_absteiger {
  background: #fae0e0;
}
.fupa_widget #teamdiv .liga_tabelle.content_table_std th {
  background: none;
}
.fupa_widget #teamdiv .liga_tabelle.content_table_std td, .fupa_widget #teamdiv .liga_tabelle.content_table_std th {
  color: #606060;
  border: none;
}
.fupa_widget #teamdiv .liga_tabelle.content_table_std td.tab_aufab i, .fupa_widget #teamdiv .liga_tabelle.content_table_std th.tab_aufab i {
  color: #3a3a3a !important;
}
.fupa_widget #teamdiv .liga_tabelle.content_table_std td.tab_wappen, .fupa_widget #teamdiv .liga_tabelle.content_table_std th.tab_wappen {
  display: none;
}
.fupa_widget #teamdiv .liga_tabelle.content_table_std td.tab_wins, .fupa_widget #teamdiv .liga_tabelle.content_table_std th.tab_wins {
  display: none;
}
@media only screen and (min-width: 1024px) {
  .fupa_widget #teamdiv .liga_tabelle.content_table_std td.tab_wins, .fupa_widget #teamdiv .liga_tabelle.content_table_std th.tab_wins {
    display: table-cell;
  }
}
.fupa_widget #teamdiv .liga_tabelle.content_table_std td.tab_remis, .fupa_widget #teamdiv .liga_tabelle.content_table_std th.tab_remis {
  display: none;
}
@media only screen and (min-width: 1024px) {
  .fupa_widget #teamdiv .liga_tabelle.content_table_std td.tab_remis, .fupa_widget #teamdiv .liga_tabelle.content_table_std th.tab_remis {
    display: table-cell;
  }
}
.fupa_widget #teamdiv .liga_tabelle.content_table_std td.tab_loses, .fupa_widget #teamdiv .liga_tabelle.content_table_std th.tab_loses {
  display: none;
}
@media only screen and (min-width: 1024px) {
  .fupa_widget #teamdiv .liga_tabelle.content_table_std td.tab_loses, .fupa_widget #teamdiv .liga_tabelle.content_table_std th.tab_loses {
    display: table-cell;
  }
}
.fupa_widget #teamdiv .liga_tabelle.content_table_std td.tab_goals, .fupa_widget #teamdiv .liga_tabelle.content_table_std th.tab_goals {
  display: none;
}
@media only screen and (min-width: 1024px) {
  .fupa_widget #teamdiv .liga_tabelle.content_table_std td.tab_goals, .fupa_widget #teamdiv .liga_tabelle.content_table_std th.tab_goals {
    display: table-cell;
  }
}
.fupa_widget #teamdiv .liga_tabelle.content_table_std td.tab_diff, .fupa_widget #teamdiv .liga_tabelle.content_table_std th.tab_diff {
  display: none;
}
@media only screen and (min-width: 1024px) {
  .fupa_widget #teamdiv .liga_tabelle.content_table_std td.tab_diff, .fupa_widget #teamdiv .liga_tabelle.content_table_std th.tab_diff {
    display: table-cell;
  }
}
.fupa_widget #teamdiv .liga_tabelle.content_table_std a {
  color: #3a3a3a;
}

/**
 * Anpassungen Spielplan - Erste
 */
#fupa-widget-erste__spielplan .fupa_widget #teamdiv,
#fupa-widget-zweite__spielplan .fupa_widget #teamdiv,
#fupa-widget-dritte__spielplan .fupa_widget #teamdiv,
#fupa-widget-vierte__spielplan .fupa_widget #teamdiv {
  /**
   *  Anpassung Spieltag (Tabellen generell)
   */
}
#fupa-widget-erste__spielplan .fupa_widget #teamdiv .content_table_std,
#fupa-widget-zweite__spielplan .fupa_widget #teamdiv .content_table_std,
#fupa-widget-dritte__spielplan .fupa_widget #teamdiv .content_table_std,
#fupa-widget-vierte__spielplan .fupa_widget #teamdiv .content_table_std {
  font-family: "Montserrat", sans-serif;
  background: none;
  margin-bottom: 3rem;
}
#fupa-widget-erste__spielplan .fupa_widget #teamdiv .content_table_std:nth-of-type(1), #fupa-widget-erste__spielplan .fupa_widget #teamdiv .content_table_std:nth-of-type(3),
#fupa-widget-zweite__spielplan .fupa_widget #teamdiv .content_table_std:nth-of-type(1),
#fupa-widget-zweite__spielplan .fupa_widget #teamdiv .content_table_std:nth-of-type(3),
#fupa-widget-dritte__spielplan .fupa_widget #teamdiv .content_table_std:nth-of-type(1),
#fupa-widget-dritte__spielplan .fupa_widget #teamdiv .content_table_std:nth-of-type(3),
#fupa-widget-vierte__spielplan .fupa_widget #teamdiv .content_table_std:nth-of-type(1),
#fupa-widget-vierte__spielplan .fupa_widget #teamdiv .content_table_std:nth-of-type(3) {
  display: none;
}
#fupa-widget-erste__spielplan .fupa_widget #teamdiv .content_table_std th,
#fupa-widget-zweite__spielplan .fupa_widget #teamdiv .content_table_std th,
#fupa-widget-dritte__spielplan .fupa_widget #teamdiv .content_table_std th,
#fupa-widget-vierte__spielplan .fupa_widget #teamdiv .content_table_std th {
  font-size: 1.2rem;
  padding: 1rem 0;
  background: none;
  color: #898989;
}
#fupa-widget-erste__spielplan .fupa_widget #teamdiv .content_table_std tr td:nth-of-type(4),
#fupa-widget-zweite__spielplan .fupa_widget #teamdiv .content_table_std tr td:nth-of-type(4),
#fupa-widget-dritte__spielplan .fupa_widget #teamdiv .content_table_std tr td:nth-of-type(4),
#fupa-widget-vierte__spielplan .fupa_widget #teamdiv .content_table_std tr td:nth-of-type(4) {
  display: none;
}
#fupa-widget-erste__spielplan .fupa_widget #teamdiv .content_table_std tr td:nth-of-type(6) span,
#fupa-widget-zweite__spielplan .fupa_widget #teamdiv .content_table_std tr td:nth-of-type(6) span,
#fupa-widget-dritte__spielplan .fupa_widget #teamdiv .content_table_std tr td:nth-of-type(6) span,
#fupa-widget-vierte__spielplan .fupa_widget #teamdiv .content_table_std tr td:nth-of-type(6) span {
  background: none !important;
}
#fupa-widget-erste__spielplan .fupa_widget #teamdiv .content_table_std tr td:nth-of-type(7),
#fupa-widget-zweite__spielplan .fupa_widget #teamdiv .content_table_std tr td:nth-of-type(7),
#fupa-widget-dritte__spielplan .fupa_widget #teamdiv .content_table_std tr td:nth-of-type(7),
#fupa-widget-vierte__spielplan .fupa_widget #teamdiv .content_table_std tr td:nth-of-type(7) {
  display: none;
}
@media only screen and (min-width: 1024px) {
  #fupa-widget-erste__spielplan .fupa_widget #teamdiv .content_table_std tr td:nth-of-type(7),
#fupa-widget-zweite__spielplan .fupa_widget #teamdiv .content_table_std tr td:nth-of-type(7),
#fupa-widget-dritte__spielplan .fupa_widget #teamdiv .content_table_std tr td:nth-of-type(7),
#fupa-widget-vierte__spielplan .fupa_widget #teamdiv .content_table_std tr td:nth-of-type(7) {
    display: table-cell;
  }
}
#fupa-widget-erste__spielplan .fupa_widget #teamdiv .content_table_std a,
#fupa-widget-zweite__spielplan .fupa_widget #teamdiv .content_table_std a,
#fupa-widget-dritte__spielplan .fupa_widget #teamdiv .content_table_std a,
#fupa-widget-vierte__spielplan .fupa_widget #teamdiv .content_table_std a {
  color: #3a3a3a;
}
#fupa-widget-erste__spielplan .fupa_widget #teamdiv .content_table_std a.spielbericht_link,
#fupa-widget-zweite__spielplan .fupa_widget #teamdiv .content_table_std a.spielbericht_link,
#fupa-widget-dritte__spielplan .fupa_widget #teamdiv .content_table_std a.spielbericht_link,
#fupa-widget-vierte__spielplan .fupa_widget #teamdiv .content_table_std a.spielbericht_link {
  text-align: center;
}

.sidebar-scroll-container {
  display: none;
}
.sidebar-scroll-container .scroll-line {
  display: block;
  width: 1px;
  height: 80px;
  background-color: #e0e0e0;
  margin: 2em auto;
}
.sidebar-scroll-container .scroll-text {
  position: relative;
  font-family: "Raleway", "Arial Black", sans-serif;
  font-variant: small-caps;
  color: #e0e0e0;
  writing-mode: vertical-lr;
  margin: 0 3.4rem;
}
.sidebar-scroll-container .scroll-circles {
  display: block;
  margin: 2em 0 0 0;
}
.sidebar-scroll-container .scroll-circles .scroll-circle {
  display: block;
  width: 5px;
  height: 5px;
  background-color: #e0e0e0;
  border-radius: 50%;
  margin: 0 auto 6px auto;
}

/**
 *    Begin StyleSheet
 */
@font-face {
  font-family: "Raleway";
  font-weight: 900;
  src: url("./assets/fonts/Raleway-Black.ttf");
}
@font-face {
  font-family: "Raleway";
  font-weight: 800;
  src: url("./assets/fonts/Raleway-ExtraBold.ttf");
}
@font-face {
  font-family: "Raleway";
  font-weight: 700;
  src: url("./assets/fonts/Raleway-Bold.ttf");
}
@font-face {
  font-family: "Montserrat";
  font-weight: 300;
  src: url("./assets/fonts/Montserrat-Light.ttf");
}
@font-face {
  font-family: "Montserrat";
  font-weight: 400;
  src: url("./assets/fonts/Montserrat-Regular.ttf");
}
@font-face {
  font-family: "Oswald";
  font-weight: 700;
  src: url("./assets/fonts/Oswald-Bold.ttf");
}
* {
  margin: 0;
  padding: 0;
  border: 0;
  box-sizing: border-box;
}

body {
  position: relative;
  font-family: "Montserrat", sans-serif;
  font-size: 16px;
  background-color: #fefefe;
  scroll-behavior: smooth;
}
body::-webkit-scrollbar {
  background-color: #3a3a3a;
}
body::-webkit-scrollbar-thumb {
  background-color: #81d2c7;
  border-radius: 4px;
  box-shadow: inset -2px -2px 5px rgba(255, 255, 255, 0.075), inset 2px 2px 5px rgba(0, 0, 0, 0.5);
}

h1, h2, h3, h4, h5, h6 {
  color: #474747;
}

h1 {
  font-family: "Raleway", sans-serif;
  font-weight: 700;
  font-size: 3.125em;
}
@media only screen and (min-width: 1280px) {
  h1 {
    font-size: 5.25vw;
  }
}

h2 {
  font-family: "Raleway", sans-serif;
  font-weight: 900;
  text-transform: uppercase;
  font-size: 1.75rem;
}
@media only screen and (min-width: 1024px) {
  h2 {
    font-size: 2vw;
  }
}
@media only screen and (min-width: 1280px) {
  h2 {
    font-size: 3vw;
  }
}

h3 {
  font-family: "Raleway", sans-serif;
  font-weight: 900;
  text-transform: uppercase;
  font-size: 1rem;
}
@media only screen and (min-width: 1024px) {
  h3 {
    font-size: 1.5vw;
  }
}
@media only screen and (min-width: 1280px) {
  h3 {
    font-size: 2vw;
  }
}

h4 {
  font-family: "Raleway", sans-serif;
  font-weight: 900;
  text-transform: uppercase;
  font-size: 1.6em;
}

h5 {
  font-family: "Raleway", sans-serif;
  font-weight: 900;
  text-transform: uppercase;
  font-size: 1.4em;
}

h6 {
  font-family: "Raleway", sans-serif;
  font-weight: 900;
  text-transform: uppercase;
  font-size: 1.2em;
}

p {
  margin: 1rem 0;
  font-family: "Montserrat", sans-serif;
  font-size: 16px;
  font-weight: 300;
  line-height: 24px;
  letter-spacing: 0.5px;
}
p .sub-headline {
  font-family: "Oswald", sans-serif;
  font-weight: 500;
  font-size: 1.4em;
}

.clear {
  clear: both;
}

.right {
  float: right;
}

.left {
  float: left;
}

.text--black {
  color: #3a3a3a;
}
.text--white {
  color: #f8f8f8;
}
.text--highlight {
  color: #81d2c7;
}

img {
  width: 100%;
  height: auto;
}

.has-primary-background-color {
  background-color: #3a3a3a;
}

.has-secondary-background-color {
  background-color: #898989;
}

.has-third-background-color {
  background-color: #e0e0e0;
}

.has-fourth-background-color {
  background-color: #f8f8f8;
}

.has-highlight-background-color {
  background-color: #81d2c7;
}

.has-background-background-color {
  background-color: #fefefe;
}

.has-warning-background-color {
  background-color: #dc3232;
}

.has-primary-color {
  color: #3a3a3a;
}

.has-secondary-color {
  color: #898989;
}

.has-third-color {
  color: #e0e0e0;
}

.has-fourth-color {
  color: #f8f8f8;
}

.has-highlight-color {
  color: #81d2c7;
}

.has-background-color {
  color: #fefefe;
}

.has-warning-color {
  color: #dc3232;
}

/*# sourceMappingURL=style.css.map */
