.elementor-1107 .elementor-element.elementor-element-b521400{--display:flex;--min-height:500px;--justify-content:center;--gap:72px 72px;--row-gap:72px;--column-gap:72px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1107 .elementor-element.elementor-element-b521400:not(.elementor-motion-effects-element-type-background), .elementor-1107 .elementor-element.elementor-element-b521400 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://marineseo.com/wp-content/uploads/2020/02/h2-rev-background-img-1.jpg");background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-1107 .elementor-element.elementor-element-fa4c302{--display:flex;--gap:8px 8px;--row-gap:8px;--column-gap:8px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-1107 .elementor-element.elementor-element-4ea8bd3 > .elementor-widget-container{margin:0px 0px -5px 0px;}.elementor-1107 .elementor-element.elementor-element-4ea8bd3 .elementor-heading-title{text-shadow:1px 1px 3px rgba(0, 0, 0, 0.72);color:var( --e-global-color-e60fe01 );}.elementor-1107 .elementor-element.elementor-element-a12add6 > .elementor-widget-container{margin:0px 0px -5px 0px;}.elementor-1107 .elementor-element.elementor-element-a12add6 .elementor-heading-title{text-shadow:1px 1px 3px rgba(0, 0, 0, 0.72);color:var( --e-global-color-e60fe01 );}.elementor-1107 .elementor-element.elementor-element-26a6f27{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--gap:72px 72px;--row-gap:72px;--column-gap:72px;--padding-top:120px;--padding-bottom:120px;--padding-left:0px;--padding-right:0px;}.elementor-1107 .elementor-element.elementor-element-26a6f27:not(.elementor-motion-effects-element-type-background), .elementor-1107 .elementor-element.elementor-element-26a6f27 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://marineseo.com/wp-content/uploads/2020/01/h4-img-9.png");background-position:top left;background-repeat:no-repeat;background-size:cover;}.elementor-1107 .elementor-element.elementor-element-b59b8e0{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1107 .elementor-element.elementor-element-b59b8e0:not(.elementor-motion-effects-element-type-background), .elementor-1107 .elementor-element.elementor-element-b59b8e0 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://marineseo.com/wp-content/uploads/2020/01/h4-img-8-2.jpg");background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-1107 .elementor-element.elementor-element-b59b8e0.e-con{--align-self:stretch;}.elementor-1107 .elementor-element.elementor-element-80907bb{--display:flex;--gap:32px 32px;--row-gap:32px;--column-gap:32px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1107 .elementor-element.elementor-element-003ef65{--display:flex;--gap:8px 8px;--row-gap:8px;--column-gap:8px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1107 .elementor-element.elementor-element-e57142c > .elementor-widget-container{margin:0px 0px -5px 0px;}.elementor-1107 .elementor-element.elementor-element-e57142c .elementor-heading-title{color:var( --e-global-color-98f0f52 );}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-1107 .elementor-element.elementor-element-c7d821d > .elementor-widget-container{margin:0px 0px 0px 0px;}@media(max-width:1024px){.elementor-1107 .elementor-element.elementor-element-b521400{--min-height:320px;--gap:56px 56px;--row-gap:56px;--column-gap:56px;}.elementor-1107 .elementor-element.elementor-element-26a6f27{--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:40px 40px;--row-gap:40px;--column-gap:40px;--padding-top:72px;--padding-bottom:72px;--padding-left:0px;--padding-right:0px;}}@media(min-width:768px){.elementor-1107 .elementor-element.elementor-element-b521400{--content-width:1200px;}.elementor-1107 .elementor-element.elementor-element-26a6f27{--content-width:1200px;}.elementor-1107 .elementor-element.elementor-element-b59b8e0{--width:64%;}}@media(max-width:1024px) and (min-width:768px){.elementor-1107 .elementor-element.elementor-element-b521400{--content-width:700px;}.elementor-1107 .elementor-element.elementor-element-26a6f27{--content-width:700px;}.elementor-1107 .elementor-element.elementor-element-b59b8e0{--width:72%;}}@media(max-width:767px){.elementor-1107 .elementor-element.elementor-element-b521400{--content-width:300px;--min-height:184px;--gap:40px 40px;--row-gap:40px;--column-gap:40px;}.elementor-1107 .elementor-element.elementor-element-26a6f27{--content-width:300px;--flex-direction:row-reverse;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap-reverse;--gap:24px 24px;--row-gap:24px;--column-gap:24px;--padding-top:56px;--padding-bottom:56px;--padding-left:0px;--padding-right:0px;}.elementor-1107 .elementor-element.elementor-element-b59b8e0{--min-height:400px;}.elementor-1107 .elementor-element.elementor-element-80907bb{--gap:24px 24px;--row-gap:24px;--column-gap:24px;}}/* Start custom CSS for wp-widget-wpforms-widget, class: .elementor-element-c7d821d *//* =========================================================
   WPFORMS - CONTACT FORM STYLING
   Form ID: 13085

   Label font: Josefin Sans
   Input font: Source Sans Pro
   Submit: Primary teal wave button
   No extra spacing above / below form
   ========================================================= */


/* =========================================================
   PRIMARY WAVE BUTTON VARIABLES
   ========================================================= */

.elementor-1107 .elementor-element.elementor-element-c7d821d {
    --wave-bg: #0DE9DF;
    --wave-hover-bg: #0CD2C9;

    --wave-text: #FFFFFF;
    --wave-hover-text: #FFFFFF;
}


/* =========================================================
   REMOVE EXTRA SPACE AROUND ENTIRE FORM
   ========================================================= */

.elementor-1107 .elementor-element.elementor-element-c7d821d,
.elementor-1107 .elementor-element.elementor-element-c7d821d .elementor-widget-container,
.elementor-1107 .elementor-element.elementor-element-c7d821d .wpforms-container,
.elementor-1107 .elementor-element.elementor-element-c7d821d .wpforms-container-full,
.elementor-1107 .elementor-element.elementor-element-c7d821d .wpforms-form {
    margin-top: 0 !important;
    margin-bottom: 0 !important;

    padding-top: 0 !important;
    padding-bottom: 0 !important;
}


/* WPForms outer container */
.elementor-1107 .elementor-element.elementor-element-c7d821d .wpforms-container,
.elementor-1107 .elementor-element.elementor-element-c7d821d .wpforms-container-full {
    width: 100% !important;
    max-width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;

    box-sizing: border-box !important;
}


/* Actual form */
.elementor-1107 .elementor-element.elementor-element-c7d821d .wpforms-form {
    width: 100% !important;
    max-width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;

    box-sizing: border-box !important;
}


/* =========================================================
   FIELD CONTAINER / INDIVIDUAL FIELDS
   Keep everything inside widget boundaries
   ========================================================= */

.elementor-1107 .elementor-element.elementor-element-c7d821d .wpforms-field-container {
    width: 100% !important;
    max-width: 100% !important;

    margin-left: 0 !important;
    margin-right: 0 !important;

    padding-left: 0 !important;
    padding-right: 0 !important;

    box-sizing: border-box !important;
}

.elementor-1107 .elementor-element.elementor-element-c7d821d .wpforms-field {
    width: 100% !important;
    max-width: 100% !important;

    margin-left: 0 !important;
    margin-right: 0 !important;

    padding-left: 0 !important;
    padding-right: 0 !important;

    box-sizing: border-box !important;
}


/* =========================================================
   REMOVE EXTRA SPACE AT VERY TOP OF FIRST FIELD
   ========================================================= */

.elementor-1107 .elementor-element.elementor-element-c7d821d .wpforms-field-container > .wpforms-field:first-child {
    margin-top: 0 !important;
    padding-top: 0 !important;
}


/* =========================================================
   REMOVE EXTRA SPACE BELOW LAST VISIBLE FIELD
   ========================================================= */

.elementor-1107 .elementor-element.elementor-element-c7d821d #wpforms-13085-field_3-container {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}


/* =========================================================
   FIELD LABELS

   Josefin Sans
   Uppercase
   #222222
   12px
   700
   1.41em line height
   0.1em letter spacing
   ========================================================= */

.elementor-1107 .elementor-element.elementor-element-c7d821d .wpforms-field-label,
.elementor-1107 .elementor-element.elementor-element-c7d821d .wpforms-field-sublabel {
    display: block !important;

    margin-top: 0 !important;
    margin-right: 0 !important;
    margin-bottom: 6px !important;
    margin-left: 0 !important;

    padding: 0 !important;

    font-family: "Josefin Sans", sans-serif !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    line-height: 1.41em !important;
    letter-spacing: 0.1em !important;

    text-transform: uppercase !important;

    color: #222222 !important;
}


/* =========================================================
   INPUTS / TEXTAREA
   Force full width without overflowing
   ========================================================= */

.elementor-1107 .elementor-element.elementor-element-c7d821d input[type="text"],
.elementor-1107 .elementor-element.elementor-element-c7d821d input[type="email"],
.elementor-1107 .elementor-element.elementor-element-c7d821d input[type="url"],
.elementor-1107 .elementor-element.elementor-element-c7d821d input[type="tel"],
.elementor-1107 .elementor-element.elementor-element-c7d821d input[type="number"],
.elementor-1107 .elementor-element.elementor-element-c7d821d textarea,
.elementor-1107 .elementor-element.elementor-element-c7d821d select {
    display: block !important;

    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;

    margin-left: 0 !important;
    margin-right: 0 !important;

    box-sizing: border-box !important;
}


/* =========================================================
   INPUT TEXT

   Source Sans Pro
   16px
   #858585
   ========================================================= */

.elementor-1107 .elementor-element.elementor-element-c7d821d input[type="text"],
.elementor-1107 .elementor-element.elementor-element-c7d821d input[type="email"],
.elementor-1107 .elementor-element.elementor-element-c7d821d input[type="url"],
.elementor-1107 .elementor-element.elementor-element-c7d821d input[type="tel"],
.elementor-1107 .elementor-element.elementor-element-c7d821d input[type="number"],
.elementor-1107 .elementor-element.elementor-element-c7d821d textarea {
    font-family: "Source Sans Pro", sans-serif !important;
    font-size: 16px !important;
    font-weight: 400 !important;

    color: #858585 !important;
}


/* =========================================================
   PLACEHOLDER TEXT

   Source Sans Pro
   16px
   #D7D7D7
   ========================================================= */

.elementor-1107 .elementor-element.elementor-element-c7d821d input[type="text"]::placeholder,
.elementor-1107 .elementor-element.elementor-element-c7d821d input[type="email"]::placeholder,
.elementor-1107 .elementor-element.elementor-element-c7d821d input[type="url"]::placeholder,
.elementor-1107 .elementor-element.elementor-element-c7d821d input[type="tel"]::placeholder,
.elementor-1107 .elementor-element.elementor-element-c7d821d input[type="number"]::placeholder,
.elementor-1107 .elementor-element.elementor-element-c7d821d textarea::placeholder {
    font-family: "Source Sans Pro", sans-serif !important;
    font-size: 16px !important;
    font-weight: 400 !important;

    color: #D7D7D7 !important;

    opacity: 1 !important;
}


/* Safari / WebKit placeholder support */
.elementor-1107 .elementor-element.elementor-element-c7d821d input::-webkit-input-placeholder,
.elementor-1107 .elementor-element.elementor-element-c7d821d textarea::-webkit-input-placeholder {
    font-family: "Source Sans Pro", sans-serif !important;
    font-size: 16px !important;

    color: #D7D7D7 !important;

    opacity: 1 !important;
}


/* =========================================================
   NAME FIELD ROWS / BLOCKS
   Prevent WPForms column widths from causing overflow
   ========================================================= */

.elementor-1107 .elementor-element.elementor-element-c7d821d .wpforms-field-row {
    width: 100% !important;
    max-width: 100% !important;

    margin-left: 0 !important;
    margin-right: 0 !important;

    padding-left: 0 !important;
    padding-right: 0 !important;

    box-sizing: border-box !important;
}

.elementor-1107 .elementor-element.elementor-element-c7d821d .wpforms-field-row-block {
    box-sizing: border-box !important;
}


/* =========================================================
   SUBMIT CONTAINER
   ========================================================= */

.elementor-1107 .elementor-element.elementor-element-c7d821d .wpforms-submit-container {
    width: 100% !important;
    max-width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;

    box-sizing: border-box !important;
}


/* =========================================================
   SUBMIT BUTTON
   PRIMARY TEAL WAVE BUTTON

   Desktop + Tablet:
   12px
   2em line height
   .2em letter spacing

   Padding:
   13px top
   9px bottom
   ========================================================= */

.elementor-1107 .elementor-element.elementor-element-c7d821d .wpforms-submit {
    position: relative !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: 100% !important;
    max-width: 100% !important;

    margin: 0 !important;

    padding-top: 13px !important;
    padding-right: 15px !important;
    padding-bottom: 9px !important;
    padding-left: 15px !important;

    box-sizing: border-box !important;

    overflow: hidden !important;
    isolation: isolate !important;

    background-color: var(--wave-bg) !important;

    color: var(--wave-text) !important;

    border: 0 !important;

    font-size: 12px !important;
    line-height: 2em !important;
    letter-spacing: 0.2em !important;

    cursor: pointer !important;

    transition:
        color 0.3s cubic-bezier(.25, .46, .45, .94) !important;
}


/* =========================================================
   WAVE SHAPE
   ========================================================= */

.elementor-1107 .elementor-element.elementor-element-c7d821d .wpforms-submit::before {
    content: "";

    position: absolute !important;

    left: 0 !important;
    bottom: 0 !important;

    display: block !important;

    width: 2200px !important;
    height: 126px !important;

    margin: 0 !important;
    padding: 0 !important;

    background-color: var(--wave-hover-bg) !important;

    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='172' height='126' viewBox='0 0 172 125.7'%3E%3Cpath fill='%23000000' d='M173,22.7c-33.9,0-44.7-14.1-88.4-14.1c-43.6,0-54.5,14.1-86,14.1V126l174.4-0.3C173,125.7,173,28.7,173,22.7z'/%3E%3C/svg%3E") !important;

    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='172' height='126' viewBox='0 0 172 125.7'%3E%3Cpath fill='%23000000' d='M173,22.7c-33.9,0-44.7-14.1-88.4-14.1c-43.6,0-54.5,14.1-86,14.1V126l174.4-0.3C173,125.7,173,28.7,173,22.7z'/%3E%3C/svg%3E") !important;

    -webkit-mask-repeat: repeat-x !important;
    mask-repeat: repeat-x !important;

    -webkit-mask-size: 172px 126px !important;
    mask-size: 172px 126px !important;

    -webkit-mask-position: 0 0 !important;
    mask-position: 0 0 !important;

    transform: translateY(100%) !important;

    transition:
        transform 2s cubic-bezier(.25, .46, .45, .94) !important;

    pointer-events: none !important;

    z-index: -1 !important;
}


/* =========================================================
   HOVER IN
   ========================================================= */

.elementor-1107 .elementor-element.elementor-element-c7d821d .wpforms-submit:hover::before {
    transform: translateY(0) !important;

    -webkit-mask-position: -172px 0 !important;
    mask-position: -172px 0 !important;

    transition:
        transform 2s cubic-bezier(.25, .46, .45, .94),
        -webkit-mask-position 2s cubic-bezier(.25, .46, .45, .94),
        mask-position 2s cubic-bezier(.25, .46, .45, .94) !important;
}


/* =========================================================
   HOVER / FOCUS STATE
   ========================================================= */

.elementor-1107 .elementor-element.elementor-element-c7d821d .wpforms-submit:hover,
.elementor-1107 .elementor-element.elementor-element-c7d821d .wpforms-submit:focus {
    background-color: var(--wave-bg) !important;

    color: var(--wave-hover-text) !important;

    border: 0 !important;
}


/* =========================================================
   LOADING SPINNER
   ========================================================= */

.elementor-1107 .elementor-element.elementor-element-c7d821d .wpforms-submit-spinner {
    flex: 0 0 auto !important;
}


/* =========================================================
   MOBILE
   0 - 767px

   Force all fields to stay inside widget
   Stack name field blocks
   Mobile-specific button typography
   ========================================================= */

@media (max-width: 767px) {

    .elementor-1107 .elementor-element.elementor-element-c7d821d,
    .elementor-1107 .elementor-element.elementor-element-c7d821d .elementor-widget-container,
    .elementor-1107 .elementor-element.elementor-element-c7d821d .wpforms-container,
    .elementor-1107 .elementor-element.elementor-element-c7d821d .wpforms-container-full,
    .elementor-1107 .elementor-element.elementor-element-c7d821d .wpforms-form,
    .elementor-1107 .elementor-element.elementor-element-c7d821d .wpforms-field-container,
    .elementor-1107 .elementor-element.elementor-element-c7d821d .wpforms-field {
        width: 100% !important;
        max-width: 100% !important;

        margin-left: 0 !important;
        margin-right: 0 !important;

        box-sizing: border-box !important;
    }


    /* WPForms rows */
    .elementor-1107 .elementor-element.elementor-element-c7d821d .wpforms-field-row {
        display: block !important;

        width: 100% !important;
        max-width: 100% !important;

        margin-left: 0 !important;
        margin-right: 0 !important;

        padding-left: 0 !important;
        padding-right: 0 !important;
    }


    /* First Name / Last Name and any other row blocks */
    .elementor-1107 .elementor-element.elementor-element-c7d821d .wpforms-field-row-block,
    .elementor-1107 .elementor-element.elementor-element-c7d821d .wpforms-field-name-first,
    .elementor-1107 .elementor-element.elementor-element-c7d821d .wpforms-field-name-last {
        display: block !important;

        float: none !important;

        width: 100% !important;
        max-width: 100% !important;

        margin-left: 0 !important;
        margin-right: 0 !important;

        padding-left: 0 !important;
        padding-right: 0 !important;

        box-sizing: border-box !important;
    }


    /* Prevent WPForms "medium" width from limiting fields */
    .elementor-1107 .elementor-element.elementor-element-c7d821d .wpforms-field-medium {
        width: 100% !important;
        max-width: 100% !important;
    }


    /* Every visible form control */
    .elementor-1107 .elementor-element.elementor-element-c7d821d input[type="text"],
    .elementor-1107 .elementor-element.elementor-element-c7d821d input[type="email"],
    .elementor-1107 .elementor-element.elementor-element-c7d821d input[type="url"],
    .elementor-1107 .elementor-element.elementor-element-c7d821d input[type="tel"],
    .elementor-1107 .elementor-element.elementor-element-c7d821d input[type="number"],
    .elementor-1107 .elementor-element.elementor-element-c7d821d textarea,
    .elementor-1107 .elementor-element.elementor-element-c7d821d select {
        display: block !important;

        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;

        margin-left: 0 !important;
        margin-right: 0 !important;

        box-sizing: border-box !important;
    }


    /* Mobile button typography */
    .elementor-1107 .elementor-element.elementor-element-c7d821d .wpforms-submit {
        font-size: 13px !important;
        line-height: 1.85em !important;
        letter-spacing: 0.16em !important;

        padding-top: 13px !important;
        padding-bottom: 9px !important;
    }
}

/* =========================================================
   MOBILE INPUT WIDTH FIX
   Single-line fields are extending ~8px past widget
   ========================================================= */

@media (max-width: 767px) {

    .elementor-1107 .elementor-element.elementor-element-c7d821d input[type="text"],
    .elementor-1107 .elementor-element.elementor-element-c7d821d input[type="email"],
    .elementor-1107 .elementor-element.elementor-element-c7d821d input[type="url"],
    .elementor-1107 .elementor-element.elementor-element-c7d821d input[type="tel"],
    .elementor-1107 .elementor-element.elementor-element-c7d821d input[type="number"] {
        display: block !important;

        width: calc(100% - 8px) !important;
        max-width: calc(100% - 8px) !important;
        min-width: 0 !important;

        margin-left: 0 !important;
        margin-right: 0 !important;

        box-sizing: border-box !important;
    }
}/* End custom CSS */