/*
* Prefixed by https://autoprefixer.github.io
* PostCSS: v7.0.29,
* Autoprefixer: v9.7.6
* Browsers: last 4 version
*/

/*
Theme Name:     Chaplin-child
Theme URI:
Description:    Chaplin child theme.
Author:         The TherapyTribe team
Author URI:
Template:       chaplin
Version:        0.1.0
*/

html { height:100%; }
body.video-chat-page { height:100%; /*position:absolute; top:0; bottom:0; right:0; left:0;*/ }

body {
    font-family: 'Source Sans Pro', sans-serif;
}

.btn-primary {
    padding: 1em;
    width: 160px;
}

.btn-secondary {
    background-color: #fff;
    border: 2px solid #007c89;
    color: #007c89;
    padding: 1em;
    width: 160px;

}

.btn-tertiary {
    display: inline-block;
    background-color: #007c89;
    color: #FFF !important;
    border: 2px solid #007c89;
    padding: 0.5em 1em;
    border-radius: 4px;
    cursor: pointer;
    text-decoration: none;
    text-align: center;
}
.btn-quaternary {
    display: inline-block;
    background-color: #f3f7ff !important;
    color: #007C89 !important;
    border: 2px solid #f3f7ff !important;
    padding: 0.5em 1em;
    border-radius: 4px;
    cursor: pointer;
    text-decoration: none;
}
.btn-icon-center {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: space-evenly;
        -ms-flex-pack: space-evenly;
            justify-content: space-evenly;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}

.btn-primary:hover,
.btn-secondary:hover {
    text-decoration: none;
}

.btn-primary:hover span,
.btn-secondary:hover span {
    text-decoration: underline;
}

ion-icon {
    color: #007c89;
}

.ion-icon-large {
    font-size: 1.25em;
}

.ion-icon-center-vertical {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}

.ion-icon-center-vertical span {
    padding-left: 0.7em;
}

.ion-icon-center-vertical span.padding-right {
    padding-right: 8px;
    padding-left: 0;
}

ion-icon.vertical-center {
    position: relative;
    top: 0.2em;
}

.hidden {
    display: none !important;
}

.invisible {
    visibility: hidden;
    height: 1px;
}

.primary-color {
    color: #007C89;
}

.payment-status-unauthorized,
.payment-status-unpaid {
    color: red;
}

.tt-table-no-borders,
.tt-table-no-borders table,
.tt-table-no-borders table tr,
.tt-table-no-borders table th,
.tt-table-no-borders table td {
    border: 0 !important;
}
/*
.tt-completed,
.tt-not-completed {
    vertical-align: middle;
}
*/

.tt-completed ion-icon,
.tt-not-completed ion-icon {
    margin: 0 auto;
}


.tt-completed,
.tt-completed ion-icon {
    color: green;
}

.tt-not-completed,
.tt-not-completed ion-icon {
    color: red;
}
.text-align-left {
    text-align: left;
}
.text-align-center {
    text-align: center;
}
.align-right {
    text-align: right;
}
.font-size-xl { font-size: 1.25em; }
.font-size-l { font-size: 1.1em; }
.font-size-xs { font-size: 0.8em; }
.font-weight-bold { font-weight: bold; }
.margin-top-8 {
    margin-top: 8px;
}
.margin-top-30 {
    margin-top: 30px;
}
.margin-bottom-30 {
    margin-bottom: 30px;
}
.tt-padding-large {
    padding: 16px;
}

.padding-top-30 {
    padding-top: 30px !important;
}


/* General */
.tt-tip {
    color: #444c5c;
    padding: 10px 0;
    margin-bottom: -20px;
}
.tt-tip-disclaimer {
    padding: 0.5em 0;
    font-style: italic;
}
.tt-flex {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
}
.tt-flex-center {
    justify-content: center;
}
.tt-flex-columns {
    flex-direction: column;
}
.tt-flex-align-start {
    align-items: start;
}
.tt-flex-align-center {
    align-items: center;
}
.tt-flex-justify-left {
    justify-content: left;
}

.tt-flex .page-header-main {
    padding-right: 24px;
}

.tt-box,
#rcp_lostpassword_form,
#rcp_password_form {
    padding: 20px;
    box-shadow: 0 0 12px 3px #E1E1E3;
    border-radius: 8px;
}

.tt-border {
    padding: 12px;
    border: 0.1rem solid #E1E1E3;
    border-radius: 0.3rem;
}

.text-align-center {
    text-align: center;
}

.margin-top-none {
    margin-top: 0;
}
.margin-bottom-8 {
    margin-bottom: 8px !important;
}

.os-item-price {
    white-space: nowrap;
}


/* Spinner */
.spinner-img {
  height: 60px;
  width: auto;
  margin: auto;
  animation: loading-spinner-img 1s linear infinite;
}

@keyframes loading-spinner-img {
    0% {
        transform: rotate(0deg);
    }
    25% {
        transform: rotate(90deg);
    }
    50% {
        transform: rotate(180deg);
    }
    75% {
        transform: rotate(270deg);
    }
    100% {
        transform: rotate(360deg);
    }
}


/* Header */
#site-header {
    margin-bottom: 0;
}

@media (min-width: 700px) {
    #site-header {
        margin-bottom: 0;
    }
}

/* Footer */

footer.footer-client-dashboard {
    color: #8e97b3;
    text-align: center;
    margin-top: 0;
}
footer.footer-client-dashboard .footer-inner {
    padding-top: 0;
}
footer.footer-client-dashboard a {
    color: #007C89;
}

footer img.tt-logo {
    width: 50px;
    margin: 0 auto;
    padding-top: 20px;
    padding-bottom: 10px;
}



@media (min-width: 1000px) {
    .footer-inner {
        padding: 2rem 0;
    }
    .footer-inner.has-footer-menu {
        display: grid;
        text-align: center;
        align-items: center;
        justify-content: center;
    }
    .footer-inner.has-footer-menu .footer-menu {
        margin-bottom: 1rem;
    }
}

#site-footer {
    margin-top: 1rem;
}

@media (min-width: 700px) {
    #site-footer {
        margin-top: 1rem;
    }
}

/* RCP pages */
/* RCP page - register */
main.simple-rcp-template.container {
    max-width: 800px;
}

.tt-rcp-register-form-container {
}

main.simple-rcp-template .heading-image {
    width: 300px;
    margin: 0 auto;
}
/* Temporarily hide */
.rcp_registration_total {
    display: none;
}

/* RCP login */
#rcp_login_form,
#rcp_lostpassword_form,
#rcp_password_form {
    width: 360px;
    max-width: 90%;
    margin: 20px auto;
}
#rcp_login_form h3 {
    text-align: center;
}
.rcp_lost_password a {
    text-decoration: none;
    font-size: 14px;
}

.rcp_form,
.rcp_form input {
    font-size: 15px;
}
form.rcp_form input {
    background-color: #FFFFFF;
}
form.rcp_form input[type=submit] {
    background-color: #007C89;
}
form#rcp_registration_form {
    padding: 16px;
}
#rcp_registration_form p {
    margin-bottom: 16px;
}
.rcp_form label {
    font-weight: 400;
}

.rcp_form .rcp_user_fieldset input {
    max-width: 100% !important;
}
.rcp_form .rcp_user_fieldset label {
    display: block !important;
}


/* Hide/show relevant parts of monthly date selection */

.bookings-daily-agents .os-current-month-label-w {
    display: none;
}

.latepoint-step-content .calendar-controls.tt-calendar-month {
    display: none;
}


/* Seelct CSS */
.select-css {
	display: block;
	font-size: 16px;
	/*font-family: sans-serif;*/
	/*font-weight: 700;*/
	/*color: #444;*/
	/*line-height: 1.3;*/
	padding: 0 2em 0 8px ;
	width: 100%;
	max-width: 100%;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	margin: 0;
	border: 1px solid #007C89;
	/*box-shadow: 0 1px 0 1px rgba(0,0,0,.04);*/
	border-radius: 4px;
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	background-color: transparent;
	background-image: url('data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23007C89%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E'),
	  -webkit-gradient(linear, left top, left bottom, from(transparent), to(transparent));
	background-image: url('data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23007C89%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E'),
	  -o-linear-gradient(top, transparent 0%, transparent 100%);
	background-image: url('data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23007C89%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E'),
	  linear-gradient(to bottom, transparent 0%, transparent 100%);
	background-repeat: no-repeat, repeat;
	background-position: right .7em top 50%, 0 0;
	background-size: .65em auto, 100%;
}
.select-css::-ms-expand {
	display: none;
}
.select-css:hover {
	/*border-color: #888;*/
}
.select-css:focus {
	/*border-color: #aaa;
	box-shadow: 0 0 1px 3px rgba(59, 153, 252, .7);
	box-shadow: 0 0 0 3px -moz-mac-focusring;
	color: #222;
	outline: none;*/
    outline: none;
}
.select-css option {

	font-weight:normal;
}


/* General */
.checkbox {
    display: inline-flex;
    cursor: pointer;
    position: relative;
}

.checkbox > span {
    font-size: 14px;
    font-weight: 400;
    line-height: 20px;
    align-self: center;
    padding-left: 2px;
}

.checkbox > input {
    height: 18px;
    width: 18px;
    -webkit-appearance: none;
    -moz-appearance: none;
    -o-appearance: none;
    appearance: none;
    border: 1px solid #007C89;
    border-radius: 4px;
    outline: none;
    /*transition-duration: 0.3s;*/
    background-color: transparent;
    cursor: pointer;
    margin: 3px 3px 3px 4px;
  }

.checkbox > input:checked {
    border: 1px solid #007C89;
    background-color: transparent;
}

.checkbox > input:checked + span::before {
    content: '\2713';
    display: block;
    text-align: center;
    color: #007C89;
    position: absolute;
    left: 0;
    top: 0;
    width: 18px;
    height: 18px;
    margin: 1px 3px 3px 4px;
    border: 1px solid transparent;
}

.checkbox > input:active {
    border: 2px solid #007C89;
}







.error {
    color: red;
}
/* */

.userback-button-container .userback-button-w {
    top: 80% !important;
}




.container {
    max-width: 1200px;
    padding: 1em;
    margin: 0 auto;
}


.latepoint-w { font-family: 'Source Sans Pro', sans-serif !important; }
.latepoint-lightbox-v2 h1,
.latepoint-lightbox-v2 h2,
.latepoint-lightbox-v2 h3,
.latepoint-lightbox-v2 h4,
.latepoint-lightbox-v2 h5,
.latepoint-lightbox-v2 h6 { font-family: 'Source Sans Pro', sans-serif !important; }

.latepoint-tabs-w .customer-bookings-tiles h6.customer-booking-service-name,
.latepoint-tabs-w a.active,
.latepoint-login-form-w h4,
.latepoint-btn.latepoint-btn-primary.latepoint-btn-link {
    color: #007c89;
}



.latepoint-btn.latepoint-btn-primary.latepoint-btn-link:hover {
    color: #007c89 !important;
}


.latepoint-btn.latepoint-btn-primary.latepoint-btn-link i,
.latepoint-btn.latepoint-btn-primary.latepoint-btn-link span,
.latepoint-btn.latepoint-btn-primary.latepoint-btn-link:hover span,
.latepoint-btn.latepoint-btn-primary.latepoint-btn-link:hover i,
.latepoint-btn.latepoint-btn-primary.latepoint-btn-link:focus span,
.latepoint-btn.latepoint-btn-primary.latepoint-btn-link:focus i{
    color: #007c89 !important;
}



.latepoint-btn.latepoint-btn-primary.latepoint-btn-link span,
.latepoint-btn.latepoint-btn-danger.latepoint-btn-link span {
    border: none;
}

.latepoint-tabs-w .customer-dashboard-tabs a:after {
    background-color: #007c89;
}

.latepoint-login-form-w .latepoint-btn,
.latepoint-tabs-w .latepoint-btn,
.latepoint-book-button {
    -webkit-appearance: none;
    -moz-appearance: none;
    background: #007C89;
    border: none;
    border-radius: .3rem;
    color: #fff !important;
    cursor: pointer;
    display: inline-block;
    font-size: 14px;
    font-weight: 600;
    line-height: 1;
    margin: 0;
    padding: 1.175em 1.75em;
    text-align: center;
    text-decoration: none;
    -webkit-transition: opacity .15s linear;
    -o-transition: opacity .15s linear;
    transition: opacity .15s linear;

}
.latepoint-w button {
    border-radius: .3rem;
}


.tab-content-customer-info-form .latepoint-btn:focus,
.tab-content-customer-info-form .latepoint-btn:focus {
    background: #007C89;
    outline: none !important;
}


.tab-content-customer-info-form .latepoint-btn:hover,
.tab-content-customer-info-form .latepoint-btn:hover,
.tab-content-customer-info-form .latepoint-btn:active,
.tab-content-customer-info-form .latepoint-btn:active,
.latepoint-book-button:hover,
.latepoint-book-button:active {
    background: #007C89;
    text-decoration: underline !important;
}

.toggle-child-visibility-no-styling .child {
    display: none;
}

.toggle-child-visibility-no-styling.child-visible .child {
    display: block;
}

.toggle-child-visibility {
    padding-right: 24px !important;
    border: 1px solid #CECFD8;
    position: relative;
}
.toggle-child-visibility-alternate-2 {
    padding-right: 0 !important;

}
.toggle-child-visibility.child-visible .tt-sub-header {
    border-bottom: 1px solid #CECFD8;
}

.toggle-child-visibility .tt-sub-header h3 {
    font-family: 'Source Sans Pro', sans-serif;
    font-weight: 600;
    pointer-events: none;
    font-size: 16px;
    line-height: 1.4;
    padding: 12px 20px;
    border-bottom: 0;
    margin-bottom: 0;
}

.toggle-child-visibility-alternate-2 .tt-sub-header ion-icon {
    position: absolute;
    right: 8px;
    top: 16px;
}
.toggle-child-visibility-alternate-2.child-visible .tt-sub-header ion-icon {
    transform: rotate(180deg);
}
.toggle-child-visibility-alternate-2 .child {
    padding: 12px 20px;
    display: none;
}

.toggle-child-visibility-alternate-2.child-visible .child {
    display: block;
}




button:disabled, button[disabled] {
    opacity: 0.4;
    cursor: not-allowed;
}



/* Client Portal - Documents */
.tab-content-customer-documents {
    width: 600px;
    max-width: 100%;
    margin: 0 auto;
}
.tab-content-customer-documents .file-item {
    font-size: 16px;
    margin-bottom: 8px;
}
.tab-content-customer-documents .file-item a {
    text-decoration: none;
}
.customer-uploaded-documents .file-actions {
    float: right;
}

.customer-uploaded-documents .file-actions a {
    margin-right: 4px;
}

.customer-uploaded-documents .file-item {
    padding: 4px;
}

.customer-uploaded-documents .file-item:hover {
    background-color: #f3f7ff;
}

.unread-icon {
    height: 0.5em;
    width: 0.5em;
    background-color: transparent;
    border-radius: 50%;
    display: inline-block;
    margin: 0.1em;
}
.unread .unread-icon {
    background-color: #EF3B39;
}




/* Video Office */
#allow-devices,
#browser-unsupported {
    height: 100%;
    width: 100%;
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 100;
    background-color: rgba(22, 74, 87, 1);
    text-align: center;
    overflow: auto;
}

#allow-devices .wrapper,
#browser-unsupported  .wrapper {
    max-width: 95%;
    font-weight: 400;
    margin: 60px auto 0;
}

#allow-devices ion-icon {
    color: #FFF;
    font-size: 70px;
}

#allow-devices img {
    max-width: 90%;
    margin: 30px auto;
    border-radius: 8px 8px 0 0;
    box-shadow: 0px -8px 16px -8px #222;
}

#allow-devices .heading ,
#browser-unsupported .heading {
    font-size: 36px;
    font-weight: 500;
    margin-bottom: 40px;
    margin-top: 40px;

}

#allow-devices a {
    color: #fff;
    text-decoration: none;
    border-bottom: 1px solid #fff;
    padding-bottom: 2px;
}


body.video-chat-page .container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    /*max-width: 1000px;*/
    padding: 1em;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    min-height: 100%;
}

body.video-chat-page #room-description {
    font-size: 1.5em;
    margin-bottom: 1em;
}


div#bg-overlay-wrapper {
    height: 100%;
    width: 100%;
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: -1;
    background-image: url("/wp-content/themes/chaplin-child/App/assets/images/waiting-room-01.png");
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    background-attachment: fixed;
}

body.video-chat-page.in-video-participants div#bg-overlay-wrapper {
    display: none;
}

div#bg-overlay {
    mix-blend-mode: multiply;
    opacity: 0.8;
    color: #007c89;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;

}
div#bg-overlay:before {
    background: currentColor;
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    top: 0;

}

div#remote-media {
    display: none;
    text-align: center;
    margin: auto;
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: #134754;
    z-index: -1;

}

/* New way */
body.in-video-participants #remote-media {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    max-width: calc(var(--width) * var(--cols));
}

body.in-video-participants #remote-media > div {
    position: relative;
    width: var(--width);
    height: var(--height);
    /*background-color: #3a3a3e;*/
}

body.in-video-participants #remote-media video {
    width: 100% !important;
    height: 100%;
    max-height: 100%;
    max-width: 100%;
}


body.in-video-participants div#remote-media {
    /*display: -ms-grid;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(50%, 1fr));
    grid-template-rows: repeat(auto-fit, minmax(50%, 1fr));
    justify-items: center;
    align-items: center;*/
    /* display: block;*/


}
/*
div#remote-media > div {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    position: relative;
    overflow: hidden;
    float: left;
}*/

div#remote-media > div .participant-name {
    position: absolute;
    font-size: 12px;
    top: 1em;
    left: 1em;
    background-color: #5F8B94;
    padding: 4px 12px;
    border-radius: 8px;
    font-weight: 500;
}

/* Only one remote */
/*
div#remote-media > div:nth-child(1):nth-last-child(1) {
    height: 100%;
    width: 100%;
}*/

/* 2 remotes (landscape) */
/*
div#remote-media > div:nth-child(1):nth-last-child(2),
div#remote-media > div:nth-child(2):nth-last-child(1) {
    height: 100%;
    width: 50%;
}*/

/* 3 remotes */
/*
div#remote-media > div:nth-child(1):nth-last-child(3),
div#remote-media > div:nth-child(2):nth-last-child(2),
div#remote-media > div:nth-child(3):nth-last-child(1) {
    height: 50%;
    width: 50%;
}*/


@media (orientation: portrait) {
    /* 2 remotes */
    /*
    div#remote-media > div:nth-child(1):nth-last-child(2),
    div#remote-media > div:nth-child(2):nth-last-child(1) {
        height: 50%;
        width: 100%;
    }*/
}

/*div#remote-media video,*/
body.screen-sharing video {
    max-width: 100%;
    max-height: 100%;
    height: auto !important;
    /*width: auto !important;*/
    object-fit: contain;
}

body.screen-sharing div#screen-share {
    height: 100%;
    width: 100%;
    background: #134754;
    display: flex;
    width: 85vw;
}

body.screen-sharing div#remote-media {
    position: absolute;
    top: 17vh;
    right: 0;
    left: auto;
    z-index: 0;
    background: transparent;
    display: flex;
    flex-direction: column;
    width: auto !important;
}

body.screen-sharing div#remote-media > div {
    margin: 1vh 1vw;
    width: auto !important;
    height: auto !important;
    max-width: 15vw;
    max-height: 15vh;
    align-items: flex-end;

}
body.screen-sharing div#remote-media > div video {
    object-fit: scale-down;
    width: auto !important;
}
body.screen-sharing div#remote-media > div p {
    position: absolute;
    right: 0;
    left: auto;
    font-size: 10px;
    padding: 0px 8px;
    top: 0;
    border-radius: 4px;
}

body.screen-sharing div.container {
    height: 0;
    min-height: 0;
    padding: 0;
}

div#preview {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    align-items: center;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    /*min-width: 30%;
    max-width: 95%;*/
    margin: 1em auto;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-around;
    background: rgba(255, 255, 255, 0.9);
    padding: 25px;
    width: 1100px;
    max-width: 100%;
    border-radius: 4px;
}

div#preview div#local-media {
    background-image: url("/wp-content/themes/chaplin-child/App/assets/images/no-camera.png");
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    max-width: 600px;
    max-height: 400px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 100%;
    min-height: 300px;
}

div#preview div#local-media.has-video {
    background-image: none;
    min-height: auto;
}

div#preview div#local-media video {
    max-width: inherit;
    max-height: inherit;
    height: auto !important;
    width: auto !important;
    margin: 0 auto;
    padding: 0;
    object-fit: scale-down;
}
div#preview div#local-media.mirror-image video {
    transform: scale(-1, 1);
}
video {
    background: transparent !important;
    background-color: transparent !important;
    outline: none !important;
    overflow: hidden !important;
    border-radius: 12px !important;
}
#pre-join-controls {
    width: 370px;
    max-width: 100%;
    text-align: center;
    font-size: 14px;
    font-weight: 400;
    color: #1A1B1F;
}
#pre-join-controls .tt-heading {
    font-size: 1.5em;
    font-weight: 400;
    color: #007C89;
    margin: 1em;
}
div#pre-join-controls > div {
    margin: 8px;
}

#pre-join-controls a {
    text-decoration: none;
}

#pre-join-controls button.btn-secondary {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: left;
        -ms-flex-pack: left;
            justify-content: left;
}
#pre-join-controls select,
#pre-join-controls input[type="text"] {
    padding: 4px 30px;
    height: 36px;
    font-size: 16px;
    width: 100%;
    background-color: transparent;
    color: #1A1B1F;
    border-radius: 4px;
    border: 1px solid #007C89;
}

#pre-join-controls div.select-wrapper,
#pre-join-controls div.input-wrapper {
    position: relative;
}

#pre-join-controls div.select-wrapper ion-icon,
#pre-join-controls div.input-wrapper ion-icon {
    position: absolute;
    line-height: 36px;
    left: 8px;
    top: 11px;
    color: #1A1B1F;
}

#pre-join-controls #button-join {
    width: 100%;
    padding: 12px 1em;
    font-size: 1.25em;
}

div#pre-join-controls #pre-join-controls-note {
    text-align: left;
    margin: 0px 8px 0 8px;
}

div#pre-join-controls #pre-join-controls-join-wrapper {
    margin-bottom: 0;
    margin-top: 12px;
}

div#pre-join-controls #pre-join-name-error {
    margin: 0;
    line-height: 1.5;
    font-size: 14px;
    font-weight: bold;
}

@media (max-width: 1100px) {
    div#preview div#local-media {
        max-width: 500px;
    }
}

@media (max-width: 1000px) {
    div#preview div#local-media {
        max-width: 400px;
    }
}

@media (max-width: 900px) {
    div#preview div#local-media {
        max-width: 320px;
    }
}
@media (max-width: 750px) {
    div#preview {
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;
        width: auto;
    }

    div#preview div#local-media {
        max-width: 100%;
        max-height: 30vh;
    }

    div#pre-join-controls #pre-join-controls-note {
        margin-top: 8px;
    }

    #pre-join-controls {
        margin-top: 16px;
    }
}

body.video-chat-page {
    color: #fff;
    font-weight: 300;
}

body.video-chat-page #wpadminbar {
    display: none;
}

body.video-chat-page.in-video {
    background: #134754;
}
body.video-chat-page.in-video #preview {
    position: absolute;
    top: 0;
    right: 0;
    margin: 1vh 1vw;
    padding: 0;
    width: auto;
    background: transparent;
}

body.tt-hide.video-chat-page .userback-button-container {
    display: none;
}

body.video-chat-page.in-video div#preview div#local-media {
    background: transparent;
    background-image: none;
    max-width: 15vw;
    max-height: 15vh;
    display: flex;
    align-items: flex-end;
}

body.video-chat-page.in-video #pre-join-controls {
    display: none;
}

body.video-chat-page.in-video #post-join-controls {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

body.video-chat-page.in-video #room-description {
    position: absolute;
    bottom: 0;
}

body.video-chat-page.in-video #room-description-welcome {
    display: none;
}

body.video-chat-page.in-video #therapist-info {
    display: none;
}

body.video-chat-page.in-video #room-description-waiting  {
    display: block;
}

#room-description-waiting,
body.video-chat-page.in-video-participants #room-description-waiting {
    display: none;
}


body.video-chat-page.in-video-participants .hide-if-in-video-participants,
body.video-chat-page.waiting-for-participants .hide-if-waiting-for-participants,
body.video-chat-page.pre-join .hide-if-pre-join {
    display: none;
}


body.video-chat-page button {
    font-weight: normal;
}

body.video-chat-page #therapist-info {
    font-size: 1.5em;
}



#post-join-controls {
    display: none;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 400px;
    border-radius: 6px;
    border: 1px solid white;
    position: fixed;
    bottom: 0;
    right: 0;
    margin: 10px;
    max-width: 95%;

}

#post-join-controls button {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px;
    width: auto;
    background-color: #5F8B94;
    padding: 6px;
    border-radius: 0;

}

#post-join-controls button:hover,
#post-join-controls button.active {
    -webkit-box-shadow: inset 0 0 100px 100px rgba(255, 255, 255, 0.1);
            box-shadow: inset 0 0 100px 100px rgba(255, 255, 255, 0.1);
    text-decoration: none;
    color: #007C89;
}

#post-join-controls button:focus {
    text-decoration: none;
    outline: none;
}

#post-join-controls button ion-icon {
    font-size: 1.6em;
    color: #FFF;
}

#post-join-controls button:hover ion-icon,
#post-join-controls button.active ion-icon {
    color: #007C89;
}

#post-join-controls button div.label {
    font-size: 0.7em;
}

#post-join-controls button.control-mic {
    border-radius: 6px 0 0 6px;
}

#post-join-controls button.control-leave {
    border-radius: 0 6px 6px 0;
}

body.video-chat-page #button-join ion-icon {
    color: #FFF;
}

#post-join-controls #control-mic-off,
#post-join-controls #control-camera-off {
    display: none;
}

#post-join-controls.audio-disabled #control-mic-off {
    display: inline-block;
}
#post-join-controls.video-disabled #control-camera-off {
    display: inline-block;
}

#post-join-controls.audio-disabled #control-mic-on {
    display: none;
}
#post-join-controls.video-disabled #control-camera-on {
    display: none;
}


@media (max-width: 900px) {
    body.video-chat-page.in-video #post-join-controls {
        left: 0;
        right: 0;
        margin: 10px auto;
    }

    body.video-chat-page.in-video #room-description {
        bottom: 48px;
        left: 0;
        right: 0;
        text-align: center;
        font-size: 1.8rem;
    }

    body.video-chat-page.in-video #preview div#local-media {
        margin: 0;
        max-width: 120px;
        max-height: 90px;
    }

}

/* Video Chat Messages */
#video-chat-text-wrapper {
    width: 300px;
    max-width: 90%;

    position: fixed;
    bottom: 90px;
    left: 30px;

    border: 1px solid white;
    border-radius: 6px 6px 0 0;

}

#video-chat-text-header {
    display: flex;
    justify-content: space-between;
    background-color: #007C89;
    padding: 8px;
    font-weight: 500;
    border-radius: 6px 6px 0 0;
    cursor: pointer;
}

#video-chat-text-header ion-icon {
    color: white;
    font-size: 1.5em;
}

#video-chat-text-messages {
    height: 200px;
    border-bottom: 1px solid white;
    padding: 8px;
    overflow: auto;
    background-color: #6A8A92;
}

#video-chat-text-messages .video-chat-user-name {
    font-weight: bold;
}


form#send-message {
    display: flex;
    margin: 0;
    padding: 6px;
    background-color: #88A1A8;
}

form#send-message input {
    padding: 4px 12px;
    border: 0;
    outline: 0;
}

/* Contact Form 7 */
.google-terms-conditions-message {
    font-size: 0.8em;
    opacity: 0.8;
    margin-top: -0.5em;
}
.grecaptcha-badge {
    visibility: hidden;
}




form.latepoint-form {
    margin-top: 0;
    margin-bottom: 0;
}


#btn-video-office {
    margin: 1em 0;
}
#btn-video-office ion-icon {
    font-size: 1.6em;
}
a.video-office-link {
    text-decoration: none;
}


/* Client Dashboard */

.error-in-input {
    position: absolute;
    top: calc(50% - 7px);
    right: 6px;
}

.os-notifications .item.item-type-error {
    background-color: #ff9898;
    border: 1px solid #b11118;
    color: #710c10;
}

body.client-dashboard header {
    color: #FFF;
    background-color: #007C89;
    padding: 1em;
    text-align: center;
}

body.client-dashboard header h1 {
    font-size: 35px;
    margin: 0.5em;
    font-weight: 300;
    color: #FFF;
}

body.client-dashboard #site-content {
    position: relative;
}

.latepoint-tab-triggers.customer-dashboard-tabs {
    position: relative;
}

.latepoint-tab-triggers.customer-dashboard-tabs a:last-child {
    position: absolute;
    right: 0;
    margin-right: 0;
}

@media (max-width: 700px) {
    .latepoint-w .customer-dashboard-tabs {
        flex-direction: column;
    }
    .latepoint-w .customer-dashboard-tabs a {
        margin: 0px 0px;
        border-bottom: 1px solid #eee;
        text-align: center;
    }
    .latepoint-w .customer-dashboard-tabs a.active:after {
        height: 100%;
    }
    .latepoint-w .customer-dashboard-tabs a:after {
        bottom: 0px;
        top: 0px;
        height: 0px;
        width: 3px;
    }

    .latepoint-tab-triggers.customer-dashboard-tabs a:last-child {
        position: relative;
    }
}


/* Client Dashboard Appointments */

.customer-bookings-tiles .customer-booking {
    margin-bottom: 20px;
}
.customer-bookings-tiles {
    padding: 0;
}


.tab-content-customer-bookings h4 {
    font-weight: normal;
}

.customer-bookings-tiles h6.customer-booking-service-name {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    min-height: 60px;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin: 10px auto;
    padding-bottom: 0;
}

.customer-booking-buttons .latepoint-btn.latepoint-btn-primary.latepoint-btn-link:hover {
    text-decoration: none !important;
}

.customer-bookings-tiles .customer-booking {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 250px;
            flex: 0 0 250px;
    display: flex;
    flex-direction: column;
}

.customer-bookings-tiles .customer-booking-info .customer-booking-info-row {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
}

.customer-bookings-tiles .customer-booking-info .customer-booking-info-row .booking-info-value div {
    text-align: center;
}

.customer-bookings-tiles .customer-booking-info .customer-booking-info-row .booking-info-value .customer-booking-info-clinician-heading {
    font-size: 0.8em;
    text-transform: uppercase;
    font-weight: bold;
    margin-bottom: 4px;
    color: #8e97b3;
}

.customer-bookings-tiles .customer-booking-info .booking-info-label {
    display: none;
}

#client-dashboard-book-appointment-wrapper {
    float: right;
}

@media (max-width: 600px) {
    #client-dashboard-book-appointment-wrapper {
        float: none;
        text-align: center;
        margin-bottom: 1em;
    }
}

.customer-bookings-tiles .customer-booking.status-cancelled {
    opacity: 0.5;
}

.customer-bookings-tiles .customer-booking-info .booking-info-value.status-cancelled {
    background-color: #FFF;
    color: red;
    font-weight: bold;
    border: 1px solid red;
    padding: 4px 12px;
    font-size: 18px;
}

.tt-office-location {
    border: 1px solid #eee;
    padding: 12px;
    border-radius: 8px;
    margin: 12px 0;
}

.tt-office-location-name {
    font-weight: bold;
}


/* Client Dashboard Payments */
.tab-content-customer-payments a {
    text-decoration: none;
}
.tab-content-customer-payments .customer-payments-invoice-link-wrapper {
    display: inline-block;
    padding-right: 18px;
}
.tab-content-customer-payments th,
.tab-content-customer-payments td {
    padding: 12px 20px;
    border: none;
}


.tab-content-customer-payments table {
    border: 1px solid #CECFD8;
}
.tab-content-customer-payments table thead tr {
    border-bottom: 1px solid #CECFD8;
}

.tab-content-customer-payments table caption {
    caption-side: top;
    background: transparent;
    padding-bottom: 12px;
    font-size: 16px;
    font-weight: 500;
}

.latepoint-w .tab-content-customer-payments .os-form-group.os-form-textfield-group .os-form-control,
.latepoint-w .tab-content-customer-payments .os-form-group.os-form-textfield-group input.os-form-control {
    border: none !important;
    border-bottom: 1px solid #CECFD8 !important;
    height: auto !important;
    padding: 4px !important;
}
.latepoint-w .tab-content-customer-payments .os-form-group.os-form-textfield-group label {
    top: -6px;
}



.tab-content-customer-payments input::placeholder {
    color: #7d89b1 !important;
    opacity: 1;
    font-size: 14px;
    font-family: Source Sans Pro, sans-serif;
}

.tab-content-customer-payments input#payment_zip,
.tab-content-customer-payments input#payment_name_on_card {
    /*font-weight: 600 !important;*/
    color: #222;
    background: transparent !important;
    font-family: Source Sans Pro, sans-serif;
}

.tab-content-customer-payments .customer-card-details-right-side {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    text-align: center;
    height: 100%;
}

.tab-content-customer-payments .latepoint-secured-payments-label {
    margin-top: 16px;
}

.tab-content-customer-payments a.customer-remove-card:hover {
    text-decoration: underline;
}

@media (min-width: 768px) {
    .tab-content-customer-payments .customer-card-details-right-side {
        align-items: flex-end;
    }
}

.tab-content-customer-payments .customer-card-details .cc-icon {
    position: absolute;
    right: 28px;
    top: 10px;
}

.tab-content-customer-payments .customer-card-details .cc-icon ion-icon {
    color: #CECFD8;
    font-size: 30px;
}
.tab-content-customer-payments .customer-card-details-right-side #save-customer-card-details {
    margin-bottom: 12px;
    margin-top: 12px;
}
.latepoint-message.latepoint-message-info {
    background: #B2D7DB;
    color: #222;
}
.latepoint-message.latepoint-message-error {
    padding: 10px;
    font-weight: 500;
    background: #ff9999;
    color: #750e0e;
}
.os-notifications .item.item-type-error p:last-of-type,
.os-form-message-w.status-error p:last-child,
.latepoint-message.latepoint-message-error p:last-child {
    margin-bottom: 0;
}
/* Client Dashboard Forms */
.tab-content-customer-forms .tt-completed,
.tab-content-customer-forms .tt-not-completed {
    font-size: 2em;
    text-align: center;
}

.tab-content-customer-forms table th {
    text-align: center;
}


.dropzone.client_uploaded_form {
    margin: 0 auto;
    font-size: 14px;
    min-height: 0;
}
.dropzone.client_uploaded_form .dz-preview {
    min-height: auto !important;
}

.dropzone.client_uploaded_form .dz-preview.dz-file-preview .dz-image {
    display: none !important;
}

.dropzone.client_uploaded_form .dz-preview.dz-file-preview .dz-details {
    display: none !important;
}

.tab-content-customer-forms .ion-icon-center-vertical {
    flex-wrap: wrap;
}
.tab-content-customer-forms .tt-completed .error {
    width: 100%;
    font-size: 14px;
    font-weight: bold;
}

/* Client Dashboard documents */

/* Dropzone */



/* Client Dashboard messages */
.latepoint-chat-box-w .lc-contents .lc-conversations .lc-conversation.lc-selected,
.latepoint-chat-box-w .lc-contents .lc-conversations .lc-conversation.lc-selected .lc-meta {
    background-color: white;
    color: #4c4c4c;
}

.latepoint-chat-box-w .lc-contents .lc-conversations .lc-conversation.lc-selected:after, .latepoint-chat-box-w .lc-contents .lc-conversations .lc-conversation:hover:after {
    background-color: #007c89;
    content: "";
    display: block;
    position: absolute;
    top: 0px;
    right: 0px;
    bottom: 0px;
    /*background-color: #2d54de;*/
    width: 4px;
    z-index: 2;


}



/* Client Dashboard Login Page */
.latepoint-login-form-w {
    margin-top: 3em !important;
}

/* Client Welcome page */

#welcome-page {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-flex: 1;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
}

#welcome-page > div {
    margin: 1em;
    width: 540px;
    max-width: 95%;
}

#welcome-page a {
    font-size: 18px;
}

#welcome-page-actions {

    /*padding-top: 2em;*/
}

@media (max-width: 800px) {
    #welcome-page {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
    }
}

#welcome-page ion-icon {
    /*font-size: 1.2em;*/
    --ionicon-stroke-width: 48px;
}

#welcome-page-buttons {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: distribute;
        justify-content: space-around;
    flex-wrap: wrap;
}

#welcome-page-info > div {
    margin-bottom: 20px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

#welcome-page-info > div > ion-icon {
    min-width: 24px;
    margin-right: 10px;
}

.latepoint-book-button {
    border: 2px solid #007c89;
}
#welcome-page-buttons .latepoint-book-button,
#welcome-page-buttons button {
    width: 175px;
    margin-bottom: 8px;
    font-size: 16px;
    padding: 16px;
}

.summary-header .os-lines {
    display: none;
}


.tt-hidable-element {
    visibility: visible;
    opacity: 1;
    transition: opacity 1s, visibility 1s;
}

body.tt-hide .tt-hidable-element {
    visibility: hidden;
    opacity: 0;
    transition: opacity 1s, visibility 1s;
}

/* Booking Pop-up */

.tt-timezone-notification {
    color: #222;
    text-align: center;
    margin-top: 8px;
}


.latepoint-w .latepoint-booking-form-element .step-payment-w .payment-total-info  {
    background-color: #B2D7DB;
    color: #222;
}

.latepoint-w .latepoint-booking-form-element .step-payment-w .payment-total-info .lp-price-value {
    color: #222;
}

.latepoint-w .latepoint-booking-form-element .lp-options.lp-options-grid .lp-option .lp-option-image-w {
    border-bottom: 1px solid #FFF;

}
.latepoint-w .latepoint-booking-form-element .lp-options .lp-option {
    background-color: #007C89;
    border-radius: 8px;
}

.latepoint-w .latepoint-booking-form-element .lp-options .lp-option .lp-option-label {
    color: #FFF;
    background-color: #007C89;
    border-radius: 0 0 8px 8px;
}
.latepoint-w .latepoint-booking-form-element .lp-options .lp-option .lp-option-image {
    padding-bottom: 0;
    border-radius: 8px 8px 0 0;
}
.latepoint-w .latepoint-booking-form-element .lp-options .lp-option .lp-option-image ion-icon {
    font-size: 80px;
    color: #FFF;
}

.latepoint-w .latepoint-booking-form-element .step-payment-w .lp-options .lp-option,
.latepoint-w .latepoint-booking-form-element .step-payment-w .lp-options .lp-option:hover {
    box-shadow: none;
}

.latepoint-w .latepoint-booking-form-element.latepoint-color-black .lp-options .lp-option:hover .lp-option-image ion-icon,
.latepoint-w .latepoint-booking-form-element.latepoint-color-black .lp-options .lp-option:hover .lp-option-label {
    color: #222;
}

.latepoint-w .latepoint-booking-form-element .step-payment-w .lp-card-w .lp-card-i label,
.latepoint-w .latepoint-booking-form-element .step-payment-w .lp-card-w .lp-card-i .os-form-group.os-form-textfield-group .os-form-control, .latepoint-w .latepoint-booking-form-element .step-payment-w .lp-card-w .lp-card-i .os-form-group.os-form-textfield-group input.os-form-control {
    color: #222 !important;
}
.latepoint-w .latepoint-booking-form-element .step-payment-w .lp-card-w .lp-card-i .os-form-group.os-form-textfield-group .os-form-control, .latepoint-w .latepoint-booking-form-element .step-payment-w .lp-card-w .lp-card-i .os-form-group.os-form-textfield-group input.os-form-control {
    border-bottom: 1px solid #8e97b3 !important;
}
.latepoint-w .latepoint-booking-form-element .step-payment-w .lp-card-w {
    background-color: transparent;
}
.latepoint-w .latepoint-booking-form-element .step-payment-w .lp-card-w .lp-card-i {
    background-color: transparent;
    background: none;
    /*box-shadow: none;*/
    border: 1px solid #007C89;
    box-shadow: 0 0 16px -8px #222;
}

.latepoint-w .latepoint-booking-form-element .step-payment-w .latepoint-secured-payments-label {
    color: #222;
    padding: 0;
    font-size: inherit;
}
.latepoint-w .latepoint-booking-form-element .step-payment-w .latepoint-secured-payments-label:after {
    display: none;
}

.tt-lp-card-title {
    display: none;
    text-align: center;
    margin-bottom: 8px;
}
.latepoint-w .latepoint-booking-form-element .step-payment-w.lp-show-card .tt-lp-card-title {
    display: block;
}


/* Payment styles @todo separate css */
.latepoint-w .latepoint-booking-form-element .step-payment-w .tt-lp-payment-cc-selection-w {
    display: none;
}

.latepoint-w .latepoint-booking-form-element .step-payment-w.tt-lp-show-payment-cc-selection .tt-lp-payment-cc-selection-w {
    display: block;
}



/*
.tt-loading::after {
    content: "";
    display: block;
    border: 4px solid #CECFD8;
    border-top: 4px solid rgb(0, 124, 137);
    border-radius: 50%;
    width: 30px;
    height: 30px;
    animation: tt-loading 1s linear infinite;
    position: absolute;
    top: 30%;
    left: 50%;
}

@keyframes tt-loading {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

*/

.os-loading,
.tt-loading {
    color: transparent !important;
    position: relative;
}
.os-loading:after,
.tt-loading:after {
    display: block;
    content: "";
    width: 14px !important;
    height: 14px !important;
    border-bottom: 2px solid #fff;
    border-left: 2px solid #fff;
    border-top: 2px solid #fff;
    border-right: 2px solid rgba(255,255,255,0);
    border-radius: 20px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    animation: tt-loading 700ms infinite linear;
    background-color: transparent !important;
}

.os-loading.os-loading-color-primary:after,
.tt-loading-color-primary:after {
    border-bottom: 2px solid #007C89;
    border-left: 2px solid #007C89;
    border-top: 2px solid #007C89;
}

@keyframes tt-loading {
  0% {
    transform: translate(-50%, -50%) rotate(0deg);
    opacity: 1; }
  50% {
    transform: translate(-50%, -50%) rotate(180deg);
    opacity: 0.2; }
  100% {
    transform: translate(-50%, -50%) rotate(360deg);
    opacity: 1; } }






/* General - grid system */



.tt-row {
  display: flex;
  flex-wrap: wrap;
  margin-right: -8px;
  margin-left: -8px; }

.no-gutters {
  margin-right: 0;
  margin-left: 0; }
  .no-gutters > .tt-col,
  .no-gutters > [class*="os-col-"] {
    padding-right: 0;
    padding-left: 0; }

.tt-col-1, .tt-col-2, .tt-col-3, .tt-col-4, .tt-col-5, .tt-col-6, .tt-col-7, .tt-col-8, .tt-col-9, .tt-col-10, .tt-col-11, .tt-col-12, .tt-col,
.tt-col-auto, .tt-col-sm-1, .tt-col-sm-2, .tt-col-sm-3, .tt-col-sm-4, .tt-col-sm-5, .tt-col-sm-6, .tt-col-sm-7, .tt-col-sm-8, .tt-col-sm-9, .tt-col-sm-10, .tt-col-sm-11, .tt-col-sm-12, .tt-col-sm,
.tt-col-sm-auto, .tt-col-md-1, .tt-col-md-2, .tt-col-md-3, .tt-col-md-4, .tt-col-md-5, .tt-col-md-6, .tt-col-md-7, .tt-col-md-8, .tt-col-md-9, .tt-col-md-10, .tt-col-md-11, .tt-col-md-12, .tt-col-md,
.tt-col-md-auto, .tt-col-lg-1, .tt-col-lg-2, .tt-col-lg-3, .tt-col-lg-4, .tt-col-lg-5, .tt-col-lg-6, .tt-col-lg-7, .tt-col-lg-8, .tt-col-lg-9, .tt-col-lg-10, .tt-col-lg-11, .tt-col-lg-12, .tt-col-lg,
.tt-col-lg-auto, .tt-col-xl-1, .tt-col-xl-2, .tt-col-xl-3, .tt-col-xl-4, .tt-col-xl-5, .tt-col-xl-6, .tt-col-xl-7, .tt-col-xl-8, .tt-col-xl-9, .tt-col-xl-10, .tt-col-xl-11, .tt-col-xl-12, .tt-col-xl,
.tt-col-xl-auto {
  position: relative;
  width: 100%;
  min-height: 1px;
  padding-right: 8px;
  padding-left: 8px; }

.tt-col {
  flex-basis: 0;
  flex-grow: 1;
  max-width: 100%; }

.tt-col-auto {
  flex: 0 0 auto;
  width: auto;
  max-width: none; }

.tt-col-1 {
  flex: 0 0 8.3333333333%;
  max-width: 8.3333333333%; }

.tt-col-2 {
  flex: 0 0 16.6666666667%;
  max-width: 16.6666666667%; }

.tt-col-3 {
  flex: 0 0 25%;
  max-width: 25%; }

.tt-col-4 {
  flex: 0 0 33.3333333333%;
  max-width: 33.3333333333%; }

.tt-col-5 {
  flex: 0 0 41.6666666667%;
  max-width: 41.6666666667%; }

.tt-col-6 {
  flex: 0 0 50%;
  max-width: 50%; }

.tt-col-7 {
  flex: 0 0 58.3333333333%;
  max-width: 58.3333333333%; }

.tt-col-8 {
  flex: 0 0 66.6666666667%;
  max-width: 66.6666666667%; }

.tt-col-9 {
  flex: 0 0 75%;
  max-width: 75%; }

.tt-col-10 {
  flex: 0 0 83.3333333333%;
  max-width: 83.3333333333%; }

.tt-col-11 {
  flex: 0 0 91.6666666667%;
  max-width: 91.6666666667%; }

.tt-col-12 {
  flex: 0 0 100%;
  max-width: 100%; }

.order-first {
  order: -1; }

.order-1 {
  order: 1; }

.order-2 {
  order: 2; }

.order-3 {
  order: 3; }

.order-4 {
  order: 4; }

.order-5 {
  order: 5; }

.order-6 {
  order: 6; }

.order-7 {
  order: 7; }

.order-8 {
  order: 8; }

.order-9 {
  order: 9; }

.order-10 {
  order: 10; }

.order-11 {
  order: 11; }

.order-12 {
  order: 12; }

.offset-1 {
  margin-left: 8.3333333333%; }

.offset-2 {
  margin-left: 16.6666666667%; }

.offset-3 {
  margin-left: 25%; }

.offset-4 {
  margin-left: 33.3333333333%; }

.offset-5 {
  margin-left: 41.6666666667%; }

.offset-6 {
  margin-left: 50%; }

.offset-7 {
  margin-left: 58.3333333333%; }

.offset-8 {
  margin-left: 66.6666666667%; }

.offset-9 {
  margin-left: 75%; }

.offset-10 {
  margin-left: 83.3333333333%; }

.offset-11 {
  margin-left: 91.6666666667%; }

@media (min-width: 576px) {
  .tt-col-sm {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%; }
  .tt-col-sm-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: none; }
  .tt-col-sm-1 {
    flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%; }
  .tt-col-sm-2 {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%; }
  .tt-col-sm-3 {
    flex: 0 0 25%;
    max-width: 25%; }
  .tt-col-sm-4 {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%; }
  .tt-col-sm-5 {
    flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%; }
  .tt-col-sm-6 {
    flex: 0 0 50%;
    max-width: 50%; }
  .tt-col-sm-7 {
    flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%; }
  .tt-col-sm-8 {
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%; }
  .tt-col-sm-9 {
    flex: 0 0 75%;
    max-width: 75%; }
  .tt-col-sm-10 {
    flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%; }
  .tt-col-sm-11 {
    flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%; }
  .tt-col-sm-12 {
    flex: 0 0 100%;
    max-width: 100%; }
  .order-sm-first {
    order: -1; }
  .order-sm-1 {
    order: 1; }
  .order-sm-2 {
    order: 2; }
  .order-sm-3 {
    order: 3; }
  .order-sm-4 {
    order: 4; }
  .order-sm-5 {
    order: 5; }
  .order-sm-6 {
    order: 6; }
  .order-sm-7 {
    order: 7; }
  .order-sm-8 {
    order: 8; }
  .order-sm-9 {
    order: 9; }
  .order-sm-10 {
    order: 10; }
  .order-sm-11 {
    order: 11; }
  .order-sm-12 {
    order: 12; }
  .offset-sm-0 {
    margin-left: 0; }
  .offset-sm-1 {
    margin-left: 8.3333333333%; }
  .offset-sm-2 {
    margin-left: 16.6666666667%; }
  .offset-sm-3 {
    margin-left: 25%; }
  .offset-sm-4 {
    margin-left: 33.3333333333%; }
  .offset-sm-5 {
    margin-left: 41.6666666667%; }
  .offset-sm-6 {
    margin-left: 50%; }
  .offset-sm-7 {
    margin-left: 58.3333333333%; }
  .offset-sm-8 {
    margin-left: 66.6666666667%; }
  .offset-sm-9 {
    margin-left: 75%; }
  .offset-sm-10 {
    margin-left: 83.3333333333%; }
  .offset-sm-11 {
    margin-left: 91.6666666667%; } }

@media (min-width: 768px) {
  .tt-col-md {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%; }
  .tt-col-md-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: none; }
  .tt-col-md-1 {
    flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%; }
  .tt-col-md-2 {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%; }
  .tt-col-md-3 {
    flex: 0 0 25%;
    max-width: 25%; }
  .tt-col-md-4 {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%; }
  .tt-col-md-5 {
    flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%; }
  .tt-col-md-6 {
    flex: 0 0 50%;
    max-width: 50%; }
  .tt-col-md-7 {
    flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%; }
  .tt-col-md-8 {
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%; }
  .tt-col-md-9 {
    flex: 0 0 75%;
    max-width: 75%; }
  .tt-col-md-10 {
    flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%; }
  .tt-col-md-11 {
    flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%; }
  .tt-col-md-12 {
    flex: 0 0 100%;
    max-width: 100%; }
  .order-md-first {
    order: -1; }
  .order-md-1 {
    order: 1; }
  .order-md-2 {
    order: 2; }
  .order-md-3 {
    order: 3; }
  .order-md-4 {
    order: 4; }
  .order-md-5 {
    order: 5; }
  .order-md-6 {
    order: 6; }
  .order-md-7 {
    order: 7; }
  .order-md-8 {
    order: 8; }
  .order-md-9 {
    order: 9; }
  .order-md-10 {
    order: 10; }
  .order-md-11 {
    order: 11; }
  .order-md-12 {
    order: 12; }
  .offset-md-0 {
    margin-left: 0; }
  .offset-md-1 {
    margin-left: 8.3333333333%; }
  .offset-md-2 {
    margin-left: 16.6666666667%; }
  .offset-md-3 {
    margin-left: 25%; }
  .offset-md-4 {
    margin-left: 33.3333333333%; }
  .offset-md-5 {
    margin-left: 41.6666666667%; }
  .offset-md-6 {
    margin-left: 50%; }
  .offset-md-7 {
    margin-left: 58.3333333333%; }
  .offset-md-8 {
    margin-left: 66.6666666667%; }
  .offset-md-9 {
    margin-left: 75%; }
  .offset-md-10 {
    margin-left: 83.3333333333%; }
  .offset-md-11 {
    margin-left: 91.6666666667%; } }

@media (min-width: 992px) {
  .tt-col-lg {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%; }
  .tt-col-lg-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: none; }
  .tt-col-lg-1 {
    flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%; }
  .tt-col-lg-2 {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%; }
  .tt-col-lg-3 {
    flex: 0 0 25%;
    max-width: 25%; }
  .tt-col-lg-4 {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%; }
  .tt-col-lg-5 {
    flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%; }
  .tt-col-lg-6 {
    flex: 0 0 50%;
    max-width: 50%; }
  .tt-col-lg-7 {
    flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%; }
  .tt-col-lg-8 {
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%; }
  .tt-col-lg-9 {
    flex: 0 0 75%;
    max-width: 75%; }
  .tt-col-lg-10 {
    flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%; }
  .tt-col-lg-11 {
    flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%; }
  .tt-col-lg-12 {
    flex: 0 0 100%;
    max-width: 100%; }
  .order-lg-first {
    order: -1; }
  .order-lg-1 {
    order: 1; }
  .order-lg-2 {
    order: 2; }
  .order-lg-3 {
    order: 3; }
  .order-lg-4 {
    order: 4; }
  .order-lg-5 {
    order: 5; }
  .order-lg-6 {
    order: 6; }
  .order-lg-7 {
    order: 7; }
  .order-lg-8 {
    order: 8; }
  .order-lg-9 {
    order: 9; }
  .order-lg-10 {
    order: 10; }
  .order-lg-11 {
    order: 11; }
  .order-lg-12 {
    order: 12; }
  .offset-lg-0 {
    margin-left: 0; }
  .offset-lg-1 {
    margin-left: 8.3333333333%; }
  .offset-lg-2 {
    margin-left: 16.6666666667%; }
  .offset-lg-3 {
    margin-left: 25%; }
  .offset-lg-4 {
    margin-left: 33.3333333333%; }
  .offset-lg-5 {
    margin-left: 41.6666666667%; }
  .offset-lg-6 {
    margin-left: 50%; }
  .offset-lg-7 {
    margin-left: 58.3333333333%; }
  .offset-lg-8 {
    margin-left: 66.6666666667%; }
  .offset-lg-9 {
    margin-left: 75%; }
  .offset-lg-10 {
    margin-left: 83.3333333333%; }
  .offset-lg-11 {
    margin-left: 91.6666666667%; } }

@media (min-width: 1200px) {
  .tt-col-xl {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%; }
  .tt-col-xl-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: none; }
  .tt-col-xl-1 {
    flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%; }
  .tt-col-xl-2 {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%; }
  .tt-col-xl-3 {
    flex: 0 0 25%;
    max-width: 25%; }
  .tt-col-xl-4 {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%; }
  .tt-col-xl-5 {
    flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%; }
  .tt-col-xl-6 {
    flex: 0 0 50%;
    max-width: 50%; }
  .tt-col-xl-7 {
    flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%; }
  .tt-col-xl-8 {
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%; }
  .tt-col-xl-9 {
    flex: 0 0 75%;
    max-width: 75%; }
  .tt-col-xl-10 {
    flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%; }
  .tt-col-xl-11 {
    flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%; }
  .tt-col-xl-12 {
    flex: 0 0 100%;
    max-width: 100%; }
  .order-xl-first {
    order: -1; }
  .order-xl-1 {
    order: 1; }
  .order-xl-2 {
    order: 2; }
  .order-xl-3 {
    order: 3; }
  .order-xl-4 {
    order: 4; }
  .order-xl-5 {
    order: 5; }
  .order-xl-6 {
    order: 6; }
  .order-xl-7 {
    order: 7; }
  .order-xl-8 {
    order: 8; }
  .order-xl-9 {
    order: 9; }
  .order-xl-10 {
    order: 10; }
  .order-xl-11 {
    order: 11; }
  .order-xl-12 {
    order: 12; }
  .offset-xl-0 {
    margin-left: 0; }
  .offset-xl-1 {
    margin-left: 8.3333333333%; }
  .offset-xl-2 {
    margin-left: 16.6666666667%; }
  .offset-xl-3 {
    margin-left: 25%; }
  .offset-xl-4 {
    margin-left: 33.3333333333%; }
  .offset-xl-5 {
    margin-left: 41.6666666667%; }
  .offset-xl-6 {
    margin-left: 50%; }
  .offset-xl-7 {
    margin-left: 58.3333333333%; }
  .offset-xl-8 {
    margin-left: 66.6666666667%; }
  .offset-xl-9 {
    margin-left: 75%; }
  .offset-xl-10 {
    margin-left: 83.3333333333%; }
  .offset-xl-11 {
    margin-left: 91.6666666667%; } }

.tt-col-br {
  border-right: 1px solid #f0f1f5;
  padding-right: 30px; }
  .tt-col-br + div[class*="os-col-"] {
    padding-left: 30px; }

.tt-col-pr {
  padding-right: 20px; }
  .tt-col-pr + div[class*="os-col-"] {
    padding-left: 20px; }

@media (min-width: 576px) {
  .tt-col-sm-br {
    border-right: 1px solid #f0f1f5;
    padding-right: 30px; }
    .tt-col-sm-br + div[class*="os-col-"] {
      padding-left: 30px; }
  .tt-col-sm-pr {
    padding-right: 20px; }
    .tt-col-sm-pr + div[class*="os-col-"] {
      padding-left: 20px; } }

@media (min-width: 768px) {
  .tt-col-md-br {
    border-right: 1px solid #f0f1f5;
    padding-right: 30px; }
    .tt-col-md-br + div[class*="os-col-"] {
      padding-left: 30px; }
  .tt-col-md-pr {
    padding-right: 20px; }
    .tt-col-md-pr + div[class*="os-col-"] {
      padding-left: 20px; } }

@media (min-width: 992px) {
  .tt-col-lg-br {
    border-right: 1px solid #f0f1f5;
    padding-right: 30px; }
    .tt-col-lg-br + div[class*="os-col-"] {
      padding-left: 30px; }
  .tt-col-lg-pr {
    padding-right: 20px; }
    .tt-col-lg-pr + div[class*="os-col-"] {
      padding-left: 20px; } }

@media (min-width: 1200px) {
  .tt-col-xl-br {
    border-right: 1px solid #f0f1f5;
    padding-right: 30px; }
    .tt-col-xl-br + div[class*="os-col-"] {
      padding-left: 30px; }
  .tt-col-xl-pr {
    padding-right: 20px; }
    .tt-col-xl-pr + div[class*="os-col-"] {
      padding-left: 20px; } }





/* Main site */

/* Decrease margins */
.entry-content .wp-block-columns,
.entry-content .wp-block-group {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

.wp-block-columns.alignwide {
    margin-bottom: 1rem !important;
}

/* Profile editor */
#rcp_profile_editor_form p,
#rcp_profile_editor_form label,
#rcp_profile_editor_form input {
    font-size: 19px;
}



/* */
.unpaid-booking-warning ion-icon {
    color: red;
    cursor: pointer;
    margin-left: 8px;
    font-size: 18px;
}

.tab-content-customer-payments .unpaid-booking-warning {
    display: inline-block;
}


/* My Account */

.rcp-table {
    font-size: 14px;
    width: 100% !important;
}

.rcp-table th,
.rcp-table td {
    padding: 0.6rem 1.6rem;
    border: .1rem solid #E1E1E3 !important;
    vertical-align: middle !important;
}

/*.rcp-table th {*/
/*    border-width: 0 1px 1px 0 !important;*/
/*    border-color: rgba(0, 0, 0, 0.1) !important;*/
/*    border-style: solid !important;*/
/*}*/
@media screen and (max-width: 900px) {

    .rcp-table thead th {
        display: none;
    }
    .rcp-table tr:nth-of-type(2n) {
        background: rgba(0, 0, 0, 0.02);
    }
    .rcp-table td {
        margin-bottom: 0 !important;
        word-break: break-word;
    }
    .rcp-table td:not(td:first-child) {
        border-top: 0 !important;
    }
    .rcp-table td:not(td:last-child) {
        border-bottom: 0 !important;
    }
    .rcp-table td:before {
        content: attr(data-title) ": ";
        font-weight: bold;
        margin-right: 0.8rem;
    }
    .rcp-table td:first-of-type {
        padding-top: 2rem;
    }
    .rcp-table td:last-of-type {
        padding-bottom: 2rem;
    }
}


.rcp-tt-table-details-trigger {
    cursor: pointer;
    display: block;
    text-align: right;
    font-size: 0.85em;
}
.rcp-table + .rcp-tt-table-details-trigger {
    margin-top: -4rem;
}
.rcp-tt-table-details-trigger + .rcp-tt-table-details {
    margin-top: 0;
}
.rcp-tt-table-details {
    display: none;
}

.tt-notifications {
    position: fixed;
    left: 50%;
    transform: translateX(-50%);
    top: 8px;
    z-index: 10000;
    display: flex;
    flex-direction: column-reverse;
}
.tt-notifications .tt-notification-close {
    position: absolute;
    top: 50%;
    right: 5px;
    cursor: pointer;
    padding: 5px;
    font-size: 20px;
    transform: translateY(-50%);
    display: block;
    line-height: 1;
}
.tt-notifications .item {
    padding: 10px 20px;
    background-color: #B2D7DB;
    color: #1d5642;
    font-weight: 500;
    font-size: 16px;
    /*border: 1px solid #00b964;*/
    box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.1);
    border-radius: 3px;
    min-width: 400px;
    text-align: left;
    padding-right: 40px;
    position: relative;
}
.tt-notifications .item.item-type-error {
    background-color: #B2D7DB;
    border: 1px solid #b11118;
    color: #710c10;
}
.tt-notifications .item + .item {
    margin-bottom: 10px;
}


/* My account - Braintree drop in */
.braintree-method__icon.braintree-method__check svg {
    height: 100%;
}

#tt-card-update-wrapper .credit-card-details {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    border: 2px solid #B7B7B7;
    padding: 12px;
    border-radius: 4px;
}

#tt-card-update-wrapper #rcp_submit_wrap {
    display: flex;
    justify-content: space-between;
    padding: 12px;
}

#tt-card-update-wrapper button {
    font-size: 16px;
    padding: 14px 6px;
    min-width: 164px;
}
#update-credit-card-messages {
    display: none;
}
.update-credit-card-messages {
    color: #097D8A;
    background-color: #F6F9FD;
    padding: 12px;
    border-radius: 4px;
    border: 2px solid #097D8A;
    margin-bottom: 12px;
}
.update-credit-card-messages.error {
    border-color: red;
    color: red;
}
/* Override parent theme */
.social-icons a::before {
    display: none;
}


/* */

.tt-upgrade-banner-wrapper {
    text-align: center;
    margin: 8px 40px 0 40px;
    font-weight: 600;
    font-size: 12px;
}
.tt-upgrade-banner {
    display: inline-block;
    background: #B2D7DB;
    color: #606060;
    padding: 6px 16px;
    border-radius: 4px;
    border: 1px solid red;
}

.tt-upgrade-banner a {
    color: red !important;
    text-decoration: none;
}

@media (max-width: 600px) {
    .tt-upgrade-banner-wrapper {
        margin: 8px 16px -16px 16px;
    }
}




/* Tippy */

.tippy-tooltip.light-border-theme {
    min-width: 280px;
    max-width: 95%;
    background-color:#fff;
    background-clip:padding-box;
    border: 2px solid #3f3f3f;
    border-radius: 8px;
    padding: 8px;
    color:#26323d;
    box-shadow:0 4px 14px -2px rgba(0,8,16,.08);
    font-family: "Source Sans Pro", sans-serif;
}

.tippy-tooltip.light-border-theme h3 {
    white-space: nowrap;
    font-family: "Source Sans Pro", sans-serif;
}

.tippy-tooltip.light-border-theme h4 {
    font-family: "Source Sans Pro", sans-serif;
    white-space: nowrap;
    margin-bottom: 0;
    font-weight: 600;
}
.tippy-content {
    white-space: normal;
}

.client-dashboard .tippy-tooltip.light-border-theme {
    min-width: auto;
    border: 1px solid #007C89;
    padding: 2px;
    padding-right: 6px;
    border-radius: 4px;
}
.client-dashboard #site-content {
    overflow: auto;
}

/* Client Portal */
.latepoint-tt-create-new-account {
    background-color: #fff;
    box-shadow: 0px 2px 4px rgb(0 0 0 / 20%), 0px 20px 50px rgb(0 0 0 / 40%);
}

.latepoint-tt-create-new-account form {
    margin-bottom: 0;
    margin-top: 0;
}

.latepoint-lightbox-w .latepoint-tt-create-new-account  h4 {
    color: #007C89;
    text-align: center;
}
.latepoint-tt-create-new-account .latepoint-lightbox-close {
    position: absolute;
    right: 12px;
    top: 12px;
    font-size: 2em;
}

.latepoint-tt-create-new-account .latepoint-btn,
.latepoint-tt-create-new-account .latepoint-btn:hover,
.latepoint-tt-create-new-account .latepoint-btn:focus {
    background-color: #007C89;
}

.tt_os_trigger_account_create {
    font-size: 14px !important;
}

.tt_os_trigger_account_create:hover {
    text-decoration: underline;
}

#welcome-page-quote blockquote {
    margin-bottom: 1rem;
    margin-top: 6rem;
}


body .latepoint-w .os-form-group.os-form-select-group select.tt-select.os-form-control {
    background-color: #fff !important;
    border: 1px solid #d6d6e1 !important;
    border-bottom-color: rgb(214, 214, 225) !important;
    border-bottom-color: #aaacb9 !important;
    box-shadow: 0px 1px 2px rgb(0 0 0 / 10%) !important;
    color: #007C89;
    height: 36px !important;
    /*padding: 0px 20px 0px 7px !important;*/
    padding: 0px 20px 0px 10px !important;
    border-radius: 4px !important;
    -webkit-appearance: none;
    background: #fff url(data:image/svg+xml;charset=US-ASCII,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M5%206l5%205%205-5%202%201-7%207-7-7%202-1z%22%20fill%3D%22%23555%22%2F%3E%3C%2Fsvg%3E) no-repeat right 5px top 55%;
    background-color: rgb(255, 255, 255);
    background-size: auto;
    background-size: 16px 16px;
    cursor: pointer;
    line-height: normal;
    font-size: 16px;
    font-weight: 500;
}




/* General override */
.latepoint-w .os-form-group.os-form-select-group .os-form-control:focus,
.latepoint-w .os-form-group.os-form-select-group input.os-form-control:focus,
.latepoint-w .os-form-group.os-form-textfield-group .os-form-control:focus,
.latepoint-w .os-form-group.os-form-textfield-group input.os-form-control:focus {
    border-color: #007C89 !important;
}
.latepoint-lightbox-w button,
.latepoint-lightbox-w input,
.latepoint-lightbox-w select,
.latepoint-lightbox-w textarea {
    font-family: 'Source Sans Pro', sans-serif;
}



.tippy-tooltip.light-border-theme>.tippy-backdrop{background-color:#fff}
.tippy-tooltip.light-border-theme>.tippy-arrow:after,
.tippy-tooltip.light-border-theme>.tippy-arrow:before,
.tippy-tooltip.light-border-theme>.tippy-svg-arrow:after,
.tippy-tooltip.light-border-theme>.tippy-svg-arrow:before{content:"";position:absolute;z-index:-1}
.tippy-tooltip.light-border-theme>.tippy-svg-arrow{fill:#fff}
.tippy-tooltip.light-border-theme>.tippy-svg-arrow:after{background-image:url(data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLW1pdGVybGltaXQ9IjEuNDE0IiB2aWV3Qm94PSIwIDAgMTggNyIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMCA3czIuMDIxLS4wMTUgNS4yNTMtNC4yMThDNi41ODQgMS4wNTEgNy43OTcuMDA3IDkgMGMxLjIwMy0uMDA3IDIuNDE2IDEuMDM1IDMuNzYxIDIuNzgyQzE2LjAxMiA3LjAwNSAxOCA3IDE4IDd6IiBmaWxsPSIjMzMzIiBmaWxsLW9wYWNpdHk9Ii4yMzUiIGZpbGwtcnVsZT0ibm9uemVybyIvPjwvc3ZnPg==);background-size:18px 7px;width:18px;height:7px;left:0;top:0;fill:rgba(0,8,16,.15)}
.tippy-tooltip.light-border-theme[data-placement^=top]>.tippy-svg-arrow:after{top:1px;transform:rotate(180deg)}
.tippy-tooltip.light-border-theme[data-placement^=top]>.tippy-arrow{border-top-color:#fff}
.tippy-tooltip.light-border-theme[data-placement^=top]>.tippy-arrow:after{border-top:7px solid #fff;top:-7px}
.tippy-tooltip.light-border-theme[data-placement^=top]>.tippy-arrow:before{border-top:7px solid rgba(0,8,16,.2);bottom:-1px}
.tippy-tooltip.light-border-theme[data-placement^=bottom]>.tippy-svg-arrow:after{top:-1px}
.tippy-tooltip.light-border-theme[data-placement^=bottom]>.tippy-arrow{border-bottom-color:#fff}
.tippy-tooltip.light-border-theme[data-placement^=bottom]>.tippy-arrow:after{border-bottom:7px solid #fff;bottom:-7px}
.tippy-tooltip.light-border-theme[data-placement^=bottom]>.tippy-arrow:before{border-bottom:7px solid rgba(0,8,16,.2);bottom:-6px}
.tippy-tooltip.light-border-theme[data-placement^=left]>.tippy-svg-arrow:after{left:1px;top:0;transform:rotate(90deg)}
.tippy-tooltip.light-border-theme[data-placement^=left]>.tippy-arrow{border-left-color:#fff}
.tippy-tooltip.light-border-theme[data-placement^=left]>.tippy-arrow:after{border-left:7px solid #fff;left:-7px}
.tippy-tooltip.light-border-theme[data-placement^=left]>.tippy-arrow:before{border-left:7px solid rgba(0,8,16,.2);left:-6px}
.tippy-tooltip.light-border-theme[data-placement^=right]>.tippy-svg-arrow:after{left:-1px;top:0;transform:rotate(-90deg)}
.tippy-tooltip.light-border-theme[data-placement^=right]>.tippy-arrow{border-right-color:#fff}
.tippy-tooltip.light-border-theme[data-placement^=right]>.tippy-arrow:after{border-right:7px solid #fff;right:-7px}
.tippy-tooltip.light-border-theme[data-placement^=right]>.tippy-arrow:before{border-right:7px solid rgba(0,8,16,.2);right:-6px}
.tippy-tooltip.light-border-theme[data-placement^=bottom]>.tippy-arrow,
.tippy-tooltip.light-border-theme[data-placement^=bottom]>.tippy-svg-arrow,
.tippy-tooltip.light-border-theme[data-placement^=top]>.tippy-arrow,
.tippy-tooltip.light-border-theme[data-placement^=top]>.tippy-svg-arrow{transform:translateX(-1px)}
.tippy-tooltip.light-border-theme[data-placement^=bottom]>.tippy-arrow:after,
.tippy-tooltip.light-border-theme[data-placement^=bottom]>.tippy-arrow:before,
.tippy-tooltip.light-border-theme[data-placement^=top]>.tippy-arrow:after,
.tippy-tooltip.light-border-theme[data-placement^=top]>.tippy-arrow:before{left:-7px;border-left:7px solid transparent;border-right:7px solid transparent}
.tippy-tooltip.light-border-theme[data-placement^=left]>.tippy-arrow,
.tippy-tooltip.light-border-theme[data-placement^=left]>.tippy-svg-arrow,
.tippy-tooltip.light-border-theme[data-placement^=right]>.tippy-arrow,
.tippy-tooltip.light-border-theme[data-placement^=right]>.tippy-svg-arrow{transform:translateY(-1px)}
.tippy-tooltip.light-border-theme[data-placement^=left]>.tippy-arrow:after,
.tippy-tooltip.light-border-theme[data-placement^=left]>.tippy-arrow:before,
.tippy-tooltip.light-border-theme[data-placement^=right]>.tippy-arrow:after,
.tippy-tooltip.light-border-theme[data-placement^=right]>.tippy-arrow:before{top:-7px;border-top:7px solid transparent;border-bottom:7px solid transparent}

/* Latepoint messages - common */
.latepoint-chat-box-w .booking-messages-list .os-booking-message-w .os-booking-message,
.booking-messages-list .os-booking-message-w .os-booking-message {
    max-width: 100%;
    text-align: left;
    overflow-wrap: anywhere;
}



/* Sweet Alert */
.swal2-container {
    z-index: 10000;
}

.swal2-actions {
    /*gap: 2rem;*/
    padding: 0 2rem;
    justify-content: center;
    width: 100%;
    margin: 0;
}
.swal2-actions button {
    flex: 1 1 0;
    margin: 0 1rem;
    white-space: nowrap;
}

.swal2-styled.swal2-confirm:focus,
.swal2-styled.swal2-cancel:focus {
    background-image: linear-gradient(rgba(0,0,0,.1),rgba(0,0,0,.1));
    box-shadow: none;
    /*box-shadow: 0 0 3px 3px rgba(200, 200, 200, 0.2);*/
}

.swal2-actions button.swal2-confirm {
    background-color: #007C89;
}
.swal2-actions button.swal2-cancel {
    background-color: #EDEFF6;
    color: #252C39;
}
/* Front end specific styles for swal */
.swal2-popup {
    width: 512px;
    max-width: 100%;
    font-size: 16px;
}
.swal2-popup button:hover,
.swal2-popup button:focus {
    text-decoration: none;
}
#swal2-html-container h3 {
    font-size: 24px;
    font-weight: 500;
    margin-top: 0;
}

#swal2-html-container p {
    font-size: 13px;
}

/* Utility classes */
.font-normal {
    font-weight: 400;
}

.os-notifications .item {
    background-color: #B2D7DB;
    border: 1px solid #007C89;
    color: #1d5642;
    padding: 10px 20px;
    font-weight: 500;
    font-size: 16px;
    box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.3);
    border-radius: 3px;
    min-width: 400px;
    text-align: left;
    padding-right: 40px;
    position: relative;
}
.os-notifications .os-notification-close {
    top: 2rem;
}