.element-15 table.contact-table td {
    vertical-align: top;
    /* padding: 10px 20px; */
    padding: 10px 20px 10px 0;
}

.element-15 .wpt-row {
    display: grid!important;
    grid-template-columns: auto 60%;
}

.element-15.version-1 .wpt-row {
    grid-gap: 30px;
}

.element-15 .frm_form_field {
    margin-bottom: 20px;
    line-height: 1.1
}

.element-15 .frm_form_field input:not([type=checkbox]) {
    height: 45px!important;
}

.element-15 .frm_description {
    font-size: 12px;
    line-height: 2
}

.element-15 .frm_form_field * {
    font-family: var(--wpt-primary-font)!important
}
.element-15 .frm_checkbox {
    padding:5px 0;
}
@media(max-width: 800px) {
    .element-15 .wpt-row {
        grid-template-columns:auto;
    }
}

.element-15 .frm_verify, .frm_screen_reader {
    display: none;
}

.element-15.version-2 .wpt-container {
    max-width: unset!important;
    width: unset!important;
}

.element-15.version-2 .wpt-row {
    grid-template-columns: 1fr 1fr;
}

.element-15.version-2 .wpt-row main {
    padding: 50px;
    font-size: 16px;
    
}
.element-15.version-2.overlap-map-false.rounded-corners-true.white-background-false {
    margin:0!important;
    padding:120px 0;
    background:var(--wpt-page-component-bg-colour);
}
.element-15.version-2.overlap-map-false.white-background-true .wpt-row main {
    background:white!important
}
.element-15.version-2.overlap-map-false.white-background-true {
    background:white!important
}
.element-15.version-2.rounded-corners-false.overlap-map-false.white-background-true {
    margin:0!important;
}
.element-15.version-2.overlap-map-false.white-background-false .wpt-row main {
    /* background:white!important */
}
.element-15.version-2 .wpt-row main aside {
    flex-grow: 1;
}

.element-15.version-2.overlap-map-true .wpt-row main {
    margin-left: -80px;
    margin-right: 50px;
}

.element-15.version-2.overlap-map-true.layout-style-map-right .wpt-row main {
    margin-left: 50px;
    margin-right: -80px;
/* z-index: 13; */}

.element-15.version-2.overlap-map-true.rounded-corners-true .wpt-row main {
    border-radius: 20px;
    filter: drop-shadow(0 2px 1px rgba(0,0,0,0.1));
}

.element-15.version-2 .wpt-row main p {
    font-size: 16px;
}

.element-15.version-2.overlap-map-true .content-column {
    padding: 50px 0;
z-index: 1;}

.element-15.version-2:is(.icon-style-right, .icon-style-left) .form-and-info {
    display: flex;
    align-items: flex-start;
    gap: 30px;
}


.element-15.version-2 .form-and-info {
    margin-top: 2.5em
}

.element-15.version-2:is(.icon-style-right) .form-and-info {
    flex-direction: row-reverse
}

.element-15.version-2:is(.icon-style-right) .form-and-info > * {
    flex-grow: 1;
}

div:is(#poststuff, #page-wrapper) .element-15.version-2:is(.icon-style-right, .icon-style-left) .form-and-info .contact-table {
    max-width: 40%;
    border-left: 3px solid var(--wpt-primary-colour);
    padding: 25px 0 25px 30px!important;
    list-style: none;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 25px
}
div:is(#poststuff, #page-wrapper) .element-15.version-2 .form-and-info aside h3 {
    color:inherit;
    font-size:1.5em;
    display:none;
    
}
div:is(#poststuff, #page-wrapper) .element-15.version-2:is(.icon-style-top) .form-and-info .contact-table {
    padding:0!important;
    display:grid;
    grid-template-columns:1fr 1fr 1fr;
    gap:10px;
}
div:is(#poststuff, #page-wrapper) .element-15.version-2:is(.icon-style-top) .form-and-info .contact-table.international-phone-false {
    grid-template-columns:1fr 1fr;
}
div:is(#poststuff, #page-wrapper) .element-15.version-2:is(.icon-style-top) .form-and-info .contact-table li {
    border:1px solid var(--wpt-primary-colour);
    padding:10px;
    justify-content:center;
    
}
div:is(#poststuff, #page-wrapper) .element-15.version-2:is(.icon-style-top).rounded-corners-true .form-and-info .contact-table li {
    border-radius:27px;
}
div:is(#poststuff, #page-wrapper) .element-15.version-2:is(.icon-style-top) .form-and-info .contact-table li:is(.contact-table-address, .office-hours) {
    width:100%;
    grid-column:1/-1;
    min-height: 45px;
}
div:is(#poststuff, #page-wrapper) .element-15.version-2:is(.icon-style-left) .form-and-info ul.contact-table {
    border-left:unset;
    border-right: 3px solid var(--wpt-primary-colour);
    padding: 25px 30px 25px 0!important;
}

.element-15.version-2 .form-and-info .contact-table li:not(.office-hours) {
    display: flex;
    line-height: 1.2;
    gap: 10px;
}
.element-15.version-2 .form-and-info .contact-table li.office-hours {
    list-style:none;
}
.element-15.version-2 .form-and-info .contact-table li.office-hours :is(h1,h2,h3,h4,h5,h6){
    font-size:1.3em;
    margin-top:0
}
.element-15.version-2 .form-and-info .contact-table li i {
    color: var(--wpt-primary-colour);
    font-size: 24px;
    min-width: 30px;
    max-width: 30px;
    text-align: center;
    margin-top: -1px;
}

.element-15.version-2 .form-and-info .contact-table li a {
    color: inherit;
}

.element-15.version-2 h2.wpt-title {
    padding:0!important
}
.element-15.version-2 .title-underline {
    background:var(--wpt-primary-colour);
    margin-left:0!important;
}

.element-15.version-2 .frm_forms fieldset {
    border: 0;
    padding: 0;
    margin: 0;
}

.element-15.version-2 .frm_forms :is(input[type=text],input[type=email],textarea, input[type=tel], input[type=number]) {
    width: 100%;
    border: 1px solid rgba(0,0,0,0.2);
    font-size: 16px;
    padding: 20px 15px;
}

.element-15.version-2 .frm_forms select {
    padding-top: unset;
    padding-bottom: unset;
    min-height: 44px;
    font-size: 16px;
}

.element-15.version-2.rounded-corners-true form :is(input[type=text],input[type=email],textarea, input[type=tel], select, input[type=number]) {
    border-radius: 27px
}

.element-15.version-2 .frm_form_field {
    margin: 0!important;
}

.element-15.version-2 .frm_fields_container {
    grid-row-gap: 15px!important;
}

.element-15.version-2 .frm_fields_container * {
    font-family: var(--content-font-family)!important
}

.element-15.version-2 .map-container {
    overflow: hidden;
    position:relative;
    
}
.element-15.version-2 .map-container img {
    width:100%;
    height:100%;
    object-fit:cover;
    position:absolute;
}

.element-15.version-2.rounded-corners-true.overlap-map-true.layout-style-map-left:not([style*=background]) .map-container,
.element-15.version-2.rounded-corners-true.layout-style-map-left .map-container {
    border-radius: 0 20px 20px 0;
}

.element-15.version-2.rounded-corners-true.overlap-map-true.layout-style-map-right:not([style*=background]) .map-container,
.element-15.version-2.rounded-corners-true.layout-style-map-right .map-container{
    border-radius: 20px 0 0 20px;
}

.element-15.version-2 .map-container iframe {
    margin: -200px;
    width: calc(100% + 400px);
    height: calc(100% + 400px);
}

.element-15.version-2 .frm_style_formidable-style.with_frm_style .frm_error {
    text-align: center;
    padding-top: 5px;
}

.element-15.version-2 .frm_button_submit {
    display: flex;
    align-items: center;
    gap: 10px;
    line-height: 1;
}

.element-15.version-2 .frm_button_submit:after {
    content: '\f054';
    font-family: 'font awesome 5 pro';
    font-size: 12px;
    transition: 0.2s ease;
}

.element-15.version-2 .frm_button_submit:hover:after {
    transform: translateX(100%);
}

.element-15.version-2.layout-style-map-right .map-container {
    order: 1
}

div:is(#poststuff, #page-wrapper) .element-15.version-2.icon-style-top .form-and-info h3 {
        display:block;
        margin-bottom:1em!important;
        margin-top:2em!important;
    }
    div:is(#poststuff, #page-wrapper) .element-15.version-2.icon-style-top .form-and-info h3:after {
        content:'';
        display:block;
        width:100px;
        height:4px;
        background:var(--wpt-primary-colour);
        margin-top:0.7em;
    }
.element-15.version-2.overlap-map-true.white-background-true {
    background:var(--wpt-page-component-bg-colour);
    margin:0!important;
    padding:120px 0;
}
.element-15.version-2.overlap-map-true.white-background-true main {
    background:white!important;
}

.element-15.version-2 .title-underline {
    background: var(--section-feature-color);
}

div:is(#poststuff, #page-wrapper) .element-15.version-2:is(.icon-style-right, .icon-style-left) .form-and-info .contact-table {
    border-color: var(--section-feature-color);
}

.element-15.version-2 .form-and-info .contact-table li i {
    color: var(--section-feature-color);
}

.element-15.version-2 .frm_button_submit {
    background: var(--section-feature-color) !important;
}

@media(max-width: 1100px) {
    .element-15.version-2 .wpt-row {
        grid-template-columns:1fr
    }
    .element-15.version-2.layout-style-map-left .map-container{
     order:1
    }

    .element-15.version-2 .map-container {
        height: 400px;
        border-radius: 0!important;
    }
    .element-15.version-2.overlap-map-true .content-column {
        padding:0;
    }
    .element-15.version-2.overlap-map-true.rounded-corners-true .wpt-row main {
        margin:0 15px;
        padding:30px;
        border-radius:20px 20px 0 0
    }
    .element-15.version-2.rounded-corners-true .map-container {
        margin:0 15px;
        border-radius:0 0 20px 20px!important;
    }
    .element-15.version-2.overlap-map-true.rounded-corners-false .wpt-row main {
        margin:0;
        padding:30px
    }

}
@media(max-width: 800px) {
        .element-15.version-2:is(.icon-style-right, .icon-style-left) .form-and-info {
        flex-direction:column;
    }
    .element-15.version-2:is(.icon-style-right, .icon-style-left) .form-and-info > * {
        width:100%;
        max-width:unset!important;
    }
    div:is(#poststuff, #page-wrapper) .element-15.version-2:is(.icon-style-top) .form-and-info .contact-table {
        grid-template-columns:1fr;
    }
    div:is(#poststuff, #page-wrapper) .element-15.version-2:is(.icon-style-top) .form-and-info .contact-table li {
        justify-content:flex-start
    }
    div:is(#poststuff, #page-wrapper) .element-15.version-2 .form-and-info h3 {
        display:block;
        margin-bottom:1em!important;
        margin-top:2em!important;
    }
    div:is(#poststuff, #page-wrapper) .element-15.version-2 .form-and-info h3:after {
        content:'';
        display:block;
        width:100px;
        height:4px;
        background:var(--wpt-primary-colour);
        margin-top:0.7em;
    }
    .element-15.version-2.overlap-map-true.white-background-true,
    .element-15.version-2[style*="background"]{
        padding:60px 0!important;
    }
    
}

