.legal-page {
  color: #000;
  font-size: 16px;
  line-height: 1.6;
}

.legal-page main h1,
.legal-page main h2,
.legal-page main h3,
.legal-page main p {
  margin-top: 0;
  margin-bottom: 2em;
}

.legal-hero,
.privacy-page .page-hero {
  position: relative;
  display: flex;
  height: 40vh;
  min-height: 0;
  margin-top: 100px;
  align-items: center;
  overflow: hidden;
}

.bfsg-content {
	height: auto;
    padding: 23px 5%;
	text-align: left !important;
}
.bfsg-content h2 {
	font-size: 36px;
	font-weight: 400;
	margin-top: 2em !important;
	margin-bottom: 1em !important;
}
.bfsg-content a {
	text-decoration: underline;
	color: #741834;
}


.legal-hero-imprint {
  background: url("../images/page-legal.jpg") center center / cover no-repeat;
}

.privacy-page .page-hero {
  background: url("../images/page-privacy.jpg") center center / cover no-repeat;
}
.privacy-page .page-hero::before,
.legal-hero::before{
    position: absolute;
    inset: 0;
    content: "";
    background: rgb(255 255 255 / 50%);
}
.legal-hero > div,
.privacy-page .page-hero .container {
  position: relative;
  z-index: 2;
  width: 100%;
}

.legal-hero h1,
.privacy-page .page-hero h1 {
  margin: 0;
  color: #b62b26;
  font-size: 41.6px;
  font-weight: 400;
  text-align: center;
}

.legal-hero > img,
.privacy-page .page-hero-wave {
  position: absolute;
  right: 0;
  bottom: -1px;
  left: 0;
  z-index: 1;
  width: 100%;
}

.imprint-spacer {
  height: 68px;
}

.imprint-contact {
  height: 252px;
  margin-top: 50px;
  padding: 23px 5%;
}

.imprint-contact > div,
.imprint-rights > div,
.imprint-polaris > div {
  width: 100%;
  margin-inline: auto;
}

.imprint-contact h2,
.imprint-rights h2,
.imprint-polaris h2 {
  margin-bottom: 24px;
  font-size: 36px;
  font-weight: 400;
  text-align:center;
}
.imprint-polaris h2 {
    width: calc(100% - 30px);
    margin: 0 auto 70px;
    color: #fff;
    font-size: 40px;
    font-weight: 300;
    line-height: 1.1;
}
.imprint-contact-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 28px;
	text-align:center;
}

.imprint-contact-grid p a {
    color: #741834;
    text-decoration: underline;
}

.imprint-contact-grid p {
  margin: 0;
}

.imprint-rights {
  height: 723px;
  margin-top: 50px;
  padding: 50px 5%;
}

.imprint-rights ul {
  margin: 0;
  padding-left: 20px;
  text-align: center;
  list-style: none;
}

.imprint-polaris {
	min-height: 705px;
	padding-top: 120px;
	background: linear-gradient(rgba(59, 83, 170, 0.35), rgba(59, 83, 170, 0.35)), center / cover no-repeat url("../images/polaris-background.jpg"), #213e67;
	background-blend-mode: overlay, normal, normal;
	text-align: center;
}

.imprint-polaris::before {
  position: absolute;
  inset: 0;
  content: "";
  /*background: rgb(21 44 75 / 70%);*/
}

.imprint-polaris > div {
  position: relative;
  z-index: 1;
}
.imprint-polaris a {
    text-decoration: underline;
}
.polaris-logo {
  width: 300px;
  margin: 66px auto 40px;
}

.polaris-contact {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 28px;
  text-align: center;
}

.polaris-facebook {
  display: block;
  width: 230px;
  margin: 30px auto 0;
}

.privacy-page .page-hero + .subpage-section {
  padding: 0;
}

.privacy-page .legal-content {
  width: 90%;
  max-width: none;
  margin-inline: auto;
  padding: 64px 0 33px;
}

.privacy-page .legal-content h2 {
  margin-top: 30px;
  margin-bottom: 20px;
  font-size: 32px;
  font-weight: 400;
}

.privacy-page .legal-content p,
.privacy-page .legal-content li {
  line-height: 1.6;
}

.privacy-page .legal-content ul,
.privacy-page .legal-content ol {
  padding-left: 28px;
}

@media (max-width: 767px) {
  .imprint-spacer {
    height: 164px;
  }

  .imprint-contact {
    height: 710px;
    margin-top: 50px;
    padding: 34px 20px 50px;
  }

  .imprint-contact-grid,
  .polaris-contact {
    grid-template-columns: 1fr;
  }

  .imprint-rights {
    height: auto;
    margin-top: 50px;
    padding: 50px 20px;
  }

  .imprint-polaris {
    height: auto;
    min-height: 1043px;
    margin-top: 50px;
    padding: 55px 20px;
  }

  .imprint-contact h2,
  .imprint-rights h2,
  .imprint-polaris h2 {
    font-size: 31px;
  }

  .privacy-page .legal-content {
    width: calc(100% - 40px);
    padding-top: 45px;
    padding-bottom: 328px;
  }

  .privacy-page .legal-content h2 {
    margin-top: 30px;
    font-size: 28px;
  }
}

@media (min-width: 768px) {
  .legal-hero,
  .privacy-page .page-hero {
    height: 65vh;
    margin-top: -60px;
  }

  .legal-hero h1,
  .privacy-page .page-hero h1 {
    font-size: 57.6px;
  }
}

@media (min-width: 1025px) {
  .legal-hero,
  .privacy-page .page-hero {
    margin-top: -2px;
  }

  .legal-hero h1,
  .privacy-page .page-hero h1 {
    padding-left: 10%;
    font-size: 64px;
    text-align: left;
  }
}

@media (min-width: 1441px) {
  .legal-hero,
  .privacy-page .page-hero {
    height: 90vh;
  }
}


.imprint-agency-logo-row {
	align-items: center;
    min-height: 135px;
    width: calc(100% - 30px);
    margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}
.imprint-agency-logo {
    justify-self: center;
    display: block;
    width: 372px;
    max-width: 82%;
    line-height: 0;
}
.imprint-agency-logo-row img {
    width: 372px;
    height: auto;
    display: block;
}
.imprint-agency-social {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 41px;
    transform: translateX(-28px);
}
.imprint-agency-social p {
    margin: 0;
    color: #fff;
    font-size: 21px;
    font-weight: 300;
    line-height: 1;
	margin-bottom: 0 !important;
}
.agency-social-links {
    display: flex;
    gap: 20px;
}
.agency-social-link {
    width: 67.5px;
    height: 50px;
    display: flex;
    align-items: center;
    color: #fff;
}
.agency-social-link::before {
    content: "";
    width: 50px;
    height: 50px;
    display: block;
    background: currentColor;
    -webkit-mask: var(--agency-social-icon) center / contain no-repeat;
    mask: var(--agency-social-icon) center / contain no-repeat;
}
.agency-social-facebook {
    --agency-social-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath fill='black' d='M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h137.3V327.7h-63V256h63v-54.6c0-62.2 37-96.6 93.8-96.6 27.2 0 55.6 4.9 55.6 4.9v61.1h-31.3c-30.8 0-40.4 19.1-40.4 38.7V256h68.8l-11 71.7H263V480h137c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48Z'/%3E%3C/svg%3E");
}
.agency-social-instagram {
    --agency-social-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath fill='black' d='M224 141c-63.6 0-115 51.4-115 115s51.4 115 115 115 115-51.4 115-115-51.4-115-115-115Zm0 189.6c-41.1 0-74.6-33.4-74.6-74.6s33.4-74.6 74.6-74.6 74.6 33.4 74.6 74.6-33.5 74.6-74.6 74.6Zm146.6-194.3c0 14.9-12 26.8-26.8 26.8-14.9 0-26.8-12-26.8-26.8s12-26.8 26.8-26.8 26.8 12 26.8 26.8Zm76.1 27.2c-1.7-35.9-9.9-67.7-36.2-93.9S352.5 35.1 316.5 33.4C279.5 31.3 168.5 31.3 131.5 33.4c-35.9 1.7-67.7 9.9-93.9 36.2S3.1 127.5 1.4 163.5c-2.1 37-2.1 148 0 185 1.7 35.9 9.9 67.7 36.2 93.9s58 34.5 93.9 36.2c37 2.1 148 2.1 185 0 35.9-1.7 67.7-9.9 93.9-36.2s34.5-58 36.2-93.9c2.1-37 2.1-148 .1-185ZM399 388c-7.8 19.6-22.9 34.7-42.6 42.6-29.5 11.7-99.5 9-132.4 9s-102.9 2.6-132.4-9C72 422.8 56.9 407.7 49 388c-11.7-29.5-9-99.5-9-132s-2.6-102.9 9-132.4C56.8 104 71.9 88.9 91.6 81c29.5-11.7 99.5-9 132.4-9s102.9-2.6 132.4 9c19.6 7.8 34.7 22.9 42.6 42.6 11.7 29.5 9 99.5 9 132.4s2.7 102.5-9 132Z'/%3E%3C/svg%3E");
}
.agency-social-tiktok {
    --agency-social-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath fill='black' d='M448 209.9a210.1 210.1 0 0 1-122.8-39.3v178.8c0 88.3-71.6 159.9-160 159.9S5.2 437.7 5.2 349.4s71.6-159.9 160-159.9c16.8 0 33 2.6 48.2 7.4v86.8a75.4 75.4 0 1 0 51.7 71.6V2.7h85.6a124.3 124.3 0 0 0 2 22.2h.1a125.3 125.3 0 0 0 55.2 82.3A124.7 124.7 0 0 0 448 128v81.9Z'/%3E%3C/svg%3E");
}

.imprint-agency-spacer {
    height: 50px;
}
.imprint-agency-grid {
    width: min(1600px, calc(100% - 30px)) !important;
    margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}
.imprint-agency-grid section {
    min-height: 141px;
}
.imprint-agency-card {
    text-align: center;
}
.agency-icon {
    width: 69px;
    height: 69px;
    margin: 0 auto;
    display: grid;
    place-items: center;
    border: 2px solid #fff;
    border-radius: 50%;
    color: #fff;
	margin-bottom: 1rem;
}
.agency-icon-map {
    --agency-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 384 512'%3E%3Cpath fill='black' d='M172.3 501.7C27 291 0 269.4 0 192 0 86 86 0 192 0s192 86 192 192c0 77.4-27 99-172.3 309.7-9.5 13.8-29.9 13.8-39.4 0ZM192 272a80 80 0 1 0 0-160 80 80 0 0 0 0 160Z'/%3E%3C/svg%3E");
}
.agency-icon-phone {
    --agency-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath fill='black' d='M493.4 24.6 387.6.2c-11.6-2.7-23.5 3.3-28.2 14.3l-48 112c-4.2 9.8-1.4 21.3 6.9 28l61.6 50.4c-36.5 77.4-99.3 140.2-176.7 176.7l-50.4-61.6c-6.8-8.3-18.2-11.1-28-6.9l-112 48C3.8 365.8-2.2 377.7.5 389.3l24.4 105.8C27.5 505.1 36.4 512 46.7 512 303.4 512 512 303.6 512 46.7c0-10.3-6.9-19.2-18.6-22.1Z'/%3E%3C/svg%3E");
}
.agency-icon-mail {
    --agency-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath fill='black' d='M502.3 190.8c3.9-3.1 9.7-.2 9.7 4.7V400c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V195.6c0-5 5.7-7.8 9.7-4.7 22.4 17.4 52.1 39.5 154.1 113.6 21.1 15.4 56.7 47.8 92.2 47.6 35.7.3 72-32.8 92.3-47.6 102-74.1 131.6-96.3 154-113.7ZM256 320c23.2.4 56.6-29.2 73.4-41.4 132.7-96.3 142.8-104.7 173.4-128.7 5.8-4.5 9.2-11.5 9.2-18.9v-19c0-26.5-21.5-48-48-48H48C21.5 64 0 85.5 0 112v19c0 7.4 3.4 14.3 9.2 18.9 30.6 23.9 40.7 32.4 173.4 128.7 16.8 12.2 50.2 41.8 73.4 41.4Z'/%3E%3C/svg%3E");
}
.agency-icon::before {
    content: "";
    width: 35px;
    height: 35px;
    display: block;
    background: currentColor;
    -webkit-mask: var(--agency-icon) center / contain no-repeat;
    mask: var(--agency-icon) center / contain no-repeat;
}
.imprint-agency-grid h3 {
    margin: 8px 0 12px;
    color: #fff;
    font-size: 21px;
    font-weight: 300;
    line-height: 1;
	    margin-bottom: 1rem !important;
}
.imprint-agency-grid h3 a, .imprint-agency-grid p a {
    color: #fff;
    text-decoration: underline;
}
.imprint-agency-grid p {
    margin: 0;
    color: #fff;
    font-size: 18px;
    font-weight: 300;
    line-height: 1.7;
}
@media (max-width: 1024px) {
.imprint-agency-logo-row, .imprint-agency-grid {
        grid-template-columns: 1fr;
    }
	.imprint-agency-social {
        justify-content: center;
        flex-wrap: wrap;
        gap: 20px;
        transform: none;
		margin-top: 3rem;
    }
}