.ff-form-shell{padding:clamp(26px,4vw,38px);scroll-margin-top:112px;color:var(--ff-deep);background:var(--ff-white);border-color:color-mix(in srgb,var(--ff-deep) 14%,transparent);box-shadow:0 22px 54px #030e162e}.ff-form-heading{margin-bottom:26px}.ff-form-heading .form-label{color:var(--ff-teal-dark)}.ff-form-heading h3{margin:9px 0 0;color:var(--ff-deep);font-family:var(--font-display);font-size:clamp(27px,3vw,32px);font-weight:500;line-height:1.15}.ff-form-heading p{margin:12px 0 0;color:color-mix(in srgb,var(--ff-deep) 80%,transparent);font-size:16px;line-height:1.65}.ff-form .field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:19px}.ff-form label:not(.check-field){display:grid;gap:8px;color:var(--ff-deep);font-size:13px;font-weight:700;letter-spacing:.04em;line-height:1.35;text-transform:uppercase}.ff-form input:not([type=checkbox]),.ff-form select,.ff-form textarea{width:100%;min-height:52px;padding:12px 14px;color:var(--ff-deep);background:color-mix(in srgb,var(--ff-white) 88%,var(--ff-teal));border:1px solid color-mix(in srgb,var(--ff-deep) 24%,transparent);border-radius:var(--radius-btn);font:400 16px/1.4 var(--font-body);letter-spacing:0;text-transform:none}.ff-form textarea{min-height:118px;resize:vertical}.ff-form input::placeholder,.ff-form textarea::placeholder{color:color-mix(in srgb,var(--ff-deep) 58%,transparent)}.ff-form input:focus,.ff-form select:focus,.ff-form textarea:focus{border-color:var(--ff-teal);outline:2px solid var(--ff-green);outline-offset:2px;box-shadow:var(--shadow-focus)}.ff-form .field-wide{grid-column:1 / -1}.ff-form .check-field{display:grid;grid-template-columns:20px 1fr;align-items:start;gap:11px;color:color-mix(in srgb,var(--ff-deep) 84%,transparent);font-size:14px;line-height:1.55}.ff-form .check-field+.check-field{margin-top:12px}.ff-form .check-field input{width:18px;height:18px;margin-top:2px;accent-color:var(--ff-teal)}.ff-form .check-field a{color:var(--ff-teal-dark);text-decoration:underline;text-underline-offset:2px}.ff-form .form-submit{width:100%;margin-top:24px}.ff-form .form-submit:disabled{cursor:not-allowed;opacity:.55;transform:none}.form-availability{margin:12px 0 0;color:color-mix(in srgb,var(--ff-deep) 75%,transparent);font-size:14px;line-height:1.5;text-align:center}.form-success-inline{padding:16px 18px;color:var(--ff-deep);background:color-mix(in srgb,var(--ff-white) 84%,var(--ff-green));border:1px solid var(--ff-green);border-radius:var(--radius-btn)}.form-success-inline strong,.form-success-inline span{display:block}.form-success-inline span{margin-top:4px;font-size:14px}.form-success-dialog{box-sizing:border-box;width:min(560px,calc(100% - 32px));max-height:calc(100dvh - 32px);padding:clamp(30px,5vw,48px);overflow-x:hidden;overflow-y:auto;color:var(--text);background:var(--surface-1);border:1px solid var(--ff-teal);border-radius:var(--radius-card);box-shadow:0 28px 90px #030e167a}.form-success-dialog::backdrop{background:#030e16c2;backdrop-filter:blur(5px)}.form-success-dialog h2{margin:10px 0 0;font-family:var(--font-display);font-size:clamp(34px,6vw,52px);font-weight:500;line-height:1.05}.form-success-dialog p{margin:18px 0 0;color:var(--text-dim);font-size:17px;line-height:1.7}.form-success-dialog .btn{margin-top:26px}.dialog-close{position:absolute;top:14px;right:16px;display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:42px;padding:0 13px;color:var(--text);background:var(--surface-control);border:1px solid var(--hairline);border-radius:var(--radius-btn);font-family:var(--font-body);font-size:12px;font-weight:700;letter-spacing:.06em;line-height:1;text-transform:uppercase;white-space:nowrap}.dialog-close span[aria-hidden=true]{font-size:22px;font-weight:400;line-height:.8}.dialog-close:hover,.dialog-close:focus-visible{color:var(--text);border-color:var(--ff-teal);box-shadow:var(--shadow-focus)}.ff-form-shell--compact{max-width:620px;padding:24px}.ff-form-shell--compact .ff-form-heading h3{font-size:26px}@media(max-width:640px){.ff-form .field-grid{grid-template-columns:1fr}.ff-form .field-wide{grid-column:auto}.form-success-dialog{padding:76px 24px 28px}.form-success-dialog h2{font-size:36px}.form-success-dialog .btn{width:100%}}
