html {
    scroll-behavior: smooth;
}

ul.dmui-submenu > li.has-dropdown > a:after {
	padding: 0 10px;
}

a {
	cursor: pointer;
}

.show-overflow {
    overflow: visible !important;
}

.container-fluid {
    padding-left: 10%;
    padding-right: 10%;
}

section .section_header {
    margin-bottom: 0 !important;
}


.subsection {
    text-align: center;
}

.subsection * {
    text-align: left;
}

.about_sample_wrapper .subsection,
.before_appointment_wrapper .subsection {
    margin-bottom: 15px;
}

.about_sample_wrapper .subsection h4,
.before_appointment_wrapper .subsection h4 {
    font-weight: bold;
}

.about_sample_wrapper .subsection h5,
.before_appointment_wrapper .subsection h5 {
    padding-top: 5px;
}

.before_appointment_wrapper .subsection table {
    vertical-align: middle;
    font-size: 14px;
    line-height: 1;
    margin: auto;
}

.before_appointment_wrapper .subsection table * {
    padding: 0;
    margin: 0;
}

.before_appointment_wrapper .subsection table td {
    padding: 8px 12px;
}

.dark_subsection {
    background-color: #222222;
    color: #ffffff;
    padding: 15px 30px;
    border-radius: 5px;
}

.dark_subsection a small {
    color: #ffffff;
}

.dark_subsection a:hover small {
    color: #aaaaaa;
}

.light_subsection {
    background-color: #ffffff;
    color: #222222;
    padding: 15px 30px;
    border-radius: 5px;
}

.sample_protocols_list {
    margin-bottom: 15px;
}

.sample_protocol,
.sample_protocol > * {
    width: 100%;
}

.sample_protocol_collapser {
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
    border-bottom: solid 1px #ffffff;
    padding-left: 10px;
    padding-right: 10px;
    transition: background-color 120ms linear, color 120ms linear;
}

.light_list .sample_protocol_collapser {
    border-bottom: solid 1px #222222;
}
.sample_protocol_collapser:hover,
.sample_protocol_collapser[data-collapsed="false"] {
    background-color: #ffffff;
    color: #222222;
    transition: background-color 120ms linear, color 120ms linear;
}

.light_list .sample_protocol_collapser:hover,
.light_list .sample_protocol_collapser[data-collapsed="false"] {
    background-color: #222222;
    color: #ffffff;
    transition: background-color 120ms linear, color 120ms linear;
}


.sample_protocol_collapser i {
    transition: transform 240ms ease-out;
}
.sample_protocol_collapser[data-collapsed="false"] i {
    transform: rotate(90deg);
}
.sample_protocol_collapser[data-collapsed="true"] i {
    transform: rotate(0);
}

.sample_protocol_collapsible {
    overflow: hidden;
    transition: height 500ms ease-out;
}

.sample_protocol .sample_protocol_title {
    font-weight: bold;
    font-size: 18px;
    line-height: 38px;
    margin-top: 0;
    margin-bottom: 0;
}

.sample_protocol .sample_protocol_source {
    font-style: italic;
}

.sample_protocol .sample_protocol_content {
    text-align: center;
}
.sample_protocol .sample_protocol_content > * {
    text-align: left;
}

.sample_protocol .sample_protocol_content h5 {
    font-weight: bold;
}

.sample_protocol .sample_protocol_content img {
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
    margin: 10px;
}



.synlab_overlay {
    background-color: rgba(255, 255, 255, 0.85) !important;
}

.synlab_overlay * {
    color: #000000 !important;
}

.synlab_overlay h2 {
    color: rgb(82, 82, 82) !important;
}

.synlab_overlay a {
    color: rgb(0, 0, 82) !important;
    font-weight: bold;
}


/* ===================================== Modal **************************************/

.vertically-centered-sm-modal {
	margin: 35vh auto;
}

.modal-open {
	overflow-y: visible !important;
}

.go_to_results_btn,
.go_to_results_btn_hidden {
    margin: 5px;
    transition: all 240ms linear;
    overflow: hidden;
}

.go_to_results_btn {
    min-width: 40%;
    max-width: 100%;
    opacity: 1;
}

.go_to_results_btn_hidden {
    max-width: 0;
    padding: 0;
    margin: 0;
    opacity: 0;
    border: none;
    transition: max-width 0ms linear;
}

.modal-footer {
    min-height: 100px;
}

.main section {
    padding-top: 100px;
}
