.ecu-form-shell{
    --ecu-accent:#2563eb;
    --ecu-form-background:transparent;
    --ecu-form-text:#172033;
    --ecu-label-color:#172033;
    --ecu-help-color:#64748b;
    --ecu-form-border-color:#dbe4ef;
    --ecu-form-border-width:0px;
    --ecu-form-radius:0px;
    --ecu-form-padding:0px;
    --ecu-form-max-width:100%;
    --ecu-field-bg:#fff;
    --ecu-field-text:#172033;
    --ecu-field-border:#cbd5e1;
    --ecu-field-border-width:1px;
    --ecu-placeholder-color:#64748b;
    --ecu-field-min-height:48px;
    --ecu-field-radius:9px;
    --ecu-button-bg:#2563eb;
    --ecu-button-text:#fff;
    --ecu-button-hover:#1d4ed8;
    --ecu-button-border:#2563eb;
    --ecu-button-border-width:0px;
    --ecu-button-radius:9px;
    --ecu-button-radius-top-left:9px;
    --ecu-button-radius-top-right:9px;
    --ecu-button-radius-bottom-right:9px;
    --ecu-button-radius-bottom-left:9px;
    --ecu-button-padding-x:28px;
    --ecu-button-padding-y:15px;
    position:relative;
    width:100%;
    max-width:var(--ecu-form-max-width);
    padding:var(--ecu-form-padding);
    border:var(--ecu-form-border-width) solid var(--ecu-form-border-color);
    border-radius:var(--ecu-form-radius);
    background:var(--ecu-form-background);
    color:var(--ecu-form-text);
    direction:inherit;
    text-align:start;
}
.ecu-form-shell *{box-sizing:border-box}
.ecu-align-start{margin-inline-end:auto}
.ecu-align-center{margin-inline:auto}
.ecu-align-end{margin-inline-start:auto}
.ecu-align-stretch{max-width:100%;margin-inline:0}
.ecu-shadow-none{box-shadow:none}
.ecu-shadow-soft{box-shadow:0 18px 45px rgba(15,23,42,.10)}
.ecu-shadow-strong{box-shadow:0 24px 70px rgba(15,23,42,.24)}
.ecu-dynamic-form{margin:0;color:inherit}
.ecu-fields-grid{display:flex;flex-wrap:wrap;margin:-10px}
.ecu-field{flex:0 0 var(--ecu-width,100%);max-width:var(--ecu-width,100%);padding:10px;position:relative;min-width:0}
.ecu-field[hidden],.ecu-condition-hidden{display:none!important}
.ecu-label{display:block;font-weight:650;margin:0 0 8px;color:var(--ecu-label-color);text-align:start}
.ecu-label span,.ecu-consent-choice b{color:#d63638}
.ecu-field input[type=text],
.ecu-field input[type=email],
.ecu-field input[type=tel],
.ecu-field input[type=url],
.ecu-field input[type=number],
.ecu-field input[type=date],
.ecu-field input[type=file],
.ecu-field select,
.ecu-field textarea{
    display:block;
    width:100%;
    min-height:var(--ecu-field-min-height);
    padding:11px 13px;
    border:var(--ecu-field-border-width) solid var(--ecu-field-border);
    border-radius:var(--ecu-field-radius);
    background:var(--ecu-field-bg);
    color:var(--ecu-field-text);
    font:inherit;
    line-height:1.45;
    text-align:start;
    direction:inherit;
    transition:border-color .18s,box-shadow .18s,background .18s,color .18s;
}
.ecu-field input::placeholder,.ecu-field textarea::placeholder{color:var(--ecu-placeholder-color);opacity:1}
.ecu-field textarea{min-height:130px;resize:vertical}
.ecu-field input:focus,.ecu-field select:focus,.ecu-field textarea:focus{
    outline:0;
    border-color:var(--ecu-accent);
    box-shadow:0 0 0 3px var(--ecu-accent)
}
.ecu-field input[type=file]{padding:9px;background:var(--ecu-field-bg)}
.ecu-help,.ecu-upload-limits{display:block;margin-top:7px;color:var(--ecu-help-color);font-size:.86em;line-height:1.5;text-align:start}
.ecu-field-error{display:block;min-height:0;margin-top:6px;color:#b42318;font-size:.86em;text-align:start}
.ecu-field-has-error input,.ecu-field-has-error select,.ecu-field-has-error textarea{border-color:#d63638!important;box-shadow:0 0 0 2px rgba(214,54,56,.12)!important}
.ecu-choices{display:flex;flex-wrap:wrap;gap:10px 18px;padding-top:4px}
.ecu-choice{display:flex;align-items:flex-start;gap:9px;cursor:pointer;line-height:1.45;color:var(--ecu-form-text);text-align:start}
.ecu-choice input{margin-top:.2em;flex:0 0 auto}
.ecu-consent-choice{padding:14px 15px;border:var(--ecu-field-border-width) solid var(--ecu-field-border);border-radius:var(--ecu-field-radius);background:var(--ecu-field-bg);color:var(--ecu-field-text)}
.ecu-html-content{padding:5px 0;color:var(--ecu-form-text)}
.ecu-html-content>:first-child{margin-top:0}.ecu-html-content>:last-child{margin-bottom:0}
.ecu-character-count{text-align:end;margin-top:5px;color:var(--ecu-help-color);font-size:.82em}
.ecu-submit-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:15px}
.ecu-submit-meta{margin-top:8px}
.ecu-submit-button{
    appearance:none;
    border:var(--ecu-button-border-width) solid var(--ecu-button-border);
    border-radius:var(--ecu-button-radius-top-left) var(--ecu-button-radius-top-right) var(--ecu-button-radius-bottom-right) var(--ecu-button-radius-bottom-left);
    background:var(--ecu-button-bg);
    color:var(--ecu-button-text);
    font:inherit;
    font-weight:700;
    line-height:1;
    padding:var(--ecu-button-padding-y) var(--ecu-button-padding-x);
    min-width:140px;
    min-height:var(--ecu-field-min-height);
    cursor:pointer;
    box-shadow:0 8px 20px rgba(15,23,42,.14);
    transition:transform .15s,background .15s,opacity .15s,border-color .15s;
    white-space:nowrap;
}
.ecu-submit-button:hover,.ecu-submit-button:focus-visible{background:var(--ecu-button-hover);transform:translateY(-1px)}
.ecu-submit-button:focus-visible{outline:3px solid var(--ecu-accent);outline-offset:2px}
.ecu-submit-button:disabled{opacity:.65;cursor:wait;transform:none}
.ecu-button-width-full .ecu-submit-row,.ecu-button-width-full .ecu-submit-button{width:100%}
.ecu-button-spinner{display:none;width:16px;height:16px;border:2px solid rgba(255,255,255,.45);border-top-color:currentColor;border-radius:50%;margin-inline-start:8px;vertical-align:middle;animation:ecu-spin .7s linear infinite}
.ecu-submit-button.is-loading .ecu-button-spinner{display:inline-block}
.ecu-alert{margin:0 0 18px;padding:13px 15px;border-radius:max(8px,var(--ecu-field-radius));border:1px solid transparent;font-weight:600;text-align:start}
.ecu-alert-success{background:#ecfdf3;border-color:#a6f4c5;color:#067647}
.ecu-alert-error{background:#fef3f2;border-color:#fecdca;color:#b42318}
.ecu-reference{color:var(--ecu-help-color);font-size:.9em}
.ecu-honeypot{position:absolute!important;inset-inline-start:-10000px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important}
.ecu-admin-only-note{padding:12px;border:1px dashed #cbd5e1;background:#f8fafc}
.ecu-visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

/* File selection */
.ecu-file-picker{width:100%}
.ecu-file-trigger{display:flex;align-items:center;gap:12px;width:100%;min-height:var(--ecu-field-min-height);padding:8px;border:var(--ecu-field-border-width) solid var(--ecu-field-border);border-radius:var(--ecu-field-radius);background:var(--ecu-field-bg);cursor:pointer;transition:border-color .18s,box-shadow .18s,background .18s;color:var(--ecu-field-text)}
.ecu-file-trigger:hover,.ecu-file-trigger:focus-within{border-color:var(--ecu-accent);box-shadow:0 0 0 3px var(--ecu-accent)}
.ecu-file-trigger-button{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;min-height:34px;padding:8px 13px;border-radius:max(6px,calc(var(--ecu-field-radius) - 3px));background:var(--ecu-button-bg);color:var(--ecu-button-text);font-size:.92em;font-weight:700}
.ecu-file-trigger-status{min-width:0;color:var(--ecu-help-color);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ecu-selected-files{display:grid;gap:8px;margin-top:10px}
.ecu-selected-file{display:flex;align-items:center;gap:12px;padding:10px 12px;border:var(--ecu-field-border-width) solid var(--ecu-field-border);border-radius:var(--ecu-field-radius);background:var(--ecu-field-bg);color:var(--ecu-field-text)}
.ecu-selected-file-details{min-width:0;flex:1}
.ecu-selected-file-name{display:block;color:var(--ecu-field-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ecu-selected-file-size{display:block;margin-top:2px;color:var(--ecu-help-color);font-size:.8em}
.ecu-selected-file-remove{appearance:none;border:1px solid #f0b4b4;border-radius:7px;background:#fff5f5;color:#b42318;padding:6px 9px;font:inherit;font-size:.82em;font-weight:700;cursor:pointer}
.ecu-selected-file-remove:hover{background:#fee2e2}
.ecu-field-has-error .ecu-file-trigger{border-color:#d63638!important;box-shadow:0 0 0 2px rgba(214,54,56,.12)!important}

/* Outside button layouts. Start/end are logical and mirror in RTL. */
.ecu-layout-outside-end .ecu-dynamic-form,.ecu-layout-outside-start .ecu-dynamic-form{display:flex;align-items:flex-start;gap:12px;flex-wrap:wrap}
.ecu-layout-outside-end .ecu-alert,.ecu-layout-outside-start .ecu-alert{flex:0 0 100%;width:100%;margin-bottom:4px}
.ecu-layout-outside-end .ecu-fields-grid,.ecu-layout-outside-start .ecu-fields-grid{flex:1 1 280px;margin:0;min-width:0}
.ecu-layout-outside-end .ecu-field,.ecu-layout-outside-start .ecu-field{flex:0 0 100%!important;max-width:100%!important;padding:0}
.ecu-layout-outside-end .ecu-submit-row,.ecu-layout-outside-start .ecu-submit-row{flex:0 0 auto;margin:0}
.ecu-layout-outside-end .ecu-fields-grid{order:1}.ecu-layout-outside-end .ecu-submit-row{order:2}
.ecu-layout-outside-start .ecu-fields-grid{order:2}.ecu-layout-outside-start .ecu-submit-row{order:1}
.ecu-layout-outside-end .ecu-reference,.ecu-layout-outside-start .ecu-reference{flex-basis:100%}
.ecu-layout-outside-end .ecu-field-error,.ecu-layout-outside-start .ecu-field-error{position:absolute;top:100%;inset-inline-start:0}
.ecu-layout-outside-end .ecu-dynamic-form,.ecu-layout-outside-start .ecu-dynamic-form{padding-bottom:22px}

/* Joined inside-field layouts: input and button render as one compound control.
 * Start/end are logical positions and mirror automatically in RTL. */
.ecu-layout-inside-end .ecu-fields-grid,.ecu-layout-inside-start .ecu-fields-grid{margin:0}
.ecu-layout-inside-end .ecu-field,.ecu-layout-inside-start .ecu-field{flex:0 0 100%!important;max-width:100%!important;padding:0}
.ecu-embedded-control{
    position:relative;
    display:grid;
    width:100%;
    min-width:0;
    min-height:var(--ecu-field-min-height);
    padding:0;
    background:transparent;
    isolation:isolate;
    direction:ltr!important;
}
.ecu-control-slot{display:block;min-width:0;width:100%}
.ecu-embedded-control .ecu-control-slot input{
    display:block;
    width:100%;
    height:100%;
    min-height:var(--ecu-field-min-height);
    margin:0!important;
    padding:11px 16px!important;
    border:var(--ecu-field-border-width) solid var(--ecu-field-border)!important;
    background:var(--ecu-field-bg)!important;
    color:var(--ecu-field-text)!important;
    box-shadow:none!important;
    line-height:1.45!important;
}
.ecu-embedded-control:focus-within{
    border-radius:max(var(--ecu-field-radius),var(--ecu-button-radius-top-left),var(--ecu-button-radius-top-right),var(--ecu-button-radius-bottom-right),var(--ecu-button-radius-bottom-left));
    box-shadow:0 0 0 3px var(--ecu-accent);
}
.ecu-embedded-control .ecu-control-slot input:focus{outline:0!important;box-shadow:none!important}
.ecu-embedded-control .ecu-submit-button{
    position:static!important;
    inset:auto!important;
    align-self:stretch;
    width:auto!important;
    max-width:none!important;
    min-width:110px;
    min-height:var(--ecu-field-min-height)!important;
    height:auto!important;
    margin:0!important;
    padding:var(--ecu-button-padding-y) var(--ecu-button-padding-x)!important;
    z-index:2;
    box-shadow:none!important;
    transform:none!important;
    overflow:hidden;
    text-overflow:ellipsis;
}
.ecu-embedded-control .ecu-submit-button:hover,.ecu-embedded-control .ecu-submit-button:focus-visible{transform:none!important}
.ecu-form-shell[dir="rtl"] .ecu-embedded-control .ecu-submit-button,.ecu-form-shell.ecu-direction-rtl .ecu-embedded-control .ecu-submit-button{direction:rtl!important}

/* Button on the physical right: logical end in LTR, logical start in RTL. */
.ecu-form-shell[dir="ltr"] .ecu-embedded-end,
.ecu-form-shell.ecu-direction-ltr .ecu-embedded-end,
.ecu-form-shell[dir="rtl"] .ecu-embedded-start,
.ecu-form-shell.ecu-direction-rtl .ecu-embedded-start{
    grid-template-columns:minmax(0,1fr) auto;
}
.ecu-form-shell[dir="ltr"] .ecu-embedded-end .ecu-control-slot,
.ecu-form-shell.ecu-direction-ltr .ecu-embedded-end .ecu-control-slot,
.ecu-form-shell[dir="rtl"] .ecu-embedded-start .ecu-control-slot,
.ecu-form-shell.ecu-direction-rtl .ecu-embedded-start .ecu-control-slot{grid-column:1;grid-row:1}
.ecu-form-shell[dir="ltr"] .ecu-embedded-end .ecu-submit-button,
.ecu-form-shell.ecu-direction-ltr .ecu-embedded-end .ecu-submit-button,
.ecu-form-shell[dir="rtl"] .ecu-embedded-start .ecu-submit-button,
.ecu-form-shell.ecu-direction-rtl .ecu-embedded-start .ecu-submit-button{
    grid-column:2;grid-row:1;
    margin-inline-start:calc(-1 * var(--ecu-field-border-width))!important;
    border-radius:0 var(--ecu-button-radius-top-right) var(--ecu-button-radius-bottom-right) 0!important;
}
.ecu-form-shell[dir="ltr"] .ecu-embedded-end .ecu-control-slot input,
.ecu-form-shell.ecu-direction-ltr .ecu-embedded-end .ecu-control-slot input,
.ecu-form-shell[dir="rtl"] .ecu-embedded-start .ecu-control-slot input,
.ecu-form-shell.ecu-direction-rtl .ecu-embedded-start .ecu-control-slot input{
    border-radius:var(--ecu-field-radius) 0 0 var(--ecu-field-radius)!important;
}

/* Button on the physical left: logical start in LTR, logical end in RTL. */
.ecu-form-shell[dir="ltr"] .ecu-embedded-start,
.ecu-form-shell.ecu-direction-ltr .ecu-embedded-start,
.ecu-form-shell[dir="rtl"] .ecu-embedded-end,
.ecu-form-shell.ecu-direction-rtl .ecu-embedded-end{
    grid-template-columns:auto minmax(0,1fr);
}
.ecu-form-shell[dir="ltr"] .ecu-embedded-start .ecu-submit-button,
.ecu-form-shell.ecu-direction-ltr .ecu-embedded-start .ecu-submit-button,
.ecu-form-shell[dir="rtl"] .ecu-embedded-end .ecu-submit-button,
.ecu-form-shell.ecu-direction-rtl .ecu-embedded-end .ecu-submit-button{
    grid-column:1;grid-row:1;
    margin-inline-end:calc(-1 * var(--ecu-field-border-width))!important;
    border-radius:var(--ecu-button-radius-top-left) 0 0 var(--ecu-button-radius-bottom-left)!important;
}
.ecu-form-shell[dir="ltr"] .ecu-embedded-start .ecu-control-slot,
.ecu-form-shell.ecu-direction-ltr .ecu-embedded-start .ecu-control-slot,
.ecu-form-shell[dir="rtl"] .ecu-embedded-end .ecu-control-slot,
.ecu-form-shell.ecu-direction-rtl .ecu-embedded-end .ecu-control-slot{grid-column:2;grid-row:1}
.ecu-form-shell[dir="ltr"] .ecu-embedded-start .ecu-control-slot input,
.ecu-form-shell.ecu-direction-ltr .ecu-embedded-start .ecu-control-slot input,
.ecu-form-shell[dir="rtl"] .ecu-embedded-end .ecu-control-slot input,
.ecu-form-shell.ecu-direction-rtl .ecu-embedded-end .ecu-control-slot input{
    border-radius:0 var(--ecu-field-radius) var(--ecu-field-radius) 0!important;
}

.ecu-layout-inside-end .ecu-field-error,.ecu-layout-inside-start .ecu-field-error{margin-top:7px}
.ecu-layout-inside-end .ecu-submit-meta,.ecu-layout-inside-start .ecu-submit-meta{margin-top:0;height:0;overflow:visible}
.ecu-layout-inside-end.ecu-button-width-full .ecu-submit-button,.ecu-layout-inside-start.ecu-button-width-full .ecu-submit-button{width:auto!important}
/* Compact newsletter alerts are fixed toasts: feedback never changes field/button dimensions. */
.ecu-alert.ecu-alert-toast{position:fixed!important;z-index:999999!important;inset-block-start:clamp(20px,5vh,60px)!important;inset-inline-start:50%!important;width:min(720px,calc(100vw - 32px))!important;max-width:calc(100vw - 32px)!important;margin:0!important;transform:translateX(-50%)!important;box-shadow:0 18px 48px rgba(15,23,42,.22)!important}

@keyframes ecu-spin{to{transform:rotate(360deg)}}
@media(max-width:720px){
    .ecu-fields-grid{margin:-7px}
    .ecu-field{flex-basis:100%!important;max-width:100%!important;padding:7px}
    .ecu-submit-button{width:100%}
    .ecu-submit-row{align-items:stretch}
    .ecu-reference{text-align:center}
    .ecu-layout-outside-end .ecu-fields-grid,.ecu-layout-outside-start .ecu-fields-grid,.ecu-layout-outside-end .ecu-submit-row,.ecu-layout-outside-start .ecu-submit-row{flex:0 0 100%;width:100%;order:initial}
    .ecu-layout-outside-end .ecu-submit-button,.ecu-layout-outside-start .ecu-submit-button{width:100%}
    .ecu-layout-inside-end .ecu-submit-button,.ecu-layout-inside-start .ecu-submit-button{width:auto!important;max-width:52vw!important;min-width:96px;padding-inline:max(14px,var(--ecu-button-padding-x))!important}
    .ecu-file-trigger{align-items:flex-start;flex-direction:column}
    .ecu-file-trigger-status{white-space:normal}
}
@media(max-width:420px){
    .ecu-embedded-control{padding:0}
    .ecu-layout-inside-end .ecu-submit-button,.ecu-layout-inside-start .ecu-submit-button{max-width:48vw!important;min-width:88px;padding-inline:12px!important;font-size:.92em}
    .ecu-embedded-control .ecu-control-slot input{padding-inline-start:12px!important;padding-inline-end:12px!important}
}
@media(prefers-reduced-motion:reduce){.ecu-submit-button,.ecu-field input,.ecu-field select,.ecu-field textarea,.ecu-file-trigger,.ecu-embedded-control{transition:none}.ecu-button-spinner{animation-duration:1.4s}}

/* Color and dimension hardening against aggressive theme/page-builder CSS. */
.ecu-form-shell .ecu-field input[type=text],
.ecu-form-shell .ecu-field input[type=email],
.ecu-form-shell .ecu-field input[type=tel],
.ecu-form-shell .ecu-field input[type=url],
.ecu-form-shell .ecu-field input[type=number],
.ecu-form-shell .ecu-field input[type=date],
.ecu-form-shell .ecu-field input[type=file],
.ecu-form-shell .ecu-field select,
.ecu-form-shell .ecu-field textarea{
    background-color:var(--ecu-field-bg)!important;
    color:var(--ecu-field-text)!important;
    border-color:var(--ecu-field-border)!important;
    border-width:var(--ecu-field-border-width)!important;
    border-style:solid!important;
}
.ecu-form-shell .ecu-field input::placeholder,
.ecu-form-shell .ecu-field textarea::placeholder{color:var(--ecu-placeholder-color)!important;opacity:1!important}
.ecu-form-shell .ecu-submit-button{
    background-color:var(--ecu-button-bg)!important;
    color:var(--ecu-button-text)!important;
    border-color:var(--ecu-button-border)!important;
    border-width:var(--ecu-button-border-width)!important;
    border-style:solid!important;
    padding:var(--ecu-button-padding-y) var(--ecu-button-padding-x)!important;
}
.ecu-form-shell .ecu-submit-button:hover,
.ecu-form-shell .ecu-submit-button:focus-visible{background-color:var(--ecu-button-hover)!important;color:var(--ecu-button-text)!important}

/* Presentation hardening for themes and page builders. */
.ecu-form-shell.ecu-direction-rtl,.ecu-form-shell[dir="rtl"]{direction:rtl!important;text-align:right!important}
.ecu-form-shell.ecu-direction-ltr,.ecu-form-shell[dir="ltr"]{direction:ltr!important;text-align:left!important}
.ecu-form-shell.ecu-direction-rtl .ecu-field input,.ecu-form-shell.ecu-direction-rtl .ecu-field select,.ecu-form-shell.ecu-direction-rtl .ecu-field textarea,.ecu-form-shell[dir="rtl"] .ecu-field input,.ecu-form-shell[dir="rtl"] .ecu-field select,.ecu-form-shell[dir="rtl"] .ecu-field textarea{direction:rtl!important;text-align:right!important}
.ecu-form-shell.ecu-direction-ltr .ecu-field input,.ecu-form-shell.ecu-direction-ltr .ecu-field select,.ecu-form-shell.ecu-direction-ltr .ecu-field textarea,.ecu-form-shell[dir="ltr"] .ecu-field input,.ecu-form-shell[dir="ltr"] .ecu-field select,.ecu-form-shell[dir="ltr"] .ecu-field textarea{direction:ltr!important;text-align:left!important}
.ecu-form-shell.ecu-align-start{width:100%!important;margin-inline-start:0!important;margin-inline-end:auto!important}
.ecu-form-shell.ecu-align-center{width:100%!important;margin-inline:auto!important}
.ecu-form-shell.ecu-align-end{width:100%!important;margin-inline-start:auto!important;margin-inline-end:0!important}
.ecu-form-shell.ecu-align-stretch{width:100%!important;max-width:100%!important;margin-inline:0!important}
.ecu-form-shell.ecu-layout-outside-end .ecu-dynamic-form,.ecu-form-shell.ecu-layout-outside-start .ecu-dynamic-form{display:flex!important;align-items:flex-start!important;flex-wrap:wrap!important}
.ecu-form-shell.ecu-layout-outside-end .ecu-fields-grid,.ecu-form-shell.ecu-layout-outside-start .ecu-fields-grid{display:flex!important;flex:1 1 280px!important}
.ecu-form-shell.ecu-layout-outside-end .ecu-submit-row,.ecu-form-shell.ecu-layout-outside-start .ecu-submit-row{display:flex!important;flex:0 0 auto!important}
.ecu-form-shell.ecu-layout-inside-end .ecu-embedded-control,.ecu-form-shell.ecu-layout-inside-start .ecu-embedded-control{display:grid!important;width:100%!important}

.ecu-form-shell .ecu-submit-button{border-radius:var(--ecu-button-radius-top-left) var(--ecu-button-radius-top-right) var(--ecu-button-radius-bottom-right) var(--ecu-button-radius-bottom-left)!important}


/* Pro multi-step forms and image upload previews */
.ecu-step-hidden{display:none!important}
.ecu-step-marker{flex:0 0 100%!important;max-width:100%!important;padding-top:18px;padding-bottom:6px}
.ecu-step-heading{padding:18px 20px;border:1px solid var(--ecu-form-border-color);border-radius:max(12px,var(--ecu-field-radius));background:#f8fafc;background:color-mix(in srgb,var(--ecu-field-bg) 86%,var(--ecu-accent) 14%);text-align:start}
.ecu-step-kicker{display:block;margin-bottom:5px;color:var(--ecu-accent);font-size:.75em;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.ecu-step-heading h3{margin:0;color:var(--ecu-field-text);font-size:clamp(1.15rem,2vw,1.45rem);line-height:1.25;outline:0}
.ecu-step-heading p{margin:7px 0 0;color:var(--ecu-field-text);opacity:.72;font-size:.92em;line-height:1.55}
.ecu-step-progress{margin:0 0 18px;padding:18px 20px;border:1px solid var(--ecu-form-border-color);border-radius:max(14px,var(--ecu-field-radius));background:var(--ecu-field-bg);box-shadow:0 8px 24px rgba(15,23,42,.05)}
.ecu-step-progress-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:11px}
.ecu-step-status{color:var(--ecu-accent);font-size:.78em;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.ecu-step-current-title{color:var(--ecu-field-text);font-size:.92em;text-align:end}
.ecu-step-track{height:6px;overflow:hidden;border-radius:999px;background:#e2e8f0;background:color-mix(in srgb,var(--ecu-field-border) 60%,transparent)}
.ecu-step-track-fill{display:block;height:100%;width:0;border-radius:inherit;background:var(--ecu-button-bg);transition:width .25s ease}
.ecu-step-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(86px,1fr));gap:8px;margin:13px 0 0;padding:0;list-style:none}
.ecu-step-list li{display:flex;align-items:center;gap:7px;min-width:0;color:var(--ecu-field-text);opacity:.65}
.ecu-step-list li>span{display:inline-flex;align-items:center;justify-content:center;flex:0 0 24px;width:24px;height:24px;border:1px solid var(--ecu-field-border);border-radius:999px;background:var(--ecu-field-bg);font-size:.74em;font-weight:800}
.ecu-step-list li small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.76em}
.ecu-step-list li.is-current{color:var(--ecu-field-text);font-weight:700;opacity:1}.ecu-step-list li.is-complete{opacity:.9}
.ecu-step-list li.is-current>span,.ecu-step-list li.is-complete>span{border-color:var(--ecu-button-bg);background:var(--ecu-button-bg);color:var(--ecu-button-text)}
.ecu-step-navigation{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:20px}
.ecu-step-button{appearance:none;min-height:var(--ecu-field-min-height);padding:11px 20px;border:1px solid var(--ecu-field-border);border-radius:var(--ecu-button-radius);background:var(--ecu-field-bg);color:var(--ecu-field-text);font:inherit;font-weight:750;cursor:pointer;transition:transform .15s,border-color .15s,box-shadow .15s,background .15s}
.ecu-step-button:hover,.ecu-step-button:focus-visible{border-color:var(--ecu-accent);box-shadow:0 0 0 3px rgba(37,99,235,.16);box-shadow:0 0 0 3px color-mix(in srgb,var(--ecu-accent) 18%,transparent);outline:0;transform:translateY(-1px)}
.ecu-step-next{margin-inline-start:auto;border-color:var(--ecu-button-border);background:var(--ecu-button-bg);color:var(--ecu-button-text)}
.ecu-step-next:hover,.ecu-step-next:focus-visible{background:var(--ecu-button-hover);color:var(--ecu-button-text)}
.ecu-dynamic-form.ecu-multistep-ready{display:block!important;padding-bottom:0!important}
.ecu-dynamic-form.ecu-multistep-ready .ecu-fields-grid{width:auto!important;min-width:0!important;margin:-10px!important}
.ecu-form-shell .ecu-dynamic-form.ecu-multistep-ready .ecu-field{flex:0 0 var(--ecu-width,100%)!important;max-width:var(--ecu-width,100%)!important;padding:10px!important}
.ecu-form-shell .ecu-dynamic-form.ecu-multistep-ready .ecu-step-marker{flex-basis:100%!important;max-width:100%!important}
.ecu-dynamic-form.ecu-multistep-ready .ecu-submit-row{margin-top:20px!important}
.ecu-selected-image{align-items:center}
.ecu-selected-image-preview{display:block;flex:0 0 72px;width:72px;height:72px;object-fit:cover;border:1px solid var(--ecu-field-border);border-radius:max(9px,var(--ecu-field-radius));background:#f8fafc}

@media(max-width:720px){
    .ecu-dynamic-form.ecu-multistep-ready .ecu-fields-grid{margin:-7px!important}
    .ecu-form-shell .ecu-dynamic-form.ecu-multistep-ready .ecu-field{flex:0 0 100%!important;max-width:100%!important;padding:7px!important}
}

@media(max-width:640px){
    .ecu-step-progress{padding:15px}
    .ecu-step-progress-head{display:block}
    .ecu-step-current-title{display:block;margin-top:4px;text-align:start}
    .ecu-step-list{grid-template-columns:repeat(auto-fit,minmax(34px,1fr));gap:5px}
    .ecu-step-list li{justify-content:center}
    .ecu-step-list li small{display:none}
    .ecu-step-navigation{align-items:stretch}
    .ecu-step-button{flex:1;padding-inline:12px}
    .ecu-selected-image-preview{flex-basis:60px;width:60px;height:60px}
}
