.gdcf-form-wrap {
    --gdcf-accent:#3157d5;
    --gdcf-label:#172033;
    --gdcf-label-font-size:14px;
    --gdcf-input-text:#172033;
    --gdcf-placeholder:#98a2b3;
    --gdcf-input-bg:#fff;
    --gdcf-input-border:#cfd5df;
    --gdcf-input-focus:#3157d5;
    --gdcf-radius:10px;
    --gdcf-input-height:46px;
    --gdcf-input-border-width:1px;
    --gdcf-field-space:8px;
    --gdcf-button-bg:#3157d5;
    --gdcf-button-hover:#2447b8;
    --gdcf-button-text:#fff;
    --gdcf-button-radius:10px;
    --gdcf-button-width:auto;
    --gdcf-actions-justify:flex-start;
    width:100%;
    font-family:inherit;
    color:inherit
}
.gdcf-form {
    margin:0
}
.gdcf-grid {
    display:flex;
    flex-wrap:wrap;
    margin:calc(var(--gdcf-field-space) * -1)
}
.gdcf-field {
    box-sizing:border-box;
    padding:var(--gdcf-field-space);
    width:100%
}
.gdcf-width-25 {
    width:25%
}
.gdcf-width-33 {
    width:33.333%
}
.gdcf-width-50 {
    width:50%
}
.gdcf-width-66 {
    width:66.666%
}
.gdcf-width-75 {
    width:75%
}
.gdcf-width-100 {
    width:100%
}
.gdcf-field label,.gdcf-field legend {
    display:block;
    margin:0 0 7px;
    color:var(--gdcf-label);
    font-size:var(--gdcf-label-font-size);
    font-weight:650;
    line-height:1.4
}
.gdcf-field fieldset {
    margin:0;
    padding:0;
    border:0
}
.gdcf-required {
    margin-left:4px;
    color:#d63638
}
.gdcf-field input:not([type=checkbox]):not([type=radio]),.gdcf-field textarea,.gdcf-field select {
    box-sizing:border-box;
    width:100%;
    min-height:var(--gdcf-input-height);
    margin:0;
    padding:10px 13px;
    border:var(--gdcf-input-border-width) solid var(--gdcf-input-border);
    border-radius:var(--gdcf-radius);
    background:var(--gdcf-input-bg);
    color:var(--gdcf-input-text);
    font:inherit;
    line-height:1.4;
    outline:0;
    transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease
}
.gdcf-field input::placeholder,.gdcf-field textarea::placeholder {
    color:var(--gdcf-placeholder);
    opacity:1
}
.gdcf-field textarea {
    min-height:120px;
    resize:vertical
}
.gdcf-field input:focus,.gdcf-field textarea:focus,.gdcf-field select:focus {
    border-color:var(--gdcf-input-focus);
    box-shadow:0 0 0 3px color-mix(in srgb,var(--gdcf-input-focus) 16%,transparent)
}
.gdcf-form.gdcf-input-style-filled .gdcf-field input:not([type=checkbox]):not([type=radio]),.gdcf-form.gdcf-input-style-filled .gdcf-field textarea,.gdcf-form.gdcf-input-style-filled .gdcf-field select {
    border-color:transparent;
    background:color-mix(in srgb,var(--gdcf-input-bg) 92%,var(--gdcf-input-border) 8%);
    box-shadow:inset 0 0 0 var(--gdcf-input-border-width) transparent
}
.gdcf-form.gdcf-input-style-filled .gdcf-field input:focus,.gdcf-form.gdcf-input-style-filled .gdcf-field textarea:focus,.gdcf-form.gdcf-input-style-filled .gdcf-field select:focus {
    border-color:transparent;
    box-shadow:inset 0 0 0 var(--gdcf-input-border-width) var(--gdcf-input-focus),0 0 0 3px color-mix(in srgb,var(--gdcf-input-focus) 14%,transparent)
}
.gdcf-form.gdcf-input-style-underline .gdcf-field input:not([type=checkbox]):not([type=radio]),.gdcf-form.gdcf-input-style-underline .gdcf-field textarea,.gdcf-form.gdcf-input-style-underline .gdcf-field select {
    padding-right:2px;
    padding-left:2px;
    border-width:0 0 var(--gdcf-input-border-width);
    border-radius:0;
    background:var(--gdcf-input-bg);
    box-shadow:none
}
.gdcf-form.gdcf-input-style-underline .gdcf-field input:focus,.gdcf-form.gdcf-input-style-underline .gdcf-field textarea:focus,.gdcf-form.gdcf-input-style-underline .gdcf-field select:focus {
    border-color:var(--gdcf-input-focus);
    box-shadow:0 2px 0 0 var(--gdcf-input-focus)
}
.gdcf-options {
    display:flex;
    flex-wrap:wrap;
    gap:10px 18px
}
.gdcf-choice {
    display:inline-flex!important;
    align-items:flex-start;
    gap:8px;
    margin:0!important;
    color:var(--gdcf-label);
    font-weight:500!important;
    cursor:pointer
}
.gdcf-choice input {
    flex:0 0 auto;
    margin-top:3px;
    accent-color:var(--gdcf-accent)
}
.gdcf-help {
    margin-top:6px;
    color:#697386;
    font-size:12px;
    line-height:1.45
}
.gdcf-field-error {
    min-height:0;
    margin-top:5px;
    color:#b42318;
    font-size:12px
}
.gdcf-has-error input,.gdcf-has-error textarea,.gdcf-has-error select {
    border-color:#d92d20!important;
    box-shadow:0 0 0 3px rgba(217,45,32,.1)!important
}
.gdcf-actions {
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:var(--gdcf-actions-justify);
    gap:10px;
    margin-top:16px
}
.gdcf-submit-field {
    display:flex;
    justify-content:var(--gdcf-actions-justify);
    width:100%;
    padding:0
}
.gdcf-submit {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:9px;
    width:var(--gdcf-button-width);
    min-height:46px;
    padding:11px 22px;
    border:2px solid transparent;
    border-radius:var(--gdcf-button-radius);
    background:var(--gdcf-button-bg);
    color:var(--gdcf-button-text);
    font:inherit;
    font-weight:700;
    line-height:1;
    cursor:pointer;
    box-shadow:0 8px 20px color-mix(in srgb,var(--gdcf-button-bg) 22%,transparent);
    transition:transform .16s ease,filter .16s ease,background-color .16s ease,color .16s ease,border-color .16s ease
}
.gdcf-submit:hover {
    background:var(--gdcf-button-hover);
    filter:none;
    transform:translateY(-1px)
}
.gdcf-form.gdcf-button-style-outline .gdcf-submit {
    border-color:var(--gdcf-button-bg);
    background:transparent;
    color:var(--gdcf-button-bg);
    box-shadow:none
}
.gdcf-form.gdcf-button-style-outline .gdcf-submit:hover {
    border-color:var(--gdcf-button-hover);
    background:var(--gdcf-button-hover);
    color:var(--gdcf-button-text)
}
.gdcf-form.gdcf-button-style-gradient .gdcf-submit {
    background:linear-gradient(135deg,var(--gdcf-button-bg),var(--gdcf-button-hover));
    box-shadow:0 10px 24px color-mix(in srgb,var(--gdcf-button-bg) 25%,transparent)
}
.gdcf-form.gdcf-button-style-gradient .gdcf-submit:hover {
    background:linear-gradient(135deg,var(--gdcf-button-hover),var(--gdcf-button-bg));
    filter:brightness(.98)
}
.gdcf-submit:disabled {
    cursor:wait;
    opacity:.72;
    transform:none
}
.gdcf-spinner {
    display:none;
    width:14px;
    height:14px;
    border:2px solid color-mix(in srgb,currentColor 42%,transparent);
    border-top-color:currentColor;
    border-radius:50%;
    animation:gdcf-spin .7s linear infinite
}
.gdcf-submit.is-loading .gdcf-spinner {
    display:inline-block
}
.gdcf-response {
    display:none;
    margin-top:14px;
    padding:12px 14px;
    border-radius:var(--gdcf-radius);
    font-size:14px;
    line-height:1.5
}
.gdcf-response.is-success {
    display:block;
    background:#ecfdf3;
    color:#067647;
    border:1px solid #abefc6
}
.gdcf-response.is-error {
    display:block;
    background:#fef3f2;
    color:#b42318;
    border:1px solid #fecdca
}
.gdcf-honeypot {
    position:absolute!important;
    left:-10000px!important;
    width:1px!important;
    height:1px!important;
    overflow:hidden!important
}
.gdcf-html {
    line-height:1.6
}
.gdcf-notice {
    padding:10px 12px;
    border:1px solid #e3e7ee;
    background:#f8fafc;
    color:#475467;
    border-radius:8px
}
@keyframes gdcf-spin {
    to {
        transform:rotate(360deg)
    }
}
@media(max-width:680px) {
    .gdcf-width-25,.gdcf-width-33,.gdcf-width-50,.gdcf-width-66,.gdcf-width-75 {
        width:100%
    }
}
.gdcf-form.is-conversational {
    max-width:720px
}
.gdcf-form.is-conversational .gdcf-grid {
    display:block;
    margin:0
}
.gdcf-form.is-conversational .gdcf-grid>.gdcf-field {
    display:none;
    width:100%;
    padding:0
}
.gdcf-form.is-conversational .gdcf-grid>.gdcf-field.is-current-step {
    display:block;
    animation:gdcf-step-in .25s ease
}
.gdcf-conversation-progress {
    display:flex;
    align-items:center;
    gap:12px;
    margin-bottom:24px
}
.gdcf-conversation-progress-track {
    flex:1;
    height:6px;
    border-radius:999px;
    background:#edf0f5;
    overflow:hidden
}
.gdcf-conversation-progress-track span {
    display:block;
    width:0;
    height:100%;
    border-radius:999px;
    background:var(--gdcf-accent);
    transition:width .25s ease
}
.gdcf-conversation-progress-text {
    flex:0 0 auto;
    color:#697386;
    font-size:12px;
    font-weight:700
}
.gdcf-form.is-conversational .gdcf-field>label:not(.gdcf-choice),.gdcf-form.is-conversational .gdcf-field>.gdcf-field-label,.gdcf-form.is-conversational .gdcf-field>fieldset>legend {
    margin-bottom:14px;
    font-size:max(var(--gdcf-label-font-size),22px);
    line-height:1.3
}
.gdcf-form.is-conversational .gdcf-field input:not([type=checkbox]):not([type=radio]),.gdcf-form.is-conversational .gdcf-field textarea,.gdcf-form.is-conversational .gdcf-field select {
    min-height:54px;
    padding:13px 15px;
    font-size:16px
}
.gdcf-form.is-conversational .gdcf-options {
    display:grid;
    gap:10px
}
.gdcf-form.is-conversational .gdcf-choice {
    padding:12px 14px;
    border:var(--gdcf-input-border-width) solid var(--gdcf-input-border);
    border-radius:var(--gdcf-radius);
    background:var(--gdcf-input-bg);
    color:var(--gdcf-label)
}
.gdcf-conversation-navigation {
    display:flex;
    justify-content:space-between;
    gap:10px;
    margin-top:22px
}
.gdcf-conversation-navigation button {
    min-height:42px;
    padding:9px 18px;
    border:1px solid #cfd5df;
    border-radius:var(--gdcf-radius);
    background:#fff;
    color:#344054;
    font:inherit;
    font-weight:700;
    cursor:pointer
}
.gdcf-conversation-navigation .gdcf-conversation-next {
    margin-left:auto;
    border-color:var(--gdcf-accent);
    background:var(--gdcf-accent);
    color:#fff
}
.gdcf-conversation-navigation button:disabled {
    opacity:.45;
    cursor:not-allowed
}
.gdcf-form.is-conversational .gdcf-actions {
    margin-top:22px
}
.gdcf-form.is-conversational .gdcf-actions[hidden],.gdcf-conversation-navigation button[hidden] {
    display:none!important
}
@keyframes gdcf-step-in {
    from {
        opacity:0;
        transform:translateX(8px)
    }
    to {
        opacity:1;
        transform:translateX(0)
    }
}
.gdcf-recaptcha-field {
    padding-top:12px;
    padding-bottom:4px
}
.gdcf-recaptcha-widget {
    display:flex;
    align-items:center;
    min-height:78px;
    max-width:100%;
    overflow-x:auto;
    overflow-y:hidden
}
.gdcf-recaptcha-invisible-widget {
    min-height:0
}
.gdcf-recaptcha-field.gdcf-has-error .gdcf-recaptcha-widget {
    padding:7px;
    border:1px solid #d92d20;
    border-radius:var(--gdcf-radius);
    background:#fff7f6
}
.gdcf-form.is-conversational .gdcf-recaptcha-field {
    min-height:120px
}
.gdcf-form.is-conversational .gdcf-recaptcha-widget {
    justify-content:flex-start
}
@media(max-width:360px) {
    .gdcf-recaptcha-widget>div {
        transform:scale(.9);
        transform-origin:left top
    }
    .gdcf-recaptcha-widget {
        min-height:72px
    }
}

/* Conditional logic and choice layouts. */
.gdcf-field.gdcf-condition-hidden,
.gdcf-field[hidden],
.gdcf-actions[hidden] {
    display:none!important
}
.gdcf-options-layout-stacked {
    flex-direction:column;
    align-items:flex-start
}
.gdcf-options-layout-inline {
    align-items:center
}
.gdcf-options-layout-buttons,
.gdcf-options-layout-tabs {
    display:flex;
    width:100%;
    gap:10px
}
.gdcf-options-layout-buttons .gdcf-choice,
.gdcf-options-layout-tabs .gdcf-choice {
    position:relative;
    align-items:stretch;
    margin:0!important
}
.gdcf-options-layout-buttons .gdcf-choice input,
.gdcf-options-layout-tabs .gdcf-choice input {
    position:absolute;
    width:1px;
    height:1px;
    margin:-1px;
    padding:0;
    overflow:hidden;
    clip:rect(0 0 0 0);
    white-space:nowrap;
    border:0;
    opacity:0
}
.gdcf-options-layout-buttons .gdcf-choice>span,
.gdcf-options-layout-tabs .gdcf-choice>span {
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:44px;
    padding:9px 16px;
    border:var(--gdcf-input-border-width) solid var(--gdcf-input-border);
    border-radius:var(--gdcf-radius);
    background:var(--gdcf-input-bg);
    color:var(--gdcf-label);
    font-weight:700;
    text-align:center;
    transition:border-color .16s ease,background-color .16s ease,color .16s ease,box-shadow .16s ease
}
.gdcf-options-layout-buttons .gdcf-choice input:checked+span,
.gdcf-options-layout-tabs .gdcf-choice input:checked+span {
    border-color:var(--gdcf-accent);
    background:var(--gdcf-accent);
    color:#fff;
    box-shadow:0 7px 18px color-mix(in srgb,var(--gdcf-accent) 20%,transparent)
}
.gdcf-options-layout-buttons .gdcf-choice input:focus-visible+span,
.gdcf-options-layout-tabs .gdcf-choice input:focus-visible+span {
    outline:3px solid color-mix(in srgb,var(--gdcf-accent) 22%,transparent);
    outline-offset:2px
}
.gdcf-options-layout-tabs {
    gap:0;
    padding:4px;
    border:var(--gdcf-input-border-width) solid var(--gdcf-input-border);
    border-radius:calc(var(--gdcf-radius) + 4px);
    background:color-mix(in srgb,var(--gdcf-input-bg) 90%,var(--gdcf-input-border) 10%)
}
.gdcf-options-layout-tabs .gdcf-choice {
    flex:1 1 0
}
.gdcf-options-layout-tabs .gdcf-choice>span {
    width:100%;
    border-color:transparent;
    background:transparent;
    box-shadow:none
}
.gdcf-options-layout-tabs .gdcf-choice input:checked+span {
    border-color:transparent;
    background:var(--gdcf-input-bg);
    color:var(--gdcf-accent);
    box-shadow:0 3px 10px rgba(16,24,40,.12)
}
.gdcf-conditional-modal {
    position:fixed!important;
    inset:0;
    z-index:999999;
    display:none!important;
    align-items:center;
    justify-content:center;
    width:auto!important;
    max-width:none!important;
    padding:20px!important
}
.gdcf-conditional-modal.is-open {
    display:flex!important
}
.gdcf-conditional-modal-backdrop {
    position:absolute;
    inset:0;
    background:rgba(16,24,40,.62);
    backdrop-filter:blur(3px)
}
.gdcf-conditional-modal-dialog {
    position:relative;
    z-index:1;
    width:min(620px,100%);
    max-height:min(82vh,760px);
    overflow:auto;
    padding:30px;
    border-radius:calc(var(--gdcf-radius) + 6px);
    background:#fff;
    color:#172033;
    box-shadow:0 24px 70px rgba(16,24,40,.32);
    outline:0
}
.gdcf-conditional-modal-close {
    position:absolute;
    top:10px;
    right:12px;
    display:grid;
    place-items:center;
    width:36px;
    height:36px;
    padding:0;
    border:0;
    border-radius:50%;
    background:#f2f4f7;
    color:#344054;
    font:inherit;
    font-size:25px;
    line-height:1;
    cursor:pointer
}
.gdcf-conditional-modal-close:hover,
.gdcf-conditional-modal-close:focus-visible {
    background:#e4e7ec;
    color:#101828;
    outline:2px solid var(--gdcf-accent);
    outline-offset:2px
}
.gdcf-conditional-modal-content>:first-child {
    margin-top:0
}
.gdcf-conditional-modal-content>:last-child {
    margin-bottom:0
}

.gdcf-success-modal .gdcf-conditional-modal-backdrop {
    background:
        radial-gradient(circle at 50% 18%,color-mix(in srgb,var(--gdcf-accent) 22%,transparent),transparent 38%),
        rgba(15,23,42,.68);
    -webkit-backdrop-filter:blur(7px);
    backdrop-filter:blur(7px);
    animation:gdcf-success-backdrop-in .22s ease-out both
}
.gdcf-success-modal-dialog {
    width:min(560px,100%);
    max-height:min(86vh,720px);
    padding:42px 38px 34px;
    overflow:auto;
    border:1px solid color-mix(in srgb,var(--gdcf-accent) 16%,var(--gdcf-input-border));
    border-radius:calc(var(--gdcf-radius) + 12px);
    background:
        linear-gradient(180deg,color-mix(in srgb,var(--gdcf-accent) 5%,var(--gdcf-input-bg)) 0,var(--gdcf-input-bg) 38%),
        var(--gdcf-input-bg);
    color:var(--gdcf-label);
    box-shadow:
        0 32px 90px rgba(15,23,42,.30),
        0 10px 30px color-mix(in srgb,var(--gdcf-accent) 12%,transparent);
    text-align:center;
    isolation:isolate;
    animation:gdcf-success-dialog-in .28s cubic-bezier(.2,.8,.2,1) both
}
.gdcf-success-modal-dialog::before {
    content:"";
    position:absolute;
    inset:0 0 auto;
    z-index:-1;
    height:5px;
    border-radius:inherit;
    background:linear-gradient(90deg,var(--gdcf-button-bg),var(--gdcf-accent),var(--gdcf-button-hover))
}
.gdcf-success-modal-dialog::after {
    content:"";
    position:absolute;
    top:-74px;
    left:50%;
    z-index:-1;
    width:230px;
    height:160px;
    border-radius:50%;
    background:color-mix(in srgb,var(--gdcf-accent) 12%,transparent);
    filter:blur(30px);
    transform:translateX(-50%);
    pointer-events:none
}
.gdcf-success-modal .gdcf-conditional-modal-close {
    top:14px;
    right:14px;
    width:38px;
    height:38px;
    border:1px solid color-mix(in srgb,var(--gdcf-input-border) 72%,transparent);
    background:color-mix(in srgb,var(--gdcf-input-bg) 88%,var(--gdcf-input-border) 12%);
    color:var(--gdcf-label);
    font-size:23px;
    box-shadow:0 3px 10px rgba(15,23,42,.08)
}
.gdcf-success-modal .gdcf-conditional-modal-close:hover,
.gdcf-success-modal .gdcf-conditional-modal-close:focus-visible {
    border-color:color-mix(in srgb,var(--gdcf-accent) 36%,var(--gdcf-input-border));
    background:color-mix(in srgb,var(--gdcf-accent) 10%,var(--gdcf-input-bg));
    color:var(--gdcf-accent)
}
.gdcf-success-modal-icon {
    display:grid;
    place-items:center;
    width:76px;
    height:76px;
    margin:2px auto 24px;
    border:1px solid color-mix(in srgb,var(--gdcf-accent) 24%,transparent);
    border-radius:50%;
    background:linear-gradient(145deg,color-mix(in srgb,var(--gdcf-accent) 15%,var(--gdcf-input-bg)),color-mix(in srgb,var(--gdcf-accent) 6%,var(--gdcf-input-bg)));
    color:var(--gdcf-accent);
    box-shadow:
        0 12px 30px color-mix(in srgb,var(--gdcf-accent) 17%,transparent),
        inset 0 0 0 7px color-mix(in srgb,var(--gdcf-accent) 5%,transparent);
    animation:gdcf-success-icon-in .42s .08s cubic-bezier(.2,.9,.3,1.2) both
}
.gdcf-success-modal-icon svg {
    width:38px;
    height:38px;
    overflow:visible
}
.gdcf-success-modal-icon path {
    fill:none;
    stroke:currentColor;
    stroke-width:2.25;
    stroke-linecap:round;
    stroke-linejoin:round;
    stroke-dasharray:24;
    stroke-dashoffset:24;
    animation:gdcf-success-check-in .38s .22s ease-out forwards
}
.gdcf-success-modal-content {
    margin:0 auto;
    max-width:460px;
    color:var(--gdcf-label);
    font-size:16px;
    line-height:1.7
}
.gdcf-success-modal-content h1,
.gdcf-success-modal-content h2,
.gdcf-success-modal-content h3,
.gdcf-success-modal-content h4 {
    margin:0 0 12px;
    color:var(--gdcf-label);
    font-family:inherit;
    font-weight:750;
    line-height:1.2
}
.gdcf-success-modal-content h1,
.gdcf-success-modal-content h2 {
    font-size:clamp(24px,4vw,30px)
}
.gdcf-success-modal-content h3 {
    font-size:22px
}
.gdcf-success-modal-content p {
    margin:0 0 10px
}
.gdcf-success-modal-content a {
    color:var(--gdcf-accent);
    font-weight:650;
    text-decoration-thickness:1px;
    text-underline-offset:3px
}
.gdcf-success-modal-action {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:132px;
    min-height:44px;
    margin:26px auto 0;
    padding:10px 22px;
    border:2px solid transparent;
    border-radius:var(--gdcf-button-radius);
    background:var(--gdcf-button-bg);
    color:var(--gdcf-button-text);
    font:inherit;
    font-weight:700;
    line-height:1;
    cursor:pointer;
    box-shadow:0 9px 22px color-mix(in srgb,var(--gdcf-button-bg) 22%,transparent);
    transition:transform .16s ease,background-color .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease
}
.gdcf-success-modal-action:hover {
    background:var(--gdcf-button-hover);
    transform:translateY(-1px);
    box-shadow:0 12px 26px color-mix(in srgb,var(--gdcf-button-hover) 24%,transparent)
}
.gdcf-success-modal-action:focus-visible {
    outline:3px solid color-mix(in srgb,var(--gdcf-accent) 26%,transparent);
    outline-offset:3px
}
.gdcf-form.gdcf-button-style-outline .gdcf-success-modal-action {
    border-color:var(--gdcf-button-bg);
    background:transparent;
    color:var(--gdcf-button-bg);
    box-shadow:none
}
.gdcf-form.gdcf-button-style-outline .gdcf-success-modal-action:hover {
    border-color:var(--gdcf-button-hover);
    background:var(--gdcf-button-hover);
    color:var(--gdcf-button-text)
}
.gdcf-form.gdcf-button-style-gradient .gdcf-success-modal-action {
    background:linear-gradient(135deg,var(--gdcf-button-bg),var(--gdcf-button-hover))
}
.gdcf-form.gdcf-button-style-gradient .gdcf-success-modal-action:hover {
    background:linear-gradient(135deg,var(--gdcf-button-hover),var(--gdcf-button-bg))
}
@keyframes gdcf-success-backdrop-in {
    from { opacity:0 }
    to { opacity:1 }
}
@keyframes gdcf-success-dialog-in {
    from { opacity:0;transform:translateY(18px) scale(.97) }
    to { opacity:1;transform:translateY(0) scale(1) }
}
@keyframes gdcf-success-icon-in {
    from { opacity:0;transform:scale(.72) rotate(-7deg) }
    to { opacity:1;transform:scale(1) rotate(0) }
}
@keyframes gdcf-success-check-in {
    to { stroke-dashoffset:0 }
}
.gdcf-form.is-conversational .gdcf-grid>.gdcf-conditional-modal.is-current-step.is-open {
    display:flex!important
}
.gdcf-form.is-conversational .gdcf-options-layout-buttons,
.gdcf-form.is-conversational .gdcf-options-layout-tabs {
    display:flex
}
@media(max-width:680px) {
    .gdcf-options-layout-buttons,
    .gdcf-options-layout-tabs {
        flex-direction:column
    }
    .gdcf-options-layout-tabs .gdcf-choice {
        width:100%
    }
    .gdcf-conditional-modal {
        padding:12px!important
    }
    .gdcf-conditional-modal-dialog {
        max-height:88vh;
        padding:26px 20px 22px
    }
    .gdcf-success-modal-dialog {
        padding:38px 20px 26px;
        border-radius:calc(var(--gdcf-radius) + 8px)
    }
    .gdcf-success-modal-icon {
        width:68px;
        height:68px;
        margin-bottom:20px
    }
    .gdcf-success-modal-icon svg {
        width:34px;
        height:34px
    }
    .gdcf-success-modal-content {
        font-size:15px;
        line-height:1.65
    }
    .gdcf-success-modal-action {
        width:100%;
        margin-top:22px
    }
}

@media(prefers-reduced-motion:reduce) {
    .gdcf-success-modal .gdcf-conditional-modal-backdrop,
    .gdcf-success-modal-dialog,
    .gdcf-success-modal-icon,
    .gdcf-success-modal-icon path {
        animation:none!important
    }
    .gdcf-success-modal-icon path {
        stroke-dashoffset:0
    }
}

/* --------------------------------------------------------------------------
 * GlobalDev theme isolation
 * Keep form controls and modals predictable when themes/builders apply broad
 * button/input/radio rules (including min-widths, padding and hidden inputs).
 * -------------------------------------------------------------------------- */
.gdcf-form,
.gdcf-form *,
.gdcf-form *::before,
.gdcf-form *::after {
    box-sizing:border-box
}

.gdcf-form .gdcf-choice>input[type="radio"],
.gdcf-form .gdcf-choice>input[type="checkbox"] {
    -webkit-appearance:auto!important;
    appearance:auto!important;
    position:static!important;
    inset:auto!important;
    float:none!important;
    display:inline-block!important;
    visibility:visible!important;
    opacity:1!important;
    width:16px!important;
    height:16px!important;
    min-width:16px!important;
    min-height:16px!important;
    max-width:16px!important;
    max-height:16px!important;
    margin:3px 0 0!important;
    padding:0!important;
    border-radius:initial!important;
    box-shadow:none!important;
    transform:none!important;
    vertical-align:top!important;
    accent-color:var(--gdcf-accent)!important
}

/* Button/tab choice layouts intentionally hide the native control. These
 * rules come after the generic theme-isolation reset so theme !important
 * declarations cannot bring the radio circle/checkbox back. */
.gdcf-form .gdcf-options-layout-buttons .gdcf-choice>input[type="radio"],
.gdcf-form .gdcf-options-layout-buttons .gdcf-choice>input[type="checkbox"],
.gdcf-form .gdcf-options-layout-tabs .gdcf-choice>input[type="radio"],
.gdcf-form .gdcf-options-layout-tabs .gdcf-choice>input[type="checkbox"] {
    -webkit-appearance:none!important;
    appearance:none!important;
    position:absolute!important;
    inset:auto!important;
    display:block!important;
    visibility:visible!important;
    opacity:0!important;
    width:1px!important;
    height:1px!important;
    min-width:1px!important;
    min-height:1px!important;
    max-width:1px!important;
    max-height:1px!important;
    margin:-1px!important;
    padding:0!important;
    overflow:hidden!important;
    clip:rect(0 0 0 0)!important;
    clip-path:inset(50%)!important;
    white-space:nowrap!important;
    border:0!important;
    box-shadow:none!important;
    pointer-events:none!important
}

.gdcf-form .gdcf-choice,
.gdcf-form .gdcf-choice>span {
    text-transform:none!important;
    letter-spacing:normal!important
}

/* Modal shell is intentionally scoped below .gdcf-form so these rules never
 * style theme/site modals outside GlobalDev Contact Forms. */
.gdcf-form .gdcf-conditional-modal {
    font-family:inherit!important;
    text-align:left
}

.gdcf-form .gdcf-conditional-modal .gdcf-conditional-modal-dialog {
    box-sizing:border-box!important
}

/* Theme-proof icon-only close control. */
.gdcf-form .gdcf-conditional-modal button.gdcf-conditional-modal-close {
    -webkit-appearance:none!important;
    appearance:none!important;
    position:absolute!important;
    inset:14px 14px auto auto!important;
    z-index:5!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    float:none!important;
    width:36px!important;
    height:36px!important;
    min-width:36px!important;
    min-height:36px!important;
    max-width:36px!important;
    max-height:36px!important;
    margin:0!important;
    padding:0!important;
    border:1px solid color-mix(in srgb,var(--gdcf-input-border) 78%,transparent)!important;
    border-radius:999px!important;
    background:color-mix(in srgb,var(--gdcf-input-bg) 94%,var(--gdcf-input-border) 6%)!important;
    color:var(--gdcf-label)!important;
    font-size:0!important;
    font-weight:400!important;
    line-height:1!important;
    text-indent:0!important;
    text-transform:none!important;
    letter-spacing:normal!important;
    box-shadow:0 4px 14px rgba(15,23,42,.10)!important;
    transform:none!important;
    filter:none!important;
    cursor:pointer!important;
    transition:background-color .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease,transform .16s ease!important
}

.gdcf-form .gdcf-conditional-modal button.gdcf-conditional-modal-close:hover,
.gdcf-form .gdcf-conditional-modal button.gdcf-conditional-modal-close:focus-visible {
    border-color:color-mix(in srgb,var(--gdcf-accent) 35%,var(--gdcf-input-border))!important;
    background:color-mix(in srgb,var(--gdcf-accent) 9%,var(--gdcf-input-bg))!important;
    color:var(--gdcf-accent)!important;
    box-shadow:0 6px 18px color-mix(in srgb,var(--gdcf-accent) 14%,transparent)!important;
    transform:translateY(-1px)!important;
    outline:3px solid color-mix(in srgb,var(--gdcf-accent) 16%,transparent)!important;
    outline-offset:2px!important
}

.gdcf-form .gdcf-modal-close-icon {
    position:relative!important;
    display:block!important;
    width:14px!important;
    height:14px!important;
    min-width:14px!important;
    min-height:14px!important;
    margin:0!important;
    padding:0!important;
    pointer-events:none!important
}

.gdcf-form .gdcf-modal-close-icon::before,
.gdcf-form .gdcf-modal-close-icon::after {
    content:""!important;
    position:absolute!important;
    top:50%!important;
    left:50%!important;
    display:block!important;
    width:14px!important;
    height:2px!important;
    margin:0!important;
    border:0!important;
    border-radius:999px!important;
    background:currentColor!important;
    box-shadow:none!important;
    transform-origin:center!important
}

.gdcf-form .gdcf-modal-close-icon::before {
    transform:translate(-50%,-50%) rotate(45deg)!important
}

.gdcf-form .gdcf-modal-close-icon::after {
    transform:translate(-50%,-50%) rotate(-45deg)!important
}

/* Protect the success action from generic theme button rules while preserving
 * the form's own configured button variables/style. */
.gdcf-form .gdcf-success-modal button.gdcf-success-modal-action {
    -webkit-appearance:none!important;
    appearance:none!important;
    position:static!important;
    float:none!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:auto!important;
    min-width:132px!important;
    max-width:100%!important;
    min-height:44px!important;
    margin:26px auto 0!important;
    padding:10px 22px!important;
    border:2px solid transparent!important;
    border-radius:var(--gdcf-button-radius)!important;
    background:var(--gdcf-button-bg)!important;
    color:var(--gdcf-button-text)!important;
    font-family:inherit!important;
    font-size:inherit!important;
    font-weight:700!important;
    line-height:1!important;
    text-transform:none!important;
    letter-spacing:normal!important;
    box-shadow:0 9px 22px color-mix(in srgb,var(--gdcf-button-bg) 22%,transparent)!important;
    transform:none!important;
    filter:none!important;
    cursor:pointer!important
}

.gdcf-form .gdcf-success-modal button.gdcf-success-modal-action:hover {
    background:var(--gdcf-button-hover)!important;
    color:var(--gdcf-button-text)!important;
    transform:translateY(-1px)!important;
    box-shadow:0 12px 26px color-mix(in srgb,var(--gdcf-button-hover) 24%,transparent)!important
}

.gdcf-form.gdcf-button-style-outline .gdcf-success-modal button.gdcf-success-modal-action {
    border-color:var(--gdcf-button-bg)!important;
    background:transparent!important;
    color:var(--gdcf-button-bg)!important;
    box-shadow:none!important
}

.gdcf-form.gdcf-button-style-outline .gdcf-success-modal button.gdcf-success-modal-action:hover {
    border-color:var(--gdcf-button-hover)!important;
    background:var(--gdcf-button-hover)!important;
    color:var(--gdcf-button-text)!important
}

.gdcf-form.gdcf-button-style-gradient .gdcf-success-modal button.gdcf-success-modal-action {
    background:linear-gradient(135deg,var(--gdcf-button-bg),var(--gdcf-button-hover))!important
}

@media(max-width:560px) {
    .gdcf-form .gdcf-conditional-modal button.gdcf-conditional-modal-close {
        inset:12px 12px auto auto!important;
        width:34px!important;
        height:34px!important;
        min-width:34px!important;
        min-height:34px!important;
        max-width:34px!important;
        max-height:34px!important
    }

    .gdcf-form .gdcf-success-modal button.gdcf-success-modal-action {
        width:100%!important
    }
}

.gdcf-form.gdcf-button-style-gradient .gdcf-success-modal button.gdcf-success-modal-action:hover {
    background:linear-gradient(135deg,var(--gdcf-button-hover),var(--gdcf-button-bg))!important
}

/* Main form submit button isolation: only GlobalDev Contact Forms buttons are
 * affected, and configured form variables remain the source of truth. */
.gdcf-form button.gdcf-submit {
    -webkit-appearance:none!important;
    appearance:none!important;
    position:static!important;
    float:none!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:9px!important;
    width:var(--gdcf-button-width)!important;
    min-width:0!important;
    max-width:100%!important;
    min-height:46px!important;
    margin:0!important;
    padding:11px 22px!important;
    border:2px solid transparent!important;
    border-radius:var(--gdcf-button-radius)!important;
    background:var(--gdcf-button-bg)!important;
    color:var(--gdcf-button-text)!important;
    font-family:inherit!important;
    font-size:inherit!important;
    font-weight:700!important;
    line-height:1!important;
    text-transform:none!important;
    letter-spacing:normal!important;
    box-shadow:0 8px 20px color-mix(in srgb,var(--gdcf-button-bg) 22%,transparent)!important;
    filter:none!important;
    cursor:pointer!important
}

.gdcf-form button.gdcf-submit:hover {
    background:var(--gdcf-button-hover)!important;
    color:var(--gdcf-button-text)!important;
    transform:translateY(-1px)!important
}

.gdcf-form.gdcf-button-style-outline button.gdcf-submit {
    border-color:var(--gdcf-button-bg)!important;
    background:transparent!important;
    color:var(--gdcf-button-bg)!important;
    box-shadow:none!important
}

.gdcf-form.gdcf-button-style-outline button.gdcf-submit:hover {
    border-color:var(--gdcf-button-hover)!important;
    background:var(--gdcf-button-hover)!important;
    color:var(--gdcf-button-text)!important
}

.gdcf-form.gdcf-button-style-gradient button.gdcf-submit {
    background:linear-gradient(135deg,var(--gdcf-button-bg),var(--gdcf-button-hover))!important
}

.gdcf-form.gdcf-button-style-gradient button.gdcf-submit:hover {
    background:linear-gradient(135deg,var(--gdcf-button-hover),var(--gdcf-button-bg))!important
}

.gdcf-form .gdcf-conditional-modal button.gdcf-conditional-modal-close::before,
.gdcf-form .gdcf-conditional-modal button.gdcf-conditional-modal-close::after,
.gdcf-form .gdcf-success-modal button.gdcf-success-modal-action::before,
.gdcf-form .gdcf-success-modal button.gdcf-success-modal-action::after,
.gdcf-form button.gdcf-submit::before,
.gdcf-form button.gdcf-submit::after {
    content:none!important;
    display:none!important
}
