/* ---- hero-headline-background.css ---- */
body .is-root-container .block-hero-headline-background{position:relative;padding:min(calc(12.5rem + 3.75 * (100vw - 22.5rem) / 77.5),16.25rem) 0 min(calc(2.5rem + 2.5 * (100vw - 22.5rem) / 77.5),5rem);color:#fff;background:#003764}body .is-root-container .block-hero-headline-background .headline-wrapper{display:flex;flex-flow:column;gap:clamp(1.25rem,calc(1.25rem + 0 * (100vw - 22.5rem) / 77.5),1.25rem)}body .is-root-container .block-hero-headline-background .headline-wrapper .headline.style-default{font-family:Aeonik Pro;font-weight:400;line-height:1;font-size:min(calc(1.625rem + 2.75 * (100vw - 22.5rem) / 77.5),4.375rem);letter-spacing:0em;-webkit-text-decoration:None;text-decoration:None;text-transform:None}body .is-root-container .block-hero-headline-background .background{display:block;position:absolute;top:0;left:0;width:100%;height:100%;content:"";-o-object-position:center;object-position:center;-o-object-fit:cover;object-fit:cover;z-index:0;overflow:hidden;pointer-events:none}body .is-root-container .block-hero-headline-background .background .bg-image{display:block;position:absolute;top:0;left:0;width:100%;height:100%;content:"";-o-object-position:center;object-position:center;-o-object-fit:cover;object-fit:cover}body .is-root-container .block-hero-headline-background .background .bg-image .img{display:block;position:absolute;top:0;left:0;width:100%;height:100%;content:"";-o-object-position:center;object-position:center;-o-object-fit:cover;object-fit:cover}body .is-root-container .block-hero-headline-background .wrapper{position:relative;z-index:2}

/* ---- contact page ---- */
.block-contact-info .wrapper,
.block-contact-form .wrapper{width:100rem;padding-right:min(calc(1.25rem + 1.25 * (100vw - 22.5rem) / 77.5),2.5rem);padding-left:min(calc(1.25rem + 1.25 * (100vw - 22.5rem) / 77.5),2.5rem)}
.block-contact-info .headline-wrapper,
.block-contact-form .form-intro{display:flex;flex-flow:column;gap:1rem;margin-bottom:clamp(1.5rem,4vw,2.5rem)}
.block-contact-info .overline,
.block-contact-form .overline{font-family:Aeonik Pro;font-weight:400;line-height:1.2;font-size:.875rem;letter-spacing:.12em;text-transform:uppercase;color:#757575}
.block-contact-info .headline,
.block-contact-form .headline{font-family:Aeonik Pro;font-weight:400;line-height:1.2;font-size:min(calc(1.375rem + 1.125 * (100vw - 22.5rem) / 77.5),2.5rem);letter-spacing:0;color:#003764}
.block-contact-info .headline .highlight,
.block-contact-form .headline .highlight{color:#003764}

/* contact cards */
.block-contact-info .contact-cards{display:grid;grid-template-columns:1fr;gap:1.25rem}
@media(min-width:36rem){.block-contact-info .contact-cards{grid-template-columns:repeat(2,1fr)}}
@media(min-width:64rem){.block-contact-info .contact-cards{grid-template-columns:repeat(4,1fr)}}
.block-contact-info .contact-card{display:flex;flex-flow:column;gap:1rem;padding:1.75rem;background:#fff;border:1px solid rgba(54,57,57,.12);border-radius:.5rem;box-shadow:0 .125rem .5rem rgba(0,0,0,.04);transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}
.block-contact-info a.contact-card:hover,.block-contact-info a.contact-card:focus{transform:translateY(-.25rem);box-shadow:0 .75rem 1.75rem rgba(0,55,100,.1);border-color:rgba(0,55,100,.25)}
.block-contact-info .contact-card-icon{display:flex;align-items:center;justify-content:center;width:3rem;height:3rem;border-radius:50%;background:#003764;color:#fff}
.block-contact-info .contact-card-icon svg{width:1.25rem;height:1.25rem}
.block-contact-info .contact-card-label{font-family:Aeonik Pro;font-weight:400;line-height:1.2;font-size:.8125rem;letter-spacing:.08em;text-transform:uppercase;color:#757575}
.block-contact-info .contact-card-value{font-family:Aeonik Pro;font-weight:400;line-height:1.45;font-size:1.0625rem;color:#363939;word-break:break-word}
.block-contact-info a.contact-card:hover .contact-card-value{color:#003764}

/* form */
.block-contact-form .contact-form-wrapper{max-width:56rem;margin:0 auto}
.block-contact-form .form-intro-text{font-family:Aeonik Pro;font-weight:400;line-height:1.7;color:#757575}
.block-contact-form .contact-message-form{display:flex;flex-flow:column;gap:1.25rem;padding:clamp(1.5rem,4vw,2.5rem);background:#fff;border:1px solid rgba(54,57,57,.12);border-radius:.5rem;box-shadow:0 .125rem .5rem rgba(0,0,0,.04)}
.block-contact-form .form-row{display:grid;grid-template-columns:1fr;gap:1.25rem}
@media(min-width:48rem){.block-contact-form .form-row{grid-template-columns:repeat(2,1fr)}}
.block-contact-form .form-field{display:flex;flex-flow:column;gap:.5rem}
.block-contact-form .form-field label{font-family:Aeonik Pro;font-weight:600;font-size:.875rem;color:#363939}
.block-contact-form .required{color:#c62828}
.block-contact-form input[type="text"],
.block-contact-form textarea{width:100%;padding:.875rem 1rem;font-family:Aeonik Pro;font-size:1rem;color:#363939;background:#f7f7f7;border:1px solid rgba(54,57,57,.14);border-radius:.5rem;transition:border-color .25s ease,box-shadow .25s ease}
.block-contact-form textarea{resize:vertical;min-height:8rem}
.block-contact-form input[type="text"]:focus,
.block-contact-form textarea:focus{outline:none;border-color:#003764;box-shadow:0 0 0 .1875rem rgba(0,55,100,.12)}
.block-contact-form .captcha-wrapper{display:flex;flex-flow:row;gap:.75rem;align-items:center;flex-wrap:wrap}
.block-contact-form .captcha-wrapper input{flex:1;min-width:12rem}
.block-contact-form .codeimg{height:2.875rem;border:1px solid rgba(54,57,57,.14);border-radius:.5rem;cursor:pointer}
.block-contact-form .contact-submit{align-self:flex-start;padding:.9375rem 2rem;font-family:Aeonik Pro;font-weight:600;font-size:1rem;color:#fff;background:#003764;border:none;border-radius:.5rem;cursor:pointer;transition:background .25s ease,transform .25s ease}
.block-contact-form .contact-submit:hover{background:#00294c;transform:translateY(-.0625rem)}
.block-contact-form .contact-submit:disabled{opacity:.6;cursor:not-allowed;transform:none}
.block-contact-form .form-message{display:none;padding:.875rem 1rem;border-radius:.5rem;font-size:.9375rem;line-height:1.5}
.block-contact-form .form-message.is-visible{display:block}
.block-contact-form .form-message.is-success{color:#0b6b3a;background:rgba(11,107,58,.1);border:1px solid rgba(11,107,58,.25)}
.block-contact-form .form-message.is-error{color:#c62828;background:rgba(198,40,40,.08);border:1px solid rgba(198,40,40,.25)}

/* ---- section vertical spacing override ---- */
.block-contact-info,
.block-contact-form{padding-top:min(calc(3.5rem + 3.5 * (100vw - 22.5rem) / 77.5),7rem);padding-bottom:min(calc(3.5rem + 3.5 * (100vw - 22.5rem) / 77.5),7rem)}
