:root {
    /* COLORS */
    --white: #FFFFFF;
    --dark-blue: #324d9e;
    --dark-blue-400: #7082BB;
    --dark-blue-600: #324D9E;
    --dark-blue-700: #283e7e;
    --light-blue: #9eb8d8;
    --light-blue-100: #EAEDF5;
    --cream: #f4f5ec;
    --cream-100: #FCFDF6;
    --cream-50: #FBFBF8;
    --light-pink: #f9a6c1;
    --dark-pink: #ff8dbb;
    --dark-brown: #662311;
    --light-brown: #a55230;
    --orange: #ff7044;
    --charcoal-black: #2d2829;
    --black: #000000;
    --dark-gray: #393c44;
    --medium-gray: #666666;
    --light-gray: #9c9da1;
    --midi-charcoal-20: #B8B6B6;
    --midi-charcoal-25: #F4F4F4;
    --midi-charcoal-100: #D9D8D8;
    --midi-charcoal-light: #F4F4F4;
    --midi-charcoal-50: #E2E1E1;
    --midi-charcoal-800: #363535;
    --midi-charcoal-900: #231F20;
    --midi-charcoal-750: #505050;
    --midi-charcoal-650: #727272;
    --placeholder-text-color: #6c757d;
    --midi-color-poolside: #F0FBFF;
    --yellow-900: #5C5733;

    /* FONTS*/
    --midi-heading-font: 'SourceSerif4', serif;
    --heading-font-bold: 'SourceSerif4Bold', serif;
    --body-font: 'PPMori-Regular', sans-serif;
    --body-font-bold: 'PPMori-SemiBold', sans-serif;
}

html {
    -webkit-font-smoothing: antialiased;
    font-size: 14px;
}

body {
    font-family: var(--body-font);
    color: var(--charcoal-black);
    font-size: 14px;
    line-height: 18px;
    background-color: #fff;
}

body:has(.midi-form-box) {
    background-color: var(--cream);
}

p.info {
    color: #231F20;
}

a {
    color: var(--dark-blue);
}

a:hover {
    color: var(--charcoal-black);
    text-decoration: none;
}

.invalid-feedback {
    font-size: 14px;
}

strong {
    font-weight: 700;
}

:focus {
    outline: none !important;
}

.alert {
    border-radius: 6px;
}

.alert-danger {
    color: #f5c6cb;
    background-color: #721c24;
    border-color: #721c24;
}

.bg-warning {
    background-color: #F6C769 !important;
}

.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: var(--midi-heading-font);
    font-weight: 400;
}

h6, .midi-h6 {
  font-family:  var(--midi-heading-font);
  font-size: 18px;
}

.form-control,
.custom-select {
    border: 1px solid rgba(35, 31, 32, 0.65);
    box-shadow: none;
    font-size: 16px;
    height: 48px;
    border-radius: 4px;
    color: #231F20;
    background-color: var(--cream-50);
}

.form-control:focus {
    border-color: #3568FF;
    box-shadow: 0 0 0 0.2rem rgb(53 104 255 / 25%);
}

/*input[type=range] {
    -webkit-appearance: none;
    margin: 30px 0;
    width: 100%;
    border: none;
    padding: 0;
    height: auto;
}
input[type=range]:focus {
    outline: none;
    box-shadow: none;
}
input[type=range]::-webkit-slider-runnable-track {
	width: 100%;
	height: 2px;
	cursor: pointer;
	animate: 0.2s;
	background: #3568FF;
	border-radius: 0px;
}
input[type=range]::-webkit-slider-thumb {
	height: 18px;
	width: 18px;
	border-radius: 50%;
	background: #3568FF;
	box-shadow: none;
	cursor: pointer;
	-webkit-appearance: none;
	margin-top: -8px;
}
input[type=range]:focus::-webkit-slider-runnable-track {
	background: #3568FF;
}*/
.btn-rounded {
    border-radius: 40px;
}

.btn {
    font-family: var(--body-font);
    font-style: normal;
    font-weight: normal;
    line-height: 18px;
    font-size: 16px;
    padding: 15px 30px;
}

.btn-sm {
    padding: 6px 12px;
    font-weight: 400;
    font-size: 14px;
}

.btn-dark,
.btn-dark:hover {
    background-color: #231F20;
    border-color: #231F20;
}

.text-primary {
    color: var(--dark-blue) !important;
}

.btn-primary {
    background: #3568FF;
    border-color: #3568FF;
}

.btn-primary:hover,
.btn-primary:focus,
.btn-primary.active,
.btn-primary:active,
.open > .dropdown-toggle.btn-primary {
    background-color: #3568FF;
    border: 1px solid #3568FF;
    box-shadow: none;
}

.btn-primary.active.focus,
.btn-primary.active:focus,
.btn-primary.active:hover,
.btn-primary.focus:active,
.btn-primary:active:focus,
.btn-primary:active:hover,
.open > .dropdown-toggle.btn-primary.focus,
.open > .dropdown-toggle.btn-primary:focus,
.open > .dropdown-toggle.btn-primary:hover {
    background-color: #3568FF;
    border: 1px solid #3568FF;
}

.btn-primary.active:not(:disabled):not(.disabled),
.btn-primary:active:not(:disabled):not(.disabled),
.show > .btn-primary.dropdown-toggle {
    background-color: #3568FF;
    border-color: #3568FF;
    color: #fff;
}

.btn-primary.active:focus:not(:disabled):not(.disabled),
.btn-primary:active:focus:not(:disabled):not(.disabled),
.show > .btn-primary.dropdown-toggle:focus {
    box-shadow: unset;
}

.btn-outline-primary {
    border-color: var(--charcoal-black);
    color: var(--charcoal-black);
    background-color: transparent;
    box-shadow: none;
    border-radius: 12px;
}

.btn-outline-primary:hover,
.btn-outline-primary:focus,
.btn-outline-primary:active {
    border-color: var(--charcoal-black);
    color: var(--charcoal-black);
    background-color: var(--midi-charcoal-25);
}

.btn-outline-primary:not(:disabled):not(.disabled).active:focus,
.btn-outline-primary:not(:disabled):not(.disabled):active:focus,
.show > .btn-outline-primary.dropdown-toggle:focus {
    box-shadow: none;
}

.btn-outline-primary:not(:disabled):not(.disabled).active,
.btn-outline-primary:not(:disabled):not(.disabled):active,
.show > .btn-outline-primary.dropdown-toggle {
    border-color: var(--dark-blue);
    color: var(--dark-blue);
    background-color: transparent;
    box-shadow: none;
}

.btn-primary.disabled,
.btn-primary:disabled {
    background-color: #3568FF;
    border-color: #3568FF;
    color: #fff;
}

.section-padding {
    padding-top: 50px;
    padding-bottom: 50px;
}

.section-title {
    font-size: 30px;
    line-height: 44px;
    margin-bottom: 20px;
}

span.inprogress,
span.pending {
    background: #F6C769;
    border-radius: 4px;
    padding: 4px 10px;
    color: #231F20;
    font-size: 13px;
    margin-right: 15px;
    min-width: 86px;
    text-align: center;
}

span.completed {
    background: #C8F5FF;
    border-radius: 4px;
    padding: 4px 10px;
    color: #3568FF;
    font-size: 13px;
    margin-right: 15px;
    min-width: 86px;
    text-align: center;
}

span.callout {
    background: #BDC3FF;
    border-radius: 4px;
    padding: 4px 10px;
    color: #231F20;
    font-size: 13px;
    margin-right: 15px;
    min-width: 86px;
    text-align: center;
}

span.rx-new {
    background: #BDC3FF;
    border-radius: 4px;
    padding: 1px 10px;
    margin-left: 10px;
    color: #231F20;
    font-size: 13px;
    text-align: center;
    display: inline-block;
}

span.new {
    color: #F6C769;
}

span.cancel-info {
    color: #BA5B36;
}

span.balance-due {
    color: #F00;
}

p.balance-due-title {
    color: #231F20;
    font-family: var(--body-font);
    font-size: 16px;
    font-weight: 500;
    line-height: 24px
}

p.balance-due-detail {
    color: #231F20;
    font-family: var(--body-font);
    font-size: 14px;
    font-weight: 400;
    line-height: 18px;
}

.page-body-content {
    padding: 80px 40px;
}

.page-wrapper .page-body-wrapper .page-sidebar {
    width: 265px;
    position: fixed;
    background: var(--dark-blue);
    color: var(--cream);
    top: 0;
    height: calc(100vh);
    z-index: 1000;
    -webkit-transition: .3s;
    transition: .3s;
    -webkit-backface-visibility: hidden;
}

.page-wrapper .page-body-wrapper .page-sidebar .main-header-left {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    width: 100%;
    height: 121px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background-color: var(--dark-pink);
    z-index: 15;
}

.page-wrapper .page-body-wrapper .sidebar {
    height: calc(100vh - 175px);
    -webkit-box-shadow: 0 0 11px rgb(69 110 243 / 13%);
    box-shadow: 0 0 11px rgb(69 110 243 / 13%);

}

.page-wrapper .page-body-wrapper .sidebar-inner {
    padding: 0px;
}

.page-wrapper .mobile-header .logo-wrapper img,
.page-wrapper .main-header-left .logo-wrapper img {
    width: 102px;
    height: auto;
}

.side-nav-flexbox {
    display: flex;
    flex-direction: row;
    gap: 2px;
}

.new-tag {
    padding: 2px 4px;
    margin-left: 5px;
    border-radius: 2px;
    background-color: var(--cream);
    color: var(--dark-blue-600);
    font-size: 8px;
    font-weight: 700;
    line-height: 130%;
}

.intake-q-box {
    margin-bottom: 15px;
    width: 100%;
}

.parent-q-box,
.child-q-box {
    width: 100%;
}

.radio-box-block .radio-option {
    padding-right: 0px;
}

.checkbox-list,
.radiobox-list {
    width: 100%;
    margin-bottom: 10px;
    padding-left: 15px;
    padding-right: 15px;
}

.question-box .related-question-list {
    width: 100%;
    padding-top: 10px;
}

.custom-scrollbar {
    overflow-y: auto;
    -webkit-transition: all 1s;
    transition: all 1s;
}

.page-wrapper .page-body-wrapper .page-sidebar .sidebar-menu {
    list-style: none;
    margin: 0;
    padding: 0px;
    height: 100%;
    padding: 30px;
}

.page-wrapper .page-body-wrapper .page-sidebar .sidebar-menu.submenu {
    padding: 10px;
    padding-left: 20px;
}

.page-wrapper .page-body-wrapper .page-sidebar .sidebar-menu a.sidebar-header {
    padding: 7px 10px;
    font-size: 13px;
    font-weight: 600;
    line-height: 16px;
    color: rgba(255, 255, 255, 0.85);
    -webkit-transition: .3s;
    transition: .3s;
}

.page-wrapper .page-body-wrapper .page-sidebar .sidebar-menu a.sidebar-header.subheader {
    font-size: 12px;
}

.page-wrapper .page-body-wrapper .page-sidebar .sidebar-menu li {
    padding: 16px 0;
}

.page-wrapper .page-body-wrapper .page-sidebar .sidebar-menu.submenu li {
    padding: 8px 0;
}

.page-wrapper .page-body-wrapper .page-sidebar .sidebar-menu li.active a {
    background: #FFFFFF;
    border-radius: 4px;
    padding: 7px 10px;
    color: var(--dark-blue);
}

.page-wrapper .page-body-wrapper .page-sidebar .sidebar-menu a:hover {
    text-decoration: none;
    background: #FFFFFF;
    border-radius: 4px;
    padding: 7px 10px;
    color: var(--dark-blue);
}

.page-wrapper .page-body-wrapper .page-sidebar .sidebar-menu a i {
    margin-right: 5px;
    font-size: 14px;
}

.page-wrapper .page-body-wrapper .page-sidebar ~ .page-body {
    margin-left: 265px;
    -webkit-transition: .3s;
    transition: .3s;
}

.page-sidebar .logout-wrap {
    position: absolute;
    color: #fff;
    background-color: var(--dark-brown);
    bottom: 0px;
    width: 100%;
    padding: 20px 40px 15px 40px;
    border-top: 1px solid rgba(255, 255, 255, 0.6);
    text-align: center;
    z-index: 11;
}

.page-sidebar .logout-wrap a {
    color: #fff;
    font-size: 13px;
    font-weight: 600;
    line-height: 16px;
    display: flex;
    justify-content: space-between;
}

.page-sidebar .logout-wrap a i {
    font-size: 18px;
}

.page-wrapper .page-body-wrapper .page-body {
    min-height: 100vh;
    padding: 0px;
    position: relative;
    background-color: #f7f7f7;
}

.page-wrapper .page-body-wrapper .page-header {
    background-color: #F6C769;
    background-image: url("../images/patterns/header_pattern.fff08657b1c7.png");
    background-size: cover;
    background-repeat: no-repeat;
    text-align: center;
    padding: 53px 40px 53px 40px;
    position: relative;
    background-position: center;
}

.page-wrapper .page-body-wrapper .page-header .page-title {
    font-size: 32px;
    line-height: 40px;
    margin-bottom: 20px;
}

.page-wrapper .page-body-wrapper .page-header p.info {
    font-size: 16px;
    line-height: 24px;
}

.navbar-light {
    z-index: 9;
    height: 70px;
    background: var(--cream);
}

.navbar-light.navbar-tools {
    z-index: 9;
    height: 90px;
    padding-top: 40px;
    padding-bottom: 0px;
    background: rgb(255, 255, 255);
}

.navbar-brand img {
    width: 89px;
    height: auto;
    margin-right: 20px;
}

.navbar-light .navbar-nav .active > .nav-link,
.navbar-light .navbar-nav .nav-link.active,
.navbar-light .navbar-nav .nav-link.show,
.navbar-light .navbar-nav .show > .nav-link,
.navbar-light .nav-item .nav-link:hover {
    border-bottom: 2px solid #3568FF;
    padding-bottom: 4px;
}

.navbar-light .nav-item {
    padding-left: 18px;
    padding-right: 18px;
}

.navbar-light .nav-item:last-child {
    padding-right: 0px;
}

.navbar-light .nav-item .nav-link {
    padding-left: 0px;
    padding-right: 0px;
    font-family: var(--midi-heading-font);
    font-size: 16px;
    line-height: 20px;
    color: #231F20;
}

.page-wrapper {
    margin-top: 0px;
}

.ple-home-hero-section {
    height: 544px;
    position: relative;
}

.ple-home-hero-section > .container {
    height: 100%;
    position: relative;
}

.ple-home-hero-section .hero-bg {
    background-color: #BDC3FF;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: top center;
    position: absolute;
    height: 100%;
    max-width: 100%;
    width: calc(75% - 30px);
    margin-left: 25%;
    top: 0;
    box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
    border-radius: 20px;
}

.ple-hero-section .header-box {
    background: #FFFFFF;
    box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.17);
    border-radius: 20px;
    padding: 25px 25px 0px 25px;
    text-align: center;
    width: 378px;
}

.ple-hero-section .header-box1 {
    padding-bottom: 25px;
}

h2.page-title {
    font-weight: 300;
    font-size: 46px;
    line-height: 52px;
    margin-bottom: 20px;
    text-align: left;
}

.ple-hero-section .header-box p {
    font-size: 16px;
    line-height: 24px;
    color: #95745B;
    margin-bottom: 20px;
    text-align: left;
}

.ple-home-hero-section .header-box a {
    margin: auto;
    text-align: center;
    position: relative;
    bottom: -24px;
}

.ple-home-service-categories-section .service-bg {
    background-size: cover;
    background-repeat: no-repeat;
    background-position: top center;
    width: 100%;
    margin-bottom: 30px;
    border-radius: 10px;
}

.ple-home-service-categories-section .service-full-box {
    display: flex;
    align-items: center;
    color: #fff;
    padding: 12px;

}

.service-full-box .service-inner-box {
    width: 100%;
    background-color: #fff;
    padding: 10px 16px 16px 16px;
    border-radius: 8px;
}

.ple-home-service-categories-section .service-box {
    display: flex;
    align-items: center;
    padding: 12px;
}

.ple-home-service-categories-section .service-full-box h3 {
    font-weight: normal;
    font-size: 44px;
    line-height: 65px;
    color: #231F20;

}

.service-box .service-inner-box {
    background: #FFFFFF;
    box-shadow: 0px 10px 20px rgba(41, 41, 42, 0.07);
    border-radius: 8px;
    width: 100%;
    padding: 16px;
}

.service-box .service-inner-box h3 {
    font-weight: normal;
    font-size: 24px;
    line-height: 36px;
}

.service-box .service-inner-box p {
    font-size: 16px;
    line-height: 24px;
    color: #95745B;
}

.service-full-box .service-inner-box p {
    font-size: 16px;
    line-height: 24px;
    margin-bottom: 20px;
    color: #95745B;
}

.service-box .service-inner-box .btn-wrapper {
    text-align: right;
}

.ple-meet-care-team-section {
    background: #BDC3FF;
    border: 1px solid #BCA596;
    box-sizing: border-box;
}

.care-teams-wrapper {
    padding-top: 20px;
}

.care-teams-wrapper .care-teams-item {
    display: flex;
    align-items: center;
}

.care-teams-wrapper .care-teams-item .care-teams-img,
.care-teams-wrapper .care-teams-item .care-teams-info {
    width: 50%;
}

.care-teams-wrapper .care-teams-item .care-teams-img {
    padding: 0 60px;
}

.care-teams-wrapper .care-teams-item .care-teams-info h3 {
    font-style: normal;
    font-weight: 200;
    font-size: 70px;
    line-height: 85px;
    margin-bottom: 10px;
}

.care-teams-wrapper .care-teams-item .care-teams-info h4 {
    font-size: 20px;
    line-height: 30px;
    margin-bottom: 25px;
}

.care-teams-wrapper .care-teams-item .care-teams-info p {
    font-size: 14px;
    line-height: 19px;
    color: #755740;
    width: 85%;
}

.ple-testimonial-section {
    padding-top: 70px;
    padding-bottom: 70px;
}

.ple-testimonial-section .btn-wrapper {
    margin-top: 30px;
}

.ple-testimonial-section h3.section-title {
    margin-bottom: 60px;
}

.ple-testimonial-section p {
    font-size: 14px;
    line-height: 19px;
}

.ple-testimonial-section .testimonial-full-box,
.ple-testimonial-section .testimonial-box {
    background: #FFFFFF;
    box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.17);
    border-radius: 20px;
    padding: 20px;
    min-height: 225px;
    margin-bottom: 30px;
}

.ple-testimonial-section .testimonial-full-box blockquote {
    font-style: italic;
    font-weight: normal;
    font-size: 29px;
    line-height: 36px;
    color: #755740;
}

.ple-testimonial-section .testimonial-box blockquote {
    font-style: italic;
    font-weight: normal;
    font-size: 16px;
    line-height: 20px;
    color: #755740;
    margin-bottom: 20px;
}

.ple-testimonial-section .testimonial-user-info img {
    width: 58px;
    height: 58px;
    border-radius: 100%;
}

.ple-testimonial-section .testimonial-user-info span {
    font-family: var(--midi-heading-font);
    font-size: 20px;
    line-height: 30px;
    margin-left: 10px;
}

.owl-theme .owl-dots .owl-dot {
    width: 29px;
    height: 29px;
    border-radius: 100%;
    background-color: #fff;
    margin-right: 15px;
}

.owl-theme .owl-dots .owl-dot span {
    width: 15px;
    height: 15px;
    background-color: #fff;
}

.owl-theme .owl-dots .owl-dot.active span,
.owl-theme .owl-dots .owl-dot:hover span {
    background: #231F20;
}

.care-teams-carousel .owl-dots,
.care-teams-carousel .owl-nav {
    position: absolute;
    right: 30%;
    bottom: 50px;
}

.care-teams-carousel .owl-nav button {
    background-color: transparent !important;
}

.care-teams-carousel .owl-nav button.owl-next,
.care-teams-carousel .owl-nav button.owl-prev {
    font-size: 24px;
}

.footer-wrapper {
    background: #3568FF;
    padding: 20px;
    color: #fff;
}

.footer-wrapper img {
    width: 67px;
    height: auto;
}

.custom-section .title-wrap {
    text-align: left;
    margin-bottom: 40px;
}

.custom-section .btn-wrapper {
    margin-top: 20px;
}

label.col-form-label {
    font-size: 16px;
    font-weight: 600;
}

.registration.custom-control-label {
    font-size: 16px;
    line-height: 24px;
    padding-left: 12px;
    vertical-align: middle;
    padding-top: 5px;
}

.schedule.custom-control-label {
    font-size: 16px;
    line-height: 24px;
    vertical-align: middle;
    padding-top: 0;
    font-family: var(--body-font);
}

.all-providers-toggle {
    margin-bottom: 10px;
}

.custom-checkbox .custom-control-label::before,
.custom-radio .custom-control-label::before {
    border-color: #231F20;
}

.registration.custom-control-label::after,
.registration.custom-control-label::before {
    width: 24px;
    height: 24px;
}

.custom-control-input:checked ~ .custom-control-label::before {
    background: #fff;
}

.custom-control-input:focus:not(:checked) ~ .custom-control-label::before {
    border-color: #231F20;
}

.custom-control-input:focus ~ .custom-control-label::before {
    box-shadow: none !important;
}

.custom-control-input:checked ~ .custom-control-label::before {
    background-color: #3568FF;
    border-color: #3568FF;
    color: #fff;
}

.custom-checkbox .custom-control-input:checked ~ .custom-control-label::after {
    font-family: 'feather';
    font-size: 13px;
    content: "\e83f";
    text-align: center;
    line-height: 24px;
    color: #fff;
    background: none;
}

.custom-radio .custom-control-input:checked ~ .custom-control-label::after {
    font-family: 'feather';
    font-size: 14px;
    content: "\e83f";
    text-align: center;
    line-height: 24px;
    color: #fff;
    background: none;
}

.custom-checkbox .custom-control-label::before {
    border-radius: 4px;
}

h4.form-sub-title {

    font-weight: 400;
    color: #3568FF;
    font-size: 18px;
}

.datepicker table tr td.active.active,
.datepicker table tr td.active.highlighted.active,
.datepicker table tr td.active.highlighted:active,
.datepicker table tr td.active:active {
    color: #fff;
    background-color: #3568FF;
    border-color: #231F20;
}

/*commented because question-box is used in multiple places and display:flex distorts the layout*/
/*.question-box:first-child {*/
/*    display: flex !important;*/
/*}*/

.question-box .q-title {
    margin-bottom: 20px;
    line-height: 30px;
    font-size: 24px;
    font-weight: 700;
}

.question-box .q-option {
    background: #F7F7F7;
    border: 1px solid #F7F7F7;
    box-sizing: border-box;
    border-radius: 0px;
    margin-bottom: 0px;
    padding: 11px 16px;
    display: flex;
    align-items: center;
    cursor: pointer;
    font-size: 18px;
    line-height: 24px;
    text-align: left;
    position: relative;
}

.question-box .q-option.radio-label {
    background: none;
    border: none;
    box-sizing: content-box;
    padding: 11px 16px 0px !important;
}

.question-box .q-option:hover {
    filter: drop-shadow(0px 4px 4px rgba(0, 0, 0, 0.25));
}

.question-box .q-option .choice-title {
    padding-left: 15px;
}

.question-box .form-check-option {
    border: 0px;
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0px;
    white-space: nowrap;
    width: 1px;
    position: absolute;
    bottom: 0px;
}

.question-box .check-icon {
    border: 1px solid #231F20;
    border-radius: 100%;
    width: 24px;
    height: 24px;
    display: flex;
    align-items: center;
    justify-content: center
}

.question-box .check-box .check-icon {
    border-radius: 4px;
}

.question-box label svg {
    opacity: 0;
}

.form-check-option:checked + label.q-option {
    background-color: rgba(53, 104, 255, 0.2) !important;

}

.form-check-option:checked + label.q-option.radio-label {
    background-color: transparent !important;
}

.form-check-option:checked + label.q-option .check-icon {
    background-color: #3568FF;
    border-color: #3568FF;
}

.form-check-option:checked + label.q-option svg {
    stroke: #fff;
    opacity: 1;
    width: 18px;
    height: 18px;
}

input[type="radio"].form-check-option, input[type="checkbox"].form-check-option {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
}


.other-text-wrap {
    margin-top: 20px;
}

.dob-wrapper {
    display: flex;
}

.dob-wrapper .dob-item {
    padding-right: 10px;
}

.radio-box,
.check-box {
    flex-basis: 100%;
    margin-bottom: 10px;
    padding: 0;
}

.question-box .radio-option {
    padding-right: 10px;
    flex-grow: 1;
}

.question-box .radio-option:last-child {
    padding-right: 0;
}

.schedule-section .schedule-box {
    flex-direction: column;
    width: 100%;
    margin: auto;
    flex: 1 0 auto;
    max-width: 680px;
    display: flex;
}

.schedule-item-wrapper {
    grid-auto-flow: initial;
    grid-auto-columns: initial;
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
    gap: 15px;
    margin-right: 20px;
}

.schedule-date-box {
    margin-bottom: 0px;
}

.schedule-date-box p.date {
    margin-bottom: 15px;
    font-size: 18px;
    color: #3568FF;
    font-weight: 700;
}

.schedule-item-wrapper .schedule-item {
    background-color: #FFFFFF;
    padding: 10px;
    border-radius: 40px;
    color: #231F20;
    border: 1px solid #231F20;
    cursor: pointer;
}

.schedule-item-wrapper .schedule-item.active {
    background-color: var(--dark-blue);
    color: #FFFFFF;
}

.schedule-item-wrapper .schedule-item:hover {
    filter: drop-shadow(0px 4px 4px rgba(0, 0, 0, 0.25));
}

.schedule-item-wrapper .schedule-item .time-info-flex {
    -webkit-box-pack: center;
    justify-content: center;
    align-items: center;
    display: flex;
}

.schedule-item-wrapper .schedule-item .a-type {
    -webkit-box-pack: center;
    justify-content: center;
    align-items: center;
    display: flex;
    font-size: 14px;
    font-weight: normal;
    color: #231F20;
}

.schedule-item-wrapper .schedule-item .a-type i {
    font-size: 18px;
}

.schedule-item-wrapper .schedule-item .time-info-flex p {
    line-height: 24px;
    font-weight: 600;
    font-size: 16px;
    margin-bottom: 0;
    color: #231F20;
}

.schedule-item-wrapper .schedule-item .time-info-flex span {
    box-sizing: border-box;
    margin: 0px 0px 0px 4px;
    min-width: 0px;
    font-size: 14px;
    line-height: 16px;
    color: #231F20;
}

.schedule-item-wrapper .schedule-item.active .time-info-flex p {
    color: #FFFFFF;
}

.frmschedule .pager {
    -webkit-box-pack: justify;
    justify-content: space-between;
    display: flex;
    margin-bottom: 30px;
}

.frmschedule .pager button {
    box-sizing: border-box;
    text-align: center;
    color: #fff;
    border: 0px;
    cursor: pointer;
    border-radius: 0px;
    background: none;
    padding: 0px;
    text-transform: uppercase;
    font-size: 14px;
    display: none;
    -webkit-box-align: center;
    align-items: center;
}

.frmschedule .pager button.show {
    display: flex;
}

.frmschedule .pager button svg {
    width: 18px;
    height: 18px;
}

.frmschedule .pager-bottom {
    margin-top: 30px;
}

.filter-section {
    margin-bottom: 40px;
}

.filter-section .accordion > .card {
    border-radius: 8px;
    border-color: #BCA596;
}

.filter-section .accordion > .card > .card-header {
    padding: 20px;
    background: #BDC3FF;
    border-color: #BCA596;
}

.filter-section .card-header div .header-title {
    overflow: hidden;
    font-weight: 600;
    font-size: 20px;
    line-height: 41px;
}

.filter-section .card-header .filter-toggle {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

[aria-expanded="false"] .fa-chevron-up,
[aria-expanded="true"] .fa-chevron-down {
    display: none;
}

.no-slot-available {
    padding: 20px;
    margin-top: 25px;
    width: 250px;
    background-color: #C8F5FF;
}

.no-slot-available h4 {
    margin-bottom: 25px;
}

.no-slot-available p {
    margin-bottom: 10px;
}

.modal-fullscreen {
    width: 100vw;
    max-width: none;
    height: 100%;
    margin: 0;
}

.modal-fullscreen .modal-body {
    overflow-y: auto;
}

.modal-fullscreen .modal-content {
    height: 100%;
    border: 0;
    border-radius: 0;
}

.midi-modal .modal-title {
    font-family: var(--body-font);
    color: var(--dark-blue);
    font-weight: 350;
    font-size: 16px;
    line-height: 1.5;
    text-transform: uppercase;
    margin-bottom: 0;
}

.midi-modal .btn-close {
    color: var(--dark-blue);
    font-size: 14px;
    background-color: transparent;
    border: none;
    box-sizing: content-box;
}

.midi-modal {
    background-color: var(--cream-100);
}

.custom-modal .modal-content {
    padding: 20px;
}

.custom-modal .modal-dialog {
    max-width: 480px;
}

.custom-modal .modal-header {
    justify-content: center;
}

.custom-modal .modal-header,
.custom-modal .modal-footer {
    border: none;
}

.custom-modal .modal-header .close {
    position: absolute;
    float: none;
    top: 15px;
    right: 20px;
    font-size: 30px;
    opacity: 1;
    font-weight: 400;
    margin: 0;
    padding: 0;
}

.custom-modal .modal-header .modal-title {
    text-align: center;
    font-size: 24px;
}

.review-appointment-box {
    box-sizing: border-box;
    border-radius: 10px;
    padding: 20px;
    margin: 10px auto 20px auto;
    background: #FFFFFF;
    border: 1px solid #ccc;
    text-align: center;
    width: 100%;
}

.review-appointment-box .appointment-info {
    padding: 20px;
    border-radius: 10px;
}

.review-appointment-box .appointment-info p.schedule-date {
    font-weight: 700;
    font-size: 18px;
}

.appointment-info p.info {
    font-size: 16px;
}

.success-card {
    border: 1px solid #f0f0f0;
    box-shadow: 0px 10px 20px rgb(41 41 42 / 7%);
    border-radius: 8px;
}

.success-card .success-info {
    text-align: center;
}

.success-card .card-body {
    padding: 50px 20px;
}

.success-card .success-info i {
    align-items: center;
    color: #fff;
    width: 60px;
    height: 60px;
    border: 2px solid #3568FF;
    border-radius: 50%;
    display: inline-flex;
    justify-content: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    font-size: 30px;
    margin-bottom: 30px;
    background-color: #3568FF;
}

.success-card .success-info h3 {
    font-size: 24px;
}

.success-card .success-info p {
    font-size: 16px;
}

.success-card .success-info p.date {
    font-weight: 700;
    font-size: 18px;
    display: block;
    color: #3568FF;
}

.user-intake-list {
    margin-bottom: 40px;
}

.user-intake-list .sub-title {
    text-align: center;
    font-size: 20px;
    font-weight: 400;
    margin-bottom: 30px;
}

.user-intake-list .list-group-item {
    background-color: transparent;
    padding: 16px 0;
    align-items: center;
}

.user-intake-list .list-group-item p.title {
    font-family: var(--body-font);
    font-size: 16px;
    line-height: 24px;
    font-weight: 350;
    margin-bottom: 0;
}

.user-intake-list a.btn-icon {
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    -webkit-box-pack: center;
    justify-content: center;
}

.skip-step a {
    font-size: 16px;
    color: #3568FF;
}

.title-wrap {
    text-align: left;
    margin-bottom: 20px;
}

.btn-wrapper .btn:not(.btn-intrinsic-w),
.btn-fixed-width {
    width: 256px;
}

.btn-wrapper .btn:not(.btn-intrinsic-w),
.btn-large-fixed-width {
    width: 264px;
}

.btn-wrapper .btn-small-fixed-width {
    width: 210px !important;
}

.title-wrap h3 {
    font-weight: 500;
    font-family: var(--heading-font-bold);
    font-size: 18px;
    line-height: 28px;
}

.title-wrap p {
    font-size: 18px;
    line-height: 24px;
    color: rgb(35 31 32 / 80%);
}

.symptom-row {
    padding-top: 15px;
}

.symptom-box {
    background: #FDF8EC;
    border-radius: 4px;
    padding: 15px;
    min-height: 150px;
    margin-bottom: 15px;
    display: block;
    width: 100%;
    cursor: pointer;
    position: relative;
}

.prior-symptom-box {
    background-color: transparent;
    border: 1px solid #F6C769;
}

.symptom-row .form-check-option {
    border: 0px;
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0px;
    white-space: nowrap;
    width: 1px;
    position: absolute;
    bottom: 0px;
}

.symptom-box .check-icon {
    border: 1px solid #231F20;
    border-radius: 100%;
    width: 23px;
    height: 23px;
    position: absolute;
    right: 20px;
    top: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.symptom-box .check-icon svg {
    display: none;
}

.form-check-option:checked + label.symptom-box,
.label.symptom-box:hover {
    background-color: #F6C769;
}

.form-check-option:checked + label.symptom-box .check-icon {
    background-color: #231F20;
    color: #fff;
}

.form-check-option:checked + label.symptom-box .check-icon svg {
    display: block;
}

.symptom-box .icon-wrapper {
    margin-bottom: 30px;
}

.symptom-icon {
    width: 30px;
    height: auto;
}

.intake-modal-section .symptom-icon,
.intake-modal-section .icon-wrapper svg {
    width: 40px;
    height: auto;
}

.intake-modal-section .icon-wrapper svg .cls-1 {

    fill: #BA5B36 !important;
}

.intake-modal-section .icon-wrapper {
    padding: 20px 0;
}

.symptom-box p.title {
    font-size: 15.5px;
    line-height: 24px;
    margin-bottom: 0;
}

.progress-wrap {
    margin-bottom: 40px;
}

.progress-wrap h3.title {
    font-size: 20px;
    line-height: 28px;
    margin-bottom: 15px;
}

.progress-wrap .progress {
    height: 2px;
}

.insurance-card-wrapper .insurance-card-box {
    padding: 20px 0;
    width: 100%;
    border-radius: 10px;
    margin-bottom: 25px;
}

.insurance-card-wrapper .insurance-card-box h4 {
    margin-bottom: 15px;
}

.file-upload-wrapper {
    position: relative;
}

.btn-take-photo svg {
    margin-right: 5px;
}

.file-upload-btn:active,
.btn-take-photo:active {
    transition: all .2s ease;
}

.file-upload-content {
    text-align: center;
    position: relative;
    border-radius: 5px;
    border: 1px dashed var(--dark-blue-400);
    background-color: var(--cream-50);
}

.file-upload-input {
    position: absolute;
    margin: 0;
    padding: 0;
    width: 100%;
    height: 100%;
    outline: none;
    opacity: 0;
    cursor: pointer;
    left: 0;
}

.image-upload-wrap {
    margin-top: 0px;
    border: 1px dashed var(--dark-blue-400);
    border-radius: 4px;
    box-sizing: border-box;
    position: relative;
    background-color: var(--cream-50);
}

.image-dropping,
.image-upload-wrap:hover {
    background-color: #BDC3FF;
    border: 2px dashed rgb(35 31 32 / 65%);
}

.image-title-wrap {
    padding: 0 15px 15px 15px;
}

.drag-text {
    text-align: center;
    padding: 60px 20px;
}

.drag-text p {
    color: rgb(35 31 32 / 65%);
    font-size: 16px;
    margin-bottom: 7px;
}

.drag-text p a {
    color: rgb(35 31 32 / 65%);
    font-size: 16px;
    margin-bottom: 0px;
    text-decoration: underline;
}

.drag-text p a:hover {
    color: #3568FF;
}

.drag-text p.file-note {
    font-size: 12px;
}

.file-upload-image {
    height: auto;
    width: 60%;
    margin: auto;
    object-fit: contain;
    display: block;
    border-radius: 5px;
    margin-top: 26px;
    margin-bottom: 26px;
}

.file-upload-image-large {
    width: 98%;
}

.file-upload-content .close-button {
    position: absolute;
    top: -10px;
    right: -10px;
    width: 30px;
    height: 30px;
    background-color: black;
    border: 1px solid white;
    border-radius: 999px;
    color: white;
    font-size: 16px;
    line-height: 20px;
    text-align: center;
    cursor: pointer;
}

.file-upload-content .close-button:before,
.file-upload-content .close-button:after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 14px;
    height: 1px;
    background-color: white
}

.file-upload-content .close-button:before {
    transform: translate(-50%, -50%) rotate(45deg);
}

.file-upload-content .close-button:after {
    transform: translate(-50%, -50%) rotate(-45deg);
}

.file-upload-wrapper .btn-upload-wrapper {
    padding-bottom: 10px;
    display: flex;
    justify-content: space-between;
}

.file-upload-wrapper .btn-upload-wrapper a {
    color: #BA5B36;
}

.remove-image {
    margin: 0;
    color: #fff;
    background: #cd4535;
    border: none;
    padding: 10px;
    border-radius: 4px;
    transition: all .2s ease;
    text-transform: uppercase;
    font-weight: 700;
    margin-top: 15px;
}

.remove-image:hover {
    background: #c13b2a;
    color: #ffffff;
    transition: all .2s ease;
    cursor: pointer;
}

.remove-image:active {
    border: 0;
    transition: all .2s ease;
}

.midi-spinner {
    display: none;
}

.htmx-request.cancel-reschedule-box,
.htmx-request.midi-card,
.htmx-request.open-appointments-box {
    pointer-events: none;
    opacity: 0.6;
    transition: opacity 500ms ease-in;
}

.htmx-request.midi-spinner {
    display: block;
    position: absolute;
    z-index: 1031;
    top: 50%;
    right: 50%;
    margin-left: -15px;
    margin-right: -15px;
}

.midi-disclaimer {
    background-color: #C8F5FF;
    padding: 15px;
    text-align: center;
    color: #3568FF;
    position: relative;
}

.midi-disclaimer p {
    margin-bottom: 0;
    color: #3568FF;
    font-weight: 400;
    font-size: 16px;
    line-height: 20px;
}

.midi-disclaimer .btn-close {
    color: #3568FF;
    font-size: 14px;
    background-color: transparent;
    border: none;
    box-sizing: content-box;
    position: absolute;
    right: 15px;
    top: 12px;
}

ul.past-visit-items li {
    border-bottom: 1px solid rgba(35, 31, 32, .2);
    padding: 16px 0;
}

ul.past-visit-items li:last-child {
    border-bottom: none;
}

ul.past-visit-items li:only-child {
    border-bottom: 1px solid rgba(35, 31, 32, .2);
}

.past-visit-item p.title {
    font-family: var(--body-font);
    font-size: 18px;
    line-height: 24px;
    font-weight: normal;
    margin-bottom: 0;
}

.bootstrap-select .dropdown-menu {
    font-family: var(--body-font);
    color: #231F20;
    font-size: 16px;
    line-height: 32px;
}

.bootstrap-select .filter-option {
    text-transform: none;
}

.bootstrap-select .dropdown-toggle .filter-option {
    font-family: var(--body-font);
    color: #231F20;
    font-size: 16px;
    line-height: 16px;
}

.bootstrap-select .dropdown-toggle {
    padding-left: 10px;
    padding-right: 20px; /* add 10px for the chevron icon */
}

.bootstrap-select .dropdown-toggle .filter-option-inner-inner {
    padding-right: 10px;
}

.bootstrap-select {
    border-color: #231F20;
}

.bootstrap-select .dropdown-toggle {
    border-color: #231F20;
}

.flatpickr-input:not(:disabled) {
    background-color: #fff !important;
    color: #000 !important;
}

/*==================Loader Icon used in UIblock overlay====================*/
.midi-loader {
    /*z-index: 100;*/
    /*position: fixed;*/
    /*left: 40%;*/
    /*top: 33%;*/
    width: 125px !important;
}

.empty-message {
    font-weight: 500;
    font-size: 18px;
    line-height: 28px;
}

.hide {
    display: none;
}

.margin-bottom8px {
    margin-bottom: 8px !important;
}

.midi-store-icon {
    width: 20px;
    height: 18px;
}

.sidebar-header:hover .midi-store-icon path {
    stroke: var(--dark-blue);
}

#payButton {
    font-size: 12px;
}

/*=================== Make a table scrollable vertically ===========================*/
.table-wrapper-scrollbar {
    position: relative;
    height: 200px;
    overflow: auto;
}

.table-wrapper-scroll-vertical {
    display: block;
}

.table-outer-border {
    border: 1px solid #dee2e6 !important;
}

.midi-table {
    font-size: 16px;
    line-height: 20px;
    font-weight: 350;
}

/*=================== Midi List view ===========================*/
.midi-list {
    background: #F7F7F7;
    border: 1px solid #F7F7F7;
    box-sizing: border-box;
    border-radius: 0px;
    margin-bottom: 0px;
    padding: 11px 16px;
    align-items: center;
    cursor: pointer;
    font-size: 18px;
    line-height: 24px;
    position: relative;
    width: 100%;
    display: inline-block;
}

.midi-list:hover {
    filter: drop-shadow(0px 4px 4px rgba(0, 0, 0, 0.25));
}

.midi-list .title {
    padding-left: 10px;
    text-align: left;
    display: inline-block;
    width: 90% !important;
}

.midi-list .icon-right {
    float: right;
    display: inline-block;
}

/*============================== COLORS ==================================*/
.red-text {
    color: red;
}

.grey-text {
    color: #969494 !important;
}

.green-text {
    color: green;
}

.blue-text {
    color: var(--dark-blue) !important;
}

.light-blue-background {
    background-color: #F0FBFF;
}

.white-background {
    background-color: #FFFFFF;
}

.marigold_700_background {
    background-color: rgba(255, 251, 223, 1);
}

.charcoal_200_background {
    background-color: #F4F4F4;
}

[x-cloak] {
    display: none;
}

.empty-container {
    background-color: #f7f7f7;
    width: 100%;
}

.center {
    text-align: center;
}

.red-border {
    border: 1px solid red;
}

.btn-close.red-text {
    filter: invert(48%) sepia(81%) saturate(6293%) hue-rotate(346deg) brightness(94%) contrast(105%); /* Red color for the X icon */
}

.midi-specialty-title {
    color: #231F20;
    text-transform: uppercase;
    font-family: var(--body-font-bold);
    font-size: 14px;
    font-weight: 500;
    line-height: 18.76px;
    letter-spacing: 0.08em;
}

.midi-specialty-description {
    font-family: var(--body-font);
    font-size: 12px;
    font-weight: 350;
    line-height: 16px;
    color: var(--midi-charcoal-650);
}

/*============================== landing page ==================================*/
.midi-center-container {
    display: flex;
    justify-content: center; /* Horizontal centering */
    align-items: center; /* Vertical centering */
    height: 852px; /* Adjust height of container as needed (viewport height) */
}


.midi-circle-list {
    /*position: relative;*/
    width: 100%;
    text-align: left;
    display: inline-block;
    color: black;
    font-weight: 500;
    font-size: 12px;
    line-height: 18px;
}

.midi-circle-list li {
    margin-top: 15px;
    margin-bottom: 15px;
}

div.circle-number {
    background-color: #C8F5FF;
    width: 36px;
    height: 36px;
    position: relative;
    border-radius: 100%;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    text-transform: uppercase;
    color: black;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    text-align: center;
    flex-shrink: 0;
}

div.circle-info {
    display: inline-flex;
    height: 36px;
    position: relative;
    /*flex-direction: column;*/
    /*justify-content: center;*/
    flex-shrink: 0;
    color: #000;

    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    /*line-height: normal;*/
    margin-left: 15px;
}

/*========================================================================*/
/*============================== NEW UI ==================================*/
/*========================================================================*/
.img-fit {
    display: flex;
    position: relative;
    object-fit: cover;
    height: 100%;
    width: 100%;
}

.scale-img {
    width: 100%;
}

.midi-link {
    font-size: 16px;
}

.midi-title {
    font-family: var(--midi-heading-font);
    font-size: 2rem;
    font-weight: 400;
    line-height: 1.2;
    color: #231F20;
    margin-bottom: 0.5rem;
}

.midi-sub-title {
    font-feature-settings: 'clig' off, 'liga' off;
    font-size: 16px;
    font-style: normal;
    font-weight: 350;
    line-height: 24px;
}

.midi-question {
    font-family: var(--body-font);
    font-size: 22px;
    font-weight: 350;
    line-height: 32px;
    color: #231F20;
}

.top-10 {
    top: 10px;
}

.top-5 {
    top: 5px;
}

.midi-list-item {
    background: white;
    border: none;
    font-family: var(--body-font);
    font-size: 18px;
    font-weight: 350;
    line-height: 24px;
    text-align: left;
    padding: 1rem !important;
    margin-bottom: .5rem !important;
    margin-top: .5rem !important;
}

/* To increase clickable area of listview */
.midi-list-item .form-check-label {
    width: 90%;
}

.midi-list-cell {
    padding: 1rem !important;
    margin-bottom: .5rem !important;
    margin-top: .5rem !important;
    box-shadow: 0px 8px 10px -5px rgba(189, 195, 255, 0.30);
}

.midi-input-datebox input {
    border: none;
    height: auto;
}

.midi-input-datebox button {
    border: none;
    background-color: white;
}

.midi-fill-full-screen {
    width: 100%;
    height: 200vh;
}

.accordion .accordion-button {
    border-bottom: none !important;
    box-shadow: none !important;
    background: #fff;
}


.midi-form-box {
    flex-direction: column;
    width: 100%;
    margin: auto;
    flex: 1 0 auto;
    max-width: 680px;
    display: flex;
}

.midi-accordion-card {
    box-shadow: 0px 8px 10px -5px rgba(189, 195, 255, 0.30);
}

.midi-accordion-list-text {
    color: #231F20;
    text-transform: uppercase;
    font-family: var(--body-font-bold);
    font-size: 14px;
    font-weight: 500;
    line-height: 18.76px;
    letter-spacing: 0.08em;
}

.midi-vertically-center-block {
    /* Vertical center align the text in midi-accordion-card*/
    height: inherit; /* Set a fixed height for the container */
    display: flex;
    align-items: center;
}

.midi-text-p4 {
    font-family: var(--body-font);
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 18px;
}


.step-progress {
    height: 4px;
    background-color: rgba(246, 221, 223, 1);
}


.step-progress .progress-bar {
    background-color: var(--dark-pink);
}

.cream-background {
    background-color: var(--cream);
}

.light-cream-background {
    background-color: var(--cream-100);
}

.midi-non-clickable-link {
    pointer-events: none;
}

.text-color-light-gray {
    color: #707070;
}

.navbar-light {
    height: 48px !important;
}

.midi-help-text {
    padding: 16px;
    gap: 10px;
    border-radius: 8px;
    border: 1px solid #BA5B36
}

.midi-help-text .header {
    font-family: var(--midi-heading-font);
    font-size: 18px;
    font-weight: 400;
    line-height: 24px;
    text-align: left;
    color: #BA5B36;
}

.midi-help-text .body {
    font-family: var(--body-font);
    font-size: 14px;
    font-weight: 400;
    line-height: 24px;
    text-align: left;
    color: #BA5B36;
}

.midi-medium-body-text, p.midi-medium-body-text {
    font-family: var(--body-font);
    color: var(--midi-charcoal-750);
    font-size: 1.28rem;
    line-height: 1.46rem;
    margin-bottom: 16px;
}  

.midi-hidden {
    display: none;
}

.info-icon {
    color: #A7A5A8;
    cursor: pointer;
    height: 20px;
}

.sticky-bottom-row {
    position: fixed;
    bottom: 0px;
    width: 100%;
    z-index: 1000; /* Make sure the button appears above other content */
    background-color: var(--cream);
}

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

.midi-charcoal-black {
    color: #231F20;
}

.midi-message-banner {
    display: flex;
    border-radius: 16px;
    padding: 16px;
    gap: 16px;
}

.midi-banner-color-blue {
    border: 1px solid #7698FF;
    background-color: #F4F7FF;
}

.midi-banner-color-blue .midi-banner-icon-container {
    color: #7698FF;
}

.midi-banner-color-green {
    border: 1px solid #5FAD5F;
    background-color: #EDFFED;
}

.midi-banner-color-green .midi-banner-icon-container {
    color: #5FAD5F;
}

.midi-banner-color-yellow {
    border: 1px solid #ADA560;
    background-color: #FFFBDF;
 }

.midi-banner-color-yellow .midi-banner-icon-container {
    color: #ADA560;
}

.midi-message-banner p {
    font-size: 16px;
    line-height: 23.4px;
}

.midi-message-banner p:first-of-type {
    margin-top: 4px;
}

.midi-message-banner p:last-of-type {
    margin-bottom: 0;
}

a.midi-message-banner-btn {
    display: inline-block;
    font-size: 1.1rem;
    line-height: 1.35rem;
    padding: 8px 16px;
    cursor: pointer;
    border-radius: 4px;
    text-align: center;
    text-decoration: none;
    font-weight: 700;
    color: white;
    margin-top: 16px;
}

.midi-banner-color-green a.midi-message-banner-btn {
    background-color: #325C32;
}

.midi-banner-color-green a.midi-message-banner-btn:hover {
    background-color: #5f975f;
}

.midi-banner-color-blue a.midi-message-banner-btn {
    background-color: #3568FF;
}

.midi-banner-color-blue a.midi-message-banner-btn:hover {
    background-color: #1945C5;
}

.midi-banner-color-yellow a.midi-message-banner-btn {
    background-color: #594826;
}

.midi-banner-color-yellow a.midi-message-banner-btn:hover {
    background-color: #A78747;
}

.midi-bold-body-text, p.midi-bold-body-text {
    color: #363535;
    font-weight: 700;
    margin-bottom: 4px;
}

.midi-extra-bold-title {
    font-family: var(--body-font-bold);
    color: var(--midi-charcoal-800);
    margin-bottom: 4px;
    font-weight: 700;
}

a.midi-btn, button.midi-btn {
    display: inline-block;
    font-family: var(--body-font-bold);
    font-size: 1.15rem;
    padding: 15px 30px;
    cursor: pointer;
    border-radius: 12px;
    text-align: center;
}

button.midi-btn:disabled {
    opacity: 65%;
    cursor: auto;
}

a.midi-btn-primary, button.midi-btn-primary {
    color: var(--cream);
    background-color: var(--dark-blue);
    border: none;
}

.midi-btn-primary:hover:not([disabled]), .midi-btn-primary:active {
    background-color: var(--dark-blue-700);
}

.logo-wrapper .midi-logo-svg {
    height: 60px;
}

.logo-wrapper-home {
    margin-left: auto;
    margin-right: auto;
}

.midi-logo-container-wide-small {
    height: auto;
    width: 70px;
}

.midi-logo-container-box-x-small {
    height: auto;
    width: 20px;
}

.midi-logo-svg svg {
    height: 100%;
    width: 100%;
}

.midi-logo-box-small {
    width: 100%;
    height: 57px;
}

.specialty-hero-container {
    height: 852px; /* matches height of mid-center-container */
}

.specialty-hero-container img {
    object-fit: cover;
    aspect-ratio: 1.1 / 2;
}


.light-gray-top-border-desktop {
    @media (min-width: 576px) {
        border-top: 1px solid var(--midi-charcoal-100);
    }
}

.midi-card-buttons-links {
    display: flex;
    justify-content: center;
}

/* utility classes */

.midi-mb-20 {
    margin-bottom: 20px;
}

.midi-bottom-border-light {
    border-bottom: 1px solid rgba(0, 0, 0, .125);
}

.midi-light-background {
    background-color: var(--cream);
}

.midi-flex-column-center {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.midi-responsive-image {
    max-width: 100%;
    height: auto;
}

.midi-pink-svg-fill {
    color: var(--dark-pink);
}

.midi-dark-blue-svg-fill {
    color: var(--dark-blue);
}

.midi-dark-blue-600-svg-fill {
    color: var(--dark-blue-600);
}

.midi-black-svg-fill {
    color: var(--black);
}

.midi-white-svg-fill {
    color: var(--white);
}

/* overrides */
button.btn-link {
    color: var(--dark-blue);
    font-family: var(--body-font-bold);
}

.midi-login-logo-wrapper {
    width: 160px;
    height: 191px;

svg {
    width: 100%;
    height: 100%;
}

}

.midi-login-logo-container {
    grid-column: 2 / 3;
    grid-row: 1;
    background-color: var(--dark-blue);
    display: flex;
    justify-content: center;
    align-items: center;
}

.midi-filter-color {
    filter: invert(.5);
}

.midi-body-text-lg {
    font-size: 18px;
    line-height: 130%;
}

.light-gray-border-bottom {
    border-bottom: 1px solid var(--midi-charcoal-100);
}

.specialty-selection-list li {
    cursor: pointer;
}

.navbar-back-arrow {
    cursor: pointer;
}

.hidden {
    visibility: hidden;
}

.table-height-500 {
    max-height: 500px;
    overflow-y: auto;
}

.mt-2_5 {
  margin-top: 2.5rem;
}

.midi-h3 {
    font-family: var(--midi-heading-font);
    font-size: 2.214rem;
    line-height: 120%;
    letter-spacing: -0.5px;
    margin-bottom: 8px;
}

.midi-fieldset-legend {
    padding-bottom: 1px;
}

.midi-input-span {
    width: 80%;
}

.midi-radio-button {
    font-size: 16px;
    display: flex;
    align-items: center;
    background-color: var(--cream-100);
    border: 1px solid var(--midi-charcoal-20);
    border-radius: 4px;
    padding: 12px 16px;
    margin-bottom: 12px;
    cursor: pointer;
    box-shadow: 0px 4px 4px -4px rgba(25, 25, 24, 0.25);
}

.midi-radio-button input[type="radio"]  {
    margin-right: 10px;
    width: 24px;
    height: 24px;
    margin-left: 0 !important; /* have to override the older radio button styling elsewhere */
}

.midi-radio-button:hover {
    background-color: var(--midi-charcoal-25);
    border: 1px solid var(--midi-charcoal-20);
}
  
.midi-radio-button:has(input[type="radio"]:checked) {
    background-color: var(--midi-color-poolside);
    border-color: var(--dark-blue);
}

.midi-radio-button input[type="radio"]:checked {
    accent-color: var(--dark-blue);
}

.checkbox-non-of-the-above-icon-checked {
  display: none;
  margin-right: 8px;
}

.checkbox-non-of-the-above {
  display: block;
  width: fit-content;
  align-items: center;
  padding: 6px 0;
  margin-bottom: 80px;
  border-radius: 4px;
  cursor: pointer;
  font-weight: 700;
  color: var(--dark-blue);
}

.checkbox-non-of-the-above:hover {
    color: var(--dark-blue-700);
} 

.checkbox-non-of-the-above:has(:focus-visible) {
    border: 1px solid var(--midi-charcoal-900);
}

.checkbox-non-of-the-above:has(input[type="checkbox"]:checked) {
    color: var(--dark-blue-700);
    background-color: var(--midi-color-poolside);
    padding: 6px 10px;
    
}

.checkbox-non-of-the-above:has(input[type="checkbox"]:checked) .checkbox-non-of-the-above-icon-checked {    
    display:inline;  
}

.checkbox-non-of-the-above input[type="checkbox"] {
    height: 0;
    width: 0;
    margin: 0;
    padding: 0;
    position: absolute;
    left: -1000px;
}

   
.midi-cta-button-container {
    width: 16rem;
}

.midi-full-width {
    width: 100%;
}

.midi-font-bold {
    font-family: var(--body-font-bold);
}

.midi-charcoal-900 {
    color: var(--midi-charcoal-900);
}

.mt-50px {
    margin-top: 50px !important;
}

.midi-bounded-content {
    margin: 32px 16px 120px 16px;
    max-width: 520px;
}

.midi-cream-50 {
    background-color: var(--cream-50);
}

.midi-orange-bg {
    background-color: var(--orange);
}

.midi-light-blue-bg {
    background-color: var(--light-blue);
}

/* newer stylesheets already have 16px as default, but the older ones have 14px */
.midi-body-text {
    font-size: 16px;
    line-height: 130%;
}

a.midi-anchor-btn {
  text-decoration: none;
  color: var(--midi-charcoal-900);
  font-family: var(--body-font-bold);
}

a.midi-anchor-btn:hover {
    color: var(--midi-charcoal-650);
}
  
a.midi-anchor-btn:active {
    color: var(--midi-charcoal-900);
}

.midi-bottom-progress-and-buttons-container {
    width: 100%;
    display: flex;
    flex-direction: column;
    background-color: var(--cream);
    z-index: 1;
    position: fixed;
    bottom: 0px;
}

.midi-bottom-prev-next-buttons-container {
    width: 100%;
    max-width: 944px;
    margin-top: auto;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    align-self: center;
    padding: 16px 24px;
    min-height: 80px;
}

.midi-insurance-card-box {
    background-color: revert !important;
    display: flex;
    flex-direction: column;
    gap:12px;
}

.file-upload-insurance-card-image {
    width: 50%;
    height: auto;
    object-fit: cover;
    border-radius: 8px;
}

.image-container {
    aspect-ratio: 16 / 9;
    border-radius: 2px;
    margin-top: 32px;
}

.midi-banner-accordion-toggle-text,
.midi-banner-accordion-toggle-text:hover,
.midi-banner-accordion-toggle-text:active
  {
    color: var(--yellow-900);
    font-size: 14px;
}

.midi-mb-80 {
    margin-bottom: 80px;
}

.midi-mb-10 {
    margin-bottom: 10px;
}
  
  
.midi-small-body-text {
    font-family: var(--body-font);
    color: var(--midi-charcoal-750);
    font-size: 14px;
}

.midi-flex-row {
    display: flex;
    flex-direction: row;
}

.midi-bold-body-text, p.midi-bold-body-text {
    color: var(--midi-charcoal-900);
    font-weight: 700;
}

.midi-horizontal-line {
    height: 1px;
    background-color: var(--midi-charcoal-100);
    width: 100%;
    margin: 24px 0;
}

.midi-float-right {
    margin-left: auto;
}

.midi-mb-0 {
    margin-bottom: 0;
}

.insurance-card-image-upload-wrap {
    margin-top: 0px;
    border: 1px dashed var(--dark-blue-400);
    border-radius: 4px;
    box-sizing: border-box;
    position: relative;
    background-color: var(--cream-50);
}

.insurance-card-image-upload-wrap label {
   display: flex;
   flex-direction: column;
    justify-content: center;
    align-items: center;
    color: var(--dark-blue-600);
    padding: 26px 55px;
}

/* below styling needed for svg to show up in account flow */
.insurance-card-image-upload-wrap label svg {
    opacity: 1;
}

.midi-loading-modal {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 9999;
}

.midi-loading-modal-content {
    background-color: var(--cream-50);
    padding: 20px 30px;
    border-radius: 12px;
    margin: 16px;
    text-align: center;
    max-width: 450px;
    width: 94%;
}
