.elementor-736 .elementor-element.elementor-element-5e4977c{--display:flex;}.elementor-widget-form .elementor-field-group > label, .elementor-widget-form .elementor-field-subgroup label{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group > label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-field-type-html{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-field-group .elementor-field{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group .elementor-field, .elementor-widget-form .elementor-field-subgroup label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-button{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-form .e-form__buttons__wrapper__button-next{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-button[type="submit"]{background-color:var( --e-global-color-accent );}.elementor-widget-form .e-form__buttons__wrapper__button-previous{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-message{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .e-form__indicators__indicator, .elementor-widget-form .e-form__indicators__indicator__label{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-form{--e-form-steps-indicator-inactive-primary-color:var( --e-global-color-text );--e-form-steps-indicator-active-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-completed-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-background-color:var( --e-global-color-text );--e-form-steps-indicator-progress-meter-color:var( --e-global-color-text );}.elementor-widget-form .e-form__indicators__indicator__progress__meter{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-736 .elementor-element.elementor-element-145b7c0{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;--e-form-steps-indicators-spacing:20px;--e-form-steps-indicator-padding:30px;--e-form-steps-indicator-inactive-secondary-color:#ffffff;--e-form-steps-indicator-active-secondary-color:#ffffff;--e-form-steps-indicator-completed-secondary-color:#ffffff;--e-form-steps-divider-width:1px;--e-form-steps-divider-gap:10px;}.elementor-736 .elementor-element.elementor-element-145b7c0 .elementor-field-group{padding-right:calc( 10px/2 );padding-left:calc( 10px/2 );margin-bottom:10px;}.elementor-736 .elementor-element.elementor-element-145b7c0 .elementor-form-fields-wrapper{margin-left:calc( -10px/2 );margin-right:calc( -10px/2 );margin-bottom:-10px;}.elementor-736 .elementor-element.elementor-element-145b7c0 .elementor-field-group.recaptcha_v3-bottomleft, .elementor-736 .elementor-element.elementor-element-145b7c0 .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-736 .elementor-element.elementor-element-145b7c0 .elementor-labels-inline .elementor-field-group > label{padding-left:0px;}body:not(.rtl) .elementor-736 .elementor-element.elementor-element-145b7c0 .elementor-labels-inline .elementor-field-group > label{padding-right:0px;}body .elementor-736 .elementor-element.elementor-element-145b7c0 .elementor-labels-above .elementor-field-group > label{padding-bottom:0px;}.elementor-736 .elementor-element.elementor-element-145b7c0 .elementor-field-group > label, .elementor-736 .elementor-element.elementor-element-145b7c0 .elementor-field-subgroup label{color:#111111;}.elementor-736 .elementor-element.elementor-element-145b7c0 .elementor-field-group > label{font-family:"Roboto", Sans-serif;font-size:1.1rem;font-weight:700;}.elementor-736 .elementor-element.elementor-element-145b7c0 .elementor-field-type-html{padding-bottom:0px;color:#222222;}.elementor-736 .elementor-element.elementor-element-145b7c0 .elementor-field-group .elementor-field{color:#1B1B1B;}.elementor-736 .elementor-element.elementor-element-145b7c0 .elementor-field-group .elementor-field, .elementor-736 .elementor-element.elementor-element-145b7c0 .elementor-field-subgroup label{font-family:"Roboto", Sans-serif;font-size:1rem;font-weight:400;}.elementor-736 .elementor-element.elementor-element-145b7c0 .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#ffffff;border-color:#146EF5;border-width:1px 1px 1px 1px;border-radius:20px 20px 20px 20px;}.elementor-736 .elementor-element.elementor-element-145b7c0 .elementor-field-group .elementor-select-wrapper select{background-color:#ffffff;border-color:#146EF5;border-width:1px 1px 1px 1px;border-radius:20px 20px 20px 20px;}.elementor-736 .elementor-element.elementor-element-145b7c0 .elementor-field-group .elementor-select-wrapper::before{color:#146EF5;}.elementor-736 .elementor-element.elementor-element-145b7c0 .e-form__buttons__wrapper__button-next{background-color:#0B56C8;color:#ffffff;}.elementor-736 .elementor-element.elementor-element-145b7c0 .elementor-button[type="submit"]{background-color:#0B56C8;color:#ffffff;}.elementor-736 .elementor-element.elementor-element-145b7c0 .elementor-button[type="submit"] svg *{fill:#ffffff;}.elementor-736 .elementor-element.elementor-element-145b7c0 .e-form__buttons__wrapper__button-previous{color:#ffffff;}.elementor-736 .elementor-element.elementor-element-145b7c0 .e-form__buttons__wrapper__button-next:hover{color:#ffffff;}.elementor-736 .elementor-element.elementor-element-145b7c0 .elementor-button[type="submit"]:hover{color:#ffffff;}.elementor-736 .elementor-element.elementor-element-145b7c0 .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-736 .elementor-element.elementor-element-145b7c0 .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}.elementor-736 .elementor-element.elementor-element-145b7c0 .elementor-button{border-radius:20px 20px 20px 20px;}/* Start custom CSS for form, class: .elementor-element-145b7c0 *//* =========================================================
MYCITYGOV — FORM CARD
Styles the card and the native Elementor Pro Form inside it.

Self-contained: tokens are declared on .mcgc-form-card, so this
works whether or not #mcgc-contact is an ancestor. Safe to drop
into the child theme stylesheet, Elementor > Site Settings >
Custom CSS, or the Form widget's Advanced > Custom CSS.

Selectors run 4 classes deep to outrank Elementor's own widget
CSS without needing !important. Leave the Form widget's Style
tab at defaults so this stays the only source of truth.
========================================================= */

.mcgc-form-card{
    --mcgc-navy:#071a32;
    --mcgc-blue:#146ef5;
    --mcgc-blue-dark:#0b56c8;
    --mcgc-ink:#102036;
    --mcgc-muted:#5f6e80;
    --mcgc-label:#34465c;
    --mcgc-line:#dce5ef;
    --mcgc-field-line:#ccd9e6;
    --mcgc-placeholder:#9aa8b8;
    --mcgc-error:#b13c2e;
    --mcgc-gap:17px;

    padding:36px;
    border:1px solid var(--mcgc-line);
    border-radius:23px;
    background:#fff;
    box-shadow:0 16px 45px rgba(7,26,50,.08);
}

.mcgc-form-card *,
.mcgc-form-card *::before,
.mcgc-form-card *::after{
    box-sizing:border-box;
}


/* ---------------------------------------------------------
CARD HEADER
--------------------------------------------------------- */

.mcgc-form-card h2{
    margin:0 0 7px;
    color:var(--mcgc-navy);
    font-size:28px;
    line-height:1.15;
    letter-spacing:-.03em;
}

.mcgc-form-card > p{
    margin:0 0 26px;
    color:var(--mcgc-muted);
    font-size:14px;
    line-height:1.6;
}

.mcgc-form-card .mcgc-form-note{
    margin:17px 0 0;
    color:#76869a;
    font-size:12px;
    line-height:1.6;
}


/* ---------------------------------------------------------
FIELD LAYOUT
Replaces Elementor's negative-margin gutter with flex + gap,
so widths must subtract half the gap to avoid overflow.
--------------------------------------------------------- */

.mcgc-form-card .elementor-widget-form .elementor-form .elementor-form-fields-wrapper{
    display:flex;
    flex-wrap:wrap;
    gap:var(--mcgc-gap);
    margin:0;
    padding:0;
}

.mcgc-form-card .elementor-widget-form .elementor-form .elementor-field-group{
    display:flex;
    flex-direction:column;
    flex-grow:0;
    flex-shrink:0;
    gap:7px;
    margin:0;
    padding:0;
}

.mcgc-form-card .elementor-widget-form .elementor-form .elementor-field-group.elementor-col-100{
    width:100%;
}

.mcgc-form-card .elementor-widget-form .elementor-form .elementor-field-group.elementor-col-50{
    width:calc(50% - (var(--mcgc-gap) / 2));
}

.mcgc-form-card .elementor-widget-form .elementor-form .elementor-field-group.elementor-col-33{
    width:calc(33.333% - (var(--mcgc-gap) * 2 / 3));
}


/* ---------------------------------------------------------
LABELS
--------------------------------------------------------- */

.mcgc-form-card .elementor-widget-form .elementor-form .elementor-field-label{
    margin:0;
    padding:0;
    color:var(--mcgc-label);
    font-size:13px;
    font-weight:800;
    line-height:1.4;
}

.mcgc-form-card .elementor-widget-form .elementor-mark-required .elementor-field-label::after{
    content:" *";
    color:var(--mcgc-error);
}


/* ---------------------------------------------------------
INPUTS
--------------------------------------------------------- */

.mcgc-form-card .elementor-widget-form .elementor-form .elementor-field-textual{
    width:100%;
    padding:13px 14px;
    border:1px solid var(--mcgc-field-line);
    border-radius:11px;
    background:#fff;
    color:var(--mcgc-ink);
    font-family:inherit;
    font-size:16px;
    line-height:1.5;
    outline:0;
    box-shadow:none;
    transition:border-color .2s ease,box-shadow .2s ease;
}

.mcgc-form-card .elementor-widget-form .elementor-form input.elementor-field-textual,
.mcgc-form-card .elementor-widget-form .elementor-form select.elementor-field-textual{
    min-height:49px;
}

.mcgc-form-card .elementor-widget-form .elementor-form textarea.elementor-field-textual{
    min-height:150px;
    resize:vertical;
}

.mcgc-form-card .elementor-widget-form .elementor-form .elementor-field-textual:focus{
    border-color:var(--mcgc-blue);
    box-shadow:0 0 0 4px rgba(20,110,245,.10);
}

.mcgc-form-card .elementor-widget-form .elementor-form .elementor-field-textual::placeholder{
    color:var(--mcgc-placeholder);
    opacity:1;
}

.mcgc-form-card .elementor-widget-form .elementor-form select.elementor-field-textual{
    appearance:none;
    -webkit-appearance:none;
    padding-right:38px;
    background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235f6e80' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
    background-repeat:no-repeat;
    background-position:right 14px center;
    background-size:16px 16px;
}


/* ---------------------------------------------------------
SUBMIT BUTTON
Background and colour are declared together in every state.
--------------------------------------------------------- */

.mcgc-form-card .elementor-widget-form .elementor-form .elementor-field-type-submit{
    width:100%;
}

.mcgc-form-card .elementor-widget-form .elementor-form .elementor-button[type="submit"]{
    width:100%;
    min-height:52px;
    padding:0 23px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border:0;
    border-radius:12px;
    background:var(--mcgc-blue);
    color:#fff;
    font-family:inherit;
    font-size:16px;
    font-weight:800;
    line-height:1;
    cursor:pointer;
    box-shadow:0 12px 28px rgba(20,110,245,.24);
    transition:background-color .2s ease,color .2s ease,transform .2s ease;
}

.mcgc-form-card .elementor-widget-form .elementor-form .elementor-button[type="submit"]:hover{
    background:var(--mcgc-blue-dark);
    color:#fff;
    transform:translateY(-2px);
}

.mcgc-form-card .elementor-widget-form .elementor-form .elementor-button[type="submit"]:focus{
    background:var(--mcgc-blue-dark);
    color:#fff;
}

.mcgc-form-card .elementor-widget-form .elementor-form .elementor-button[type="submit"]:active{
    background:var(--mcgc-blue-dark);
    color:#fff;
    transform:translateY(0);
}

.mcgc-form-card .elementor-widget-form .elementor-form .elementor-button[type="submit"]:disabled{
    background:#8fb4ef;
    color:#fff;
    cursor:not-allowed;
    transform:none;
    box-shadow:none;
}

.mcgc-form-card :focus-visible{
    outline:3px solid #ffc857;
    outline-offset:3px;
}


/* ---------------------------------------------------------
VALIDATION AND RESULT MESSAGES
--------------------------------------------------------- */

.mcgc-form-card .elementor-message{
    margin-top:15px;
    padding:13px 15px;
    border-radius:11px;
    font-size:14px;
    line-height:1.6;
}

.mcgc-form-card .elementor-message.elementor-message-success{
    border:1px solid #b8e6d2;
    background:#e2f8ef;
    color:#0d6b4b;
}

.mcgc-form-card .elementor-message.elementor-message-danger{
    border:1px solid #f0c4bd;
    background:#fdecea;
    color:#8e2d1f;
}

.mcgc-form-card .elementor-widget-form .elementor-form .elementor-field-group > .elementor-error{
    margin:0;
    color:var(--mcgc-error);
    font-size:12px;
    font-weight:700;
    line-height:1.4;
}

.mcgc-form-card .elementor-widget-form .elementor-form .elementor-field-group.elementor-error .elementor-field-textual{
    border-color:#d9705e;
}


/* ---------------------------------------------------------
RESPONSIVE
--------------------------------------------------------- */

@media(max-width:700px){

    .mcgc-form-card{
        padding:26px;
    }

    .mcgc-form-card .elementor-widget-form .elementor-form .elementor-field-group.elementor-col-50,
    .mcgc-form-card .elementor-widget-form .elementor-form .elementor-field-group.elementor-col-33{
        width:100%;
    }

}

@media(prefers-reduced-motion:reduce){

    .mcgc-form-card .elementor-widget-form .elementor-form .elementor-button[type="submit"],
    .mcgc-form-card .elementor-widget-form .elementor-form .elementor-field-textual{
        transition:none;
    }

    .mcgc-form-card .elementor-widget-form .elementor-form .elementor-button[type="submit"]:hover{
        transform:none;
    }

}/* End custom CSS */