.content-form { margin-top: 2em; }
@media only screen and (max-width: 960px) {
    .content-form { margin-top: 8em; }
}
.content-form .control-group { margin-bottom: 1.4em; }
.content-form .control-group .controls { position: relative; }
.content-form .control-group input[type=text]:focus + .control-label, .content-form .control-group input[type=email]:focus + .control-label, .content-form .control-group input[type=password]:focus + .control-label, .content-form .control-group textarea:focus + .control-label { opacity: 0; }
.content-form .control-group input[type=text]:focus::placeholder, .content-form .control-group input[type=email]:focus::placeholder, .content-form .control-group input[type=password]:focus::placeholder, .content-form .control-group textarea:focus::placeholder { opacity: 1; transition: opacity 0.4s 0.3s; }
.content-form .control-group input[type=text]:focus::-webkit-input-placeholder, .content-form .control-group input[type=email]:focus::-webkit-input-placeholder, .content-form .control-group input[type=password]:focus::-webkit-input-placeholder, .content-form .control-group textarea:focus::-webkit-input-placeholder { opacity: 1; transition: opacity 0.4s 0.3s; }
.content-form .control-group input[type=text]:focus::-moz-placeholder, .content-form .control-group input[type=email]:focus::-moz-placeholder, .content-form .control-group input[type=password]:focus::-moz-placeholder, .content-form .control-group textarea:focus::-moz-placeholder { opacity: 1; transition: opacity 0.4s 0.3s; }
.content-form .control-group input[type=text]:focus:-ms-input-placeholder, .content-form .control-group input[type=email]:focus:-ms-input-placeholder, .content-form .control-group input[type=password]:focus:-ms-input-placeholder, .content-form .control-group textarea:focus:-ms-input-placeholder { opacity: 1; transition: opacity 0.4s 0.3s; }
.content-form .control-group input[type=text]::placeholder, .content-form .control-group input[type=email]::placeholder, .content-form .control-group input[type=password]::placeholder, .content-form .control-group textarea::placeholder { opacity: 0; transition: opacity 0.4s; }
.content-form .control-group input[type=text]::-webkit-input-placeholder, .content-form .control-group input[type=email]::-webkit-input-placeholder, .content-form .control-group input[type=password]::-webkit-input-placeholder, .content-form .control-group textarea::-webkit-input-placeholder { opacity: 0; transition: opacity 0.4s; }
.content-form .control-group input[type=text]::-moz-placeholder, .content-form .control-group input[type=email]::-moz-placeholder, .content-form .control-group input[type=password]::-moz-placeholder, .content-form .control-group textarea::-moz-placeholder { opacity: 0; transition: opacity 0.4s; }
.content-form .control-group input[type=text]:-ms-input-placeholder, .content-form .control-group input[type=email]:-ms-input-placeholder, .content-form .control-group input[type=password]:-ms-input-placeholder, .content-form .control-group textarea:-ms-input-placeholder { opacity: 0; transition: opacity 0.4s; }
@media (max-width: 659px) {
    .content-form .control-group input[type=text]::placeholder, .content-form .control-group input[type=email]::placeholder, .content-form .control-group input[type=password]::placeholder, .content-form .control-group textarea::placeholder { opacity: 1; }
    .content-form .control-group input[type=text]::-webkit-input-placeholder, .content-form .control-group input[type=email]::-webkit-input-placeholder, .content-form .control-group input[type=password]::-webkit-input-placeholder, .content-form .control-group textarea::-webkit-input-placeholder { opacity: 1; }
    .content-form .control-group input[type=text]::-moz-placeholder, .content-form .control-group input[type=email]::-moz-placeholder, .content-form .control-group input[type=password]::-moz-placeholder, .content-form .control-group textarea::-moz-placeholder { opacity: 1; }
    .content-form .control-group input[type=text]:-ms-input-placeholder, .content-form .control-group input[type=email]:-ms-input-placeholder, .content-form .control-group input[type=password]:-ms-input-placeholder, .content-form .control-group textarea:-ms-input-placeholder { opacity: 1; }
    .content-form .control-group input[type=text] + .control-label, .content-form .control-group input[type=email] + .control-label, .content-form .control-group input[type=password] + .control-label, .content-form .control-group textarea + .control-label { display: none; }
}
.content-form .control-group input[type='text']:not(:placeholder-shown) + .control-label, .content-form .control-group input[type='password']:not(:placeholder-shown) + .control-label, .content-form .control-group input[type='email']:not(:placeholder-shown) + .control-label, .content-form .control-group textarea:not(:placeholder-shown) + .control-label { opacity: 0; }
.content-form .control-group .control-label { position: absolute; bottom: 1.3em; left: 2.7em; opacity: 1; transition: opacity 0.4s; font-weight: 800; font-size: 20px; letter-spacing: -0.04em; z-index: 1; color: #000; }
@media only screen and (max-width: 1150px) {
    .content-form .control-group .control-label { font-size: 15px; }
}
@media (max-width: 659px) {
    .content-form .control-group .control-label { display: none; }
}
.content-form .control-group textarea { height: 270px; }
.content-form .control-group textarea + .control-label { left: 2.3em; }
@media (max-width: 659px) {
    .content-form .control-group textarea { height: 315px; font-size: 18px; }
    .content-form .button-wrapper .send-button-wrapper .button { font-size: 20px; }
}
.content-form fieldset.radio > .radio { display: flex; flex-flow: row wrap; justify-content: center; max-width: 1060px; margin: 0.5em auto 0; gap: 0 25px; }
@media (max-width: 659px) {
    .content-form fieldset.radio > .radio { gap: 0 15px; }
}
.content-form fieldset.radio input { position: absolute; opacity: 0; height: 1px; width: 1px; bottom: 0; overflow: hidden; }
.content-form fieldset.radio input:checked + label { background: #D4FF26; color: #000; }
.content-form fieldset.radio .form-check { width: calc(33.33% - 25px); }
.content-form fieldset.radio .form-check label { font-size: 30px; font-size: clamp(20px, calc(20px + ((10) * ((100vw - 430px) / (2000 - 430)))), 30px); margin: 0; background: #000; padding: 0.8em 0; text-align: center; width: 100%; font-family: 'Unbounded', sans-serif; text-transform: uppercase; letter-spacing: -0.02em; font-weight: 800; border-radius: 90px; color: #fff; margin-bottom: 0.9em; border: 6px solid #000; transition: background 0.4s, color 0.4s; }
@media (max-width: 659px) {
    .content-form fieldset.radio .form-check { width: calc(50% - 15px); }
}
@media (max-width: 400px) {
    .content-form fieldset.radio .form-check { width: 100%; }
}
.content-form .button-wrapper { justify-content: space-between; }
.content-form .button-wrapper .privacy { font-size: clamp(12px, calc(12px + ((4) * ((100vw - 430px) / (2000 - 430)))), 16px); width: calc(100% - 360px); max-width: 945px; padding-top: 10px; line-height: 1.5em; }
@media (max-width: 1023px) {
    .content-form .button-wrapper { align-items: center; }
    .content-form .button-wrapper .privacy { width: 100%; padding-right: 0; padding-top: 0; }
    .content-form .button-wrapper .send-button-wrapper { order: 90; }
}
@media (max-width: 659px) {
    .content-form .button-wrapper .send-button-wrapper { width: 100%; text-align: center; }
}
.content-form .fr-captcha-wrapper { margin-top: 1em; width: 100%; }
@media (max-width: 1023px) {
    .content-form .fr-captcha-wrapper { width: auto; margin-top: 0; }
}
@media (max-width: 659px) {
    .content-form .fr-captcha-wrapper { width: 100%; }
}
.content-form .fr-captcha-wrapper .frc-captcha { max-width: 352px; border-radius: 20px; padding: 18px 25px 23px; }
.content-form .fr-captcha-wrapper .frc-captcha .frc-content { overflow: inherit; margin: 5px 0 0 0; }
.content-form .fr-captcha-wrapper .frc-captcha .frc-container { max-width: 512px; margin: 0 auto; position: relative; }
.content-form .fr-captcha-wrapper .frc-captcha .frc-button { margin-top: 5px; padding: 6px 6px 3px; transition: background-color 0.4s, color 0.4s !important; }
.content-form .fr-captcha-wrapper .frc-captcha .frc-banner { bottom: 5px; }
.content-form .fr-captcha-wrapper .frc-captcha .frc-icon { margin: 0 10px 0 0; }
@media (max-width: 659px) {
    .content-form .fr-captcha-wrapper .frc-captcha { margin: 0.5em auto 1.5em; }
    .content-form .fr-captcha-wrapper .frc-captcha .frc-button { padding: 12px 10px 10px; }
}
#emote-anim { position: fixed; left: 0; right: 0; bottom: 0; top: 0; margin: auto; line-height: 9000px; font-size: 100px; display: flex; justify-content: center; align-items: center; opacity: 0; z-index: 9; pointer-events: none; box-sizing: border-box; transition: opacity 0.4s, padding-top 0.6s; padding-top: 20vh; height: 100%; width: 100%; background: rgba(0, 0, 0, 0.5); }
#emote-anim.active { opacity: 1; padding-top: 0; }
@media (max-width: 659px) {
    #emote-anim { padding-right: 0; }
}
.content-page.contact-page { background: #000; color: #fff; text-align: center; }
@media (max-width: 659px) {
    .content-page.contact-page { padding-top: 40px; }
}
.content-page.contact-page .heading-box .title { font-size: clamp(72px, calc(72px + ((108) * ((100vw - 660px) / (2000 - 660)))), 180px); margin-bottom: 0.14em; letter-spacing: -0.04em; font-weight: 900; }
@media (max-width: 659px) {
    .content-page.contact-page .heading-box .title { margin-bottom: 0.5em; font-size: 11vw; }
}
.content-page.contact-page .heading-box .subtitle { font-family: 'Poppins', sans-serif; text-transform: none; font-size: clamp(22px, calc(22px + ((38) * ((100vw - 430px) / (2000 - 430)))), 60px); letter-spacing: -0.01em; }
.content-page.contact-page > .content { margin-top: 0; }
.content-page.contact-page > .row { max-width: 1560px; }
.content-page.contact-page .text-content { max-width: inherit; margin-bottom: 3.3em; }
@media (max-width: 1400px) {
    .content-page.contact-page .text-content { margin-bottom: 1em; }
}
.content-page.contact-page .intro-content { max-width: inherit; margin-bottom: 0; text-align: center; }
.content-page.contact-page .text-box { margin-top: 2.1em; }
.content-page.contact-page .contact-info { line-height: 1.15; }
.content-page.contact-page .contact-info .phone { font-size: clamp(35px, calc(35px + ((55) * ((100vw - 430px) / (2000 - 430)))), 90px); font-weight: 800; letter-spacing: -0.03em; }
.content-page.contact-page .contact-info .phone a { text-decoration: none; }
.content-page.contact-page .contact-info .email { font-weight: 500; font-size: clamp(22px, calc(22px + ((28) * ((100vw - 430px) / (2000 - 430)))), 50px); }
.content-page.contact-page .contact-info .email a { text-decoration: none; text-decoration: underline; }
.content-page.contact-page .contact-info .address-box { line-height: 1.4; margin-top: 4.3em; font-size: clamp(17px, calc(17px + ((13) * ((100vw - 430px) / (2000 - 430)))), 30px); letter-spacing: -0.03em; }
@media (max-width: 1023px) {
    .content-page.contact-page .contact-info .email { margin-top: 0.2em; }
}
#contact-form { background: #F2F2F5; color: #000; padding-top: 2.9em; padding-bottom: 12.6em; margin-top: 0; }
#contact-form .headline { font-size: clamp(60px, calc(60px + ((40) * ((100vw - 430px) / (2000 - 430)))), 100px); font-weight: 900; margin-bottom: 0.25em; letter-spacing: -0.05em; word-break: break-word; }
#contact-form .headline .hand-wave { margin-left: 20px; width: 118px; height: 120px; }
#contact-form .subline { font-size: clamp(25px, calc(25px + ((30) * ((100vw - 430px) / (2000 - 430)))), 55px); margin-bottom: 1.05em; letter-spacing: -0.035em; font-family: 'Poppins', sans-serif; }
#contact-form .budget-titel { margin-top: 1.7em; letter-spacing: -0.03em; }
#contact-form textarea { margin-top: 1em; padding-bottom: 50px; }
@media (max-width: 1023px) {
    #contact-form { padding-bottom: 7em; }
    #contact-form .headline .hand-wave { width: 70px; height: 71px; }
}
@media (max-width: 659px) {
    #contact-form { padding-bottom: 4.6em; }
    #contact-form textarea { margin-top: 0; }
}
