﻿/* ============================================================
   Compass Health — newcss.css
   Base: BreckPointRx newcss.css with bprx- → cphx-
   Brand colors: Compass Health (primary #337ab7) — not BP green
   Bridge: Compass utilities + i18n/lang appended below
   ============================================================ */
/* ============================================================
   Compass Health — newcss.css (merged)
   Sources merged in cascade order (later wins):
     1) style.css   2) i18n.css   3) newcss.css
   All @media blocks collected at end; duplicate breakpoints merged.
   ============================================================ */

/* ============================================================
   FROM style.css (lowest priority)
   ============================================================ */

:root {
    /* Compass Health brand palette (unchanged site colors) */
    --primary: #337ab7;
    --primary1: #337ab7;
    --primary2: #000427;
    --primary3: #414042;
    --secondary: #414042;
    --offwhite: #f2f5f9;
    --offred: #ececec;
    --body: #333;
    --white: #fff;
    --dark: #000427;
    --danger: #ff0000;
    --dark-blue: #337ab7;
    --hero-bg: #a9dbff;
}

:focus {
    outline: none;
}

a {
    color: var(--secondary);
}

a:focus,
a:hover,
a.text-primary:focus,
a.text-primary:hover {
    color: var(--primary);
    text-decoration: none;
}

img {
    max-width: 100%;
    height: auto;
}

h4,
h5,
h6 {
    font-weight: 400;
    line-height: 1.4;
}

h1,
h2,
h3{
    font-weight: 500;
    line-height: 1.4;
}

.text-primary {
    color: var(--primary) !important;
}

.text-secondary {
    color: var(--secondary);
}

.text-body {
    color: var(--body);
}

.text-white {
    color: var(--white);
}

.text-dark {
    color: var(--dark);
}

.text-danger {
    /* color: var(--danger); */
    color: #bb0000;

}

.bg-primary {
    background-color: var(--primary);
}

.bg-secondary {
    background-color: var(--secondary);
}

.bg-offwhite {
    background-color: var(--offwhite);
}

.bg-white {
    background-color: var(--white) !important;
}

.bg-dark {
    background-color: var(--dark);
}

.bg-dark-blue {
    background-color: var(--dark-blue);
}

.brdr-red {
    /* border-color: var(--danger) !important; */
    border-color: #bb0000 !important;
}

.brdr {
    border-width: 1px;
    border-style: solid;
}

/* Red outline when ADD TO CART / PRE-PAY clicked without selecting a radio */
input[type="radio"].radio-outline-red {
    border: 1px solid #bb0000 !important;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    position: relative;
    outline: none;
}

input[type="radio"].radio-outline-red:checked::before {
    content: "";
    width: 10px;
    height: 10px;
    background: #bb0000;
    border-radius: 50%;
    position: absolute;
    top: 3px;
    left: 3px;
}

input[type="radio"].outline-red.sendscriptvia-radio {
    border: 1px solid #bb0000 !important;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    position: relative;
}

input[type="radio"].outline-red.sendscriptvia-radio:checked::before {
    content: "";
    width: 10px;
    height: 10px;
    background: #bb0000;
    border-radius: 50%;
    position: absolute;
    top: 3px;
    left: 3px;
}

input[type=file]:focus,
input[type=checkbox]:focus,
input[type=radio]:focus {
    outline: inherit;
    outline: inherit;
    outline-offset: inherit;
}

.outline-red {
    outline: 1px solid #bb0000;
}

.modal-open {
    padding-right: 0 !important;
}

.custom-control {
    position: relative;
    display: block;
    min-height: 1.5rem;
    padding-left: 2rem;
}

/* .custom-control-input {
	position: absolute;
	left: 0;
} */

.custom-control-label {
    position: relative;
    margin-bottom: 0;
    vertical-align: top;
    font-weight: normal;
    line-break: anywhere;
}

.modal-dialog-centered {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    /* min-height: calc(100% - 1rem); */
}

.modal-dialog-centered::before {
    display: block;
    height: calc(100vh - 1rem);
    height: -webkit-min-content;
    height: -moz-min-content;
    height: min-content;
    content: "";
}

.modal-content {
    width: 100%;
}

label {
    font-weight: 500;
}

.form-group {
    margin-bottom: 0;
}

.form-group label {
    font-weight: normal;
}

body {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    min-height: 100vh;
    font-family: 'filson-pro', sans-serif;
    padding-top: 107px;

}

.font-serif {
    font-family: 'serif';
}

.list-style-none {
    list-style-type: none;
}

.s-top-nav {
    padding: 8px 0px;
}

.s-top-nav .container:before,
.s-top-nav .container:after {
    display: none;
}

.navbar-header {
    padding: 15px 0;
}

.navbar-header .navbar-brand {
    padding: 0;
    margin: auto 0;
    display: flex;
    align-items: center;
    /* height: 40px; */
}

.navbar-header .navbar-brand img {
    height: inherit;
}

.navbar-fixed-top .navbar-collapse {
    padding-right: 15px;
    padding-left: 15px;
}

.navbar-brand,
.navbar-nav>li>a {
    text-shadow: none;
}

.navbar-nav>li>a {
    padding: 15px 10px !important;
    line-height: 42px;

}

#s-user-services::after,
#s-cart-nav::after {
    content: none;
}

#s-user-services:hover,
#s-user-services:focus {
    color: var(--white);
}

#s-user-services img,
#s-cart-nav img {
    width: auto;
    height: 30px;
}

#s-user-services.login-icon img {
    height: 100% !important;
}

.navbar-nav>li.active>a {
    color: var(--primary);
}

.nav>li>a:focus,
.nav>li>a:hover {
    background-color: transparent;
}

.nav .open>a,
.nav .open>a:focus,
.nav .open>a:hover {
    background-color: inherit;
    border-color: inherit;
}

.s-top-nav .dropdown .dropdown-menu {
    margin-top: 0;
    background-color: var(--offwhite);
}

.s-top-nav .dropdown .dropdown-menu>li>a {
    padding: 6px 20px;
}

.s-top-nav .dropdown-menu>li>a:focus,
.s-top-nav .dropdown-menu>li>a:hover {
    background-color: var(--white);
    background-image: none;
    color: var(--primary);
}

/* .s-top-nav .dropdown:hover .dropdown-menu {
	display: block;
} */

.dropdown_menu_custom {
    /* max-height: 280px; */
    overflow-y: auto;
}

span.car_number_display {
    padding: 4px 4px;
    line-height: 14px;
    border-radius: 2px;
    margin-right: 4px;

}

.user-acct a:focus,
.user-acct a:hover {
    color: var(--white);
}

.s-top-main .dropdown-menu>li>a {
    padding: 6px 20px;
}

.form-control,
.input-group-btn .btn {
    height: 40px;
}

.input-group-btn .btn {
    display: table-cell;
}

.btn-transparent {
    background: none;
    padding: 0;
    border: none;
}

.btn {
    background-color: var(--primary);
    color: var(--white);
    text-transform: uppercase;
    line-height: 1 !important;
}

.btn:active:focus,
.btn:focus {
    outline: none;
    outline-offset: 0;
}

.btn:focus,
.btn:hover {
    background-color: var(--secondary);
    color: var(--white);
}

.btn.custom-btn {
    padding: 12px 24px;
}

.btn.gray-btn {
    background-color: var(--offwhite);
    color: var(--dark);
}

.btn.danger-btn {
    background-color: var(--danger);
}

.btn[disabled]:focus,
.btn[disabled]:hover {
    background-color: var(--primary);
}

main {
    flex: 1;
}

.banner {
    background: url(../../images/rv-banner.jpg) no-repeat center center;
    background-size: cover;
}

.medication-form {
    width: 75%;
    margin: 0 auto;
}

#ajax_search {
    width: calc(100% - 30px);
    max-height: 320px;
    overflow-y: auto;
    z-index: 9;
}

.list-group li {
    cursor: pointer;
    word-break: break-word;
}

.medication-form .btn {
    padding: 8px 16px;
    width: 100%;
    height: 40px;
}

.program-wrapper,
.diabetic-row,
.features-row,
#drug_box_ajax .medication-box {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(31.33%, 1fr));
    grid-gap: 2rem;
}

.program-wrapper .program-box {
    -webkit-box-shadow: 0px 0.2rem 0.5rem rgba(0, 0, 0, 0.15);
    -moz-box-shadow: 0px 0.2rem 0.5rem rgba(0, 0, 0, 0.15);
    box-shadow: 0px 0.2rem 0.5rem rgba(0, 0, 0, 0.15);
    -webkit-transition: .3s all;
    -moz-transition: .3s all;
    -o-transition: .3s all;
    transition: .3s all;
}

.program-wrapper .program-box:hover {
    -moz-box-shadow: 0px 1rem 2rem rgba(0, 0, 0, 0.10);
    box-shadow: 0px 1rem 2rem rgba(0, 0, 0, 0.10);
    -webkit-transform: translateY(-1rem) scale(1.02);
    -moz-transform: translateY(-1rem) scale(1.02);
    -ms-transform: translateY(-1rem) scale(1.02);
    -o-transform: translateY(-1rem) scale(1.02);
    transform: translateY(-1rem) scale(1.02);
}

.medication-price-box {
    left: 0;
    right: 0;
    margin: auto;
}

.process-wrapper {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(23%, 1fr));
    grid-gap: 2rem;
}

.process-box {
    -webkit-box-shadow: 0px 0.2rem 0.5rem rgba(0, 0, 0, 0.15);
    -moz-box-shadow: 0px 0.2rem 0.5rem rgba(0, 0, 0, 0.15);
    box-shadow: 0px 0.2rem 0.5rem rgba(0, 0, 0, 0.15);
    -webkit-transition: .3s all;
    -moz-transition: .3s all;
    -o-transition: .3s all;
    transition: .3s all;
}

.process-box:hover {
    -webkit-box-shadow: 0px 1rem 2rem rgba(0, 0, 0, 0.10);
    -moz-box-shadow: 0px 1rem 2rem rgba(0, 0, 0, 0.10);
    box-shadow: 0px 1rem 2rem rgba(0, 0, 0, 0.10);
    -webkit-transform: translateY(-1rem) scale(1.02);
    -moz-transform: translateY(-1rem) scale(1.02);
    -ms-transform: translateY(-1rem) scale(1.02);
    -o-transform: translateY(-1rem) scale(1.02);
    transform: translateY(-1rem) scale(1.02);
}

.testimonials .item {
    -webkit-box-shadow: 0px 0.2rem 0.5rem rgba(0, 0, 0, 0.15);
    -moz-box-shadow: 0px 0.2rem 0.5rem rgba(0, 0, 0, 0.15);
    box-shadow: 0px 0.2rem 0.5rem rgba(0, 0, 0, 0.15);
}

.testimonial-content {
    min-height: 140px;
}

.carousel-inner .testimonial-user img {
    margin: 0;
}

.testimonial-reviews .fa-star {
    color: #d1d1d1;
}

.testimonial-reviews .fa-star.checked {
    color: #e7711b;
}

.testimonials .carousel-indicators {
    position: initial;
    bottom: inherit;
    left: inherit;
    z-index: inherit;
    width: inherit;
    margin-left: 0;
    margin-top: 40px;
}

.carousel-indicators li {
    margin: 0;
}

.carousel-indicators li,
.carousel-indicators li.active {
    background-color: var(--primary);
    border-color: var(--primary);
    height: 10px;
    -webkit-transition: all .5s ease;
    -moz-transition: all .5s ease;
    -ms-transition: all .5s ease;
    -o-transition: all .5s ease;
    transition: all .5s ease;
}

.carousel-indicators li.active {
    width: 25px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    -webkit-transition: all .5s ease;
    -moz-transition: all .5s ease;
    -ms-transition: all .5s ease;
    -o-transition: all .5s ease;
    transition: all .5s ease;
}

.testimonials a:focus,
.testimonials a:hover {
    color: var(--white);
    text-decoration: none;
}

.testimonials a:focus {
    outline-offset: 0;
}

.promotional {
    border-bottom: 1px solid #ccc;
}

.promotional-img img {
    clip-path: polygon(0% 0%, 100% 0%, 90% 100%, 0% 100%);
}

.contact-info,
.member-type,
.who-we-are,
.s-med-purchase-inner {
    border-left: 3px solid var(--primary);
}

.s-faq-green-div {
    top: 70px;
    left: 0;
    right: 0;
    z-index: 1;
}

.s-rx-user {
    width: 124px;
    height: 124px;
    -webkit-border-radius: 50rem;
    -moz-border-radius: 50rem;
    border-radius: 50rem;
    border: 5px solid var(--secondary);
    object-fit: cover;
}

.s-rx-content {
    width: calc(100% - 124px);
}

.file {
    position: relative;
    display: block;
    cursor: pointer;
    height: 40px;
}

.file input {
    min-width: 14rem;
    margin: 0;
    filter: alpha(opacity=0);
    opacity: 0;
}

.file-custom {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    z-index: 1;
    padding: 10px 12px;
}

.file-custom:before {
    position: absolute;
    top: -.075rem;
    right: -.075rem;
    bottom: -.075rem;
    z-index: 6;
    display: block;
    content: "Browse";
    height: 40px;
    padding: 10px 12px;

    line-height: 1.42857143;
    color: #555;
    background-color: #eee;
    border-radius: 4px;
    border: 1px solid #ccc;
}

.file-custom:after {
    content: "Choose file...";
}

.s-rx-v-note {
    background-color: #f2eeb5;
    padding: 12px 24px;
    text-align: center;
    -webkit-border-radius: 50rem;
    -moz-border-radius: 50rem;
    border-radius: 50rem;
}

.form-control[disabled],
.form-control[readonly],
fieldset[disabled] .form-control {
    background-color: var(--offwhite);
}

.panel-default>.panel-heading {
    background-color: var(--offwhite);
    background-image: none;
}

.panel-heading .accordion-toggle {
    position: relative;
    padding-right: 16px;
}

.panel-heading .accordion-toggle.collapsed:after {
    content: '\f105';
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.panel-heading .accordion-toggle:after {
    content: '\f107';
    position: absolute;
    top: 0;
    right: 0;
    font-family: FontAwesome;

    line-height: 1;
    transition: all 0.3s ease;
    color: var(--body);
    padding-left: 8px;
}

.panel-heading .panel-title a.accordion-toggle:focus:after,
.panel-heading .panel-title a.accordion-toggle:hover:after {
    color: var(--primary);
}

.time {
    display: none;
}

.time2 {
    display: none;
}

.time3 {
    display: none;
}

.time4 {
    display: none;
}

.custom-control-label {
    cursor: pointer;
}

/* datetimepicker buttons of popup */
.bootstrap-datetimepicker-widget .btn:not(.btn-primary) {
    background-color: white;
    color: gray;
}

.nav-tabs.nav-justified>li a {
    border: none !important;
    border-bottom: 3px solid var(--primary) !important;
    display: block;
    text-align: center;
    color: var(--primary);
    padding: 12px 24px;

    line-height: 1;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
}

.nav-tabs.nav-justified>li.active a {
    background-color: var(--primary);
    color: var(--white);
}

#s-ph-ul table#ph-drug {
    border: 1px solid #ddd;
}

.c-drug-label,
.c-international-label {
    display: inline-block;
    padding: 6px 12px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    margin-bottom: 1rem;
    margin-right: 1rem;
}

.c-drug-label {
    border: 1px solid var(--secondary);
    color: var(--secondary);
}

.c-international-label {
    border: 1px solid var(--dark);
}

#overlay {
    background-color: rgba(0, 0, 0, 0.6);
    z-index: 1999;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    display: none;
    position: fixed;
}

#overlay div {
    position: absolute;
    left: 50%;
    top: 50%;
    margin-top: -32px;
    margin-left: -32px;
}

select[data-type="American_Express"] {
    background-image: url("../../images/cards/american-exp.webp");
    background-size: 38px;
    background-repeat: no-repeat;
    background-position: 7px 7px;
    padding-left: 55px;
}

select[data-type="Discover"] {
    background-image: url("../../images/cards/discover.webp");
    background-size: 38px;
    background-repeat: no-repeat;
    background-position: 7px 7px;
    padding-left: 55px;
}

select[data-type="Visa"] {
    background-image: url("../../images/cards/visa.webp");
    background-size: 38px;
    background-repeat: no-repeat;
    background-position: 7px 7px;
    padding-left: 55px;
}

select[data-type="MasterCard"] {
    background-image: url("../../images/cards/master-card.webp");
    background-size: 38px;
    background-repeat: no-repeat;
    background-position: 7px 7px;
    padding-left: 55px;
}

select[data-type="Unknown"] {
    background-image: url("../../images/cards/default.webp");
    background-size: 38px;
    background-repeat: no-repeat;
    background-position: 7px 7px;
    padding-left: 55px;
}

.transformrotate img {
    -webkit-transform: rotate(90deg);
    -moz-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    -o-transform: rotate(90deg);
    transform: rotate(90deg);
}

.view_alphabets.active a {
    background-color: var(--white);
    color: var(--primary);
}

.view_alphabets a:focus,
.view_alphabets a:hover {
    background-color: var(--secondary);
    color: var(--white);
}

ul#list_array li {
    display: inline-flex;
    width: 33.33%;
}

.visibility-hidden {
    visibility: hidden;
}

#PAP_program_form li.not-active {
    pointer-events: none;
    cursor: default;
    text-decoration: none;
}

.c-order-step-header {
    border-bottom: 1px solid #ccc;
}

.c-order-step-header a {
    position: relative;
    padding-right: 16px;
}

.c-order-step-header a:after {
    content: '\f107';
    position: absolute;
    right: 0;
    font-family: FontAwesome;

    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.c-order-step-header a.collapsed:after {
    content: '\f105';
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

img.c-card-imgs {
    height: 34px;
}

footer a:focus,
footer a:hover {
    color: var(--white);
}

.copyright {
    border-top: 1px solid rgba(255, 255, 255, 0.3);
}

#scroll {
    position: fixed;
    right: 25px;
    bottom: 90px;
    cursor: pointer;
    width: 45px;
    height: 45px;
    background-color: var(--secondary);
    color: var(--white);
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    text-align: center;
}

#scroll i {
    text-align: center;
    line-height: 45px;

}

#scroll:hover {
    background-color: var(--primary);
    opacity: 1;
    filter: "alpha(opacity=75)";
    -ms-filter: "alpha(opacity=75)";
}

/* Top header menu css for on hover dropdown by hitesh */
.d-inline-block.position-relative.dropdown.open>.dropdown-menu {
    display: none;
}

.d-inline-block.position-relative.dropdown:hover .dropdown-menu {
    display: block;
}

.d-inline-block.position-relative.dropdown .dropdown-menu {
    margin-top: 0 !important;
}

/* End Top header menu css for on hover dropdown by hitesh */

.c-diabetic-card {
    text-align: center;
}

.diabetic-col,
.c-diabetic-card {
    -webkit-border-radius: 6px;
    -moz-border-radius: 6px;
    border-radius: 6px;
}

.diabetic-col h4:first-child,
.c-diabetic-card .c-card-header {
    -webkit-border-radius: 6px 6px 0 0;
    -moz-border-radius: 6px 6px 0 0;
    border-radius: 6px 6px 0 0;
}

.delivery-type-row {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(48%, 1fr));
    grid-gap: 2rem;
}

.delivery-type-col ol {
    padding-left: 18px;
}

.delivery-type-row .btn {
    white-space: inherit;
    line-height: 1.4 !important;
}

.best-option {
    background-color: #ed1f1f;
    color: #fff;
    display: inline-block;
    padding: 10px 30px 10px 12px;
    position: absolute;
    top: -36px;
    z-index: 2;
    left: 0;

    line-height: 1;
}

.best-option:after {
    content: '';
    border-width: 18px;
    border-color: transparent #ffffff transparent transparent;
    border-style: solid;
    position: absolute;
    top: 0;
    right: 0;
}

#PAP_program_form .nav-tabs.nav-justified>li a {
    padding: 12px 5px;

}

.table-striped>tbody>tr:nth-of-type(odd) {
    background-color: var(--offwhite);
}

/* Start insulin program */
.diabetic-row,
.feature-row {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(27%, 1fr));
    grid-gap: 2rem;
}

.btn-insulin {
    color: #FFF;
    line-height: 1.4;
    border-radius: 0.5rem;
    background-color: #ff0018;
    border-color: #ff0018;
    text-transform: uppercase;
}

.btn-insulin:hover {
    background-color: #dc3545;
    border-color: #dc3545;
}

.insulin-box {
    background-color: #FFF;
    padding: 1rem;
    border-radius: 8px;
    box-shadow: 0 0 5px rgb(0 0 0 / 75%);
    position: relative;
}

.insulin-testimonial-name h3 {

    color: #FFF;
}

.insulin-testimonial .insulin-box {
    position: relative;
}

.insulin-testimonial .insulin-box:after {
    content: '';
    border-top: 16px solid #ffffff;
    border-right: 16px solid #fff0;
    border-bottom: 16px solid #fff0;
    border-left: 16px solid #fff0;
    position: absolute;
    bottom: -32px;
    z-index: 1;
}

.insulin-items-row {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}

.insulin-item {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 200px;
    height: 200px;
    border-radius: 50rem;
    border: 1px solid #000;
    margin-bottom: 2rem;
    margin-right: 1rem;
}

.insulin-item img {
    padding: 20px;
    max-width: 100%;
    height: auto;
}

.tooltip.show {
    opacity: 1;
}

.tooltip>.tooltip-inner {
    opacity: 1;
    background-color: #FFF;
    padding: 1rem;
    border-radius: 8px;
    box-shadow: 0 0 5px rgb(0 0 0 / 75%);
    color: #333;
}

.bs-tooltip-auto[x-placement^=top] .arrow::before,
.bs-tooltip-top .arrow::before {
    border-top-color: #FFF;
}

.bs-tooltip-auto[x-placement^=right] .arrow::before,
.bs-tooltip-right .arrow::before {
    border-right-color: #FFF;
}

.bs-tooltip-auto[x-placement^=bottom] .arrow::before,
.bs-tooltip-bottom .arrow::before {
    border-bottom-color: #FFF;
}

.bs-tooltip-auto[x-placement^=left] .arrow::before,
.bs-tooltip-left .arrow::before {
    border-left-color: #FFF;
}

.insulin-carousel .owl-nav button {
    position: absolute;
    top: 50%;
    background-color: #000;
    color: #fff;
    margin: 0;
    transition: all 0.3s ease-in-out;
}

.insulin-carousel .owl-nav button.owl-prev {
    left: -10px;
}

.insulin-carousel .owl-nav button.owl-next {
    right: -10px;
}

.insulin-carousel .owl-dots {
    text-align: center;
    padding-top: 15px;
}

.insulin-carousel .owl-dots button.owl-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    display: inline-block;
    background: #d9ecff;
    margin: 0 3px;
}

.insulin-carousel .owl-dots button.owl-dot.active {
    background-color: #0063C9;
}

.insulin-carousel .owl-dots button.owl-dot:focus {
    outline: none;
}

.insulin-carousel .owl-nav button {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(255, 255, 255, 0.38) !important;
    border-radius: 50rem;
    width: 50px;
    height: 50px;
}

.insulin-program.dropdown-toggle::after {
    display: inline-block !important;
}

.insulin-product {
    border: 2px solid #768080;
    display: flex;
    flex-direction: column;
    align-items: baseline;
    justify-content: space-between;
}

.insulin-product h2 {

    text-transform: uppercase;
    font-weight: 500;
}

.insulin-product .btn-insulin {
    background-color: #768080;
    border-color: #768080;
    color: #FFF;
}

.insulin-product .btn-insulin:hover {
    background-color: #808080;
    border-color: #808080;
    color: #FFF;
}

.text-start {
    text-align: start;
}

.modal-scroll .modal-body {
    overflow-y: auto;
    max-height: 88vh;
}

/* End insulin program*/
/* start Membership card */
#membership-card-menu .dropdown-sub-menu {
    position: absolute;
}

.dropdown-sub-menu {
    position: relative;
    padding: 8px 8px !important;
}

.sub-menu-list {
    position: relative;
    padding: 5px;
}

.sub-menu-list ul {
    padding: 0;
    text-decoration: none;
    list-style: none;
}

.sub-menu-list ul li a {
    color: #000;
    text-decoration: none;
    width: 100%;
    position: relative;
    display: block;
    padding-bottom: 5px;
}

.sub-menu-list ul li a:hover,
.sub-menu-list ul li a:focus {
    color: var(--primary);
}

.dropdown-item {
    color: #000;
    padding-left: 5px;
}

.dropdown-sub-menu .sub-menu-inner.show {
    display: block;
}

/* .sub-menu-inner{
	position: absolute;
    left: 101%;
    top: 0px;
    color: var(--body);
    border-color: #fff;
    -webkit-border-radius: 15px;
    -moz-border-radius: 15px;
    border-radius: 15px;
    border: none;
    margin-top: 0;
    -webkit-box-shadow: 0 5px 10px rgba(0, 149, 255, .1), 0 1px 6px rgba(0, 149, 255, .1);
    -moz-box-shadow: 0 5px 10px rgba(0, 149, 255, .1), 0 1px 6px rgba(0, 149, 255, .1);
    box-shadow: 0 5px 10px rgba(0, 149, 255, .1), 0 1px 6px rgba(0, 149, 255, .1);
    z-index: 999;
    width: 160px;
} */
.sub-menu-inner {
    position: absolute;
    right: 100%;
    top: 0px;
    color: var(--body);
    border: 1px solid rgba(0, 0, 0, .15);
    -webkit-border-radius: 15px;
    -moz-border-radius: 15px;
    border-radius: 4px;
    /* border: none; */
    margin-top: 0;
    /* -webkit-box-shadow: 0 5px 10px rgba(0, 149, 255, .1), 0 1px 6px rgba(0, 149, 255, .1);
	-moz-box-shadow: 0 5px 10px rgba(0, 149, 255, .1), 0 1px 6px rgba(0, 149, 255, .1);
	box-shadow: 0 5px 10px rgba(0, 149, 255, .1), 0 1px 6px rgba(0, 149, 255, .1); */
    z-index: 999;
    width: 200px;
    background: #ffffff;
}

.dropdown-sub-menu .sub-menu-inner {
    display: none;
}

.dropdown-sub-menu:hover .sub-menu-inner {
    display: block;
}

.navbar-collapse.in {
    overflow-y: visible;
}

/* end Membership card */
/* Top header menu css */
.user-dropdown-menu {
    right: 0;
    left: auto !important;
}

.user-dropdown-menu>li>a {
    padding: 3px 10px;
}

#mobile_drop_down_menu {
    right: 0 !important;
    left: auto !important;
}

/* Top header menu css */

/* Start GLP CSS */
.faq-title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 20px;
}

.faq-title h4 {
    margin: 0;
    font-weight: 600;
}

.faq-title a {
    font-weight: 600;
    color: #169fff;
}

.radio-gender {
    display: flex;
    align-items: center;
    gap: 20px;
}

.radio-gender .radio {
    margin: 0;
}

.checckbox-following label {
    font-weight: 400;
}

.border-none {
    border: none;
}

.calculate-status-body h4 {
    text-align: center;
    font-weight: 600;
}

.calculate-status-body p {
    text-align: center;
}

#qualify .modal-dialog {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 100vh;
    /* Full height */
}

.btn-link,
.btn-link:hover {
    font-weight: 600;
    text-decoration: none;
}

.btn-text-bold {
    font-weight: 600;
}

.medication-now h4 {

    font-weight: 600;
}

.madication-btn-list {
    display: flex;
    align-items: center;
    gap: 60px;
}

.mb-30px {
    margin-bottom: 30px;
}

.glp-info h3 {

    font-weight: 600;
}

.glp-info h5 {

    font-weight: 600;
}

.glp-info ul {
    margin-left: 15px;

}

.panel-title a {
    display: block;
    position: relative;

    font-weight: 500;
    padding-right: 20px;
}

.panel-title>a.collapsed:before {
    float: right !important;
    content: "\f067";
}

.panel-title>a:before {
    float: right !important;
    font-family: FontAwesome;
    content: "\f068";

    font-weight: 400;
    padding-right: 5px;
    position: absolute;
    right: 0px;
    top: 0px;
}

.glpmadication-title {
    padding: 30px 0;
}

.glpmadication-list {
    border-radius: 18px;
    margin-bottom: 15px;
}

.glpmadication-list img {
    /* border-radius: 18px 18px 0px 0px;
    height: 205px;
    background-size: cover;
    object-fit: cover;
    background-position: center, center;
    width: 100%; */
    border-radius: 18px 18px 0px 0px;
    height: 205px;
    background-size: cover;
    object-fit: contain;
    background-position: center, center;
    width: 100%;
    padding: 15px;
    transform: scale(1);
}

.glpmadication-list img:hover {
    transform: scale(1.2);
}

.glpmadication-info {
    padding: 15px;
}

.glpmadication-info h3 {
    font-style: normal;
    font-weight: 600;

    line-height: 24px;
    color: #ffffff;
    margin: 0;
    margin-bottom: 5px;
}

.glpmadication-info h5 {
    font-style: normal;
    font-weight: 600;

    line-height: 1.5;
    color: #ffffff;
    margin: 0;
    margin-bottom: 10px;
}

.glpmadication-info ul {
    margin-left: -20px;
}

.glpmadication-info ul li {
    font-style: normal;
    font-weight: 400;

    line-height: 1.5;
    color: #ffffff;
}

.bg-white-primary,
.bg-white-primary:hover,
.bg-white-primary:focus {
    background-color: #ffffff;
    color: #3769cd !important;
    font-weight: 500 !important;
    width: 100%;
}

.border-top {
    border-top: 1px solid #eee;
}

.note-box {
    border: 1px solid #3769cd;
    padding: 10px;
    border-radius: 8px;
    color: #000;
}

.note-box p {
    margin-bottom: 0;

    font-weight: 500;
    color: #000;
    text-align: center;
}

.note-box p span {
    color: #ff0000;
}

.glpmadication-main {
    gap: 15px;
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    /* grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
	place-items: center;
	margin: 0 auto;  */
    justify-content: center;
    margin: 0 auto;
    inline-size: min-content;
}

.glpmadication-info .glpmadication-info-title {
    min-height: 210px;
}

.glp-banner-main-section {
    overflow: hidden;
}

/* GLP CSS */

/* GLP next stape CSS  */
.banner-image-glp img {
    width: 100%;
}

.glp-next-stape-main {
    padding-top: 10px;
}

.v-glp-info h3 {

    font-weight: 600;
    line-height: 1.5;
}

.v-glp-info p {

    font-weight: 400;
    line-height: 1.5;
}

.glp-next-stape-text {
    background-color: #ffffff;
    padding: 50px 0;
}

.next-stape-text-details h3 {

    font-weight: 600;
    color: #000427;
    line-height: 1.5;
}

.next-stape-text-details p {

    color: #000427;
    line-height: 1.5;
    font-weight: 400;
    margin-bottom: 0;
}

.panel-group .panel {
    margin-bottom: 15px;
}

/* GLP next stape CSS  */
.danger-message {
    height: 49vh;
    font-weight: bold;

    color: #dc3545;
    display: contents;
    justify-content: center;
    align-items: center;
    margin: 0;
    padding: 0;
}

.custom-alert {
    display: none;
    position: fixed;
    top: 105px;
    right: 5px;
    z-index: 1050;
    /* higher than navbar */
    width: 420px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}

/* .full-height-container {
    height: calc(100vh - 147px - 461.55px);
} */
label {
    margin-bottom: 0px !important;
}

.btn-size {
    height: 39.5px;
}

.btn-margin-bottom {
    margin-bottom: 22px !important;
}

.visibility-hidden {
    /* visibility: hidden; */
    display: none;
}

.visibility-visible {
    /* visibility: visible; */
    display: block;
}

.padding-tb-30px {
    padding: 30px 0;
}

.padding-tb-60px {
    padding: 60px 0;
}

.padding-tb-100px {
    padding: 100px 0;
}

.mt-100px {
    margin-top: 100px;
}

.mt-50px {
    margin-top: 50px;
}

.error-message {
    font-weight: bold;

    color: #bb0000;
}

.btn-primary {
    background-color: #0147b5 !important;
    border-color: #0147b5 !important;
    color: #FFF !important;
    outline: 0 !important;
}

.btn-primary:hover {
    background-color: #0147b5 !important;
    border-color: #0147b5 !important;
    color: #FFF !important;
    outline: 0 !important;
}

.c-body-margin {
    margin-top: 120px;
}

.cart {
    width: 60px;
}

.badge-label {
    position: relative;
    width: 100%;
    margin-inline: auto;
}

.badge-label .label {
    position: absolute;
    color: black;
    top: -1px;
    width: 18px;
    right: -11px;
    border-radius: 50%;
    border: 1px solid black;
    height: 18px;
    padding: 2px;
}

.navbar-toggle .icon-bar {
    display: block;
    width: 26px;
    margin-bottom: 6px;
    height: 3px;
    border-radius: 40px;
}

.container:before,
.container:after {
    content: none;
}

.cart #s-cart-nav {
    padding: 15px !important;
}

.modal {
    bottom: unset;
}

.table-condensed>tbody>tr>td,
.table-condensed>tbody>tr>th,
.table-condensed>tfoot>tr>td,
.table-condensed>tfoot>tr>th,
.table-condensed>thead>tr>td,
.table-condensed>thead>tr>th {
    padding: 5px;
    text-align: center;
}

#userdetailsData p,
#Pharmacy_list span,
#physician_list span,
#billing_details_display .mb-3 span,
#delivery_details_display .mb-3 span,
#dependents_list div span,
.line-break,
.DisplayQuantity,
.DisplayQuantity3 {
    line-break: anywhere;
}

.border-none {
    border: none !important;
}

select {
    outline: none !important;
}

.insulin-program-li a {
    width: 100% !important;
}

/* .dropdown-menu {
	left: 25px !important;
} */

/* .modal {
	height: 90vh;
} */

.dropdown-menu.user-dropdown-menu,
#mobile_drop_down_menu {
    left: auto !important;
    right: 0px !important;
}

/* .Dependants,
.Address,
.Physician,
.Pharmacy {
	width: 200px !important;
	max-width: 200px;
	display: block;
	text-overflow: ellipsis;
	white-space: nowrap;
	overflow: hidden;
} */

/* Style options inside dropdown */
/* .Dependants option,
.Address option,
.Physician option,
.Pharmacy option {
	max-width: 200px;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
} */

.dropdown .dropdown-menu {
    left: 40px;
}

input[type=radio] {
    z-index: 9;
}

/* #frmAddNewPharmacy .form-group input,
#frmAddNewPharmacy .form-group select,
#frmAddNewPharmacy .form-group textarea,
#frmAddNewPhysician .form-group input,
#frmAddNewPhysician .form-group select,
#frmAddNewPhysician .form-group textarea{
	border: 1px solid black;
} */

.form-delevry-grid .form-group {
    margin-bottom: 5px;
}

/* physician datatable css start */
.select-physician-modal .modal-dialog .modal-content .modal-body {
    display: flex;
    flex-direction: column;
    padding: 15px;
    min-height: 40vh;
}

/* Force sorting icon to right side */
table.dataTable th.dt-type-numeric div.dt-column-header {
    flex-direction: unset !important;
}

table.dataTable th.dt-type-numeric {
    text-align: left !important;
}

#physicianTable {
    border-top: none;
    border-collapse: collapse;
}

#physicianTable_wrapper {
    flex: 1;
    display: flex;
    flex-direction: column;
}

#addNewPhysicianModal .modal-header .close,
#physicianSearchModal .modal-header .close {
    float: right;

    font-weight: 700;
    line-height: 1;
    position: relative !important;
}

#physicianTable_wrapper .dt-input {
    padding-right: 30px !important;
}

#physicianTable_wrapper .dt-scroll {
    flex: 1;
    overflow: auto;
}

.btn.selectPhysician {

    padding: 1px 12px;
}

#physicianTable_wrapper .dt-scroll .dt-scroll-headInner table {
    border-collapse: collapse;
}

#physicianTable_wrapper .dt-scroll .dt-scroll-headInner table thead tr th {
    padding: 5px 10px;

    color: #fff;
    text-align: left !important;
    background-color: var(--primary);
}

#physicianTable_wrapper .dt-scroll .dt-scroll-body {
    scrollbar-width: thin;
}

#physicianTable.dataTable tbody td {
    padding: 5px 10px;

    text-align: left !important;
}

.dataTables_wrapper .dt-info {
    padding: 0 !important;
}

.pagination-div .dt-paging .dt-paging-button {
    padding: 3px 10px !important;
}

#physicianTable_wrapper .pagination-div {
    text-align: right;
}

#physicianTable_wrapper .pagination-div .dt-paging .dt-paging-button:hover {
    border: 1px solid rgba(0, 0, 0, 0.3) !important;
    color: black !important;
    background: linear-gradient(to bottom, rgba(230, 230, 230, 0.05) 0%, rgba(0, 0, 0, 0.05) 100%) !important;
}

.dt-length {
    display: flex;
    align-items: center;
    gap: 10px;
}

.dt-length label {
    display: none;
}

/* physician datatable css end */
button,
html input[type=button],
input[type=reset],
input[type=submit] {
    border: none;
    outline: none;
}

/* .panel-title a:focus{
	color: white !important;
} */

.DisplayQuantity,
.DisplayQuantity3,
.line-wrap h5,
#userdetailsData h5,
#physician_list h5,
#Pharmacy_list h5 {
    line-break: anywhere;
}

#delivery_details_display h5,
#billing_details_display h5,
#billing_details_display h5,
#dependents_list h5 {
    line-break: anywhere;
}

.table-condensed>tbody>tr>td,
.table-condensed>tbody>tr>th,
.table-condensed>tfoot>tr>td,
.table-condensed>tfoot>tr>th,
.table-condensed>thead>tr>td,
.table-condensed>thead>tr>th {
    padding: 5px;
    text-align: center;
}

.membership-card-body {
    height: 80vh;
}

.loader-wrapper {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    position: unset !important;
    margin: 0 !important;
}

.loader-wrapper .loader-name {
    position: unset !important;
    margin-left: 0 !important;
}

#dilveryAddrssSet,
.dilveryAddrssSetids {
    margin-bottom: 15px;
}

.button-visible {
    visibility: visible;
}

.button-hidden {
    visibility: hidden;
}

.field_row {
    display: flex;
    align-items: center;
    gap: 10px;
}

.medical-row {
    margin-bottom: 8px;
}

.pwd input[type=text] {
    padding-right: 35px !important;
}

.input-group-addon {
    position: absolute;
    top: 50%;
    right: -10px;
    border: none;
    width: 28px;
    height: 26px;
    z-index: 2;
    padding: 0;
    transform: translate(-50%, -50%);
    background-color: white;
    border-radius: 50px !important;
}

.input-group-addon:hover {
    background-color: #eee;
}

.input-group .form-control:focus {
    z-index: 2 !important;
}

.input-group-addon .glyphicon {
    top: 50%;
    transform: translate(-50%, -50%);
    left: 28%;
}

.modal-header .close {
    float: right;

    font-weight: 700;
    line-height: 1;
    position: relative !important;
}

.brdr-danger {
    border-color: #bb0000 !important;
}

/* input[type=checkbox],
input[type=radio] {
	margin: 0 5px 0 0 !important;
} */

.form-control {
    background-color: transparent !important;
}

.w-md-60 {
    width: 95%;
    max-width: 1200px;
}

a:focus {
    outline: 0;
}

/* Pharmacy discount card (detalles-de-farmacia) — styles lived only in unused style_1800md.css */
.bg-primary1 {
    background-color: var(--primary) !important;
}

.text-primary1 {
    color: var(--primary) !important;
}

.bg-matt {
    background-color: #eeeeee;
}

.c-pharmacy-card-box {
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.15);
    border-radius: 5px;
}

.c-pharmacy-card-header {
    border-radius: 14px 50px 0 0;
    min-width: 50%;
    width: 50%;
}

.c-pharmacy-header {
    border-radius: 14px 50px 0 0;
    clip-path: polygon(0% 0%, 98% 0%, 100% 100%, 0 100%);
    min-width: 50%;
    width: 50%;
}

.c-pharmacy-content,
.c-pharmacy-content-secondary {
    background-color: #fff;
    border: 2px solid #6c757d;
    border-radius: 0 5px 5px 5px;
}

#phamacyDetailsFocus .c-pharmacy-content {
    border-color: var(--primary);
}

.alert {
    padding: 15px !important;
}

.alert-dismissable .close,
.alert-dismissible .close {
    top: 0;
    right: 0;

}

/* ============================================================
   FROM i18n.css (medium priority)
   ============================================================ */

/* Language dropdown — top utility bar */
.cphx-lang-dropdown-top,
.cphx-lang-dropdown-mobile {
    margin-bottom: 0;
    vertical-align: middle;
}

.cphx-lang-toggle-top,
.cphx-lang-toggle-mobile {
    text-decoration: none !important;
    white-space: nowrap;
    padding: 0;
    cursor: pointer;
    line-height: inherit;
}

.cphx-lang-toggle-top:hover,
.cphx-lang-toggle-top:focus,
.cphx-lang-toggle-mobile:hover,
.cphx-lang-toggle-mobile:focus {
    text-decoration: none !important;
}

.cphx-lang-globe {
    margin-right: 3px;
    opacity: 0.9;

}

.cphx-lang-current {
    font-weight: 500;
}

/* Top utility bar layout */
.s-top-nav {
    overflow: visible;
    padding: 6px 0;
}

.s-top-nav .container:before,
.s-top-nav .container:after {
    display: none;
}

.s-top-nav-right {
    gap: 10px;
}

.cphx-top-nav-item {
    flex-shrink: 0;
    max-width: 100%;
}

.cphx-top-nav-item .dropdown-menu {
    width: fit-content;
}

.cphx-top-nav-email {
    max-width: 220px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    vertical-align: middle;
}

.cphx-top-nav-lang {
    flex-shrink: 0;
    margin-left: 0.15rem;
}

.s-top-nav .cphx-lang-dropdown-top {
    flex-shrink: 0;
}

.s-top-nav .cphx-lang-menu {
    top: 100%;
    left: auto;
    right: 0;
    margin-top: 4px;
    min-width: 150px;
    padding: 6px 0;
    border-radius: 4px;
    border: 1px solid rgba(0, 0, 0, 0.1);
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.12);
    z-index: 1100;
}

.cphx-lang-menu>li>a {
    display: block;
    padding: 9px 16px;
    color: #454545 !important;
    background: #fff !important;
    white-space: nowrap;
    text-decoration: none;
    line-height: 1.4;
}

.cphx-lang-menu>li>a:hover,
.cphx-lang-menu>li>a:focus {
    background-color: #f5f8fc !important;
    color: #3769cd !important;
    text-decoration: none;
}

.cphx-lang-menu>li.cphx-lang-item-active>a,
.cphx-lang-menu>li.cphx-lang-item-active>a:hover,
.cphx-lang-menu>li.cphx-lang-item-active>a:focus {
    background-color: #eaf2ff !important;
    color: #3769cd !important;
    font-weight: 600;
}

.cphx-lang-check {
    display: inline-block;
    width: 16px;
    margin-right: 6px;

    color: #3769cd;
    visibility: hidden;
}

.cphx-lang-menu>li.cphx-lang-item-active .cphx-lang-check {
    visibility: visible;
}

/* Mobile menu language item */
.cphx-mobile-lang-nav {
    width: 100%;
    display: none !important;
}

.cphx-mobile-lang-nav .cphx-lang-dropdown-mobile {
    display: block;
    width: 100%;
}

.cphx-mobile-lang-nav .cphx-lang-toggle-mobile {
    display: block;
    width: 100%;
    padding: 15px 25px !important;
    line-height: 1.4 !important;

    text-align: left;
}

.cphx-mobile-lang-nav .cphx-lang-menu {
    position: static;
    float: none;
    width: 100%;
    box-shadow: none;
    border: 0;
    border-top: 1px solid #eee;
    margin-top: 0;
}

/* Compact toolbar (cart row) on tablet/mobile */
#nav_menu1 .cphx-mobile-lang-toolbar {
    display: flex;
    align-items: center;
    padding: 0;
    margin: 0;
    list-style: none;
}

#nav_menu1 .cphx-mobile-lang-toolbar .cphx-lang-dropdown-mobile {
    margin: 0;
}

#nav_menu1 .cphx-lang-toggle-mobile {
    padding: 8px 10px !important;

    line-height: 1.2 !important;
    border: 0;
    background: transparent;
}

#nav_menu1 .cphx-lang-dropdown-mobile .dropdown-menu {
    right: 0;
    left: auto;
}

/* Homepage / banner text wrap for longer translations */
.banner h1,
.banner h3,
.banner h4 {
    word-wrap: break-word;
    overflow-wrap: break-word;
    hyphens: auto;
}

.features h4,
.features em {
    word-wrap: break-word;
    overflow-wrap: break-word;
}

/* Tablet: compact top bar instead of hiding completely */
/* ============================================================
   FROM newcss.css (highest priority — wins on conflicts)
   ============================================================ */

:root {
    --cphx-radius: 12px;
    --cphx-radius-sm: 8px;
    --cphx-shadow: 0 6px 22px rgba(0, 4, 39, .10);
    --cphx-shadow-hover: 0 14px 34px rgba(0, 4, 39, .16);
    --cphx-transition: .25s ease;
    --cphx-gradient: linear-gradient(135deg, var(--primary), var(--secondary));
    /* Base typography (replaces theme.css --fs-* scales) */
    --cphx-fs-body2: 14px;
    --cphx-fs-body: 16px;
    --cphx-fs-h1: 36px;
    --cphx-fs-h2: 30px;
    --cphx-fs-h3: 24px;
    --cphx-fs-h4: 20px;
    --cphx-fs-h5: 18px;
    --cphx-fs-h6: 16px;
}

/* Site-wide text elements (Bootstrap body defaults to 14px) */
body {
    font-size: var(--cphx-fs-body);
    padding-top: 98px;
    flex-direction: column;
    min-height: 100vh;
    font-family: 'filson-pro', sans-serif;
}

p {
    font-size: var(--cphx-fs-body);
}

a {
    font-size: var(--cphx-fs-body2);
}

span {
    font-size: inherit;
}

h1 {
    font-size: var(--cphx-fs-h1);
}

h2 {
    font-size: var(--cphx-fs-h2);
}

h3 {
    font-size: var(--cphx-fs-h3);
}

h4 {
    font-size: var(--cphx-fs-h4);
}

h5 {
    font-size: var(--cphx-fs-h5);
}

h6 {
    font-size: var(--cphx-fs-h6);
}

.row {
    margin-right: 0px !important;
    margin-left: 0px !important;
}

/* Shared lift-on-hover card behaviour (reused by several sections) */
.cphx-lift {
    transition: transform var(--cphx-transition), box-shadow var(--cphx-transition);
    will-change: transform;
}

.cphx-lift:hover {
    transform: translateY(-6px);
    box-shadow: var(--cphx-shadow-hover);
}

#ajax_search {
    width: calc(100% - 30px);
    max-height: 320px;
    overflow-y: auto;
    z-index: 16;
}

#userdetailsData p,
#Pharmacy_list p span,
#physician_list p,
#billing_details_display .mb-3 span,
#delivery_details_display .mb-3 span,
#dependents_list p span,
.line-break,
.DisplayQuantity,
.DisplayQuantity3 {
    line-break: anywhere;
}

.error {
    color: #bb0000;
    border: none !important;
    font-size: 0.9rem !important;
}

.form-group label {
    font-weight: normal;
    margin: 0 0 4px 0;
}

/* ============================================================
   HEADER
   ============================================================ */
.s-navbar {
    box-shadow: 0 2px 12px rgba(0, 4, 39, .08);
}

/* Top utility bar — tidy spacing + brand hover */
.s-top-nav {
    border-bottom: 1px solid rgba(0, 4, 39, .06);
}

.s-top-nav-right {
    gap: 4px 18px;
}

.s-top-nav .cphx-top-nav-item,
.s-top-nav a.text-body {
    transition: color var(--cphx-transition);
}

.s-top-nav .cphx-top-nav-item:hover,
.s-top-nav a.text-body:hover {
    color: var(--primary);
    text-decoration: none;
}

/* Brand logo sizing consistency */
.navbar-header .navbar-brand img {
    max-height: 45px;
    width: auto;
}

/* Main menu links — clearer hover / active states */
.navbar-collapse .navbar-nav>li>a {
    position: relative;
    transition: color var(--cphx-transition);
}

.navbar-collapse .navbar-nav>li>a:hover,
.navbar-collapse .navbar-nav>li.active>a {
    color: var(--primary);
}

/* Animated underline indicator on desktop menu */
/* Cart & account action buttons — rounded, consistent */
.navbar-nav>li.cart>a,
.navbar-nav>li.user-acct>a {
    display: flex;
    align-items: center;
    transition: filter var(--cphx-transition);
}

.navbar-nav>li.cart>a:hover,
.navbar-nav>li.user-acct>a:hover {
    filter: brightness(1.08);
}

/* Unified dropdown design — same look for every header submenu
   (top utility bar + main nav: reimbursement, formulary, diabetic
   products, membership card, account). */
.s-top-nav .dropdown-menu,
.s-top-main .dropdown-menu {
    border: 1px solid rgba(0, 4, 39, .08) !important;
    box-shadow: var(--cphx-shadow);
    overflow: hidden;
    padding: 6px 0;
}

/* Membership flyout sits outside the panel (right: 100%) — must not clip */
.s-top-main .dropdown-menu.dropdown-sub-menu {
    overflow: visible;
}

.s-top-nav .dropdown-menu>li>a.text-body,
.s-top-main .dropdown-menu>li>a.text-body {
    padding: 8px 20px;
    transition: background-color var(--cphx-transition), color var(--cphx-transition);
}

.s-top-nav .dropdown-menu>li>a.text-body:hover,
.s-top-main .dropdown-menu>li>a.text-body:hover,
.s-top-main .dropdown-menu>li>a:hover {
    background-color: var(--offwhite);
    color: var(--primary);
}

.s-top-nav .dropdown-menu>li.active>a.text-body:hover,
.s-top-main .dropdown-menu>li.active>a.text-body:hover,
.s-top-main .dropdown-menu>li.active>a:hover {
    color: var(--white);
}

/* Card-name header inside the membership dropdown */
.s-top-main .dropdown-menu .dropdown-header {
    font-weight: 600;
    color: var(--dark);
    padding: 6px 20px;
}

.dropdown-menu-right.cphx-lang-menu {
    padding: 0 !important;
}

/* --- Unified open-on-hover for ALL header dropdowns (desktop) ---
   Below 1200px the top bar is hidden and the main menu collapses, so
   touch devices keep Bootstrap's click behaviour. On desktop every
   dropdown in .s-top-nav and .s-top-main opens on hover consistently. */
/* Membership card inner flyout (sub-menu-inner) */

#membership-card-menu .dropdown-item.dropdown-toggle {
    display: block;
    padding: 8px 20px;
    color: var(--dark);
    font-weight: 600;
    text-decoration: none;
    cursor: default;
}

#membership-card-menu .dropdown-sub-menu:hover .sub-menu-inner,
#membership-card-menu .dropdown-sub-menu .sub-menu-inner:hover {
    display: block;
}

#membership-card-menu .sub-menu-inner {
    display: none;
    box-shadow: none;
    border-radius: 0;
    border: 1px solid rgba(0, 4, 39, .08);
}

#membership-card-menu .sub-menu-list {
    padding: 0 !important;
}

#membership-card-menu .sub-menu-list ul li a {
    padding: 8px 20px;
    transition: color var(--cphx-transition), background-color var(--cphx-transition);
}

#membership-card-menu .sub-menu-list ul li a:hover,
#membership-card-menu .sub-menu-list ul li a:focus {
    color: var(--primary);
    background-color: var(--offwhite);
}

/* ============================================================
   HOME — HERO / BANNER
   ============================================================ */
.cphx-home .banner {
	position: relative;
	background-color: var(--hero-bg, #a9dbff);
	background-image: none;
}

.cphx-home .banner>.container,
.cphx-home .banner>div {
    position: relative;
    z-index: 1;
}

.cphx-home .banner h1 {
    font-weight: 700;
    letter-spacing: .5px;
    text-shadow: 0 2px 10px rgba(0, 0, 0, .18);
}

.cphx-home .banner h3,
.cphx-home .banner h4 {
    text-shadow: 0 1px 6px rgba(0, 0, 0, .15);
}

/* Search / medication form card — applied everywhere .medication-form is used */
.medication-form {
    border-radius: var(--cphx-radius);
    box-shadow: var(--cphx-shadow);
    align-items: flex-end;
}

.medication-form h6 {
    font-weight: 400;
    color: var(--dark);
    letter-spacing: .3px;
}

/* Home has 4 fields (incl. Order For) — give the card more room than the default 75% */
.cphx-home .medication-form {
    width: 92%;
    max-width: 1100px;
}

.cphx-home .medication-form .form-control,
.cphx-home .medication-form select.cphx-select {
    height: 40px;
}

.cphx-home .medication-form .error {
    font-size: 12px;
    min-height: 18px;
    margin-top: 4px;
}

/* ============================================================
   HOME — TESTIMONIALS (Bootstrap 3 carousel + cphx cards)
   ============================================================ */
.cphx-home .cphx-testimonials {
    background-color: var(--offwhite, #f5f7fa);
}

/* Carousel slides must not inherit the old .testimonials .item card shadow */
.cphx-home .cphx-testimonials .carousel-inner > .item {
    box-shadow: none;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
}

.cphx-home .cphx-testimonials .cphx-section-title {
    font-weight: 700;
    color: var(--primary2, #000427);
    letter-spacing: .3px;
}

.cphx-home .cphx-testimonial-card {
    position: relative;
    padding: 28px 28px 24px;
    border-radius: var(--cphx-radius);
    box-shadow: var(--cphx-shadow);
    border-top: 3px solid var(--primary);
    overflow: hidden;
    transition: box-shadow var(--cphx-transition, .2s ease), transform var(--cphx-transition, .2s ease);
    display: flex;
    flex-direction: column;
    min-height: 280px;
}

.cphx-home .cphx-testimonial-card:hover {
    box-shadow: var(--cphx-shadow-hover);
}

.cphx-home .cphx-testimonial-quote {
    margin-bottom: 8px;
}

.cphx-home .cphx-testimonial-quote img {
    opacity: .85;
}

.cphx-home .cphx-testimonial-body {
    flex: 1 1 auto;
    min-height: 120px;
    color: var(--primary3, #414042);
    font-size: 15px;
    line-height: 1.65;
    margin-bottom: 20px;
}

.cphx-home .cphx-testimonial-user {
    margin-top: auto;
    padding-top: 16px;
    border-top: 1px solid rgba(0, 4, 39, .08);
}

.cphx-home .cphx-testimonial-avatar {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    object-fit: cover;
    border: 2px solid rgba(51, 122, 183, .25);
    margin: 0;
}

.cphx-home .cphx-testimonial-name {
    font-weight: 600;
    font-size: 15px;
}

.cphx-home .cphx-testimonial-stars .fa-star {
    color: #d1d1d1;
    font-size: 13px;
    margin-right: 1px;
}

.cphx-home .cphx-testimonial-stars .fa-star.checked {
    color: #e7711b;
}

.cphx-home .cphx-testimonials .carousel-indicators {
    position: static;
    width: 100%;
    margin: 24px 0 8px;
    left: auto;
    bottom: auto;
}

.cphx-home .cphx-testimonials .carousel-indicators li {
    width: 10px;
    height: 10px;
    margin: 0 4px;
    border: none;
    border-radius: 50%;
    background-color: rgba(51, 122, 183, .35);
}

.cphx-home .cphx-testimonials .carousel-indicators li.active {
    width: 28px;
    border-radius: 6px;
    background-color: var(--primary);
}

.cphx-home .cphx-testimonial-cta {
    display: inline-block;
    min-width: 200px;
    padding: 12px 28px;
}

@media (max-width: 767px) {
    .cphx-home .cphx-testimonial-card {
        min-height: 0;
        margin-bottom: 0;
    }
}

/* ============================================================
   HOME — FEATURES ROW
   ============================================================ */
.cphx-home .features {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
}

.cphx-home .features>[class*="col-"] {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    transition: transform var(--cphx-transition);
}

.cphx-home .features img {
    height: 46px;
    width: auto;
    margin-bottom: 10px;
}

.cphx-home .features h4 {
    font-weight: 600;
    margin-bottom: 6px;
}

.cphx-home .features em {
    font-size: 14px;
    opacity: .92;
    line-height: 1.4;
    font-weight: 400;
}

/* ============================================================
   HOME — PROGRAMS + PROCESS CARDS
   ============================================================ */
.cphx-home .program-box {
    border-radius: var(--cphx-radius);
    overflow: hidden;
    background: var(--white);
}

.cphx-home .program-title {
    background: var(--cphx-gradient) !important;
}

.cphx-home .process-box {
    border-radius: var(--cphx-radius);
    background: var(--white);
}

.cphx-home .process-box img {
    transition: transform var(--cphx-transition);
}

.cphx-home .process-box:hover img {
    transform: scale(1.08);
}

.cphx-home .process-box h3 {
    color: var(--primary);
    font-weight: 600;
    margin-top: 1rem;
}

/* ============================================================
   HOME — PROMOTIONAL BANNER
   ============================================================ */
.cphx-home .promotional-content {
    padding-left: 3rem;
    padding-right: 3rem;
}

.cphx-home .promotional-content .btn {
    border-radius: var(--cphx-radius-sm);
    font-weight: 600;
    letter-spacing: .5px;
    background: var(--cphx-gradient);
    transition: filter var(--cphx-transition);
}

.cphx-home .promotional-content .btn:hover {
    filter: brightness(1.06);
}

/* ============================================================
   FOOTER
   ============================================================ */
.main-footer {
    background: linear-gradient(180deg, var(--dark), #000427);
}

.main-footer h4 {
    position: relative;
    font-weight: 600;
    padding-bottom: 12px;
    margin-bottom: 18px;
}

.main-footer h4::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 42px;
    height: 3px;
    border-radius: 3px;
    background: var(--cphx-gradient);
}

.main-footer ul li a {
    transition: color var(--cphx-transition), transform var(--cphx-transition);
}

.main-footer ul li a:hover {
    color: var(--primary) !important;
    transform: translateX(4px);
    text-decoration: none;
}

.main-footer .copyright {
    margin-top: 1rem;
    opacity: .85;
}

/* ============================================================
   SHARED CONTENT PAGES
   (applies to any page using .cphx-page-hero + .cphx-info-card)
   ============================================================ */
.cphx-page-hero h1 {
    font-weight: 500;
    line-height: 1.35;
    margin-left: auto;
    margin-right: auto;
}

.cphx-info-card {
    border-radius: var(--cphx-radius);
    border-top: 4px solid var(--primary);
    height: 100%;
    transition: box-shadow var(--cphx-transition), transform var(--cphx-transition);
}

.cphx-home-delivery .cphx-info-card p,
.cphx-pharmacist-support .cphx-info-card p,
.cphx-customer-support .cphx-info-card p {
    line-height: 1.65;
    margin-bottom: 0.75rem;
}

.cphx-home-delivery .cphx-info-card h3 {
    margin-bottom: 0 !important;
    color: var(--primary);
}

.cphx-home-delivery .cphx-info-card h4 {
    margin-bottom: 1rem !important;
    margin-top: 0.5rem !important;
}

.cphx-home-delivery .cphx-info-card p:last-child,
.cphx-pharmacist-support .cphx-info-card p:last-child,
.cphx-customer-support .cphx-info-card p:last-child {
    margin-bottom: 0;
}

.cphx-home-delivery .cphx-info-card a.text-body,
.cphx-pharmacist-support .cphx-info-card a.text-body,
.cphx-customer-support .cphx-info-card a.text-body {
    color: var(--primary);
    font-weight: 600;
}

.cphx-home-delivery .cphx-handbook-list li,
.cphx-pharmacist-support .cphx-hours-list li {
    position: relative;
    padding: 10px 1rem;
    border-bottom: 1px solid rgba(0, 4, 39, .08);
    line-height: 1.5;
}

.cphx-home-delivery .cphx-handbook-list li:last-child,
.cphx-pharmacist-support .cphx-hours-list li:last-child {
    border-bottom: none;
}

/* ============================================================
   CUSTOMER SUPPORT (.cphx-customer-support)
   ============================================================ */

.cphx-customer-support .cphx-info-card h2 {
    color: var(--dark);
    font-weight: 600;
    line-height: 1.35;
    margin-bottom: 1rem;
}

.cphx-customer-support .cphx-support-phone a {
    display: inline-block;
    font-size: var(--cphx-fs-body);
    font-weight: 700;
    line-height: 1.2;
}

.cphx-customer-support .cphx-support-fax,
.cphx-customer-support .cphx-support-address {
    color: var(--dark);
    font-weight: 600;
}

.cphx-customer-support .cphx-info-card span[style],
.cphx-customer-support .cphx-info-card p[style] {
    color: inherit !important;
}

/* ============================================================
   CONTACT US (.cphx-contact-us)
   ============================================================ */
.cphx-contact-us {
    background: var(--offwhite);
}

.cphx-contact-us .cphx-contact-hero-phone a {
    display: inline-block;
    font-size: 1.75rem;
    font-weight: 700;
    line-height: 1.2;
}

.cphx-contact-us .cphx-contact-intro {
    padding-top: 0 !important;
    margin-top: -0.5rem;
}

.cphx-contact-us .cphx-contact-intro-card {
    max-width: 900px;
    margin: 0 auto;
    color: var(--body);
    line-height: 1.65;
}

.cphx-contact-us .cphx-info-card {
    box-shadow: var(--cphx-shadow);
}

.cphx-contact-us .contact-info h4,
.cphx-contact-us .cphx-contact-form-card h4 {
    color: var(--dark);
    font-weight: 600;
    margin-bottom: 0.75rem;
}

.cphx-contact-us .contact-info p {
    color: var(--body);
    line-height: 1.65;
}

.cphx-enter-password .cphx-info-card {
    border-top: 3px solid var(--primary);
}

.cphx-enter-password .input-group.pwd .form-control {
    height: 40px;
}

.cphx-after-login-video iframe {
    max-width: 100%;
    border-radius: var(--cphx-radius-sm);
}

/* ============================================================
   NEXT STEPS (.cphx-next-steps)
   ============================================================ */

.cphx-next-steps .cphx-info-card p {
    color: var(--body);
    line-height: 1.65;
    margin-bottom: 0.75rem;
}

.next-stape-text-details .cphx-info-card {
    border-left: 4px solid var(--primary);
    border-top: none;
}

/* ============================================================
   MEDICATION REMINDER SET (.cphx-med-reminder-set)
   ============================================================ */
.cphx-med-reminder-set .cphx-med-reminder-intro {
    color: var(--body);
    line-height: 1.65;
    margin-bottom: 0;
}

.cphx-med-reminder-set .cphx-info-card h4 {
    margin-bottom: 0.75rem;
}

.cphx-med-reminder-set .cphx-med-reminder-per-day .custom-control,
.cphx-med-reminder-set .cphx-med-reminder-days .custom-control {
    margin-bottom: 0.5rem;
}

.cphx-med-reminder-set .time1,
.cphx-med-reminder-set .time2,
.cphx-med-reminder-set .time3,
.cphx-med-reminder-set .time4 {
    margin-bottom: 0;
}

.cphx-med-reminder-set .cphx-search-band .medication-form {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

/* ============================================================
   FAQ PAGE (.cphx-faq) — Bootstrap 3 accordion, cphx restyle
   ============================================================ */
.cphx-faq .cphx-faq-accordion .faq-title h3 {
    color: var(--dark);
    margin-bottom: 16px;
}

.cphx-faq .cphx-faq-accordion .panel {
    overflow: hidden;
    margin-bottom: 12px;
    border: 1px solid rgba(0, 4, 39, .10);
    border-radius: var(--cphx-radius-sm);
    box-shadow: 0 3px 12px rgba(0, 4, 39, .06);
}

.cphx-faq .cphx-faq-accordion .panel-heading {
    padding: 0;
    border: 0;
    background: var(--white);
}

.cphx-faq .cphx-faq-accordion .panel-title>a {
    position: relative;
    display: block;
    padding: 16px 48px 16px 18px;
    color: var(--dark);
    font-size: var(--cphx-fs-h4, 1.1rem);
    font-weight: 500;
    line-height: 1.45;
    text-decoration: none;
}

.cphx-faq .cphx-faq-accordion .panel-title>a::before {
    content: "\f068";
    position: absolute;
    top: 50%;
    right: 18px;
    transform: translateY(-50%);
    color: var(--primary);
    font-family: FontAwesome;
    font-size: 18px;
}

.cphx-faq .cphx-faq-accordion .panel-title>a.collapsed::before {
    content: "\f067";
}

.cphx-faq .cphx-faq-accordion .panel-title>a:hover,
.cphx-faq .cphx-faq-accordion .panel-title>a:focus {
    color: var(--primary) !important;
    background: var(--offwhite);
}

.cphx-faq .cphx-faq-accordion .panel-body {
    padding: 18px;
    color: var(--body);
    line-height: 1.65;
    border-top: 1px solid rgba(0, 4, 39, .08) !important;
    background: var(--white);
}

/* ============================================================
   LEGAL CONTENT PAGES
   (.cphx-term-of-use, .cphx-privacy-policy)
   ============================================================ */
.cphx-term-of-use .cphx-legal-content,
.cphx-privacy-policy .cphx-legal-content {
    max-width: 960px;
    margin: 0 auto;
}

.cphx-term-of-use .cphx-legal-content>center,
.cphx-privacy-policy .cphx-legal-content>center {
    display: block;
    text-align: left;
}

.cphx-term-of-use .cphx-legal-content p,
.cphx-privacy-policy .cphx-legal-content p {
    margin: 0 0 1rem;
    color: var(--body);
    font-weight: 400 !important;
    line-height: 1.7;
    text-align: left;
}

.cphx-term-of-use .cphx-legal-content p.trajan,
.cphx-privacy-policy .cphx-legal-content p.trajan,
.cphx-privacy-policy .cphx-legal-content b.trajan {
    display: block;
    margin: 1.5rem 0 0.75rem;
    color: var(--dark);
    font-weight: 600 !important;
    line-height: 1.45;
}

.cphx-term-of-use .cphx-legal-content>center>p.trajan:first-child,
.cphx-privacy-policy .cphx-legal-content>p:first-of-type {
    margin-top: 0;
    padding: 14px 16px;
    border-radius: var(--cphx-radius-sm);
    background: var(--offwhite);
    border-left: 4px solid var(--primary);
    font-weight: 500 !important;
    color: var(--dark);
}

.cphx-term-of-use .cphx-legal-content a,
.cphx-privacy-policy .cphx-legal-content a {
    color: var(--primary);
    font-weight: 600;
    word-break: break-word;
}

.cphx-term-of-use .cphx-legal-content a:hover,
.cphx-term-of-use .cphx-legal-content a:focus,
.cphx-privacy-policy .cphx-legal-content a:hover,
.cphx-privacy-policy .cphx-legal-content a:focus {
    color: var(--secondary);
    text-decoration: underline;
}

.cphx-privacy-policy .cphx-legal-content li {
    color: var(--body);
    line-height: 1.6;
    list-style: disc;
}

.cphx-privacy-policy .cphx-legal-content>br {
    display: none;
}

/* ============================================================
   UNSUBSCRIBE / RESUBSCRIBE (.cphx-unsubscribe)
   ============================================================ */
.cphx-unsubscribe .cphx-unsubscribe-title {
    color: var(--dark);
    font-weight: 600;
    margin-bottom: 0.75rem;
}

.cphx-unsubscribe .cphx-unsubscribe-intro {
    line-height: 1.65;
    margin-bottom: 1.25rem;
}

.cphx-unsubscribe .cphx-unsubscribe-intro .text-primary1 {
    font-weight: 600;
    word-break: break-word;
}

.cphx-unsubscribe #frmReasonSuccess,
.cphx-unsubscribe #frmReasonErr,
.cphx-unsubscribe #frmReasonOptionErr {
    font-size: 1.1rem;
    line-height: 1.45;
}

.cphx-unsubscribe .cphx-unsubscribe-actions {
    margin-top: 1.25rem;
}

/* ============================================================
   PASSWORD ACTION (.cphx-password-action)
   ============================================================ */
.cphx-password-action .cphx-info-card {
    box-shadow: var(--cphx-shadow);
}

.cphx-password-action .cphx-password-action-intro {
    line-height: 1.65;
    color: var(--body);
}

.cphx-password-action .input-group.pwd .form-control {
    padding-right: 44px !important;
}

.cphx-password-action .messageuser:not(:empty) {
    display: block;
}

/* ============================================================
   SET PASSWORD (.cphx-set-password)
   ============================================================ */
.cphx-set-password .cphx-info-card {
    box-shadow: var(--cphx-shadow);
}

.cphx-set-password .cphx-set-password-intro {
    line-height: 1.65;
    color: var(--body);
}

.cphx-set-password .input-group.pwd .form-control {
    padding-right: 44px !important;
}

.cphx-set-password .messageuser:not(:empty) {
    display: block;
}

/* ============================================================
   VERIFY ACCOUNT (.cphx-verify-account)
   ============================================================ */
.cphx-verify-account .cphx-info-card {
    box-shadow: var(--cphx-shadow);
}

.cphx-verify-account .cphx-verify-account-intro {
    line-height: 1.65;
    color: var(--body);
}

.cphx-verify-account #resend_otp {
    font-weight: 600;
    text-decoration: none;
}

.cphx-verify-account #resend_otp:hover,
.cphx-verify-account #resend_otp:focus {
    text-decoration: underline;
}

/* ============================================================
   INVITE USER (.cphx-invite-user)
   ============================================================ */
.cphx-invite-user .cphx-info-card {
    box-shadow: var(--cphx-shadow);
}

.cphx-invite-user .input-group.pwd .form-control {
    padding-right: 44px !important;
}

.cphx-invite-user .form-control[readonly] {
    background-color: var(--offwhite) !important;
}

/* ============================================================
   VIEW RECEIPT (.cphx-view-receipt)
   ============================================================ */
.cphx-view-receipt .cphx-vr-receipt-wrap {
    max-width: 860px;
    margin: 0 auto 24px;
}

.cphx-view-receipt .invoice-box {
    max-width: 100%;
    margin: 0 auto;
    padding: 28px 30px;
    border: 1px solid rgba(0, 4, 39, .10);
    border-radius: var(--cphx-radius);
    border-top: 4px solid var(--primary);
    box-shadow: var(--cphx-shadow);
    background: var(--white);
    font-size: 16px;
    line-height: 1.55;
    color: var(--body);
    font-family: inherit;
}

.cphx-view-receipt .invoice-box table {
    width: 100%;
    line-height: inherit;
    text-align: left;
}

.cphx-view-receipt .invoice-box table td {
    padding: 6px 8px;
    vertical-align: top;
}

.cphx-view-receipt .invoice-box table tr.top table td {
    padding-bottom: 20px;
}

.cphx-view-receipt .invoice-box table tr.top table td.title {
    font-size: 45px;
    line-height: 45px;
    color: var(--dark);
}

.cphx-view-receipt .invoice-box table tr.information table td {
    padding-bottom: 28px;
}

.cphx-view-receipt .invoice-box table tr.heading td {
    background: rgba(51, 122, 183, .22);
    border-bottom: 1px solid rgba(51, 122, 183, .10);
    font-weight: 700;
    color: var(--dark);
}

.cphx-view-receipt .invoice-box table tr.item td {
    border-bottom: none;
}

.cphx-view-receipt .invoice-box table tr.border-bottom {
    border-bottom: 1px solid rgba(51, 122, 183, .35);
}

.cphx-view-receipt .invoice-box table tr.total td {
    font-weight: 700;
    color: var(--dark);
    padding-top: 12px;
}

.cphx-view-receipt .invoice-box .details>td>table {
    border: 1px solid rgba(51, 122, 183, .35) !important;
    border-radius: var(--cphx-radius-sm);
    overflow: visible;
}

.cphx-view-receipt .cphx-vr-actions {
    gap: 4px;
}

.cphx-view-receipt .cphx-vr-actions .btn {
    min-width: 160px;
}

/* ============================================================
   COMMON FORM CONTROLS + LABELS + BUTTONS (site-wide)
   ============================================================ */
.form-control,
select.cphx-select {
    height: 40px;
    border-radius: var(--cphx-radius-sm) !important;
    border: 1px solid #dfe3df;
    background-color: var(--white) !important;
    box-shadow: none;
    transition: border-color var(--cphx-transition), box-shadow var(--cphx-transition);
}

.form-control:focus,
select.cphx-select:focus {
    border-color: var(--primary) !important;
    box-shadow: 0 0 0 3px rgba(51, 122, 183, .22);
    outline: none;
}

.form-control[readonly],
.form-control.bg-offwhite {
    background-color: var(--offwhite) !important;
}

textarea.form-control,
textarea.s-up-textbox-area {
    height: auto;
    resize: vertical;
}

.form-group>label:not(.d-flex),
.cphx-field-label:not(.d-flex) {
	display: block;
	font-weight: 400;
	color: var(--dark);
	margin-bottom: 5px !important;
	text-align: left;
}

.cphx-med-reminder-times {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.cphx-med-reminder-times .form-group {
    min-width: 405px;
}

.btn.custom-btn {
    /* height: 48px; */
    border-radius: var(--cphx-radius-sm);
    font-weight: 600;
    letter-spacing: .3px;
    background: var(--cphx-gradient);
    border: none;
    transition: filter var(--cphx-transition);
}

.btn.custom-btn:hover,
.btn.custom-btn:focus {
    filter: brightness(1.06);
    color: var(--white);
}

.btn.custom-btn.gray-btn {
    background: var(--offwhite);
    color: var(--dark);
    border: 1px solid rgba(0, 4, 39, .12);
}

.btn.custom-btn.gray-btn:hover,
.btn.custom-btn.gray-btn:focus {
    filter: none;
    background: #e8ebe8;
    color: var(--dark);
}

/* ============================================================
   GLOBAL SELECT FIELD (site-wide)
   Use: select.form-control and/or select.cphx-select
   Caret icon: wrap select (or form-group) with .cphx-select-field
   ============================================================ */
select.form-control,
select.cphx-select {
    -webkit-appearance: auto;
    -moz-appearance: auto;
    appearance: auto;
    line-height: 1.4;
    padding: 8px 22px 8px 12px !important;
    background-image: none;
    color: var(--body);
    cursor: pointer;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

select.cphx-select{
    -webkit-appearance: none;
    -moz-appearance: none;
    background-image: linear-gradient(45deg, transparent 50%, gray 50%), linear-gradient(135deg, gray 50%, transparent 50%);
    background-position: calc(100% - 10px) calc(12px + 2px), calc(100% - 6px) calc(12px + 2px);
    background-size: 4px 5px, 4px 5px;
    background-repeat: no-repeat;
}

.cphx-select-field {
    position: relative;
}

.cphx-select-field::after {
    content: none;
}

select.form-control:disabled,
select.cphx-select:disabled {
    opacity: .65;
    cursor: not-allowed;
    background-color: var(--offwhite) !important;
}

select.form-control::-ms-expand,
select.cphx-select::-ms-expand {
    display: none;
}

/* ============================================================
   UPDATE PROFILE PAGE (.cphx-update-profile)
   ============================================================ */
.cphx-update-profile .cphx-page-hero h3 {
    font-weight: 500;
    line-height: 1.35;
}

.cphx-update-profile .cphx-profile-card {
    border-radius: var(--cphx-radius);
    box-shadow: var(--cphx-shadow);
    border-top: 4px solid var(--primary);
}

.cphx-update-profile .panel-group {
    margin-bottom: 0;
}

.cphx-update-profile .panel-default {
    border: 1px solid rgba(0, 4, 39, .08);
    border-radius: var(--cphx-radius-sm);
    overflow: hidden;
    box-shadow: none;
}

.cphx-update-profile .panel-default>.panel-heading {
    background: linear-gradient(135deg, rgb(238 241 255), rgb(242 244 255));
    border-bottom: 1px solid rgba(0, 4, 39, .08);
    padding: 0;
}

.cphx-update-profile .panel-title>a {
    padding: 14px 16px;
    color: var(--primary) !important;
    font-weight: 600;
}

.cphx-update-profile .panel-title>a.collapsed:before {
    content: "\f067";
}

.cphx-update-profile .panel-title>a::before {
    float: right !important;
    content: "\f068";
    font-weight: 400;
    padding-right: 5px;
    position: absolute;
    right: 0px;
    top: 50%;
    transform: translate(-50%, -50%);
}

.cphx-update-profile .panel-title>a:hover,
.cphx-update-profile .panel-title>a:focus {
    color: var(--dark) !important;
    text-decoration: none;
}

.cphx-update-profile .panel-body {
    padding: 16px;
}

.cphx-update-profile .cphx-up-action-btn {
    white-space: normal;
    margin-bottom: 12px;
    padding: 10px 14px;
    border: 1px solid rgba(0, 4, 39, .12);
    border-radius: var(--cphx-radius-sm);
    background: var(--offwhite);
    color: var(--dark);
    font-weight: 600;
    box-shadow: none;
    transition: background-color var(--cphx-transition), border-color var(--cphx-transition), color var(--cphx-transition);
}

.cphx-update-profile .cphx-up-action-btn:hover,
.cphx-update-profile .cphx-up-action-btn:focus {
    background: rgba(0, 131, 60, .08);
    border-color: rgba(0, 131, 60, .28);
    color: var(--primary);
    text-decoration: none;
}

.cphx-update-profile .cphx-up-action-btn .fa {
    color: var(--primary);
}

.cphx-update-profile .update-profile-box {
    margin-top: 8px;
    padding: 12px;
    border: 1px solid rgba(0, 4, 39, .08);
    border-radius: var(--cphx-radius-sm);
    background: #fff;
}

.cphx-update-profile .cphx-up-hint,
.cphx-update-profile .cphx-up-pw-help {
    font-size: 1rem;
    line-height: 1.5;
    color: rgba(0, 4, 39, .72);
}

.cphx-update-profile .cphx-up-form-title {
    font-weight: 600;
    color: var(--dark);
}

.cphx-update-profile .cphx-up-rel .custom-control {
    margin-bottom: 0;
}

.cphx-update-profile #userdetailsForm,
.cphx-update-profile #dependentsForm,
.cphx-update-profile #creditCardForm,
.cphx-update-profile #PhysicianForm,
.cphx-update-profile #PharmacyForm {
    margin-top: 12px;
    padding: 16px;
    border: 1px solid rgba(0, 4, 39, .08);
    border-radius: var(--cphx-radius-sm);
    background: linear-gradient(180deg, #fff, rgba(0, 131, 60, .02));
}

.cphx-update-profile .panel-body .form-group {
    margin-bottom: 14px;
}

.cphx-update-profile .panel-body .form-control {
    margin-bottom: 0;
}

.cphx-update-profile .field_row {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 10px;
}

.cphx-update-profile .field_row .form-control {
    margin-bottom: 0;
}

.cphx-update-profile .add_button,
.cphx-update-profile .remove_button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: var(--offwhite);
    border: 1px solid #dfe3df;
    flex-shrink: 0;
    transition: background-color var(--cphx-transition), color var(--cphx-transition);
}

.cphx-update-profile .add_button:hover,
.cphx-update-profile .remove_button:hover {
    background: var(--primary);
    border-color: var(--primary);
    color: var(--white);
    text-decoration: none;
}

.cphx-update-profile .add_button:hover .text-black,
.cphx-update-profile .remove_button:hover .text-black {
    color: var(--white) !important;
}

.cphx-update-profile .input-group.pwd {
    position: relative;
}

.cphx-update-profile .input-group.pwd .form-control {
    padding-right: 44px !important;
}

.cphx-update-profile .cphx-ms {
    position: relative;
    margin-bottom: 1rem;
}

.cphx-update-profile .cphx-ms-select {
    position: absolute;
    left: 0;
    width: 1px;
    height: 1px;
    opacity: 0;
    pointer-events: none;
}

.cphx-update-profile .cphx-ms-toggle {
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    min-height: 42px;
    cursor: pointer;
    background: var(--white);
}

.cphx-update-profile .cphx-ms-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    align-items: center;
    flex: 1;
    padding-right: 8px;
}

.cphx-update-profile .cphx-ms-placeholder {
    color: #888;
}

.cphx-update-profile .cphx-ms-tag {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 2px 8px;
    border-radius: 999px;
    background: rgba(51, 122, 183, .12);
    color: var(--dark-blue);
    font-size: 13px;
    line-height: 1.4;
}

.cphx-update-profile .cphx-ms-tag-remove {
    border: 0;
    background: transparent;
    color: inherit;
    font-size: 16px;
    line-height: 1;
    padding: 0;
    cursor: pointer;
}

.cphx-update-profile .cphx-ms-caret {
    position: relative;
    width: 24px;
    min-height: 28px;
    flex-shrink: 0;
    margin-left: 8px;
    background-image: linear-gradient(45deg, transparent 50%, gray 50%), linear-gradient(135deg, gray 50%, transparent 50%);
    background-position: calc(50% - 2px) calc(50% + 1px), calc(50% + 2px) calc(50% + 1px);
    background-size: 4px 5px, 4px 5px;
    background-repeat: no-repeat;
}

.cphx-update-profile .cphx-ms-dropdown {
    position: absolute;
    left: 0;
    right: 0;
    top: calc(100% + 4px);
    z-index: 20;
    max-height: 260px;
    overflow-y: auto;
    background: var(--white);
    border: 1px solid rgba(0, 4, 39, .12);
    border-radius: 8px;
    box-shadow: var(--cphx-shadow);
    padding: 6px 0;
}

.cphx-update-profile .cphx-ms-option {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 0;
    padding: 8px 12px;
    cursor: pointer;
    font-weight: 400;
    color: var(--dark-blue);
}

.cphx-update-profile .cphx-ms-select-all {
    font-weight: 600;
}

.cphx-update-profile .cphx-ms-option:hover,
.cphx-update-profile .cphx-ms-option:has(.cphx-ms-option-cb:checked),
.cphx-update-profile .cphx-ms-option:has(.cphx-ms-select-all-cb:checked) {
    background: rgba(51, 122, 183, .08);
}

.cphx-update-profile .cphx-ms-option-cb,
.cphx-update-profile .cphx-ms-select-all-cb {
    margin: 0;
    accent-color: var(--dark-blue);
}

/* ============================================================
   RESPONSIVE DATATABLE (physician modal, my card, etc.)
   ============================================================ */
.cphx-responsive-dt-wrap {
    width: 100%;
    min-width: 0;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

.cphx-responsive-dt-wrap .dataTables_wrapper {
    width: 100%;
    min-width: 0;
}

table.cphx-responsive-dt,
table.cphx-responsive-dt.dataTable {
    border-collapse: collapse;
    width: 100% !important;
    margin: 0;
}

table.cphx-responsive-dt thead th {
    font-weight: 500;
    font-size: 0.9rem;
    color: var(--white);
    padding: 10px 10px;
    text-align: left !important;
    background: var(--primary);
    border-color: rgba(255, 255, 255, .12);
    white-space: nowrap;
    vertical-align: middle;
}

table.cphx-responsive-dt thead th span {
    font-weight: 500;
    font-size: 0.9rem;
    color: var(--white);
}

table.cphx-responsive-dt tbody td {
    padding: 8px 10px;
    font-size: 0.8rem;
    text-align: left !important;
    vertical-align: middle;
}

table.cphx-responsive-dt tbody td span {
    font-size: 0.8rem;
    display: block;
}

table.cphx-responsive-dt tbody tr:nth-child(even) {
    background: rgba(0, 131, 60, .03);
}

table.cphx-responsive-dt>tbody>tr>td.dtr-control {
    position: relative;
    cursor: pointer;
    box-sizing: border-box;
}

table.cphx-responsive-dt.collapsed>tbody>tr>td.dtr-control {
    padding-left: 28px !important;
}

table.cphx-responsive-dt tbody td.cphx-dt-control-col.dtr-control::before {
    left: 4px;
}

table.cphx-responsive-dt thead th.cphx-dt-control-col.sorting,
table.cphx-responsive-dt thead th.cphx-dt-control-col.sorting_asc,
table.cphx-responsive-dt thead th.cphx-dt-control-col.sorting_desc {
    background-image: none !important;
    cursor: default;
    pointer-events: none;
}

table.cphx-responsive-dt>tbody>tr>td.dtr-control::before {
    position: absolute;
    left: 6px;
    top: 50%;
    transform: translateY(-50%);
    border-color: transparent transparent transparent var(--primary);
}

table.cphx-responsive-dt>tbody>tr.dtr-expanded>td.dtr-control::before {
    border-color: var(--primary) transparent transparent transparent;
}

table.cphx-responsive-dt>tbody>tr.child {
    background: var(--offwhite);
}

table.cphx-responsive-dt>tbody>tr.child ul.dtr-details {
    display: flex !important;
    flex-wrap: wrap;
    width: 100%;
    margin: 0;
    padding: 8px 12px 12px;
    list-style: none;
}

table.cphx-responsive-dt>tbody>tr.child ul.dtr-details>li {
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    gap: 7px;
    padding: 5px 15px 5px 5px !important;
    border-bottom: 1px solid rgba(0, 4, 39, .1);
    font-size: 1.1rem;
    width: 50%;
}

table.dataTable>tbody>tr.child ul.dtr-details>li:first-child {
    padding-top: 5px !important;
}

table.dataTable>tbody>tr.child ul.dtr-details>li:nth-child(odd) {
    border-right: 1px solid rgba(0, 4, 39, .1);
}

table.cphx-responsive-dt>tbody>tr.child ul.dtr-details>li:last-child {
    border-bottom: none;
}

table.cphx-responsive-dt>tbody>tr.child span.dtr-title {
    /* flex: 0 0 42%; */
    /* max-width: 42%; */
    font-weight: 600;
    color: var(--primary);
    text-align: left;
}

table.cphx-responsive-dt>tbody>tr.child span.dtr-data {
    flex: 1;
    text-align: right;
    word-break: break-word;
}

.cphx-responsive-dt-wrap .pagination-div {
    flex-wrap: wrap;
    gap: 10px 16px;
    margin-top: 14px !important;
    padding-top: 4px;
}

.cphx-responsive-dt-wrap .dt-length {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 6px;
    font-size: 0.9rem;
}

.cphx-responsive-dt-wrap .dt-length select,
.cphx-responsive-dt-wrap .dt-input {
    border: 1px solid rgba(0, 4, 39, .15);
    border-radius: 3px !important;
    padding: 2px 28px 2px 8px;
    min-height: 32px;
    font-size: 1rem;
}

.cphx-responsive-dt-wrap .dt-info {
    padding: 0 !important;
    font-size: 0.9rem;
    color: rgba(0, 4, 39, .72);
}

.cphx-responsive-dt-wrap .dt-paging .dt-paging-button {
    padding: 2px 10px !important;
    border-radius: 3px !important;
    border: 1px solid rgba(0, 4, 39, .15) !important;
    margin: 0 2px;
    font-size: 1rem;
}

.cphx-responsive-dt-wrap .dt-paging .dt-paging-button.current {
    border-color: var(--primary) !important;
    color: var(--white) !important;
}

.cphx-responsive-dt-wrap .dt-paging .dt-paging-button:hover:not(.disabled):not(.current) {
    border-color: var(--primary) !important;
    color: var(--primary) !important;
    background: rgba(0, 131, 60, .06) !important;
}

/* ============================================================
   PHYSICIAN SEARCH MODAL — DataTable + Responsive (#physicianSearchModal)
   ============================================================ */
.cphx-physician-search-modal .cphx-physician-modal-dialog {
    /* width: calc(100% - 24px);
    max-width: 1140px; */
    margin: 12px auto;
}

.cphx-physician-search-modal .cphx-physician-modal-body {
    display: flex;
    flex-direction: column;
    min-height: 40vh;
    max-height: calc(100vh - 100px);
    padding: 16px 18px 18px;
    overflow-y: auto;
}

.physicianForm #frmSearchphysician > .row {
    display: flex;
    flex-wrap: wrap;
}

.cphx-physician-search-modal .cphx-physician-modal-note {
    line-height: 1.5;
    color: rgba(0, 4, 39, .78);
    margin-bottom: 12px !important;
}

.cphx-physician-search-modal .cphx-physician-dt-wrap.cphx-responsive-dt-wrap {
    flex: 1;
    scrollbar-width: none;
}

.cphx-physician-search-modal #physicianTable.dataTable thead th span {
    font-size: 1.1rem !important;
    color: var(--white);
    font-weight: 600;
}

.cphx-physician-search-modal .selectPhysician {
    padding: 6px 12px !important;
    font-size: 0.85rem;
    font-weight: 500;
    line-height: 1.3;
    border: none;
    border-radius: 3px;
    background: var(--primary);
    color: var(--white);
    white-space: nowrap;
    transition: opacity var(--cphx-transition);
}

.cphx-physician-search-modal .selectPhysician:hover,
.cphx-physician-search-modal .selectPhysician:focus {
    opacity: 0.92;
    color: var(--white);
    outline: none;
}

/* ============================================================
   CART PAGE (.cphx-cart) — addcart-medlist.php
   ============================================================ */
.cphx-cart .cphx-cart-dt-wrap {
    padding: 0;
}

.cphx-cart .cphx-cart-total h4 {
    font-weight: 600;
    color: var(--dark);
}

.cphx-cart .cphx-cart-empty {
    font-weight: 600;
    color: rgba(0, 4, 39, .75);
}

.cphx-cart #InternationalBox p {
    line-height: 1.55;
    color: rgba(0, 4, 39, .78);
}

.cphx-cart .cphx-cart-qty {
    max-width: 100px;
    margin: 0 auto;
}

.cphx-cart .cphx-cart-action-cell a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 4px;
}

.cphx-cart .c-drug-label,
.cphx-cart .c-international-label {
    display: inline-block;
    margin: 2px 0;
}

.cphx-cart .s-rx-dia-list li {
    margin-bottom: 4px;
}

.cphx-cart table.cphx-responsive-dt tbody td a {
    color: var(--primary);
    font-weight: 600;
}

/* ============================================================
   ORDER PROCESS (.cphx-order-process)
   ============================================================ */
.cphx-order-process .cphx-op-status-card {
    box-shadow: var(--cphx-shadow);
    min-height: 180px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 16px;
}

.cphx-order-process .cphx-op-message {
    font-weight: 600;
    line-height: 1.5;
    color: var(--dark);
    max-width: 640px;
}

.cphx-order-process .cphx-op-status-card>p,
.cphx-order-process .cphx-op-status-card>div:not(.cphx-op-actions):not(.cphx-op-spinner) {
    line-height: 1.6;
    color: rgba(0, 4, 39, .82);
    max-width: 640px;
    margin: 0 auto;
}

.cphx-order-process .cphx-op-status-card a {
    color: var(--primary);
    font-weight: 600;
}

.cphx-order-process .cphx-op-actions {
    width: 100%;
}

.cphx-order-process .cphx-op-actions .btn {
    min-width: 160px;
}

.cphx-order-process .cphx-op-spinner {
    width: 42px;
    height: 42px;
    border: 3px solid rgba(0, 4, 39, .12);
    border-top-color: var(--primary);
    border-radius: 50%;
    animation: cphx-op-spin 0.8s linear infinite;
}

@keyframes cphx-op-spin {
    to {
        transform: rotate(360deg);
    }
}

.cphx-order-process .cphx-op-modal-note {
    line-height: 1.55;
    color: rgba(0, 4, 39, .78);
}

/* ============================================================
   ORDER SUMMARY (.cphx-order-summary)
   ============================================================ */
.cphx-order-summary .cphx-os-accordion {
    border-radius: var(--cphx-radius);
    overflow: hidden;
    box-shadow: 0 8px 28px rgba(0, 4, 39, .06);
}

.cphx-order-summary .cphx-os-step {
    border: 0;
    border-bottom: 1px solid rgba(0, 4, 39, .08);
    margin-bottom: 0;
}

.cphx-order-summary .cphx-os-step:last-child {
    border-bottom: 0;
}

.cphx-order-summary .cphx-os-step>.card-header {
    background: var(--white);
    border-bottom: 1px solid rgba(0, 4, 39, .08);
}

.cphx-order-summary .cphx-os-step>.card-header a {
    position: relative;
    padding-right: 44px;
    text-decoration: none;
    width: 100%;
}

.cphx-order-summary .cphx-os-step>.card-header h4 {
    font-weight: 600;
    color: var(--primary);
    margin: 0;
    line-height: 1.35;
}

.cphx-order-summary .c-order-step-header a:after,
.cphx-order-summary .c-order-step-header a.collapsed:after {
    content: "\f068";
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    color: var(--primary);
    font-family: FontAwesome;
    font-size: 14px;
    font-weight: 400;
    text-align: center;
    transition: background var(--cphx-transition), color var(--cphx-transition), border-color var(--cphx-transition);
}

.cphx-order-summary .c-order-step-header a.collapsed:after {
    content: "\f067";
}

/* Compass JS adds transformrotate on <a>; prefer CSS chevron over legacy arrow img */
.cphx-order-summary .c-order-step-header a img {
    display: none;
}

.cphx-order-summary .cphx-os-dt-wrap {
    padding: 0;
}

.cphx-order-summary .cphx-os-invite-note {
    line-height: 1.55;
    color: rgba(0, 4, 39, .78);
    margin-bottom: 1rem;
}

.cphx-order-summary .cphx-os-address-card {
    border: 1px solid rgba(0, 4, 39, .12);
    border-radius: var(--cphx-radius);
    overflow: hidden;
    height: 100%;
}

.cphx-order-summary .dilveryAddrssSetids {
    margin-bottom: 1rem;
}

.cphx-order-summary .cphx-os-address-card .changeShippingClass {
    margin-top: 0.35rem;
}

.cphx-order-summary .cphx-os-address-title {
    background: var(--primary);
    color: var(--white);
    font-weight: 600;
}

.cphx-order-summary .cphx-os-detail-row {
    display: flex;
    flex-wrap: wrap;
    gap: 6px 12px;
}

.cphx-order-summary .cphx-os-detail-label {
    font-weight: 600;
    color: var(--primary);
    margin: 0;
}

.cphx-order-summary .cphx-os-total {
    font-weight: 600;
    color: var(--dark);
}

.cphx-order-summary table.cphx-responsive-dt tbody td .form-control {
    min-width: 200px;
    max-width: 100%;
}

.cphx-order-summary .c-drug-label,
.cphx-order-summary .c-international-label {
    display: inline-block;
    margin: 2px 0;
}

/* Script-via radios: same size always; error only changes border color */
.cphx-order-summary #step_data_2 .custom-control.custom-radio {
    align-items: flex-start;
    margin-bottom: 0.75rem;
}

.cphx-order-summary .sendscriptvia-radio {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    width: 18px;
    height: 18px;
    min-width: 18px;
    min-height: 18px;
    border: 1px solid rgba(0, 4, 39, .35);
    border-radius: 50%;
    margin: 3px 8px 0 0 !important;
    flex-shrink: 0;
    outline: none !important;
    box-shadow: none !important;
    position: relative;
    background: #fff;
    cursor: pointer;
    vertical-align: top;
}

.cphx-order-summary .sendscriptvia-radio:checked::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 10px;
    height: 10px;
    margin: -5px 0 0 -5px;
    background: var(--primary);
    border-radius: 50%;
}

.cphx-order-summary .sendscriptvia-radio.outline-red {
    border-color: #bb0000 !important;
    outline: none !important;
    box-shadow: none !important;
}

.cphx-order-summary .sendscriptvia-radio.outline-red:checked::before {
    background: #bb0000;
}

.cphx-order-summary #step_data_2 .custom-control-label {
    line-height: 1.45;
    padding-top: 1px;
}

select.select-card {
    background-size: 38px !important;
    background-repeat: no-repeat !important;
    background-position: 7px 7px !important;
    padding-left: 55px !important;
}

select[data-type="American_Express"] {
    background-image: url("../../images/cards/american-exp.webp") !important;
}

select[data-type="Discover"] {
    background-image: url("../../images/cards/discover.webp") !important;
}

select[data-type="Visa"] {
    background-image: url("../../images/cards/visa.webp") !important;
}

select[data-type="MasterCard"] {
    background-image: url("../../images/cards/master-card.webp") !important;
}

select[data-type="Unknown"] {
    background-image: url("../../images/cards/default.webp") !important;
}

/* ============================================================
   MY CARD PAGE (.cphx-my-card)
   ============================================================ */
.cphx-my-card .cphx-mc-section-title {
    font-weight: 600;
    color: var(--dark);
    line-height: 1.4;
}

.cphx-my-card .cphx-mc-note {
    line-height: 1.55;
    color: rgba(0, 4, 39, .78);
    margin-bottom: 1rem;
}

.cphx-my-card .cphx-mc-summary {
    border-top: 4px solid var(--primary);
}

.cphx-mc-plan-block {
    border: 1px solid rgba(0, 4, 39, .12);
    border-radius: var(--cphx-radius);
    background: var(--white);
    transition: box-shadow var(--cphx-transition), transform var(--cphx-transition);
}

.cphx-my-card .cphx-mc-detail-row {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 8px 16px;
    padding: 12px 0;
    border-bottom: 1px solid rgba(0, 4, 39, .08);
}

.cphx-my-card .cphx-mc-detail-row:last-child {
    border-bottom: none;
}

.cphx-my-card .cphx-mc-detail-label {
    font-weight: 600;
    color: var(--primary);
    flex: 0 0 auto;
}

.cphx-my-card .cphx-mc-detail-value {
    text-align: left;
    flex: 1 1 50%;
    word-break: break-word;
}

.cphx-my-card .cphx-mc-plan-header {
    padding-bottom: 12px;
    border-bottom: 1px solid rgba(0, 4, 39, .08);
}

.cphx-my-card .cphx-mc-plan-logo {
    max-height: 48px;
    width: auto;
}

.cphx-my-card .cphx-mc-plan-title {
    font-weight: 600;
    color: var(--dark);
}

.cphx-my-card .cphx-mc-empty {
    font-weight: 600;
    color: rgba(0, 4, 39, .75);
}

.cphx-my-card .cphx-mc-empty-cell {
    padding: 1.5rem !important;
}

.cphx-my-card .cphx-mc-pharmacy-modal .cphx-mc-pharmacy-detail-row {
    display: flex;
    flex-wrap: wrap;
    gap: 6px 12px;
    padding: 10px 0;
    border-bottom: 1px solid rgba(0, 4, 39, .08);
}

.cphx-my-card .cphx-mc-pharmacy-modal .cphx-mc-pharmacy-detail-row:last-child {
    border-bottom: none;
}

.cphx-my-card .cphx-mc-pharmacy-modal .cphx-mc-pharmacy-detail-label {
    font-weight: 600;
    color: var(--primary);
    flex: 0 0 38%;
    max-width: 38%;
}

/* ============================================================
   INSULIN PROGRAM (.cphx-insulin-program)
   ============================================================ */
.cphx-insulin-program .cphx-page-hero h1 {
    font-weight: 500;
    line-height: 1.35;
    margin-left: auto;
    margin-right: auto;
}

.cphx-insulin-program .cphx-insulin-carousel .owl-carousel .item img {
    width: 100%;
    height: auto;
    border-radius: var(--cphx-radius);
    box-shadow: var(--cphx-shadow);
}

.cphx-insulin-program .insulin-carousel .owl-nav {
    display: block;
}

.cphx-insulin-program .insulin-carousel .owl-nav button.owl-prev,
.cphx-insulin-program .insulin-carousel .owl-nav button.owl-next {
    position: absolute;
    top: 45%;
    transform: translateY(-50%);
    z-index: 2;
    width: 40px;
    height: 40px;
    margin: 0;
    padding: 0;
    border: 1px solid var(--primary);
    border-radius: 50%;
    background: var(--white) !important;
    color: var(--primary) !important;
    box-shadow: var(--cphx-shadow);
    font-size: 24px;
    opacity: .95;
    transition: background-color var(--cphx-transition), color var(--cphx-transition), opacity var(--cphx-transition);
}

.cphx-insulin-program .insulin-carousel .owl-nav button.owl-prev {
    left: -24px;
}

.cphx-insulin-program .insulin-carousel .owl-nav button.owl-next {
    right: -24px;
}

.cphx-insulin-program .insulin-carousel .owl-nav button.owl-prev:hover,
.cphx-insulin-program .insulin-carousel .owl-nav button.owl-next:hover,
.cphx-insulin-program .insulin-carousel .owl-nav button.owl-prev:focus,
.cphx-insulin-program .insulin-carousel .owl-nav button.owl-next:focus {
    background: var(--primary) !important;
    color: var(--white) !important;
    opacity: 1;
    outline: none;
}

.cphx-insulin-program .insulin-carousel .owl-nav button span {
    display: block;
    line-height: inherit;
}

.cphx-insulin-program .insulin-carousel .owl-dots button.owl-dot {
    background: rgba(0, 4, 39, .18);
}

.cphx-insulin-program .insulin-carousel .owl-dots button.owl-dot.active {
    background-color: var(--primary);
}

.cphx-insulin-program .cphx-insulin-product {
    min-height: 187px;
    height: 187px;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    border: 1px solid rgba(0, 4, 39, .12);
    border-radius: var(--cphx-radius);
    overflow: hidden;
    box-shadow: var(--cphx-shadow);
    transition: transform var(--cphx-transition), box-shadow var(--cphx-transition);
}

.cphx-insulin-program .cphx-insulin-product:hover {
    transform: translateY(-4px);
    box-shadow: var(--cphx-shadow-hover);
}

.cphx-insulin-program .cphx-insulin-product h2 {
    margin-top: 0;
    line-height: 1.25;
}

.cphx-insulin-program .btn-insulin {
    border-radius: var(--cphx-radius-sm);
    font-weight: 600;
    letter-spacing: .3px;
    transition: filter var(--cphx-transition), background-color var(--cphx-transition);
}

.cphx-insulin-program .cphx-insulin-product .btn-insulin {
    background: var(--cphx-gradient);
    border: none;
}

.cphx-insulin-program .cphx-insulin-product .btn-insulin:hover,
.cphx-insulin-program .cphx-insulin-product .btn-insulin:focus {
    filter: brightness(1.06);
    color: var(--white);
    background: var(--cphx-gradient);
    border: none;
}

.cphx-insulin-program .cphx-insulin-product .btn-insulin[disabled] {
    opacity: .65;
    cursor: not-allowed;
    filter: none;
}

.cphx-insulin-program .insulin-items-row {
    justify-content: center;
    gap: 1rem;
}

.cphx-insulin-program .insulin-item {
    width: 180px;
    height: 180px;
    border: 1px solid rgba(0, 4, 39, .14);
    box-shadow: var(--cphx-shadow);
    margin-right: 0;
    background: var(--white);
    transition: transform var(--cphx-transition), box-shadow var(--cphx-transition);
}

.cphx-insulin-program .insulin-item:hover {
    transform: translateY(-4px);
    box-shadow: var(--cphx-shadow-hover);
}

.cphx-insulin-program .cphx-insulin-about .cphx-info-card {
    border-radius: var(--cphx-radius);
    border-top: 4px solid var(--primary);
    box-shadow: var(--cphx-shadow);
}

.cphx-insulin-program .cphx-insulin-about .cphx-info-card h2 {
    font-weight: 600;
    line-height: 1.35;
    color: var(--dark);
}

.cphx-insulin-program .cphx-insulin-about .cphx-info-card p {
    line-height: 1.65;
    margin-bottom: 0.85rem;
}

.cphx-insulin-program .cphx-insulin-about .btn-insulin {
    background: var(--cphx-gradient);
    border: none;
}

.cphx-insulin-program .cphx-insulin-about .btn-insulin:hover,
.cphx-insulin-program .cphx-insulin-about .btn-insulin:focus {
    filter: brightness(1.06);
    color: var(--white);
    background: var(--cphx-gradient);
    border: none;
}

.cphx-insulin-program .insulin-box {
    border-radius: var(--cphx-radius);
    box-shadow: var(--cphx-shadow);
    border: 1px solid rgba(0, 4, 39, .06);
    height: 100%;
}

.cphx-insulin-program .insulin-box-content h4 {
    font-weight: 600;
    color: var(--dark);
    margin-bottom: 0.5rem;
}

.cphx-insulin-program .insulin-box-content p {
    line-height: 1.55;
    color: var(--body);
}

.cphx-insulin-program .insulin-testimonial-name h5 {
    font-weight: 500;
    margin: 0.75rem 0 0;
    color: var(--white);
}

.cphx-insulin-program .insulin-testimonial .insulin-box:after {
    border-top-color: var(--white);
}

/* ============================================================
   WEIGHT LOSS PROGRAM (.cphx-weight-loss)
   ============================================================ */
.cphx-weight-loss .cphx-weight-loss-hero {
    padding: 20px 0;
    background: linear-gradient(135deg, var(--offwhite) 0%, var(--white) 100%);
}

.cphx-weight-loss .cphx-weight-loss-intro h2 {
    color: var(--dark);
    font-weight: 600;
    line-height: 1.3;
    margin-top: 0;
}

.cphx-weight-loss .cphx-weight-loss-intro h5 {
    color: var(--primary);
    font-weight: 500;
    line-height: 1.4;
}

.cphx-weight-loss .cphx-weight-loss-intro ul {
    padding-left: 22px;
    margin-bottom: 24px;
}

.cphx-weight-loss .cphx-weight-loss-intro li {
    color: var(--body);
    line-height: 1.6;
    margin-bottom: 8px;
}

.cphx-weight-loss .cphx-weight-loss-option {
    padding: 18px 20px;
    margin-bottom: 14px;
    background: var(--white);
    border: 1px solid rgba(0, 4, 39, .08);
    border-left: 4px solid var(--primary);
    border-radius: var(--cphx-radius);
    box-shadow: var(--cphx-shadow);
}

.cphx-weight-loss .cphx-weight-loss-option .madication-btn-list {
    gap: 15px;
}

.cphx-weight-loss .cphx-weight-loss-option h4 {
    color: var(--dark);
    font-weight: 600;
    line-height: 1.4;
    margin-top: 0 !important;
}

.cphx-weight-loss .cphx-weight-loss-option .btn {
    padding: 11px 20px;
    margin: 5px 8px 5px 0;
    border: none;
    border-radius: var(--cphx-radius-sm);
    background: var(--cphx-gradient);
    font-weight: 600;
    transition: filter var(--cphx-transition), transform var(--cphx-transition);
}

.cphx-weight-loss .cphx-weight-loss-option .btn:hover,
.cphx-weight-loss .cphx-weight-loss-option .btn:focus {
    color: var(--white);
    filter: brightness(1.06);
    transform: translateY(-1px);
}

.cphx-weight-loss .cphx-weight-loss-image img {
    display: block;
    width: 100%;
    height: auto;
    margin-left: 0 !important;
}

.cphx-weight-loss .cphx-weight-loss-faq-section {
    max-width: 970px;
}

.cphx-weight-loss .glp-program-faq .faq-title {
    margin-bottom: 20px;
    display: block;
}

.cphx-weight-loss .glp-program-faq .faq-title h2 {
    color: var(--dark);
    margin: 0px;
}

.cphx-weight-loss .glp-program-faq .panel {
    overflow: hidden;
    margin-bottom: 12px;
    border: 1px solid rgba(0, 4, 39, .10);
    border-radius: var(--cphx-radius-sm);
    box-shadow: 0 3px 12px rgba(0, 4, 39, .06);
}

.cphx-weight-loss .glp-program-faq .panel-heading {
    padding: 0;
    border: 0;
    background: var(--white);
}

.cphx-weight-loss .glp-program-faq .panel-title>a {
    position: relative;
    display: block;
    padding: 16px 48px 16px 18px;
    color: var(--dark);
    font-size: var(--cphx-fs-h4);
    font-weight: 500;
    line-height: 1.45;
    text-decoration: none;
}

.cphx-weight-loss .glp-program-faq .panel-title>a::before {
    content: "\f068";
    position: absolute;
    top: 50%;
    right: 18px;
    transform: translateY(-50%);
    color: var(--primary);
    font-family: FontAwesome;
    font-size: 18px;
}

.cphx-weight-loss .glp-program-faq .panel-title>a.collapsed::before {
    content: "\f067";
}

.cphx-weight-loss .glp-program-faq .panel-title>a:hover,
.cphx-weight-loss .glp-program-faq .panel-title>a:focus {
    color: var(--primary) !important;
    background: var(--offwhite);
}

.cphx-weight-loss .glp-program-faq .panel-body {
    padding: 18px;
    color: var(--body);
    line-height: 1.65;
    border-top: 1px solid rgba(0, 4, 39, .08) !important;
    background: var(--white);
}

/* ============================================================
   COMMON MODAL (.cphx-modal)
   Use on any Bootstrap modal root for shared header/body look
   ============================================================ */
.cphx-modal .modal-content {
    overflow: hidden;
    border: 0;
    border-radius: var(--cphx-radius);
    box-shadow: var(--cphx-shadow-hover);
}

.cphx-modal .modal-header {
    position: relative;
    padding: 18px 22px;
    border-bottom: 1px solid rgba(0, 4, 39, .08);
    background: var(--offwhite);
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.cphx-modal .modal-header .close {
    position: relative;
    line-height: 1;
    z-index: 2;
    margin: 0;
    padding: 0;
    opacity: 1;
    color: var(--dark);
    font-size: 28px;
    font-weight: 400;
    text-shadow: none;
}

.cphx-modal .modal-header::after,
.cphx-modal .modal-header::before {
    content: none;
}

.cphx-modal .modal-header .close:hover,
.cphx-modal .modal-header .close:focus {
    opacity: 1;
    background: var(--offwhite);
    color: var(--primary);
    outline: none;
}

.cphx-modal .modal-header .close span {
    display: block;
    line-height: 32px;
}

.cphx-modal .modal-title {
    margin: 0;
    padding-right: 8px;
    color: var(--dark);
    font-weight: 600;
    line-height: 1.35;
}

.cphx-modal .modal-body {
    padding: 22px;
    overflow-y: auto;
    scrollbar-width: none;
    /* max-height: calc(100vh - 130px); */
    max-height: 85vh;
}

.cphx-modal .modal-footer {
    padding: 14px 22px 22px;
    border-top: 0;
}

.cphx-modal .form-group {
    margin-bottom: 0;
}

.cphx-modal .form-group.mb-3 {
    margin-bottom: 1rem !important;
}

.cphx-modal .cphx-modal-note {
    margin: 0;
    line-height: 1.55;
    color: rgba(0, 4, 39, .78);
}

.cphx-modal .cphx-modal-section {
    margin-bottom: 18px;
}

.cphx-modal .cphx-modal-actions {
    margin-left: 0;
    margin-right: 0;
    margin-top: 8px;
    margin-bottom: 0;
    align-items: center;
}

.cphx-modal .cphx-modal-actions .btn,
.cphx-modal .cphx-modal-actions input.btn {
    margin-top: 8px;
}

.modal-xl {
    width: 90%;
    max-width: 1200px;
}

/* Field labels inside shared modals */
.cphx-modal .cphx-field-label:not(.d-flex) {
    display: block;
    font-weight: 400;
    color: var(--dark);
    margin-bottom: 6px;
    text-align: left;
}

/* Auth login / create-password / member-login modal tabs */
.cphx-auth-modal .cphx-auth-modal-heading {
    margin: 0 0 10px;
    font-weight: 600;
    color: var(--dark);
}

.cphx-auth-modal .cphx-auth-modal-desc {
    margin: 0 0 18px;
    line-height: 1.5;
    color: rgba(0, 4, 39, .78);
}

.cphx-auth-modal .rx-CompassHealth-tab .nav {
    display: flex;
    flex-direction: row;
    align-items: stretch;
    justify-content: space-between;
    list-style: none;
    padding: 0;
    margin: 0 0 8px;
    border: 1px solid rgba(0, 4, 39, .12);
    border-radius: var(--cphx-radius-sm);
    overflow: hidden;
    background: var(--offwhite);
}

.cphx-auth-modal .rx-CompassHealth-tab .nav-justified > li {
    float: none;
    flex: 1 1 33.333%;
    text-align: center;
    margin: 0;
}

.cphx-auth-modal .rx-CompassHealth-tab .nav-justified > li > a {
    margin: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    min-height: 48px;
    padding: 12px 10px;
    box-sizing: border-box;
    border-radius: 0;
    color: var(--dark);
    font-weight: 600;
    background: transparent;
}

.cphx-auth-modal .rx-CompassHealth-tab .nav-pills > li.active > a,
.cphx-auth-modal .rx-CompassHealth-tab .nav-pills > li.active > a:focus,
.cphx-auth-modal .rx-CompassHealth-tab .nav-pills > li.active > a:hover,
.cphx-auth-modal .rx-CompassHealth-tab .nav-pills > li > a.active {
    color: #fff;
    background: var(--primary, #337ab7);
}

.cphx-auth-modal .form-group.mb-3 {
    margin-bottom: 1rem !important;
}

/* App download modal (ported from style.css; style.css is not loaded) */
#appModal .app-process ul {
    margin-bottom: 0;
    padding-left: 0;
    list-style-type: none;
}

#appModal .app-process li {
    position: relative;
    z-index: 1;
    width: 25%;
    float: left;
}

#appModal .app-process ul:after {
    content: '';
    display: block;
    clear: both;
}

#appModal .app-process li:after {
    background-color: #ccc;
    content: '';
    position: absolute;
    top: 15px;
    left: 0;
    width: 100%;
    height: 2px;
    z-index: -1;
}

#appModal .app-process li:first-of-type:after {
    left: 50%;
    width: 50%;
}

#appModal .app-process li:last-of-type:after {
    width: 50%;
}

#appModal .app-process li span {
    width: 30px;
    height: 30px;
    display: block;
    margin: 0 auto;
    border-radius: 50%;
    line-height: 30px;
}

#appModal .app-process li p {
    color: grey;
    margin-top: 15px;
    font-size: 16px;
}

#appModal .modal-body button.iphone-btn,
#appModal .modal-body button.android-btn {
    border: none;
    border-radius: 17px;
    padding: 6px 20px;
    color: #fff;
}

#appModal .modal-body button.iphone-btn {
    background-image: linear-gradient(#000, #555555);
}

#appModal .modal-body button.android-btn {
    background-image: linear-gradient(#a4c639, #b5e219);
}

#appModal .modal-body button i {
    margin-right: 5px;
    font-size: 18px;
}

#appModal .modal-body button span {
    font-size: 13px;
}

@media all and (max-width: 767px) {
    #appModal .app-process li span {
        font-size: 12px;
    }

    #appModal .app-process li p {
        font-size: 10px;
    }

    #appModal .app-modal-row {
        flex-flow: column;
    }

    #appModal .app-modal-content {
        order: 2;
    }

    #appModal .app-modal-img {
        order: 1;
    }
    
    .cphx-auth-modal .rx-CompassHealth-tab .nav{
        flex-direction: column;
    }

    .cphx-auth-modal .rx-CompassHealth-tab .nav-justified > li{
        width: 100%;
    }
}

/* Medications zip + dependant modal */
.cphx-med-zip-modal .cphx-field-label {
    display: block;
    font-weight: 400;
    color: var(--dark);
    margin-bottom: 6px;
}

.cphx-med-zip-modal .form-group {
    margin-bottom: 12px;
}

.cphx-med-zip-modal .modal-footer .btn {
    min-width: 110px;
}

/* Weight-loss modal form specifics */
.cphx-weight-loss-modal .cphx-hw-section-title {
    margin-bottom: 12px;
}

.cphx-hw-section .cphx-hw-height {
    margin-bottom: 8px;
}

.cphx-weight-loss-modal .cphx-hw-fields {
    display: flex;
    gap: 8px;
}

.cphx-weight-loss-modal .cphx-hw-fields>[class*="col-"] {
    padding-left: 6px;
    padding-right: 6px;
}

.cphx-weight-loss-modal .feet-error,
.cphx-weight-loss-modal .inches-error,
.cphx-weight-loss-modal .weight-error {
    min-height: 18px;
    margin-top: 4px;
    font-size: 13px;
}

.cphx-weight-loss-modal .radio-gender,
.cphx-weight-loss-modal .checckbox-following {
    padding: 12px;
    border-radius: var(--cphx-radius-sm);
    background: var(--offwhite);
}

.cphx-weight-loss-modal .radio-gender .custom-control {
    margin-bottom: 0;
    padding-left: 0 !important;
    display: flex;
    align-items: center;
    gap: 6px;
}

.cphx-weight-loss-modal .radio-gender .custom-control-label {
    font-weight: 400;
    line-height: 1.4;
    margin-bottom: 0;
}

.cphx-weight-loss-modal .checckbox label {
    display: flex;
    align-items: center;
    gap: 8px;
    line-height: 1.4;
    font-weight: 400;
}

.cphx-weight-loss-modal .checckbox {
    margin-bottom: 8px;
}

.cphx-weight-loss-modal #glp1-Qualifying {
    padding-top: 16px;
    margin-top: 8px;
}

.cphx-weight-loss-modal .note-box {
    margin-top: 12px;
    padding: 10px 12px;
    border-radius: var(--cphx-radius-sm);
    background: var(--offwhite);
}

.cphx-weight-loss-modal .note-box p {
    margin: 0;
    line-height: 1.5;
}

/* ============================================================
   PURCHASE HISTORY (.cphx-purchase-history)
   ============================================================ */
.cphx-purchase-history {
    background: var(--offwhite);
}

.cphx-purchase-history .purchase-history-pagination:empty {
    display: none;
}

.cphx-purchase-history .purchase-history-pagination {
    margin-top: 2rem;
    margin-bottom: 1rem;
    text-align: center;
}

.cphx-purchase-history .purchase-history-pager {
    display: inline-flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 0.5rem;
    max-width: 100%;
}

.cphx-purchase-history .purchase-history-pager .ph-pager-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 0.5rem 1rem;
    border-radius: var(--cphx-radius-sm);
    text-decoration: none !important;
    font-size: var(--cphx-fs-body2);
    font-weight: 600;
    line-height: 1.2;
    white-space: nowrap;
    vertical-align: middle;
    transition: background-color var(--cphx-transition), border-color var(--cphx-transition), color var(--cphx-transition), box-shadow var(--cphx-transition), filter var(--cphx-transition);
}

.cphx-purchase-history .purchase-history-pager .ph-pager-btn.is-gray {
    color: var(--dark) !important;
    background: var(--offwhite);
    border: 1px solid rgba(0, 4, 39, .12);
}

.cphx-purchase-history .purchase-history-pager .ph-pager-btn.is-gray:hover,
.cphx-purchase-history .purchase-history-pager .ph-pager-btn.is-gray:focus {
    color: var(--primary) !important;
    border-color: rgba(0, 131, 60, .35);
    box-shadow: 0 0 0 3px rgba(118, 189, 29, .12);
}

.cphx-purchase-history .purchase-history-pager .ph-pager-btn.is-active {
    min-width: 38px;
    padding-left: 0.85rem;
    padding-right: 0.85rem;
    color: var(--white) !important;
    background: var(--primary);
    border: none;
    box-shadow: 0 4px 12px rgba(0, 4, 39, .15);
    cursor: default;
}

.cphx-purchase-history .purchase-history-pager .ph-pager-btn.is-next {
    color: var(--white) !important;
    background: var(--primary);
    border: none;
}

.cphx-purchase-history .purchase-history-pager .ph-pager-btn.is-next:hover,
.cphx-purchase-history .purchase-history-pager .ph-pager-btn.is-next:focus {
    filter: brightness(1.06);
    color: var(--white) !important;
}

.cphx-purchase-history .purchase-history-pager .ph-pager-btn.is-disabled {
    color: rgba(0, 4, 39, .45) !important;
    background: var(--offwhite);
    border: 1px solid rgba(0, 4, 39, .08);
    opacity: 1;
    cursor: not-allowed;
    pointer-events: none;
}

.cphx-purchase-history .purchase-history-pager .ph-pager-ellipsis {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 28px;
    min-height: 44px;
    padding: 0 0.25rem;
    color: var(--body);
    font-weight: 600;
    line-height: 1;
}

.cphx-purchase-history .purchase-history-pager .ph-pager-btn.ph-pager-icon {
    min-width: 44px;
    padding-left: 0.65rem;
    padding-right: 0.65rem;
}

.cphx-purchase-history .purchase-history-pager .ph-pager-btn.ph-pager-icon i {
    font-size: 18px;
    line-height: 1;
}

.cphx-purchase-history .purchase-history-loader img {
    width: 48px;
    height: 48px;
}

.cphx-purchase-history .cphx-ph-order-wrap {
    margin-bottom: 2rem;
    border-radius: var(--cphx-radius);
    overflow: hidden;
    box-shadow: var(--cphx-shadow);
    border-top: 4px solid var(--primary);
    background: var(--white);
}

.cphx-purchase-history .cphx-ph-table {
    margin-bottom: 0;
    border: 0 !important;
}

.cphx-purchase-history .cphx-ph-thead td {
    vertical-align: top;
    padding: 16px 12px !important;
    border-bottom: 1px solid rgba(0, 4, 39, .08) !important;
    line-height: 1.5;
}

.cphx-purchase-history .cphx-ph-table tbody tr.history-info td {
    vertical-align: top;
    padding: 16px 12px !important;
    border-top: 1px solid rgba(0, 4, 39, .06) !important;
    line-height: 1.55;
    white-space: normal !important;
}

.cphx-purchase-history .cphx-ph-table tbody tr.history-action td {
    padding: 14px 12px !important;
    border-top: 1px solid rgba(0, 4, 39, .08) !important;
}

.cphx-purchase-history .cphx-ph-table tbody tr.history-action .btn {
    margin-bottom: 0.5rem;
}

.cphx-purchase-history .cphx-ph-empty {
    padding: 2rem 1rem;
    color: var(--body);
}

.cphx-purchase-history .cphx-search-band .medication-form {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

.cphx-purchase-history .cphx-ph-pharmacy-modal span {
    color: var(--body);
    line-height: 1.5;
}

/* ============================================================
   MEDICATIONS PAGE (.cphx-medications)
   ============================================================ */
.cphx-medications .cphx-page-hero h1 {
    font-weight: 500;
    line-height: 1.35;
    margin-left: auto;
    margin-right: auto;
}

.cphx-medications .cphx-search-band .medication-form {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

.cphx-medications .cphx-med-atoz {
    box-shadow: 0 4px 16px rgba(0, 4, 39, .12);
}

.cphx-medications #view_atoz {
    gap: 4px;
}

.cphx-medications .view_alphabets {
    margin: 2px;
}

.cphx-medications .view_alphabets a {
    display: block;
    padding: 10px 14px !important;
    border-radius: var(--cphx-radius-sm);
    font-weight: 600;
    line-height: 1.2;
    text-decoration: none;
    transition: background-color var(--cphx-transition), color var(--cphx-transition), transform var(--cphx-transition);
}

.cphx-medications .view_alphabets a:hover,
.cphx-medications .view_alphabets a:focus {
    background-color: var(--secondary);
    color: var(--white);
    transform: translateY(-1px);
}

.cphx-medications .view_alphabets.active a {
    background-color: var(--white);
    color: var(--primary);
    box-shadow: var(--cphx-shadow);
}

.cphx-medications .cphx-med-results {
    min-height: 280px;
}

.cphx-medications .flash {
    color: var(--dark);
    font-weight: 500;
}

.cphx-medications #pageData .s-med-purchase-inner,
.cphx-medications .s-med-list-ul .s-med-purchase-inner {
    flex: 0 0 100%;
    width: 100%;
    margin-top: 1.5rem !important;
    margin-bottom: 1rem !important;
    border-radius: var(--cphx-radius-sm);
    border-left: 4px solid var(--primary);
    box-shadow: var(--cphx-shadow);
    color: var(--dark);
    font-weight: 600;
    font-size: var(--cphx-fs-h5);
}

.cphx-medications #pageData ul#list_array,
.cphx-medications .s-med-list-ul {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -8px;
}

.cphx-medications #pageData ul#list_array li,
.cphx-medications .s-med-list-ul li {
    width: 33.33%;
    padding: 0 8px;
    margin-bottom: 10px !important;
}

.cphx-medications #pageData ul#list_array li a,
.cphx-medications .s-med-list-ul li a {
    display: block;
    padding: 12px 14px;
    border: 1px solid rgba(0, 4, 39, .08);
    border-radius: var(--cphx-radius-sm);
    background: var(--white);
    color: var(--dark);
    line-height: 1.35;
    text-decoration: none;
    transition: border-color var(--cphx-transition), box-shadow var(--cphx-transition), color var(--cphx-transition), transform var(--cphx-transition);
}

.cphx-medications #pageData ul#list_array li a:hover,
.cphx-medications #pageData ul#list_array li a:focus,
.cphx-medications .s-med-list-ul li a:hover,
.cphx-medications .s-med-list-ul li a:focus {
    color: var(--primary);
    border-color: rgba(118, 189, 29, .45);
    box-shadow: var(--cphx-shadow);
    transform: translateY(-2px);
    text-decoration: none;
}

.cphx-medications #pageData .text-primary2 {
    padding: 24px;
    border-radius: var(--cphx-radius);
    background: var(--offwhite);
}

.cart-lowest-retail-lable .c-radio-btn {
    margin-top: 5px !important;
}

/* ============================================================
   MEDICATION REMINDER LIST (.cphx-medication-reminder)
   ============================================================ */
.cphx-medication-reminder .cphx-mr-table {
    width: 100%;
    margin-bottom: 0;
}

.cphx-info-card.cphx-medication-reminder-info-card {
    box-shadow: var(--cphx-shadow);
}

.cphx-medication-reminder .cphx-mr-table thead th {
    background: var(--offwhite);
    color: var(--primary);
    font-weight: 600;
    vertical-align: middle;
    border-bottom: 1px solid rgba(0, 4, 39, .1);
    white-space: nowrap;
    padding: 14px 12px;
}

.cphx-medication-reminder .cphx-mr-table tbody td {
    color: var(--body);
    padding: 14px 12px;
    border-top: 1px solid rgba(0, 4, 39, .08);
    word-break: break-word;
}

.cphx-medication-reminder .cphx-mr-table .s-am-drug-name {
    font-weight: 600;
    color: var(--dark);
}

.cphx-medication-reminder .cphx-mr-actions {
    min-width: 120px;
}

.cphx-medication-reminder .cphx-mr-actions .btn {
    white-space: nowrap;
}

.cphx-medication-reminder .cphx-mr-empty p {
    color: var(--body);
    line-height: 1.65;
}

.cphx-medication-reminder .cphx-search-band .medication-form {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

/* ============================================================
   MEDICATIONS DETAILS (.cphx-medications-details)
   ============================================================ */
.cphx-medications-details .cphx-search-band .medication-form {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

.cphx-medications-details .cphx-md-filter {
    border-bottom: 1px solid rgba(0, 4, 39, .08);
    box-shadow: 0 4px 12px rgba(0, 4, 39, .04);
    position: sticky;
    top: 0;
    z-index: 15;
}

.cphx-medications-details .cphx-md-filter #MedicineKeyword {
    color: var(--dark);
    font-weight: 600;
    line-height: 1.3;
    word-break: break-word;
}

.cphx-medications-details .cphx-md-filter #GenericDrugName {
    font-size: 0.95rem;
    line-height: 1.4;
    word-break: break-word;
}

.cphx-medications-details .cphx-md-offers-heading {
    color: var(--body);
    line-height: 1.6;
    max-width: 860px;
    margin-left: auto;
    margin-right: auto;
}

.cphx-medications-details .cphx-md-howto .cphx-info-card {
    box-shadow: var(--cphx-shadow);
    overflow: hidden;
}

.cphx-medications-details .cphx-md-howto ol {
    padding-left: 1.25rem;
    color: var(--body);
    line-height: 1.55;
}

.cphx-medications-details .cphx-md-howto .btn {
    white-space: normal;
    line-height: 1.4;
}

.cphx-medications-details #drug_box_ajax .c-diabetic-card {
    border-radius: var(--cphx-radius);
    overflow: hidden;
    border: 1px solid rgba(0, 4, 39, .06);
    display: flex;
    flex-direction: column;
}

.cphx-medications-details #drug_box_ajax .c-card-header {
    font-weight: 600;
    line-height: 1.35;
}

.cphx-medications-details #drug_box_ajax .medication-info .custom-control,
.cphx-medications-details #drug_box_ajax .medication-info .custom-control-label,
.cphx-medications-details #drug_box_ajax .medication-info label {
    word-break: break-word;
    white-space: normal;
}

.cphx-medications-details #drug_box_ajax .medication-info {
    min-height: 250px;
    height: auto !important;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    flex-grow: 1;
}

.medication-info .medication-price-box {
    margin: 0;
}

.cphx-medications-details #drug_box_ajax .meds__details--pricebox--btn {
    white-space: normal;
    line-height: 1.35;
    max-width: 100%;
}

.cphx-medications-details .ValidPrescription.text-danger1 {
    font-weight: 600;
}

.cphx-medications-details .not-active {
    pointer-events: none;
    cursor: default;
    text-decoration: none;
    color: black;
}

.cphx-medications-details .med-modal-tab-content {
    border: 1px solid rgba(0, 4, 39, .12);
    border-top: none;
    padding: 16px;
    border-radius: 0 0 var(--cphx-radius-sm) var(--cphx-radius-sm);
}

.cphx-medications-details .pap-modal-nav {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 0;
    padding-left: 0;
    list-style: none;
}

.cphx-medications-details .pap-modal-nav-item {
    flex: 1 1 25%;
    min-width: 0;
    text-align: center;
    margin-bottom: -1px;
}

.cphx-medications-details .pap-modal-nav-item>a {
    display: block;
    padding: 10px 6px;
    font-size: 14px;
    line-height: 1.35;
    word-break: break-word;
    white-space: normal;
    margin-right: 0;
    border-radius: 0;
}

.cphx-medications-details .pap-modal-nav-item.active {
    border: 1px solid #ddd;
    border-bottom-color: transparent;
}

.cphx-medications-details .med-comparing-price,
.cphx-medications-details #myPAPModel .modal-content>.d-flex h4,
.cphx-medications-details #myIPPModel .modal-content>.d-flex h4 {
    word-break: break-word;
    line-height: 1.35;
}

.cphx-medications-details .c-row>[class*="col-"] {
    padding-left: 15px;
    padding-right: 15px;
}

.cphx-medications-details .med-pharmacy-table td {
    vertical-align: middle;
    word-break: break-word;
}

.cphx-medications-details .med-pharmacy-table .med-pharmacy-name {
    width: 22%;
}

.cphx-medications-details .med-pharmacy-table .med-pharmacy-price {
    width: 22%;
}

.cphx-medications-details .med-pharmacy-table .med-pharmacy-action {
    width: 18%;
    white-space: nowrap;
}

.cphx-medications-details #myPAPModel select,
.cphx-medications-details #myIPPModel select,
.cphx-medications-details #myPAPModel input[type="text"],
.cphx-medications-details #myPAPModel input[type="email"],
.cphx-medications-details #myIPPModel input[type="text"],
.cphx-medications-details #myIPPModel input[type="email"] {
    min-height: 42px;
    border-radius: var(--cphx-radius-sm);
    border: 1px solid rgba(0, 4, 39, .18);
    padding: 8px 12px;
    background: var(--white);
    color: var(--body);
}

.cphx-medications-details #myPAPModel .med-modal-actions .btn,
.cphx-medications-details #myIPPModel .med-modal-actions .btn {
    border-radius: var(--cphx-radius-sm);
}

.cphx-medications-details #select_medicine .form-control,
.cphx-medications-details #PAP_program_form .form-control {
    width: 100%;
    min-height: 44px;
    margin: 0;
}

.cphx-medications-details #PAP_program_form .cphx-pap-error {
    font-size: 15px;
    color: #bb0000;
    text-align: center;
    font-weight: 700;
    min-height: 1.2em;
}

.cphx-medications-details #PAP_program_form .custom-control.custom-checkbox {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    padding-left: 0 !important;
}

.cphx-medications-details #PAP_program_form .custom-control-label {
    font-weight: 400;
    color: var(--body);
    line-height: 1.45;
}

.cphx-medications-details #select_medicine .cphx-ipp-pricing:not(:empty) {
    padding: 16px;
    margin-bottom: 16px;
    border: 1px solid rgba(0, 4, 39, .1);
    border-radius: var(--cphx-radius-sm);
    background: var(--offwhite);
}

.cphx-medications-details #select_medicine .cphx-ipp-note {
    margin: 0 0 8px;
    padding: 12px 14px;
    border-left: 4px solid var(--danger);
    border-radius: var(--cphx-radius-sm);
    background: rgba(187, 0, 0, .06);
    font-size: 15px;
    line-height: 1.5;
}

.cphx-medications-details #select_medicine .cphx-ipp-thanks {
    padding: 14px 16px;
    border-radius: var(--cphx-radius-sm);
    background: var(--offwhite);
    color: var(--body);
    line-height: 1.55;
}

/* Red outline when ADD TO CART / PRE-PAY clicked without selecting a radio */
input[type="radio"].radio-outline-red {
    border: 1px solid #bb0000 !important;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    width: 13px;
    height: 13px;
    border-radius: 50%;
    outline: none;
}

input[type="radio"].radio-outline-red:checked::before {
    content: "";
    width: 10px;
    height: 10px;
    background: #bb0000;
    border-radius: 50%;
}

input[type="radio"].outline-red.sendscriptvia-radio {
    border: 1px solid #bb0000 !important;
    outline: none !important;
    box-shadow: none !important;
}

input[type=checkbox],
input[type=radio] {
    margin: 0 5px 0 0 !important;
}

.medication-info .custom-control.custom-radio {
    flex-wrap: wrap;
}

.custom-control.custom-radio {
    position: relative;
    display: flex;
    gap: 5px;
    /* flex-wrap: wrap; */
    justify-content: center;
    padding-left: 0 !important;
}

/* ============================================================
   PHARMACY DETAILS (.cphx-pharmacy-details)
   ============================================================ */
.cphx-pharmacy-details .cphx-page-hero h1 {
    font-weight: 500;
    line-height: 1.35;
}

.cphx-pharmacy-details .c-pharmacy-card-box {
    box-shadow: var(--cphx-shadow);
    border-radius: var(--cphx-radius);
    border: 1px solid rgba(0, 4, 39, .08);
}

.cphx-pharmacy-details .cphx-pd-panel {
    height: 100%;
}

.cphx-pharmacy-details .c-pharmacy-card-header,
.cphx-pharmacy-details .c-pharmacy-header {
    border-radius: var(--cphx-radius-sm) var(--cphx-radius-sm) 0 0;
    min-width: 100%;
    width: 100%;
    clip-path: none;
    font-weight: 600;
    letter-spacing: .3px;
}

.cphx-pharmacy-details .c-pharmacy-content,
.cphx-pharmacy-details .c-pharmacy-content-secondary {
    background-color: var(--white);
    border: 1px solid rgba(0, 4, 39, .12);
    border-top: none;
    border-radius: 0 0 var(--cphx-radius-sm) var(--cphx-radius-sm);
    min-height: 100%;
}

.cphx-pharmacy-details #phamacyDetailsFocus .c-pharmacy-content {
    border-color: rgba(118, 189, 29, .45);
    border-top: none;
}

.cphx-pharmacy-details .cphx-pd-field {
    margin: 0 0 0.75rem;
    color: var(--body);
    line-height: 1.45;
    font-weight: 500;
}

.cphx-pharmacy-details .cphx-pd-field .text-primary {
    font-weight: 600;
}

.cphx-pharmacy-details .cphx-pd-copy {
    margin: 0 0 1rem;
    line-height: 1.65;
}

.cphx-pharmacy-details .cphx-pd-notice {
    margin-top: 1rem;
    line-height: 1.5;
}

.cphx-pharmacy-details .cphx-pd-estimate {
    font-weight: 600;
    margin-bottom: 1.25rem;
}

.cphx-pharmacy-details .cphx-pd-label {
    font-weight: 600;
    color: var(--primary) !important;
}

.cphx-pharmacy-details .cphx-pd-detail-row span {
    display: inline-block;
    padding-top: 2px;
    line-height: 1.45;
    word-break: break-word;
}

.cphx-pharmacy-details .cphx-pd-actions .btn {
    white-space: normal;
    line-height: 1.35;
}

/* ============================================================
   GLP MEDICATION LISTS
   (.cphx-semaglutide-medications, .cphx-tirzepatide-medications)
   ============================================================ */
.cphx-glp-medications .cphx-page-hero h1 {
    font-weight: 500;
    line-height: 1.35;
    margin-left: auto;
    margin-right: auto;
}

.cphx-glp-medications .glpmadication-title {
    padding: 0;
}

.cphx-glp-medications .cphx-glp-subtitle {
    color: var(--body);
    font-size: 1.15rem;
    line-height: 1.55;
    max-width: 760px;
    margin-left: auto;
    margin-right: auto;
}

.cphx-glp-medications .glpmadication-main {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: 20px;
    width: 100%;
    max-width: 100%;
    inline-size: auto;
    margin: 0 0 1.5rem;
    justify-content: stretch;
}

.cphx-glp-medications .glpmadication-list,
.cphx-glp-medications .cphx-glp-card {
    margin-bottom: 0;
    border-radius: var(--cphx-radius);
    overflow: hidden;
    box-shadow: var(--cphx-shadow);
    height: 100%;
    transition: transform var(--cphx-transition), box-shadow var(--cphx-transition);
}

.cphx-glp-medications .glpmadication-list {
    display: flex;
    flex-direction: column;
}

.cphx-glp-medications .cphx-glp-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 10px 24px rgba(0, 4, 39, .16);
}

.cphx-glp-medications .cphx-glp-card-link {
    display: flex;
    flex-direction: column;
    text-decoration: none;
    color: inherit;
}

.cphx-glp-medications .glpmadication-list img {
    border-radius: 0;
    height: 200px;
    padding: 16px;
    background: rgba(255, 255, 255, .08);
    transition: transform var(--cphx-transition);
}

.cphx-glp-medications .glpmadication-list img:hover {
    transform: scale(1.06);
}

.cphx-glp-medications .glpmadication-info {
    display: flex;
    flex-direction: column;
    flex: 1;
    padding: 16px;
}

.cphx-glp-medications .glpmadication-info .glpmadication-info-title {
    min-height: 0;
    flex: 1;
    margin-bottom: 12px;
}

.cphx-glp-medications .glpmadication-info h3 {
    line-height: 1.35;
    margin-bottom: 10px;
    word-break: break-word;
}

.cphx-glp-medications .glpmadication-info ul {
    margin: 0 0 0 1rem;
    padding: 0;
}

.cphx-glp-medications .glpmadication-info ul li {
    margin-bottom: 4px;
    line-height: 1.45;
}

.cphx-glp-medications .cphx-glp-price-btn {
    margin-top: auto;
    font-weight: 600;
    border-radius: var(--cphx-radius-sm);
    white-space: normal;
    line-height: 1.35;
    background-color: var(--white);
    color: var(--primary);
    padding: 12px 24px;
}

.cphx-glp-medications .cphx-glp-disclaimer {
    color: var(--body);
    line-height: 1.5;
}

.cphx-glp-medications .note-box {
    border: 1px solid rgba(0, 4, 39, .12);
    border-left: 4px solid var(--primary);
    padding: 16px 18px;
    border-radius: var(--cphx-radius-sm);
    background: var(--white);
    box-shadow: var(--cphx-shadow);
}

.cphx-glp-medications .note-box p {
    color: var(--body);
    line-height: 1.65;
    text-align: left;
}

/* ============================================================
   VIRTIACARE TELEMEDICINE (.cphx-virtiacare)
   ============================================================ */
.cphx-virtiacare .cphx-page-hero h1 {
    font-weight: 500;
    line-height: 1.35;
}

.cphx-virtiacare a:hover {
    text-decoration: none !important;
}

.cphx-virtiacare .cphx-vc-copy {
    color: var(--body);
    line-height: 1.65;
    margin-bottom: 0;
}

.cphx-virtiacare .cphx-vc-accept-label {
    font-weight: 600;
    color: var(--dark);
    margin-right: 12px;
}

.cphx-virtiacare .cphx-vc-card-imgs .c-card-imgs {
    height: 28px;
    width: auto;
}

.cphx-virtiacare .cphx-vc-card-select {
    padding-left: 52px !important;
    min-height: 48px;
}

.cphx-virtiacare .cphx-vc-card-panel {
    border-radius: var(--cphx-radius-sm);
    overflow: hidden;
    border: 1px solid rgba(0, 4, 39, .08);
    box-shadow: var(--cphx-shadow);
}

.cphx-virtiacare .cphx-vc-card-panel h4 {
    border-radius: 0;
}

.cphx-virtiacare .cphx-vc-field {
    margin: 0 0 0.85rem;
    line-height: 1.45;
}

.cphx-virtiacare .cphx-vc-new-card {
    border-radius: var(--cphx-radius-sm);
    border: 1px solid rgba(0, 4, 39, .08);
}

.cphx-virtiacare .cphx-vc-card-type .custom-control {
    padding-left: 0 !important;
    display: flex;
    align-items: center;
    gap: 6px;
    margin-bottom: 0;
}

.cphx-virtiacare .cphx-vc-hint {
    color: var(--body);
    line-height: 1.45;
}

.cphx-virtiacare .cphx-vc-wallet {
    padding: 12px 14px;
    border-radius: var(--cphx-radius-sm);
    background: var(--offwhite);
    border: 1px solid rgba(0, 4, 39, .08);
    display: flex;
    align-items: flex-start;
    gap: 8px;
    padding-left: 14px !important;
}

.cphx-virtiacare .cphx-vc-wallet .custom-control-label {
    font-weight: 500;
    line-height: 1.45;
}

.cphx-virtiacare .cphx-vc-totals {
    border-top: 1px solid rgba(0, 4, 39, .1);
}

.cphx-virtiacare .cphx-vc-totals h3,
.cphx-virtiacare .cphx-vc-totals h4 {
    line-height: 1.4;
}

.cphx-virtiacare .order_process_btn {
    max-width: 420px;
}

/* ============================================================
   GLP MEDICATION DETAILS
   (.cphx-semaglutide-medication-details, .cphx-tirzepatide-medication-details)
   ============================================================ */
.cphx-glp-medication-details .cphx-md-filter {
    border-bottom: 1px solid rgba(0, 4, 39, .08);
    box-shadow: 0 4px 12px rgba(0, 4, 39, .04);
    position: sticky;
    top: 70px;
    z-index: 1000;
}

.cphx-glp-medication-details .cphx-md-filter h3[id^="MedicineKeyword"] {
    color: var(--dark);
    font-weight: 600;
    line-height: 1.3;
    word-break: break-word;
}

.cphx-glp-medication-details .cphx-md-filter h5[id^="GenericDrugName"] {
    font-size: 0.95rem;
    line-height: 1.4;
    word-break: break-word;
}

.cphx-glp-medication-details .cphx-glp-detail-offers {
    min-height: 220px;
}

.cphx-glp-medication-details [id^="drug-box-ajax-"] .c-diabetic-card {
    border-radius: var(--cphx-radius);
    overflow: hidden;
    box-shadow: var(--cphx-shadow);
    border: 1px solid rgba(0, 4, 39, .06);
}

.cphx-glp-medication-details [id^="drug-box-ajax-"] .c-card-header {
    font-weight: 600;
    line-height: 1.35;
}

.cphx-glp-medication-details [id^="drug-box-ajax-"] .medication-info,
.cphx-glp-medication-details [id^="drug-box-ajax-"] .medication-info label,
.cphx-glp-medication-details [id^="drug-box-ajax-"] .custom-control-label {
    word-break: break-word;
    white-space: normal;
}

.cphx-glp-medication-details [id^="drug-box-ajax-"] .meds__details--pricebox--btn {
    white-space: normal;
    line-height: 1.35;
    max-width: 100%;
}

.cphx-glp-medication-details #PrefilledSyringesHide .note-box {
    border: 1px solid rgba(0, 4, 39, .12);
    border-left: 4px solid var(--primary);
    padding: 16px 18px;
    border-radius: var(--cphx-radius-sm);
    background: var(--white);
    box-shadow: var(--cphx-shadow);
    color: var(--body);
    line-height: 1.65;
    margin: 0;
}

.cphx-glp-medication-details #PrefilledSyringesHide .note-box a {
    font-weight: 600;
    color: var(--primary);
}

.alert-dismissable .close,
.alert-dismissible .close {
    top: 0;
    right: 0;
    font-size: 24px;
}

/* ============================================================
   Media queries (collected at end of file)
   Same breakpoint merged into one block; later sources win via order.
   ============================================================ */

@media(min-width: 1400px) {
    .container {
        width: 1370px;
    }
}

@media(min-width: 1200px) {
    .container {
        width: 1270px;
    }
}

@media(min-width: 576px) {
    .modal-dialog-centered::before {
        height: calc(100% - 60px);
        height: -webkit-min-content;
        height: -moz-min-content;
        height: min-content;
    }
}

@media(max-width: 1500px) {

    #s-user-services img,
    #s-cart-nav img {
        height: 24px;
    }
}

@media(max-width: 1199.98px) {}

@media(min-width: 1200px) {
    #nav_menu1 {
        display: none;
    }

    .navbar-collapse .navbar-nav>li>a::after {
        content: "";
        position: absolute;
        left: 12px;
        right: 12px;
        bottom: 10px;
        height: 2px;
        background: var(--cphx-gradient);
        transform: scaleX(0);
        transform-origin: left;
        transition: transform var(--cphx-transition);
    }

    .navbar-collapse .navbar-nav>li>a:hover::after,
    .navbar-collapse .navbar-nav>li.active>a::after {
        transform: scaleX(1);
    }

    .s-top-nav .dropdown:hover>.dropdown-menu,
    .s-top-main .navbar-nav>li.dropdown:hover>.dropdown-menu {
        display: block;
    }

    /* Neutralize the click-opened sticky state so behaviour is hover-only */
    .s-top-nav .dropdown.open>.dropdown-menu,
    .s-top-main .navbar-nav>li.dropdown.open>.dropdown-menu {
        display: none;
    }

    .s-top-nav .dropdown.open:hover>.dropdown-menu,
    .s-top-main .navbar-nav>li.dropdown.open:hover>.dropdown-menu {
        display: block;
    }

    /* Remove hover gap so the menu stays open while moving the cursor */
    .s-top-main .navbar-nav>li.dropdown>.dropdown-menu {
        margin-top: 0;
    }
}

@media(max-width: 1199px) {
    body {
        padding-top: 65px;
    }

    .navbar-toggle {
        display: block;
        float: left;
        /* padding: 12px 15px; */
        margin: 0 5px 0 0;
    }

    .navbar-toggle .icon-bar {
        background-color: var(--secondary);
    }

    .navbar-nav li a {
        padding: 15px 25px;

    }

    .navbar-collapse.collapsing {
        position: absolute !important;
        top: 100% !important;
        left: 0 !important;
        right: 0 !important;
        width: inherit !important;
        background-color: white !important;
    }

    .navbar-collapse.collapse {
        display: none !important;
        height: auto !important;
        padding-bottom: 0;
        overflow: visible !important;
    }

    .navbar-collapse.collapse.in {
        display: block !important;
        -webkit-transition: all 0.3s ease;
        -moz-transition: all 0.3s ease;
        -ms-transition: all 0.3s ease;
        transition: all 0.3s ease;
    }

    .navbar-collapse .navbar-nav {
        float: none !important;
        margin: 0 auto;
        /* border-bottom: 6px solid var(--secondary); */
    }

    .navbar-collapse .navbar-nav>li {
        float: none;
    }

    .navbar-collapse .navbar-nav li a {
        padding: 2px 12px;
        line-height: 2;
        width: max-content;
    }

    .navbar-collapse .cart,
    .navbar-collapse .user-acct {
        display: none;
    }

    .nav .open>a,
    .nav .open>a:focus,
    .nav .open>a:hover {
        background-color: inherit;
        border-color: inherit;
    }

    #nav_menu1.navbar-nav {
        margin: 0 -15px;
    }

    div.medication-form {
        width: 100%;
        margin-left: auto;
        margin-right: auto;
        padding: 2em 1em !important;
    }

    body {
        padding-top: 98px;
    }

    .s-top-nav {
        display: block;
        padding: 4px 0;
        border-bottom: 1px solid rgba(0, 0, 0, 0.06);
    }

    .s-top-nav .d-none.d-lg-inline-block.cphx-top-nav-item {
        display: none !important;
    }

    .s-top-nav .dropdown-menu>li>a.text-body,
    .s-top-main .dropdown-menu>li>a.text-body {
        padding: 5px 20px;
    }
}

@media(min-width: 992px) {
    .meds__detail--name--box {
        position: sticky;
        top: 0px;
        z-index: 4;
        box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.2);
    }
}

@media(min-width: 768px) and(max-width: 991px) {

    .program-wrapper,
    .process-wrapper,
    .diabetic-row,
    .features-row,
    .medication-box {
        grid-template-columns: repeat(auto-fill, minmax(46%, 1fr));
    }

    ul#list_array li {
        width: 50%;
    }
}

@media(max-width: 991px) {

    .promotional,
    .download-app {
        padding-top: 3rem;
    }

    .promotional .row,
    .download-app .row {
        -webkit-flex-direction: column;
        flex-direction: column;
        text-align: center;
    }

    .promotional .promotional-img img {
        clip-path: none;
    }

    .diabetic-img {
        margin: 0 auto;
    }

    #PAP_program_form .nav-tabs.nav-justified>li a {
        padding: 12px 0px;

    }

    .best-option {
        padding: 5px 20px 5px 5px;
        top: -20px;

        height: 20px;
    }

    .best-option:after {
        border-width: 10px;
    }

    #scroll {
        right: 15px;
        bottom: 70px;
        width: 30px;
        height: 30px;
    }

    #scroll i {
        line-height: 30px;

    }

    .s-top-nav-right {
        justify-content: flex-end !important;
    }

    .cphx-top-nav-item.d-none.d-md-inline-block {
        display: none !important;
    }

    .cphx-home .promotional-content {
        padding-left: 1.5rem;
        padding-right: 1.5rem;
    }

    .cphx-customer-support .mb-md-0 {
        margin-bottom: 1.5rem !important;
    }

    .cphx-contact-us .cphx-contact-hero-phone a {
        font-size: 1.5rem;
    }

    .cphx-contact-us .col-md-6 .cphx-info-card:last-child {
        margin-bottom: 0;
    }

    .cphx-update-profile .cphx-profile-card {
        margin-bottom: 1.5rem;
    }

    table.cphx-responsive-dt>tbody>tr.child span.dtr-title {
        /* flex: 0 0 38%; */
        /* max-width: 38%; */
    }

    .cphx-responsive-dt-wrap .dt-paging {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        gap: 4px;
    }

    .cphx-physician-search-modal .cphx-physician-modal-dialog {
        /* width: calc(100% - 16px); */
        max-width: none;
        margin: 8px auto;
    }

    .cphx-physician-search-modal .cphx-physician-modal-body {
        max-height: calc(100vh - 80px);
        padding: 12px 14px 16px;
    }

    .cphx-order-summary #step_data_5 .row.d-flex {
        flex-direction: column-reverse;
    }

    .cphx-my-card .cphx-mc-detail-row {
        flex-direction: column;
        align-items: stretch;
    }

    .cphx-my-card .cphx-mc-detail-value {
        text-align: left;
    }

    .cphx-insulin-program .cphx-insulin-product {
        min-height: 170px;
        height: 170px;
    }

    .cphx-medications #pageData ul#list_array li,
    .cphx-medications .s-med-list-ul li {
        width: 50%;
    }

    .cphx-medication-reminder .cphx-mr-table-wrap {
        overflow: visible;
    }

    .cphx-medication-reminder .cphx-mr-table,
    .cphx-medication-reminder .cphx-mr-table thead,
    .cphx-medication-reminder .cphx-mr-table tbody,
    .cphx-medication-reminder .cphx-mr-table th,
    .cphx-medication-reminder .cphx-mr-table td,
    .cphx-medication-reminder .cphx-mr-table tr {
        display: block;
        width: 100%;
    }

    .cphx-medication-reminder .cphx-mr-table thead {
        display: none;
    }

    .cphx-medication-reminder .cphx-mr-table tbody tr {
        margin: 0;
        padding: 16px;
        border-bottom: 1px solid rgba(0, 4, 39, .1);
        background: var(--white);
    }

    .cphx-medication-reminder .cphx-mr-table tbody tr:nth-child(even) {
        background: var(--offwhite);
    }

    .cphx-medication-reminder .cphx-mr-table tbody td {
        display: flex;
        align-items: flex-start;
        justify-content: space-between;
        gap: 5px;
        border: none;
        padding: 8px 0;
        text-align: right !important;
        white-space: normal !important;
    }

    .cphx-medication-reminder .cphx-mr-table tbody td::before {
        content: attr(data-label);
        flex: 0 0 42%;
        max-width: 42%;
        font-weight: 600;
        color: var(--primary);
        text-align: left;
    }

    .cphx-medication-reminder .cphx-mr-actions {
        display: flex;
        flex-wrap: wrap;
        gap: 10px;
    }

    .cphx-medication-reminder .cphx-mr-actions .btn {
        width: 100%;
    }

    .cphx-medications-details .med-pharmacy-table .med-pharmacy-action .btn {
        white-space: normal;
        font-size: 12px;
        padding: 6px 8px;
    }

    .cphx-medications-details #drug_box_ajax .medication-info {
        min-height: auto;
    }

    .cphx-glp-medications .glpmadication-main {
        grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
        gap: 16px;
    }

    .cphx-virtiacare .cphx-vc-totals .row.d-flex {
        flex-direction: column-reverse;
    }

    .cphx-virtiacare .captchaorder1,
    .cphx-virtiacare .captchaorder2 {
        width: 100%;
        text-align: center !important;
    }

    .cphx-virtiacare .captchaorder1 .g-recaptcha {
        display: inline-block;
    }
}

@media (min-width: 500px) and (max-width: 768px) {
    .bg-primary1.bg-dark-md {
        background-color: var(--primary3) !important;
    }

    .bg-primary3.bg-dark-md {
        background-color: var(--primary1);
    }
}

@media(max-width: 767px) {
    body {
        padding-top: 50px;
    }

    .s-top-main .container:before,
    .s-top-main .container:after {
        display: none;
    }

    .s-top-main #nav_menu1 {
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
    }

    /* .s-top-main #nav_menu1.nav>li {
		position: inherit;
	} */

    .s-top-main .navbar-nav #mobile_drop_down_menu.dropdown-menu {
        position: absolute;
        right: 0;
        left: auto;
        min-width: 320px;
        background-color: #fff;
        -webkit-border-radius: 0;
        -moz-border-radius: 0;
        border-radius: 0;
        border-bottom: 6px solid var(--secondary);
    }

    .navbar-toggle {
        padding: 7px;
    }

    /* .navbar-header .navbar-brand {
		height: 30px;
	} */

    #nav_menu1 li a {
        padding: 5px 10px;

    }

    /* 
	#ajax_search {
		top: calc(100% - 20px);
	} */

    .program-wrapper,
    .process-wrapper,
    .diabetic-row,
    .features-row,
    .medication-box,
    .delivery-type-row {
        grid-template-columns: repeat(auto-fill, minmax(98%, 1fr));
    }

    .process-wrapper img {
        width: 75px;
    }

    .s-faq-green-div {
        top: 60px;
    }

    .user-testimonial {
        -webkit-flex-direction: column;
        flex-direction: column;
    }

    .s-rx-user {
        width: 75px;
        height: 75px;
    }

    .s-rx-content {
        width: 100%;
        margin-top: 1rem;
        order: 2;
    }

    ul#list_array li {
        width: 100%;
    }

    #membersDetailsShow .btns-row {
        text-align: center !important;
    }

    .form-inline #promocode {
        margin-bottom: 1rem;
    }

    .main-footer {
        text-align: center;
    }

    .main-footer h4 {
        display: none;
    }

    .main-footer .d-flex {
        justify-content: center;
    }

    .main-footer ul {
        display: inline-flex;
    }

    .main-footer li {
        padding: 0 6px;
    }

    .c-pharmacy-card-header,
    .c-pharmacy-header {
        width: 100%;
        min-width: 100%;
        border-radius: 8px 8px 0 0;
        clip-path: none;
    }

    .s-top-nav {
        padding: 3px 0;
    }

    .s-top-nav-right {
        gap: 0.25rem 0.5rem;
    }

    .s-top-nav .cphx-lang-menu {
        right: 0;
        left: auto;
    }

    .medication-form {
        width: 100% !important;
    }

    .main-footer ul li a:hover {
        transform: none;
    }

    .main-footer h4::after {
        left: 50%;
        transform: translateX(-50%);
    }

    .navbar-collapse .navbar-nav>li>a {
        font-size: 14px;
    }

    .cphx-home-delivery .cphx-info-card:hover,
    .cphx-pharmacist-support .cphx-info-card:hover,
    .cphx-customer-support .cphx-info-card:hover {
        transform: none;
    }

    /* .cphx-home-delivery .cphx-page-hero h1,
    .cphx-pharmacist-support .cphx-page-hero h1,
    .cphx-customer-support .cphx-page-hero h1,
    .cphx-contact-us .cphx-page-hero h1,
    .cphx-unsubscribe .cphx-page-hero h1,
    .cphx-password-action .cphx-page-hero h1,
    .cphx-med-reminder-set .cphx-page-hero h1,
    .cphx-medication-reminder .cphx-page-hero h1,
    .cphx-member-login .cphx-page-hero h1,
    .cphx-set-password .cphx-page-hero h1,
    .cphx-verify-account .cphx-page-hero h1,
    .cphx-view-receipt .cphx-page-hero h1,
    .cphx-invite-user .cphx-page-hero h1,
    .cphx-term-of-use .cphx-page-hero h1,
    .cphx-privacy-policy .cphx-page-hero h1,
    .cphx-order-process .cphx-page-hero h1,
    .cphx-update-profile .cphx-page-hero h1,
    .cphx-my-card .cphx-page-hero h1,
    .cphx-purchase-history .cphx-page-hero h1,
    .cphx-cart .cphx-page-hero h1,
    .cphx-medications .cphx-page-hero h1 {
        font-size: 2.5rem;
    } */

    .cphx-insulin-program .cphx-insulin-about .cphx-info-card h2 {
        font-size: 2.3rem;
    }

    .cphx-home-delivery .cphx-info-card h3 {
        font-size: 1.8rem;
    }

    .cphx-home-delivery .cphx-info-card h4 {
        font-size: 1.5rem;
    }

    .cphx-term-of-use .cphx-legal-content,
    .cphx-privacy-policy .cphx-legal-content {
        padding: 16px !important;
    }

    .cphx-term-of-use .cphx-legal-content>center>p.trajan:first-child,
    .cphx-privacy-policy .cphx-legal-content>p:first-of-type {
        padding: 12px;
    }

    .cphx-update-profile .cphx-page-hero h3 {
        font-size: 1.35rem;
        padding-left: 12px;
        padding-right: 12px;
    }

    .cphx-update-profile .m-4 {
        margin: 0.75rem !important;
    }

    .cphx-med-reminder-times .form-group {
        min-width: 100%;
    }

    .cphx-cart .cphx-cart-qty {
        max-width: 100%;
    }

    .cphx-cart #OrderProcess,
    .cphx-cart .text-right.mt-3 {
        text-align: center !important;
    }

    .cphx-cart #OrderProcess .btn,
    .cphx-cart .text-right.mt-3 .btn {
        width: 100%;
        max-width: 320px;
    }

    .cphx-order-process .cphx-op-actions .btn {
        width: 100%;
        max-width: 320px;
    }

    .cphx-order-summary .cphx-os-invite .form-inline {
        flex-direction: column;
        align-items: stretch !important;
    }

    .cphx-order-summary .cphx-os-invite .form-control,
    .cphx-order-summary .cphx-os-invite .btn {
        width: 100%;
        margin-right: 0 !important;
    }

    .cphx-order-summary .text-right .btn.custom-btn {
        width: 100%;
    }

    /* .cphx-insulin-program .cphx-page-hero h1 {
        font-size: 2rem;
    } */

    .cphx-insulin-program .insulin-item {
        width: 140px;
        height: 140px;
    }

    .cphx-insulin-program .cphx-insulin-product:hover,
    .cphx-insulin-program .insulin-item:hover {
        transform: none;
    }

    .cphx-insulin-program .insulin-carousel .owl-nav button.owl-prev,
    .cphx-insulin-program .insulin-carousel .owl-nav button.owl-next {
        width: 30px;
        height: 30px;
        font-size: 22px;
        line-height: 0;
        top: 40%;
    }

    .cphx-insulin-program .insulin-carousel .owl-nav button.owl-prev {
        left: -20px;
    }

    .cphx-insulin-program .insulin-carousel .owl-nav button.owl-next {
        right: -20px;
    }

    .cphx-modal .cphx-modal-actions .text-right {
        text-align: left;
    }

    .cphx-modal .cphx-modal-actions .btn,
    .cphx-modal .cphx-modal-actions input.btn {
        width: 100%;
        margin-right: 0 !important;
    }

    .cphx-weight-loss .cphx-weight-loss-hero {
        padding: 15px 0;
    }

    .cphx-weight-loss .cphx-weight-loss-intro {
        margin-top: 0 !important;
    }

    .cphx-weight-loss .cphx-weight-loss-image {
        padding-top: 20px !important;
    }

    .cphx-weight-loss .cphx-weight-loss-option .btn {
        display: block;
        width: 100%;
        margin-right: 0;
    }

    .cphx-weight-loss .glp-program-faq .panel-title>a {
        padding: 14px 42px 14px 14px;
    }

    .cphx-modal .modal-body {
        padding: 16px;
    }

    .cphx-modal .modal-header .close {
        width: 40px;
        height: 40px;
        font-size: 30px;
        line-height: 36px;
    }

    .cphx-modal .modal-header .close span {
        line-height: 36px;
    }

    .cphx-modal .cphx-modal-actions .text-right {
        text-align: left;
    }

    .cphx-weight-loss-modal .cphx-hw-weight {
        margin-top: 12px;
    }

    .cphx-purchase-history .cphx-ph-thead,
    .cphx-purchase-history .cphx-ph-thead tr,
    .cphx-purchase-history .cphx-ph-thead td {
        display: block;
        width: 100% !important;
    }

    .cphx-purchase-history .cphx-ph-thead td {
        border-bottom: none !important;
        padding-bottom: 8px !important;
    }

    .cphx-purchase-history .cphx-ph-thead td+td {
        padding-top: 0 !important;
    }

    .cphx-purchase-history .cphx-ph-table tbody tr.history-info,
    .cphx-purchase-history .cphx-ph-table tbody tr.history-action {
        display: block;
        width: 100%;
    }

    .cphx-purchase-history .cphx-ph-table tbody tr.history-info td,
    .cphx-purchase-history .cphx-ph-table tbody tr.history-action td {
        display: block;
        width: 100% !important;
    }

    .cphx-purchase-history .cphx-ph-table tbody tr.history-action td {
        text-align: left !important;
    }

    .cphx-purchase-history .cphx-ph-table tbody tr.history-action .btn {
        display: inline-block;
        width: auto;
        margin-right: 0.5rem;
        margin-left: 0 !important;
    }

    .cphx-medications .view_alphabets a {
        padding: 8px 10px !important;
        font-size: 13px;
    }

    .cphx-medications #pageData ul#list_array li,
    .cphx-medications .s-med-list-ul li {
        width: 100%;
    }

    .cphx-medications #pageData ul#list_array li a:hover,
    .cphx-medications .s-med-list-ul li a:hover {
        transform: none;
    }

    .cphx-medications-details .cphx-md-filter #MedicineKeyword {
        font-size: 1.5rem;
    }

    .cphx-medications-details .pap-modal-nav-item {
        flex: 1 1 50%;
    }

    .cphx-medications-details .pap-modal-nav-item>a {
        font-size: 12px;
        padding: 8px 4px;
    }

    .cphx-medications-details #myPAPModel .modal-dialog,
    .cphx-medications-details #myIPPModel .modal-dialog,
    .cphx-medications-details #MyAddToCartDiscountCardModel .modal-dialog,
    .cphx-medications-details #MyGetDiscountCardModel .modal-dialog,
    .cphx-medications-details #rvpModal .modal-dialog,
    .cphx-medications-details #diabeticModal .modal-dialog {
        margin: 10px;
        width: auto;
    }

    .cphx-medications-details #myPAPModel .modal-body,
    .cphx-medications-details #myIPPModel .modal-body,
    .cphx-medications-details #MyAddToCartDiscountCardModel .modal-body {
        max-height: calc(100vh - 130px);
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
    }

    .cphx-medications-details .med-modal-actions .btn {
        float: none !important;
        display: block;
        width: 100%;
        margin: 0 0 10px 0 !important;
    }

    .cphx-medications-details .med-modal-actions.text-right .btn:last-child,
    .cphx-medications-details .med-modal-actions .btn:last-child {
        margin-bottom: 0 !important;
    }

    .cphx-medications-details .meds__detail--name--box .row>[class*="col-"] {
        margin-bottom: 12px;
    }

    .cphx-medications-details .c-row .bg-primary2.btn {
        font-size: 12px;
        padding-left: 10px;
        padding-right: 10px;
    }

    /* .cphx-pharmacy-details .cphx-page-hero h1 {
        font-size: 2rem;
    } */

    .cphx-pharmacy-details .cphx-pd-detail-row {
        padding-bottom: 8px;
        border-bottom: 1px solid rgba(0, 4, 39, .08);
        margin-bottom: 10px !important;
    }

    .cphx-pharmacy-details .cphx-pd-detail-row:last-child {
        border-bottom: none;
        margin-bottom: 0 !important;
    }

    /* .cphx-glp-medications .cphx-page-hero h1 {
        font-size: 2rem;
    } */

    .cphx-glp-medications .cphx-glp-subtitle {
        font-size: 1rem;
    }

    .cphx-glp-medications .glpmadication-main {
        grid-template-columns: 1fr;
    }

    .cphx-glp-medications .cphx-glp-card:hover {
        transform: none;
    }

    /* .cphx-virtiacare .cphx-page-hero h1 {
        font-size: 2rem;
    } */

    .cphx-virtiacare .order_process_btn {
        max-width: 100%;
    }

    .cphx-glp-medication-details .meds__detail--name--box .row>[class*="col-"] {
        margin-bottom: 12px;
    }

    .cphx-glp-medication-details .cphx-md-filter h3[id^="MedicineKeyword"] {
        font-size: 1.5rem;
    }

    .cphx-modal .modal-header {
        padding: 10px 15px;
    }

    .c-cart-img,
    #s-user-services img {
        height: 24px !important;
    }

    .cphx-weight-loss .cphx-weight-loss-option {
        padding: 10px;
    }

    .btn.custom-btn {
        padding: 10px 24px;
    }
}

@media(max-width: 460px) {
    .c-body-margin {
        margin-top: 10px !important;
    }
}

@media only screen and(max-device-width: 1600px) {
    .madication-btn-list {
        flex-wrap: wrap;
    }

    .d-flex-mobile {
        flex-wrap: wrap;
    }

    .glpmadication-info .glpmadication-info-title {
        min-height: 215px;
    }
}

@media only screen and(max-device-width: 1400px) {
    .glpmadication-main {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media only screen and(max-device-width: 991px) {
    .madication-btn-list {
        flex-wrap: wrap;
    }

    .d-flex-mobile {
        flex-wrap: wrap !important;
    }

    .mb-30px {
        margin-bottom: 15px;
    }

    .glp-info h3 {

        font-weight: 600;
    }

    .glp-info h5 {

        font-weight: 600;
    }

    .faq-title h4 {
        margin: 0;

    }

    .glpmadication-main {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media(max-width: 1440px) {
    .sub-menu-inner {
        width: 200px;
    }
}

@media(max-width: 1024px) {
    .sub-menu-inner {
        width: fit-content;
        left: 100%;
    }

    .container {
        width: 100%;
    }

    .cart {
        height: 65px;
        width: 60px !important;
        position: relative;
    }

    .user-acct {
        height: 65px;
        width: 65px;
        position: relative;
    }

    .cart a,
    .user-acct #s-user-services {
        position: absolute !important;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        padding: 15px !important;
        width: 100%;
        height: 100%;
    }

    .c-cart-img,
    #s-user-services img {
        width: 100% !important;
        height: 30px !important;
        display: block;
    }

    .badge-label .label {
        top: -6px !important;
        display: flex;

        align-items: center;
        justify-content: center;
    }

    .badge-label {
        width: 100% !important;
    }

    .navbar-fixed-bottom .navbar-collapse,
    .navbar-fixed-top .navbar-collapse {
        min-height: unset;
        max-height: unset;
    }

    .navbar-right .dropdown-menu {
        right: auto;
        left: 100px;
    }

    .navbar-nav>li>a {
        padding: 7px 10px !important;
    }

    .navbar-toggle {
        padding: 12px 0px 12px 0px;
    }
}

@media(max-width: 768px) {
    .cart {
        width: 65px !important;
    }

    .badge-label .label {
        width: 15px;
        height: 15px;
    }

    .navbar-nav .open .dropdown-menu {
        position: absolute;
        left: 45px;
        z-index: 1000;
        float: left;
        min-width: 160px;
        padding: 5px 0;
        margin: 2px 0 0;

        text-align: left;
        list-style: none;
        background-color: #fff;
        background-clip: padding-box;
        border: 1px solid #ccc;
        border: 1px solid rgba(0, 0, 0, .15);
        border-radius: 4px;
        box-shadow: 0 6px 12px rgba(0, 0, 0, .175);
    }

    /* .navbar-nav .open .dropdown-menu.insulin-program-menu{
		display: none !important;
	} */
}

@media(max-width: 500px) {
    .sub-menu-inner {
        left: 0;
        top: 50px;
    }

    .madication-btn-list {
        gap: 25px;
    }

    .glpmadication-main {
        inline-size: unset;
    }

    .custom-alert {
        width: 300px;
    }

    .sm-none {
        display: none;
    }

    .gap-sm-15 {
        gap: 15px;
    }

    body {
        padding-top: 100px;
    }
}

@media(max-width: 576px) {
    .glpmadication-main {
        grid-template-columns: 1fr;
        /* 1 column on mobile */
    }

    .glpmadication-info .glpmadication-info-title {
        min-height: auto;
        margin-bottom: 15px;
    }

    .glpmadication-list img {
        height: auto;
    }

    .diabetic-row,
    .feature-row {
        display: grid;
        grid-template-columns: repeat(auto-fill, minmax(100%, 1fr));
        grid-gap: 2rem;
    }

    .c-body-margin {
        margin-top: 80px;
    }
}

@media(min-width: 768px) {
    .c-body-margin {
        margin-top: 85px;
    }

    .navbar-nav {
        float: right !important;
    }
}

@media(min-width: 1190px) {
    .height-fix-medidetails {
        min-height: calc(100vh - 605px);
    }

    .height-fix-medireminder {
        min-height: calc(100vh - 837px);
    }

    .height-fix-enterpassword{
        min-height: calc(100vh - 448px);
    }

    .height-fix-addcart{
        min-height: calc(100vh - 836px);
    }
}

@media(min-width: 2000px) {
    body.body-es .container {
        width: 60%;
    }
}

@media(max-width: 1920px) {
    body.body-es .container {
        width: 80%;
    }
}

@media(max-width: 1600px) {
    body.body-es .container {
        width: 95%;
    }
}

@media(max-width: 1400px) {
    body.body-es .container {
        width: 100%;
    }

    .navbar-collapse .navbar-nav>li>a {
        font-size: 0.855rem;
    }
}

@media(max-width: 1200px) {
    body.body-es .container {
        width: 95%;
    }
}

@media(max-width: 575px) {
    .s-top-nav .d-none.d-sm-inline-block {
        display: none !important;
    }

    .cphx-responsive-dt-wrap .pagination-div {
        flex-direction: column;
        align-items: stretch !important;
        text-align: center;
    }

    table.cphx-responsive-dt>tbody>tr.child ul.dtr-details>li {
        flex-direction: column;
        align-items: stretch;
        gap: 4px;
    }

    table.cphx-responsive-dt>tbody>tr.child span.dtr-title,
    table.cphx-responsive-dt>tbody>tr.child span.dtr-data {
        flex: none;
        max-width: none;
        text-align: left;
    }

    .cphx-physician-search-modal .selectPhysician {
        white-space: normal;
    }

    .cphx-purchase-history .purchase-history-pager {
        width: 100%;
        padding: 10px 12px;
        gap: 0.4rem;
    }

    .cphx-purchase-history .purchase-history-pager .ph-pager-btn {
        min-height: 40px;
        padding: 0.45rem 0.75rem;
        font-size: 13px;
    }

    .cphx-medication-reminder .cphx-mr-table tbody td {
        flex-direction: column;
        align-items: stretch;
        text-align: left !important;
        white-space: normal !important;
    }

    .cphx-medication-reminder .cphx-mr-table tbody td::before {
        flex: none;
        max-width: none;
        margin-bottom: 4px;
    }
}

@media only screen and (max-width: 1199px) {
    :root {
        --cphx-fs-h1: 30px;
        --cphx-fs-h2: 24px;
        --cphx-fs-h3: 20px;
        --cphx-fs-h4: 18px;
        --cphx-fs-h5: 16px;
        --cphx-fs-h6: 15px;
    }
}

@media only screen and (max-width: 991px) {
    :root {
        --cphx-fs-body: 15px;
        --cphx-fs-h1: 28px;
        --cphx-fs-h2: 22px;
        --cphx-fs-h3: 19px;
    }
}

@media only screen and (max-width: 767px) {
    :root {
        --cphx-fs-h1: 26px;
        --cphx-fs-h2: 21px;
        --cphx-fs-h3: 18px;
        --cphx-fs-h4: 17px;
    }
}

@media only screen and (max-width: 575px) {
    :root {
        --cphx-fs-body: 15px;
        --cphx-fs-h1: 24px;
        --cphx-fs-h2: 20px;
        --cphx-fs-h3: 17px;
        --cphx-fs-h4: 16px;
        --cphx-fs-h5: 15px;
    }
}

@media only screen and(max-width: 600px) {
    .cphx-view-receipt .invoice-box {
        padding: 18px 16px;
    }

    .cphx-view-receipt .invoice-box table tr.top table td,
    .cphx-view-receipt .invoice-box table tr.information table td {
        width: 100%;
        display: block;
        text-align: center;
    }

    .cphx-view-receipt .cphx-vr-actions .btn {
        width: 100%;
        max-width: 320px;
        margin-left: auto !important;
        margin-right: auto !important;
    }
}

@media print {

    .cphx-view-receipt .cphx-page-hero,
    .cphx-view-receipt .cphx-vr-actions {
        display: none !important;
    }

    .cphx-view-receipt .invoice-box {
        box-shadow: none;
        border: 0;
        max-width: 100%;
    }
}

@media(max-width: 480px) {
    .cphx-medications-details .pap-modal-nav-item {
        flex: 1 1 100%;
    }

    .pap-modal-nav {
        border: 1px solid #ddd;
    }

    .cphx-medications-details .pap-modal-nav-item.active {
        border: none !important;
    }
}


@media(max-width: 400px) {
    body {
        padding-top: 120px;
    }
}

@media(min-width: 576px) and(max-width: 767px) {
    .cphx-glp-medications .glpmadication-main {
        grid-template-columns: repeat(2, 1fr);
    }
}

/* ============================================================
   COMPASS BRIDGE — utilities.css (page class compatibility)
   ============================================================ */
* {
    margin: unset;
    padding: unset;
    box-sizing: border-box;
}


/* ************ COLORS ************ */

body {
    margin: 0;
    display: block;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #212529;
    background-color: #fff;
    font-family: 'filson-pro', sans-serif;
    position: relative;
    min-height: 100vh;
}

#s-sect-6-div {
    bottom: 0;
    right: 0;
    left: 0;
}

.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
h1,
h2,
h3,
h4,
h5,
h6 {
    font-weight: 400;
}


.text-primary1 {
    color: #337ab7;
}

.text-primary2 {
    color: #000427;
}

.text-primary2-hov:hover {
    color: #000427;
}

.text-primary3 {
    color: #414042;
}

.text-secondary {
    color: #222222;
}

.text-rama-light {
    color: #eaf5f9;
}

.text-gray-dark {
    color: #333;
}

.text-gray {
    color: #777;
}

.text-gray-light {
    color: #a9a9a9;
}

.text-offwhite {
    color: #f5f5f5;
}

.text-offwhite2 {
    color: #f9f9f9;
}

.text-white {
    color: white;
}

.text-white-hov:hover,
.text-white-focus:focus {
    color: white;
}

.text-black {
    color: #000000;
}

.text-red {
    color: #ff0000;
}

.bg-primary1 {
    background-color: #337ab7;
}

.bg-primary1-hov:hover {
    background-color: #337ab7 !important;
    color: #337ab7;
}

.bg-primary1-dark {
    background-color: #414042;
}

.bg-primary2 {
    background-color: #414042;
}

.bg-primary3 {
    background-color: #414042;
}

.bg-primary3-hov {
    background-color: #414042 !important;
}

.bg-primary3-dark {
    background-color: rgba(0, 0, 0, 0.1);
}

.bg-offred {
    background-color: #ececec;
}

.bg-offred1 {
    background-color: #f7f7f7;
}

.bg-secondary {
    background-color: #222222;
}

.bg-gray-dark {
    background-color: #333;
}

.bg-gray {
    background-color: #777;
}

.bg-gray-light {
    background-color: #a9a9a9;
}

.bg-gray-light2 {
    background-color: #d1d1d1;
}

.bg-offwhite {
    background-color: #f2f5f9;
}

.bg-offwhite1 {
    background-color: #f1f3f5;
}

.bg-offwhite2 {
    background-color: #f7f9fa;
}

.bg-black-40 {
    background: rgba(0, 0, 0, 0.4);
}

.bg-black-50 {
    background: rgba(0, 0, 0, 0.5);
}

.bg-white-1 {
    background: rgba(255, 255, 255, 1);
}

.bg-rama-light {
    background-color: #eaf5f9;
}

.bg-gradient-primaries {
    background: linear-gradient(to left bottom, #337ab7, #414042);
}

.bg-gradient-primaries-hov:hover {
    background: linear-gradient(to right top, #337ab7, #414042);
}

.bg-white {
    background-color: white;
}

.bg-white-hov {
    background-color: white !important;
}

.bg-green {
    background-color: #55ca15;
}

.bg-red {
    background-color: #f23535 !important;
}

.bg-matt {
    background-color: #fff4b7;
}

.bg-dark-blue {
    background-color: #0077cb !important;
}

.background-image-unset {
    background-image: unset;
}

/* *********** BORDER ************* */

.brdr {
    border-width: 1px;
    border-style: solid;
}

input[type=submit],
input[type=button],
button {
    border: 1px solid transparent;
}

.brdr-left-5 {
    border-left-width: 5px;
    border-left-style: solid;
}

.border-unset {
    border: unset;
}

.brdr-top-1 {
    border-top: 1px solid #d1d1d1;
}

.brdr-primary1 {
    border-color: #337ab7;
}

.brdr-primary2 {
    border-color: #000427;
}

.brdr-primary3 {
    border-color: #414042;
}

.brdr-rama-light {
    border-color: #eaf5f9;
}

.brdr-gray-dark {
    border-color: #333;
}

.brdr-gray {
    border-color: #777;
}

.brdr-gray-light {
    border-color: #a9a9a9;
}

.focus-brdr-gray:focus {
    border-color: #777777;
}

.brdr-gray-light2 {
    border-color: #d1d1d1;
}

.brdr-offwhite1 {
    border-color: #f1f1f1;
}

.brdr-offwhite {
    border-color: #f5f5f5;
}

.brdr-offwhite2 {
    border-color: #f9f9f9;
}

.brdr-red {
    border-color: #bb0000 !important;
}

.border-gray-light {
    border: 1px solid #d1d1d1;
}

.border-bottom-gray-light {
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

.border-bottom-1px-primary2 {
    border-bottom: 1px solid rgba(0, 4, 39, 1);
}

.brdr-rad-0 {
    border-radius: 0px;
}

.brdr-rad-2 {
    border-radius: 2px;
}

.brdr-rad-4 {
    border-radius: 4px;
}

.brdr-rad-8 {
    border-radius: 8px;
}

.brdr-rad-12 {
    border-radius: 12px;
}

.brdr-rad-left-4 {
    border-top-left-radius: 4px;
    border-bottom-left-radius: 4px;
}

.brdr-rad-right-4 {
    border-top-right-radius: 4px;
    border-bottom-right-radius: 4px;
}

.brdr-rad-right-8 {
    border-top-right-radius: 8px;
    border-bottom-right-radius: 8px;
}

.brdr-rad-top-4 {
    border-top-right-radius: 4px;
    border-top-left-radius: 4px;
}

.brdr-rad-bottom-4 {
    border-bottom-right-radius: 4px;
    border-bottom-left-radius: 4px;
}

.brdr-rad-top-8 {
    border-top-right-radius: 8px;
    border-top-left-radius: 8px;
}

/* ************* LETTER SPACING ************ */
.ls-0 {
    letter-spacing: 0;
}

.ls-1 {
    letter-spacing: 1px;
}

.ls-2 {
    letter-spacing: 2px;
}

.ls-3 {
    letter-spacing: 3px;
}

/* ************ TYPOGRAPHY **************  */

.fs-p7 {
    font-size: 0.7rem;
}

.fs-p8 {
    font-size: 0.8rem;
}

.fs-p9 {
    font-size: 0.9rem;
}

.fs-1 {
    font-size: 1rem;
}

.fs-1-2 {
    font-size: 1.2rem;
}

.fs-1-4 {
    font-size: 1.4rem;
}

.fs-1-7 {
    font-size: 1.7rem;
}

.fs-2 {
    font-size: 2rem;
}

.fs-2-5 {
    font-size: 2.5rem;
}

.fs-4 {
    font-size: 4rem;
}

.fs-i {
    font-style: italic;
}

.fw-300 {
    font-weight: 300;
}

.fw-400 {
    font-weight: 400;
}

.fw-500 {
    font-weight: 500;
}

.fw-600 {
    font-weight: 600;
}

.fw-700 {
    font-weight: 700;
}

.lh-1 {
    line-height: 1;
}

.lh-1-1 {
    line-height: 1.1;
}

.lh-1-2 {
    line-height: 1.2;
}

.lh-1-3 {
    line-height: 1.3;
}

.lh-1-5 {
    line-height: 1.5;
}

.lh-1-7 {
    line-height: 1.7;
}

.lh-2 {
    line-height: 2;
}

.trans {
    transition: 1s all;
}

.w-10 {
    width: 10% !important;
}

.w-20 {
    width: 20% !important;
}

.w-30 {
    width: 30% !important;
}

.w-40 {
    width: 40% !important;
}

.w-50 {
    width: 50% !important;
}

.w-60 {
    width: 60% !important;
}

.w-70 {
    width: 70% !important;
}

.w-80 {
    width: 80% !important;
}

.w-90 {
    width: 90% !important;
}

.w-97 {
    width: 97% !important;
}

.op-unset {
    opacity: unset;
}

.op-0 {
    opacity: 0;
}

.op-10 {
    opacity: 0.1;
}

.op-20 {
    opacity: 0.2;
}

.op-30 {
    opacity: 0.3;
}

.op-40 {
    opacity: 0.4;
}

.op-50 {
    opacity: 0.5;
}

.op-50::after {
    background: transparent;
    opacity: 0.5;
}

.op-60 {
    opacity: 0.6;
}

.op-70 {
    opacity: 0.7;
}

.op-80 {
    opacity: 0.8;
}

.op-90 {
    opacity: 0.9;
}

.op-90-hov:hover {
    opacity: 0.9;
}

.op-1 {
    opacity: 1;
}

.shadow-sm {
    box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.2);
}

.shadow-md {
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.2);
}

.shadow-lg {
    box-shadow: 0px 5px 12px rgba(0, 0, 0, 0.2);
}

.shadow-xl {
    box-shadow: 0px 7px 18px rgba(0, 0, 0, 0.2);
}

.c-offwhite-link {
    color: rgba(255, 255, 255, 0.8) !important;
    transition: 0.2s all;
}

.c-offwhite-link:hover {
    color: rgba(255, 255, 255, 1) !important;
    transition: 0.2s all;
}

.c-dark-link {
    color: rgba(0, 4, 39, 0.6);
    transition: 0.2s all;
}

.c-dark-link:hover {
    color: rgba(0, 4, 39, 1);
    transition: 0.2s all;
    text-decoration: none;
}

.c-card-view {
    background-color: white;
    box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.25);
    border-radius: 4px;
}

.border-light-gray {
    border: 1px solid rgba(0, 0, 0, 0.1);
}

.focus-none:focus {
    outline: none;
}

.focus-deco-none:focus {
    text-decoration: none;
}

.focus-color-inherit:focus {
    color: inherit;
}

.focus-border-0:focus {
    border: 0px solid;
}

.focus-shadow:focus {
    box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.1);
}

.c-radio-btn,
.c-checkbox {
    min-height: 18px;
    min-width: 18px;
}

.c-radio-btn {
    accent-color: #337ab7;
}

.c-btn {
    border: 0px solid rgba(0, 0, 0, 0);
}

.c-btn:hover {
    opacity: 0.9;
}

.c-btn:focus {
    outline: none;
}

.outline-red {
    outline: #ff0000 solid 2px;
}

.btn-outline-white {
    background-color: rgba(255, 255, 255, 0.7);
    border: 1px solid rgba(255, 255, 255, 0.85);
    color: #0095ff;
}

.btn-outline-white:hover {
    background-color: rgba(255, 255, 255, 1);
    color: #0095ff;
}

.btn-outline-primary1 {
    color: #0095ff;
    background-color: white;
    border: 1px solid rgba(0, 149, 255, 1);
    transition: 0.2s all ease-in-out;
}

.btn-outline-primary1:hover {
    background-color: #0095ff;
    color: white;
    transition: 0.2s all ease-in-out;
}

.btn-outline-primary1:focus {
    box-shadow: 0px 0px 0px 3px rgba(0, 149, 255, 0.4);
}

.btn-outline-primary2 {
    background-color: #337ab7 !important;
    color: white;
    border: 1px solid rgba(0, 4, 39, 1);
    transition: 0.2s all ease-in-out;
}

.btn-outline-primary2:hover {
    background-color: #414042;
    color: white;
    transition: 0.2s all ease-in-out;
}

.cursor-pointer:hover {
    cursor: pointer;
}

/* ******** OTHER CLASSES ********* */
.transition-2s-all {
    transition: .2s all;
}

.list-style-none li {
    list-style-type: none;
}

.overflow-hidden {
    overflow: hidden;
}

.text-deco-none {
    text-decoration: none;
}

.text-deco-none-hov:hover {
    text-decoration: none;
}

.c-body-margin {
    margin-top: 120px;
}

.clear-both {
    clear: both;
}

.c-container,
.c-container-fluid {
    padding-right: 15px;
    padding-left: 15px;
    margin-right: auto;
    margin-left: auto;
    width: 100%;
}

.c-row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-right: -15px;
    margin-left: -15px
}

.position-unset {
    position: unset;
}

/* ********* MARGIN CLASSES ********** */

.w-25 {
    width: 25% !important;
}

.w-50 {
    width: 50% !important;
}

.w-60 {
    width: 60% !important;
}

.w-75 {
    width: 75% !important;
}

.w-80 {
    width: 80% !important;
}

.w-100 {
    width: 100% !important;
}

.w-auto {
    width: auto !important;
}

.w-100p {
    width: 100px !important;
}

.w-150p {
    width: 150px !important;
}

.w-200p {
    width: 200px !important;
}

.h-25 {
    height: 25% !important;
}

.h-50 {
    height: 50% !important;
}

.h-75 {
    height: 75% !important;
}

.h-100 {
    height: 100% !important;
}

.h-auto {
    height: auto !important;
}

.mw-100 {
    max-width: 100% !important;
}

.min-h-100vh {
    min-height: 100vh !important;
}

.mh-100 {
    max-height: 100% !important;
}

.img-fluid,
.img-thumbnail {
    max-width: 100%;
    height: auto
}

/* ********************** LAYOUT CLASSES ************************ */

.l-0 {
    left: 0;
}

.r-0 {
    right: 0;
}

/* ********************** MARGIN-PADDING CLASSES ************************ */
.m-0 {
    margin: 0 !important;
}

.mt-0,
.my-0 {
    margin-top: 0 !important;
}

.mr-0,
.mx-0 {
    margin-right: 0 !important;
}

.mb-0,
.my-0 {
    margin-bottom: 0 !important;
}

.ml-0,
.mx-0 {
    margin-left: 0 !important;
}

.m-1 {
    margin: 0.25rem !important;
}

.mt-1,
.my-1 {
    margin-top: 0.25rem !important;
}

.mr-1,
.mx-1 {
    margin-right: 0.25rem !important;
}

.mb-1,
.my-1 {
    margin-bottom: 0.25rem !important;
}

.ml-1,
.mx-1 {
    margin-left: 0.25rem !important;
}

.m-2 {
    margin: 0.5rem !important;
}

.mt-2,
.my-2 {
    margin-top: 0.5rem !important;
}

.mr-2,
.mx-2 {
    margin-right: 0.5rem !important;
}

.mb-2,
.my-2 {
    margin-bottom: 0.5rem !important;
}

.ml-2,
.mx-2 {
    margin-left: 0.5rem !important;
}

.m-3 {
    margin: 1rem !important;
}

.mt-3,
.my-3 {
    margin-top: 1rem !important;
}

.mr-3,
.mx-3 {
    margin-right: 1rem !important;
}

.mb-3,
.my-3 {
    margin-bottom: 1rem !important;
}

.ml-3,
.mx-3 {
    margin-left: 1rem !important;
}

.m-4 {
    margin: 1.5rem !important;
}

.mt-4,
.my-4 {
    margin-top: 1.5rem !important;
}

.mr-4,
.mx-4 {
    margin-right: 1.5rem !important;
}

.mb-4,
.my-4 {
    margin-bottom: 1.5rem !important;
}

.ml-4,
.mx-4 {
    margin-left: 1.5rem !important;
}

.m-5 {
    margin: 3rem !important;
}

.mt-5,
.my-5 {
    margin-top: 3rem !important;
}

.mr-5,
.mx-5 {
    margin-right: 3rem !important;
}

.mb-5,
.my-5 {
    margin-bottom: 3rem !important;
}

.ml-5,
.mx-5 {
    margin-left: 3rem !important;
}

.p-0 {
    padding: 0 !important;
}

.pt-0,
.py-0 {
    padding-top: 0 !important;
}

.pr-0,
.px-0 {
    padding-right: 0 !important;
}

.pb-0,
.py-0 {
    padding-bottom: 0 !important;
}

.pl-0,
.px-0 {
    padding-left: 0 !important;
}

.p-1 {
    padding: 0.25rem !important;
}

.pt-1,
.py-1 {
    padding-top: 0.25rem !important;
}

.pr-1,
.px-1 {
    padding-right: 0.25rem !important;
}

.pb-1,
.py-1 {
    padding-bottom: 0.25rem !important;
}

.pl-1,
.px-1 {
    padding-left: 0.25rem !important;
}

.p-2 {
    padding: 0.5rem !important;
}

.pt-2,
.py-2 {
    padding-top: 0.5rem !important;
}

.pr-2,
.px-2 {
    padding-right: 0.5rem !important;
}

.pb-2,
.py-2 {
    padding-bottom: 0.5rem !important;
}

.pl-2,
.px-2 {
    padding-left: 0.5rem !important;
}

.p-3 {
    padding: 1rem !important;
}

.pt-3,
.py-3 {
    padding-top: 1rem !important;
}

.pr-3,
.px-3 {
    padding-right: 1rem !important;
}

.pb-3,
.py-3 {
    padding-bottom: 1rem !important;
}

.pl-3,
.px-3 {
    padding-left: 1rem !important;
}

.p-4 {
    padding: 1.5rem !important;
}

.pt-4,
.py-4 {
    padding-top: 1.5rem !important;
}

.pr-4,
.px-4 {
    padding-right: 1.5rem !important;
}

.pb-4,
.py-4 {
    padding-bottom: 1.5rem !important;
}

.pl-4,
.px-4 {
    padding-left: 1.5rem !important;
}

.p-5 {
    padding: 3rem !important;
}

.pt-5,
.py-5 {
    padding-top: 3rem !important;
}

.pb-50,
.py-50 {
    padding-bottom: 50px;
}

.pr-5,
.px-5 {
    padding-right: 3rem !important;
}

.pb-5,
.py-5 {
    padding-bottom: 3rem !important;
}

.pl-5,
.px-5 {
    padding-left: 3rem !important;
}

.pb-50,
.py-50 {
    padding-bottom: 50px;
}

.m-auto {
    margin: auto !important;
}

.mt-auto,
.my-auto {
    margin-top: auto !important;
}

.mr-auto,
.mx-auto {
    margin-right: auto !important;
}

.mb-auto,
.my-auto {
    margin-bottom: auto !important;
}

.ml-auto,
.mx-auto {
    margin-left: auto !important;
}


/* ********* TYPOGRAPHY ************ */
.text-left {
    text-align: left !important;
}

.text-right {
    text-align: right !important;
}

.text-center {
    text-align: center !important;
}

.width-55p {
    width: 55%;
}

.d-none {
    display: none !important;
}

.d-inline {
    display: inline !important;
}

.d-inline-block {
    display: inline-block !important;
}

.d-block {
    display: block !important;
}

.d-table {
    display: table !important;
}

.d-table-row {
    display: table-row !important;
}

.d-table-cell {
    display: table-cell !important;
}

.d-flex {
    display: -ms-flexbox !important;
    display: flex !important;
}

.d-inline-flex {
    display: -ms-inline-flexbox !important;
    display: inline-flex !important;
}

/*  ****************** FLEX CLASSES ********************** */

.flex-row {
    -webkit-box-orient: horizontal !important;
    -webkit-box-direction: normal !important;
    -ms-flex-direction: row !important;
    flex-direction: row !important
}

.flex-column {
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: normal !important;
    -ms-flex-direction: column !important;
    flex-direction: column !important
}

.flex-row-reverse {
    -webkit-box-orient: horizontal !important;
    -webkit-box-direction: reverse !important;
    -ms-flex-direction: row-reverse !important;
    flex-direction: row-reverse !important
}

.flex-column-reverse {
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: reverse !important;
    -ms-flex-direction: column-reverse !important;
    flex-direction: column-reverse !important
}

.flex-wrap {
    -ms-flex-wrap: wrap !important;
    flex-wrap: wrap !important
}

.flex-nowrap {
    -ms-flex-wrap: nowrap !important;
    flex-wrap: nowrap !important
}

.flex-wrap-reverse {
    -ms-flex-wrap: wrap-reverse !important;
    flex-wrap: wrap-reverse !important
}

.flex-fill {
    -webkit-box-flex: 1 !important;
    -ms-flex: 1 1 auto !important;
    flex: 1 1 auto !important
}

.flex-grow-0 {
    -webkit-box-flex: 0 !important;
    -ms-flex-positive: 0 !important;
    flex-grow: 0 !important
}

.flex-grow-1 {
    -webkit-box-flex: 1 !important;
    -ms-flex-positive: 1 !important;
    flex-grow: 1 !important
}

.flex-shrink-0 {
    -ms-flex-negative: 0 !important;
    flex-shrink: 0 !important
}

.flex-shrink-1 {
    -ms-flex-negative: 1 !important;
    flex-shrink: 1 !important
}

.justify-content-start {
    -webkit-box-pack: start !important;
    -ms-flex-pack: start !important;
    justify-content: flex-start !important
}

.justify-content-end {
    -webkit-box-pack: end !important;
    -ms-flex-pack: end !important;
    justify-content: flex-end !important
}

.justify-content-center {
    -webkit-box-pack: center !important;
    -ms-flex-pack: center !important;
    justify-content: center !important
}

.justify-content-between {
    -webkit-box-pack: justify !important;
    -ms-flex-pack: justify !important;
    justify-content: space-between !important
}

.justify-content-around {
    -ms-flex-pack: distribute !important;
    justify-content: space-around !important
}

.align-items-start {
    -webkit-box-align: start !important;
    -ms-flex-align: start !important;
    align-items: flex-start !important
}

.align-items-end {
    -webkit-box-align: end !important;
    -ms-flex-align: end !important;
    align-items: flex-end !important
}

.align-items-center {
    -webkit-box-align: center !important;
    -ms-flex-align: center !important;
    align-items: center !important
}

.align-items-baseline {
    -webkit-box-align: baseline !important;
    -ms-flex-align: baseline !important;
    align-items: baseline !important
}

.align-items-stretch {
    -webkit-box-align: stretch !important;
    -ms-flex-align: stretch !important;
    align-items: stretch !important
}

.align-content-start {
    -ms-flex-line-pack: start !important;
    align-content: flex-start !important
}

.align-content-end {
    -ms-flex-line-pack: end !important;
    align-content: flex-end !important
}

.align-content-center {
    -ms-flex-line-pack: center !important;
    align-content: center !important
}

.align-content-between {
    -ms-flex-line-pack: justify !important;
    align-content: space-between !important
}

.align-content-around {
    -ms-flex-line-pack: distribute !important;
    align-content: space-around !important
}

.align-content-stretch {
    -ms-flex-line-pack: stretch !important;
    align-content: stretch !important
}

.align-self-auto {
    -ms-flex-item-align: auto !important;
    align-self: auto !important
}

.align-self-start {
    -ms-flex-item-align: start !important;
    align-self: flex-start !important
}

.align-self-end {
    -ms-flex-item-align: end !important;
    align-self: flex-end !important
}

.align-self-center {
    -ms-flex-item-align: center !important;
    align-self: center !important
}

.align-self-baseline {
    -ms-flex-item-align: baseline !important;
    align-self: baseline !important
}

.align-self-stretch {
    -ms-flex-item-align: stretch !important;
    align-self: stretch !important
}

.float-left {
    float: left !important
}

.float-right {
    float: right !important
}

.float-none {
    float: none !important
}

.vertical-align-middle {
    vertical-align: middle !important;
}

.overflow-auto {
    overflow: auto !important
}

.overflow-hidden {
    overflow: hidden !important
}

.position-static {
    position: static !important
}

.position-relative {
    position: relative !important
}

.position-absolute {
    position: absolute !important
}

.position-fixed {
    position: fixed !important
}

.position-sticky {
    position: -webkit-sticky !important;
    position: sticky !important
}

.position-bottom-0 {
    bottom: 0px;
}

.position-bottom-60 {
    bottom: 60px;
}

.position-bottom-42 {
    bottom: 42px;
}

/* ******* ROUNDED ********* */
.rounded {
    border-radius: 0.25rem !important;
}

.rounded-top {
    border-top-left-radius: 0.25rem !important;
    border-top-right-radius: 0.25rem !important;
}

.rounded-right {
    border-top-right-radius: 0.25rem !important;
    border-bottom-right-radius: 0.25rem !important;
}

.rounded-bottom {
    border-bottom-right-radius: 0.25rem !important;
    border-bottom-left-radius: 0.25rem !important;
}

.rounded-left {
    border-top-left-radius: 0.25rem !important;
    border-bottom-left-radius: 0.25rem !important;
}

.rounded-circle {
    border-radius: 50% !important;
}

.rounded-0 {
    border-radius: 0 !important;
}


.justify-content-start {
    -ms-flex-pack: start !important;
    justify-content: flex-start !important;
}

.justify-content-end {
    -ms-flex-pack: end !important;
    justify-content: flex-end !important;
}

.justify-content-center {
    -ms-flex-pack: center !important;
    justify-content: center !important;
}

.justify-content-between {
    -ms-flex-pack: justify !important;
    justify-content: space-between !important;
}

.justify-content-around {
    -ms-flex-pack: distribute !important;
    justify-content: space-around !important;
}

.align-items-start {
    -ms-flex-align: start !important;
    align-items: flex-start !important;
}

.align-items-end {
    -ms-flex-align: end !important;
    align-items: flex-end !important;
}

.align-items-center {
    -ms-flex-align: center !important;
    align-items: center !important;
}

.align-items-baseline {
    -ms-flex-align: baseline !important;
    align-items: baseline !important;
}

.align-items-stretch {
    -ms-flex-align: stretch !important;
    align-items: stretch !important;
}

.align-content-start {
    -ms-flex-line-pack: start !important;
    align-content: flex-start !important;
}

.align-content-end {
    -ms-flex-line-pack: end !important;
    align-content: flex-end !important;
}

.align-content-center {
    -ms-flex-line-pack: center !important;
    align-content: center !important;
}

.align-content-between {
    -ms-flex-line-pack: justify !important;
    align-content: space-between !important;
}


@media (min-width: 576px) {
    .c-container {
        max-width: 540px;
    }

    .d-sm-none {
        display: none !important;
    }

    .d-sm-inline {
        display: inline !important;
    }

    .d-sm-inline-block {
        display: inline-block !important;
    }

    .d-sm-block {
        display: block !important;
    }

    .d-sm-table {
        display: table !important;
    }

    .d-sm-table-row {
        display: table-row !important;
    }

    .d-sm-table-cell {
        display: table-cell !important;
    }

    .d-sm-flex {
        display: -ms-flexbox !important;
        display: flex !important;
    }

    .d-sm-inline-flex {
        display: -ms-inline-flexbox !important;
        display: inline-flex !important;
    }


    .flex-sm-row {
        -webkit-box-orient: horizontal !important;
        -webkit-box-direction: normal !important;
        -ms-flex-direction: row !important;
        flex-direction: row !important
    }

    .flex-sm-column {
        -webkit-box-orient: vertical !important;
        -webkit-box-direction: normal !important;
        -ms-flex-direction: column !important;
        flex-direction: column !important
    }

    .flex-sm-row-reverse {
        -webkit-box-orient: horizontal !important;
        -webkit-box-direction: reverse !important;
        -ms-flex-direction: row-reverse !important;
        flex-direction: row-reverse !important
    }

    .flex-sm-column-reverse {
        -webkit-box-orient: vertical !important;
        -webkit-box-direction: reverse !important;
        -ms-flex-direction: column-reverse !important;
        flex-direction: column-reverse !important
    }

    .flex-sm-wrap {
        -ms-flex-wrap: wrap !important;
        flex-wrap: wrap !important
    }

    .flex-sm-nowrap {
        -ms-flex-wrap: nowrap !important;
        flex-wrap: nowrap !important
    }

    .flex-sm-wrap-reverse {
        -ms-flex-wrap: wrap-reverse !important;
        flex-wrap: wrap-reverse !important
    }

    .flex-sm-fill {
        -webkit-box-flex: 1 !important;
        -ms-flex: 1 1 auto !important;
        flex: 1 1 auto !important
    }

    .flex-sm-grow-0 {
        -webkit-box-flex: 0 !important;
        -ms-flex-positive: 0 !important;
        flex-grow: 0 !important
    }

    .flex-sm-grow-1 {
        -webkit-box-flex: 1 !important;
        -ms-flex-positive: 1 !important;
        flex-grow: 1 !important
    }

    .flex-sm-shrink-0 {
        -ms-flex-negative: 0 !important;
        flex-shrink: 0 !important
    }

    .flex-sm-shrink-1 {
        -ms-flex-negative: 1 !important;
        flex-shrink: 1 !important
    }

    .justify-content-sm-start {
        -webkit-box-pack: start !important;
        -ms-flex-pack: start !important;
        justify-content: flex-start !important
    }

    .justify-content-sm-end {
        -webkit-box-pack: end !important;
        -ms-flex-pack: end !important;
        justify-content: flex-end !important
    }

    .justify-content-sm-center {
        -webkit-box-pack: center !important;
        -ms-flex-pack: center !important;
        justify-content: center !important
    }

    .justify-content-sm-between {
        -webkit-box-pack: justify !important;
        -ms-flex-pack: justify !important;
        justify-content: space-between !important
    }

    .justify-content-sm-around {
        -ms-flex-pack: distribute !important;
        justify-content: space-around !important
    }

    .align-items-sm-start {
        -webkit-box-align: start !important;
        -ms-flex-align: start !important;
        align-items: flex-start !important
    }

    .align-items-sm-end {
        -webkit-box-align: end !important;
        -ms-flex-align: end !important;
        align-items: flex-end !important
    }

    .align-items-sm-center {
        -webkit-box-align: center !important;
        -ms-flex-align: center !important;
        align-items: center !important
    }

    .align-items-sm-baseline {
        -webkit-box-align: baseline !important;
        -ms-flex-align: baseline !important;
        align-items: baseline !important
    }

    .align-items-sm-stretch {
        -webkit-box-align: stretch !important;
        -ms-flex-align: stretch !important;
        align-items: stretch !important
    }

    .align-content-sm-start {
        -ms-flex-line-pack: start !important;
        align-content: flex-start !important
    }

    .align-content-sm-end {
        -ms-flex-line-pack: end !important;
        align-content: flex-end !important
    }

    .align-content-sm-center {
        -ms-flex-line-pack: center !important;
        align-content: center !important
    }

    .align-content-sm-between {
        -ms-flex-line-pack: justify !important;
        align-content: space-between !important
    }

    .align-content-sm-around {
        -ms-flex-line-pack: distribute !important;
        align-content: space-around !important
    }

    .align-content-sm-stretch {
        -ms-flex-line-pack: stretch !important;
        align-content: stretch !important
    }

    .align-self-sm-auto {
        -ms-flex-item-align: auto !important;
        align-self: auto !important
    }

    .align-self-sm-start {
        -ms-flex-item-align: start !important;
        align-self: flex-start !important
    }

    .align-self-sm-end {
        -ms-flex-item-align: end !important;
        align-self: flex-end !important
    }

    .align-self-sm-center {
        -ms-flex-item-align: center !important;
        align-self: center !important
    }

    .align-self-sm-baseline {
        -ms-flex-item-align: baseline !important;
        align-self: baseline !important
    }

    .align-self-sm-stretch {
        -ms-flex-item-align: stretch !important;
        align-self: stretch !important
    }

    .float-sm-left {
        float: left !important
    }

    .float-sm-right {
        float: right !important
    }

    .float-sm-none {
        float: none !important
    }

    .m-sm-0 {
        margin: 0 !important
    }

    .mt-sm-0,
    .my-sm-0 {
        margin-top: 0 !important
    }

    .mr-sm-0,
    .mx-sm-0 {
        margin-right: 0 !important
    }

    .mb-sm-0,
    .my-sm-0 {
        margin-bottom: 0 !important
    }

    .ml-sm-0,
    .mx-sm-0 {
        margin-left: 0 !important
    }

    .m-sm-1 {
        margin: .25rem !important
    }

    .mt-sm-1,
    .my-sm-1 {
        margin-top: .25rem !important
    }

    .mr-sm-1,
    .mx-sm-1 {
        margin-right: .25rem !important
    }

    .mb-sm-1,
    .my-sm-1 {
        margin-bottom: .25rem !important
    }

    .ml-sm-1,
    .mx-sm-1 {
        margin-left: .25rem !important
    }

    .m-sm-2 {
        margin: .5rem !important
    }

    .mt-sm-2,
    .my-sm-2 {
        margin-top: .5rem !important
    }

    .mr-sm-2,
    .mx-sm-2 {
        margin-right: .5rem !important
    }

    .mb-sm-2,
    .my-sm-2 {
        margin-bottom: .5rem !important
    }

    .ml-sm-2,
    .mx-sm-2 {
        margin-left: .5rem !important
    }

    .m-sm-3 {
        margin: 1rem !important
    }

    .mt-sm-3,
    .my-sm-3 {
        margin-top: 1rem !important
    }

    .mr-sm-3,
    .mx-sm-3 {
        margin-right: 1rem !important
    }

    .mb-sm-3,
    .my-sm-3 {
        margin-bottom: 1rem !important
    }

    .ml-sm-3,
    .mx-sm-3 {
        margin-left: 1rem !important
    }

    .m-sm-4 {
        margin: 1.5rem !important
    }

    .mt-sm-4,
    .my-sm-4 {
        margin-top: 1.5rem !important
    }

    .mr-sm-4,
    .mx-sm-4 {
        margin-right: 1.5rem !important
    }

    .mb-sm-4,
    .my-sm-4 {
        margin-bottom: 1.5rem !important
    }

    .ml-sm-4,
    .mx-sm-4 {
        margin-left: 1.5rem !important
    }

    .m-sm-5 {
        margin: 3rem !important
    }

    .mt-sm-5,
    .my-sm-5 {
        margin-top: 3rem !important
    }

    .mr-sm-5,
    .mx-sm-5 {
        margin-right: 3rem !important
    }

    .mb-sm-5,
    .my-sm-5 {
        margin-bottom: 3rem !important
    }

    .ml-sm-5,
    .mx-sm-5 {
        margin-left: 3rem !important
    }

    .p-sm-0 {
        padding: 0 !important
    }

    .pt-sm-0,
    .py-sm-0 {
        padding-top: 0 !important
    }

    .pr-sm-0,
    .px-sm-0 {
        padding-right: 0 !important
    }

    .pb-sm-0,
    .py-sm-0 {
        padding-bottom: 0 !important
    }

    .pl-sm-0,
    .px-sm-0 {
        padding-left: 0 !important
    }

    .p-sm-1 {
        padding: .25rem !important
    }

    .pt-sm-1,
    .py-sm-1 {
        padding-top: .25rem !important
    }

    .pr-sm-1,
    .px-sm-1 {
        padding-right: .25rem !important
    }

    .pb-sm-1,
    .py-sm-1 {
        padding-bottom: .25rem !important
    }

    .pl-sm-1,
    .px-sm-1 {
        padding-left: .25rem !important
    }

    .p-sm-2 {
        padding: .5rem !important
    }

    .pt-sm-2,
    .py-sm-2 {
        padding-top: .5rem !important
    }

    .pr-sm-2,
    .px-sm-2 {
        padding-right: .5rem !important
    }

    .pb-sm-2,
    .py-sm-2 {
        padding-bottom: .5rem !important
    }

    .pl-sm-2,
    .px-sm-2 {
        padding-left: .5rem !important
    }

    .p-sm-3 {
        padding: 1rem !important
    }

    .pt-sm-3,
    .py-sm-3 {
        padding-top: 1rem !important
    }

    .pr-sm-3,
    .px-sm-3 {
        padding-right: 1rem !important
    }

    .pb-sm-3,
    .py-sm-3 {
        padding-bottom: 1rem !important
    }

    .pl-sm-3,
    .px-sm-3 {
        padding-left: 1rem !important
    }

    .p-sm-4 {
        padding: 1.5rem !important
    }

    .pt-sm-4,
    .py-sm-4 {
        padding-top: 1.5rem !important
    }

    .pr-sm-4,
    .px-sm-4 {
        padding-right: 1.5rem !important
    }

    .pb-sm-4,
    .py-sm-4 {
        padding-bottom: 1.5rem !important
    }

    .pl-sm-4,
    .px-sm-4 {
        padding-left: 1.5rem !important
    }

    .p-sm-5 {
        padding: 3rem !important
    }

    .pt-sm-5,
    .py-sm-5 {
        padding-top: 3rem !important
    }

    .pr-sm-5,
    .px-sm-5 {
        padding-right: 3rem !important
    }

    .pb-sm-5,
    .py-sm-5 {
        padding-bottom: 3rem !important
    }

    .pl-sm-5,
    .px-sm-5 {
        padding-left: 3rem !important
    }

    .m-sm-n1 {
        margin: -.25rem !important
    }

    .mt-sm-n1,
    .my-sm-n1 {
        margin-top: -.25rem !important
    }

    .mr-sm-n1,
    .mx-sm-n1 {
        margin-right: -.25rem !important
    }

    .mb-sm-n1,
    .my-sm-n1 {
        margin-bottom: -.25rem !important
    }

    .ml-sm-n1,
    .mx-sm-n1 {
        margin-left: -.25rem !important
    }

    .m-sm-n2 {
        margin: -.5rem !important
    }

    .mt-sm-n2,
    .my-sm-n2 {
        margin-top: -.5rem !important
    }

    .mr-sm-n2,
    .mx-sm-n2 {
        margin-right: -.5rem !important
    }

    .mb-sm-n2,
    .my-sm-n2 {
        margin-bottom: -.5rem !important
    }

    .ml-sm-n2,
    .mx-sm-n2 {
        margin-left: -.5rem !important
    }

    .m-sm-n3 {
        margin: -1rem !important
    }

    .mt-sm-n3,
    .my-sm-n3 {
        margin-top: -1rem !important
    }

    .mr-sm-n3,
    .mx-sm-n3 {
        margin-right: -1rem !important
    }

    .mb-sm-n3,
    .my-sm-n3 {
        margin-bottom: -1rem !important
    }

    .ml-sm-n3,
    .mx-sm-n3 {
        margin-left: -1rem !important
    }

    .m-sm-n4 {
        margin: -1.5rem !important
    }

    .mt-sm-n4,
    .my-sm-n4 {
        margin-top: -1.5rem !important
    }

    .mr-sm-n4,
    .mx-sm-n4 {
        margin-right: -1.5rem !important
    }

    .mb-sm-n4,
    .my-sm-n4 {
        margin-bottom: -1.5rem !important
    }

    .ml-sm-n4,
    .mx-sm-n4 {
        margin-left: -1.5rem !important
    }

    .m-sm-n5 {
        margin: -3rem !important
    }

    .mt-sm-n5,
    .my-sm-n5 {
        margin-top: -3rem !important
    }

    .mr-sm-n5,
    .mx-sm-n5 {
        margin-right: -3rem !important
    }

    .mb-sm-n5,
    .my-sm-n5 {
        margin-bottom: -3rem !important
    }

    .ml-sm-n5,
    .mx-sm-n5 {
        margin-left: -3rem !important
    }

    .m-sm-auto {
        margin: auto !important
    }

    .mt-sm-auto,
    .my-sm-auto {
        margin-top: auto !important
    }

    .mr-sm-auto,
    .mx-sm-auto {
        margin-right: auto !important
    }

    .mb-sm-auto,
    .my-sm-auto {
        margin-bottom: auto !important
    }

    .ml-sm-auto,
    .mx-sm-auto {
        margin-left: auto !important
    }
}

@media (min-width: 768px) {
    .c-container {
        max-width: 720px;
    }

    .c-body-margin {
        margin-top: 100px;
    }

    .text-md-right {
        text-align: right !important;
    }

    .w-md-40 {
        width: 40% !important;
    }

    .w-md-50 {
        width: 50% !important;
    }

    .w-md-60 {
        width: 60% !important;
    }

    .w-md-70 {
        width: 70% !important;
    }

    .d-md-none {
        display: none !important;
    }

    .d-md-inline {
        display: inline !important;
    }

    .d-md-inline-block {
        display: inline-block !important;
    }

    .d-md-block {
        display: block !important;
    }

    .d-md-table {
        display: table !important;
    }

    .d-md-table-row {
        display: table-row !important;
    }

    .d-md-table-cell {
        display: table-cell !important;
    }

    .d-md-flex {
        display: -ms-flexbox !important;
        display: flex !important;
    }

    .d-md-inline-flex {
        display: -ms-inline-flexbox !important;
        display: inline-flex !important;
    }

    /* *********************** FLEX CLASSES ************************* */
    .flex-md-row {
        -webkit-box-orient: horizontal !important;
        -webkit-box-direction: normal !important;
        -ms-flex-direction: row !important;
        flex-direction: row !important
    }

    .flex-md-column {
        -webkit-box-orient: vertical !important;
        -webkit-box-direction: normal !important;
        -ms-flex-direction: column !important;
        flex-direction: column !important
    }

    .flex-md-row-reverse {
        -webkit-box-orient: horizontal !important;
        -webkit-box-direction: reverse !important;
        -ms-flex-direction: row-reverse !important;
        flex-direction: row-reverse !important
    }

    .flex-md-column-reverse {
        -webkit-box-orient: vertical !important;
        -webkit-box-direction: reverse !important;
        -ms-flex-direction: column-reverse !important;
        flex-direction: column-reverse !important
    }

    .flex-md-wrap {
        -ms-flex-wrap: wrap !important;
        flex-wrap: wrap !important
    }

    .flex-md-nowrap {
        -ms-flex-wrap: nowrap !important;
        flex-wrap: nowrap !important
    }

    .flex-md-wrap-reverse {
        -ms-flex-wrap: wrap-reverse !important;
        flex-wrap: wrap-reverse !important
    }

    .flex-md-fill {
        -webkit-box-flex: 1 !important;
        -ms-flex: 1 1 auto !important;
        flex: 1 1 auto !important
    }

    .flex-md-grow-0 {
        -webkit-box-flex: 0 !important;
        -ms-flex-positive: 0 !important;
        flex-grow: 0 !important
    }

    .flex-md-grow-1 {
        -webkit-box-flex: 1 !important;
        -ms-flex-positive: 1 !important;
        flex-grow: 1 !important
    }

    .flex-md-shrink-0 {
        -ms-flex-negative: 0 !important;
        flex-shrink: 0 !important
    }

    .flex-md-shrink-1 {
        -ms-flex-negative: 1 !important;
        flex-shrink: 1 !important
    }

    .justify-content-md-start {
        -webkit-box-pack: start !important;
        -ms-flex-pack: start !important;
        justify-content: flex-start !important
    }

    .justify-content-md-end {
        -webkit-box-pack: end !important;
        -ms-flex-pack: end !important;
        justify-content: flex-end !important
    }

    .justify-content-md-center {
        -webkit-box-pack: center !important;
        -ms-flex-pack: center !important;
        justify-content: center !important
    }

    .justify-content-md-between {
        -webkit-box-pack: justify !important;
        -ms-flex-pack: justify !important;
        justify-content: space-between !important
    }

    .justify-content-md-around {
        -ms-flex-pack: distribute !important;
        justify-content: space-around !important
    }

    .align-items-md-start {
        -webkit-box-align: start !important;
        -ms-flex-align: start !important;
        align-items: flex-start !important
    }

    .align-items-md-end {
        -webkit-box-align: end !important;
        -ms-flex-align: end !important;
        align-items: flex-end !important
    }

    .align-items-md-center {
        -webkit-box-align: center !important;
        -ms-flex-align: center !important;
        align-items: center !important
    }

    .align-items-md-baseline {
        -webkit-box-align: baseline !important;
        -ms-flex-align: baseline !important;
        align-items: baseline !important
    }

    .align-items-md-stretch {
        -webkit-box-align: stretch !important;
        -ms-flex-align: stretch !important;
        align-items: stretch !important
    }

    .align-content-md-start {
        -ms-flex-line-pack: start !important;
        align-content: flex-start !important
    }

    .align-content-md-end {
        -ms-flex-line-pack: end !important;
        align-content: flex-end !important
    }

    .align-content-md-center {
        -ms-flex-line-pack: center !important;
        align-content: center !important
    }

    .align-content-md-between {
        -ms-flex-line-pack: justify !important;
        align-content: space-between !important
    }

    .align-content-md-around {
        -ms-flex-line-pack: distribute !important;
        align-content: space-around !important
    }

    .align-content-md-stretch {
        -ms-flex-line-pack: stretch !important;
        align-content: stretch !important
    }

    .align-self-md-auto {
        -ms-flex-item-align: auto !important;
        align-self: auto !important
    }

    .align-self-md-start {
        -ms-flex-item-align: start !important;
        align-self: flex-start !important
    }

    .align-self-md-end {
        -ms-flex-item-align: end !important;
        align-self: flex-end !important
    }

    .align-self-md-center {
        -ms-flex-item-align: center !important;
        align-self: center !important
    }

    .align-self-md-baseline {
        -ms-flex-item-align: baseline !important;
        align-self: baseline !important
    }

    .align-self-md-stretch {
        -ms-flex-item-align: stretch !important;
        align-self: stretch !important
    }

    .float-md-left {
        float: left !important
    }

    .float-md-right {
        float: right !important
    }

    .float-md-none {
        float: none !important
    }

    .m-md-0 {
        margin: 0 !important
    }

    .mt-md-0,
    .my-md-0 {
        margin-top: 0 !important
    }

    .mr-md-0,
    .mx-md-0 {
        margin-right: 0 !important
    }

    .mb-md-0,
    .my-md-0 {
        margin-bottom: 0 !important
    }

    .ml-md-0,
    .mx-md-0 {
        margin-left: 0 !important
    }

    .m-md-1 {
        margin: .25rem !important
    }

    .mt-md-1,
    .my-md-1 {
        margin-top: .25rem !important
    }

    .mr-md-1,
    .mx-md-1 {
        margin-right: .25rem !important
    }

    .mb-md-1,
    .my-md-1 {
        margin-bottom: .25rem !important
    }

    .ml-md-1,
    .mx-md-1 {
        margin-left: .25rem !important
    }

    .m-md-2 {
        margin: .5rem !important
    }

    .mt-md-2,
    .my-md-2 {
        margin-top: .5rem !important
    }

    .mr-md-2,
    .mx-md-2 {
        margin-right: .5rem !important
    }

    .mb-md-2,
    .my-md-2 {
        margin-bottom: .5rem !important
    }

    .ml-md-2,
    .mx-md-2 {
        margin-left: .5rem !important
    }

    .m-md-3 {
        margin: 1rem !important
    }

    .mt-md-3,
    .my-md-3 {
        margin-top: 1rem !important
    }

    .mr-md-3,
    .mx-md-3 {
        margin-right: 1rem !important
    }

    .mb-md-3,
    .my-md-3 {
        margin-bottom: 1rem !important
    }

    .ml-md-3,
    .mx-md-3 {
        margin-left: 1rem !important
    }

    .m-md-4 {
        margin: 1.5rem !important
    }

    .mt-md-4,
    .my-md-4 {
        margin-top: 1.5rem !important
    }

    .mr-md-4,
    .mx-md-4 {
        margin-right: 1.5rem !important
    }

    .mb-md-4,
    .my-md-4 {
        margin-bottom: 1.5rem !important
    }

    .ml-md-4,
    .mx-md-4 {
        margin-left: 1.5rem !important
    }

    .m-md-5 {
        margin: 3rem !important
    }

    .mt-md-5,
    .my-md-5 {
        margin-top: 3rem !important
    }

    .mr-md-5,
    .mx-md-5 {
        margin-right: 3rem !important
    }

    .mb-md-5,
    .my-md-5 {
        margin-bottom: 3rem !important
    }

    .ml-md-5,
    .mx-md-5 {
        margin-left: 3rem !important
    }

    .p-md-0 {
        padding: 0 !important
    }

    .pt-md-0,
    .py-md-0 {
        padding-top: 0 !important
    }

    .pr-md-0,
    .px-md-0 {
        padding-right: 0 !important
    }

    .pb-md-0,
    .py-md-0 {
        padding-bottom: 0 !important
    }

    .pl-md-0,
    .px-md-0 {
        padding-left: 0 !important
    }

    .p-md-1 {
        padding: .25rem !important
    }

    .pt-md-1,
    .py-md-1 {
        padding-top: .25rem !important
    }

    .pr-md-1,
    .px-md-1 {
        padding-right: .25rem !important
    }

    .pb-md-1,
    .py-md-1 {
        padding-bottom: .25rem !important
    }

    .pl-md-1,
    .px-md-1 {
        padding-left: .25rem !important
    }

    .p-md-2 {
        padding: .5rem !important
    }

    .pt-md-2,
    .py-md-2 {
        padding-top: .5rem !important
    }

    .pr-md-2,
    .px-md-2 {
        padding-right: .5rem !important
    }

    .pb-md-2,
    .py-md-2 {
        padding-bottom: .5rem !important
    }

    .pl-md-2,
    .px-md-2 {
        padding-left: .5rem !important
    }

    .p-md-3 {
        padding: 1rem !important
    }

    .pt-md-3,
    .py-md-3 {
        padding-top: 1rem !important
    }

    .pr-md-3,
    .px-md-3 {
        padding-right: 1rem !important
    }

    .pb-md-3,
    .py-md-3 {
        padding-bottom: 1rem !important
    }

    .pl-md-3,
    .px-md-3 {
        padding-left: 1rem !important
    }

    .p-md-4 {
        padding: 1.5rem !important
    }

    .pt-md-4,
    .py-md-4 {
        padding-top: 1.5rem !important
    }

    .pr-md-4,
    .px-md-4 {
        padding-right: 1.5rem !important
    }

    .pb-md-4,
    .py-md-4 {
        padding-bottom: 1.5rem !important
    }

    .pl-md-4,
    .px-md-4 {
        padding-left: 1.5rem !important
    }

    .p-md-5 {
        padding: 3rem !important
    }

    .pt-md-5,
    .py-md-5 {
        padding-top: 3rem !important
    }

    .pr-md-5,
    .px-md-5 {
        padding-right: 3rem !important
    }

    .pb-md-5,
    .py-md-5 {
        padding-bottom: 3rem !important
    }

    .pl-md-5,
    .px-md-5 {
        padding-left: 3rem !important
    }

    .m-md-n1 {
        margin: -.25rem !important
    }

    .mt-md-n1,
    .my-md-n1 {
        margin-top: -.25rem !important
    }

    .mr-md-n1,
    .mx-md-n1 {
        margin-right: -.25rem !important
    }

    .mb-md-n1,
    .my-md-n1 {
        margin-bottom: -.25rem !important
    }

    .ml-md-n1,
    .mx-md-n1 {
        margin-left: -.25rem !important
    }

    .m-md-n2 {
        margin: -.5rem !important
    }

    .mt-md-n2,
    .my-md-n2 {
        margin-top: -.5rem !important
    }

    .mr-md-n2,
    .mx-md-n2 {
        margin-right: -.5rem !important
    }

    .mb-md-n2,
    .my-md-n2 {
        margin-bottom: -.5rem !important
    }

    .ml-md-n2,
    .mx-md-n2 {
        margin-left: -.5rem !important
    }

    .m-md-n3 {
        margin: -1rem !important
    }

    .mt-md-n3,
    .my-md-n3 {
        margin-top: -1rem !important
    }

    .mr-md-n3,
    .mx-md-n3 {
        margin-right: -1rem !important
    }

    .mb-md-n3,
    .my-md-n3 {
        margin-bottom: -1rem !important
    }

    .ml-md-n3,
    .mx-md-n3 {
        margin-left: -1rem !important
    }

    .m-md-n4 {
        margin: -1.5rem !important
    }

    .mt-md-n4,
    .my-md-n4 {
        margin-top: -1.5rem !important
    }

    .mr-md-n4,
    .mx-md-n4 {
        margin-right: -1.5rem !important
    }

    .mb-md-n4,
    .my-md-n4 {
        margin-bottom: -1.5rem !important
    }

    .ml-md-n4,
    .mx-md-n4 {
        margin-left: -1.5rem !important
    }

    .m-md-n5 {
        margin: -3rem !important
    }

    .mt-md-n5,
    .my-md-n5 {
        margin-top: -3rem !important
    }

    .mr-md-n5,
    .mx-md-n5 {
        margin-right: -3rem !important
    }

    .mb-md-n5,
    .my-md-n5 {
        margin-bottom: -3rem !important
    }

    .ml-md-n5,
    .mx-md-n5 {
        margin-left: -3rem !important
    }

    .m-md-auto {
        margin: auto !important
    }

    .mt-md-auto,
    .my-md-auto {
        margin-top: auto !important
    }

    .mr-md-auto,
    .mx-md-auto {
        margin-right: auto !important
    }

    .mb-md-auto,
    .my-md-auto {
        margin-bottom: auto !important
    }

    .ml-md-auto,
    .mx-md-auto {
        margin-left: auto !important
    }

    /* text */

    .text-md-left {
        text-align: left !important
    }

    .text-md-right {
        text-align: right !important
    }

    .text-md-center {
        text-align: center !important
    }

    /* ************** OTHERS ******************  */
    .ls-md-1 {
        letter-spacing: 1px;
    }

}


/* ********************************************************** 992 PX ********************************************* */
@media (min-width: 992px) {
    .c-container {
        max-width: 960px;
    }

    .w-lg-40 {
        width: 40% !important;
    }

    .w-lg-50 {
        width: 50% !important;
    }

    .w-lg-60 {
        width: 60% !important;
    }

    .w-lg-70 {
        width: 70% !important;
    }

    .d-lg-none {
        display: none !important;
    }

    .d-lg-inline {
        display: inline !important;
    }

    .d-lg-inline-block {
        display: inline-block !important;
    }

    .d-lg-block {
        display: block !important;
    }

    .d-lg-table {
        display: table !important;
    }

    .d-lg-table-row {
        display: table-row !important;
    }

    .d-lg-table-cell {
        display: table-cell !important;
    }

    .d-lg-flex {
        display: -ms-flexbox !important;
        display: flex !important;
    }

    .d-lg-inline-flex {
        display: -ms-inline-flexbox !important;
        display: inline-flex !important;
    }

    /* *************************** FLEX CLASSES ***************************** */
    .flex-lg-row {
        -webkit-box-orient: horizontal !important;
        -webkit-box-direction: normal !important;
        -ms-flex-direction: row !important;
        flex-direction: row !important
    }

    .flex-lg-column {
        -webkit-box-orient: vertical !important;
        -webkit-box-direction: normal !important;
        -ms-flex-direction: column !important;
        flex-direction: column !important
    }

    .flex-lg-row-reverse {
        -webkit-box-orient: horizontal !important;
        -webkit-box-direction: reverse !important;
        -ms-flex-direction: row-reverse !important;
        flex-direction: row-reverse !important
    }

    .flex-lg-column-reverse {
        -webkit-box-orient: vertical !important;
        -webkit-box-direction: reverse !important;
        -ms-flex-direction: column-reverse !important;
        flex-direction: column-reverse !important
    }

    .flex-lg-wrap {
        -ms-flex-wrap: wrap !important;
        flex-wrap: wrap !important
    }

    .flex-lg-nowrap {
        -ms-flex-wrap: nowrap !important;
        flex-wrap: nowrap !important
    }

    .flex-lg-wrap-reverse {
        -ms-flex-wrap: wrap-reverse !important;
        flex-wrap: wrap-reverse !important
    }

    .flex-lg-fill {
        -webkit-box-flex: 1 !important;
        -ms-flex: 1 1 auto !important;
        flex: 1 1 auto !important
    }

    .flex-lg-grow-0 {
        -webkit-box-flex: 0 !important;
        -ms-flex-positive: 0 !important;
        flex-grow: 0 !important
    }

    .flex-lg-grow-1 {
        -webkit-box-flex: 1 !important;
        -ms-flex-positive: 1 !important;
        flex-grow: 1 !important
    }

    .flex-lg-shrink-0 {
        -ms-flex-negative: 0 !important;
        flex-shrink: 0 !important
    }

    .flex-lg-shrink-1 {
        -ms-flex-negative: 1 !important;
        flex-shrink: 1 !important
    }

    .justify-content-lg-start {
        -webkit-box-pack: start !important;
        -ms-flex-pack: start !important;
        justify-content: flex-start !important
    }

    .justify-content-lg-end {
        -webkit-box-pack: end !important;
        -ms-flex-pack: end !important;
        justify-content: flex-end !important
    }

    .justify-content-lg-center {
        -webkit-box-pack: center !important;
        -ms-flex-pack: center !important;
        justify-content: center !important
    }

    .justify-content-lg-between {
        -webkit-box-pack: justify !important;
        -ms-flex-pack: justify !important;
        justify-content: space-between !important
    }

    .justify-content-lg-around {
        -ms-flex-pack: distribute !important;
        justify-content: space-around !important
    }

    .align-items-lg-start {
        -webkit-box-align: start !important;
        -ms-flex-align: start !important;
        align-items: flex-start !important
    }

    .align-items-lg-end {
        -webkit-box-align: end !important;
        -ms-flex-align: end !important;
        align-items: flex-end !important
    }

    .align-items-lg-center {
        -webkit-box-align: center !important;
        -ms-flex-align: center !important;
        align-items: center !important
    }

    .align-items-lg-baseline {
        -webkit-box-align: baseline !important;
        -ms-flex-align: baseline !important;
        align-items: baseline !important
    }

    .align-items-lg-stretch {
        -webkit-box-align: stretch !important;
        -ms-flex-align: stretch !important;
        align-items: stretch !important
    }

    .align-content-lg-start {
        -ms-flex-line-pack: start !important;
        align-content: flex-start !important
    }

    .align-content-lg-end {
        -ms-flex-line-pack: end !important;
        align-content: flex-end !important
    }

    .align-content-lg-center {
        -ms-flex-line-pack: center !important;
        align-content: center !important
    }

    .align-content-lg-between {
        -ms-flex-line-pack: justify !important;
        align-content: space-between !important
    }

    .align-content-lg-around {
        -ms-flex-line-pack: distribute !important;
        align-content: space-around !important
    }

    .align-content-lg-stretch {
        -ms-flex-line-pack: stretch !important;
        align-content: stretch !important
    }

    .align-self-lg-auto {
        -ms-flex-item-align: auto !important;
        align-self: auto !important
    }

    .align-self-lg-start {
        -ms-flex-item-align: start !important;
        align-self: flex-start !important
    }

    .align-self-lg-end {
        -ms-flex-item-align: end !important;
        align-self: flex-end !important
    }

    .align-self-lg-center {
        -ms-flex-item-align: center !important;
        align-self: center !important
    }

    .align-self-lg-baseline {
        -ms-flex-item-align: baseline !important;
        align-self: baseline !important
    }

    .align-self-lg-stretch {
        -ms-flex-item-align: stretch !important;
        align-self: stretch !important
    }

    .float-lg-left {
        float: left !important
    }

    .float-lg-right {
        float: right !important
    }

    .float-lg-none {
        float: none !important
    }

    .m-lg-0 {
        margin: 0 !important
    }

    .mt-lg-0,
    .my-lg-0 {
        margin-top: 0 !important
    }

    .mr-lg-0,
    .mx-lg-0 {
        margin-right: 0 !important
    }

    .mb-lg-0,
    .my-lg-0 {
        margin-bottom: 0 !important
    }

    .ml-lg-0,
    .mx-lg-0 {
        margin-left: 0 !important
    }

    .m-lg-1 {
        margin: .25rem !important
    }

    .mt-lg-1,
    .my-lg-1 {
        margin-top: .25rem !important
    }

    .mr-lg-1,
    .mx-lg-1 {
        margin-right: .25rem !important
    }

    .mb-lg-1,
    .my-lg-1 {
        margin-bottom: .25rem !important
    }

    .ml-lg-1,
    .mx-lg-1 {
        margin-left: .25rem !important
    }

    .m-lg-2 {
        margin: .5rem !important
    }

    .mt-lg-2,
    .my-lg-2 {
        margin-top: .5rem !important
    }

    .mr-lg-2,
    .mx-lg-2 {
        margin-right: .5rem !important
    }

    .mb-lg-2,
    .my-lg-2 {
        margin-bottom: .5rem !important
    }

    .ml-lg-2,
    .mx-lg-2 {
        margin-left: .5rem !important
    }

    .m-lg-3 {
        margin: 1rem !important
    }

    .mt-lg-3,
    .my-lg-3 {
        margin-top: 1rem !important
    }

    .mr-lg-3,
    .mx-lg-3 {
        margin-right: 1rem !important
    }

    .mb-lg-3,
    .my-lg-3 {
        margin-bottom: 1rem !important
    }

    .ml-lg-3,
    .mx-lg-3 {
        margin-left: 1rem !important
    }

    .m-lg-4 {
        margin: 1.5rem !important
    }

    .mt-lg-4,
    .my-lg-4 {
        margin-top: 1.5rem !important
    }

    .mr-lg-4,
    .mx-lg-4 {
        margin-right: 1.5rem !important
    }

    .mb-lg-4,
    .my-lg-4 {
        margin-bottom: 1.5rem !important
    }

    .ml-lg-4,
    .mx-lg-4 {
        margin-left: 1.5rem !important
    }

    .m-lg-5 {
        margin: 3rem !important
    }

    .mt-lg-5,
    .my-lg-5 {
        margin-top: 3rem !important
    }

    .mr-lg-5,
    .mx-lg-5 {
        margin-right: 3rem !important
    }

    .mb-lg-5,
    .my-lg-5 {
        margin-bottom: 3rem !important
    }

    .ml-lg-5,
    .mx-lg-5 {
        margin-left: 3rem !important
    }

    .p-lg-0 {
        padding: 0 !important
    }

    .pt-lg-0,
    .py-lg-0 {
        padding-top: 0 !important
    }

    .pr-lg-0,
    .px-lg-0 {
        padding-right: 0 !important
    }

    .pb-lg-0,
    .py-lg-0 {
        padding-bottom: 0 !important
    }

    .pl-lg-0,
    .px-lg-0 {
        padding-left: 0 !important
    }

    .p-lg-1 {
        padding: .25rem !important
    }

    .pt-lg-1,
    .py-lg-1 {
        padding-top: .25rem !important
    }

    .pr-lg-1,
    .px-lg-1 {
        padding-right: .25rem !important
    }

    .pb-lg-1,
    .py-lg-1 {
        padding-bottom: .25rem !important
    }

    .pl-lg-1,
    .px-lg-1 {
        padding-left: .25rem !important
    }

    .p-lg-2 {
        padding: .5rem !important
    }

    .pt-lg-2,
    .py-lg-2 {
        padding-top: .5rem !important
    }

    .pr-lg-2,
    .px-lg-2 {
        padding-right: .5rem !important
    }

    .pb-lg-2,
    .py-lg-2 {
        padding-bottom: .5rem !important
    }

    .pl-lg-2,
    .px-lg-2 {
        padding-left: .5rem !important
    }

    .p-lg-3 {
        padding: 1rem !important
    }

    .pt-lg-3,
    .py-lg-3 {
        padding-top: 1rem !important
    }

    .pr-lg-3,
    .px-lg-3 {
        padding-right: 1rem !important
    }

    .pb-lg-3,
    .py-lg-3 {
        padding-bottom: 1rem !important
    }

    .pl-lg-3,
    .px-lg-3 {
        padding-left: 1rem !important
    }

    .p-lg-4 {
        padding: 1.5rem !important
    }

    .pt-lg-4,
    .py-lg-4 {
        padding-top: 1.5rem !important
    }

    .pr-lg-4,
    .px-lg-4 {
        padding-right: 1.5rem !important
    }

    .pb-lg-4,
    .py-lg-4 {
        padding-bottom: 1.5rem !important
    }

    .pl-lg-4,
    .px-lg-4 {
        padding-left: 1.5rem !important
    }

    .p-lg-5 {
        padding: 3rem !important
    }

    .pt-lg-5,
    .py-lg-5 {
        padding-top: 3rem !important
    }

    .pr-lg-5,
    .px-lg-5 {
        padding-right: 3rem !important
    }

    .pb-lg-5,
    .py-lg-5 {
        padding-bottom: 3rem !important
    }

    .pl-lg-5,
    .px-lg-5 {
        padding-left: 3rem !important
    }

    .m-lg-n1 {
        margin: -.25rem !important
    }

    .mt-lg-n1,
    .my-lg-n1 {
        margin-top: -.25rem !important
    }

    .mr-lg-n1,
    .mx-lg-n1 {
        margin-right: -.25rem !important
    }

    .mb-lg-n1,
    .my-lg-n1 {
        margin-bottom: -.25rem !important
    }

    .ml-lg-n1,
    .mx-lg-n1 {
        margin-left: -.25rem !important
    }

    .m-lg-n2 {
        margin: -.5rem !important
    }

    .mt-lg-n2,
    .my-lg-n2 {
        margin-top: -.5rem !important
    }

    .mr-lg-n2,
    .mx-lg-n2 {
        margin-right: -.5rem !important
    }

    .mb-lg-n2,
    .my-lg-n2 {
        margin-bottom: -.5rem !important
    }

    .ml-lg-n2,
    .mx-lg-n2 {
        margin-left: -.5rem !important
    }

    .m-lg-n3 {
        margin: -1rem !important
    }

    .mt-lg-n3,
    .my-lg-n3 {
        margin-top: -1rem !important
    }

    .mr-lg-n3,
    .mx-lg-n3 {
        margin-right: -1rem !important
    }

    .mb-lg-n3,
    .my-lg-n3 {
        margin-bottom: -1rem !important
    }

    .ml-lg-n3,
    .mx-lg-n3 {
        margin-left: -1rem !important
    }

    .m-lg-n4 {
        margin: -1.5rem !important
    }

    .mt-lg-n4,
    .my-lg-n4 {
        margin-top: -1.5rem !important
    }

    .mr-lg-n4,
    .mx-lg-n4 {
        margin-right: -1.5rem !important
    }

    .mb-lg-n4,
    .my-lg-n4 {
        margin-bottom: -1.5rem !important
    }

    .ml-lg-n4,
    .mx-lg-n4 {
        margin-left: -1.5rem !important
    }

    .m-lg-n5 {
        margin: -3rem !important
    }

    .mt-lg-n5,
    .my-lg-n5 {
        margin-top: -3rem !important
    }

    .mr-lg-n5,
    .mx-lg-n5 {
        margin-right: -3rem !important
    }

    .mb-lg-n5,
    .my-lg-n5 {
        margin-bottom: -3rem !important
    }

    .ml-lg-n5,
    .mx-lg-n5 {
        margin-left: -3rem !important
    }

    .m-lg-auto {
        margin: auto !important
    }

    .mt-lg-auto,
    .my-lg-auto {
        margin-top: auto !important
    }

    .mr-lg-auto,
    .mx-lg-auto {
        margin-right: auto !important
    }

    .mb-lg-auto,
    .my-lg-auto {
        margin-bottom: auto !important
    }

    .ml-lg-auto,
    .mx-lg-auto {
        margin-left: auto !important
    }

    /* text */
    .text-lg-left {
        text-align: left !important
    }

    .text-lg-right {
        text-align: right !important
    }

    .text-lg-center {
        text-align: center !important
    }

    /* ************** OTHERS ******************  */
    .ls-lg-1 {
        letter-spacing: 1px;
    }
}

@media (min-width: 1200px) {
    .c-container {
        max-width: 1180px;
    }

    .w-xl-40 {
        width: 40% !important;
    }

    .w-xl-50 {
        width: 50% !important;
    }

    .w-xl-60 {
        width: 60% !important;
    }

    .w-xl-70 {
        width: 70% !important;
    }

    .d-xl-none {
        display: none !important;
    }

    .d-xl-inline {
        display: inline !important;
    }

    .d-xl-inline-block {
        display: inline-block !important;
    }

    .d-xl-block {
        display: block !important;
    }

    .d-xl-table {
        display: table !important;
    }

    .d-xl-table-row {
        display: table-row !important;
    }

    .d-xl-table-cell {
        display: table-cell !important;
    }

    .d-xl-flex {
        display: -ms-flexbox !important;
        display: flex !important;
    }

    .d-xl-inline-flex {
        display: -ms-inline-flexbox !important;
        display: inline-flex !important;
    }

    .ls-xl-1 {
        letter-spacing: 1px;
    }

    .flex-xl-row {
        -webkit-box-orient: horizontal !important;
        -webkit-box-direction: normal !important;
        -ms-flex-direction: row !important;
        flex-direction: row !important
    }

    .flex-xl-column {
        -webkit-box-orient: vertical !important;
        -webkit-box-direction: normal !important;
        -ms-flex-direction: column !important;
        flex-direction: column !important
    }

    .flex-xl-row-reverse {
        -webkit-box-orient: horizontal !important;
        -webkit-box-direction: reverse !important;
        -ms-flex-direction: row-reverse !important;
        flex-direction: row-reverse !important
    }

    .flex-xl-column-reverse {
        -webkit-box-orient: vertical !important;
        -webkit-box-direction: reverse !important;
        -ms-flex-direction: column-reverse !important;
        flex-direction: column-reverse !important
    }

    .flex-xl-wrap {
        -ms-flex-wrap: wrap !important;
        flex-wrap: wrap !important
    }

    .flex-xl-nowrap {
        -ms-flex-wrap: nowrap !important;
        flex-wrap: nowrap !important
    }

    .flex-xl-wrap-reverse {
        -ms-flex-wrap: wrap-reverse !important;
        flex-wrap: wrap-reverse !important
    }

    .flex-xl-fill {
        -webkit-box-flex: 1 !important;
        -ms-flex: 1 1 auto !important;
        flex: 1 1 auto !important
    }

    .flex-xl-grow-0 {
        -webkit-box-flex: 0 !important;
        -ms-flex-positive: 0 !important;
        flex-grow: 0 !important
    }

    .flex-xl-grow-1 {
        -webkit-box-flex: 1 !important;
        -ms-flex-positive: 1 !important;
        flex-grow: 1 !important
    }

    .flex-xl-shrink-0 {
        -ms-flex-negative: 0 !important;
        flex-shrink: 0 !important
    }

    .flex-xl-shrink-1 {
        -ms-flex-negative: 1 !important;
        flex-shrink: 1 !important
    }

    .justify-content-xl-start {
        -webkit-box-pack: start !important;
        -ms-flex-pack: start !important;
        justify-content: flex-start !important
    }

    .justify-content-xl-end {
        -webkit-box-pack: end !important;
        -ms-flex-pack: end !important;
        justify-content: flex-end !important
    }

    .justify-content-xl-center {
        -webkit-box-pack: center !important;
        -ms-flex-pack: center !important;
        justify-content: center !important
    }

    .justify-content-xl-between {
        -webkit-box-pack: justify !important;
        -ms-flex-pack: justify !important;
        justify-content: space-between !important
    }

    .justify-content-xl-around {
        -ms-flex-pack: distribute !important;
        justify-content: space-around !important
    }

    .align-items-xl-start {
        -webkit-box-align: start !important;
        -ms-flex-align: start !important;
        align-items: flex-start !important
    }

    .align-items-xl-end {
        -webkit-box-align: end !important;
        -ms-flex-align: end !important;
        align-items: flex-end !important
    }

    .align-items-xl-center {
        -webkit-box-align: center !important;
        -ms-flex-align: center !important;
        align-items: center !important
    }

    .align-items-xl-baseline {
        -webkit-box-align: baseline !important;
        -ms-flex-align: baseline !important;
        align-items: baseline !important
    }

    .align-items-xl-stretch {
        -webkit-box-align: stretch !important;
        -ms-flex-align: stretch !important;
        align-items: stretch !important
    }

    .align-content-xl-start {
        -ms-flex-line-pack: start !important;
        align-content: flex-start !important
    }

    .align-content-xl-end {
        -ms-flex-line-pack: end !important;
        align-content: flex-end !important
    }

    .align-content-xl-center {
        -ms-flex-line-pack: center !important;
        align-content: center !important
    }

    .align-content-xl-between {
        -ms-flex-line-pack: justify !important;
        align-content: space-between !important
    }

    .align-content-xl-around {
        -ms-flex-line-pack: distribute !important;
        align-content: space-around !important
    }

    .align-content-xl-stretch {
        -ms-flex-line-pack: stretch !important;
        align-content: stretch !important
    }

    .align-self-xl-auto {
        -ms-flex-item-align: auto !important;
        align-self: auto !important
    }

    .align-self-xl-start {
        -ms-flex-item-align: start !important;
        align-self: flex-start !important
    }

    .align-self-xl-end {
        -ms-flex-item-align: end !important;
        align-self: flex-end !important
    }

    .align-self-xl-center {
        -ms-flex-item-align: center !important;
        align-self: center !important
    }

    .align-self-xl-baseline {
        -ms-flex-item-align: baseline !important;
        align-self: baseline !important
    }

    .align-self-xl-stretch {
        -ms-flex-item-align: stretch !important;
        align-self: stretch !important
    }

    .float-xl-left {
        float: left !important
    }

    .float-xl-right {
        float: right !important
    }

    .float-xl-none {
        float: none !important
    }

    .m-xl-0 {
        margin: 0 !important
    }

    .mt-xl-0,
    .my-xl-0 {
        margin-top: 0 !important
    }

    .mr-xl-0,
    .mx-xl-0 {
        margin-right: 0 !important
    }

    .mb-xl-0,
    .my-xl-0 {
        margin-bottom: 0 !important
    }

    .ml-xl-0,
    .mx-xl-0 {
        margin-left: 0 !important
    }

    .m-xl-1 {
        margin: .25rem !important
    }

    .mt-xl-1,
    .my-xl-1 {
        margin-top: .25rem !important
    }

    .mr-xl-1,
    .mx-xl-1 {
        margin-right: .25rem !important
    }

    .mb-xl-1,
    .my-xl-1 {
        margin-bottom: .25rem !important
    }

    .ml-xl-1,
    .mx-xl-1 {
        margin-left: .25rem !important
    }

    .m-xl-2 {
        margin: .5rem !important
    }

    .mt-xl-2,
    .my-xl-2 {
        margin-top: .5rem !important
    }

    .mr-xl-2,
    .mx-xl-2 {
        margin-right: .5rem !important
    }

    .mb-xl-2,
    .my-xl-2 {
        margin-bottom: .5rem !important
    }

    .ml-xl-2,
    .mx-xl-2 {
        margin-left: .5rem !important
    }

    .m-xl-3 {
        margin: 1rem !important
    }

    .mt-xl-3,
    .my-xl-3 {
        margin-top: 1rem !important
    }

    .mr-xl-3,
    .mx-xl-3 {
        margin-right: 1rem !important
    }

    .mb-xl-3,
    .my-xl-3 {
        margin-bottom: 1rem !important
    }

    .ml-xl-3,
    .mx-xl-3 {
        margin-left: 1rem !important
    }

    .m-xl-4 {
        margin: 1.5rem !important
    }

    .mt-xl-4,
    .my-xl-4 {
        margin-top: 1.5rem !important
    }

    .mr-xl-4,
    .mx-xl-4 {
        margin-right: 1.5rem !important
    }

    .mb-xl-4,
    .my-xl-4 {
        margin-bottom: 1.5rem !important
    }

    .ml-xl-4,
    .mx-xl-4 {
        margin-left: 1.5rem !important
    }

    .m-xl-5 {
        margin: 3rem !important
    }

    .mt-xl-5,
    .my-xl-5 {
        margin-top: 3rem !important
    }

    .mr-xl-5,
    .mx-xl-5 {
        margin-right: 3rem !important
    }

    .mb-xl-5,
    .my-xl-5 {
        margin-bottom: 3rem !important
    }

    .ml-xl-5,
    .mx-xl-5 {
        margin-left: 3rem !important
    }

    .p-xl-0 {
        padding: 0 !important
    }

    .pt-xl-0,
    .py-xl-0 {
        padding-top: 0 !important
    }

    .pr-xl-0,
    .px-xl-0 {
        padding-right: 0 !important
    }

    .pb-xl-0,
    .py-xl-0 {
        padding-bottom: 0 !important
    }

    .pl-xl-0,
    .px-xl-0 {
        padding-left: 0 !important
    }

    .p-xl-1 {
        padding: .25rem !important
    }

    .pt-xl-1,
    .py-xl-1 {
        padding-top: .25rem !important
    }

    .pr-xl-1,
    .px-xl-1 {
        padding-right: .25rem !important
    }

    .pb-xl-1,
    .py-xl-1 {
        padding-bottom: .25rem !important
    }

    .pl-xl-1,
    .px-xl-1 {
        padding-left: .25rem !important
    }

    .p-xl-2 {
        padding: .5rem !important
    }

    .pt-xl-2,
    .py-xl-2 {
        padding-top: .5rem !important
    }

    .pr-xl-2,
    .px-xl-2 {
        padding-right: .5rem !important
    }

    .pb-xl-2,
    .py-xl-2 {
        padding-bottom: .5rem !important
    }

    .pl-xl-2,
    .px-xl-2 {
        padding-left: .5rem !important
    }

    .p-xl-3 {
        padding: 1rem !important
    }

    .pt-xl-3,
    .py-xl-3 {
        padding-top: 1rem !important
    }

    .pr-xl-3,
    .px-xl-3 {
        padding-right: 1rem !important
    }

    .pb-xl-3,
    .py-xl-3 {
        padding-bottom: 1rem !important
    }

    .pl-xl-3,
    .px-xl-3 {
        padding-left: 1rem !important
    }

    .p-xl-4 {
        padding: 1.5rem !important
    }

    .pt-xl-4,
    .py-xl-4 {
        padding-top: 1.5rem !important
    }

    .pr-xl-4,
    .px-xl-4 {
        padding-right: 1.5rem !important
    }

    .pb-xl-4,
    .py-xl-4 {
        padding-bottom: 1.5rem !important
    }

    .pl-xl-4,
    .px-xl-4 {
        padding-left: 1.5rem !important
    }

    .p-xl-5 {
        padding: 3rem !important
    }

    .pt-xl-5,
    .py-xl-5 {
        padding-top: 3rem !important
    }

    .pr-xl-5,
    .px-xl-5 {
        padding-right: 3rem !important
    }

    .pb-xl-5,
    .py-xl-5 {
        padding-bottom: 3rem !important
    }

    .pl-xl-5,
    .px-xl-5 {
        padding-left: 3rem !important
    }

    .m-xl-n1 {
        margin: -.25rem !important
    }

    .mt-xl-n1,
    .my-xl-n1 {
        margin-top: -.25rem !important
    }

    .mr-xl-n1,
    .mx-xl-n1 {
        margin-right: -.25rem !important
    }

    .mb-xl-n1,
    .my-xl-n1 {
        margin-bottom: -.25rem !important
    }

    .ml-xl-n1,
    .mx-xl-n1 {
        margin-left: -.25rem !important
    }

    .m-xl-n2 {
        margin: -.5rem !important
    }

    .mt-xl-n2,
    .my-xl-n2 {
        margin-top: -.5rem !important
    }

    .mr-xl-n2,
    .mx-xl-n2 {
        margin-right: -.5rem !important
    }

    .mb-xl-n2,
    .my-xl-n2 {
        margin-bottom: -.5rem !important
    }

    .ml-xl-n2,
    .mx-xl-n2 {
        margin-left: -.5rem !important
    }

    .m-xl-n3 {
        margin: -1rem !important
    }

    .mt-xl-n3,
    .my-xl-n3 {
        margin-top: -1rem !important
    }

    .mr-xl-n3,
    .mx-xl-n3 {
        margin-right: -1rem !important
    }

    .mb-xl-n3,
    .my-xl-n3 {
        margin-bottom: -1rem !important
    }

    .ml-xl-n3,
    .mx-xl-n3 {
        margin-left: -1rem !important
    }

    .m-xl-n4 {
        margin: -1.5rem !important
    }

    .mt-xl-n4,
    .my-xl-n4 {
        margin-top: -1.5rem !important
    }

    .mr-xl-n4,
    .mx-xl-n4 {
        margin-right: -1.5rem !important
    }

    .mb-xl-n4,
    .my-xl-n4 {
        margin-bottom: -1.5rem !important
    }

    .ml-xl-n4,
    .mx-xl-n4 {
        margin-left: -1.5rem !important
    }

    .m-xl-n5 {
        margin: -3rem !important
    }

    .mt-xl-n5,
    .my-xl-n5 {
        margin-top: -3rem !important
    }

    .mr-xl-n5,
    .mx-xl-n5 {
        margin-right: -3rem !important
    }

    .mb-xl-n5,
    .my-xl-n5 {
        margin-bottom: -3rem !important
    }

    .ml-xl-n5,
    .mx-xl-n5 {
        margin-left: -3rem !important
    }

    .m-xl-auto {
        margin: auto !important
    }

    .mt-xl-auto,
    .my-xl-auto {
        margin-top: auto !important
    }

    .mr-xl-auto,
    .mx-xl-auto {
        margin-right: auto !important
    }

    .mb-xl-auto,
    .my-xl-auto {
        margin-bottom: auto !important
    }

    .ml-xl-auto,
    .mx-xl-auto {
        margin-left: auto !important
    }
}

@media only screen and (min-width: 1500px) {
    .c-container {
        max-width: 1366px;
    }
}

a:focus,
a:hover {
    color: #337ab7;
    text-decoration: none;
}

:focus {
    outline: none;
}

.btn:active:focus,
.btn:focus {
    outline: none;
    outline-offset: 0;
}

.btn:focus {
    color: #fff;
}

a {
    color: #414042;
}

label.custom-control-label {
    font-weight: normal;
}

.btn-outline-primary3 {
    color: #414042;
    border: 1px solid #414042 !important;
}


/* ============================================================
   COMPASS BRIDGE — i18n / language switcher (chc- + cphx-)
   ============================================================ */
@media (max-width: 1920px) {
    body.body-es .c-container {
        width: 80%;
    }
}

@media (max-width: 1600px) {
    body.body-es .c-container {
        width: 95%;
    }
}

@media (max-width: 1400px) {
    body.body-es .c-container {
        width: 100%;
    }
}

@media (max-width: 1200px) {
    body.body-es .c-container {
        width: 95%;
    }
}

/* Language dropdown — top utility bar */
.chc-lang-dropdown-top,
.chc-lang-dropdown-mobile {
    margin-bottom: 0;
    vertical-align: middle;
}

.chc-lang-toggle-top,
.chc-lang-toggle-mobile {
    text-decoration: none !important;
    white-space: nowrap;
    padding: 0;
    cursor: pointer;
    line-height: inherit;
}

.chc-lang-toggle-top:hover,
.chc-lang-toggle-top:focus,
.chc-lang-toggle-mobile:hover,
.chc-lang-toggle-mobile:focus {
    text-decoration: none !important;
}

.chc-lang-globe {
    margin-right: 3px;
    opacity: 0.9;

}

.chc-lang-current {
    font-weight: 500;
}

/* Top utility bar layout */
.s-top-nav {
    overflow: visible;
    padding: 6px 0;
}

.s-top-nav .container:before,
.s-top-nav .container:after {
    display: none;
}

.s-top-nav-right {
    gap: 10px;
}

.cphx-top-nav-item {
    flex-shrink: 0;
    max-width: 100%;
}

.cphx-top-nav-item .dropdown-menu {
    width: fit-content;
}

.cphx-top-nav-email {
    max-width: 220px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    vertical-align: middle;
}

.cphx-top-nav-lang {
    flex-shrink: 0;
    margin-left: 0.15rem;
}

.s-top-nav .chc-lang-dropdown-top {
    flex-shrink: 0;
}

.s-top-nav .chc-lang-menu {
    top: 100%;
    left: auto;
    right: 0;
    margin-top: 4px;
    min-width: 150px;
    padding: 6px 0;
    border-radius: 4px;
    border: 1px solid rgba(0, 0, 0, 0.1);
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.12);
    z-index: 1100;
}

.chc-lang-menu>li>a {
    display: block;
    padding: 9px 16px;
    color: #454545 !important;
    background: #fff !important;
    white-space: nowrap;
    text-decoration: none;
    line-height: 1.4;
}

.chc-lang-menu>li>a:hover,
.chc-lang-menu>li>a:focus {
    background-color: #f5f8fc !important;
    color: #3769cd !important;
    text-decoration: none;
}

.chc-lang-menu>li.chc-lang-item-active>a,
.chc-lang-menu>li.chc-lang-item-active>a:hover,
.chc-lang-menu>li.chc-lang-item-active>a:focus {
    background-color: #eaf2ff !important;
    color: #3769cd !important;
    font-weight: 600;
}

.chc-lang-check {
    display: inline-block;
    width: 16px;
    margin-right: 6px;

    color: #3769cd;
    visibility: hidden;
}

.chc-lang-menu>li.chc-lang-item-active .chc-lang-check {
    visibility: visible;
}

/* Mobile menu language item */
.cphx-mobile-lang-nav {
    width: 100%;
    display: none !important;
}

.cphx-mobile-lang-nav .chc-lang-dropdown-mobile {
    display: block;
    width: 100%;
}

.cphx-mobile-lang-nav .chc-lang-toggle-mobile {
    display: block;
    width: 100%;
    padding: 15px 25px !important;
    line-height: 1.4 !important;

    text-align: left;
}

.cphx-mobile-lang-nav .chc-lang-menu {
    position: static;
    float: none;
    width: 100%;
    box-shadow: none;
    border: 0;
    border-top: 1px solid #eee;
    margin-top: 0;
}

/* Compact toolbar (cart row) on tablet/mobile */
#nav_menu1 .cphx-mobile-lang-toolbar {
    display: flex;
    align-items: center;
    padding: 0;
    margin: 0;
    list-style: none;
}

#nav_menu1 .cphx-mobile-lang-toolbar .chc-lang-dropdown-mobile {
    margin: 0;
}

#nav_menu1 .chc-lang-toggle-mobile {
    padding: 8px 10px !important;

    line-height: 1.2 !important;
    border: 0;
    background: transparent;
}

#nav_menu1 .chc-lang-dropdown-mobile .dropdown-menu {
    right: 0;
    left: auto;
}

/* Homepage / banner text wrap for longer translations */
.banner h1,
.banner h3,
.banner h4 {
    word-wrap: break-word;
    overflow-wrap: break-word;
    hyphens: auto;
}

.features h4,
.features em {
    word-wrap: break-word;
    overflow-wrap: break-word;
}

#list_array .clear-both{
    display: none !important;
}

/* Tablet: compact top bar instead of hiding completely */
@media (max-width: 1199px) {
    body {
        padding-top: 80px;
    }

    .s-top-nav {
        display: block;
        padding: 4px 0;
        border-bottom: 1px solid rgba(0, 0, 0, 0.06);
    }

    .s-top-nav .d-none.d-lg-inline-block.cphx-top-nav-item {
        display: none !important;
    }
}

@media (max-width: 991px) {
    .s-top-nav-right {
        justify-content: flex-end !important;
    }

    .cphx-top-nav-item.d-none.d-md-inline-block {
        display: none !important;
    }

    .program-wrapper, .process-wrapper, .diabetic-row, .features-row, #drug_box_ajax .medication-box, .delivery-type-row {
        grid-template-columns: repeat(auto-fill, minmax(40%, 1fr));
    }

    .sm-none{
        display: none;
    }

    .cphx-glp-medication-details .cphx-md-filter,
    .cphx-medications-details .cphx-md-filter {
        position: relative;
        top:15px;
    }
}

@media (max-width: 767px) {
    .s-top-nav {
        padding: 3px 0;
    }

    .s-top-nav-right {
        gap: 0.25rem 0.5rem;
    }

    .s-top-nav .chc-lang-menu {
        right: 0;
        left: auto;
    }

    .medication-form {
        width: 100% !important;
    }

    .table-responsive>.table>tbody>tr>td, .table-responsive>.table>tbody>tr>th, .table-responsive>.table>tfoot>tr>td, .table-responsive>.table>tfoot>tr>th, .table-responsive>.table>thead>tr>td, .table-responsive>.table>thead>tr>th{
        white-space: normal !important;
    }
    
    body {
        padding-top: 115px;
    }
}

@media (max-width: 575px) {
    .s-top-nav .d-none.d-sm-inline-block {
        display: none !important;
    }

    .navbar-header .navbar-brand img {
        max-height: 40px;
    }

    .user-acct {
        height: 55px;
        width: 55px;
    }

    .cart {
        width: 55px !important;
        height: 55px;
    }

    .c-cart-img, #s-user-services img {
        height: 25px !important;
    }
    
    .program-wrapper, .process-wrapper, .diabetic-row, .features-row, #drug_box_ajax .medication-box, .delivery-type-row {
        grid-template-columns: repeat(auto-fill, minmax(55%, 1fr));
    }
}


/* Ensure primary1 aliases stay tied to Compass tokens when set */
.bg-primary1 {
    background-color: var(--primary1) !important;
}

.text-primary1 {
    color: var(--primary1) !important;
}

.bg-primary3 {
    background-color: var(--primary3);
}

.text-primary2 {
    color: var(--primary2);
}

.bg-offred {
    background-color: var(--offred);
}

.bg-offred1 {
    background-color: #f7f7f7;
}

/* Insulin / membership dropdown hover already in BP base (cphx tokens) */



/* ============================================================
   FINAL TOKEN OVERRIDES — win over utilities.css bridge
   ============================================================ */
.bg-primary,
.cart.bg-primary,
.navbar-nav>li.cart {
    background-color: var(--primary) !important;
}

.bg-secondary,
.user-acct.bg-secondary,
.navbar-nav>li.user-acct {
    background-color: var(--secondary) !important;
}

.text-primary {
    color: var(--primary) !important;
}

.s-top-nav a.text-body:hover,
.s-top-nav .cphx-top-nav-item:hover>a,
.s-top-nav .cphx-top-nav-item a:hover {
    color: var(--primary) !important;
}

.cphx-mobile-lang-nav {
    width: 100%;
}


/* ============================================================
   NAVBAR RESPONSIVE — BP parity (overrides i18n bridge)
   Hide utility top bar below xl; main nav collapses
   ============================================================ */
@media (max-width: 1199px) {

    .navbar-toggle {
        display: block;
        float: left;
        margin: 0 5px 0 0;
    }
}