.elementor-7906 .elementor-element.elementor-element-02fa84d{--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;--align-items:center;--overlay-opacity:1;--margin-top:120px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:60px;--padding-bottom:60px;--padding-left:0px;--padding-right:0px;}.elementor-7906 .elementor-element.elementor-element-02fa84d::before, .elementor-7906 .elementor-element.elementor-element-02fa84d > .elementor-background-video-container::before, .elementor-7906 .elementor-element.elementor-element-02fa84d > .e-con-inner > .elementor-background-video-container::before, .elementor-7906 .elementor-element.elementor-element-02fa84d > .elementor-background-slideshow::before, .elementor-7906 .elementor-element.elementor-element-02fa84d > .e-con-inner > .elementor-background-slideshow::before, .elementor-7906 .elementor-element.elementor-element-02fa84d > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-image:url("https://curranintl.com/wp-content/uploads/2026/02/BG-011.jpg");--background-overlay:'';background-position:top left;background-repeat:no-repeat;}.elementor-7906 .elementor-element.elementor-element-75332fc{--display:flex;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--border-radius:20px 20px 20px 20px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:40px;--padding-bottom:60px;--padding-left:40px;--padding-right:40px;}.elementor-7906 .elementor-element.elementor-element-75332fc:not(.elementor-motion-effects-element-type-background), .elementor-7906 .elementor-element.elementor-element-75332fc > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-primary );}.elementor-7906 .elementor-element.elementor-element-8991723 img{width:72%;}@media(max-width:1024px){.elementor-7906 .elementor-element.elementor-element-8991723 img{width:75%;}}@media(min-width:768px){.elementor-7906 .elementor-element.elementor-element-02fa84d{--content-width:1120px;}.elementor-7906 .elementor-element.elementor-element-75332fc{--width:60%;}}@media(max-width:1366px) and (min-width:768px){.elementor-7906 .elementor-element.elementor-element-02fa84d{--content-width:1120px;}}@media(max-width:1024px) and (min-width:768px){.elementor-7906 .elementor-element.elementor-element-02fa84d{--content-width:1600px;}}@media(min-width:1367px){.elementor-7906 .elementor-element.elementor-element-02fa84d::before, .elementor-7906 .elementor-element.elementor-element-02fa84d > .elementor-background-video-container::before, .elementor-7906 .elementor-element.elementor-element-02fa84d > .e-con-inner > .elementor-background-video-container::before, .elementor-7906 .elementor-element.elementor-element-02fa84d > .elementor-background-slideshow::before, .elementor-7906 .elementor-element.elementor-element-02fa84d > .e-con-inner > .elementor-background-slideshow::before, .elementor-7906 .elementor-element.elementor-element-02fa84d > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-attachment:fixed;}}@media(max-width:1366px){.elementor-7906 .elementor-element.elementor-element-8991723 img{width:309px;}}@media(max-width:767px){.elementor-7906 .elementor-element.elementor-element-02fa84d{--content-width:1600px;--min-height:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-7906 .elementor-element.elementor-element-75332fc{--width:94vw;}.elementor-7906 .elementor-element.elementor-element-8991723 img{width:81%;}}/* Start custom CSS for shortcode, class: .elementor-element-71702e0 */<style>
/* ============================================
   CURRAN FORMS — JOTFORM-STYLE THEME (v5)
   Place in HTML widget ABOVE the Shortcode widget

   IMPORTANT: Uses doubled-class .elementor-7906 .elementor-element.elementor-element-71702e0s to match
   the plugin's own frontend.css specificity level.
   ============================================ */

/* --- White card container --- */
.curran-form-wrapper.curran-form-wrapper {
    background: #fff !important;
    padding: 28px 36px 36px !important;
    border-radius: 4px !important;
    font-family: "Roboto", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
    color: #57647e !important;
    line-height: 1.6 !important;
}

/* --- Form title (centered heading) --- */
.curran-form-wrapper.curran-form-wrapper .curran-form-heading {
    font-size: 28px !important;
    font-weight: 700 !important;
    color: #2c3345 !important;
    text-align: center !important;
    margin: 0 0 8px 0 !important;
    padding: 10px 0 !important;
    line-height: 1.4 !important;
    font-family: inherit !important;
    word-spacing: 4px !important;
    letter-spacing: 0.3px !important;
}

/* --- Subtitle text --- */
.curran-form-wrapper.curran-form-wrapper .curran-form-heading-desc {
    font-size: 15px !important;
    color: #57647e !important;
    text-align: center !important;
    margin: 0 0 20px 0 !important;
    line-height: 1.6 !important;
    font-family: inherit !important;
}

/* --- Section headings ("Contact Information") --- */
.curran-form-wrapper.curran-form-wrapper .curran-field-section-heading,
.curran-form-wrapper.curran-form-wrapper .curran-field-heading,
.curran-form-wrapper.curran-form-wrapper .curran-field-subheading {
    flex: 0 0 100% !important;
    width: 100% !important;
    max-width: 100% !important;
}

.curran-form-wrapper.curran-form-wrapper .curran-section-heading {
    font-size: 18px !important;
    font-weight: 700 !important;
    color: #2c3345 !important;
    margin: 0 !important;
    padding: 0 0 10px 0 !important;
    border-bottom: 1px solid #e8e5e5 !important;
    font-family: inherit !important;
    line-height: 1.3 !important;
}

.curran-form-wrapper.curran-form-wrapper h2 {
    font-size: 28px !important;
    font-weight: 700 !important;
    color: #2c3345 !important;
    font-family: inherit !important;
    margin: 0 0 10px 0 !important;
}

.curran-form-wrapper.curran-form-wrapper h3 {
    font-size: 18px !important;
    font-weight: 700 !important;
    color: #2c3345 !important;
    font-family: inherit !important;
    margin: 0 0 10px 0 !important;
}

.curran-form-wrapper.curran-form-wrapper h4 {
    font-size: 15px !important;
    font-weight: 600 !important;
    color: #2c3345 !important;
    font-family: inherit !important;
    margin: 0 0 8px 0 !important;
}

/* --- Labels --- */
.curran-form-wrapper.curran-form-wrapper .curran-field > label,
.curran-form-wrapper.curran-form-wrapper .curran-field label {
    display: block !important;
    margin-bottom: 8px !important;
    font-weight: 700 !important;
    font-size: 14px !important;
    line-height: 1.3 !important;
    color: #2c3345 !important;
    font-family: inherit !important;
    padding-top: 4px !important;
}

.curran-form-wrapper.curran-form-wrapper .curran-required {
    color: #e2483d !important;
    font-weight: 400 !important;
}

/* --- Input fields (VISIBLE BORDERS) --- */
.curran-form-wrapper.curran-form-wrapper .curran-input {
    width: 100% !important;
    padding: 10px 12px !important;
    border: 1px solid #b8bdc9 !important;
    border-radius: 4px !important;
    font-size: 15px !important;
    line-height: 1.5 !important;
    color: #2c3345 !important;
    background-color: #fff !important;
    transition: border-color 0.15s ease !important;
    outline: none !important;
    height: auto !important;
    font-family: inherit !important;
    box-shadow: none !important;
    -webkit-appearance: none !important;
    appearance: none !important;
    box-sizing: border-box !important;
}

.curran-form-wrapper.curran-form-wrapper .curran-input:hover {
    border-color: #888 !important;
}

.curran-form-wrapper.curran-form-wrapper .curran-input:focus {
    border-color: #4573e1 !important;
    box-shadow: 0 0 0 2px rgba(69, 115, 225, 0.15) !important;
    outline: none !important;
}

.curran-form-wrapper.curran-form-wrapper .curran-input::placeholder {
    color: #b8bdc9 !important;
    opacity: 1 !important;
}

/* --- Also target input/select/textarea directly in case class is missing --- */
.curran-form-wrapper.curran-form-wrapper input[type="text"],
.curran-form-wrapper.curran-form-wrapper input[type="email"],
.curran-form-wrapper.curran-form-wrapper input[type="tel"],
.curran-form-wrapper.curran-form-wrapper input[type="number"],
.curran-form-wrapper.curran-form-wrapper input[type="url"],
.curran-form-wrapper.curran-form-wrapper input[type="date"],
.curran-form-wrapper.curran-form-wrapper select,
.curran-form-wrapper.curran-form-wrapper textarea {
    border: 1px solid #b8bdc9 !important;
    border-radius: 4px !important;
    padding: 10px 12px !important;
    font-size: 15px !important;
    color: #2c3345 !important;
    background-color: #fff !important;
    box-sizing: border-box !important;
    font-family: inherit !important;
    height: auto !important;
}

.curran-form-wrapper.curran-form-wrapper input[type="text"]:focus,
.curran-form-wrapper.curran-form-wrapper input[type="email"]:focus,
.curran-form-wrapper.curran-form-wrapper input[type="tel"]:focus,
.curran-form-wrapper.curran-form-wrapper input[type="number"]:focus,
.curran-form-wrapper.curran-form-wrapper input[type="url"]:focus,
.curran-form-wrapper.curran-form-wrapper input[type="date"]:focus,
.curran-form-wrapper.curran-form-wrapper select:focus,
.curran-form-wrapper.curran-form-wrapper textarea:focus {
    border-color: #4573e1 !important;
    box-shadow: 0 0 0 2px rgba(69, 115, 225, 0.15) !important;
    outline: none !important;
}

/* --- Textarea --- */
.curran-form-wrapper.curran-form-wrapper .curran-textarea-input {
    min-height: 100px !important;
    resize: vertical !important;
}

/* --- Select dropdown --- */
.curran-form-wrapper.curran-form-wrapper select.curran-input {
    cursor: pointer !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath fill='%2357647e' d='M5 6L0 0h10z'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 12px center !important;
    padding-right: 32px !important;
}

/* --- Spacing between fields (rows) --- */
.curran-form-wrapper.curran-form-wrapper .curran-row {
    margin-bottom: 20px !important;
}

.curran-form-wrapper.curran-form-wrapper .curran-field {
    margin-bottom: 0 !important;
}

/* --- Radio buttons (JotForm bordered card style) --- */
.curran-form-wrapper.curran-form-wrapper .curran-radio-group {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
    padding: 4px 0 !important;
}

.curran-form-wrapper.curran-form-wrapper .curran-radio-label {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    font-weight: 400 !important;
    font-size: 15px !important;
    color: #2c3345 !important;
    cursor: pointer !important;
    margin-bottom: 0 !important;
    padding: 12px 20px 12px 14px !important;
    border: 1px solid #b8bdc9 !important;
    border-radius: 4px !important;
    background: #fff !important;
    transition: border-color 0.15s ease, background 0.15s ease !important;
    font-family: inherit !important;
    width: auto !important;
    flex: 0 0 auto !important;
}

.curran-form-wrapper.curran-form-wrapper .curran-radio-label:hover {
    border-color: #4573e1 !important;
    background: #f7f9ff !important;
}

.curran-form-wrapper.curran-form-wrapper .curran-radio-input {
    width: 18px !important;
    height: 18px !important;
    margin: 0 !important;
    cursor: pointer !important;
    accent-color: #4573e1 !important;
}

.curran-form-wrapper.curran-form-wrapper .curran-radio-label:has(.curran-radio-input:checked) {
    border-color: #4573e1 !important;
    background: #f0f4ff !important;
}

/* --- Checkbox toggle switches --- */
.curran-form-wrapper.curran-form-wrapper .curran-checkbox-group {
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
}

.curran-form-wrapper.curran-form-wrapper .curran-checkbox-label {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    font-weight: 400 !important;
    font-size: 15px !important;
    color: #2c3345 !important;
    cursor: pointer !important;
    margin-bottom: 0 !important;
    font-family: inherit !important;
    line-height: 24px !important;
}

/* Checkbox text — vertically centered with toggle */
.curran-form-wrapper.curran-form-wrapper .curran-switch-text {
    display: inline-flex !important;
    align-items: center !important;
    min-height: 24px !important;
    line-height: 1.3 !important;
}

/* Hidden checkbox input (plugin hides it, ensure it stays hidden) */
.curran-form-wrapper.curran-form-wrapper .curran-checkbox-input {
    position: absolute !important;
    opacity: 0 !important;
    width: 0 !important;
    height: 0 !important;
    margin: 0 !important;
    pointer-events: none !important;
}

.curran-form-wrapper.curran-form-wrapper .curran-switch-toggle {
    width: 44px !important;
    height: 24px !important;
    background-color: #d5d9e2 !important;
    border-radius: 12px !important;
    flex-shrink: 0 !important;
    transition: background-color 0.2s ease !important;
}

.curran-form-wrapper.curran-form-wrapper .curran-checkbox-input:checked + .curran-switch-toggle {
    background-color: #4573e1 !important;
}

/* --- Submit button (centered) --- */
.curran-form-wrapper.curran-form-wrapper .curran-submit {
    width: 100% !important;
    margin-top: 16px !important;
    text-align: center !important;
}

.curran-form-wrapper.curran-form-wrapper .curran-submit-button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    padding: 14px 40px !important;
    background-color: #4573e1 !important;
    color: #fff !important;
    border: none !important;
    border-radius: 4px !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    cursor: pointer !important;
    transition: background-color 0.15s ease !important;
    font-family: inherit !important;
    line-height: 1.4 !important;
    letter-spacing: 0.2px !important;
    box-shadow: none !important;
    margin: 0 auto !important;
}

.curran-form-wrapper.curran-form-wrapper .curran-submit-button:hover {
    background-color: #3461cc !important;
}

/* --- Success message --- */
.curran-form-wrapper.curran-form-wrapper .curran-success-alert {
    padding: 20px 24px !important;
    background-color: #e8f5e9 !important;
    border: 1px solid #a5d6a7 !important;
    border-radius: 4px !important;
    color: #2e7d32 !important;
    font-size: 16px !important;
    font-weight: 500 !important;
    text-align: center !important;
}

/* --- Error messages --- */
.curran-form-wrapper.curran-form-wrapper .curran-form-global-error {
    color: #e2483d !important;
    font-size: 14px !important;
    font-weight: 500 !important;
}

.curran-form-wrapper.curran-form-wrapper .curran-field-error {
    color: #e2483d !important;
    font-size: 13px !important;
    font-weight: 500 !important;
}

/* --- Dynamic text / Multi-answer --- */
.curran-form-wrapper.curran-form-wrapper .curran-add-dynamic-field,
.curran-form-wrapper.curran-form-wrapper .curran-add-another {
    padding: 8px 16px !important;
    background-color: #4573e1 !important;
    color: #fff !important;
    border: none !important;
    border-radius: 4px !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    cursor: pointer !important;
    font-family: inherit !important;
}

.curran-form-wrapper.curran-form-wrapper .curran-remove-dynamic-field,
.curran-form-wrapper.curran-form-wrapper .curran-remove-row {
    background: #e2483d !important;
    color: #fff !important;
    border: none !important;
    border-radius: 4px !important;
    cursor: pointer !important;
    padding: 6px 12px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    min-width: 32px !important;
    min-height: 32px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
    vertical-align: middle !important;
}

.curran-form-wrapper.curran-form-wrapper .curran-remove-dynamic-field:hover,
.curran-form-wrapper.curran-form-wrapper .curran-remove-row:hover {
    background: #c82333 !important;
}

/* --- File upload --- */
.curran-form-wrapper.curran-form-wrapper .curran-file-input {
    padding: 10px !important;
    border: 1px dashed #b8bdc9 !important;
    border-radius: 4px !important;
    background: #fafbfc !important;
}

/* --- Help text --- */
.curran-form-wrapper.curran-form-wrapper .curran-field-help {
    font-size: 12px !important;
    color: #8a94a8 !important;
    font-style: italic !important;
    margin-top: 4px !important;
}

/* --- Spinner (hidden by default — JS shows it during submit) --- */
.curran-form-wrapper.curran-form-wrapper .curran-submit-spinner {
    display: none !important;
}

/* Right arrow after "Submit" text instead of spinner */
.curran-form-wrapper.curran-form-wrapper .curran-submit-text::after {
    content: " \2192" !important;
    font-size: 18px !important;
    margin-left: 4px !important;
}

/* --- Elementor popup reset (prevents Elementor from stripping form styles) --- */
.elementor-popup-modal .curran-form-wrapper.curran-form-wrapper .curran-input,
.elementor-popup-modal .curran-form-wrapper.curran-form-wrapper input[type="text"],
.elementor-popup-modal .curran-form-wrapper.curran-form-wrapper input[type="email"],
.elementor-popup-modal .curran-form-wrapper.curran-form-wrapper input[type="tel"],
.elementor-popup-modal .curran-form-wrapper.curran-form-wrapper select,
.elementor-popup-modal .curran-form-wrapper.curran-form-wrapper textarea {
    border: 1px solid #b8bdc9 !important;
    padding: 10px 12px !important;
    background-color: #fff !important;
    color: #2c3345 !important;
    font-size: 15px !important;
    border-radius: 4px !important;
}

/* --- Mobile --- */
@media (max-width: 767px) {
    .curran-form-wrapper.curran-form-wrapper {
        padding: 20px 16px 28px !important;
    }

    .curran-form-wrapper.curran-form-wrapper .curran-form-heading {
        font-size: 22px !important;
    }

    .curran-form-wrapper.curran-form-wrapper .curran-radio-group {
        flex-direction: column !important;
    }

    .curran-form-wrapper.curran-form-wrapper .curran-submit-button {
        width: 100% !important;
    }
}
</style>/* End custom CSS */