.elementor-3522 .elementor-element.elementor-element-7808732{--display:flex;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-3522 .elementor-element.elementor-element-af34b52{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:0.5;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-3522 .elementor-element.elementor-element-af34b52::before, .elementor-3522 .elementor-element.elementor-element-af34b52 > .elementor-background-video-container::before, .elementor-3522 .elementor-element.elementor-element-af34b52 > .e-con-inner > .elementor-background-video-container::before, .elementor-3522 .elementor-element.elementor-element-af34b52 > .elementor-background-slideshow::before, .elementor-3522 .elementor-element.elementor-element-af34b52 > .e-con-inner > .elementor-background-slideshow::before, .elementor-3522 .elementor-element.elementor-element-af34b52 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-3522 .elementor-element.elementor-element-f6077db{margin:20px 0px calc(var(--kit-widget-spacing, 0px) + -20px) 0px;padding:0px 0px 0px 0px;}.elementor-3522 .elementor-element.elementor-element-5cbb9f7{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;text-align:center;}.elementor-3522 .elementor-element.elementor-element-5cbb9f7 .elementor-heading-title{font-size:9rem;line-height:10rem;}.elementor-3522 .elementor-element.elementor-element-2e148ae{font-size:1.1rem;}.elementor-3522 .elementor-element.elementor-element-2e148ae p{margin-block-end:0px;}.elementor-3522 .elementor-element.elementor-element-ee66732{--divider-border-style:solid;--divider-color:var( --e-global-color-secondary );--divider-border-width:1px;}.elementor-3522 .elementor-element.elementor-element-ee66732 .elementor-divider-separator{width:32%;margin:0 auto;margin-center:0;}.elementor-3522 .elementor-element.elementor-element-ee66732 .elementor-divider{text-align:center;padding-block-start:2px;padding-block-end:2px;}.elementor-3522 .elementor-element.elementor-element-97f1286{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-3522 .elementor-element.elementor-element-97f1286.e-con{--flex-grow:1;--flex-shrink:1;}.elementor-3522 .elementor-element.elementor-element-e65da9f{width:100%;max-width:100%;}.elementor-3522 .elementor-element.elementor-element-5a3e679{margin:20px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;font-family:"JetBrains Mono", Sans-serif;font-size:0.7rem;font-weight:600;text-transform:uppercase;color:#9B9B9B;}.elementor-3522 .elementor-element.elementor-element-5a3e679 p{margin-block-end:0px;}.elementor-3522 .elementor-element.elementor-element-5a3e679 a{color:#9B9B9B;}.elementor-3522 .elementor-element.elementor-element-5a3e679 a:hover, .elementor-3522 .elementor-element.elementor-element-5a3e679 a:focus{color:#C7C7C7;}.elementor-3522 .elementor-element.elementor-element-b384f74{font-family:"JetBrains Mono", Sans-serif;font-size:0.9rem;font-weight:600;text-transform:uppercase;color:#9B9B9B;}.elementor-3522 .elementor-element.elementor-element-b384f74 p{margin-block-end:0px;}@media(min-width:768px){.elementor-3522 .elementor-element.elementor-element-97f1286{--width:650px;}}@media(max-width:767px){.elementor-3522 .elementor-element.elementor-element-7808732{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-3522 .elementor-element.elementor-element-af34b52{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:20px 20px;--row-gap:20px;--column-gap:20px;}.elementor-3522 .elementor-element.elementor-element-f6077db{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-3522 .elementor-element.elementor-element-5cbb9f7{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;text-align:center;}.elementor-3522 .elementor-element.elementor-element-5cbb9f7 .elementor-heading-title{font-size:3.7rem;line-height:2.7rem;}.elementor-3522 .elementor-element.elementor-element-2e148ae{margin:10px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;text-align:center;font-size:1rem;}.elementor-3522 .elementor-element.elementor-element-2e148ae p{margin-block-end:0px;}.elementor-3522 .elementor-element.elementor-element-ee66732 .elementor-divider-separator{width:38%;margin:0 auto;margin-center:0;}.elementor-3522 .elementor-element.elementor-element-ee66732 .elementor-divider{text-align:center;padding-block-start:2px;padding-block-end:2px;}.elementor-3522 .elementor-element.elementor-element-97f1286{--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:-10px;--margin-bottom:-10px;--margin-left:-10px;--margin-right:-10px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-3522 .elementor-element.elementor-element-e65da9f{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-3522 .elementor-element.elementor-element-5a3e679{font-size:0.8rem;}.elementor-3522 .elementor-element.elementor-element-b384f74{font-size:0.8rem;}}/* Start custom CSS for shortcode, class: .elementor-element-e65da9f *//* ==========================================================
   FIRST IN CHECKOUT — WP SIMPLE PAY
   UNIVERSAL ELEMENTOR-SCOPED VERSION

   Paste directly into the Elementor container that holds
   the WP Simple Pay shortcode.

   No .fin-checkout class required.
   No hard-coded Simple Pay form ID required.
   ========================================================== */


/* ----------------------------------------------------------
   1. SIMPLE PAY FORM STRUCTURE
   ---------------------------------------------------------- */

/* Hide customer-facing Simple Pay title/description.
   Form name remains intact in WP Simple Pay admin. */
.elementor-3522 .elementor-element.elementor-element-e65da9f .simpay-embedded-heading {
    display: none !important;
}


/* Allow the embedded form to use the full checkout width */
.elementor-3522 .elementor-element.elementor-element-e65da9f .simpay-form-wrap,
.elementor-3522 .elementor-element.elementor-element-e65da9f form {
    width: 100% !important;
    max-width: none !important;
    box-sizing: border-box !important;
}


/* Allow internal fields and controls to use available width */
.elementor-3522 .elementor-element.elementor-element-e65da9f .simpay-form-control,
.elementor-3522 .elementor-element.elementor-element-e65da9f .simpay-field-wrap,
.elementor-3522 .elementor-element.elementor-element-e65da9f .simpay-customer-name-wrap,
.elementor-3522 .elementor-element.elementor-element-e65da9f .simpay-email-wrap {
    width: 100% !important;
    max-width: none !important;
    box-sizing: border-box !important;
}

/* Remove Simple Pay's built-in 30px wrapper padding universally */
.elementor-3522 .elementor-element.elementor-element-e65da9f [id^="simpay-embedded-form-wrap-"]:not(#fin-wrapper-specificity) {
    padding: 0 !important;
}

/* Remove Simple Pay's built-in 30px form padding universally */
.elementor-3522 .elementor-element.elementor-element-e65da9f form[id^="simpay-form-"]:not(#fin-form-specificity) {
    padding: 0 !important;
}


/* ----------------------------------------------------------
   2. CHECKOUT SECTION HEADINGS
   ---------------------------------------------------------- */

.elementor-3522 .elementor-element.elementor-element-e65da9f .simpay-form-control h2 {
    margin-top: 22px !important;
    margin-bottom: 14px !important;

    font-family: "Oswald", sans-serif !important;
    font-size: 24px !important;
    font-weight: 500 !important;
    line-height: 1.2 !important;
    letter-spacing: 0.2px !important;
    text-transform: uppercase !important;

    color: #ffffff !important;
}


/* Remove top margin from first section heading */
.elementor-3522 .elementor-element.elementor-element-e65da9f
.simpay-conditional-field[data-field-type="heading"]:first-of-type
.simpay-form-control h2 {
    margin-top: 0 !important;
}


/* ----------------------------------------------------------
   2A. REASSURANCE COPY
   ---------------------------------------------------------- */

.elementor-3522 .elementor-element.elementor-element-e65da9f .simpay-form-control h6 {
    margin-top: 0 !important;
    margin-bottom: 16px !important;

    font-family: "Inter", sans-serif !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 1.45 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;

    color: #b5b5b5 !important;
}


/* ----------------------------------------------------------
   3. PAYMENT OPTION LIST
   ---------------------------------------------------------- */

.elementor-3522 .elementor-element.elementor-element-e65da9f .simpay-multi-plan-list-group {
    width: 100% !important;
    margin: 0 0 16px !important;
    padding: 0 !important;
    list-style: none !important;
}

.elementor-3522 .elementor-element.elementor-element-e65da9f .simpay-multi-plan-list-group li {
    width: 100% !important;
    margin: 0 0 12px !important;
}


/* ----------------------------------------------------------
   4. PAYMENT OPTION RADIO
   Keep functional for accessibility, hide visually.
   ---------------------------------------------------------- */

.elementor-3522 .elementor-element.elementor-element-e65da9f .simpay-multi-sub {
    position: absolute !important;
    opacity: 0 !important;
    pointer-events: none !important;
}


/* ----------------------------------------------------------
   5. PAYMENT OPTION CARDS — BASE STATE
   ---------------------------------------------------------- */

.elementor-3522 .elementor-element.elementor-element-e65da9f .simpay-multi-plan-list-group label {
    position: relative !important;
    display: block !important;

    width: 100% !important;
    box-sizing: border-box !important;

    padding: 18px 52px 18px 18px !important;

    background: #1b1b1b !important;
    border: 1px solid #3b3b3b !important;
    border-radius: 5px !important;

    box-shadow: none !important;
    outline: none !important;

    color: #ffffff !important;
    cursor: pointer !important;

    font-family: "Oswald", sans-serif !important;
    font-size: 18px !important;
    font-weight: 500 !important;
    line-height: 1.2 !important;
    letter-spacing: 0.2px !important;
    text-transform: uppercase !important;

    transition:
        border-color 0.2s ease,
        background-color 0.2s ease !important;
}


/* Hover — unselected cards only */
.elementor-3522 .elementor-element.elementor-element-e65da9f .simpay-multi-sub:not(:checked) + label:hover {
    border-color: #04E3FF !important;
}

/* Selected card stays gold on hover */
.elementor-3522 .elementor-element.elementor-element-e65da9f .simpay-multi-sub:checked + label:hover {
    border-color: #FFC72C !important;
}



/* ----------------------------------------------------------
   6. PAYMENT OPTION CARDS — SELECTED STATE
   ---------------------------------------------------------- */

.elementor-3522 .elementor-element.elementor-element-e65da9f .simpay-multi-sub:checked + label {
    background: #1a1a1a !important;

    border: 2px solid #FFC72C !important;

    box-shadow: none !important;
    outline: none !important;
}


/* Selected payment checkmark */
.elementor-3522 .elementor-element.elementor-element-e65da9f .simpay-multi-sub:checked + label svg,
.elementor-3522 .elementor-element.elementor-element-e65da9f .simpay-multi-sub:checked + label svg path,
.elementor-3522 .elementor-element.elementor-element-e65da9f .simpay-multi-sub:checked + label svg polyline {
    color: #04E3FF !important;
    stroke: #04E3FF !important;
}


/* Preserve keyboard-focus visibility */
.elementor-3522 .elementor-element.elementor-element-e65da9f .simpay-multi-sub:focus-visible + label {
    outline: 2px solid #04E3FF !important;
    outline-offset: 2px !important;
}


/* ----------------------------------------------------------
   7. PAYMENT PRICE / SCHEDULE
   ---------------------------------------------------------- */

.elementor-3522 .elementor-element.elementor-element-e65da9f .simpay-multi-plan-list-group label small {
    display: block !important;

    margin-top: 6px !important;

    font-family: "Inter", sans-serif !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    line-height: 1.35 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;

    color: #ffffff !important;
}


/* Clarify 3-payment installment schedule */
.elementor-3522 .elementor-element.elementor-element-e65da9f .simpay-multi-sub[data-plan-max-charges="3"] + label small::before {
    content: "3 payments of ";
}


/* ----------------------------------------------------------
   8. STANDARD FORM FIELDS
   ---------------------------------------------------------- */

.elementor-3522 .elementor-element.elementor-element-e65da9f input[type="text"],
.elementor-3522 .elementor-element.elementor-element-e65da9f input[type="email"],
.elementor-3522 .elementor-element.elementor-element-e65da9f input[type="tel"],
.elementor-3522 .elementor-element.elementor-element-e65da9f select {
    width: 100% !important;
    max-width: none !important;
    box-sizing: border-box !important;
}


/* Vertical rhythm between fields */
.elementor-3522 .elementor-element.elementor-element-e65da9f .simpay-field-wrap {
    margin-bottom: 13px !important;
}


/* Match Name field width to Stripe/Email fields */
.elementor-3522 .elementor-element.elementor-element-e65da9f .simpay-customer-name-wrap {
    width: calc(100% - 8px) !important;
}

/* ----------------------------------------------------------
8A. STANDARD FIELD INTERACTION STATES
---------------------------------------------------------- */

/* Hover — standard fields */
.elementor-3522 .elementor-element.elementor-element-e65da9f .simpay-field-wrap input:hover:not(:focus),
.elementor-3522 .elementor-element.elementor-element-e65da9f .simpay-field-wrap select:hover:not(:focus),
.elementor-3522 .elementor-element.elementor-element-e65da9f .simpay-field-wrap textarea:hover:not(:focus) {
    border-color: rgba(4, 227, 255, 0.55) !important;
}

/* Name — active / focused
   Matches the existing active state of the other fields */
.elementor-3522 .elementor-element.elementor-element-e65da9f .simpay-customer-name:focus,
.elementor-3522 .elementor-element.elementor-element-e65da9f .simpay-customer-name:focus-visible {
    border: 1px solid #04E3FF !important;
    outline: none !important;
}


/* ----------------------------------------------------------
   9. SECONDARY / LEGAL COPY
   ---------------------------------------------------------- */

.elementor-3522 .elementor-element.elementor-element-e65da9f .simpay-form-control-description,
.elementor-3522 .elementor-element.elementor-element-e65da9f .simpay-terms-field,
.elementor-3522 .elementor-element.elementor-element-e65da9f .simpay-subscription-message {
    color: #9f9f9f !important;
    line-height: 1.5 !important;
}


/* ----------------------------------------------------------
   10. PAYMENT BUTTON
   ---------------------------------------------------------- */

.elementor-3522 .elementor-element.elementor-element-e65da9f .simpay-payment-btn,
.elementor-3522 .elementor-element.elementor-element-e65da9f .simpay-checkout-btn,
.elementor-3522 .elementor-element.elementor-element-e65da9f button[type="submit"] {
    width: calc(100% - 8px) !important;
    max-width: none !important;

    min-height: 56px !important;
    padding: 13px 20px !important;

    font-family: "Oswald", sans-serif !important;
    font-size: 20px !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
    letter-spacing: 0.4px !important;
    text-transform: uppercase !important;
}


.elementor-3522 .elementor-element.elementor-element-e65da9f .simpay-checkout-btn .simpay-total-amount-value {
    font-family: "Oswald", sans-serif !important;
    font-size: inherit !important;
    font-weight: inherit !important;
    font-style: normal !important;
    letter-spacing: inherit !important;
}


/* ----------------------------------------------------------
11. MOBILE
---------------------------------------------------------- */

@media (max-width: 767px) {

/* Outer Simple Pay wrapper */
.elementor-3522 .elementor-element.elementor-element-e65da9f [id^="simpay-embedded-form-wrap-"]:not(#fin-specificity) {
    padding: 0 !important;
}

/* Actual Simple Pay form
   Dummy ID raises specificity above Simple Pay's #simpay-form-XXXX rule */
.elementor-3522 .elementor-element.elementor-element-e65da9f form[id^="simpay-form-"]:not(#fin-form-specificity) {
    padding: 0 12px !important;
    margin: 0 !important;
    width: 100% !important;
    max-width: none !important;
    box-sizing: border-box !important;
}




    /* Section headings */
    .elementor-3522 .elementor-element.elementor-element-e65da9f .simpay-form-control h2 {
        margin-top: 22px !important;
        margin-bottom: 14px !important;

        font-size: 20px !important;
        line-height: 1.25 !important;
    }


    /* Payment option cards */
    .elementor-3522 .elementor-element.elementor-element-e65da9f .simpay-multi-plan-list-group label {
        padding: 15px 42px 15px 16px !important;
        font-size: 17px !important;
    }


    /* Payment price / schedule */
    .elementor-3522 .elementor-element.elementor-element-e65da9f .simpay-multi-plan-list-group label small {
        font-size: 14px !important;
        line-height: 1.35 !important;
    }


    /* Reassurance copy */
    .elementor-3522 .elementor-element.elementor-element-e65da9f .simpay-form-control h6 {
        margin-bottom: 16px !important;

        font-size: 13px !important;
        line-height: 1.45 !important;
    }


    /* Field spacing */
    .elementor-3522 .elementor-element.elementor-element-e65da9f .simpay-field-wrap {
        margin-bottom: 14px !important;
    }


    /* Undo desktop Name-field width adjustment */
    .elementor-3522 .elementor-element.elementor-element-e65da9f .simpay-customer-name-wrap {
        width: 100% !important;
    }


    /* Checkout button */
    .elementor-3522 .elementor-element.elementor-element-e65da9f .simpay-payment-btn,
    .elementor-3522 .elementor-element.elementor-element-e65da9f .simpay-checkout-btn,
    .elementor-3522 .elementor-element.elementor-element-e65da9f button[type="submit"] {
        width: 100% !important;
        max-width: none !important;

        min-height: 54px !important;
        padding: 12px 14px !important;

        font-size: 18px !important;
        line-height: 1.2 !important;

        white-space: normal !important;
    }


    /* Keep CTA text and dynamic amount contained */
    .elementor-3522 .elementor-element.elementor-element-e65da9f .simpay-checkout-btn span {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        flex-wrap: wrap !important;
        gap: 4px !important;
    }
}/* End custom CSS */