body.sp-page{
  --sp-green:#558221; --sp-green-d:#315200; --sp-gold:#CE9326; --sp-gold-l:#E9C155;
  --sp-ink:#1E2A16; --sp-grey:#6E7468; --sp-line:#E3E7DC; --sp-bg:#F6F7F3; --sp-field:#FBFCF9; --sp-err:#C0392B;
  --sp-hero-a:#0F2433; --sp-hero-b:#0C1D17; --sp-glow-1:rgba(72,170,71,.38); --sp-glow-2:rgba(56,122,166,.46);
  --sp-ease:cubic-bezier(.22,1,.36,1);
  --sp-acc-rgb:85,130,33; --sp-gl-rgb:233,193,85; --sp-g-rgb:206,147,38; --sp-line-h:#C9D2BC; --sp-line-s:#C3C9BB; --sp-text2:#4F564A; --sp-ph:#A3A99C;
  margin:0; background:var(--sp-bg); color:var(--sp-ink);
  font-family:"Montserrat",system-ui,sans-serif; font-size:16px; line-height:1.6;
  -webkit-font-smoothing:antialiased; overflow-x:hidden;
}
body.sp-page.sp-ctss{ --sp-gold:#3C8DC2; --sp-gold-l:#63C862; --sp-g-rgb:60,141,194; --sp-gl-rgb:99,200,98; }
body.sp-page.sp-ddss{ --sp-gold:#C2476A; --sp-gold-l:#F27E9C; --sp-g-rgb:194,71,106; --sp-gl-rgb:242,126,156; }
body.sp-page.sp-ddss{ --sp-hero-a:#2A0409; --sp-hero-b:#170206; --sp-glow-1:rgba(162,53,80,.45); --sp-glow-2:rgba(110,0,27,.58);
  --sp-green:#A23550; --sp-green-d:#6E001B; --sp-acc-rgb:162,53,80; --sp-ink:#2A1519; --sp-grey:#76686B;
  --sp-line:#ECDFE2; --sp-bg:#F8F4F5; --sp-field:#FCFAFA; --sp-line-h:#DCC2C8; --sp-line-s:#D2BCC1; --sp-text2:#5A494D; --sp-ph:#AE9FA3; }
body.sp-page *, body.sp-page *::before, body.sp-page *::after{ box-sizing:border-box; }
body.sp-page a{ color:inherit; }
body.sp-page img{ max-width:100%; height:auto; }
.sp-wrap{ width:100%; max-width:1240px; margin:0 auto; padding:0 32px; }

/* header */
.sp-hdr{ position:absolute; top:0; left:0; right:0; z-index:20; padding:30px 0 22px; }
.sp-hdr__bar{ display:flex; align-items:center; justify-content:space-between; gap:16px; animation:spDrop .8s var(--sp-ease) both; }
@keyframes spDrop{ from{ opacity:0; transform:translateY(-16px); } to{ opacity:1; transform:none; } }
body.sp-page .sp-logo{ display:inline-flex; align-items:center; text-decoration:none; color:#fff; }
body.sp-page .sp-logo img{ display:block; height:52px; max-height:none; width:auto; max-width:min(400px,64vw); object-fit:contain; }
.sp-wordmark{ display:flex; flex-direction:column; line-height:1; }
.sp-wordmark b{ font-family:"Syne",sans-serif; font-weight:800; font-size:19px; letter-spacing:.06em; }
.sp-wordmark small{ margin-top:5px; font-size:10.5px; letter-spacing:.22em; text-transform:uppercase; opacity:.72; }
.sp-help{ display:flex; align-items:center; gap:10px; color:#fff; }
.sp-help__label{ font-size:12px; opacity:.7; }
.sp-help__btn{ white-space:nowrap; display:inline-flex; align-items:center; gap:10px; height:44px; padding:0 18px 0 14px; border-radius:999px; text-decoration:none; font-size:14px; font-weight:600; color:#fff !important;
  background:linear-gradient(135deg,rgba(255,255,255,.2) 0%,rgba(255,255,255,.07) 42%,rgba(255,255,255,.1) 100%); -webkit-backdrop-filter:blur(26px) saturate(185%); backdrop-filter:blur(26px) saturate(185%); border:1px solid rgba(255,255,255,.22); box-shadow:inset 0 1px 0 rgba(255,255,255,.45), inset 0 -1px 0 rgba(255,255,255,.06), inset 0 0 22px rgba(255,255,255,.05), 0 10px 26px rgba(0,0,0,.18); transition:background .3s ease, border-color .3s ease, transform .3s var(--sp-ease); }
.sp-help__btn:hover{ background:linear-gradient(135deg,rgba(255,255,255,.3),rgba(255,255,255,.12)); border-color:rgba(var(--sp-gl-rgb),.6); transform:translateY(-1px); }
.sp-help__btn svg{ width:17px; height:17px; fill:none; stroke:var(--sp-gold-l); stroke-width:2; flex:none; }
.sp-help__btn--mail{ width:44px; padding:0; justify-content:center; }

/* hero */
.sp-hero{ position:relative; overflow:hidden; color:#fff; padding:170px 0 170px;
  background:radial-gradient(60% 70% at 88% 8%,var(--sp-glow-1) 0%,transparent 60%),radial-gradient(55% 60% at 0% 100%,var(--sp-glow-2) 0%,transparent 62%),linear-gradient(160deg,var(--sp-hero-a),var(--sp-hero-b)); }
.sp-hero__orb{ position:absolute; border-radius:50%; filter:blur(60px); pointer-events:none; opacity:.7; }
.sp-hero__orb--a{ width:460px; height:460px; right:2%; top:12%; background:var(--sp-glow-1); animation:spFloat 14s ease-in-out infinite; }
.sp-hero__orb--b{ width:360px; height:360px; left:-120px; bottom:-140px; background:var(--sp-glow-2); animation:spFloat 18s ease-in-out infinite reverse; }
@keyframes spFloat{ 0%,100%{ transform:translate(0,0); } 50%{ transform:translate(-40px,30px); } }
.sp-hero__grid{ position:relative; display:grid; grid-template-columns:minmax(0,1.2fr) minmax(0,.9fr); gap:64px; align-items:center; }
.sp-eyebrow{ display:inline-flex; align-items:center; gap:10px; padding:8px 15px; border-radius:999px; font-size:12px; font-weight:600; letter-spacing:.16em; text-transform:uppercase;
  color:var(--sp-gold-l); background:linear-gradient(135deg,rgba(var(--sp-gl-rgb),.2),rgba(255,255,255,.05)); border:1px solid rgba(var(--sp-gl-rgb),.4); -webkit-backdrop-filter:blur(20px) saturate(180%); backdrop-filter:blur(20px) saturate(180%); box-shadow:inset 0 1px 0 rgba(255,255,255,.3); }
.sp-eyebrow i{ position:relative; width:7px; height:7px; border-radius:50%; background:var(--sp-gold-l); flex:none; }
.sp-eyebrow i::after{ content:""; position:absolute; inset:-5px; border-radius:50%; border:1.5px solid var(--sp-gold-l); animation:spPing 2.4s var(--sp-ease) infinite; }
@keyframes spPing{ 0%{ transform:scale(.4); opacity:.9; } 100%{ transform:scale(1.8); opacity:0; } }
.sp-hero h1{ margin:22px 0 18px; font-family:"Syne",sans-serif; font-weight:700; font-size:56px; line-height:1.05; letter-spacing:-.01em; color:#fff; }
.sp-hero h1 em{ font-style:normal; background:linear-gradient(90deg,var(--sp-gold-l),var(--sp-gold),var(--sp-gold-l)); background-size:200% 100%; -webkit-background-clip:text; background-clip:text; color:transparent; animation:spShine 6s linear infinite; }
@keyframes spShine{ to{ background-position:-200% 0; } }
.sp-lede{ margin:0; max-width:560px; font-size:17px; line-height:1.7; color:rgba(255,255,255,.8); }
.sp-chips{ display:flex; flex-wrap:wrap; gap:12px; margin-top:30px; }
.sp-chip{ display:inline-flex; align-items:center; gap:10px; padding:11px 16px; border-radius:14px; font-size:14px; font-weight:500; background:linear-gradient(135deg,rgba(255,255,255,.2) 0%,rgba(255,255,255,.07) 42%,rgba(255,255,255,.1) 100%); -webkit-backdrop-filter:blur(26px) saturate(185%); backdrop-filter:blur(26px) saturate(185%); border:1px solid rgba(255,255,255,.22); box-shadow:inset 0 1px 0 rgba(255,255,255,.45), inset 0 -1px 0 rgba(255,255,255,.06), inset 0 0 22px rgba(255,255,255,.05), 0 8px 22px rgba(0,0,0,.14); }
.sp-chip svg{ width:18px; height:18px; fill:none; stroke:var(--sp-gold-l); stroke-width:2; flex:none; }

.sp-next{ position:relative; overflow:hidden; padding:30px; border-radius:28px; background:linear-gradient(135deg,rgba(255,255,255,.2) 0%,rgba(255,255,255,.07) 42%,rgba(255,255,255,.1) 100%); -webkit-backdrop-filter:blur(26px) saturate(185%); backdrop-filter:blur(26px) saturate(185%); border:1px solid rgba(255,255,255,.22); box-shadow:inset 0 1px 0 rgba(255,255,255,.45), inset 0 -1px 0 rgba(255,255,255,.06), inset 0 0 22px rgba(255,255,255,.05), 0 30px 70px rgba(0,0,0,.3); }
.sp-next::before{ content:""; position:absolute; inset:0; border-radius:inherit; pointer-events:none; background:radial-gradient(120% 60% at 0% 0%,rgba(255,255,255,.22) 0%,rgba(255,255,255,0) 55%); }
.sp-next > *{ position:relative; }
.sp-next h2{ margin:0 0 20px; font-family:"Syne",sans-serif; font-size:22px; font-weight:700; color:#fff; }
.sp-next ol{ list-style:none; margin:0; padding:0; display:grid; gap:18px; position:relative; }
.sp-next ol::before{ content:""; position:absolute; left:15px; top:18px; bottom:18px; width:2px; background:linear-gradient(var(--sp-gold-l),rgba(var(--sp-gl-rgb),.1)); }
.sp-next li{ position:relative; display:flex; gap:16px; align-items:flex-start; }
.sp-next__n{ position:relative; flex:none; width:32px; height:32px; border-radius:50%; display:grid; place-items:center; font-family:"Syne",sans-serif; font-weight:700; font-size:14px; color:#fff; background:linear-gradient(135deg,var(--sp-gold-l),var(--sp-gold)); box-shadow:inset 0 1px 0 rgba(255,255,255,.4), 0 6px 14px rgba(var(--sp-g-rgb),.35); }
.sp-next__n::after{ content:""; position:absolute; inset:-4px; border-radius:50%; border:1.5px solid rgba(var(--sp-gl-rgb),.7); animation:spPing 3s var(--sp-ease) infinite; animation-delay:calc(var(--k,0) * 1s); }
.sp-next b{ display:block; font-size:15px; color:#fff; margin-bottom:3px; }
.sp-next p{ margin:0; font-size:13.5px; line-height:1.55; color:rgba(255,255,255,.72); }

/* entrance */
html.sp-js .sp-in{ opacity:0; transform:translateY(26px); }
html.sp-js.sp-ready .sp-in{ opacity:1; transform:none; transition:opacity .9s var(--sp-ease), transform .9s var(--sp-ease); transition-delay:calc(var(--i,0) * .12s); }

/* form zone */
.sp-zone{ position:relative; z-index:3; margin-top:-90px; padding-bottom:90px; }
.sp-card{ max-width:980px; margin:0 auto; background:linear-gradient(180deg,rgba(255,255,255,.86),rgba(255,255,255,.95) 220px,#fff 420px); -webkit-backdrop-filter:blur(30px) saturate(180%); backdrop-filter:blur(30px) saturate(180%); border:1px solid rgba(255,255,255,.75); border-radius:28px; box-shadow:inset 0 1px 0 #fff, 0 24px 60px rgba(20,30,15,.12); padding:40px 44px 44px; }
.sp-notice{ margin:0; padding:18px 20px; border-radius:14px; background:var(--sp-bg); color:var(--sp-grey); font-size:15px; }

/* ---------- Forminator ---------- */
body.sp-page .sp-form .forminator-ui{ font-family:"Montserrat",sans-serif !important; color:var(--sp-ink); margin:0 !important; max-width:none !important; }
body.sp-page .sp-form .forminator-ui [hidden]{ display:none !important; }
body.sp-page .sp-form .forminator-hidden,
body.sp-page .sp-form .forminator-button.forminator-hidden{ display:none !important; }
body.sp-page .sp-form .sp-hide{ display:none !important; }
body.sp-page .sp-form .hide-label .forminator-field .forminator-label,
body.sp-page .sp-form .hide-label-radio .forminator-label,
body.sp-page .sp-form .hide_title .forminator-title{ display:none !important; }

/* step tracker */
body.sp-page .sp-form .forminator-pagination-steps{ position:relative; display:flex; align-items:flex-start; justify-content:space-between; gap:0; margin:0 0 34px; padding:0 0 28px; border-bottom:1px solid var(--sp-line); counter-reset:spstep; }
body.sp-page .sp-form .forminator-pagination-steps .forminator-break{ display:none; }
body.sp-page .sp-form .forminator-pagination-steps{ --sp-half:calc(50% / var(--sp-n,4)); }
body.sp-page .sp-form .forminator-pagination-steps::before{ content:""; position:absolute; left:var(--sp-half); right:var(--sp-half); top:17px; height:2px; background:var(--sp-line); }
body.sp-page .sp-form .forminator-pagination-steps::after{ content:""; position:absolute; left:var(--sp-half); top:17px; height:2px; width:calc((100% - 2 * var(--sp-half)) * var(--sp-prog,0)); background:linear-gradient(90deg,var(--sp-green),var(--sp-gold)); transition:width .6s var(--sp-ease); }
body.sp-page .sp-form .forminator-step{ position:relative; z-index:1; flex:1 1 0; display:flex; flex-direction:column; align-items:center; gap:10px; min-width:0; margin:0 !important; padding:0 !important;
  background:none !important; border:0 !important; box-shadow:none !important; cursor:pointer; font:inherit; color:var(--sp-grey); text-transform:none; letter-spacing:0; }
body.sp-page .sp-form .forminator-step-dot{ order:-1; position:relative; width:36px; height:36px; border-radius:50%; display:grid; place-items:center; background:#fff; border:2px solid var(--sp-line); transition:all .4s var(--sp-ease); }
body.sp-page .sp-form .forminator-step-dot::before{ counter-increment:spstep; content:counter(spstep); font-size:13px; font-weight:700; color:var(--sp-grey); }
body.sp-page .sp-form .forminator-step-label{ font-size:13px; font-weight:600; line-height:1.3; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; max-width:100%; }
body.sp-page .sp-form .forminator-step.sp-done .forminator-step-dot{ background:var(--sp-green); border-color:var(--sp-green); }
body.sp-page .sp-form .forminator-step.sp-done .forminator-step-dot::before{ content:""; width:14px; height:14px; background:#fff;
  -webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'><path d='M5 12.5l4.5 4.5L19 7.5'/></svg>") center/contain no-repeat;
          mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'><path d='M5 12.5l4.5 4.5L19 7.5'/></svg>") center/contain no-repeat; }
body.sp-page .sp-form .forminator-step.forminator-current{ color:var(--sp-ink); }
body.sp-page .sp-form .forminator-step.forminator-current .forminator-step-dot{ border-color:var(--sp-gold); box-shadow:0 0 0 6px rgba(var(--sp-g-rgb),.16); }
body.sp-page .sp-form .forminator-step.forminator-current .forminator-step-dot::before{ color:var(--sp-gold); }
body.sp-page .sp-form .forminator-step.forminator-current .forminator-step-dot::after{ content:""; position:absolute; inset:-7px; border-radius:50%; border:1.5px solid rgba(var(--sp-g-rgb),.55); animation:spPing 2.6s var(--sp-ease) infinite; }

/* layout */
body.sp-page .sp-form .forminator-pagination--content{ animation:spPage .55s var(--sp-ease); }
@keyframes spPage{ from{ opacity:0; transform:translateY(14px); } to{ opacity:1; transform:none; } }
body.sp-page .sp-form .forminator-row:has(> .forminator-col > .forminator-field > .forminator-title:not(:only-child)),
body.sp-page .sp-form .forminator-row:has(> .forminator-col:not(.hide_title) > .forminator-field > .forminator-title){ margin-top:14px; }
body.sp-page .sp-form .forminator-title{ position:relative; margin:0 !important; padding:0 0 0 16px !important; font-family:"Syne",sans-serif !important; font-size:22px !important; font-weight:700 !important; line-height:1.25 !important; color:var(--sp-ink) !important; text-transform:none !important; }
body.sp-page .sp-form .forminator-title::before{ content:""; position:absolute; left:0; top:.2em; bottom:.2em; width:4px; border-radius:4px; background:linear-gradient(var(--sp-green),var(--sp-gold)); }
body.sp-page .sp-form .forminator-subtitle{ margin:0 !important; padding:0 !important; font-family:"Montserrat",sans-serif !important; font-size:15.5px !important; font-weight:600 !important; line-height:1.5 !important; color:var(--sp-ink) !important; }
body.sp-page .sp-form .forminator-title + .forminator-subtitle{ margin-top:6px !important; }
body.sp-page .sp-form .forminator-merge-tags{ padding:16px 20px; border-radius:16px; background:var(--sp-bg); border:1px solid var(--sp-line); font-size:14px; line-height:1.7; color:var(--sp-text2); }
body.sp-page .sp-form .forminator-merge-tags p{ margin:0; }
body.sp-page .sp-form .forminator-merge-tags p + p{ margin-top:10px; }
body.sp-page .sp-form .forminator-merge-tags .forminator-label{ display:block; margin:0 0 6px !important; font-size:14px !important; font-weight:700 !important; color:var(--sp-ink) !important; }

/* labels */
body.sp-page .sp-form .forminator-label{ position:static !important; display:block; margin:0 0 8px !important; padding:0 !important; transform:none !important; font-family:"Montserrat",sans-serif !important; font-size:13px !important; font-weight:600 !important; line-height:1.4 !important; color:var(--sp-ink) !important; text-transform:none !important; letter-spacing:0 !important; background:none !important; }
body.sp-page .sp-form .forminator-required{ color:var(--sp-gold) !important; }
body.sp-page .sp-form .forminator-description{ display:block; margin-top:6px; font-size:12px; color:var(--sp-grey); }

/* inputs */
body.sp-page .sp-form .forminator-input,
body.sp-page .sp-form .forminator-textarea,
body.sp-page .sp-form select.forminator-select,
body.sp-page .sp-form .select2-selection--single{
  display:block; width:100% !important; max-width:none !important; height:auto; min-height:52px; margin:0 !important; padding:14px 16px !important;
  font-family:"Montserrat",sans-serif !important; font-size:15px !important; font-weight:500 !important; line-height:1.4 !important; color:var(--sp-ink) !important;
  background:var(--sp-field) !important; border:1.5px solid var(--sp-line) !important; border-radius:14px !important; box-shadow:none !important; outline:none !important;
  transition:border-color .25s ease, box-shadow .25s ease, background .25s ease; -webkit-appearance:none; appearance:none; }
body.sp-page .sp-form .forminator-textarea{ min-height:120px !important; resize:vertical; }
body.sp-page .sp-form .forminator-input::placeholder,
body.sp-page .sp-form .forminator-textarea::placeholder{ color:var(--sp-ph); opacity:1; }
body.sp-page .sp-form .forminator-input:hover,
body.sp-page .sp-form .forminator-textarea:hover,
body.sp-page .sp-form .select2-selection--single:hover{ border-color:var(--sp-line-h) !important; }
body.sp-page .sp-form .forminator-input:focus,
body.sp-page .sp-form .forminator-textarea:focus,
body.sp-page .sp-form .select2-container--open .select2-selection--single,
body.sp-page .sp-form .select2-container--focus .select2-selection--single{ background:#fff !important; border-color:var(--sp-green) !important; box-shadow:0 0 0 4px rgba(var(--sp-acc-rgb),.12) !important; }
body.sp-page .sp-form .forminator-input--wrap,
body.sp-page .sp-form .forminator-textarea--wrap{ position:relative; margin:0; padding:0; border:0; background:none; }
body.sp-page .sp-form .forminator-input--wrap::before,
body.sp-page .sp-form .forminator-input--wrap::after,
body.sp-page .sp-form .forminator-textarea--wrap::before,
body.sp-page .sp-form .forminator-textarea--wrap::after{ display:none !important; }
body.sp-page .sp-form .iti{ width:100%; }
body.sp-page .sp-form .iti input.forminator-input{ padding-left:56px !important; }
body.sp-page .sp-form .forminator-input-with-icon{ position:relative; }
body.sp-page .sp-form .forminator-input-with-icon > label{ position:absolute; z-index:2; left:16px; top:50%; transform:translateY(-50%); margin:0; line-height:1; color:var(--sp-green); pointer-events:none; }
body.sp-page .sp-form .forminator-input-with-icon .forminator-input{ padding-left:46px !important; }

/* select2 */
body.sp-page .sp-form .select2-container{ width:100% !important; display:block; }
body.sp-page .sp-form .select2-selection--single{ position:relative; display:flex; align-items:center; cursor:pointer; padding-right:44px !important; }
body.sp-page .sp-form .select2-selection__rendered{ padding:0 !important; line-height:1.4 !important; color:var(--sp-ink) !important; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
body.sp-page .sp-form .select2-selection__placeholder{ color:var(--sp-ph) !important; }
body.sp-page .sp-form .select2-selection__arrow{ position:absolute !important; right:14px; top:50% !important; transform:translateY(-50%); height:auto !important; width:auto !important; display:flex; color:var(--sp-grey); }
body.sp-page .sp-form .select2-selection__arrow b{ display:none; }
body.sp-page .select2-container--open .select2-dropdown,
body.sp-page .select2-container--open .forminator-select-dropdown{ display:block; margin-top:6px; overflow:hidden; border:1.5px solid var(--sp-line) !important; border-radius:14px !important; background:#fff !important; box-shadow:0 18px 40px rgba(20,30,15,.14) !important; font-family:"Montserrat",sans-serif; }
body.sp-page .select2-container--open .select2-dropdown--above,
body.sp-page .select2-container--open .forminator-select-dropdown--above{ margin-top:-6px; }
body.sp-page .select2-search--dropdown{ padding:10px !important; }
body.sp-page .select2-search--dropdown .select2-search__field{ width:100%; padding:10px 12px !important; border:1.5px solid var(--sp-line) !important; border-radius:10px !important; font:inherit; font-size:14px; outline:none; }
body.sp-page .select2-results__options{ max-height:260px; overflow-y:auto; margin:0; padding:4px 6px 8px !important; list-style:none; }
body.sp-page .select2-results__option{ padding:10px 12px !important; border-radius:10px; font-size:14px; color:var(--sp-ink) !important; background:none !important; cursor:pointer; }
body.sp-page .select2-results__option--highlighted,
body.sp-page .select2-results__option[aria-selected=true]:hover{ background:rgba(var(--sp-acc-rgb),.1) !important; color:var(--sp-green) !important; }
body.sp-page .select2-results__option[aria-selected=true],
body.sp-page .select2-results__option--selected{ font-weight:600; color:var(--sp-green) !important; }

/* radios as pills */
body.sp-page .sp-form .forminator-field[role=radiogroup]{ display:flex; flex-wrap:wrap; gap:10px; }
body.sp-page .sp-form .forminator-field[role=radiogroup] > .forminator-label,
body.sp-page .sp-form .forminator-field[role=radiogroup] > .forminator-description,
body.sp-page .sp-form .forminator-field[role=radiogroup] > .forminator-error-message{ flex-basis:100%; }
body.sp-page .sp-form .forminator-radio{ position:relative; display:inline-flex !important; align-items:center; gap:10px; margin:0 !important; padding:12px 20px 12px 16px !important; min-height:48px; border-radius:14px; cursor:pointer;
  background:var(--sp-field); border:1.5px solid var(--sp-line); font-size:14.5px; font-weight:600; color:var(--sp-text2); transition:all .25s ease; }
body.sp-page .sp-form .forminator-radio:hover{ border-color:var(--sp-line-h); }
body.sp-page .sp-form .forminator-radio input{ position:absolute !important; opacity:0 !important; width:1px !important; height:1px !important; margin:0 !important; pointer-events:none; }
body.sp-page .sp-form .forminator-radio-bullet{ position:relative !important; flex:none; width:18px !important; height:18px !important; margin:0 !important; border-radius:50% !important; border:2px solid var(--sp-line-s) !important; background:#fff !important; transition:all .25s ease; }
body.sp-page .sp-form .forminator-radio-bullet::before{ display:none !important; }
body.sp-page .sp-form .forminator-radio-label{ margin:0 !important; padding:0 !important; font-size:14.5px !important; font-weight:600 !important; color:inherit !important; line-height:1.3 !important; }
body.sp-page .sp-form .forminator-radio:has(input:checked){ border-color:var(--sp-green); background:rgba(var(--sp-acc-rgb),.08); color:var(--sp-green); }
body.sp-page .sp-form .forminator-radio:has(input:checked) .forminator-radio-bullet{ border-color:var(--sp-green) !important; box-shadow:inset 0 0 0 4px #fff; background:var(--sp-green) !important; }
body.sp-page .sp-form .forminator-radio:has(input:focus-visible){ box-shadow:0 0 0 4px rgba(var(--sp-acc-rgb),.18); }

/* checkboxes as tiles */
body.sp-page .sp-form .forminator-field[role=group]{ display:flex; flex-direction:column; gap:10px; height:100%; }
body.sp-page .sp-form .forminator-checkbox{ position:relative; display:flex !important; align-items:center; gap:12px; height:100%; min-height:54px; margin:0 !important; padding:13px 16px !important; border-radius:14px; cursor:pointer;
  background:var(--sp-field); border:1.5px solid var(--sp-line); transition:border-color .25s ease, background .25s ease, transform .25s var(--sp-ease); }
body.sp-page .sp-form .forminator-checkbox:hover{ border-color:var(--sp-line-h); transform:translateY(-1px); }
body.sp-page .sp-form .forminator-checkbox input{ position:absolute !important; opacity:0 !important; width:1px !important; height:1px !important; margin:0 !important; pointer-events:none; }
body.sp-page .sp-form .forminator-checkbox-box{ position:relative !important; flex:none; width:22px !important; height:22px !important; margin:0 !important; border-radius:7px !important; border:2px solid var(--sp-line-s) !important; background:#fff !important; transition:all .25s ease; }
body.sp-page .sp-form .forminator-checkbox-box::before{ content:"" !important; position:absolute; inset:3px; background:#fff; opacity:0; transform:scale(.4); transition:all .25s var(--sp-ease);
  -webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'><path d='M5 12.5l4.5 4.5L19 7.5'/></svg>") center/contain no-repeat;
          mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'><path d='M5 12.5l4.5 4.5L19 7.5'/></svg>") center/contain no-repeat; }
body.sp-page .sp-form .forminator-checkbox-label{ margin:0 !important; padding:0 !important; font-size:14px !important; font-weight:500 !important; line-height:1.4 !important; color:var(--sp-text2) !important; }
body.sp-page .sp-form .forminator-checkbox:has(input:checked){ border-color:var(--sp-green); background:rgba(var(--sp-acc-rgb),.07); }
body.sp-page .sp-form .forminator-checkbox:has(input:checked) .forminator-checkbox-box{ background:var(--sp-green) !important; border-color:var(--sp-green) !important; }
body.sp-page .sp-form .forminator-checkbox:has(input:checked) .forminator-checkbox-box::before{ opacity:1; transform:none; }
body.sp-page .sp-form .forminator-checkbox:has(input:checked) .forminator-checkbox-label{ color:var(--sp-ink) !important; font-weight:600 !important; }
body.sp-page .sp-form .forminator-checkbox:has(input:focus-visible){ box-shadow:0 0 0 4px rgba(var(--sp-acc-rgb),.18); }

/* signature */
body.sp-page .sp-form .forminator-field-signature .forminator-label{ top:auto !important; }
body.sp-page .sp-form .forminator-signature{ position:relative; overflow:hidden; padding:10px; border-radius:16px; border:1.5px dashed var(--sp-line-s); background:var(--sp-field); transition:border-color .25s ease; }
body.sp-page .sp-form .forminator-signature:hover{ border-color:var(--sp-green); }
body.sp-page .sp-form .forminator-signature--placeholder{ position:absolute !important; top:auto !important; bottom:14px; left:16px; z-index:0; font-size:12.5px; color:var(--sp-grey); pointer-events:none; }
body.sp-page .sp-form .forminator-signature canvas{ display:block; position:relative; z-index:1; }
body.sp-page .sp-form .forminator-signature img{ cursor:pointer; }

/* buttons */
body.sp-page .sp-form .forminator-pagination-footer{ display:flex !important; align-items:center; justify-content:space-between !important; gap:14px; margin-top:34px !important; padding-top:26px; border-top:1px solid var(--sp-line); }
body.sp-page .sp-form .forminator-pagination-footer .forminator-button-next,
body.sp-page .sp-form .forminator-pagination-footer .forminator-pagination-submit,
body.sp-page .sp-form .forminator-pagination-footer .forminator-button-submit{ margin-left:auto !important; }
body.sp-page .sp-form .forminator-button{ position:relative; overflow:hidden; display:inline-flex !important; align-items:center; justify-content:center; gap:10px; min-height:54px; margin:0 !important; padding:0 32px !important;
  font-family:"Montserrat",sans-serif !important; font-size:15px !important; font-weight:600 !important; letter-spacing:.01em; text-transform:none !important; line-height:1 !important; cursor:pointer;
  color:#fff !important; background:linear-gradient(90deg,var(--sp-green),var(--sp-green-d)) !important; border:0 !important; border-radius:999px !important; box-shadow:0 14px 30px rgba(var(--sp-acc-rgb),.28) !important;
  transition:transform .35s var(--sp-ease), box-shadow .35s var(--sp-ease); }
body.sp-page .sp-form .forminator-button::before{ content:""; position:absolute; top:0; bottom:0; left:-60%; width:40%; transform:skewX(-20deg); background:linear-gradient(90deg,transparent,rgba(255,255,255,.28),transparent); animation:spSweep 4.5s ease-in-out infinite; pointer-events:none; }
@keyframes spSweep{ 0%,65%{ left:-60%; } 100%{ left:130%; } }
body.sp-page .sp-form .forminator-button:hover{ transform:translateY(-2px); box-shadow:0 18px 36px rgba(var(--sp-acc-rgb),.36) !important; }
body.sp-page .sp-form .forminator-button--mask{ display:none !important; }
body.sp-page .sp-form .forminator-button--text{ position:relative; z-index:1; }
body.sp-page .sp-form .forminator-button-next::after,
body.sp-page .sp-form .forminator-button-submit::after,
body.sp-page .sp-form .forminator-pagination-submit::after{ content:"\2192"; position:relative; z-index:1; display:inline-block; transition:transform .35s var(--sp-ease); }
body.sp-page .sp-form .forminator-button:hover::after{ transform:translateX(4px); }
body.sp-page .sp-form .forminator-button-back{ color:var(--sp-ink) !important; background:#fff !important; border:1.5px solid var(--sp-line) !important; box-shadow:none !important; }
body.sp-page .sp-form .forminator-button-back::before{ content:"\2190"; position:static; width:auto; transform:none; background:none; animation:none; display:inline-block; transition:transform .35s var(--sp-ease); }
body.sp-page .sp-form .forminator-button-back:hover{ border-color:var(--sp-green) !important; box-shadow:none !important; }
body.sp-page .sp-form .forminator-button-back:hover::before{ transform:translateX(-4px); }
body.sp-page .sp-form .forminator-button:disabled{ opacity:.6; cursor:wait; }
body.sp-page .sp-form .forminator-button[style*="display: none"],
body.sp-page .sp-form .forminator-button[style*="display:none"]{ display:none !important; }

/* messages */
body.sp-page .sp-form .forminator-response-message:not(:empty){ margin:0 0 22px !important; padding:14px 18px !important; border-radius:14px; font-size:14px; line-height:1.5; border:1px solid transparent; }
body.sp-page .sp-form .forminator-response-message.forminator-error:not(:empty){ background:#FDF1EF; border-color:#F2C9C3; color:#8E2B20; }
body.sp-page .sp-form .forminator-response-message.forminator-success:not(:empty){ background:#EEF6E6; border-color:#C9E0B3; color:#2E5410; }
body.sp-page .sp-form .forminator-response-message p{ margin:0; }
body.sp-page .sp-form .forminator-error-message{ display:block; margin-top:6px; padding:0 !important; background:none !important; font-size:12.5px !important; font-weight:500; color:var(--sp-err) !important; }
body.sp-page .sp-form .forminator-has_error .forminator-input,
body.sp-page .sp-form .forminator-has_error .forminator-textarea,
body.sp-page .sp-form .forminator-has_error .select2-selection--single,
body.sp-page .sp-form .forminator-has_error .forminator-signature{ border-color:var(--sp-err) !important; }
body.sp-page .sp-form .forminator-has_error .forminator-checkbox,
body.sp-page .sp-form .forminator-has_error .forminator-radio{ border-color:#E8B4AC; }

/* datepicker */
body.sp-page .ui-datepicker{ display:none; z-index:100 !important; width:300px; padding:14px; margin-top:6px; background:#fff; border:1.5px solid var(--sp-line); border-radius:16px; box-shadow:0 18px 40px rgba(20,30,15,.14); font-family:"Montserrat",sans-serif; font-size:13px; }
body.sp-page .ui-datepicker-header{ position:relative; display:flex; align-items:center; justify-content:center; gap:6px; margin-bottom:10px; min-height:34px; }
body.sp-page .ui-datepicker-prev, body.sp-page .ui-datepicker-next{ position:absolute; top:0; width:34px; height:34px; border-radius:10px; display:grid; place-items:center; cursor:pointer; color:var(--sp-green); text-decoration:none; }
body.sp-page .ui-datepicker-prev{ left:0; } body.sp-page .ui-datepicker-next{ right:0; }
body.sp-page .ui-datepicker-prev:hover, body.sp-page .ui-datepicker-next:hover{ background:rgba(var(--sp-acc-rgb),.1); }
body.sp-page .ui-datepicker-prev span, body.sp-page .ui-datepicker-next span{ font-size:0; }
body.sp-page .ui-datepicker-prev::before{ content:"‹"; font-size:22px; } body.sp-page .ui-datepicker-next::before{ content:"›"; font-size:22px; }
body.sp-page .ui-datepicker-title{ display:flex; gap:6px; font-weight:600; }
body.sp-page .ui-datepicker-title select{ padding:4px 6px; border:1px solid var(--sp-line); border-radius:8px; font:inherit; }
body.sp-page .ui-datepicker-calendar{ width:100%; border-collapse:collapse; }
body.sp-page .ui-datepicker-calendar th{ padding:6px 0; font-size:11px; font-weight:600; color:var(--sp-grey); text-transform:uppercase; }
body.sp-page .ui-datepicker-calendar td{ padding:2px; text-align:center; }
body.sp-page .ui-datepicker-calendar td a, body.sp-page .ui-datepicker-calendar td span{ display:block; padding:7px 0; border-radius:9px; text-decoration:none; color:var(--sp-ink); }
body.sp-page .ui-datepicker-calendar td a:hover{ background:rgba(var(--sp-acc-rgb),.1); }
body.sp-page .ui-datepicker-calendar .ui-state-active, body.sp-page .ui-datepicker-calendar .ui-datepicker-current-day a{ background:var(--sp-green) !important; color:#fff !important; }
body.sp-page .ui-datepicker-calendar .ui-datepicker-today a{ box-shadow:inset 0 0 0 1.5px var(--sp-gold); }

/* reveal */
html.sp-js .sp-form .sp-rv{ opacity:0; transform:translateY(18px); }
html.sp-js .sp-form .sp-rv.sp-rv-in{ opacity:1; transform:none; transition:opacity .7s var(--sp-ease), transform .7s var(--sp-ease); transition-delay:var(--d,0s); }

/* progress line under the page top */
.sp-progress{ position:fixed; top:0; left:0; right:0; height:3px; z-index:50; pointer-events:none; }
.sp-progress span{ display:block; height:100%; width:100%; transform-origin:0 50%; transform:scaleX(var(--sp-scroll,0)); background:linear-gradient(90deg,var(--sp-gold),var(--sp-green)); }

/* footer */
.sp-ftr{ position:relative; overflow:hidden; color:rgba(255,255,255,.7); font-size:14px; border-top:1px solid rgba(255,255,255,.08);
  background:radial-gradient(50% 90% at 100% 0%,var(--sp-glow-1) 0%,transparent 60%),radial-gradient(45% 80% at 0% 100%,var(--sp-glow-2) 0%,transparent 62%),linear-gradient(160deg,var(--sp-hero-b),var(--sp-hero-a)); }
.sp-ftr > *{ position:relative; }
.sp-ftr__grid{ display:grid; grid-template-columns:1.5fr 1fr 1.2fr; gap:48px; padding-top:60px; padding-bottom:44px; }
.sp-ftr .sp-ftr__brand p{ margin:18px 0 0; max-width:360px; line-height:1.7; }
.sp-ftr__h{ margin:0 0 14px; font-family:"Syne",sans-serif; font-size:14px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; color:#fff; }
.sp-ftr a{ display:block; width:fit-content; margin-bottom:9px; text-decoration:none; color:rgba(255,255,255,.68); transition:color .25s ease; }
.sp-ftr a:hover{ color:var(--sp-gold-l); }
.sp-ftr__grid p{ margin:0 0 9px; line-height:1.6; }
.sp-ftr .sp-logo{ margin:0; }
.sp-ftr__bar{ border-top:1px solid rgba(255,255,255,.08); padding:20px 0; font-size:13px; }
.sp-ftr__bar .sp-wrap{ display:flex; justify-content:space-between; gap:12px; flex-wrap:wrap; }
.sp-ftr__bar a{ display:inline; margin:0; }

/* tablet */
@media (max-width:1024px){
  .sp-help__label{ display:none; }
  .sp-hero{ padding:140px 0 150px; }
  .sp-hero__grid{ grid-template-columns:1fr; gap:36px; }
  .sp-hero h1{ font-size:46px; }
  .sp-lede{ max-width:none; }
  .sp-card{ padding:34px 32px 36px; border-radius:24px; }
}

/* phone */
@media (max-width:767px){
  .sp-wrap{ padding:0 16px; }
  .sp-hdr{ padding:22px 0 14px; }
  body.sp-page .sp-logo img{ height:40px; }
  .sp-wordmark b{ font-size:16px; }
  .sp-help__label, .sp-help__btn span{ display:none; }
  .sp-help__btn{ width:42px; height:42px; padding:0; justify-content:center; }
  .sp-hero{ padding:118px 0 120px; }
  .sp-hero h1{ font-size:31px; margin:18px 0 14px; }
  .sp-lede{ font-size:14.5px; line-height:1.65; }
  .sp-eyebrow{ font-size:10.5px; letter-spacing:.12em; padding:7px 12px; }
  .sp-chips{ gap:8px; margin-top:22px; }
  .sp-chip{ font-size:12.5px; padding:9px 12px; border-radius:12px; }
  .sp-next{ padding:22px 20px; border-radius:20px; }
  .sp-next h2{ font-size:19px; }
  .sp-next p{ font-size:13px; }
  .sp-zone{ margin-top:-78px; padding-bottom:60px; }
  .sp-card{ padding:22px 18px 24px; border-radius:20px; }
  body.sp-page .sp-form .forminator-pagination-steps{ margin-bottom:24px; padding-bottom:20px; }
  body.sp-page .sp-form .forminator-step-label{ font-size:11px; }
  body.sp-page .sp-form .forminator-step-dot{ width:32px; height:32px; }
  body.sp-page .sp-form .forminator-pagination-steps::before,
  body.sp-page .sp-form .forminator-pagination-steps::after{ top:15px; }
  body.sp-page .sp-form .forminator-title{ font-size:19px !important; }
  body.sp-page .sp-form .forminator-subtitle{ font-size:14.5px !important; }
  body.sp-page .sp-form .forminator-merge-tags{ padding:14px 16px; font-size:13.5px; }
  body.sp-page .sp-form .forminator-radio{ flex:1 1 calc(50% - 5px); justify-content:flex-start; }
  body.sp-page .sp-form .forminator-pagination-footer{ flex-wrap:wrap; }
  body.sp-page .sp-form .forminator-pagination-footer .forminator-button:not(.forminator-hidden){ flex:1 1 auto; padding:0 20px !important; }
  .sp-ftr__grid{ grid-template-columns:1fr 1fr; gap:30px 20px; padding-top:44px; padding-bottom:32px; }
  .sp-ftr__brand{ grid-column:1 / -1; }
  .sp-ftr__bar .sp-wrap{ flex-direction:column; gap:6px; }
}

@media (prefers-reduced-motion:reduce){
  body.sp-page *, body.sp-page *::before, body.sp-page *::after{ animation:none !important; transition:none !important; }
  html.sp-js .sp-in, html.sp-js .sp-form .sp-rv{ opacity:1 !important; transform:none !important; }
}
.sp-help__btn,.sp-chip,.sp-next{ position:relative; background:linear-gradient(150deg,rgba(var(--sp-gl-rgb),.1) 0%,rgba(255,255,255,.03) 48%,rgba(var(--sp-g-rgb),.07) 100%); -webkit-backdrop-filter:blur(24px) saturate(175%) brightness(1.06); backdrop-filter:blur(24px) saturate(175%) brightness(1.06); border:0; }
.sp-help__btn{ box-shadow:0 10px 28px rgba(0,0,0,.16); }
.sp-help__btn:hover{ background:linear-gradient(150deg,rgba(var(--sp-gl-rgb),.2),rgba(255,255,255,.06) 60%); }
.sp-chip{ box-shadow:0 8px 24px rgba(0,0,0,.14); }
.sp-next{ box-shadow:0 30px 70px rgba(0,0,0,.28); }
.sp-next::before{ background:radial-gradient(90% 50% at 10% 0%,rgba(255,255,255,.1) 0%,rgba(255,255,255,0) 70%); }
.sp-eyebrow{ background:rgba(var(--sp-gl-rgb),.1); border:1px solid rgba(var(--sp-gl-rgb),.26); box-shadow:none; -webkit-backdrop-filter:blur(20px) saturate(170%); backdrop-filter:blur(20px) saturate(170%); }
.sp-card{ position:relative; background:linear-gradient(180deg,rgba(255,255,255,.74) 0%,rgba(255,255,255,.92) 160px,#fff 320px); -webkit-backdrop-filter:blur(40px) saturate(200%); backdrop-filter:blur(40px) saturate(200%); border:0; box-shadow:0 24px 60px rgba(20,30,15,.12), 0 2px 6px rgba(20,30,15,.04); }
.sp-help__btn::after,.sp-chip::after,.sp-next::after,.sp-card::after{ content:""; position:absolute; inset:0; border-radius:inherit; padding:1px; pointer-events:none; background:linear-gradient(140deg,rgba(255,255,255,.5) 0%,rgba(255,255,255,.12) 28%,rgba(255,255,255,0) 50%,rgba(255,255,255,.06) 72%,rgba(255,255,255,.28) 100%); -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0); -webkit-mask-composite:xor; mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0); }
.sp-card::after{ background:linear-gradient(180deg,rgba(255,255,255,.95),rgba(255,255,255,.4) 30%,rgba(0,0,0,.06) 100%); }