/* Formium Alliance: "Contact us". Minimal: a headline and one quiet form on the black stage, nothing else. */
.fcu { position: relative; z-index: 0; overflow: hidden; background: #000; color: #fff; font-family: var(--fa-font, 'Geist', system-ui, sans-serif); min-height: 100vh; min-height: 100svh; box-sizing: border-box; padding: 140px 20px 90px; display: flex; flex-direction: column; justify-content: center; }
.fcu::before { content: ''; position: absolute; left: 50%; top: -340px; width: 1000px; height: 640px; transform: translateX(-50%); background: radial-gradient(closest-side, rgba(230, 0, 35, .2), rgba(230, 0, 35, .05) 60%, rgba(230, 0, 35, 0)); filter: blur(30px); pointer-events: none; z-index: -1; }
.fcu__in { width: 100%; max-width: 560px; margin: 0 auto; }
.fcu__head { text-align: center; margin: 0 0 40px; }
#contactus .fcu__h { margin: 0 !important; font-size: var(--fa-title, 56px) !important; line-height: var(--fa-title-lh, 1.06) !important; letter-spacing: var(--fa-title-ls, -.03em) !important; font-weight: 400 !important; color: #fff !important; text-wrap: balance; }
#contactus .fcu__sub { margin: 16px auto 0 !important; max-width: 420px; font-size: 16px !important; line-height: 1.5 !important; color: rgba(255, 255, 255, .6) !important; text-wrap: balance; }

.fcu__form { margin: 0; }
.fcu__f { display: block; margin: 0 0 20px; }
.fcu__lab { display: block; margin: 0 0 4px; font-size: 13px; letter-spacing: .02em; color: rgba(255, 255, 255, .5); transition: color .25s; }
.fcu__f:focus-within .fcu__lab { color: rgba(255, 255, 255, .85); }
.fcu__f input, .fcu__f textarea { width: 100%; box-sizing: border-box; padding: 12px 0 14px; border: 0; border-bottom: 1px solid rgba(255, 255, 255, .26); border-radius: 0; background: transparent; color: #fff; font: inherit; font-size: 18px; line-height: 1.35; outline: none; transition: border-color .25s; -webkit-appearance: none; appearance: none; }
.fcu__f textarea { min-height: 84px; resize: vertical; line-height: 1.5; }
.fcu__f input::placeholder, .fcu__f textarea::placeholder { color: rgba(255, 255, 255, .28); }
.fcu__f input:focus, .fcu__f textarea:focus { border-bottom-color: #E60023; }
.fcu__f input:-webkit-autofill { -webkit-text-fill-color: #fff; -webkit-box-shadow: 0 0 0 40px #000 inset; caret-color: #fff; }
.fcu__f.is-bad input, .fcu__f.is-bad textarea { border-bottom-color: #ff6b6b; }
.fcu__hp { position: absolute !important; left: -9999px; width: 1px; height: 1px; overflow: hidden; }

.fcu__btn { margin-top: 14px; width: 100%; display: inline-flex; align-items: center; justify-content: center; gap: 10px; height: 56px; padding: 0 30px; border: 0; border-radius: 99px; background: #E60023; color: #fff; font: inherit; font-size: 13px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; cursor: pointer; transition: background-color .3s, color .3s, transform .3s, opacity .3s; }
.fcu__btn:hover { background: #fff; color: #E60023; }
.fcu__btn:active { transform: scale(.985); }
.fcu__btn:disabled { opacity: .6; cursor: default; }
.fcu__btn svg { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 2.4; stroke-linecap: round; stroke-linejoin: round; }
.fcu__status { margin: 16px 0 0; min-height: 20px; text-align: center; font-size: 14px; line-height: 1.5; color: rgba(255, 255, 255, .6); }
.fcu__status.is-err { color: #ff8a8a; }
.fcu__status a { color: #fff; text-decoration: underline; text-underline-offset: 3px; }
.fcu__alt { margin: 26px 0 0; text-align: center; font-size: 14px; line-height: 1.6; color: rgba(255, 255, 255, .45); }
.fcu__alt a { color: rgba(255, 255, 255, .85); text-decoration: underline; text-underline-offset: 3px; text-decoration-color: rgba(255, 255, 255, .3); transition: text-decoration-color .3s; }
.fcu__alt a:hover { text-decoration-color: #E60023; }

.fcu__done { display: none; text-align: center; padding: 20px 0 10px; }
.fcu__done i { width: 64px; height: 64px; margin: 0 auto 22px; border-radius: 50%; display: grid; place-items: center; background: #E60023; }
.fcu__done svg { width: 28px; height: 28px; fill: none; stroke: #fff; stroke-width: 2.4; stroke-linecap: round; stroke-linejoin: round; }
.fcu__done h2 { margin: 0 !important; font-size: 30px !important; font-weight: 450 !important; letter-spacing: -.02em !important; color: #fff !important; }
.fcu__done p { margin: 12px auto 0; max-width: 340px; font-size: 16px; line-height: 1.5; color: rgba(255, 255, 255, .6); }
.fcu.is-sent .fcu__form, .fcu.is-sent .fcu__sub { display: none; }
.fcu.is-sent .fcu__done { display: block; }

@keyframes fcu-up { from { opacity: 0; transform: translateY(16px); } to { opacity: 1; transform: none; } }
.fcu__head > *, .fcu__form, .fcu__alt { animation: fcu-up .9s cubic-bezier(.22, 1, .36, 1) both; }
.fcu__head > :nth-child(2) { animation-delay: .06s; } .fcu__form { animation-delay: .12s; } .fcu__alt { animation-delay: .2s; }
@media (prefers-reduced-motion: reduce) { .fcu__head > *, .fcu__form, .fcu__alt { animation: none; } }
@media (max-width: 767px) { .fcu { padding: 130px 20px 80px; justify-content: flex-start; } .fcu__head { margin-bottom: 40px; } #contactus .fcu__sub { font-size: 14px !important; } .fcu__f input, .fcu__f textarea { font-size: 17px; } }
